about summary refs log tree commit diff
diff options
context:
space:
mode:
authorGuillaume Girol <symphorien@users.noreply.github.com>2022-10-11 09:57:23 +0000
committerGitHub <noreply@github.com>2022-10-11 09:57:23 +0000
commit6fe43abcfc87ed689ed09dbdbf05a221ab8ac881 (patch)
treeb6d2ea329ac00cca5e1cef5dcc87b0e192eb9e8d
parent1a90756aa752aef6d6910eaac29b8e8d7e0f99de (diff)
parent93dc85b485638bda9ac76458dcd45b997cc7cdbd (diff)
Merge branch 'master' into tracee-use-new-wrapper
-rw-r--r--.github/ISSUE_TEMPLATE/missing_documentation.md2
-rw-r--r--.github/workflows/update-terraform-providers.yml23
-rw-r--r--doc/builders/images.xml1
-rw-r--r--doc/builders/images/portableservice.section.md81
-rw-r--r--doc/languages-frameworks/coq.section.md6
-rw-r--r--lib/attrsets.nix14
-rw-r--r--lib/licenses.nix10
-rw-r--r--maintainers/maintainer-list.nix96
-rw-r--r--maintainers/scripts/luarocks-packages.csv4
-rw-r--r--maintainers/scripts/nix-generate-from-cpan.nix4
-rw-r--r--maintainers/team-list.nix36
-rw-r--r--nixos/doc/manual/default.nix1
-rw-r--r--nixos/doc/manual/development/running-nixos-tests-interactively.section.md4
-rw-r--r--nixos/doc/manual/development/writing-nixos-tests.section.md12
-rw-r--r--nixos/doc/manual/from_md/development/running-nixos-tests-interactively.section.xml4
-rw-r--r--nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml12
-rw-r--r--nixos/doc/manual/from_md/release-notes/rl-2211.section.xml55
-rw-r--r--nixos/doc/manual/release-notes/rl-2211.section.md15
-rw-r--r--nixos/lib/make-options-doc/default.nix3
-rw-r--r--nixos/lib/make-options-doc/options-to-docbook.xsl3
-rw-r--r--nixos/lib/qemu-common.nix2
-rw-r--r--nixos/lib/testing/driver.nix6
-rw-r--r--nixos/lib/testing/meta.nix4
-rw-r--r--nixos/lib/testing/name.nix2
-rw-r--r--nixos/lib/testing/nodes.nix8
-rw-r--r--nixos/lib/utils.nix14
-rw-r--r--nixos/modules/config/pulseaudio.nix3
-rw-r--r--nixos/modules/hardware/ckb-next.nix2
-rw-r--r--nixos/modules/hardware/video/uvcvideo/uvcdynctrl-udev-rules.nix4
-rw-r--r--nixos/modules/module-list.nix5
-rw-r--r--nixos/modules/profiles/base.nix6
-rw-r--r--nixos/modules/programs/mininet.nix2
-rw-r--r--nixos/modules/programs/ssh.nix1
-rw-r--r--nixos/modules/security/acme/default.nix8
-rw-r--r--nixos/modules/security/acme/doc.xml11
-rw-r--r--nixos/modules/services/audio/mopidy.nix2
-rw-r--r--nixos/modules/services/backup/borgbackup.nix2
-rw-r--r--nixos/modules/services/continuous-integration/github-runner.nix81
-rw-r--r--nixos/modules/services/continuous-integration/hydra/default.nix2
-rw-r--r--nixos/modules/services/hardware/fwupd.nix37
-rw-r--r--nixos/modules/services/hardware/udev.nix6
-rw-r--r--nixos/modules/services/matrix/dendrite.nix19
-rw-r--r--nixos/modules/services/misc/etebase-server.nix2
-rw-r--r--nixos/modules/services/misc/gitlab.nix99
-rw-r--r--nixos/modules/services/misc/gitolite.nix10
-rw-r--r--nixos/modules/services/misc/tandoor-recipes.nix144
-rw-r--r--nixos/modules/services/network-filesystems/kubo.nix (renamed from nixos/modules/services/network-filesystems/ipfs.nix)65
-rw-r--r--nixos/modules/services/networking/coturn.nix7
-rw-r--r--nixos/modules/services/networking/firefox-syncserver.nix9
-rw-r--r--nixos/modules/services/networking/iwd.nix2
-rw-r--r--nixos/modules/services/networking/jitsi-videobridge.nix2
-rw-r--r--nixos/modules/services/networking/knot.nix2
-rw-r--r--nixos/modules/services/networking/pptpd.nix2
-rw-r--r--nixos/modules/services/networking/tinc.nix2
-rw-r--r--nixos/modules/services/networking/tmate-ssh-server.nix122
-rw-r--r--nixos/modules/services/networking/xl2tpd.nix2
-rw-r--r--nixos/modules/services/security/endlessh-go.nix138
-rw-r--r--nixos/modules/services/security/fail2ban.nix13
-rw-r--r--nixos/modules/services/security/privacyidea.nix94
-rw-r--r--nixos/modules/services/web-apps/mediawiki.nix2
-rw-r--r--nixos/modules/services/x11/desktop-managers/gnome.nix42
-rw-r--r--nixos/modules/services/x11/hardware/libinput.nix10
-rw-r--r--nixos/modules/system/boot/systemd.nix4
-rw-r--r--nixos/modules/system/boot/systemd/initrd.nix2
-rw-r--r--nixos/modules/tasks/filesystems/jfs.nix2
-rw-r--r--nixos/modules/virtualisation/azure-agent.nix2
-rw-r--r--nixos/modules/virtualisation/virtualbox-host.nix20
-rw-r--r--nixos/tests/acme.nix60
-rw-r--r--nixos/tests/all-tests.nix6
-rw-r--r--nixos/tests/endlessh-go.nix58
-rw-r--r--nixos/tests/hydra/common.nix2
-rw-r--r--nixos/tests/k3s/multi-node.nix25
-rw-r--r--nixos/tests/k3s/single-node.nix15
-rw-r--r--nixos/tests/kubernetes/base.nix2
-rw-r--r--nixos/tests/kubo.nix (renamed from nixos/tests/ipfs.nix)6
-rw-r--r--nixos/tests/paperless.nix8
-rw-r--r--nixos/tests/pulseaudio.nix25
-rw-r--r--nixos/tests/retroarch.nix4
-rw-r--r--nixos/tests/seafile.nix12
-rw-r--r--nixos/tests/spark/default.nix1
-rw-r--r--nixos/tests/sssd-ldap.nix7
-rw-r--r--nixos/tests/systemd-initrd-modprobe.nix17
-rw-r--r--nixos/tests/systemd-oomd.nix55
-rw-r--r--nixos/tests/tandoor-recipes.nix43
-rw-r--r--nixos/tests/tmate-ssh-server.nix73
-rw-r--r--nixos/tests/vengi-tools.nix4
-rw-r--r--pkgs/applications/audio/apple-music-electron/default.nix32
-rw-r--r--pkgs/applications/audio/audacity/default.nix78
-rw-r--r--pkgs/applications/audio/aumix/default.nix6
-rw-r--r--pkgs/applications/audio/blanket/default.nix7
-rw-r--r--pkgs/applications/audio/calf/default.nix3
-rw-r--r--pkgs/applications/audio/eartag/default.nix78
-rw-r--r--pkgs/applications/audio/exact-audio-copy/default.nix86
-rw-r--r--pkgs/applications/audio/flac/default.nix6
-rw-r--r--pkgs/applications/audio/ft2-clone/default.nix4
-rw-r--r--pkgs/applications/audio/gmpc/default.nix5
-rw-r--r--pkgs/applications/audio/grandorgue/default.nix2
-rw-r--r--pkgs/applications/audio/jamesdsp/default.nix23
-rw-r--r--pkgs/applications/audio/ltc-tools/default.nix3
-rw-r--r--pkgs/applications/audio/meterbridge/default.nix3
-rw-r--r--pkgs/applications/audio/mod-arpeggiator-lv2/default.nix3
-rw-r--r--pkgs/applications/audio/musikcube/default.nix2
-rw-r--r--pkgs/applications/audio/opusfile/default.nix1
-rw-r--r--pkgs/applications/audio/patchage/default.nix2
-rw-r--r--pkgs/applications/audio/praat/default.nix4
-rw-r--r--pkgs/applications/audio/reaper/default.nix7
-rwxr-xr-xpkgs/applications/audio/reaper/updater.sh18
-rw-r--r--pkgs/applications/audio/sonic-lineup/default.nix4
-rw-r--r--pkgs/applications/audio/spot/default.nix6
-rw-r--r--pkgs/applications/audio/spotify-tui/default.nix37
-rw-r--r--pkgs/applications/audio/tauon/default.nix6
-rw-r--r--pkgs/applications/audio/tidal-hifi/default.nix6
-rw-r--r--pkgs/applications/audio/transcode/default.nix3
-rw-r--r--pkgs/applications/audio/x42-plugins/default.nix4
-rw-r--r--pkgs/applications/audio/xsynth-dssi/default.nix4
-rw-r--r--pkgs/applications/blockchains/bitcoin-abc/default.nix8
-rw-r--r--pkgs/applications/blockchains/bitcoin-abc/fix-bitcoin-qt-build.patch15
-rw-r--r--pkgs/applications/blockchains/clightning/default.nix16
-rw-r--r--pkgs/applications/blockchains/eclair/default.nix6
-rw-r--r--pkgs/applications/blockchains/ergo/default.nix4
-rw-r--r--pkgs/applications/blockchains/erigon.nix6
-rw-r--r--pkgs/applications/blockchains/fulcrum/default.nix4
-rw-r--r--pkgs/applications/blockchains/lighthouse/default.nix103
-rw-r--r--pkgs/applications/blockchains/lnd/default.nix6
-rw-r--r--pkgs/applications/blockchains/polkadot/default.nix6
-rw-r--r--pkgs/applications/blockchains/zcash/default.nix2
-rw-r--r--pkgs/applications/editors/android-studio/default.nix12
-rw-r--r--pkgs/applications/editors/cudatext/default.nix4
-rw-r--r--pkgs/applications/editors/cudatext/deps.json8
-rw-r--r--pkgs/applications/editors/eclipse/default.nix24
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix111
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix2
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix10
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix39
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json1011
-rw-r--r--pkgs/applications/editors/hecate/default.nix18
-rw-r--r--pkgs/applications/editors/hecate/deps.nix29
-rw-r--r--pkgs/applications/editors/kakoune/default.nix2
-rw-r--r--pkgs/applications/editors/leafpad/default.nix4
-rw-r--r--pkgs/applications/editors/neovim/neovide/default.nix8
-rw-r--r--pkgs/applications/editors/neovim/neovim-remote.nix20
-rw-r--r--pkgs/applications/editors/rehex/default.nix28
-rw-r--r--pkgs/applications/editors/vim/plugins/generated.nix998
-rw-r--r--pkgs/applications/editors/vim/plugins/overrides.nix20
-rw-r--r--pkgs/applications/editors/vim/plugins/vim-plugin-names12
-rw-r--r--pkgs/applications/editors/vim/plugins/vim-utils.nix2
-rw-r--r--pkgs/applications/editors/vscode/extensions/default.nix81
-rw-r--r--pkgs/applications/editors/vscode/extensions/rescript/default.nix4
-rw-r--r--pkgs/applications/editors/vscode/extensions/rescript/rescript-editor-analysis.nix2
-rw-r--r--pkgs/applications/editors/vscode/extensions/vscode-lldb/default.nix3
-rw-r--r--pkgs/applications/editors/wxhexeditor/default.nix13
-rw-r--r--pkgs/applications/emulators/duckstation/default.nix61
-rw-r--r--pkgs/applications/emulators/fs-uae/launcher.nix15
-rw-r--r--pkgs/applications/emulators/np2kai/default.nix2
-rw-r--r--pkgs/applications/emulators/pcem/default.nix4
-rw-r--r--pkgs/applications/emulators/retroarch/cores.nix72
-rw-r--r--pkgs/applications/emulators/retroarch/default.nix22
-rw-r--r--pkgs/applications/emulators/retroarch/fix-flycast-makefile.patch12
-rw-r--r--pkgs/applications/emulators/retroarch/hashes.json284
-rwxr-xr-xpkgs/applications/emulators/retroarch/update_cores.py2
-rw-r--r--pkgs/applications/emulators/retroarch/wrapper.nix2
-rw-r--r--pkgs/applications/emulators/rpcs3/default.nix8
-rw-r--r--pkgs/applications/emulators/ryujinx/default.nix4
-rw-r--r--pkgs/applications/emulators/ryujinx/deps.nix13
-rw-r--r--pkgs/applications/file-managers/felix-fm/default.nix25
-rw-r--r--pkgs/applications/file-managers/spacefm/default.nix4
-rw-r--r--pkgs/applications/file-managers/xfe/default.nix4
-rw-r--r--pkgs/applications/gis/spatialite-gui/default.nix2
-rw-r--r--pkgs/applications/graphics/artem/default.nix50
-rw-r--r--pkgs/applications/graphics/gpicview/default.nix4
-rw-r--r--pkgs/applications/graphics/hydrus/default.nix4
-rw-r--r--pkgs/applications/graphics/image-roll/default.nix6
-rw-r--r--pkgs/applications/graphics/pineapple-pictures/default.nix6
-rw-r--r--pkgs/applications/graphics/pinta/deps.nix3
-rw-r--r--pkgs/applications/graphics/synfigstudio/default.nix1
-rw-r--r--pkgs/applications/graphics/vengi-tools/default.nix4
-rw-r--r--pkgs/applications/graphics/xaos/default.nix3
-rw-r--r--pkgs/applications/graphics/yacreader/default.nix5
-rw-r--r--pkgs/applications/misc/1password-gui/darwin.nix21
-rw-r--r--pkgs/applications/misc/1password-gui/default.nix183
-rw-r--r--pkgs/applications/misc/1password-gui/linux.nix (renamed from pkgs/applications/misc/1password-gui/beta.nix)36
-rw-r--r--pkgs/applications/misc/ArchiSteamFarm/deps.nix3
-rw-r--r--pkgs/applications/misc/albert/default.nix4
-rw-r--r--pkgs/applications/misc/anytype/default.nix4
-rw-r--r--pkgs/applications/misc/bemenu/default.nix4
-rw-r--r--pkgs/applications/misc/calibre/default.nix63
-rw-r--r--pkgs/applications/misc/catclock/default.nix4
-rw-r--r--pkgs/applications/misc/cubiomes-viewer/default.nix4
-rw-r--r--pkgs/applications/misc/dbeaver/default.nix6
-rw-r--r--pkgs/applications/misc/deadd-notification-center/default.nix6
-rw-r--r--pkgs/applications/misc/diff-pdf/default.nix12
-rw-r--r--pkgs/applications/misc/electrum/default.nix8
-rw-r--r--pkgs/applications/misc/etesync-dav/default.nix2
-rw-r--r--pkgs/applications/misc/exercism/default.nix6
-rw-r--r--pkgs/applications/misc/genact/default.nix29
-rw-r--r--pkgs/applications/misc/gtkradiant/default.nix163
-rw-r--r--pkgs/applications/misc/gum/default.nix6
-rw-r--r--pkgs/applications/misc/gv/default.nix2
-rw-r--r--pkgs/applications/misc/gxmessage/default.nix4
-rw-r--r--pkgs/applications/misc/holochain-launcher/default.nix52
-rw-r--r--pkgs/applications/misc/hugo/default.nix6
-rw-r--r--pkgs/applications/misc/josm/default.nix6
-rw-r--r--pkgs/applications/misc/keepassx/community.nix2
-rw-r--r--pkgs/applications/misc/keylight-controller-mschneider82/default.nix2
-rw-r--r--pkgs/applications/misc/lutris/fhsenv.nix3
-rw-r--r--pkgs/applications/misc/mangal/default.nix6
-rw-r--r--pkgs/applications/misc/mdzk/default.nix9
-rw-r--r--pkgs/applications/misc/mdzk/update-mdbook-for-rust-1.64.patch246
-rw-r--r--pkgs/applications/misc/numberstation/default.nix4
-rw-r--r--pkgs/applications/misc/osmscout-server/default.nix4
-rw-r--r--pkgs/applications/misc/oxker/default.nix21
-rw-r--r--pkgs/applications/misc/parsec/bin.nix81
-rw-r--r--pkgs/applications/misc/pcmanx-gtk2/default.nix4
-rw-r--r--pkgs/applications/misc/pgmodeler/default.nix4
-rw-r--r--pkgs/applications/misc/privacyidea/default.nix12
-rw-r--r--pkgs/applications/misc/process-viewer/default.nix1
-rw-r--r--pkgs/applications/misc/prusa-slicer/default.nix18
-rw-r--r--pkgs/applications/misc/qcad/application-dir.patch13
-rw-r--r--pkgs/applications/misc/scli/default.nix1
-rw-r--r--pkgs/applications/misc/synergy/default.nix4
-rw-r--r--pkgs/applications/misc/tandoor-recipes/common.nix19
-rw-r--r--pkgs/applications/misc/tandoor-recipes/default.nix143
-rw-r--r--pkgs/applications/misc/tandoor-recipes/frontend.nix57
-rw-r--r--pkgs/applications/misc/tandoor-recipes/media-root.patch17
-rwxr-xr-xpkgs/applications/misc/tandoor-recipes/update.sh42
-rw-r--r--pkgs/applications/misc/udevil/default.nix3
-rw-r--r--pkgs/applications/misc/wtf/default.nix6
-rw-r--r--pkgs/applications/misc/xmr-stak/default.nix13
-rw-r--r--pkgs/applications/misc/xpad/default.nix4
-rw-r--r--pkgs/applications/misc/xplr/default.nix6
-rw-r--r--pkgs/applications/misc/xxkb/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/chromium/common.nix2
-rwxr-xr-xpkgs/applications/networking/browsers/chromium/update.py2
-rw-r--r--pkgs/applications/networking/browsers/chromium/upstream-info.json48
-rw-r--r--pkgs/applications/networking/browsers/elinks/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix786
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/default.nix5
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix786
-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/firefox/wrapper.nix2
-rw-r--r--pkgs/applications/networking/browsers/polypane/default.nix41
-rw-r--r--pkgs/applications/networking/browsers/qutebrowser/default.nix49
-rw-r--r--pkgs/applications/networking/calls/default.nix10
-rw-r--r--pkgs/applications/networking/cluster/argo/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/argocd-autopilot/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/argocd/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/clusterctl/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/cmctl/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/fluxcd/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/gatekeeper/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/hadoop/default.nix15
-rw-r--r--pkgs/applications/networking/cluster/hashi-up/default.nix25
-rw-r--r--pkgs/applications/networking/cluster/istioctl/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/k3s/default.nix10
-rwxr-xr-xpkgs/applications/networking/cluster/k3s/update.sh14
-rw-r--r--pkgs/applications/networking/cluster/k3sup/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/kubectl-doctor/default.nix13
-rw-r--r--pkgs/applications/networking/cluster/kubectl-images/default.nix27
-rw-r--r--pkgs/applications/networking/cluster/kubent/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/linkerd/generic.nix2
-rw-r--r--pkgs/applications/networking/cluster/minikube/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/nixops/default.nix16
-rw-r--r--pkgs/applications/networking/cluster/nixops/poetry-git-overlay.nix12
-rw-r--r--pkgs/applications/networking/cluster/nixops/poetry.lock239
-rw-r--r--pkgs/applications/networking/cluster/nixops/pyproject.toml2
-rw-r--r--pkgs/applications/networking/cluster/nixops/shell.nix3
-rw-r--r--pkgs/applications/networking/cluster/nomad/1.2.nix6
-rw-r--r--pkgs/applications/networking/cluster/nomad/1.3.nix6
-rw-r--r--pkgs/applications/networking/cluster/nomad/1.4.nix10
-rw-r--r--pkgs/applications/networking/cluster/pinniped/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/spark/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/talosctl/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/tanka/default.nix8
-rw-r--r--pkgs/applications/networking/cluster/tektoncd-cli/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/providers.json255
-rw-r--r--pkgs/applications/networking/cluster/terraform/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/terragrunt/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/tilt/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/vcluster/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/waypoint/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/werf/default.nix6
-rw-r--r--pkgs/applications/networking/flexget/default.nix4
-rw-r--r--pkgs/applications/networking/freefilesync/default.nix103
-rw-r--r--pkgs/applications/networking/gopher/geomyidae/default.nix2
-rw-r--r--pkgs/applications/networking/gopher/geomyidae/modification-time.patch13
-rw-r--r--pkgs/applications/networking/ids/snort/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/discord/openasar.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/element/keytar/default.nix2
-rwxr-xr-xpkgs/applications/networking/instant-messengers/element/keytar/update.sh2
-rw-r--r--pkgs/applications/networking/instant-messengers/element/seshat/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/fluffychat/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/fractal/default.nix11
-rw-r--r--pkgs/applications/networking/instant-messengers/fractal/update-socket2-for-rust-1.64.diff195
-rw-r--r--pkgs/applications/networking/instant-messengers/gajim/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/linphone/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/otr/default.nix3
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-indicator/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-plugin-pack/default.nix3
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/tox-prpl/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/rocketchat-desktop/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-cli/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-desktop/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/slack/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/toxic/default.nix19
-rw-r--r--pkgs/applications/networking/instant-messengers/zoom-us/default.nix12
-rw-r--r--pkgs/applications/networking/insync/default.nix2
-rw-r--r--pkgs/applications/networking/insync/v3.nix2
-rw-r--r--pkgs/applications/networking/ipfs-migrator/default.nix23
-rw-r--r--pkgs/applications/networking/irc/srain/default.nix4
-rw-r--r--pkgs/applications/networking/irc/weechat/default.nix25
-rw-r--r--pkgs/applications/networking/irc/weechat/wrapper.nix8
-rw-r--r--pkgs/applications/networking/kubo-migrator/all-migrations.nix (renamed from pkgs/applications/networking/ipfs-migrator/all-migrations.nix)12
-rw-r--r--pkgs/applications/networking/kubo-migrator/default.nix23
-rw-r--r--pkgs/applications/networking/kubo-migrator/unwrapped.nix (renamed from pkgs/applications/networking/ipfs-migrator/unwrapped.nix)4
-rw-r--r--pkgs/applications/networking/kubo/default.nix (renamed from pkgs/applications/networking/ipfs/default.nix)19
-rw-r--r--pkgs/applications/networking/mailreaders/claws-mail/default.nix2
-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/default.nix13
-rw-r--r--pkgs/applications/networking/n8n/node-env.nix106
-rw-r--r--pkgs/applications/networking/n8n/node-packages.nix2227
-rw-r--r--pkgs/applications/networking/onionshare/default.nix4
-rw-r--r--pkgs/applications/networking/onionshare/fix-paths-gui.patch14
-rw-r--r--pkgs/applications/networking/onionshare/fix-paths.patch22
-rw-r--r--pkgs/applications/networking/p2p/qbittorrent/default.nix4
-rw-r--r--pkgs/applications/networking/protonvpn-cli/default.nix6
-rw-r--r--pkgs/applications/networking/protonvpn-gui/default.nix4
-rw-r--r--pkgs/applications/networking/seahub/default.nix1
-rw-r--r--pkgs/applications/networking/sync/lsyncd/default.nix4
-rw-r--r--pkgs/applications/networking/syncthing/default.nix6
-rw-r--r--pkgs/applications/office/beamerpresenter/default.nix6
-rw-r--r--pkgs/applications/office/gnucash/default.nix2
-rw-r--r--pkgs/applications/office/grisbi/default.nix3
-rw-r--r--pkgs/applications/office/homebank/default.nix4
-rw-r--r--pkgs/applications/office/libreoffice/default.nix1
-rw-r--r--pkgs/applications/office/portfolio/default.nix4
-rw-r--r--pkgs/applications/office/timedoctor/default.nix125
-rw-r--r--pkgs/applications/office/treesheets/default.nix17
-rw-r--r--pkgs/applications/radio/flex-ncat/default.nix6
-rw-r--r--pkgs/applications/radio/flex-ndax/default.nix6
-rw-r--r--pkgs/applications/radio/freedv/default.nix8
-rw-r--r--pkgs/applications/radio/limesuite/default.nix9
-rw-r--r--pkgs/applications/radio/rtl-ais/default.nix3
-rw-r--r--pkgs/applications/radio/sigdigger/default.nix59
-rw-r--r--pkgs/applications/radio/sigutils/default.nix40
-rw-r--r--pkgs/applications/radio/soapyairspy/default.nix6
-rw-r--r--pkgs/applications/radio/soapyaudio/default.nix7
-rw-r--r--pkgs/applications/radio/soapybladerf/default.nix6
-rw-r--r--pkgs/applications/radio/soapyhackrf/default.nix6
-rw-r--r--pkgs/applications/radio/soapyremote/default.nix4
-rw-r--r--pkgs/applications/radio/soapyuhd/default.nix6
-rw-r--r--pkgs/applications/radio/suscan/default.nix50
-rw-r--r--pkgs/applications/radio/suwidgets/default.nix51
-rw-r--r--pkgs/applications/radio/unixcw/default.nix3
-rw-r--r--pkgs/applications/radio/xlog/default.nix3
-rw-r--r--pkgs/applications/science/biology/gatk/default.nix13
-rwxr-xr-xpkgs/applications/science/biology/vcftools/default.nix3
-rw-r--r--pkgs/applications/science/chemistry/avogadro2/default.nix4
-rw-r--r--pkgs/applications/science/chemistry/cp2k/default.nix4
-rw-r--r--pkgs/applications/science/chemistry/jmol/default.nix4
-rw-r--r--pkgs/applications/science/chemistry/octopus/default.nix4
-rw-r--r--pkgs/applications/science/chemistry/pymol/default.nix14
-rw-r--r--pkgs/applications/science/electronics/librepcb/default.nix4
-rw-r--r--pkgs/applications/science/electronics/pcb/default.nix7
-rw-r--r--pkgs/applications/science/electronics/verilator/default.nix4
-rw-r--r--pkgs/applications/science/geometry/drgeo/default.nix3
-rw-r--r--pkgs/applications/science/math/R/default.nix3
-rw-r--r--pkgs/applications/science/math/readstat/default.nix22
-rw-r--r--pkgs/applications/science/math/sage/sage-with-env.nix6
-rw-r--r--pkgs/applications/science/misc/simgrid/default.nix4
-rw-r--r--pkgs/applications/science/physics/crystfel/default.nix2
-rw-r--r--pkgs/applications/terminal-emulators/kitty/default.nix36
-rw-r--r--pkgs/applications/terminal-emulators/kitty/fix-test_ssh_env_vars.patch13
-rw-r--r--pkgs/applications/terminal-emulators/mrxvt/default.nix3
-rw-r--r--pkgs/applications/terminal-emulators/rxvt-unicode/default.nix3
-rw-r--r--pkgs/applications/terminal-emulators/tym/default.nix33
-rw-r--r--pkgs/applications/terminal-emulators/xterm/default.nix4
-rw-r--r--pkgs/applications/version-management/dvc/default.nix3
-rw-r--r--pkgs/applications/version-management/git-and-tools/gh/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-branchless/default.nix15
-rw-r--r--pkgs/applications/version-management/git-and-tools/git/default.nix6
-rw-r--r--pkgs/applications/version-management/git-and-tools/tig/default.nix2
-rw-r--r--pkgs/applications/version-management/gitlab/default.nix12
-rw-r--r--pkgs/applications/version-management/mercurial/default.nix6
-rw-r--r--pkgs/applications/version-management/p4/default.nix114
-rw-r--r--pkgs/applications/version-management/p4d/default.nix2
-rw-r--r--pkgs/applications/version-management/redmine/Gemfile3
-rw-r--r--pkgs/applications/version-management/redmine/Gemfile.lock88
-rw-r--r--pkgs/applications/version-management/redmine/default.nix4
-rw-r--r--pkgs/applications/version-management/redmine/gemset.nix64
-rw-r--r--pkgs/applications/video/aegisub/default.nix8
-rw-r--r--pkgs/applications/video/byzanz/default.nix3
-rw-r--r--pkgs/applications/video/epgstation/default.nix20
-rw-r--r--pkgs/applications/video/epgstation/update.nix111
-rw-r--r--pkgs/applications/video/kodi/addons/visualization-waveform/default.nix25
-rw-r--r--pkgs/applications/video/kooha/default.nix28
-rw-r--r--pkgs/applications/video/mediathekview/default.nix25
-rw-r--r--pkgs/applications/video/mkvtoolnix/default.nix1
-rw-r--r--pkgs/applications/video/mpv/scripts/mpv-playlistmanager.nix13
-rw-r--r--pkgs/applications/video/showmethekey/default.nix14
-rw-r--r--pkgs/applications/video/streamlink/default.nix9
-rw-r--r--pkgs/applications/video/vdr/default.nix2
-rw-r--r--pkgs/applications/video/vdr/plugins.nix47
-rw-r--r--pkgs/applications/video/vdr/softhddevice/default.nix8
-rw-r--r--pkgs/applications/video/vdr/streamdev/default.nix2
-rw-r--r--pkgs/applications/video/vlc/default.nix3
-rw-r--r--pkgs/applications/video/xine-ui/default.nix3
-rw-r--r--pkgs/applications/virtualization/buildkit-nix/default.nix6
-rw-r--r--pkgs/applications/virtualization/colima/default.nix4
-rw-r--r--pkgs/applications/virtualization/cri-o/default.nix4
-rw-r--r--pkgs/applications/virtualization/ecs-agent/default.nix4
-rw-r--r--pkgs/applications/virtualization/podman-tui/default.nix26
-rw-r--r--pkgs/applications/virtualization/pods/default.nix10
-rw-r--r--pkgs/applications/virtualization/qemu/canokey-qemu.nix35
-rw-r--r--pkgs/applications/virtualization/qemu/default.nix7
-rw-r--r--pkgs/applications/virtualization/xen/generic.nix4
-rw-r--r--pkgs/applications/window-managers/dwm/default.nix4
-rw-r--r--pkgs/applications/window-managers/fbpanel/default.nix3
-rw-r--r--pkgs/applications/window-managers/icewm/default.nix4
-rw-r--r--pkgs/applications/window-managers/leftwm/default.nix6
-rw-r--r--pkgs/applications/window-managers/sway/wsr.nix8
-rw-r--r--pkgs/applications/window-managers/weston/default.nix4
-rw-r--r--pkgs/applications/window-managers/xmonad/xmonadctl.nix10
-rw-r--r--pkgs/build-support/cc-wrapper/cc-wrapper.sh25
-rw-r--r--pkgs/build-support/coq/default.nix14
-rw-r--r--pkgs/build-support/dotnet/build-dotnet-module/default.nix38
-rw-r--r--pkgs/build-support/dotnet/nuget-to-nix/default.nix10
-rwxr-xr-xpkgs/build-support/dotnet/nuget-to-nix/nuget-to-nix.sh94
-rw-r--r--pkgs/build-support/emacs/generic.nix2
-rw-r--r--pkgs/build-support/fetchurl/default.nix22
-rw-r--r--pkgs/build-support/fetchzip/default.nix17
-rw-r--r--pkgs/build-support/node/fetch-yarn-deps/default.nix19
-rw-r--r--pkgs/build-support/rust/build-rust-package/default.nix1
-rw-r--r--pkgs/build-support/rust/hooks/cargo-setup-hook.sh12
-rw-r--r--pkgs/build-support/rust/lib/default.nix5
-rw-r--r--pkgs/build-support/setup-hooks/make-binary-wrapper/default.nix6
-rw-r--r--pkgs/build-support/setup-hooks/postgresql-test-hook/default.nix5
-rw-r--r--pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix5
-rw-r--r--pkgs/build-support/trivial-builders.nix22
-rw-r--r--pkgs/build-support/writers/default.nix15
-rw-r--r--pkgs/build-support/writers/test.nix12
-rw-r--r--pkgs/common-updater/directory-listing-updater.nix19
-rw-r--r--pkgs/common-updater/generic-updater.nix2
-rw-r--r--pkgs/common-updater/http-two-levels-updater.nix2
-rw-r--r--pkgs/common-updater/scripts.nix32
-rwxr-xr-xpkgs/common-updater/scripts/list-archive-two-levels-versions4
-rwxr-xr-xpkgs/common-updater/scripts/list-directory-versions65
-rwxr-xr-xpkgs/common-updater/scripts/list-git-tags2
-rw-r--r--pkgs/data/fonts/cooper-hewitt/default.nix20
-rw-r--r--pkgs/data/fonts/freefont-ttf/default.nix12
-rw-r--r--pkgs/data/fonts/libertine/default.nix13
-rw-r--r--pkgs/data/fonts/noto-fonts/default.nix8
-rw-r--r--pkgs/data/fonts/noto-fonts/tools.nix4
-rw-r--r--pkgs/data/fonts/proggyfonts/default.nix47
-rw-r--r--pkgs/data/fonts/sarasa-gothic/default.nix4
-rw-r--r--pkgs/data/fonts/ubuntu-font-family/default.nix20
-rw-r--r--pkgs/data/icons/nordzy-icon-theme/default.nix4
-rw-r--r--pkgs/data/icons/numix-icon-theme-circle/default.nix4
-rw-r--r--pkgs/data/icons/numix-icon-theme-square/default.nix4
-rw-r--r--pkgs/data/icons/pop-icon-theme/default.nix6
-rw-r--r--pkgs/data/icons/qogir-icon-theme/default.nix6
-rw-r--r--pkgs/data/icons/tango-icon-theme/default.nix4
-rw-r--r--pkgs/data/misc/cacert/default.nix4
-rw-r--r--pkgs/data/misc/ddccontrol-db/default.nix3
-rw-r--r--pkgs/data/misc/hackage/pin.json8
-rw-r--r--pkgs/data/misc/iana-etc/default.nix5
-rw-r--r--pkgs/data/misc/media-player-info/default.nix45
-rw-r--r--pkgs/data/misc/tzdata/default.nix6
-rw-r--r--pkgs/data/misc/v2ray-geoip/default.nix6
-rw-r--r--pkgs/data/themes/adw-gtk3/default.nix4
-rw-r--r--pkgs/data/themes/obsidian2/default.nix4
-rw-r--r--pkgs/desktops/cinnamon/cinnamon-common/default.nix6
-rw-r--r--pkgs/desktops/cinnamon/cinnamon-gsettings-overrides/default.nix19
-rw-r--r--pkgs/desktops/enlightenment/enlightenment/default.nix6
-rw-r--r--pkgs/desktops/gnome-2/desktop/gtksourceview/default.nix6
-rw-r--r--pkgs/desktops/gnome-2/platform/gtkhtml/4.x.nix4
-rw-r--r--pkgs/desktops/gnome-2/platform/gtkhtml/default.nix4
-rw-r--r--pkgs/desktops/gnome-2/platform/libgnome/default.nix4
-rw-r--r--pkgs/desktops/gnome-2/platform/libgnomecups/default.nix4
-rw-r--r--pkgs/desktops/gnome-2/platform/libgnomeprint/default.nix4
-rw-r--r--pkgs/desktops/gnome-2/platform/libgnomeprintui/default.nix4
-rw-r--r--pkgs/desktops/gnome-2/platform/libgnomeui/default.nix4
-rw-r--r--pkgs/desktops/gnome/default.nix2
-rw-r--r--pkgs/desktops/gnome/devtools/gnome-devel-docs/default.nix3
-rw-r--r--pkgs/desktops/gnome/extensions/extensions.json118
-rw-r--r--pkgs/desktops/gnome/misc/gtkhtml/default.nix4
-rw-r--r--pkgs/desktops/gnome/nixos/gsettings-overrides/default.nix55
-rw-r--r--pkgs/desktops/lxde/core/lxmenu-data/default.nix2
-rw-r--r--pkgs/desktops/mate/mate-tweak/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-iconbrowser/default.nix75
-rw-r--r--pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix4
-rw-r--r--pkgs/desktops/pantheon/default.nix2
-rw-r--r--pkgs/desktops/pantheon/desktop/elementary-gsettings-schemas/default.nix29
-rw-r--r--pkgs/desktops/surf-display/default.nix6
-rw-r--r--pkgs/desktops/xfce/default.nix2
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-datetime-plugin/default.nix4
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-time-out-plugin/default.nix20
-rw-r--r--pkgs/development/compilers/cudatoolkit/redist/extension.nix1
-rw-r--r--pkgs/development/compilers/cudatoolkit/redist/manifests/redistrib_11.7.0.json879
-rw-r--r--pkgs/development/compilers/cudatoolkit/redist/overrides.nix10
-rw-r--r--pkgs/development/compilers/cudatoolkit/versions.toml6
-rw-r--r--pkgs/development/compilers/dale/default.nix17
-rw-r--r--pkgs/development/compilers/dotnet/build-dotnet.nix7
-rw-r--r--pkgs/development/compilers/flutter/default.nix58
-rw-r--r--pkgs/development/compilers/flutter/flutter.nix4
-rw-r--r--pkgs/development/compilers/flutter/patches/flutter2/disable-auto-update.patch (renamed from pkgs/development/compilers/flutter/patches/disable-auto-update.patch)0
-rw-r--r--pkgs/development/compilers/flutter/patches/flutter2/git-dir.patch80
-rw-r--r--pkgs/development/compilers/flutter/patches/flutter2/move-cache.patch72
-rw-r--r--pkgs/development/compilers/flutter/patches/flutter3/disable-auto-update.patch36
-rw-r--r--pkgs/development/compilers/flutter/patches/flutter3/git-dir.patch (renamed from pkgs/development/compilers/flutter/patches/git-dir.patch)30
-rw-r--r--pkgs/development/compilers/flutter/patches/flutter3/move-cache.patch (renamed from pkgs/development/compilers/flutter/patches/move-cache.patch)84
-rw-r--r--pkgs/development/compilers/gerbil/gerbil-crypto.nix3
-rw-r--r--pkgs/development/compilers/gerbil/gerbil-support.nix3
-rw-r--r--pkgs/development/compilers/ghdl/default.nix47
-rw-r--r--pkgs/development/compilers/go-jsonnet/default.nix21
-rw-r--r--pkgs/development/compilers/go/1.19.nix4
-rw-r--r--pkgs/development/compilers/heptagon/default.nix52
-rw-r--r--pkgs/development/compilers/jasmin-compiler/default.nix4
-rw-r--r--pkgs/development/compilers/julia/1.8-bin.nix6
-rw-r--r--pkgs/development/compilers/julia/1.8.nix8
-rw-r--r--pkgs/development/compilers/kotlin/default.nix4
-rw-r--r--pkgs/development/compilers/ligo/default.nix15
-rw-r--r--pkgs/development/compilers/ligo/ligo.patch99
-rw-r--r--pkgs/development/compilers/llvm/13/lldb/cpu_subtype_arm64e_replacement.patch12
-rw-r--r--pkgs/development/compilers/llvm/13/lldb/default.nix19
-rw-r--r--pkgs/development/compilers/llvm/14/lldb/cpu_subtype_arm64e_replacement.patch12
-rw-r--r--pkgs/development/compilers/llvm/14/lldb/default.nix21
-rw-r--r--pkgs/development/compilers/llvm/git/lldb/default.nix3
-rw-r--r--pkgs/development/compilers/nim/default.nix33
-rw-r--r--pkgs/development/compilers/nim/nixbuild.patch13
-rw-r--r--pkgs/development/compilers/open-watcom/v2.nix7
-rw-r--r--pkgs/development/compilers/openjdk/openjfx/17.nix4
-rw-r--r--pkgs/development/compilers/p4c/default.nix6
-rw-r--r--pkgs/development/compilers/polyml/5.6.nix2
-rw-r--r--pkgs/development/compilers/rust/1_64.nix (renamed from pkgs/development/compilers/rust/1_63.nix)32
-rw-r--r--pkgs/development/compilers/rust/cargo.nix4
-rw-r--r--pkgs/development/compilers/rust/default.nix2
-rw-r--r--pkgs/development/compilers/rust/rustc.nix13
-rw-r--r--pkgs/development/compilers/tinygo/0001-Makefile.patch31
-rw-r--r--pkgs/development/compilers/tinygo/0002-Add-clang-header-path.patch14
-rw-r--r--pkgs/development/compilers/tinygo/0003-Use-out-path-as-build-id-on-darwin.patch56
-rw-r--r--pkgs/development/compilers/tinygo/default.nix48
-rw-r--r--pkgs/development/compilers/yosys/plugins/ghdl.nix30
-rw-r--r--pkgs/development/coq-modules/VST/default.nix4
-rw-r--r--pkgs/development/coq-modules/addition-chains/default.nix2
-rw-r--r--pkgs/development/coq-modules/category-theory/default.nix2
-rw-r--r--pkgs/development/coq-modules/compcert/default.nix11
-rw-r--r--pkgs/development/coq-modules/coqide/default.nix2
-rw-r--r--pkgs/development/coq-modules/gaia-hydras/default.nix2
-rw-r--r--pkgs/development/coq-modules/hydra-battles/default.nix2
-rw-r--r--pkgs/development/coq-modules/mathcomp-analysis/default.nix24
-rw-r--r--pkgs/development/coq-modules/mathcomp-word/default.nix5
-rw-r--r--pkgs/development/coq-modules/multinomials/default.nix6
-rw-r--r--pkgs/development/coq-modules/serapi/default.nix2
-rw-r--r--pkgs/development/coq-modules/simple-io/default.nix7
-rw-r--r--pkgs/development/coq-modules/simple-io/test.nix21
-rw-r--r--pkgs/development/coq-modules/topology/default.nix2
-rw-r--r--pkgs/development/coq-modules/zorns-lemma/default.nix2
-rw-r--r--pkgs/development/dotnet-modules/python-language-server/default.nix3
-rw-r--r--pkgs/development/dotnet-modules/python-language-server/deps.nix20
-rwxr-xr-xpkgs/development/embedded/blackmagic/helper.sh2
-rw-r--r--pkgs/development/embedded/svdtools/default.nix6
-rw-r--r--pkgs/development/embedded/tytools/default.nix4
-rw-r--r--pkgs/development/guile-modules/guile-gcrypt/default.nix7
-rw-r--r--pkgs/development/guile-modules/guile-git/default.nix12
-rw-r--r--pkgs/development/guile-modules/guile-json/default.nix9
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix3
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-9.2.x.nix3
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-9.4.x.nix180
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml8
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml1
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml15
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix583
-rw-r--r--pkgs/development/interpreters/angelscript/default.nix4
-rw-r--r--pkgs/development/interpreters/bats/default.nix20
-rw-r--r--pkgs/development/interpreters/bqn/cbqn/default.nix24
-rw-r--r--pkgs/development/interpreters/bqn/mlochbaum-bqn/default.nix6
-rw-r--r--pkgs/development/interpreters/cg3/default.nix4
-rw-r--r--pkgs/development/interpreters/dart/default.nix2
-rw-r--r--pkgs/development/interpreters/io/default.nix3
-rw-r--r--pkgs/development/interpreters/ivy/default.nix4
-rw-r--r--pkgs/development/interpreters/php/8.0.nix3
-rw-r--r--pkgs/development/interpreters/php/8.1.nix3
-rw-r--r--pkgs/development/interpreters/python/update-python-libraries/default.nix3
-rw-r--r--pkgs/development/interpreters/qnial/default.nix3
-rw-r--r--pkgs/development/libraries/SDL2/default.nix6
-rw-r--r--pkgs/development/libraries/SDL2/find-headers.patch26
-rw-r--r--pkgs/development/libraries/SDL2_mixer/default.nix2
-rw-r--r--pkgs/development/libraries/allegro/5.nix4
-rw-r--r--pkgs/development/libraries/apr-util/default.nix3
-rw-r--r--pkgs/development/libraries/arguments/default.nix2
-rw-r--r--pkgs/development/libraries/cosmopolitan/default.nix4
-rw-r--r--pkgs/development/libraries/dssi/default.nix4
-rw-r--r--pkgs/development/libraries/exiv2/default.nix2
-rw-r--r--pkgs/development/libraries/expat/default.nix4
-rw-r--r--pkgs/development/libraries/ffmpeg/4.nix9
-rw-r--r--pkgs/development/libraries/frame/default.nix3
-rw-r--r--pkgs/development/libraries/gdal/2.4.nix92
-rw-r--r--pkgs/development/libraries/ggz_base_libs/default.nix3
-rw-r--r--pkgs/development/libraries/glew/1.10.nix6
-rw-r--r--pkgs/development/libraries/glib/default.nix2
-rw-r--r--pkgs/development/libraries/glib/tests-skip-shared-libs-if-default_library-static.patch141
-rw-r--r--pkgs/development/libraries/glibc/default.nix2
-rw-r--r--pkgs/development/libraries/gnutls/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/bad/default.nix12
-rw-r--r--pkgs/development/libraries/gstreamer/bad/fix-paths.patch48
-rw-r--r--pkgs/development/libraries/gtk-engines/default.nix4
-rw-r--r--pkgs/development/libraries/gtkspell/default.nix4
-rw-r--r--pkgs/development/libraries/imlib2/default.nix9
-rw-r--r--pkgs/development/libraries/jellyfin-ffmpeg/default.nix4
-rw-r--r--pkgs/development/libraries/kerberos/krb5.nix2
-rw-r--r--pkgs/development/libraries/libajantv2/default.nix35
-rw-r--r--pkgs/development/libraries/libcec/default.nix23
-rw-r--r--pkgs/development/libraries/libdrm/default.nix11
-rw-r--r--pkgs/development/libraries/libdwarf/0.4.nix8
-rw-r--r--pkgs/development/libraries/libdwarf/20210528.nix8
-rw-r--r--pkgs/development/libraries/libdwarf/default.nix12
-rw-r--r--pkgs/development/libraries/liberfa/default.nix2
-rw-r--r--pkgs/development/libraries/libextractor/default.nix3
-rw-r--r--pkgs/development/libraries/libffi/default.nix5
-rw-r--r--pkgs/development/libraries/libffi/libffi-powerpc64.patch23
-rw-r--r--pkgs/development/libraries/libfido2/default.nix2
-rw-r--r--pkgs/development/libraries/libinklevel/default.nix2
-rw-r--r--pkgs/development/libraries/libmicrohttpd/0.9.69.nix (renamed from pkgs/development/libraries/libmicrohttpd/0.9.70.nix)4
-rw-r--r--pkgs/development/libraries/libmicrohttpd/generic.nix8
-rw-r--r--pkgs/development/libraries/libmikmod/default.nix6
-rw-r--r--pkgs/development/libraries/libmx/default.nix3
-rw-r--r--pkgs/development/libraries/libpfm/default.nix4
-rw-r--r--pkgs/development/libraries/libpipeline/default.nix4
-rw-r--r--pkgs/development/libraries/libplctag/default.nix4
-rw-r--r--pkgs/development/libraries/libressl/default.nix14
-rw-r--r--pkgs/development/libraries/librist/default.nix43
-rw-r--r--pkgs/development/libraries/libspectre/default.nix4
-rw-r--r--pkgs/development/libraries/libspng/default.nix2
-rw-r--r--pkgs/development/libraries/libssh2/default.nix2
-rw-r--r--pkgs/development/libraries/libtoxcore/default.nix92
-rw-r--r--pkgs/development/libraries/libtoxcore/new-api.nix58
-rw-r--r--pkgs/development/libraries/libvirt/default.nix5
-rw-r--r--pkgs/development/libraries/libvori/default.nix4
-rw-r--r--pkgs/development/libraries/libwnck/2.nix4
-rw-r--r--pkgs/development/libraries/maeparser/default.nix8
-rw-r--r--pkgs/development/libraries/matrix-sdk-crypto-nodejs/default.nix65
-rw-r--r--pkgs/development/libraries/matrix-sdk-crypto-nodejs/remove-duplicate-dependency.patch47
-rw-r--r--pkgs/development/libraries/mlt/qt-5.nix3
-rw-r--r--pkgs/development/libraries/nsync/default.nix14
-rw-r--r--pkgs/development/libraries/ogre/default.nix1
-rw-r--r--pkgs/development/libraries/onnxruntime/default.nix34
-rw-r--r--pkgs/development/libraries/openal-soft/default.nix8
-rw-r--r--pkgs/development/libraries/opencl-headers/default.nix4
-rw-r--r--pkgs/development/libraries/openh264/default.nix4
-rw-r--r--pkgs/development/libraries/openjpeg/default.nix68
-rw-r--r--pkgs/development/libraries/openjpeg/fix-cmake-config-includedir.patch44
-rw-r--r--pkgs/development/libraries/packr/default.nix20
-rw-r--r--pkgs/development/libraries/pipewire/wireplumber.nix20
-rw-r--r--pkgs/development/libraries/plasma-wayland-protocols/default.nix4
-rw-r--r--pkgs/development/libraries/plib/default.nix4
-rw-r--r--pkgs/development/libraries/protobuf/generic-v3-cmake.nix2
-rw-r--r--pkgs/development/libraries/protobuf/static-executables-have-no-rpath.patch18
-rw-r--r--pkgs/development/libraries/pupnp/default.nix4
-rw-r--r--pkgs/development/libraries/qt-5/5.15/srcs-generated.json164
-rw-r--r--pkgs/development/libraries/qt-5/5.15/srcs.nix6
-rw-r--r--pkgs/development/libraries/qt-6/default.nix11
-rw-r--r--pkgs/development/libraries/qt-6/hooks/fix-qmake-libtool.sh25
-rw-r--r--pkgs/development/libraries/qt-6/hooks/fix-qt-builtin-paths.sh66
-rw-r--r--pkgs/development/libraries/qt-6/hooks/fix-qt-module-paths.sh36
-rw-r--r--pkgs/development/libraries/qt-6/hooks/move-qt-dev-tools.sh34
-rw-r--r--pkgs/development/libraries/qt-6/hooks/qmake-hook.sh48
-rw-r--r--pkgs/development/libraries/qt-6/hooks/qtbase-setup-hook.sh102
-rw-r--r--pkgs/development/libraries/qt-6/hooks/wrap-qt-apps-hook.sh191
-rw-r--r--pkgs/development/libraries/qt-6/modules/qtbase.nix53
-rw-r--r--pkgs/development/libraries/qt-6/modules/qtdeclarative.nix18
-rw-r--r--pkgs/development/libraries/qt-6/modules/qtlanguageserver.nix3
-rw-r--r--pkgs/development/libraries/qt-6/modules/qtwebengine.nix8
-rw-r--r--pkgs/development/libraries/qt-6/patches/cmake.patch (renamed from pkgs/development/libraries/qt-6/cmake.patch)0
-rw-r--r--pkgs/development/libraries/qt-6/patches/qtbase-qmake-pkg-config.patch14
-rw-r--r--pkgs/development/libraries/qt-6/patches/qtwebengine-fix.patch28
-rw-r--r--pkgs/development/libraries/qt-6/qtModule.nix43
-rw-r--r--pkgs/development/libraries/rocksdb/default.nix4
-rw-r--r--pkgs/development/libraries/science/astronomy/indilib/default.nix6
-rw-r--r--pkgs/development/libraries/science/astronomy/indilib/indi-firmware.nix2
-rw-r--r--pkgs/development/libraries/science/astronomy/indilib/indi-full.nix4
-rw-r--r--pkgs/development/libraries/science/chemistry/avogadrolibs/default.nix4
-rw-r--r--pkgs/development/libraries/science/math/cliquer/default.nix2
-rw-r--r--pkgs/development/libraries/science/math/cudnn/extension.nix19
-rw-r--r--pkgs/development/libraries/science/math/openblas/default.nix9
-rw-r--r--pkgs/development/libraries/science/math/tensorrt/extension.nix3
-rw-r--r--pkgs/development/libraries/sentry-native/default.nix4
-rw-r--r--pkgs/development/libraries/simdjson/default.nix4
-rw-r--r--pkgs/development/libraries/simgear/default.nix4
-rw-r--r--pkgs/development/libraries/smpeg/default.nix8
-rw-r--r--pkgs/development/libraries/smpeg2/default.nix5
-rw-r--r--pkgs/development/libraries/spglib/default.nix7
-rw-r--r--pkgs/development/libraries/srt/default.nix4
-rw-r--r--pkgs/development/libraries/tcllib/default.nix7
-rw-r--r--pkgs/development/libraries/telepathy/farstream/default.nix8
-rw-r--r--pkgs/development/libraries/thrift/default.nix9
-rw-r--r--pkgs/development/libraries/ucx/default.nix4
-rw-r--r--pkgs/development/libraries/unicap/default.nix3
-rw-r--r--pkgs/development/libraries/uriparser/default.nix4
-rw-r--r--pkgs/development/libraries/vapoursynth-mvtools/default.nix3
-rw-r--r--pkgs/development/libraries/volume-key/default.nix4
-rw-r--r--pkgs/development/libraries/vte/2.90.nix4
-rw-r--r--pkgs/development/libraries/vte/default.nix3
-rw-r--r--pkgs/development/libraries/webkitgtk/default.nix2
-rw-r--r--pkgs/development/libraries/webp-pixbuf-loader/default.nix59
-rw-r--r--pkgs/development/libraries/wxsqlite3/default.nix10
-rw-r--r--pkgs/development/libraries/xcb-util-cursor/HEAD.nix3
-rw-r--r--pkgs/development/lua-modules/generated-packages.nix191
-rw-r--r--pkgs/development/lua-modules/overrides.nix10
-rw-r--r--pkgs/development/misc/brev-cli/default.nix4
-rw-r--r--pkgs/development/misc/resholve/resholve.nix14
-rw-r--r--pkgs/development/nim-packages/build-nim-package/default.nix4
-rw-r--r--pkgs/development/nim-packages/nim_builder/nim_builder.nim4
-rw-r--r--pkgs/development/node-packages/node-packages.json1
-rw-r--r--pkgs/development/node-packages/node-packages.nix6085
-rw-r--r--pkgs/development/ocaml-modules/bigstringaf/default.nix11
-rw-r--r--pkgs/development/ocaml-modules/bls12-381/default.nix21
-rw-r--r--pkgs/development/ocaml-modules/bls12-381/unix.nix34
-rw-r--r--pkgs/development/ocaml-modules/brisk-reconciler/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/caqti/async.nix1
-rw-r--r--pkgs/development/ocaml-modules/caqti/default.nix15
-rw-r--r--pkgs/development/ocaml-modules/caqti/driver-mariadb.nix1
-rw-r--r--pkgs/development/ocaml-modules/caqti/driver-postgresql.nix1
-rw-r--r--pkgs/development/ocaml-modules/caqti/driver-sqlite3.nix1
-rw-r--r--pkgs/development/ocaml-modules/caqti/dynload.nix1
-rw-r--r--pkgs/development/ocaml-modules/caqti/lwt.nix1
-rw-r--r--pkgs/development/ocaml-modules/caqti/type-calendar.nix4
-rw-r--r--pkgs/development/ocaml-modules/carton/default.nix16
-rw-r--r--pkgs/development/ocaml-modules/carton/git.nix2
-rw-r--r--pkgs/development/ocaml-modules/carton/lwt.nix2
-rw-r--r--pkgs/development/ocaml-modules/cstruct/async.nix6
-rw-r--r--pkgs/development/ocaml-modules/cstruct/default.nix19
-rw-r--r--pkgs/development/ocaml-modules/cstruct/lwt.nix12
-rw-r--r--pkgs/development/ocaml-modules/cstruct/ppx.nix2
-rw-r--r--pkgs/development/ocaml-modules/cstruct/sexp.nix7
-rw-r--r--pkgs/development/ocaml-modules/cstruct/unix.nix12
-rw-r--r--pkgs/development/ocaml-modules/data-encoding/default.nix15
-rw-r--r--pkgs/development/ocaml-modules/decompress/default.nix22
-rw-r--r--pkgs/development/ocaml-modules/ffmpeg/base.nix4
-rw-r--r--pkgs/development/ocaml-modules/flex/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/git/cohttp-unix.nix17
-rw-r--r--pkgs/development/ocaml-modules/git/cohttp.nix19
-rw-r--r--pkgs/development/ocaml-modules/git/default.nix17
-rw-r--r--pkgs/development/ocaml-modules/git/mirage.nix95
-rw-r--r--pkgs/development/ocaml-modules/git/paf.nix6
-rw-r--r--pkgs/development/ocaml-modules/git/unix.nix33
-rw-r--r--pkgs/development/ocaml-modules/gsl/default.nix3
-rw-r--r--pkgs/development/ocaml-modules/irmin/chunk.nix6
-rw-r--r--pkgs/development/ocaml-modules/irmin/containers.nix6
-rw-r--r--pkgs/development/ocaml-modules/irmin/default.nix28
-rw-r--r--pkgs/development/ocaml-modules/irmin/fs.nix13
-rw-r--r--pkgs/development/ocaml-modules/irmin/git.nix15
-rw-r--r--pkgs/development/ocaml-modules/irmin/graphql.nix15
-rw-r--r--pkgs/development/ocaml-modules/irmin/http.nix12
-rw-r--r--pkgs/development/ocaml-modules/irmin/layers.nix18
-rw-r--r--pkgs/development/ocaml-modules/irmin/mirage-git.nix2
-rw-r--r--pkgs/development/ocaml-modules/irmin/mirage-graphql.nix2
-rw-r--r--pkgs/development/ocaml-modules/irmin/mirage.nix2
-rw-r--r--pkgs/development/ocaml-modules/irmin/pack.nix17
-rw-r--r--pkgs/development/ocaml-modules/irmin/ppx.nix11
-rw-r--r--pkgs/development/ocaml-modules/irmin/test.nix25
-rw-r--r--pkgs/development/ocaml-modules/irmin/tezos.nix33
-rw-r--r--pkgs/development/ocaml-modules/irmin/unix.nix33
-rw-r--r--pkgs/development/ocaml-modules/mimic/happy-eyeballs.nix2
-rw-r--r--pkgs/development/ocaml-modules/mirage-block-ramdisk/default.nix5
-rw-r--r--pkgs/development/ocaml-modules/pcre/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/ppx_tools/default.nix23
-rw-r--r--pkgs/development/ocaml-modules/rebez/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/reperf/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/repr/default.nix16
-rw-r--r--pkgs/development/ocaml-modules/repr/ppx.nix2
-rw-r--r--pkgs/development/ocaml-modules/ringo/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/ringo/lwt.nix2
-rw-r--r--pkgs/development/ocaml-modules/taglib/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/telegraml/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/tsdl-image/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/tsdl-mixer/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/tsdl-ttf/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/wodan/irmin.nix3
-rw-r--r--pkgs/development/ocaml-modules/x509/default.nix4
-rw-r--r--pkgs/development/perl-modules/Po4a/default.nix12
-rw-r--r--pkgs/development/perl-modules/mod_perl2-PL_hash_seed.patch13
-rw-r--r--pkgs/development/python-modules/acquire/default.nix70
-rw-r--r--pkgs/development/python-modules/adafruit-platformdetect/default.nix4
-rw-r--r--pkgs/development/python-modules/adal/default.nix4
-rw-r--r--pkgs/development/python-modules/ailment/default.nix4
-rw-r--r--pkgs/development/python-modules/aioesphomeapi/default.nix4
-rw-r--r--pkgs/development/python-modules/aiopvapi/default.nix14
-rw-r--r--pkgs/development/python-modules/aiosmb/default.nix4
-rw-r--r--pkgs/development/python-modules/aiounifi/default.nix4
-rw-r--r--pkgs/development/python-modules/allure-python-commons-test/default.nix4
-rw-r--r--pkgs/development/python-modules/angr/default.nix4
-rw-r--r--pkgs/development/python-modules/ansible-lint/default.nix4
-rw-r--r--pkgs/development/python-modules/anyio/default.nix3
-rw-r--r--pkgs/development/python-modules/apache-airflow/default.nix9
-rw-r--r--pkgs/development/python-modules/apache-airflow/package.json19
-rw-r--r--pkgs/development/python-modules/apache-airflow/providers.nix58
-rw-r--r--pkgs/development/python-modules/apache-airflow/yarn.lock365
-rw-r--r--pkgs/development/python-modules/apache-airflow/yarn.nix398
-rw-r--r--pkgs/development/python-modules/apprise/default.nix4
-rw-r--r--pkgs/development/python-modules/archinfo/default.nix4
-rw-r--r--pkgs/development/python-modules/asyauth/default.nix4
-rw-r--r--pkgs/development/python-modules/atomman/default.nix35
-rw-r--r--pkgs/development/python-modules/auth0-python/default.nix3
-rw-r--r--pkgs/development/python-modules/awscrt/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-containerservice/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-kusto/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-monitor/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-netapp/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-reservations/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-security/default.nix4
-rw-r--r--pkgs/development/python-modules/batchspawner/default.nix18
-rw-r--r--pkgs/development/python-modules/bellows/default.nix4
-rw-r--r--pkgs/development/python-modules/bleach-allowlist/default.nix31
-rw-r--r--pkgs/development/python-modules/bluetooth-adapters/default.nix4
-rw-r--r--pkgs/development/python-modules/bluetooth-auto-recovery/default.nix4
-rw-r--r--pkgs/development/python-modules/brother/default.nix6
-rw-r--r--pkgs/development/python-modules/browser-cookie3/default.nix4
-rw-r--r--pkgs/development/python-modules/bthome-ble/default.nix4
-rw-r--r--pkgs/development/python-modules/cairo-lang/default.nix69
-rw-r--r--pkgs/development/python-modules/catboost/default.nix22
-rw-r--r--pkgs/development/python-modules/catboost/nix-support.patch108
-rw-r--r--pkgs/development/python-modules/chiabip158/default.nix4
-rw-r--r--pkgs/development/python-modules/cinemagoer/default.nix2
-rw-r--r--pkgs/development/python-modules/claripy/default.nix4
-rw-r--r--pkgs/development/python-modules/cle/default.nix4
-rw-r--r--pkgs/development/python-modules/cock/default.nix4
-rw-r--r--pkgs/development/python-modules/configupdater/default.nix37
-rw-r--r--pkgs/development/python-modules/coqui-trainer/default.nix4
-rw-r--r--pkgs/development/python-modules/crytic-compile/default.nix23
-rw-r--r--pkgs/development/python-modules/curtsies/default.nix23
-rw-r--r--pkgs/development/python-modules/dataclasses-json/default.nix6
-rw-r--r--pkgs/development/python-modules/datasets/default.nix4
-rw-r--r--pkgs/development/python-modules/dbus-fast/default.nix9
-rw-r--r--pkgs/development/python-modules/deltachat/default.nix2
-rw-r--r--pkgs/development/python-modules/detect-secrets/default.nix4
-rw-r--r--pkgs/development/python-modules/devito/default.nix7
-rw-r--r--pkgs/development/python-modules/discogs-client/default.nix4
-rw-r--r--pkgs/development/python-modules/dissect-cim/default.nix52
-rw-r--r--pkgs/development/python-modules/dissect-clfs/default.nix50
-rw-r--r--pkgs/development/python-modules/dissect-cstruct/default.nix45
-rw-r--r--pkgs/development/python-modules/dissect-esedb/default.nix52
-rw-r--r--pkgs/development/python-modules/dissect-etl/default.nix52
-rw-r--r--pkgs/development/python-modules/dissect-eventlog/default.nix52
-rw-r--r--pkgs/development/python-modules/dissect-evidence/default.nix52
-rw-r--r--pkgs/development/python-modules/dissect-extfs/default.nix52
-rw-r--r--pkgs/development/python-modules/dissect-fat/default.nix50
-rw-r--r--pkgs/development/python-modules/dissect-ffs/default.nix52
-rw-r--r--pkgs/development/python-modules/dissect-hypervisor/default.nix61
-rw-r--r--pkgs/development/python-modules/dissect-ntfs/default.nix57
-rw-r--r--pkgs/development/python-modules/dissect-ole/default.nix50
-rw-r--r--pkgs/development/python-modules/dissect-regf/default.nix52
-rw-r--r--pkgs/development/python-modules/dissect-shellitem/default.nix52
-rw-r--r--pkgs/development/python-modules/dissect-sql/default.nix52
-rw-r--r--pkgs/development/python-modules/dissect-target/default.nix110
-rw-r--r--pkgs/development/python-modules/dissect-util/default.nix45
-rw-r--r--pkgs/development/python-modules/dissect-vmfs/default.nix52
-rw-r--r--pkgs/development/python-modules/dissect-volume/default.nix52
-rw-r--r--pkgs/development/python-modules/dissect-xfs/default.nix52
-rw-r--r--pkgs/development/python-modules/dissect/default.nix88
-rw-r--r--pkgs/development/python-modules/django-allauth/default.nix5
-rw-r--r--pkgs/development/python-modules/django-annoying/default.nix48
-rw-r--r--pkgs/development/python-modules/django-autocomplete-light/default.nix73
-rw-r--r--pkgs/development/python-modules/django-cors-headers/default.nix4
-rw-r--r--pkgs/development/python-modules/django-crispy-forms/default.nix45
-rw-r--r--pkgs/development/python-modules/django-hcaptcha/default.nix32
-rw-r--r--pkgs/development/python-modules/django-js-reverse/default.nix54
-rw-r--r--pkgs/development/python-modules/django-oauth-toolkit/default.nix6
-rw-r--r--pkgs/development/python-modules/django-reversion/default.nix22
-rw-r--r--pkgs/development/python-modules/django-scopes/default.nix38
-rw-r--r--pkgs/development/python-modules/django/3.nix4
-rw-r--r--pkgs/development/python-modules/django/4.nix4
-rw-r--r--pkgs/development/python-modules/djangorestframework-simplejwt/default.nix8
-rw-r--r--pkgs/development/python-modules/djangorestframework/default.nix10
-rw-r--r--pkgs/development/python-modules/dlib/default.nix22
-rw-r--r--pkgs/development/python-modules/drf-jwt/default.nix3
-rw-r--r--pkgs/development/python-modules/drf-writable-nested/default.nix37
-rw-r--r--pkgs/development/python-modules/ducc0/default.nix4
-rw-r--r--pkgs/development/python-modules/ecos/default.nix10
-rw-r--r--pkgs/development/python-modules/eth-keys/default.nix1
-rw-r--r--pkgs/development/python-modules/extruct/default.nix61
-rw-r--r--pkgs/development/python-modules/fastapi-mail/default.nix4
-rw-r--r--pkgs/development/python-modules/flask-jwt-extended/default.nix8
-rw-r--r--pkgs/development/python-modules/flow-record/default.nix68
-rw-r--r--pkgs/development/python-modules/fritzconnection/default.nix4
-rw-r--r--pkgs/development/python-modules/funcparserlib/default.nix14
-rw-r--r--pkgs/development/python-modules/gidgethub/default.nix7
-rw-r--r--pkgs/development/python-modules/github3_py/default.nix3
-rw-r--r--pkgs/development/python-modules/glad/default.nix2
-rw-r--r--pkgs/development/python-modules/glyphslib/default.nix6
-rw-r--r--pkgs/development/python-modules/google-cloud-appengine-logging/default.nix6
-rw-r--r--pkgs/development/python-modules/google-cloud-asset/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-automl/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-bigquery-datatransfer/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-bigquery-logging/default.nix8
-rw-r--r--pkgs/development/python-modules/google-cloud-bigquery-storage/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-bigquery/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-container/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-datacatalog/default.nix6
-rw-r--r--pkgs/development/python-modules/google-cloud-dataproc/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-datastore/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-dlp/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-error-reporting/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-firestore/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-iot/default.nix21
-rw-r--r--pkgs/development/python-modules/google-cloud-language/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-logging/default.nix6
-rw-r--r--pkgs/development/python-modules/google-cloud-monitoring/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-os-config/default.nix35
-rw-r--r--pkgs/development/python-modules/google-cloud-pubsub/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-redis/default.nix6
-rw-r--r--pkgs/development/python-modules/google-cloud-resource-manager/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-secret-manager/default.nix6
-rw-r--r--pkgs/development/python-modules/google-cloud-securitycenter/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-spanner/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-speech/default.nix6
-rw-r--r--pkgs/development/python-modules/google-cloud-tasks/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-texttospeech/default.nix20
-rw-r--r--pkgs/development/python-modules/google-cloud-trace/default.nix21
-rw-r--r--pkgs/development/python-modules/google-cloud-translate/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-videointelligence/default.nix20
-rw-r--r--pkgs/development/python-modules/google-cloud-websecurityscanner/default.nix4
-rw-r--r--pkgs/development/python-modules/gspread/default.nix4
-rw-r--r--pkgs/development/python-modules/hahomematic/default.nix4
-rw-r--r--pkgs/development/python-modules/holoviews/default.nix4
-rw-r--r--pkgs/development/python-modules/home-assistant-bluetooth/default.nix4
-rw-r--r--pkgs/development/python-modules/homematicip/default.nix4
-rw-r--r--pkgs/development/python-modules/html-text/default.nix37
-rw-r--r--pkgs/development/python-modules/httpx/default.nix4
-rw-r--r--pkgs/development/python-modules/huawei-lte-api/default.nix5
-rw-r--r--pkgs/development/python-modules/hy/default.nix35
-rw-r--r--pkgs/development/python-modules/ibeacon-ble/default.nix51
-rw-r--r--pkgs/development/python-modules/identify/default.nix4
-rw-r--r--pkgs/development/python-modules/ipfshttpclient/default.nix4
-rw-r--r--pkgs/development/python-modules/ipwhl/default.nix4
-rw-r--r--pkgs/development/python-modules/json-stream/default.nix4
-rw-r--r--pkgs/development/python-modules/jstyleson/default.nix31
-rw-r--r--pkgs/development/python-modules/jupyter_server/default.nix3
-rw-r--r--pkgs/development/python-modules/jupyterlab_server/default.nix5
-rw-r--r--pkgs/development/python-modules/kegtron-ble/default.nix55
-rw-r--r--pkgs/development/python-modules/langcodes/default.nix2
-rw-r--r--pkgs/development/python-modules/language-tags/default.nix30
-rw-r--r--pkgs/development/python-modules/ledgerblue/default.nix4
-rw-r--r--pkgs/development/python-modules/lektor/default.nix16
-rw-r--r--pkgs/development/python-modules/libvirt/default.nix4
-rw-r--r--pkgs/development/python-modules/lxmf/default.nix4
-rw-r--r--pkgs/development/python-modules/maestral/default.nix2
-rw-r--r--pkgs/development/python-modules/marshmallow-dataclass/default.nix4
-rw-r--r--pkgs/development/python-modules/meshtastic/default.nix4
-rw-r--r--pkgs/development/python-modules/mf2py/default.nix43
-rw-r--r--pkgs/development/python-modules/microdata/default.nix35
-rw-r--r--pkgs/development/python-modules/minikerberos/default.nix4
-rw-r--r--pkgs/development/python-modules/mkdocs-jupyter/default.nix50
-rw-r--r--pkgs/development/python-modules/msal/default.nix12
-rw-r--r--pkgs/development/python-modules/msldap/default.nix4
-rw-r--r--pkgs/development/python-modules/mypy-boto3-builder/default.nix9
-rw-r--r--pkgs/development/python-modules/mypy/default.nix6
-rw-r--r--pkgs/development/python-modules/myst-nb/default.nix5
-rw-r--r--pkgs/development/python-modules/nbclassic/default.nix4
-rw-r--r--pkgs/development/python-modules/nbconvert/default.nix16
-rw-r--r--pkgs/development/python-modules/nbxmpp/default.nix4
-rw-r--r--pkgs/development/python-modules/nix-prefetch-github/default.nix4
-rw-r--r--pkgs/development/python-modules/nomadnet/default.nix4
-rw-r--r--pkgs/development/python-modules/notifications-python-client/default.nix4
-rw-r--r--pkgs/development/python-modules/oci/default.nix4
-rw-r--r--pkgs/development/python-modules/onnxruntime/default.nix64
-rw-r--r--pkgs/development/python-modules/openai/default.nix57
-rw-r--r--pkgs/development/python-modules/pandas-stubs/default.nix105
-rw-r--r--pkgs/development/python-modules/panel/default.nix4
-rw-r--r--pkgs/development/python-modules/patsy/default.nix4
-rw-r--r--pkgs/development/python-modules/pebble/default.nix24
-rw-r--r--pkgs/development/python-modules/pex/default.nix4
-rw-r--r--pkgs/development/python-modules/phonopy/default.nix16
-rw-r--r--pkgs/development/python-modules/plugwise/default.nix4
-rw-r--r--pkgs/development/python-modules/potentials/default.nix4
-rw-r--r--pkgs/development/python-modules/psutil/default.nix7
-rw-r--r--pkgs/development/python-modules/psycopg/default.nix4
-rw-r--r--pkgs/development/python-modules/pubnub/default.nix4
-rw-r--r--pkgs/development/python-modules/pulumi-aws/default.nix4
-rw-r--r--pkgs/development/python-modules/pyatmo/default.nix4
-rw-r--r--pkgs/development/python-modules/pybind11/default.nix2
-rw-r--r--pkgs/development/python-modules/pydaikin/default.nix14
-rw-r--r--pkgs/development/python-modules/pydash/default.nix7
-rw-r--r--pkgs/development/python-modules/pydata-sphinx-theme/default.nix4
-rw-r--r--pkgs/development/python-modules/pydmd/default.nix4
-rw-r--r--pkgs/development/python-modules/pyftpdlib/default.nix34
-rw-r--r--pkgs/development/python-modules/pygobject/default.nix7
-rw-r--r--pkgs/development/python-modules/pyhiveapi/default.nix4
-rw-r--r--pkgs/development/python-modules/pyhumps/default.nix9
-rw-r--r--pkgs/development/python-modules/pyipp/default.nix29
-rw-r--r--pkgs/development/python-modules/pyjwt/default.nix30
-rw-r--r--pkgs/development/python-modules/pylsp-mypy/default.nix4
-rw-r--r--pkgs/development/python-modules/pymicrobot/default.nix4
-rw-r--r--pkgs/development/python-modules/pymsteams/default.nix4
-rw-r--r--pkgs/development/python-modules/pynobo/default.nix16
-rw-r--r--pkgs/development/python-modules/pyoctoprintapi/default.nix6
-rw-r--r--pkgs/development/python-modules/pyoverkiz/default.nix14
-rw-r--r--pkgs/development/python-modules/pypdf2/default.nix4
-rw-r--r--pkgs/development/python-modules/pyqt-builder/default.nix12
-rw-r--r--pkgs/development/python-modules/pyqt/6.x.nix138
-rw-r--r--pkgs/development/python-modules/pyqt/pyqt6-sip.nix28
-rw-r--r--pkgs/development/python-modules/pyqt6-webengine.nix89
-rw-r--r--pkgs/development/python-modules/pyquil/default.nix10
-rw-r--r--pkgs/development/python-modules/pyrdfa3/default.nix42
-rw-r--r--pkgs/development/python-modules/pyreadstat/default.nix61
-rw-r--r--pkgs/development/python-modules/pysdl2/PySDL2-dll.patch63
-rw-r--r--pkgs/development/python-modules/pysdl2/default.nix2
-rw-r--r--pkgs/development/python-modules/pysigma/default.nix4
-rw-r--r--pkgs/development/python-modules/pysnmplib/default.nix4
-rw-r--r--pkgs/development/python-modules/pyswitchbot/default.nix4
-rw-r--r--pkgs/development/python-modules/pytest-subprocess/default.nix6
-rw-r--r--pkgs/development/python-modules/pytibber/default.nix4
-rw-r--r--pkgs/development/python-modules/pytrafikverket/default.nix4
-rw-r--r--pkgs/development/python-modules/pyupgrade/default.nix4
-rw-r--r--pkgs/development/python-modules/pyvex/default.nix4
-rw-r--r--pkgs/development/python-modules/qcs-api-client/default.nix4
-rw-r--r--pkgs/development/python-modules/recipe-scrapers/default.nix50
-rw-r--r--pkgs/development/python-modules/rns/default.nix4
-rw-r--r--pkgs/development/python-modules/rst2pdf/default.nix72
-rw-r--r--pkgs/development/python-modules/safety/default.nix4
-rw-r--r--pkgs/development/python-modules/sensor-state-data/default.nix4
-rw-r--r--pkgs/development/python-modules/sentry-sdk/default.nix4
-rw-r--r--pkgs/development/python-modules/setuptools-rust/default.nix4
-rw-r--r--pkgs/development/python-modules/shap/default.nix117
-rw-r--r--pkgs/development/python-modules/sip/default.nix24
-rw-r--r--pkgs/development/python-modules/sip/fix-manylinux-version.patch19
-rw-r--r--pkgs/development/python-modules/slack-sdk/default.nix5
-rw-r--r--pkgs/development/python-modules/slither-analyzer/default.nix8
-rw-r--r--pkgs/development/python-modules/social-auth-core/default.nix4
-rw-r--r--pkgs/development/python-modules/sphinx-argparse/default.nix4
-rw-r--r--pkgs/development/python-modules/sphinx-automodapi/default.nix56
-rw-r--r--pkgs/development/python-modules/sphinx-book-theme/default.nix3
-rw-r--r--pkgs/development/python-modules/sphinx-jupyterbook-latex/default.nix4
-rw-r--r--pkgs/development/python-modules/sphinxcontrib-spelling/default.nix4
-rw-r--r--pkgs/development/python-modules/sqlmap/default.nix4
-rw-r--r--pkgs/development/python-modules/strictyaml/default.nix4
-rw-r--r--pkgs/development/python-modules/sumo/default.nix4
-rw-r--r--pkgs/development/python-modules/tcxreader/default.nix6
-rw-r--r--pkgs/development/python-modules/tensorboardx/default.nix20
-rw-r--r--pkgs/development/python-modules/teslajsonpy/default.nix4
-rw-r--r--pkgs/development/python-modules/time-machine/default.nix4
-rw-r--r--pkgs/development/python-modules/timetagger/default.nix4
-rw-r--r--pkgs/development/python-modules/tldextract/default.nix4
-rw-r--r--pkgs/development/python-modules/traitsui/default.nix4
-rw-r--r--pkgs/development/python-modules/transmission-rpc/default.nix43
-rw-r--r--pkgs/development/python-modules/trimesh/default.nix4
-rw-r--r--pkgs/development/python-modules/twilio/default.nix6
-rw-r--r--pkgs/development/python-modules/typed-settings/default.nix4
-rw-r--r--pkgs/development/python-modules/types-protobuf/default.nix4
-rw-r--r--pkgs/development/python-modules/types-python-dateutil/default.nix29
-rw-r--r--pkgs/development/python-modules/types-pytz/default.nix4
-rw-r--r--pkgs/development/python-modules/types-redis/default.nix4
-rw-r--r--pkgs/development/python-modules/types-requests/default.nix4
-rw-r--r--pkgs/development/python-modules/types-retry/default.nix29
-rw-r--r--pkgs/development/python-modules/types-tabulate/default.nix4
-rw-r--r--pkgs/development/python-modules/ultraheat-api/default.nix4
-rw-r--r--pkgs/development/python-modules/unrardll/default.nix9
-rw-r--r--pkgs/development/python-modules/uproot/default.nix41
-rw-r--r--pkgs/development/python-modules/velbus-aio/default.nix4
-rw-r--r--pkgs/development/python-modules/venstarcolortouch/default.nix4
-rw-r--r--pkgs/development/python-modules/versioningit/default.nix68
-rw-r--r--pkgs/development/python-modules/vt-py/default.nix5
-rw-r--r--pkgs/development/python-modules/wallbox/default.nix4
-rw-r--r--pkgs/development/python-modules/wandb/default.nix16
-rw-r--r--pkgs/development/python-modules/web3/default.nix32
-rw-r--r--pkgs/development/python-modules/weconnect-mqtt/default.nix4
-rw-r--r--pkgs/development/python-modules/weconnect/default.nix4
-rw-r--r--pkgs/development/python-modules/whirlpool-sixth-sense/default.nix4
-rw-r--r--pkgs/development/python-modules/wxPython/4.0.nix4
-rw-r--r--pkgs/development/python-modules/wxPython/4.1.nix39
-rw-r--r--pkgs/development/python-modules/yabadaba/default.nix6
-rw-r--r--pkgs/development/python-modules/yaspin/default.nix34
-rw-r--r--pkgs/development/python-modules/yolink-api/default.nix4
-rw-r--r--pkgs/development/python-modules/youtube-search/default.nix24
-rw-r--r--pkgs/development/python-modules/zha-quirks/default.nix4
-rw-r--r--pkgs/development/python-modules/zigpy-deconz/default.nix4
-rw-r--r--pkgs/development/python-modules/zigpy-xbee/default.nix6
-rw-r--r--pkgs/development/python-modules/zigpy-zigate/default.nix6
-rw-r--r--pkgs/development/python-modules/zigpy-znp/default.nix4
-rw-r--r--pkgs/development/python-modules/zigpy/default.nix13
-rw-r--r--pkgs/development/python-modules/zwave-js-server-python/default.nix6
-rw-r--r--pkgs/development/python2-modules/pygtk/default.nix3
-rw-r--r--pkgs/development/python2-modules/scandir/add-aarch64-darwin-dirent.patch28
-rw-r--r--pkgs/development/python2-modules/scandir/default.nix6
-rw-r--r--pkgs/development/r-modules/default.nix1
-rw-r--r--pkgs/development/ruby-modules/gem-config/default.nix43
-rw-r--r--pkgs/development/ruby-modules/gem/default.nix1
-rw-r--r--pkgs/development/scheme-modules/scheme-bytestructures/default.nix8
-rw-r--r--pkgs/development/tools/analysis/actionlint/default.nix4
-rw-r--r--pkgs/development/tools/analysis/cargo-tarpaulin/default.nix6
-rw-r--r--pkgs/development/tools/analysis/flow/default.nix4
-rw-r--r--pkgs/development/tools/b4/default.nix7
-rw-r--r--pkgs/development/tools/bacon/default.nix6
-rw-r--r--pkgs/development/tools/bashate/default.nix4
-rw-r--r--pkgs/development/tools/benthos/default.nix6
-rw-r--r--pkgs/development/tools/build-managers/bloop/default.nix6
-rw-r--r--pkgs/development/tools/build-managers/build2/default.nix2
-rw-r--r--pkgs/development/tools/build-managers/build2/remove-const-void-param.patch11
-rw-r--r--pkgs/development/tools/build-managers/cmake/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/gup/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/leiningen/default.nix6
-rw-r--r--pkgs/development/tools/build-managers/meson/setup-hook.sh2
-rw-r--r--pkgs/development/tools/build-managers/mill/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/ninja/default.nix51
-rw-r--r--pkgs/development/tools/build-managers/ninja/setup-hook.sh50
-rw-r--r--pkgs/development/tools/build-managers/sbt-extras/default.nix6
-rw-r--r--pkgs/development/tools/build-managers/sbt/default.nix4
-rw-r--r--pkgs/development/tools/buildah/default.nix4
-rw-r--r--pkgs/development/tools/clj-kondo/default.nix4
-rw-r--r--pkgs/development/tools/continuous-integration/cirrus-cli/default.nix6
-rw-r--r--pkgs/development/tools/continuous-integration/github-runner/default.nix22
-rw-r--r--pkgs/development/tools/continuous-integration/github-runner/deps.nix15
-rw-r--r--pkgs/development/tools/cpm/default.nix4
-rw-r--r--pkgs/development/tools/ctlptl/default.nix4
-rw-r--r--pkgs/development/tools/database/prisma-engines/default.nix2
-rw-r--r--pkgs/development/tools/database/replibyte/default.nix46
-rw-r--r--pkgs/development/tools/devpi-server/default.nix63
-rw-r--r--pkgs/development/tools/doctl/default.nix4
-rw-r--r--pkgs/development/tools/electron/default.nix11
-rw-r--r--pkgs/development/tools/ent/default.nix2
-rw-r--r--pkgs/development/tools/fblog/default.nix22
-rw-r--r--pkgs/development/tools/fq/default.nix6
-rw-r--r--pkgs/development/tools/fundoc/default.nix15
-rw-r--r--pkgs/development/tools/geckodriver/cargo-lock.patch1455
-rw-r--r--pkgs/development/tools/geckodriver/default.nix25
-rw-r--r--pkgs/development/tools/gojq/default.nix4
-rw-r--r--pkgs/development/tools/golangci-lint/default.nix6
-rw-r--r--pkgs/development/tools/goresym/default.nix4
-rw-r--r--pkgs/development/tools/hover/default.nix2
-rw-r--r--pkgs/development/tools/jaq/default.nix6
-rw-r--r--pkgs/development/tools/jql/default.nix6
-rw-r--r--pkgs/development/tools/jqp/default.nix6
-rw-r--r--pkgs/development/tools/leaps/default.nix21
-rw-r--r--pkgs/development/tools/leaps/deps.nix165
-rw-r--r--pkgs/development/tools/mdk/default.nix4
-rw-r--r--pkgs/development/tools/memray/default.nix3
-rw-r--r--pkgs/development/tools/metals/default.nix4
-rw-r--r--pkgs/development/tools/millet/default.nix6
-rw-r--r--pkgs/development/tools/misc/binutils/2.38/R_ARM_COPY.patch29
-rw-r--r--pkgs/development/tools/misc/binutils/2.38/default.nix8
-rw-r--r--pkgs/development/tools/misc/binutils/R_ARM_COPY.patch29
-rw-r--r--pkgs/development/tools/misc/binutils/default.nix8
-rw-r--r--pkgs/development/tools/misc/cli11/default.nix4
-rw-r--r--pkgs/development/tools/misc/clojure-lsp/default.nix6
-rw-r--r--pkgs/development/tools/misc/cvise/default.nix4
-rw-r--r--pkgs/development/tools/misc/distcc/default.nix4
-rw-r--r--pkgs/development/tools/misc/elfutils/default.nix4
-rw-r--r--pkgs/development/tools/misc/gf/default.nix6
-rw-r--r--pkgs/development/tools/misc/grpc-client-cli/default.nix6
-rw-r--r--pkgs/development/tools/misc/lttng-ust/generic.nix4
-rw-r--r--pkgs/development/tools/misc/nxpmicro-mfgtools/default.nix7
-rw-r--r--pkgs/development/tools/misc/slint-lsp/default.nix66
-rw-r--r--pkgs/development/tools/napi-rs-cli/default.nix33
-rw-r--r--pkgs/development/tools/nil/default.nix6
-rw-r--r--pkgs/development/tools/oh-my-posh/default.nix6
-rw-r--r--pkgs/development/tools/omnisharp-roslyn/default.nix4
-rw-r--r--pkgs/development/tools/omnisharp-roslyn/deps.nix17
-rw-r--r--pkgs/development/tools/opcr-policy/default.nix44
-rw-r--r--pkgs/development/tools/open-policy-agent/default.nix4
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/default.nix6
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/default.nix1
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-jsonnet.json11
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-smithy.json8
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/update.nix6
-rw-r--r--pkgs/development/tools/patatt/default.nix6
-rw-r--r--pkgs/development/tools/pip-audit/default.nix6
-rw-r--r--pkgs/development/tools/pipenv/default.nix4
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/default.nix94
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/editable.nix2
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/fetch_from_legacy.py15
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/hooks/default.nix1
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/hooks/pyproject-without-special-deps.py1
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/known-build-systems.json13
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/lib.nix15
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix38
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/overrides/build-systems.json17396
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/overrides/default.nix297
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/pep425.nix37
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/default.nix14
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/poetry.lock1279
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/pyproject.toml207
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/src.json4
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/plugins.nix2
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/shell-scripts.nix2
-rw-r--r--pkgs/development/tools/protoc-gen-connect-go/default.nix6
-rw-r--r--pkgs/development/tools/protoc-gen-entgrpc/default.nix2
-rw-r--r--pkgs/development/tools/railway/default.nix4
-rw-r--r--pkgs/development/tools/ruff/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-audit/default.nix25
-rw-r--r--pkgs/development/tools/rust/cargo-bisect-rustc/0001-dynamically-patchelf-binaries.patch20
-rw-r--r--pkgs/development/tools/rust/cargo-bisect-rustc/default.nix11
-rw-r--r--pkgs/development/tools/rust/cargo-edit/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-insta/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-lock/default.nix23
-rw-r--r--pkgs/development/tools/rust/cargo-public-api/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-tally/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-update/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-zigbuild/default.nix6
-rw-r--r--pkgs/development/tools/rust/duckscript/default.nix6
-rw-r--r--pkgs/development/tools/rust/probe-run/default.nix32
-rw-r--r--pkgs/development/tools/rust/rust-analyzer/default.nix6
-rw-r--r--pkgs/development/tools/rust/svd2rust/default.nix10
-rw-r--r--pkgs/development/tools/sd-local/default.nix4
-rw-r--r--pkgs/development/tools/selenium/chromedriver/default.nix2
-rw-r--r--pkgs/development/tools/sentry-cli/default.nix6
-rw-r--r--pkgs/development/tools/snazy/default.nix20
-rw-r--r--pkgs/development/tools/symfony-cli/default.nix4
-rw-r--r--pkgs/development/tools/unconvert/default.nix8
-rw-r--r--pkgs/development/tools/vultr-cli/default.nix4
-rw-r--r--pkgs/development/tools/wabt/default.nix4
-rw-r--r--pkgs/development/tools/wails/default.nix2
-rw-r--r--pkgs/development/tools/wasm-bindgen-cli/default.nix6
-rw-r--r--pkgs/development/tools/wasmedge/default.nix4
-rw-r--r--pkgs/development/tools/wp4nix/default.nix18
-rw-r--r--pkgs/development/tools/yamlpath/default.nix45
-rw-r--r--pkgs/development/tools/yq-go/default.nix4
-rw-r--r--pkgs/development/web/deno/default.nix6
-rw-r--r--pkgs/development/web/flyctl/default.nix6
-rw-r--r--pkgs/development/web/ihp-new/default.nix32
-rw-r--r--pkgs/development/web/postman/darwin.nix4
-rw-r--r--pkgs/development/web/postman/default.nix2
-rw-r--r--pkgs/development/web/postman/linux.nix2
-rw-r--r--pkgs/development/web/twitter-bootstrap/default.nix4
-rw-r--r--pkgs/games/2048-in-terminal/default.nix20
-rw-r--r--pkgs/games/adom/default.nix1
-rw-r--r--pkgs/games/asc/default.nix4
-rw-r--r--pkgs/games/augustus/default.nix4
-rw-r--r--pkgs/games/ddnet/default.nix2
-rw-r--r--pkgs/games/eduke32/default.nix2
-rw-r--r--pkgs/games/extremetuxracer/default.nix3
-rw-r--r--pkgs/games/factorio/versions.json48
-rw-r--r--pkgs/games/ferium/default.nix6
-rw-r--r--pkgs/games/freedink/default.nix4
-rw-r--r--pkgs/games/gzdoom/default.nix19
-rw-r--r--pkgs/games/iortcw/sp.nix2
-rw-r--r--pkgs/games/ivan/default.nix2
-rw-r--r--pkgs/games/openrct2/default.nix8
-rw-r--r--pkgs/games/osu-lazer/deps.nix5
-rw-r--r--pkgs/games/srb2/default.nix4
-rw-r--r--pkgs/games/srb2kart/default.nix4
-rw-r--r--pkgs/games/steam/fhsenv.nix3
-rw-r--r--pkgs/games/uhexen2/default.nix2
-rw-r--r--pkgs/games/xboard/default.nix2
-rw-r--r--pkgs/games/xivlauncher/deps.nix3
-rw-r--r--pkgs/games/xonotic/default.nix8
-rw-r--r--pkgs/misc/cliscord/default.nix18
-rw-r--r--pkgs/misc/cups/drivers/canon/default.nix4
-rw-r--r--pkgs/misc/screensavers/alock/default.nix4
-rw-r--r--pkgs/misc/screensavers/betterlockscreen/default.nix5
-rw-r--r--pkgs/misc/stabber/default.nix3
-rw-r--r--pkgs/misc/t-rec/default.nix6
-rw-r--r--pkgs/misc/uboot/default.nix1
-rw-r--r--pkgs/os-specific/bsd/netbsd/default.nix2
-rw-r--r--pkgs/os-specific/darwin/apple-sdk-11.0/apple_sdk.nix2
-rw-r--r--pkgs/os-specific/darwin/apple-sdk-11.0/default.nix4
-rw-r--r--pkgs/os-specific/darwin/apple-sdk-11.0/frameworks.nix6
-rw-r--r--pkgs/os-specific/darwin/iproute2mac/default.nix4
-rw-r--r--pkgs/os-specific/darwin/libtapi/default.nix3
-rw-r--r--pkgs/os-specific/darwin/rectangle/default.nix30
-rw-r--r--pkgs/os-specific/linux/adcli/default.nix36
-rw-r--r--pkgs/os-specific/linux/conntrack-tools/default.nix4
-rw-r--r--pkgs/os-specific/linux/cpuid/default.nix4
-rw-r--r--pkgs/os-specific/linux/ell/default.nix4
-rw-r--r--pkgs/os-specific/linux/firmware/firmware-updater/default.nix6
-rw-r--r--pkgs/os-specific/linux/iproute/mptcp.nix40
-rw-r--r--pkgs/os-specific/linux/iwd/default.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/common-config.nix1
-rw-r--r--pkgs/os-specific/linux/kernel/hardened/patches.json60
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.19.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.10.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.15.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.19.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.4.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-6.0.nix18
-rw-r--r--pkgs/os-specific/linux/kernel/linux-libre.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-mptcp-95.nix27
-rw-r--r--pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix15
-rw-r--r--pkgs/os-specific/linux/kernel/perf/default.nix7
-rw-r--r--pkgs/os-specific/linux/kernel/xanmod-kernels.nix24
-rw-r--r--pkgs/os-specific/linux/kernel/zen-kernels.nix10
-rw-r--r--pkgs/os-specific/linux/libbpf/0.x.nix54
-rw-r--r--pkgs/os-specific/linux/libbpf/default.nix4
-rw-r--r--pkgs/os-specific/linux/libcap/default.nix4
-rw-r--r--pkgs/os-specific/linux/libnvme/default.nix63
-rw-r--r--pkgs/os-specific/linux/libpsm2/default.nix3
-rw-r--r--pkgs/os-specific/linux/libzbc/default.nix40
-rw-r--r--pkgs/os-specific/linux/libzbd/default.nix40
-rw-r--r--pkgs/os-specific/linux/lightum/default.nix3
-rw-r--r--pkgs/os-specific/linux/net-tools/mptcp.nix21
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/generic.nix1
-rw-r--r--pkgs/os-specific/linux/pam_usb/default.nix2
-rw-r--r--pkgs/os-specific/linux/pmount/default.nix3
-rw-r--r--pkgs/os-specific/linux/prl-tools/default.nix4
-rw-r--r--pkgs/os-specific/linux/prl-tools/prl-tools-6.0.patch13
-rw-r--r--pkgs/os-specific/linux/qperf/default.nix43
-rw-r--r--pkgs/os-specific/linux/sssd/default.nix4
-rw-r--r--pkgs/os-specific/linux/trace-cmd/default.nix2
-rw-r--r--pkgs/os-specific/linux/xf86-video-nested/default.nix6
-rw-r--r--pkgs/os-specific/linux/zfs/default.nix18
-rw-r--r--pkgs/servers/adguardhome/bins.nix20
-rw-r--r--pkgs/servers/adguardhome/default.nix2
-rw-r--r--pkgs/servers/apache-directory-server/default.nix29
-rw-r--r--pkgs/servers/dendrite/default.nix6
-rw-r--r--pkgs/servers/dex/default.nix6
-rw-r--r--pkgs/servers/dict/dictd-db.nix10
-rw-r--r--pkgs/servers/dns/coredns/default.nix2
-rw-r--r--pkgs/servers/endlessh-go/default.nix3
-rw-r--r--pkgs/servers/etebase/default.nix4
-rw-r--r--pkgs/servers/firebird/default.nix2
-rw-r--r--pkgs/servers/geospatial/martin/default.nix13
-rw-r--r--pkgs/servers/geospatial/martin/update-socket2-for-rust-1.64.patch358
-rw-r--r--pkgs/servers/home-assistant/component-packages.nix196
-rw-r--r--pkgs/servers/home-assistant/default.nix77
-rw-r--r--pkgs/servers/home-assistant/frontend.nix4
-rw-r--r--pkgs/servers/home-assistant/tests.nix2
-rw-r--r--pkgs/servers/http/apache-modules/mod_perl/default.nix9
-rw-r--r--pkgs/servers/http/darkhttpd/default.nix4
-rw-r--r--pkgs/servers/http/yaws/default.nix24
-rw-r--r--pkgs/servers/imgproxy/default.nix6
-rw-r--r--pkgs/servers/jellyfin/nuget-deps.nix2
-rw-r--r--pkgs/servers/klipper/default.nix6
-rw-r--r--pkgs/servers/mail/mailman/default.nix4
-rw-r--r--pkgs/servers/mail/rspamd/default.nix4
-rw-r--r--pkgs/servers/mastodon/default.nix12
-rw-r--r--pkgs/servers/matrix-conduit/default.nix8
-rw-r--r--pkgs/servers/matrix-synapse/matrix-appservice-slack/default.nix47
-rwxr-xr-xpkgs/servers/matrix-synapse/matrix-appservice-slack/generate-dependencies.sh17
-rw-r--r--pkgs/servers/matrix-synapse/matrix-appservice-slack/node-packages.nix5484
-rw-r--r--pkgs/servers/matrix-synapse/matrix-appservice-slack/package.json77
-rw-r--r--pkgs/servers/matrix-synapse/matrix-appservice-slack/pin.json5
-rwxr-xr-xpkgs/servers/matrix-synapse/matrix-appservice-slack/update.sh36
-rw-r--r--pkgs/servers/minio/default.nix6
-rw-r--r--pkgs/servers/misc/gobgpd/default.nix4
-rw-r--r--pkgs/servers/monitoring/alerta/default.nix1
-rw-r--r--pkgs/servers/monitoring/grafana-agent/default.nix6
-rw-r--r--pkgs/servers/monitoring/grafana/default.nix6
-rw-r--r--pkgs/servers/monitoring/icinga2/default.nix2
-rw-r--r--pkgs/servers/monitoring/loki/promtail.nix7
-rw-r--r--pkgs/servers/monitoring/nagios/plugins/check_ssl_cert.nix4
-rw-r--r--pkgs/servers/monitoring/prometheus/nats-exporter.nix5
-rw-r--r--pkgs/servers/monitoring/sensu-go/default.nix6
-rw-r--r--pkgs/servers/monitoring/telegraf/default.nix6
-rw-r--r--pkgs/servers/monitoring/thanos/default.nix6
-rw-r--r--pkgs/servers/mycorrhiza/default.nix6
-rw-r--r--pkgs/servers/nextcloud/default.nix8
-rw-r--r--pkgs/servers/nosql/influxdb/default.nix3
-rw-r--r--pkgs/servers/nosql/janusgraph/default.nix44
-rw-r--r--pkgs/servers/nosql/mongodb/6.0.nix12
-rw-r--r--pkgs/servers/nosql/mongodb/mongodb.nix89
-rw-r--r--pkgs/servers/nosql/victoriametrics/default.nix4
-rw-r--r--pkgs/servers/peertube/default.nix62
-rw-r--r--pkgs/servers/pocketbase/default.nix4
-rw-r--r--pkgs/servers/prowlarr/default.nix8
-rw-r--r--pkgs/servers/pulseaudio/default.nix22
-rw-r--r--pkgs/servers/redpanda/default.nix4
-rw-r--r--pkgs/servers/rippled/default.nix4
-rw-r--r--pkgs/servers/roon-server/default.nix6
-rw-r--r--pkgs/servers/rustypaste/default.nix6
-rw-r--r--pkgs/servers/search/meilisearch/default.nix6
-rw-r--r--pkgs/servers/serf/default.nix6
-rw-r--r--pkgs/servers/sickbeard/sickgear.nix4
-rw-r--r--pkgs/servers/snappymail/default.nix4
-rw-r--r--pkgs/servers/sql/mariadb/default.nix2
-rw-r--r--pkgs/servers/sql/postgresql/ext/pg_auto_failover.nix4
-rw-r--r--pkgs/servers/sql/postgresql/ext/pg_ivm.nix4
-rw-r--r--pkgs/servers/sql/postgresql/ext/smlar.nix6
-rw-r--r--pkgs/servers/sql/postgresql/ext/timescaledb.nix4
-rw-r--r--pkgs/servers/sql/proxysql/default.nix4
-rw-r--r--pkgs/servers/squid/default.nix17
-rw-r--r--pkgs/servers/syncstorage-rs/default.nix6
-rw-r--r--pkgs/servers/teleport/default.nix73
-rw-r--r--pkgs/servers/teleport/rdpclient.patch23
-rw-r--r--pkgs/servers/tmate-ssh-server/default.nix33
-rw-r--r--pkgs/servers/traefik/default.nix6
-rw-r--r--pkgs/servers/vouch-proxy/default.nix3
-rw-r--r--pkgs/servers/web-apps/baget/default.nix9
-rw-r--r--pkgs/servers/web-apps/baget/deps.nix136
-rw-r--r--pkgs/servers/web-apps/discourse/default.nix16
-rw-r--r--pkgs/servers/web-apps/dolibarr/default.nix4
-rw-r--r--pkgs/servers/web-apps/galene/default.nix4
-rwxr-xr-xpkgs/servers/web-apps/hedgedoc/update.sh2
-rw-r--r--pkgs/servers/web-apps/lemmy/ui.nix4
-rw-r--r--pkgs/servers/web-apps/mediawiki/default.nix4
-rw-r--r--pkgs/servers/web-apps/moodle/default.nix4
-rw-r--r--pkgs/servers/web-apps/outline/default.nix4
-rw-r--r--pkgs/servers/web-apps/outline/yarn.lock2159
-rw-r--r--pkgs/servers/web-apps/outline/yarn.nix1536
-rw-r--r--pkgs/servers/web-apps/snipe-it/default.nix4
-rw-r--r--pkgs/servers/web-apps/sogo/default.nix4
-rw-r--r--pkgs/servers/web-apps/wordpress/packages/README.md46
-rw-r--r--pkgs/servers/web-apps/wordpress/packages/default.nix85
-rwxr-xr-xpkgs/servers/web-apps/wordpress/packages/generate.sh26
-rw-r--r--pkgs/servers/web-apps/wordpress/packages/languages.json14
-rw-r--r--pkgs/servers/web-apps/wordpress/packages/plugins.json128
-rw-r--r--pkgs/servers/web-apps/wordpress/packages/themes.json14
-rw-r--r--pkgs/servers/web-apps/wordpress/packages/wordpress-languages.json4
-rw-r--r--pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json23
-rw-r--r--pkgs/servers/web-apps/wordpress/packages/wordpress-themes.json4
-rw-r--r--pkgs/servers/x11/quartz-wm/default.nix2
-rw-r--r--pkgs/servers/xinetd/default.nix31
-rw-r--r--pkgs/servers/zoneminder/default.nix30
-rw-r--r--pkgs/shells/carapace/default.nix6
-rw-r--r--pkgs/shells/murex/default.nix4
-rw-r--r--pkgs/shells/zsh/antibody/default.nix10
-rw-r--r--pkgs/shells/zsh/oh-my-zsh/default.nix6
-rw-r--r--pkgs/stdenv/darwin/default.nix5
-rw-r--r--pkgs/stdenv/generic/setup.sh6
-rw-r--r--pkgs/stdenv/linux/default.nix6
-rw-r--r--pkgs/test/cuda/cuda-samples/extension.nix3
-rw-r--r--pkgs/tools/X11/opentabletdriver/deps.nix40
-rw-r--r--pkgs/tools/X11/smart-wallpaper/default.nix3
-rw-r--r--pkgs/tools/X11/vdpauinfo/default.nix13
-rw-r--r--pkgs/tools/X11/xnee/default.nix3
-rw-r--r--pkgs/tools/admin/aws-sso-cli/default.nix7
-rw-r--r--pkgs/tools/admin/eksctl/default.nix6
-rw-r--r--pkgs/tools/admin/exoscale-cli/default.nix4
-rw-r--r--pkgs/tools/admin/google-cloud-sdk/components.json773
-rw-r--r--pkgs/tools/admin/google-cloud-sdk/components.nix6
-rw-r--r--pkgs/tools/admin/google-cloud-sdk/data.nix22
-rwxr-xr-xpkgs/tools/admin/google-cloud-sdk/update.sh2
-rw-r--r--pkgs/tools/admin/lego/default.nix6
-rw-r--r--pkgs/tools/admin/procs/default.nix11
-rw-r--r--pkgs/tools/admin/pulumi/data.nix210
-rwxr-xr-xpkgs/tools/admin/pulumi/update.sh2
-rw-r--r--pkgs/tools/admin/swapspace/default.nix4
-rw-r--r--pkgs/tools/admin/synapse-admin/default.nix3
-rw-r--r--pkgs/tools/admin/tigervnc/default.nix2
-rw-r--r--pkgs/tools/admin/trivy/default.nix2
-rw-r--r--pkgs/tools/admin/wander/default.nix32
-rw-r--r--pkgs/tools/archivers/xarchiver/default.nix4
-rw-r--r--pkgs/tools/audio/liquidsoap/full.nix17
-rw-r--r--pkgs/tools/audio/midimonster/default.nix3
-rw-r--r--pkgs/tools/audio/mpdcron/default.nix3
-rw-r--r--pkgs/tools/backup/dump/default.nix3
-rw-r--r--pkgs/tools/backup/kopia/default.nix6
-rw-r--r--pkgs/tools/backup/zfsbackup/default.nix8
-rw-r--r--pkgs/tools/compression/bzip3/default.nix4
-rw-r--r--pkgs/tools/compression/gzip/default.nix9
-rw-r--r--pkgs/tools/compression/lz4/default.nix10
-rw-r--r--pkgs/tools/filesystems/bcachefs-tools/default.nix6
-rw-r--r--pkgs/tools/filesystems/httpfs/default.nix3
-rw-r--r--pkgs/tools/graphics/cfdg/default.nix9
-rw-r--r--pkgs/tools/graphics/cfdg/src-for-default.nix9
-rw-r--r--pkgs/tools/graphics/grim/default.nix15
-rw-r--r--pkgs/tools/graphics/pngquant/default.nix2
-rw-r--r--pkgs/tools/graphics/s2png/default.nix3
-rw-r--r--pkgs/tools/inputmethods/ibus-engines/ibus-mozc/default.nix4
-rw-r--r--pkgs/tools/inputmethods/input-remapper/default.nix37
-rw-r--r--pkgs/tools/inputmethods/m17n-lib/default.nix18
-rw-r--r--pkgs/tools/misc/adrgen/default.nix14
-rw-r--r--pkgs/tools/misc/bash_unit/default.nix4
-rw-r--r--pkgs/tools/misc/broot/default.nix6
-rw-r--r--pkgs/tools/misc/ckb-next/default.nix2
-rw-r--r--pkgs/tools/misc/coreboot-configurator/default.nix43
-rw-r--r--pkgs/tools/misc/cpuminer/default.nix3
-rw-r--r--pkgs/tools/misc/csv2parquet/default.nix22
-rw-r--r--pkgs/tools/misc/czkawka/default.nix4
-rw-r--r--pkgs/tools/misc/depotdownloader/deps.nix3
-rw-r--r--pkgs/tools/misc/diffoscope/default.nix13
-rw-r--r--pkgs/tools/misc/discocss/default.nix18
-rw-r--r--pkgs/tools/misc/esphome/default.nix4
-rw-r--r--pkgs/tools/misc/expect/default.nix6
-rw-r--r--pkgs/tools/misc/expect/fix-cross-compilation.patch11
-rw-r--r--pkgs/tools/misc/fend/default.nix12
-rw-r--r--pkgs/tools/misc/fx_cast/default.nix4
-rw-r--r--pkgs/tools/misc/gh-dash/default.nix4
-rw-r--r--pkgs/tools/misc/goreleaser/default.nix6
-rw-r--r--pkgs/tools/misc/hdl-dump/default.nix6
-rw-r--r--pkgs/tools/misc/iam-policy-json-to-terraform/default.nix6
-rw-r--r--pkgs/tools/misc/infracost/default.nix3
-rw-r--r--pkgs/tools/misc/inklingreader/default.nix39
-rw-r--r--pkgs/tools/misc/lazycli/default.nix27
-rw-r--r--pkgs/tools/misc/lemmeknow/default.nix20
-rw-r--r--pkgs/tools/misc/lorri/default.nix10
-rw-r--r--pkgs/tools/misc/nautilus-open-any-terminal/default.nix4
-rw-r--r--pkgs/tools/misc/nautilus-open-any-terminal/hardcode-gsettings.patch29
-rw-r--r--pkgs/tools/misc/notify-desktop/default.nix3
-rw-r--r--pkgs/tools/misc/notify/default.nix6
-rw-r--r--pkgs/tools/misc/ntfy-sh/default.nix26
-rwxr-xr-xpkgs/tools/misc/ntfy-sh/generate-dependencies.sh11
-rw-r--r--pkgs/tools/misc/ntfy-sh/node-composition.nix (renamed from pkgs/servers/matrix-synapse/matrix-appservice-slack/node-composition.nix)2
-rw-r--r--pkgs/tools/misc/ntfy-sh/node-packages.nix12660
-rw-r--r--pkgs/tools/misc/ntfy-sh/package.json43
-rwxr-xr-xpkgs/tools/misc/ntfy-sh/update.sh24
-rw-r--r--pkgs/tools/misc/ntfy/default.nix37
-rw-r--r--pkgs/tools/misc/octosql/default.nix6
-rw-r--r--pkgs/tools/misc/opentelemetry-collector/contrib.nix2
-rw-r--r--pkgs/tools/misc/osm2pgsql/default.nix17
-rw-r--r--pkgs/tools/misc/owofetch/default.nix34
-rw-r--r--pkgs/tools/misc/panoply/default.nix4
-rw-r--r--pkgs/tools/misc/phrase-cli/default.nix6
-rw-r--r--pkgs/tools/misc/popsicle/default.nix2
-rw-r--r--pkgs/tools/misc/pspg/default.nix4
-rw-r--r--pkgs/tools/misc/qflipper/default.nix4
-rw-r--r--pkgs/tools/misc/remind/default.nix4
-rw-r--r--pkgs/tools/misc/rlwrap/default.nix2
-rw-r--r--pkgs/tools/misc/rust-motd/default.nix17
-rw-r--r--pkgs/tools/misc/sfeed/default.nix4
-rw-r--r--pkgs/tools/misc/star-history/default.nix33
-rw-r--r--pkgs/tools/misc/tmux/default.nix2
-rw-r--r--pkgs/tools/misc/twspace-dl/default.nix29
-rw-r--r--pkgs/tools/misc/usbimager/default.nix4
-rw-r--r--pkgs/tools/misc/vector/default.nix26
-rw-r--r--pkgs/tools/misc/vtm/default.nix4
-rw-r--r--pkgs/tools/misc/wayshot/default.nix6
-rw-r--r--pkgs/tools/misc/xdaliclock/default.nix4
-rw-r--r--pkgs/tools/misc/xfstests/default.nix8
-rw-r--r--pkgs/tools/misc/yt-dlp/default.nix4
-rw-r--r--pkgs/tools/misc/yutto/default.nix4
-rw-r--r--pkgs/tools/networking/bandwhich/default.nix16
-rw-r--r--pkgs/tools/networking/bandwhich/update-socket2-for-rust-1.64.diff160
-rw-r--r--pkgs/tools/networking/bwm-ng/default.nix2
-rw-r--r--pkgs/tools/networking/dhcp/default.nix4
-rw-r--r--pkgs/tools/networking/dnstwist/default.nix6
-rw-r--r--pkgs/tools/networking/doggo/default.nix44
-rw-r--r--pkgs/tools/networking/gobgp/default.nix4
-rw-r--r--pkgs/tools/networking/goimapnotify/default.nix1
-rw-r--r--pkgs/tools/networking/haproxy/default.nix4
-rw-r--r--pkgs/tools/networking/hysteria/default.nix17
-rw-r--r--pkgs/tools/networking/ipinfo/default.nix4
-rw-r--r--pkgs/tools/networking/iwgtk/default.nix4
-rw-r--r--pkgs/tools/networking/libreswan/default.nix12
-rw-r--r--pkgs/tools/networking/minio-client/default.nix6
-rw-r--r--pkgs/tools/networking/mosh/default.nix2
-rw-r--r--pkgs/tools/networking/mozwire/default.nix13
-rw-r--r--pkgs/tools/networking/mqttui/default.nix6
-rw-r--r--pkgs/tools/networking/nss-mdns/default.nix2
-rw-r--r--pkgs/tools/networking/ofono/default.nix4
-rw-r--r--pkgs/tools/networking/sipsak/default.nix2
-rw-r--r--pkgs/tools/networking/stevenblack-blocklist/default.nix4
-rw-r--r--pkgs/tools/networking/strongswan/default.nix4
-rw-r--r--pkgs/tools/networking/tdns-cli/default.nix8
-rw-r--r--pkgs/tools/networking/unbound/default.nix8
-rw-r--r--pkgs/tools/networking/uwimap/default.nix14
-rw-r--r--pkgs/tools/networking/whatip/default.nix63
-rw-r--r--pkgs/tools/networking/wolfebin/default.nix10
-rw-r--r--pkgs/tools/networking/x11-ssh-askpass/default.nix4
-rw-r--r--pkgs/tools/security/arti/default.nix6
-rw-r--r--pkgs/tools/security/cfssl/default.nix4
-rw-r--r--pkgs/tools/security/chrome-token-signing/default.nix3
-rw-r--r--pkgs/tools/security/clairvoyance/default.nix51
-rw-r--r--pkgs/tools/security/cosign/default.nix11
-rw-r--r--pkgs/tools/security/dirstalk/default.nix36
-rw-r--r--pkgs/tools/security/doppler/default.nix4
-rw-r--r--pkgs/tools/security/ecryptfs/default.nix4
-rw-r--r--pkgs/tools/security/erosmb/default.nix6
-rw-r--r--pkgs/tools/security/exploitdb/default.nix4
-rw-r--r--pkgs/tools/security/fpm2/default.nix4
-rw-r--r--pkgs/tools/security/freeze/default.nix35
-rw-r--r--pkgs/tools/security/fulcio/default.nix6
-rw-r--r--pkgs/tools/security/gnupg-pkcs11-scd/default.nix3
-rw-r--r--pkgs/tools/security/gnupg/23.nix7
-rw-r--r--pkgs/tools/security/maigret/default.nix21
-rw-r--r--pkgs/tools/security/metasploit/shell.nix2
-rw-r--r--pkgs/tools/security/nmap/default.nix4
-rw-r--r--pkgs/tools/security/nuclei/default.nix6
-rw-r--r--pkgs/tools/security/onioncircuits/default.nix2
-rw-r--r--pkgs/tools/security/quill/default.nix6
-rw-r--r--pkgs/tools/security/sget/default.nix33
-rw-r--r--pkgs/tools/security/sigma-cli/default.nix4
-rw-r--r--pkgs/tools/security/tlsx/default.nix6
-rw-r--r--pkgs/tools/security/tracee/default.nix2
-rw-r--r--pkgs/tools/system/consul-template/default.nix6
-rw-r--r--pkgs/tools/system/fakeroot/default.nix19
-rw-r--r--pkgs/tools/system/gdmap/default.nix4
-rw-r--r--pkgs/tools/system/gotop/default.nix20
-rw-r--r--pkgs/tools/system/kmon/default.nix14
-rw-r--r--pkgs/tools/system/nats-top/default.nix6
-rw-r--r--pkgs/tools/system/nvtop/default.nix12
-rw-r--r--pkgs/tools/system/stress-ng/default.nix4
-rw-r--r--pkgs/tools/system/uefitool/variants.nix4
-rw-r--r--pkgs/tools/text/csview/default.nix6
-rw-r--r--pkgs/tools/text/languagetool/default.nix4
-rw-r--r--pkgs/tools/text/mdbook-admonish/default.nix21
-rw-r--r--pkgs/tools/text/mdbook-graphviz/default.nix11
-rw-r--r--pkgs/tools/text/mdbook-graphviz/update-mdbook-for-rust-1.64.patch369
-rw-r--r--pkgs/tools/text/mdbook-katex/default.nix9
-rw-r--r--pkgs/tools/text/mdbook-katex/update-mdbook-for-rust-1.64.patch1417
-rw-r--r--pkgs/tools/text/mdbook-linkcheck/default.nix6
-rw-r--r--pkgs/tools/text/mdbook-man/default.nix8
-rw-r--r--pkgs/tools/text/mdbook-mermaid/default.nix15
-rw-r--r--pkgs/tools/text/mdbook-open-on-gh/default.nix15
-rw-r--r--pkgs/tools/text/mdbook-pdf/default.nix6
-rw-r--r--pkgs/tools/text/mdbook-plantuml/default.nix28
-rw-r--r--pkgs/tools/text/schema2ldif/default.nix15
-rw-r--r--pkgs/tools/text/vale/default.nix7
-rw-r--r--pkgs/tools/typesetting/asciidoc/default.nix4
-rw-r--r--pkgs/tools/typesetting/satysfi/default.nix4
-rw-r--r--pkgs/tools/typesetting/tectonic/default.nix12
-rw-r--r--pkgs/tools/typesetting/ted/default.nix4
-rw-r--r--pkgs/tools/typesetting/tex/texlive/bin.nix17
-rw-r--r--pkgs/tools/virtualization/guestfs-tools/default.nix99
-rw-r--r--pkgs/tools/virtualization/shipyard/default.nix4
-rw-r--r--pkgs/tools/wayland/shotman/default.nix39
-rw-r--r--pkgs/tools/wayland/wl-mirror/default.nix4
-rw-r--r--pkgs/top-level/aliases.nix18
-rw-r--r--pkgs/top-level/all-packages.nix535
-rw-r--r--pkgs/top-level/config.nix36
-rw-r--r--pkgs/top-level/emscripten-packages.nix6
-rw-r--r--pkgs/top-level/java-packages.nix6
-rw-r--r--pkgs/top-level/kodi-packages.nix2
-rw-r--r--pkgs/top-level/linux-kernels.nix19
-rw-r--r--pkgs/top-level/ocaml-packages.nix9
-rw-r--r--pkgs/top-level/perl-packages.nix33
-rw-r--r--pkgs/top-level/php-packages.nix7
-rw-r--r--pkgs/top-level/python-packages.nix121
-rw-r--r--pkgs/top-level/release-haskell.nix19
-rw-r--r--pkgs/top-level/release.nix25
-rw-r--r--pkgs/top-level/ruby-packages.nix4
1612 files changed, 64064 insertions, 23409 deletions
diff --git a/.github/ISSUE_TEMPLATE/missing_documentation.md b/.github/ISSUE_TEMPLATE/missing_documentation.md
index fbeb69eeee857..c00dc91bae8fb 100644
--- a/.github/ISSUE_TEMPLATE/missing_documentation.md
+++ b/.github/ISSUE_TEMPLATE/missing_documentation.md
@@ -15,7 +15,7 @@ assignees: ''
 
 <!-- make sure this issue is not redundant or obsolete -->
 
-- [ ] checked [latest Nixpkgs manual] \([source][nixpkgs-source]) and [latest NixOS manual]] \([source][nixos-source])
+- [ ] checked [latest Nixpkgs manual] \([source][nixpkgs-source]) and [latest NixOS manual] \([source][nixos-source])
 - [ ] checked [open documentation issues] for possible duplicates
 - [ ] checked [open documentation pull requests] for possible solutions
 
diff --git a/.github/workflows/update-terraform-providers.yml b/.github/workflows/update-terraform-providers.yml
index 593ddf14f3eca..a711ab5db8fff 100644
--- a/.github/workflows/update-terraform-providers.yml
+++ b/.github/workflows/update-terraform-providers.yml
@@ -1,8 +1,8 @@
 name: "Update terraform-providers"
 
 on:
-  #schedule:
-  #  - cron: "14 3 * * 0"
+  schedule:
+    - cron: "0 3 * * *"
   workflow_dispatch:
 
 permissions:
@@ -28,10 +28,13 @@ jobs:
         run: |
           git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
           git config user.name "github-actions[bot]"
-          pushd pkgs/applications/networking/cluster/terraform-providers
-          ./update-all-providers --no-build
-          git commit -m "${{ steps.setup.outputs.title }}" providers.json
-          popd
+          echo | nix-shell \
+            maintainers/scripts/update.nix \
+            --argstr commit true \
+            --argstr keep-going true \
+            --argstr max-workers 2 \
+            --argstr path terraform-providers
+          git clean -f
       - name: create PR
         uses: peter-evans/create-pull-request@v4
         with:
@@ -44,13 +47,5 @@ jobs:
             ```
           branch: terraform-providers-update
           delete-branch: false
-          labels: "2.status: work-in-progress"
           title: ${{ steps.setup.outputs.title }}
           token: ${{ secrets.GITHUB_TOKEN }}
-      - name: comment on failure
-        uses: peter-evans/create-or-update-comment@v2
-        if: ${{ failure() }}
-        with:
-          issue-number: 153416
-          body: |
-            Automatic update of terraform providers [failed](https://github.com/NixOS/nixpkgs/actions/runs/${{ github.run_id }}).
diff --git a/doc/builders/images.xml b/doc/builders/images.xml
index cd10d69a96dde..f86ebd86bee40 100644
--- a/doc/builders/images.xml
+++ b/doc/builders/images.xml
@@ -9,4 +9,5 @@
  <xi:include href="images/dockertools.section.xml" />
  <xi:include href="images/ocitools.section.xml" />
  <xi:include href="images/snaptools.section.xml" />
+ <xi:include href="images/portableservice.section.xml" />
 </chapter>
diff --git a/doc/builders/images/portableservice.section.md b/doc/builders/images/portableservice.section.md
new file mode 100644
index 0000000000000..1d23cafeefcf9
--- /dev/null
+++ b/doc/builders/images/portableservice.section.md
@@ -0,0 +1,81 @@
+# pkgs.portableService {#sec-pkgs-portableService}
+
+`pkgs.portableService` is a function to create _portable service images_,
+as read-only, immutable, `squashfs` archives.
+
+systemd supports a concept of [Portable Services](https://systemd.io/PORTABLE_SERVICES/).
+Portable Services are a delivery method for system services that uses two specific features of container management:
+
+* Applications are bundled. I.e. multiple services, their binaries and
+  all their dependencies are packaged in an image, and are run directly from it.
+* Stricter default security policies, i.e. sandboxing of applications.
+
+This allows using Nix to build images which can be run on many recent Linux distributions.
+
+The primary tool for interacting with Portable Services is `portablectl`,
+and they are managed by the `systemd-portabled` system service.
+
+:::{.note}
+Portable services are supported starting with systemd 239 (released on 2018-06-22).
+:::
+
+A very simple example of using `portableService` is described below:
+
+[]{#ex-pkgs-portableService}
+
+```nix
+pkgs.portableService {
+  pname = "demo";
+  version = "1.0";
+  units = [ demo-service demo-socket ];
+}
+```
+
+The above example will build an squashfs archive image in `result/$pname_$version.raw`. The image will contain the
+file system structure as required by the portable service specification, and a subset of the Nix store with all the
+dependencies of the two derivations in the `units` list.
+`units` must be a list of derivations, and their names must be prefixed with the service name (`"demo"` in this case).
+Otherwise `systemd-portabled` will ignore them.
+
+:::{.Note}
+The `.raw` file extension of the image is required by the portable services specification.
+:::
+
+Some other options available are:
+- `description`, `homepage`
+
+  Are added to the `/etc/os-release` in the image and are shown by the portable services tooling.
+  Default to empty values, not added to os-release.
+- `symlinks`
+
+  A list of attribute sets {object, symlink}. Symlinks will be created  in the root filesystem of the image to
+  objects in the Nix store. Defaults to an empty list.
+- `contents`
+
+  A list of additional derivations to be included in the image Nix store, as-is. Defaults to an empty list.
+- `squashfsTools`
+
+  Defaults to `pkgs.squashfsTools`, allows you to override the package that provides `mksquashfs`.
+- `squash-compression`, `squash-block-size`
+
+  Options to `mksquashfs`. Default to `"xz -Xdict-size 100%"` and `"1M"` respectively.
+
+A typical usage of `symlinks` would be:
+```nix
+  symlinks = [
+    { object = "${pkgs.cacert}/etc/ssl"; symlink = "/etc/ssl"; }
+    { object = "${pkgs.bash}/bin/bash"; symlink = "/bin/sh"; }
+    { object = "${pkgs.php}/bin/php"; symlink = "/usr/bin/php"; }
+  ];
+```
+to create these symlinks for legacy applications that assume them existing globally.
+
+Once the image is created, and deployed on a host in `/var/lib/portables/`, you can attach the image and run the service. As root run:
+```console
+portablectl attach demo_1.0.raw
+systemctl enable --now demo.socket
+systemctl enable --now demo.service
+```
+:::{.Note}
+See the [man page](https://www.freedesktop.org/software/systemd/man/portablectl.html) of `portablectl` for more info on its usage.
+:::
diff --git a/doc/languages-frameworks/coq.section.md b/doc/languages-frameworks/coq.section.md
index 38bf7db18506b..6a5c72cb0a943 100644
--- a/doc/languages-frameworks/coq.section.md
+++ b/doc/languages-frameworks/coq.section.md
@@ -31,7 +31,7 @@ The recommended way of defining a derivation for a Coq library, is to use the `c
 * `releaseRev` (optional, defaults to `(v: v)`), provides a default mapping from release names to revision hashes/branch names/tags,
 * `displayVersion` (optional), provides a way to alter the computation of `name` from `pname`, by explaining how to display version numbers,
 * `namePrefix` (optional, defaults to `[ "coq" ]`), provides a way to alter the computation of `name` from `pname`, by explaining which dependencies must occur in `name`,
-* `nativeBuildInputs` (optional), is a list of executables that are required to build the current derivation, in addition to the default ones (namely `which`, `dune` and `ocaml` depending on whether `useDune2`, `useDune2ifVersion` and `mlPlugin` are set).
+* `nativeBuildInputs` (optional), is a list of executables that are required to build the current derivation, in addition to the default ones (namely `which`, `dune` and `ocaml` depending on whether `useDune`, `useDuneifVersion` and `mlPlugin` are set).
 * `extraNativeBuildInputs` (optional, deprecated), an additional list of derivation to add to `nativeBuildInputs`,
 * `overrideNativeBuildInputs` (optional) replaces the default list of derivation to which `nativeBuildInputs` and `extraNativeBuildInputs` adds extra elements,
 * `buildInputs` (optional), is a list of libraries and dependencies that are required to build and run the current derivation, in addition to the default one `[ coq ]`,
@@ -39,8 +39,8 @@ The recommended way of defining a derivation for a Coq library, is to use the `c
 * `overrideBuildInputs` (optional) replaces the default list of derivation to which `buildInputs` and `extraBuildInputs` adds extras elements,
 * `propagatedBuildInputs` (optional) is passed as is to `mkDerivation`, we recommend to use this for Coq libraries and Coq plugin dependencies, as this makes sure the paths of the compiled libraries and plugins will always be added to the build environements of subsequent derivation, which is necessary for Coq packages to work correctly,
 * `mlPlugin` (optional, defaults to `false`). Some extensions (plugins) might require OCaml and sometimes other OCaml packages. Standard dependencies can be added by setting the current option to `true`. For a finer grain control, the `coq.ocamlPackages` attribute can be used in `nativeBuildInputs`, `buildInputs`, and `propagatedBuildInputs` to depend on the same package set Coq was built against.
-* `useDune2ifVersion` (optional, default to `(x: false)` uses Dune2 to build the package if the provided predicate evaluates to true on the version, e.g. `useDune2ifVersion = versions.isGe "1.1"`  will use dune if the version of the package is greater or equal to `"1.1"`,
-* `useDune2` (optional, defaults to `false`) uses Dune2 to build the package if set to true, the presence of this attribute overrides the behavior of the previous one.
+* `useDuneifVersion` (optional, default to `(x: false)` uses Dune to build the package if the provided predicate evaluates to true on the version, e.g. `useDuneifVersion = versions.isGe "1.1"`  will use dune if the version of the package is greater or equal to `"1.1"`,
+* `useDune` (optional, defaults to `false`) uses Dune to build the package if set to true, the presence of this attribute overrides the behavior of the previous one.
 * `opam-name` (optional, defaults to concatenating with a dash separator the components of `namePrefix` and `pname`), name of the Dune package to build.
 * `enableParallelBuilding` (optional, defaults to `true`), since it is activated by default, we provide a way to disable it.
 * `extraInstallFlags` (optional), allows to extend `installFlags` which initializes the variable `COQMF_COQLIB` so as to install in the proper subdirectory. Indeed Coq libraries should be installed in `$(out)/lib/coq/${coq.coq-version}/user-contrib/`. Such directories are automatically added to the `$COQPATH` environment variable by the hook defined in the Coq derivation.
diff --git a/lib/attrsets.nix b/lib/attrsets.nix
index 5575e9577029a..de88763854d69 100644
--- a/lib/attrsets.nix
+++ b/lib/attrsets.nix
@@ -622,6 +622,20 @@ rec {
   dontRecurseIntoAttrs =
     attrs: attrs // { recurseForDerivations = false; };
 
+  /* `unionOfDisjoint x y` is equal to `x // y // z` where the
+     attrnames in `z` are the intersection of the attrnames in `x` and
+     `y`, and all values `assert` with an error message.  This
+      operator is commutative, unlike (//). */
+  unionOfDisjoint = x: y:
+    let
+      intersection = builtins.intersectAttrs x y;
+      collisions = lib.concatStringsSep " " (builtins.attrNames intersection);
+      mask = builtins.mapAttrs (name: value: builtins.throw
+        "unionOfDisjoint: collision on ${name}; complete list: ${collisions}")
+        intersection;
+    in
+      (x // y) // mask;
+
   /*** deprecated stuff ***/
 
   zipWithNames = zipAttrsWithNames;
diff --git a/lib/licenses.nix b/lib/licenses.nix
index 1408eda523d4c..2822f2df1a210 100644
--- a/lib/licenses.nix
+++ b/lib/licenses.nix
@@ -174,6 +174,11 @@ in mkLicense lset) ({
     free = false;
   };
 
+  cal10 = {
+    fullName = "Cryptographic Autonomy License version 1.0 (CAL-1.0)";
+    url = "https://opensource.org/licenses/CAL-1.0";
+  };
+
   capec = {
     fullName = "Common Attack Pattern Enumeration and Classification";
     url = "https://capec.mitre.org/about/termsofuse.html";
@@ -588,6 +593,11 @@ in mkLicense lset) ({
     fullName = "PNG Reference Library version 2";
   };
 
+  libssh2 = {
+    fullName = "libssh2 License";
+    url = "https://www.libssh2.org/license.html";
+  };
+
   libtiff = {
     spdxId = "libtiff";
     fullName = "libtiff License";
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 2195778492eb8..e16d83b26cd88 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -1922,6 +1922,12 @@
     githubId = 2506621;
     name = "Brayden Willenborg";
   };
+  brendanreis = {
+    email = "brendanreis@gmail.com";
+    name = "Brendan Reis";
+    github = "brendanreis";
+    githubId = 10686906;
+  };
   brian-dawn = {
     email = "brian.t.dawn@gmail.com";
     github = "brian-dawn";
@@ -2877,6 +2883,12 @@
     githubId = 1382175;
     name = "Oliver Matthews";
   };
+  cwyc = {
+    email = "hello@cwyc.page";
+    github = "cwyc";
+    githubId = 16950437;
+    name = "cwyc";
+  };
   cyounkins = {
     name = "Craig Younkins";
     email = "cyounkins@gmail.com";
@@ -4833,6 +4845,15 @@
       fingerprint = "386E D1BF 848A BB4A 6B4A  3C45 FC83 907C 125B C2BC";
     }];
   };
+  georgesalkhouri = {
+    name = "Georges Alkhouri";
+    email = "incense.stitch_0w@icloud.com";
+    github = "GeorgesAlkhouri";
+    githubId = 6077574;
+    keys = [{
+      fingerprint = "1608 9E8D 7C59 54F2 6A7A 7BD0 8BD2 09DC C54F D339";
+    }];
+  };
   georgewhewell = {
     email = "georgerw@gmail.com";
     github = "georgewhewell";
@@ -6486,6 +6507,12 @@
     githubId = 297653;
     name = "Joe Salisbury";
   };
+  john-shaffer = {
+    email = "jdsha@proton.me";
+    github = "john-shaffer";
+    githubId = 53870456;
+    name = "John Shaffer";
+  };
   johanot = {
     email = "write@ownrisk.dk";
     github = "johanot";
@@ -9381,6 +9408,12 @@
     githubId = 1222539;
     name = "Roman Naumann";
   };
+  naphta = {
+    email = "naphta@noreply.github.com";
+    github = "naphta";
+    githubId = 6709831;
+    name = "Jake Hill";
+  };
   nasirhm = {
     email = "nasirhussainm14@gmail.com";
     github = "nasirhm";
@@ -9528,12 +9561,25 @@
     githubId = 23743547;
     name = "Akshay Oppiliappan";
   };
+  ners = {
+    name = "ners";
+    email = "ners@gmx.ch";
+    matrix = "@ners:ners.ch";
+    github = "ners";
+    githubId = 50560955;
+  };
   nessdoor = {
     name = "Tomas Antonio Lopez";
     email = "entropy.overseer@protonmail.com";
     github = "nessdoor";
     githubId = 25993494;
   };
+  net-mist = {
+    email = "archimist.linux@gmail.com";
+    github = "Net-Mist";
+    githubId = 13920346;
+    name = "Sébastien Iooss";
+  };
   netali = {
     name = "Jennifer Graul";
     email = "me@netali.de";
@@ -9875,6 +9921,12 @@
     githubId = 1809198;
     name = "Victor Roest";
   };
+  nullishamy = {
+    email = "amy.codes@null.net";
+    name = "nullishamy";
+    github = "nullishamy";
+    githubId = 99221043;
+  };
   numinit = {
     email = "me@numin.it";
     github = "numinit";
@@ -10148,6 +10200,15 @@
       fingerprint = "F90F FD6D 585C 2BA1 F13D  E8A9 7571 654C F88E 31C2";
     }];
   };
+  oxapentane = {
+    email = "blame@oxapentane.com";
+    github = "oxapentane";
+    githubId = 1297357;
+    name = "Grigory Shipunov";
+    keys = [{
+      fingerprint = "DD09 98E6 CDF2 9453 7FC6  04F9 91FA 5E5B F9AA 901C";
+    }];
+  };
   oxij = {
     email = "oxij@oxij.org";
     github = "oxij";
@@ -10666,6 +10727,16 @@
     githubId = 178496;
     name = "Philipp Middendorf";
   };
+  pmw = {
+    email = "philip@mailworks.org";
+    matrix = "@philip4g:matrix.org";
+    name = "Philip White";
+    github = "philipmw";
+    githubId = 1379645;
+    keys = [{
+      fingerprint = "9AB0 6C94 C3D1 F9D0 B9D9  A832 BC54 6FB3 B16C 8B0B";
+    }];
+  };
   pmy = {
     email = "pmy@xqzp.net";
     github = "pmeiyu";
@@ -10836,6 +10907,12 @@
       }
     ];
   };
+  prtzl = {
+    email = "matej.blagsic@protonmail.com";
+    github = "prtzl";
+    githubId = 32430344;
+    name = "Matej Blagsic";
+  };
   ProducerMatt = {
     name = "Matthew Pherigo";
     email = "ProducerMatt42@gmail.com";
@@ -11936,6 +12013,12 @@
     github = "sioodmy";
     githubId = 81568712;
   };
+  siph = {
+    name = "Chris Dawkins";
+    email = "dawkins.chris.dev@gmail.com";
+    github = "siph";
+    githubId = 6619112;
+  };
   schmitthenner = {
     email = "development@schmitthenner.eu";
     github = "fkz";
@@ -12848,13 +12931,6 @@
     githubId = 2666479;
     name = "Y Nguyen";
   };
-  superherointj = {
-    name = "Sérgio G.";
-    email = "5861043+superherointj@users.noreply.github.com";
-    matrix = "@superherointj:matrix.org";
-    github = "superherointj";
-    githubId = 5861043;
-  };
   SuperSandro2000 = {
     email = "sandro.jaeckel@gmail.com";
     matrix = "@sandro:supersandro.de";
@@ -15396,6 +15472,12 @@
     github = "jali-clarke";
     githubId = 17733984;
   };
+  wesleyjrz = {
+    email = "wesleyjr2002@gmail.com";
+    name = "Wesley V. Santos Jr.";
+    github = "wesleyjrz";
+    githubId = 60184588;
+  };
   npatsakula = {
     email = "nikita.patsakula@gmail.com";
     name = "Patsakula Nikita";
diff --git a/maintainers/scripts/luarocks-packages.csv b/maintainers/scripts/luarocks-packages.csv
index 85edf354ad42e..ce9c099e8a3f8 100644
--- a/maintainers/scripts/luarocks-packages.csv
+++ b/maintainers/scripts/luarocks-packages.csv
@@ -20,6 +20,7 @@ fluent,,,,,,alerque
 gitsigns.nvim,https://github.com/lewis6991/gitsigns.nvim.git,,,,5.1,
 http,,,,0.3-0,,vcunat
 inspect,,,,,,
+jsregexp,,,,,,
 ldbus,,,http://luarocks.org/dev,,,
 ldoc,https://github.com/stevedonovan/LDoc.git,,,,,
 lgi,,,,,,
@@ -86,7 +87,7 @@ mediator_lua,,,,,,
 mpack,,,,,,
 moonscript,https://github.com/leafo/moonscript.git,dev-1,,,,arobyn
 nvim-client,https://github.com/neovim/lua-client.git,,,,,
-nvim-cmp,,,,,
+nvim-cmp,,,,,,
 penlight,https://github.com/lunarmodules/Penlight.git,,,,,alerque
 plenary.nvim,https://github.com/nvim-lua/plenary.nvim.git,,,,5.1,
 rapidjson,https://github.com/xpol/lua-rapidjson.git,,,,,
@@ -100,3 +101,4 @@ std.normalize,https://github.com/lua-stdlib/normalize.git,,,,,
 stdlib,,,,41.2.2,,vyp
 tl,,,,,,mephistophiles
 vstruct,https://github.com/ToxicFrog/vstruct.git,,,,,
+vusted,,,,,,figsoda
diff --git a/maintainers/scripts/nix-generate-from-cpan.nix b/maintainers/scripts/nix-generate-from-cpan.nix
index fecca7f0c7375..9f9833d406073 100644
--- a/maintainers/scripts/nix-generate-from-cpan.nix
+++ b/maintainers/scripts/nix-generate-from-cpan.nix
@@ -3,8 +3,10 @@
 stdenv.mkDerivation {
   name = "nix-generate-from-cpan-3";
 
+  nativeBuildInputs = [ makeWrapper ];
+
   buildInputs = with perlPackages; [
-    makeWrapper perl GetoptLongDescriptive CPANPLUS Readonly LogLog4perl
+    perl GetoptLongDescriptive CPANPLUS Readonly LogLog4perl
   ];
 
   phases = [ "installPhase" ];
diff --git a/maintainers/team-list.nix b/maintainers/team-list.nix
index fbd7972cb2bbc..35e184b43991e 100644
--- a/maintainers/team-list.nix
+++ b/maintainers/team-list.nix
@@ -15,6 +15,8 @@
   - `scope` describes the scope of the group.
   - `shortName` short human-readable name
   - `enableFeatureFreezePing` will ping this team during the Feature Freeze announcements on releases
+    - There is limited mention capacity in a single post, so this should be reserved for critical components
+      or larger ecosystems within nixpkgs.
   - `githubTeams` will ping specified GitHub teams as well
 
   More fields may be added in the future.
@@ -38,6 +40,7 @@ with lib.maintainers; {
     ];
     scope = "Maintain ACME-related packages and modules.";
     shortName = "ACME";
+    enableFeatureFreezePing = true;
   };
 
   bazel = {
@@ -90,7 +93,6 @@ with lib.maintainers; {
     ];
     scope = "Maintain Blockchain packages and modules.";
     shortName = "Blockchains";
-    enableFeatureFreezePing = true;
   };
 
   c = {
@@ -108,10 +110,10 @@ with lib.maintainers; {
       astro
       SuperSandro2000
       revol-xut
+      oxapentane
     ];
     scope = "Maintain packages used in the C3D2 hackspace";
     shortName = "c3d2";
-    enableFeatureFreezePing = true;
   };
 
   cinnamon = {
@@ -202,7 +204,6 @@ with lib.maintainers; {
     ];
     scope = "Maintain Docker and related tools.";
     shortName = "DockerTools";
-    enableFeatureFreezePing = true;
   };
 
   docs = {
@@ -220,7 +221,6 @@ with lib.maintainers; {
     ];
     scope = "Maintain the Emacs editor and packages.";
     shortName = "Emacs";
-    enableFeatureFreezePing = true;
   };
 
   enlightenment = {
@@ -364,6 +364,17 @@ with lib.maintainers; {
     shortName = "Kodi";
   };
 
+  libretro = {
+    members = [
+      aanderse
+      edwtjo
+      MP2E
+      thiagokokada
+    ];
+    scope = "Maintain Libretro, RetroArch and related packages.";
+    shortName = "Libretro";
+  };
+
   linux-kernel = {
     members = [
       TredwellGit
@@ -385,6 +396,15 @@ with lib.maintainers; {
     shortName = "Lumiguide employees";
   };
 
+  lua = {
+    githubTeams = [
+      "lua"
+    ];
+    scope = "Maintain the lua ecosystem.";
+    shortName = "lua";
+    enableFeatureFreezePing = true;
+  };
+
   lumina = {
     members = [
       romildo
@@ -426,6 +446,7 @@ with lib.maintainers; {
     ];
     scope = "Maintain Mate desktop environment and related packages.";
     shortName = "MATE";
+    enableFeatureFreezePing = true;
   };
 
   matrix = {
@@ -448,7 +469,6 @@ with lib.maintainers; {
     ];
     scope = "Maintain Mobile NixOS.";
     shortName = "Mobile";
-    enableFeatureFreezePing = true;
   };
 
   nix = {
@@ -483,7 +503,6 @@ with lib.maintainers; {
       tazjin
       zimbatm
     ];
-    enableFeatureFreezePing = true;
     scope = "Group registration for Numtide team members who collectively maintain packages.";
     shortName = "Numtide team";
   };
@@ -548,7 +567,6 @@ with lib.maintainers; {
     ];
     scope = "Maintain Podman and CRI-O related packages and modules.";
     shortName = "Podman";
-    enableFeatureFreezePing = true;
   };
 
   postgres = {
@@ -557,7 +575,6 @@ with lib.maintainers; {
     ];
     scope = "Maintain the PostgreSQL package and plugins along with the NixOS module.";
     shortName = "PostgreSQL";
-    enableFeatureFreezePing = true;
   };
 
   python = {
@@ -610,7 +627,6 @@ with lib.maintainers; {
     ];
     scope = "Manage the current nixpkgs/NixOS release.";
     shortName = "Release";
-    enableFeatureFreezePing = true;
   };
 
   ruby = {
@@ -699,7 +715,6 @@ with lib.maintainers; {
     ];
     scope = "Maintain the vim and neovim text editors and related packages.";
     shortName = "Vim/Neovim";
-    enableFeatureFreezePing = true;
   };
 
   xfce = {
@@ -708,5 +723,6 @@ with lib.maintainers; {
     ];
     scope = "Maintain Xfce desktop environment and related packages.";
     shortName = "Xfce";
+    enableFeatureFreezePing = true;
   };
 }
diff --git a/nixos/doc/manual/default.nix b/nixos/doc/manual/default.nix
index ecd62eb4e8482..6db20cdd64182 100644
--- a/nixos/doc/manual/default.nix
+++ b/nixos/doc/manual/default.nix
@@ -63,6 +63,7 @@ let
       };
       documentType = "none";
       variablelistId = "test-options-list";
+      optionIdPrefix = "test-opt-";
     };
 
   sources = lib.sourceFilesBySuffices ./. [".xml"];
diff --git a/nixos/doc/manual/development/running-nixos-tests-interactively.section.md b/nixos/doc/manual/development/running-nixos-tests-interactively.section.md
index d9c316f4b139b..1130672cb3766 100644
--- a/nixos/doc/manual/development/running-nixos-tests-interactively.section.md
+++ b/nixos/doc/manual/development/running-nixos-tests-interactively.section.md
@@ -39,11 +39,11 @@ directory.
 ## Interactive-only test configuration {#sec-nixos-test-interactive-configuration}
 
 The `.driverInteractive` attribute combines the regular test configuration with
-definitions from the [`interactive` submodule](#opt-interactive). This gives you
+definitions from the [`interactive` submodule](#test-opt-interactive). This gives you
 a more usable, graphical, but slightly different configuration.
 
 You can add your own interactive-only test configuration by adding extra
-configuration to the [`interactive` submodule](#opt-interactive).
+configuration to the [`interactive` submodule](#test-opt-interactive).
 
 To interactively run only the regular configuration, build the `<test>.driver` attribute
 instead, and call it with the flag `result/bin/nixos-test-driver --interactive`.
diff --git a/nixos/doc/manual/development/writing-nixos-tests.section.md b/nixos/doc/manual/development/writing-nixos-tests.section.md
index 99704ec3c1416..2efe52b9883c2 100644
--- a/nixos/doc/manual/development/writing-nixos-tests.section.md
+++ b/nixos/doc/manual/development/writing-nixos-tests.section.md
@@ -22,12 +22,12 @@ A NixOS test is a module that has the following structure:
 ```
 
 We refer to the whole test above as a test module, whereas the values
-in [`nodes.<name>`](#opt-nodes) are NixOS modules themselves.
+in [`nodes.<name>`](#test-opt-nodes) are NixOS modules themselves.
 
-The option [`testScript`](#opt-testScript) is a piece of Python code that executes the
+The option [`testScript`](#test-opt-testScript) is a piece of Python code that executes the
 test (described below). During the test, it will start one or more
 virtual machines, the configuration of which is described by
-the option [`nodes`](#opt-nodes).
+the option [`nodes`](#test-opt-nodes).
 
 An example of a single-node test is
 [`login.nix`](https://github.com/NixOS/nixpkgs/blob/master/nixos/tests/login.nix).
@@ -171,7 +171,7 @@ The following methods are available on machine objects:
     least one will be returned.
 
     ::: {.note}
-    This requires [`enableOCR`](#opt-enableOCR) to be set to `true`.
+    This requires [`enableOCR`](#test-opt-enableOCR) to be set to `true`.
     :::
 
 `get_screen_text`
@@ -180,7 +180,7 @@ The following methods are available on machine objects:
     machine\'s screen using optical character recognition.
 
     ::: {.note}
-    This requires [`enableOCR`](#opt-enableOCR) to be set to `true`.
+    This requires [`enableOCR`](#test-opt-enableOCR) to be set to `true`.
     :::
 
 `send_monitor_command`
@@ -291,7 +291,7 @@ The following methods are available on machine objects:
     `get_screen_text` and `get_screen_text_variants`).
 
     ::: {.note}
-    This requires [`enableOCR`](#opt-enableOCR) to be set to `true`.
+    This requires [`enableOCR`](#test-opt-enableOCR) to be set to `true`.
     :::
 
 `wait_for_console_text`
diff --git a/nixos/doc/manual/from_md/development/running-nixos-tests-interactively.section.xml b/nixos/doc/manual/from_md/development/running-nixos-tests-interactively.section.xml
index 35d9bbd1c1fe1..16db709f8b917 100644
--- a/nixos/doc/manual/from_md/development/running-nixos-tests-interactively.section.xml
+++ b/nixos/doc/manual/from_md/development/running-nixos-tests-interactively.section.xml
@@ -44,14 +44,14 @@ $ ./result/bin/nixos-test-driver --keep-vm-state
     <para>
       The <literal>.driverInteractive</literal> attribute combines the
       regular test configuration with definitions from the
-      <link linkend="opt-interactive"><literal>interactive</literal>
+      <link linkend="test-opt-interactive"><literal>interactive</literal>
       submodule</link>. This gives you a more usable, graphical, but
       slightly different configuration.
     </para>
     <para>
       You can add your own interactive-only test configuration by adding
       extra configuration to the
-      <link linkend="opt-interactive"><literal>interactive</literal>
+      <link linkend="test-opt-interactive"><literal>interactive</literal>
       submodule</link>.
     </para>
     <para>
diff --git a/nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml b/nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml
index 32f5fdb77f504..4db196273dad2 100644
--- a/nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml
+++ b/nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml
@@ -24,16 +24,16 @@
   <para>
     We refer to the whole test above as a test module, whereas the
     values in
-    <link linkend="opt-nodes"><literal>nodes.&lt;name&gt;</literal></link>
+    <link linkend="test-opt-nodes"><literal>nodes.&lt;name&gt;</literal></link>
     are NixOS modules themselves.
   </para>
   <para>
     The option
-    <link linkend="opt-testScript"><literal>testScript</literal></link>
+    <link linkend="test-opt-testScript"><literal>testScript</literal></link>
     is a piece of Python code that executes the test (described below).
     During the test, it will start one or more virtual machines, the
     configuration of which is described by the option
-    <link linkend="opt-nodes"><literal>nodes</literal></link>.
+    <link linkend="test-opt-nodes"><literal>nodes</literal></link>.
   </para>
   <para>
     An example of a single-node test is
@@ -263,7 +263,7 @@ start_all()
           <note>
             <para>
               This requires
-              <link linkend="opt-enableOCR"><literal>enableOCR</literal></link>
+              <link linkend="test-opt-enableOCR"><literal>enableOCR</literal></link>
               to be set to <literal>true</literal>.
             </para>
           </note>
@@ -281,7 +281,7 @@ start_all()
           <note>
             <para>
               This requires
-              <link linkend="opt-enableOCR"><literal>enableOCR</literal></link>
+              <link linkend="test-opt-enableOCR"><literal>enableOCR</literal></link>
               to be set to <literal>true</literal>.
             </para>
           </note>
@@ -522,7 +522,7 @@ start_all()
           <note>
             <para>
               This requires
-              <link linkend="opt-enableOCR"><literal>enableOCR</literal></link>
+              <link linkend="test-opt-enableOCR"><literal>enableOCR</literal></link>
               to be set to <literal>true</literal>.
             </para>
           </note>
diff --git a/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml
index 8494b62e6ff05..bdd55a59370bb 100644
--- a/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml
+++ b/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml
@@ -196,6 +196,13 @@
       </listitem>
       <listitem>
         <para>
+          <link xlink:href="https://tandoor.dev">Tandoor Recipes</link>,
+          a self-hosted multi-tenant recipe collection. Available as
+          <link xlink:href="options.html#opt-services.tandoor-recipes.enable">services.tandoor-recipes</link>.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
           <link xlink:href="https://hbase.apache.org/">HBase
           cluster</link>, a distributed, scalable, big data store.
           Available as
@@ -263,6 +270,13 @@
       </listitem>
       <listitem>
         <para>
+          <link xlink:href="https://github.com/shizunge/endlessh-go">endlessh-go</link>,
+          an SSH tarpit that exposes Prometheus metrics. Available as
+          <link linkend="opt-services.endlessh-go.enable">services.endlessh-go</link>.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
           <link xlink:href="https://netbird.io">netbird</link>, a zero
           configuration VPN. Available as
           <link xlink:href="options.html#opt-services.netbird.enable">services.netbird</link>.
@@ -315,6 +329,15 @@
       </listitem>
       <listitem>
         <para>
+          <link xlink:href="https://github.com/tmate-io/tmate-ssh-server">tmate-ssh-server</link>,
+          server side part of
+          <link xlink:href="https://tmate.io/">tmate</link>. Available
+          as
+          <link linkend="opt-services.tmate-ssh-server.enable">services.tmate-ssh-server</link>.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
           <link xlink:href="https://www.grafana.com/oss/tempo/">Grafana
           Tempo</link>, a distributed tracing store. Available as
           <link linkend="opt-services.tempo.enable">services.tempo</link>.
@@ -467,6 +490,16 @@
       </listitem>
       <listitem>
         <para>
+          The <literal>p4</literal> package now only includes the
+          open-source Perforce Helix Core command-line client and APIs.
+          It no longer installs the unfree Helix Core Server binaries
+          <literal>p4d</literal>, <literal>p4broker</literal>, and
+          <literal>p4p</literal>. To install the Helix Core Server
+          binaries, use the <literal>p4d</literal> package instead.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
           The <literal>coq</literal> package and versioned variants
           starting at <literal>coq_8_14</literal> no longer include
           CoqIDE, which is now available through
@@ -485,7 +518,9 @@
       <listitem>
         <para>
           <literal>pkgs.cosign</literal> does not provide the
-          <literal>cosigned</literal> binary anymore.
+          <literal>cosigned</literal> binary anymore. The
+          <literal>sget</literal> binary has been moved into its own
+          package.
         </para>
       </listitem>
       <listitem>
@@ -505,14 +540,6 @@
       </listitem>
       <listitem>
         <para>
-          The (previously undocumented) Nixpkgs configuration option
-          <literal>checkMeta</literal> now defaults to
-          <literal>true</literal>. This may cause evaluation failures
-          for packages with incorrect <literal>meta</literal> attribute.
-        </para>
-      </listitem>
-      <listitem>
-        <para>
           xow package removed along with the
           <literal>hardware.xow</literal> module, due to the project
           being deprecated in favor of <literal>xone</literal>, which is
@@ -530,6 +557,16 @@
       </listitem>
       <listitem>
         <para>
+          <literal>teleport</literal> has been upgraded to major version
+          10. Please see upstream
+          <link xlink:href="https://goteleport.com/docs/ver/10.0/management/operations/upgrading/">upgrade
+          instructions</link> and
+          <link xlink:href="https://goteleport.com/docs/ver/10.0/changelog/#1000">release
+          notes</link>.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
           lemmy module option
           <literal>services.lemmy.settings.database.createLocally</literal>
           moved to
diff --git a/nixos/doc/manual/release-notes/rl-2211.section.md b/nixos/doc/manual/release-notes/rl-2211.section.md
index a5ba4841f549b..69e0cbd2ad513 100644
--- a/nixos/doc/manual/release-notes/rl-2211.section.md
+++ b/nixos/doc/manual/release-notes/rl-2211.section.md
@@ -72,6 +72,8 @@ In addition to numerous new and upgraded packages, this release has the followin
 
 - [Komga](https://komga.org/), a free and open source comics/mangas media server. Available as [services.komga](#opt-services.komga.enable).
 
+- [Tandoor Recipes](https://tandoor.dev), a self-hosted multi-tenant recipe collection. Available as [services.tandoor-recipes](options.html#opt-services.tandoor-recipes.enable).
+
 - [HBase cluster](https://hbase.apache.org/), a distributed, scalable, big data store. Available as [services.hadoop.hbase](options.html#opt-services.hadoop.hbase.enable).
 
 - [Sachet](https://github.com/messagebird/sachet/), an SMS alerting tool for the Prometheus Alertmanager. Available as [services.prometheus.sachet](#opt-services.prometheus.sachet.enable).
@@ -93,6 +95,8 @@ In addition to numerous new and upgraded packages, this release has the followin
 
 - [alps](https://git.sr.ht/~migadu/alps), a simple and extensible webmail. Available as [services.alps](#opt-services.alps.enable).
 
+- [endlessh-go](https://github.com/shizunge/endlessh-go), an SSH tarpit that exposes Prometheus metrics. Available as [services.endlessh-go](#opt-services.endlessh-go.enable).
+
 - [netbird](https://netbird.io), a zero configuration VPN.
   Available as [services.netbird](options.html#opt-services.netbird.enable).
 
@@ -108,6 +112,8 @@ In addition to numerous new and upgraded packages, this release has the followin
 
 - [go-autoconfig](https://github.com/L11R/go-autoconfig), IMAP/SMTP autodiscover server. Available as [services.go-autoconfig](#opt-services.go-autoconfig.enable).
 
+- [tmate-ssh-server](https://github.com/tmate-io/tmate-ssh-server), server side part of [tmate](https://tmate.io/). Available as [services.tmate-ssh-server](#opt-services.tmate-ssh-server.enable).
+
 - [Grafana Tempo](https://www.grafana.com/oss/tempo/), a distributed tracing store. Available as [services.tempo](#opt-services.tempo.enable).
 
 - [AusweisApp2](https://www.ausweisapp.bund.de/), the authentication software for the German ID card. Available as [programs.ausweisapp](#opt-programs.ausweisapp.enable).
@@ -156,6 +162,8 @@ Available as [services.patroni](options.html#opt-services.patroni.enable).
 - `services.hbase` has been renamed to `services.hbase-standalone`.
   For production HBase clusters, use `services.hadoop.hbase` instead.
 
+- The `p4` package now only includes the open-source Perforce Helix Core command-line client and APIs. It no longer installs the unfree Helix Core Server binaries `p4d`, `p4broker`, and `p4p`. To install the Helix Core Server binaries, use the `p4d` package instead.
+
 - The `coq` package and versioned variants starting at `coq_8_14` no
   longer include CoqIDE, which is now available through
   `coqPackages.coqide`. It is still possible to get CoqIDE as part of
@@ -165,20 +173,19 @@ Available as [services.patroni](options.html#opt-services.patroni.enable).
 - PHP 7.4 is no longer supported due to upstream not supporting this
   version for the entire lifecycle of the 22.11 release.
 
-- `pkgs.cosign` does not provide the `cosigned` binary anymore.
+- `pkgs.cosign` does not provide the `cosigned` binary anymore. The `sget` binary has been moved into its own package.
 
 - Emacs now uses the Lucid toolkit by default instead of GTK because of stability and compatibility issues.
   Users who still wish to remain using GTK can do so by using `emacs-gtk`.
 
 - riak package removed along with `services.riak` module, due to lack of maintainer to update the package.
 
-- The (previously undocumented) Nixpkgs configuration option `checkMeta` now defaults to `true`. This may cause evaluation
-  failures for packages with incorrect `meta` attribute.
-
 - xow package removed along with the `hardware.xow` module, due to the project being deprecated in favor of `xone`,  which is available via the `hardware.xone` module.
 
 - dd-agent package removed along with the `services.dd-agent` module, due to the project being deprecated in favor of `datadog-agent`,  which is available via the `services.datadog-agent` module.
 
+- `teleport` has been upgraded to major version 10. Please see upstream [upgrade instructions](https://goteleport.com/docs/ver/10.0/management/operations/upgrading/) and [release notes](https://goteleport.com/docs/ver/10.0/changelog/#1000).
+
 - lemmy module option `services.lemmy.settings.database.createLocally`
   moved to `services.lemmy.database.createLocally`.
 
diff --git a/nixos/lib/make-options-doc/default.nix b/nixos/lib/make-options-doc/default.nix
index 43dbff0e68ddb..6a1bb868c20de 100644
--- a/nixos/lib/make-options-doc/default.nix
+++ b/nixos/lib/make-options-doc/default.nix
@@ -26,6 +26,8 @@
   # If you include more than one option list into a document, you need to
   # provide different ids.
 , variablelistId ? "configuration-variable-list"
+  # Strig to prefix to the option XML/HTML id attributes.
+, optionIdPrefix ? "opt-"
 , revision ? "" # Specify revision for the options
 # a set of options the docs we are generating will be merged into, as if by recursiveUpdate.
 # used to split the options doc build into a static part (nixos/modules) and a dynamic part
@@ -183,6 +185,7 @@ in rec {
       --stringparam documentType '${documentType}' \
       --stringparam revision '${revision}' \
       --stringparam variablelistId '${variablelistId}' \
+      --stringparam optionIdPrefix '${optionIdPrefix}' \
       -o intermediate.xml ${./options-to-docbook.xsl} sorted.xml
     ${pkgs.libxslt.bin}/bin/xsltproc \
       -o "$out" ${./postprocess-option-descriptions.xsl} intermediate.xml
diff --git a/nixos/lib/make-options-doc/options-to-docbook.xsl b/nixos/lib/make-options-doc/options-to-docbook.xsl
index 978d5e2468a83..d5b921b1dedb3 100644
--- a/nixos/lib/make-options-doc/options-to-docbook.xsl
+++ b/nixos/lib/make-options-doc/options-to-docbook.xsl
@@ -15,6 +15,7 @@
   <xsl:param name="documentType" />
   <xsl:param name="program" />
   <xsl:param name="variablelistId" />
+  <xsl:param name="optionIdPrefix" />
 
 
   <xsl:template match="/expr/list">
@@ -36,7 +37,7 @@
       <xsl:attribute name="id" namespace="http://www.w3.org/XML/1998/namespace"><xsl:value-of select="$variablelistId"/></xsl:attribute>
         <xsl:for-each select="attrs">
           <xsl:variable name="id" select="
-            concat('opt-',
+            concat($optionIdPrefix,
               translate(
                 attr[@name = 'name']/string/@value,
                 '*&lt; >[]:',
diff --git a/nixos/lib/qemu-common.nix b/nixos/lib/qemu-common.nix
index 3f4d674e9a93a..a8ed27dd60919 100644
--- a/nixos/lib/qemu-common.nix
+++ b/nixos/lib/qemu-common.nix
@@ -19,7 +19,7 @@ rec {
     ];
 
   qemuSerialDevice =
-    if pkgs.stdenv.hostPlatform.isx86 || pkgs.stdenv.hostPlatform.isRiscV then "ttyS0"
+    if with pkgs.stdenv.hostPlatform; isx86 || isMips64 || isRiscV then "ttyS0"
     else if (with pkgs.stdenv.hostPlatform; isAarch || isPower) then "ttyAMA0"
     else throw "Unknown QEMU serial device for system '${pkgs.stdenv.hostPlatform.system}'";
 
diff --git a/nixos/lib/testing/driver.nix b/nixos/lib/testing/driver.nix
index 04e99f9e21d61..fb181c1d7e9ad 100644
--- a/nixos/lib/testing/driver.nix
+++ b/nixos/lib/testing/driver.nix
@@ -120,7 +120,7 @@ in
     };
 
     qemu.package = mkOption {
-      description = mdDoc "Which qemu package to use for the virtualisation of [{option}`nodes`](#opt-nodes).";
+      description = mdDoc "Which qemu package to use for the virtualisation of [{option}`nodes`](#test-opt-nodes).";
       type = types.package;
       default = hostPkgs.qemu_test;
       defaultText = "hostPkgs.qemu_test";
@@ -152,7 +152,7 @@ in
       description = mdDoc ''
         Extra arguments to pass to the test driver.
 
-        They become part of [{option}`driver`](#opt-driver) via `wrapProgram`.
+        They become part of [{option}`driver`](#test-opt-driver) via `wrapProgram`.
       '';
       type = types.listOf types.str;
       default = [];
@@ -172,7 +172,7 @@ in
       description = mdDoc ''
         Disable type checking. This must not be enabled for new NixOS tests.
 
-        This may speed up your iteration cycle, unless you're working on the [{option}`testScript`](#opt-testScript).
+        This may speed up your iteration cycle, unless you're working on the [{option}`testScript`](#test-opt-testScript).
       '';
     };
   };
diff --git a/nixos/lib/testing/meta.nix b/nixos/lib/testing/meta.nix
index 4d8b0e0f1c439..65754fe3c5419 100644
--- a/nixos/lib/testing/meta.nix
+++ b/nixos/lib/testing/meta.nix
@@ -24,14 +24,14 @@ in
             type = types.nullOr types.int;
             default = null; # NOTE: null values are filtered out by `meta`.
             description = mdDoc ''
-              The [{option}`test`](#opt-test)'s [`meta.timeout`](https://nixos.org/manual/nixpkgs/stable/#var-meta-timeout) in seconds.
+              The [{option}`test`](#test-opt-test)'s [`meta.timeout`](https://nixos.org/manual/nixpkgs/stable/#var-meta-timeout) in seconds.
             '';
           };
           broken = lib.mkOption {
             type = types.bool;
             default = false;
             description = mdDoc ''
-              Sets the [`meta.broken`](https://nixos.org/manual/nixpkgs/stable/#var-meta-broken) attribute on the [{option}`test`](#opt-test) derivation.
+              Sets the [`meta.broken`](https://nixos.org/manual/nixpkgs/stable/#var-meta-broken) attribute on the [{option}`test`](#test-opt-test) derivation.
             '';
           };
         };
diff --git a/nixos/lib/testing/name.nix b/nixos/lib/testing/name.nix
index a54622e139bf6..0af593169eeca 100644
--- a/nixos/lib/testing/name.nix
+++ b/nixos/lib/testing/name.nix
@@ -7,7 +7,7 @@ in
     description = mdDoc ''
       The name of the test.
 
-      This is used in the derivation names of the [{option}`driver`](#opt-driver) and [{option}`test`](#opt-test) runner.
+      This is used in the derivation names of the [{option}`driver`](#test-opt-driver) and [{option}`test`](#test-opt-test) runner.
     '';
     type = types.str;
   };
diff --git a/nixos/lib/testing/nodes.nix b/nixos/lib/testing/nodes.nix
index 765af2878dfe8..0395238cbaae7 100644
--- a/nixos/lib/testing/nodes.nix
+++ b/nixos/lib/testing/nodes.nix
@@ -44,7 +44,7 @@ in
       description = mdDoc ''
         An attribute set of NixOS configuration modules.
 
-        The configurations are augmented by the [`defaults`](#opt-defaults) option.
+        The configurations are augmented by the [`defaults`](#test-opt-defaults) option.
 
         They are assigned network addresses according to the `nixos/lib/testing/network.nix` module.
 
@@ -54,7 +54,7 @@ in
 
     defaults = mkOption {
       description = mdDoc ''
-        NixOS configuration that is applied to all [{option}`nodes`](#opt-nodes).
+        NixOS configuration that is applied to all [{option}`nodes`](#test-opt-nodes).
       '';
       type = types.deferredModule;
       default = { };
@@ -62,7 +62,7 @@ in
 
     extraBaseModules = mkOption {
       description = mdDoc ''
-        NixOS configuration that, like [{option}`defaults`](#opt-defaults), is applied to all [{option}`nodes`](#opt-nodes) and can not be undone with [`specialisation.<name>.inheritParentConfig`](https://search.nixos.org/options?show=specialisation.%3Cname%3E.inheritParentConfig&from=0&size=50&sort=relevance&type=packages&query=specialisation).
+        NixOS configuration that, like [{option}`defaults`](#test-opt-defaults), is applied to all [{option}`nodes`](#test-opt-nodes) and can not be undone with [`specialisation.<name>.inheritParentConfig`](https://search.nixos.org/options?show=specialisation.%3Cname%3E.inheritParentConfig&from=0&size=50&sort=relevance&type=packages&query=specialisation).
       '';
       type = types.deferredModule;
       default = { };
@@ -82,7 +82,7 @@ in
       type = types.bool;
       default = false;
       description = mdDoc ''
-        Enable to configure all [{option}`nodes`](#opt-nodes) to run with a minimal kernel.
+        Enable to configure all [{option}`nodes`](#test-opt-nodes) to run with a minimal kernel.
       '';
     };
 
diff --git a/nixos/lib/utils.nix b/nixos/lib/utils.nix
index d7671a374999a..f646f70323e35 100644
--- a/nixos/lib/utils.nix
+++ b/nixos/lib/utils.nix
@@ -102,7 +102,11 @@ rec {
         if item ? ${attr} then
           nameValuePair prefix item.${attr}
         else if isAttrs item then
-          map (name: recurse (prefix + "." + name) item.${name}) (attrNames item)
+          map (name:
+            let
+              escapedName = ''"${replaceChars [''"'' "\\"] [''\"'' "\\\\"] name}"'';
+            in
+              recurse (prefix + "." + escapedName) item.${name}) (attrNames item)
         else if isList item then
           imap0 (index: item: recurse (prefix + "[${toString index}]") item) item
         else
@@ -182,13 +186,13 @@ rec {
                 '')
                (attrNames secrets))
     + "\n"
-    + "${pkgs.jq}/bin/jq >'${output}' '"
-    + concatStringsSep
+    + "${pkgs.jq}/bin/jq >'${output}' "
+    + lib.escapeShellArg (concatStringsSep
       " | "
       (imap1 (index: name: ''${name} = $ENV.secret${toString index}'')
-             (attrNames secrets))
+             (attrNames secrets)))
     + ''
-      ' <<'EOF'
+       <<'EOF'
       ${builtins.toJSON set}
       EOF
       (( ! $inherit_errexit_enabled )) && shopt -u inherit_errexit
diff --git a/nixos/modules/config/pulseaudio.nix b/nixos/modules/config/pulseaudio.nix
index 3e969991f8fd6..80ff6c1aabf74 100644
--- a/nixos/modules/config/pulseaudio.nix
+++ b/nixos/modules/config/pulseaudio.nix
@@ -102,7 +102,7 @@ in {
           each user that tries to use the sound system. The server runs
           with user privileges. If true, one system-wide PulseAudio
           server is launched on boot, running as the user "pulse", and
-          only users in the "audio" group will have access to the server.
+          only users in the "pulse-access" group will have access to the server.
           Please read the PulseAudio documentation for more details.
 
           Don't enable this option unless you know what you are doing.
@@ -310,6 +310,7 @@ in {
       };
 
       users.groups.pulse.gid = gid;
+      users.groups.pulse-access = {};
 
       systemd.services.pulseaudio = {
         description = "PulseAudio System-Wide Server";
diff --git a/nixos/modules/hardware/ckb-next.nix b/nixos/modules/hardware/ckb-next.nix
index e5c79c8143142..79977939eec81 100644
--- a/nixos/modules/hardware/ckb-next.nix
+++ b/nixos/modules/hardware/ckb-next.nix
@@ -48,6 +48,6 @@ in
     };
 
     meta = {
-      maintainers = with lib.maintainers; [ superherointj ];
+      maintainers = with lib.maintainers; [ ];
     };
   }
diff --git a/nixos/modules/hardware/video/uvcvideo/uvcdynctrl-udev-rules.nix b/nixos/modules/hardware/video/uvcvideo/uvcdynctrl-udev-rules.nix
index a808429c99968..8dadbd53b9891 100644
--- a/nixos/modules/hardware/video/uvcvideo/uvcdynctrl-udev-rules.nix
+++ b/nixos/modules/hardware/video/uvcvideo/uvcdynctrl-udev-rules.nix
@@ -23,8 +23,10 @@ in
 runCommand "uvcdynctrl-udev-rules-${version}"
 {
   inherit dataPath;
-  buildInputs = [
+  nativeBuildInputs = [
     makeWrapper
+  ];
+  buildInputs = [
     libwebcam
   ];
   dontPatchELF = true;
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index dec66e395aade..494df03e3a367 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -653,6 +653,7 @@
   ./services/misc/svnserve.nix
   ./services/misc/synergy.nix
   ./services/misc/sysprof.nix
+  ./services/misc/tandoor-recipes.nix
   ./services/misc/taskserver
   ./services/misc/tiddlywiki.nix
   ./services/misc/tp-auto-kbbl.nix
@@ -721,7 +722,7 @@
   ./services/network-filesystems/drbd.nix
   ./services/network-filesystems/glusterfs.nix
   ./services/network-filesystems/kbfs.nix
-  ./services/network-filesystems/ipfs.nix
+  ./services/network-filesystems/kubo.nix
   ./services/network-filesystems/litestream/default.nix
   ./services/network-filesystems/netatalk.nix
   ./services/network-filesystems/nfsd.nix
@@ -959,6 +960,7 @@
   ./services/networking/tinc.nix
   ./services/networking/tinydns.nix
   ./services/networking/tftpd.nix
+  ./services/networking/tmate-ssh-server.nix
   ./services/networking/trickster.nix
   ./services/networking/tox-bootstrapd.nix
   ./services/networking/tox-node.nix
@@ -1002,6 +1004,7 @@
   ./services/security/certmgr.nix
   ./services/security/cfssl.nix
   ./services/security/clamav.nix
+  ./services/security/endlessh-go.nix
   ./services/security/fail2ban.nix
   ./services/security/fprintd.nix
   ./services/security/haka.nix
diff --git a/nixos/modules/profiles/base.nix b/nixos/modules/profiles/base.nix
index 33dd80d7c5abd..c415ca857437b 100644
--- a/nixos/modules/profiles/base.nix
+++ b/nixos/modules/profiles/base.nix
@@ -1,7 +1,7 @@
 # This module defines the software packages included in the "minimal"
 # installation CD.  It might be useful elsewhere.
 
-{ lib, pkgs, ... }:
+{ config, lib, pkgs, ... }:
 
 {
   # Include some utilities that are useful for installing or repairing
@@ -51,7 +51,9 @@
   ];
 
   # Include support for various filesystems.
-  boot.supportedFilesystems = [ "btrfs" "reiserfs" "vfat" "f2fs" "xfs" "zfs" "ntfs" "cifs" ];
+  boot.supportedFilesystems =
+    [ "btrfs" "reiserfs" "vfat" "f2fs" "xfs" "ntfs" "cifs" ] ++
+    lib.optional (lib.meta.availableOn pkgs.stdenv.hostPlatform config.boot.zfs.package) "zfs";
 
   # Configure host id for ZFS to work
   networking.hostId = lib.mkDefault "8425e349";
diff --git a/nixos/modules/programs/mininet.nix b/nixos/modules/programs/mininet.nix
index 0b7e82cc5bd7d..02272729d233c 100644
--- a/nixos/modules/programs/mininet.nix
+++ b/nixos/modules/programs/mininet.nix
@@ -14,7 +14,7 @@ let
   pyEnv = pkgs.python.withPackages(ps: [ ps.mininet-python ]);
 
   mnexecWrapped = pkgs.runCommand "mnexec-wrapper"
-    { buildInputs = [ pkgs.makeWrapper pkgs.pythonPackages.wrapPython ]; }
+    { nativeBuildInputs = [ pkgs.makeWrapper pkgs.pythonPackages.wrapPython ]; }
     ''
       makeWrapper ${pkgs.mininet}/bin/mnexec \
         $out/bin/mnexec \
diff --git a/nixos/modules/programs/ssh.nix b/nixos/modules/programs/ssh.nix
index 865c0becdbcf5..36b724e04bde6 100644
--- a/nixos/modules/programs/ssh.nix
+++ b/nixos/modules/programs/ssh.nix
@@ -14,6 +14,7 @@ let
     ''
       #! ${pkgs.runtimeShell} -e
       export DISPLAY="$(systemctl --user show-environment | ${pkgs.gnused}/bin/sed 's/^DISPLAY=\(.*\)/\1/; t; d')"
+      export WAYLAND_DISPLAY="$(systemctl --user show-environment | ${pkgs.gnused}/bin/sed 's/^WAYLAND_DISPLAY=\(.*\)/\1/; t; d')"
       exec ${askPassword} "$@"
     '';
 
diff --git a/nixos/modules/security/acme/default.nix b/nixos/modules/security/acme/default.nix
index 377b543c58136..e9299fb1b3adb 100644
--- a/nixos/modules/security/acme/default.nix
+++ b/nixos/modules/security/acme/default.nix
@@ -190,7 +190,7 @@ let
     );
     renewOpts = escapeShellArgs (
       commonOpts
-      ++ [ "renew" ]
+      ++ [ "renew" "--no-random-sleep" ]
       ++ optionals data.ocspMustStaple [ "--must-staple" ]
       ++ data.extraLegoRenewFlags
     );
@@ -223,9 +223,9 @@ let
         # have many certificates, the renewals are distributed over
         # the course of the day to avoid rate limits.
         AccuracySec = "${toString (_24hSecs / numCerts)}s";
-
         # Skew randomly within the day, per https://letsencrypt.org/docs/integration-guide/.
         RandomizedDelaySec = "24h";
+        FixedRandomDelay = true;
       };
     };
 
@@ -325,6 +325,7 @@ let
         '');
       } // optionalAttrs (data.listenHTTP != null && toInt (elemAt (splitString ":" data.listenHTTP) 1) < 1024) {
         CapabilityBoundingSet = [ "CAP_NET_BIND_SERVICE" ];
+        AmbientCapabilities = [ "CAP_NET_BIND_SERVICE" ];
       };
 
       # Working directory will be /tmp
@@ -376,7 +377,8 @@ let
 
         # Check if we can renew.
         # We can only renew if the list of domains has not changed.
-        if cmp -s domainhash.txt certificates/domainhash.txt && [ -e 'certificates/${keyName}.key' -a -e 'certificates/${keyName}.crt' -a -n "$(ls -1 accounts)" ]; then
+        # We also need an account key. Avoids #190493
+        if cmp -s domainhash.txt certificates/domainhash.txt && [ -e 'certificates/${keyName}.key' -a -e 'certificates/${keyName}.crt' -a -n "$(find accounts -name '${data.email}.key')" ]; then
 
           # Even if a cert is not expired, it may be revoked by the CA.
           # Try to renew, and silently fail if the cert is not expired.
diff --git a/nixos/modules/security/acme/doc.xml b/nixos/modules/security/acme/doc.xml
index 4817f7a7fc6bf..1439594a5aca6 100644
--- a/nixos/modules/security/acme/doc.xml
+++ b/nixos/modules/security/acme/doc.xml
@@ -237,8 +237,8 @@ services.bind = {
 
 <programlisting>
 systemd.services.dns-rfc2136-conf = {
-  requiredBy = ["acme-example.com.service", "bind.service"];
-  before = ["acme-example.com.service", "bind.service"];
+  requiredBy = ["acme-example.com.service" "bind.service"];
+  before = ["acme-example.com.service" "bind.service"];
   unitConfig = {
     ConditionPathExists = "!/var/lib/secrets/dnskeys.conf";
   };
@@ -249,18 +249,19 @@ systemd.services.dns-rfc2136-conf = {
   path = [ pkgs.bind ];
   script = ''
     mkdir -p /var/lib/secrets
+    chmod 755 /var/lib/secrets
     tsig-keygen rfc2136key.example.com &gt; /var/lib/secrets/dnskeys.conf
     chown named:root /var/lib/secrets/dnskeys.conf
     chmod 400 /var/lib/secrets/dnskeys.conf
 
-    # Copy the secret value from the dnskeys.conf, and put it in
-    # RFC2136_TSIG_SECRET below
+    # extract secret value from the dnskeys.conf
+    while read x y; do if [ "$x" = "secret" ]; then secret="''${y:1:''${#y}-3}"; fi; done &lt; /var/lib/secrets/dnskeys.conf
 
     cat &gt; /var/lib/secrets/certs.secret &lt;&lt; EOF
     RFC2136_NAMESERVER='127.0.0.1:53'
     RFC2136_TSIG_ALGORITHM='hmac-sha256.'
     RFC2136_TSIG_KEY='rfc2136key.example.com'
-    RFC2136_TSIG_SECRET='your secret key'
+    RFC2136_TSIG_SECRET='$secret'
     EOF
     chmod 400 /var/lib/secrets/certs.secret
   '';
diff --git a/nixos/modules/services/audio/mopidy.nix b/nixos/modules/services/audio/mopidy.nix
index 50ee9a824515e..40e8679f53d74 100644
--- a/nixos/modules/services/audio/mopidy.nix
+++ b/nixos/modules/services/audio/mopidy.nix
@@ -14,7 +14,7 @@ let
     name = "mopidy-with-extensions-${mopidy.version}";
     paths = closePropagation cfg.extensionPackages;
     pathsToLink = [ "/${mopidyPackages.python.sitePackages}" ];
-    buildInputs = [ makeWrapper ];
+    nativeBuildInputs = [ makeWrapper ];
     postBuild = ''
       makeWrapper ${mopidy}/bin/mopidy $out/bin/mopidy \
         --prefix PYTHONPATH : $out/${mopidyPackages.python.sitePackages}
diff --git a/nixos/modules/services/backup/borgbackup.nix b/nixos/modules/services/backup/borgbackup.nix
index f02e15f2b9882..7b29eb41e72a0 100644
--- a/nixos/modules/services/backup/borgbackup.nix
+++ b/nixos/modules/services/backup/borgbackup.nix
@@ -116,7 +116,7 @@ let
       original, name, set ? {}
     }:
     pkgs.runCommand "${name}-wrapper" {
-      buildInputs = [ pkgs.makeWrapper ];
+      nativeBuildInputs = [ pkgs.makeWrapper ];
     } (with lib; ''
       makeWrapper "${original}" "$out/bin/${name}" \
         ${concatStringsSep " \\\n " (mapAttrsToList (name: value: ''--set ${name} "${value}"'') set)}
diff --git a/nixos/modules/services/continuous-integration/github-runner.nix b/nixos/modules/services/continuous-integration/github-runner.nix
index 9abe13a89af18..2ece75722a1d3 100644
--- a/nixos/modules/services/continuous-integration/github-runner.nix
+++ b/nixos/modules/services/continuous-integration/github-runner.nix
@@ -200,46 +200,65 @@ in
 
               ${lines}
             '';
-            currentConfigPath = "$STATE_DIRECTORY/.nixos-current-config.json";
             runnerRegistrationConfig = getAttrs [ "name" "tokenFile" "url" "runnerGroup" "extraLabels" "ephemeral" ] cfg;
             newConfigPath = builtins.toFile "${svcName}-config.json" (builtins.toJSON runnerRegistrationConfig);
-            newConfigTokenFilename = ".new-token";
+            currentConfigPath = "$STATE_DIRECTORY/.nixos-current-config.json";
+            newConfigTokenPath= "$STATE_DIRECTORY/.new-token";
+            currentConfigTokenPath = "$STATE_DIRECTORY/${currentConfigTokenFilename}";
+
             runnerCredFiles = [
               ".credentials"
               ".credentials_rsaparams"
               ".runner"
             ];
             unconfigureRunner = writeScript "unconfigure" ''
-              differs=
-
-              if [[ "$(ls -A "$STATE_DIRECTORY")" ]]; then
-                # State directory is not empty
-                # Set `differs = 1` if current and new runner config differ or if `currentConfigPath` does not exist
-                ${pkgs.diffutils}/bin/diff -q '${newConfigPath}' "${currentConfigPath}" >/dev/null 2>&1 || differs=1
-                # Also trigger a registration if the token content changed
-                ${pkgs.diffutils}/bin/diff -q \
-                  "$STATE_DIRECTORY"/${currentConfigTokenFilename} \
-                  ${escapeShellArg cfg.tokenFile} \
-                  >/dev/null 2>&1 || differs=1
-                # If .credentials does not exist, assume a previous run de-registered the runner on stop (ephemeral mode)
-                [[ ! -f "$STATE_DIRECTORY/.credentials" ]] && differs=1
-              fi
-
-              if [[ -n "$differs" ]]; then
-                echo "Config has changed, removing old runner state."
-                # In ephemeral mode, the runner deletes the `.credentials` file after de-registering it with GitHub
-                [[ -f "$STATE_DIRECTORY/.credentials" ]] && echo "The old runner will still appear in the GitHub Actions UI." \
-                  "You have to remove it manually."
-                find "$STATE_DIRECTORY/" -mindepth 1 -delete
-
+              copy_tokens() {
                 # Copy the configured token file to the state dir and allow the service user to read the file
-                install --mode=666 ${escapeShellArg cfg.tokenFile} "$STATE_DIRECTORY/${newConfigTokenFilename}"
+                install --mode=666 ${escapeShellArg cfg.tokenFile} "${newConfigTokenPath}"
                 # Also copy current file to allow for a diff on the next start
-                install --mode=600 ${escapeShellArg cfg.tokenFile} "$STATE_DIRECTORY/${currentConfigTokenFilename}"
+                install --mode=600 ${escapeShellArg cfg.tokenFile} "${currentConfigTokenPath}"
+              }
+
+              clean_state() {
+                find "$STATE_DIRECTORY/" -mindepth 1 -delete
+                copy_tokens
+              }
+
+              diff_config() {
+                changed=0
+
+                # Check for module config changes
+                [[ -f "${currentConfigPath}" ]] \
+                  && ${pkgs.diffutils}/bin/diff -q '${newConfigPath}' "${currentConfigPath}" >/dev/null 2>&1 \
+                  || changed=1
+
+                # Also check the content of the token file
+                [[ -f "${currentConfigTokenPath}" ]] \
+                  && ${pkgs.diffutils}/bin/diff -q "${currentConfigTokenPath}" ${escapeShellArg cfg.tokenFile} >/dev/null 2>&1 \
+                  || changed=1
+
+                # If the config has changed, remove old state and copy tokens
+                if [[ "$changed" -eq 1 ]]; then
+                  echo "Config has changed, removing old runner state."
+                  echo "The old runner will still appear in the GitHub Actions UI." \
+                       "You have to remove it manually."
+                  clean_state
+                fi
+              }
+
+              if [[ "${optionalString cfg.ephemeral "1"}" ]]; then
+                # In ephemeral mode, we always want to start with a clean state
+                clean_state
+              elif [[ "$(ls -A "$STATE_DIRECTORY")" ]]; then
+                # There are state files from a previous run; diff them to decide if we need a new registration
+                diff_config
+              else
+                # The state directory is entirely empty which indicates a first start
+                copy_tokens
               fi
             '';
             configureRunner = writeScript "configure" ''
-              if [[ -e "$STATE_DIRECTORY/${newConfigTokenFilename}" ]]; then
+              if [[ -e "${newConfigTokenPath}" ]]; then
                 echo "Configuring GitHub Actions Runner"
 
                 args=(
@@ -256,7 +275,7 @@ in
 
                 # If the token file contains a PAT (i.e., it starts with "ghp_"), we have to use the --pat option,
                 # if it is not a PAT, we assume it contains a registration token and use the --token option
-                token=$(<"$STATE_DIRECTORY/${newConfigTokenFilename}")
+                token=$(<"${newConfigTokenPath}")
                 if [[ "$token" =~ ^ghp_* ]]; then
                   args+=(--pat "$token")
                 else
@@ -271,7 +290,7 @@ in
                 rm    -rf "$STATE_DIRECTORY/_diag/"
 
                 # Cleanup token from config
-                rm "$STATE_DIRECTORY/${newConfigTokenFilename}"
+                rm "${newConfigTokenPath}"
 
                 # Symlink to new config
                 ln -s '${newConfigPath}' "${currentConfigPath}"
@@ -305,8 +324,8 @@ in
         WorkingDirectory = runtimeDir;
 
         InaccessiblePaths = [
-          # Token file path given in the configuration
-          cfg.tokenFile
+          # Token file path given in the configuration, if visible to the service
+          "-${cfg.tokenFile}"
           # Token file in the state directory
           "${stateDir}/${currentConfigTokenFilename}"
         ];
diff --git a/nixos/modules/services/continuous-integration/hydra/default.nix b/nixos/modules/services/continuous-integration/hydra/default.nix
index 8b5c1228c5238..7114795750423 100644
--- a/nixos/modules/services/continuous-integration/hydra/default.nix
+++ b/nixos/modules/services/continuous-integration/hydra/default.nix
@@ -42,7 +42,7 @@ let
     makeWrapperArgs = concatStringsSep " " (mapAttrsToList (key: value: "--set \"${key}\" \"${value}\"") hydraEnv);
   in pkgs.buildEnv rec {
     name = "hydra-env";
-    buildInputs = [ pkgs.makeWrapper ];
+    nativeBuildInputs = [ pkgs.makeWrapper ];
     paths = [ cfg.package ];
 
     postBuild = ''
diff --git a/nixos/modules/services/hardware/fwupd.nix b/nixos/modules/services/hardware/fwupd.nix
index 2249f866803ae..98f837bd78245 100644
--- a/nixos/modules/services/hardware/fwupd.nix
+++ b/nixos/modules/services/hardware/fwupd.nix
@@ -33,18 +33,26 @@ let
       mkEtcFile = p: nameValuePair (mkName p) { source = p; };
     in listToAttrs (map mkEtcFile cfg.extraTrustedKeys);
 
-  # We cannot include the file in $out and rely on filesInstalledToEtc
-  # to install it because it would create a cyclic dependency between
-  # the outputs. We also need to enable the remote,
-  # which should not be done by default.
-  testRemote = if cfg.enableTestRemote then {
-    "fwupd/remotes.d/fwupd-tests.conf" = {
-      source = pkgs.runCommand "fwupd-tests-enabled.conf" {} ''
+  enableRemote = base: remote: {
+    "fwupd/remotes.d/${remote}.conf" = {
+      source = pkgs.runCommand "${remote}-enabled.conf" {} ''
         sed "s,^Enabled=false,Enabled=true," \
-        "${cfg.package.installedTests}/etc/fwupd/remotes.d/fwupd-tests.conf" > "$out"
+        "${base}/etc/fwupd/remotes.d/${remote}.conf" > "$out"
       '';
     };
-  } else {};
+  };
+  remotes = (foldl'
+    (configFiles: remote: configFiles // (enableRemote cfg.package remote))
+    {}
+    cfg.extraRemotes
+  ) // (
+    # We cannot include the file in $out and rely on filesInstalledToEtc
+    # to install it because it would create a cyclic dependency between
+    # the outputs. We also need to enable the remote,
+    # which should not be done by default.
+    if cfg.enableTestRemote then (enableRemote cfg.package.installedTests "fwupd-tests") else {}
+  );
+
 in {
 
   ###### interface
@@ -86,6 +94,15 @@ in {
         '';
       };
 
+      extraRemotes = mkOption {
+        type = with types; listOf str;
+        default = [];
+        example = [ "lvfs-testing" ];
+        description = lib.mdDoc ''
+          Enables extra remotes in fwupd. See `/etc/fwupd/remotes.d`.
+        '';
+      };
+
       enableTestRemote = mkOption {
         type = types.bool;
         default = false;
@@ -119,7 +136,7 @@ in {
     environment.systemPackages = [ cfg.package ];
 
     # customEtc overrides some files from the package
-    environment.etc = originalEtc // customEtc // extraTrustedKeys // testRemote;
+    environment.etc = originalEtc // customEtc // extraTrustedKeys // remotes;
 
     services.dbus.packages = [ cfg.package ];
 
diff --git a/nixos/modules/services/hardware/udev.nix b/nixos/modules/services/hardware/udev.nix
index fa9d06b441afb..4b962da0c037d 100644
--- a/nixos/modules/services/hardware/udev.nix
+++ b/nixos/modules/services/hardware/udev.nix
@@ -171,10 +171,10 @@ let
       mv etc/udev/hwdb.bin $out
     '';
 
-  compressFirmware = if config.boot.kernelPackages.kernelAtLeast "5.3" then
-    pkgs.compressFirmwareXz
+  compressFirmware = firmware: if (config.boot.kernelPackages.kernelAtLeast "5.3" && (firmware.compressFirmware or true)) then
+    pkgs.compressFirmwareXz firmware
   else
-    id;
+    id firmware;
 
   # Udev has a 512-character limit for ENV{PATH}, so create a symlink
   # tree to work around this.
diff --git a/nixos/modules/services/matrix/dendrite.nix b/nixos/modules/services/matrix/dendrite.nix
index 9279af246f41e..a5fea3da48446 100644
--- a/nixos/modules/services/matrix/dendrite.nix
+++ b/nixos/modules/services/matrix/dendrite.nix
@@ -195,6 +195,25 @@ in
             '';
           };
         };
+        options.sync_api.search = {
+          enable = lib.mkEnableOption (lib.mdDoc "Dendrite's full-text search engine");
+          index_path = lib.mkOption {
+            type = lib.types.str;
+            default = "${workingDir}/searchindex";
+            description = lib.mdDoc ''
+              The path the search index will be created in.
+            '';
+          };
+          language = lib.mkOption {
+            type = lib.types.str;
+            default = "en";
+            description = lib.mdDoc ''
+              The language most likely to be used on the server - used when indexing, to
+              ensure the returned results match expectations. A full list of possible languages
+              can be found at https://github.com/blevesearch/bleve/tree/master/analysis/lang
+            '';
+          };
+        };
         options.user_api = {
           account_database = {
             connection_string = lib.mkOption {
diff --git a/nixos/modules/services/misc/etebase-server.nix b/nixos/modules/services/misc/etebase-server.nix
index 76c7c6596c85d..c3723d188146b 100644
--- a/nixos/modules/services/misc/etebase-server.nix
+++ b/nixos/modules/services/misc/etebase-server.nix
@@ -162,7 +162,7 @@ in
 
     environment.systemPackages = with pkgs; [
       (runCommand "etebase-server" {
-        buildInputs = [ makeWrapper ];
+        nativeBuildInputs = [ makeWrapper ];
       } ''
         makeWrapper ${pythonEnv}/bin/etebase-server \
           $out/bin/etebase-server \
diff --git a/nixos/modules/services/misc/gitlab.nix b/nixos/modules/services/misc/gitlab.nix
index e5de3a2b6ad1b..4988517a9b66a 100644
--- a/nixos/modules/services/misc/gitlab.nix
+++ b/nixos/modules/services/misc/gitlab.nix
@@ -6,6 +6,9 @@ let
   cfg = config.services.gitlab;
   opt = options.services.gitlab;
 
+  toml = pkgs.formats.toml {};
+  yaml = pkgs.formats.yaml {};
+
   ruby = cfg.packages.gitlab.ruby;
 
   postgresqlPackage = if config.services.postgresql.enable then
@@ -89,17 +92,18 @@ let
     repos_path = "${cfg.statePath}/repositories";
     secret_file = "${cfg.statePath}/gitlab_shell_secret";
     log_file = "${cfg.statePath}/log/gitlab-shell.log";
-    redis = {
-      bin = "${pkgs.redis}/bin/redis-cli";
-      host = "127.0.0.1";
-      port = config.services.redis.servers.gitlab.port;
-      database = 0;
-      namespace = "resque:gitlab";
-    };
   };
 
   redisConfig.production.url = cfg.redisUrl;
 
+  cableYml = yaml.generate "cable.yml" {
+    production = {
+      adapter = "redis";
+      url = cfg.redisUrl;
+      channel_prefix = "gitlab_production";
+    };
+  };
+
   pagesArgs = [
     "-pages-domain" gitlabConfig.production.pages.host
     "-pages-root" "${gitlabConfig.production.shared.path}/pages"
@@ -188,16 +192,27 @@ let
     MALLOC_ARENA_MAX = "2";
   } // cfg.extraEnv;
 
+  runtimeDeps = with pkgs; [
+    nodejs
+    gzip
+    git
+    gnutar
+    postgresqlPackage
+    coreutils
+    procps
+    findutils # Needed for gitlab:cleanup:orphan_job_artifact_files
+  ];
+
   gitlab-rake = pkgs.stdenv.mkDerivation {
     name = "gitlab-rake";
-    buildInputs = [ pkgs.makeWrapper ];
+    nativeBuildInputs = [ pkgs.makeWrapper ];
     dontBuild = true;
     dontUnpack = true;
     installPhase = ''
       mkdir -p $out/bin
       makeWrapper ${cfg.packages.gitlab.rubyEnv}/bin/rake $out/bin/gitlab-rake \
           ${concatStrings (mapAttrsToList (name: value: "--set ${name} '${value}' ") gitlabEnv)} \
-          --set PATH '${lib.makeBinPath [ pkgs.nodejs pkgs.gzip pkgs.git pkgs.gnutar postgresqlPackage pkgs.coreutils pkgs.procps ]}:$PATH' \
+          --set PATH '${lib.makeBinPath runtimeDeps}:$PATH' \
           --set RAKEOPT '-f ${cfg.packages.gitlab}/share/gitlab/Rakefile' \
           --chdir '${cfg.packages.gitlab}/share/gitlab'
      '';
@@ -205,14 +220,14 @@ let
 
   gitlab-rails = pkgs.stdenv.mkDerivation {
     name = "gitlab-rails";
-    buildInputs = [ pkgs.makeWrapper ];
+    nativeBuildInputs = [ pkgs.makeWrapper ];
     dontBuild = true;
     dontUnpack = true;
     installPhase = ''
       mkdir -p $out/bin
       makeWrapper ${cfg.packages.gitlab.rubyEnv}/bin/rails $out/bin/gitlab-rails \
           ${concatStrings (mapAttrsToList (name: value: "--set ${name} '${value}' ") gitlabEnv)} \
-          --set PATH '${lib.makeBinPath [ pkgs.nodejs pkgs.gzip pkgs.git pkgs.gnutar postgresqlPackage pkgs.coreutils pkgs.procps ]}:$PATH' \
+          --set PATH '${lib.makeBinPath runtimeDeps}:$PATH' \
           --chdir '${cfg.packages.gitlab}/share/gitlab'
      '';
   };
@@ -468,9 +483,9 @@ in {
 
       redisUrl = mkOption {
         type = types.str;
-        default = "redis://localhost:${toString config.services.redis.servers.gitlab.port}/";
-        defaultText = literalExpression ''redis://localhost:''${toString config.services.redis.servers.gitlab.port}/'';
-        description = lib.mdDoc "Redis URL for all GitLab services except gitlab-shell";
+        default = "unix:/run/gitlab/redis.sock";
+        example = "redis://localhost:6379/";
+        description = lib.mdDoc "Redis URL for all GitLab services.";
       };
 
       extraGitlabRb = mkOption {
@@ -867,8 +882,41 @@ in {
         };
       };
 
+      workhorse.config = mkOption {
+        type = toml.type;
+        default = {};
+        example = literalExpression ''
+          {
+            object_storage.provider = "AWS";
+            object_storage.s3 = {
+              aws_access_key_id = "AKIAXXXXXXXXXXXXXXXX";
+              aws_secret_access_key = { _secret = "/var/keys/aws_secret_access_key"; };
+            };
+          };
+        '';
+        description = lib.mdDoc ''
+          Configuration options to add to Workhorse's configuration
+          file.
+
+          See
+          <https://gitlab.com/gitlab-org/gitlab/-/blob/master/workhorse/config.toml.example>
+          and
+          <https://docs.gitlab.com/ee/development/workhorse/configuration.html>
+          for examples and option documentation.
+
+          Options containing secret data should be set to an attribute
+          set containing the attribute `_secret` - a string pointing
+          to a file containing the value the option should be set
+          to. See the example to get a better picture of this: in the
+          resulting configuration file, the
+          `object_storage.s3.aws_secret_access_key` key will be set to
+          the contents of the {file}`/var/keys/aws_secret_access_key`
+          file.
+        '';
+      };
+
       extraConfig = mkOption {
-        type = types.attrs;
+        type = yaml.type;
         default = {};
         example = literalExpression ''
           {
@@ -972,8 +1020,9 @@ in {
     # Redis is required for the sidekiq queue runner.
     services.redis.servers.gitlab = {
       enable = mkDefault true;
-      port = mkDefault 31636;
-      bind = mkDefault "127.0.0.1";
+      user = mkDefault cfg.user;
+      unixSocket = mkDefault "/run/gitlab/redis.sock";
+      unixSocketPerm = mkDefault 770;
     };
 
     # We use postgres as the main data store.
@@ -1062,6 +1111,7 @@ in {
     # Ensure Docker Registry launches after the certificate generation job
     systemd.services.docker-registry = optionalAttrs cfg.registry.enable {
       wants = [ "gitlab-registry-cert.service" ];
+      after = [ "gitlab-registry-cert.service" ];
     };
 
     # Enable Docker Registry, if GitLab-Container Registry is enabled
@@ -1115,6 +1165,7 @@ in {
       "d ${gitlabConfig.production.shared.path}/lfs-objects 0750 ${cfg.user} ${cfg.group} -"
       "d ${gitlabConfig.production.shared.path}/packages 0750 ${cfg.user} ${cfg.group} -"
       "d ${gitlabConfig.production.shared.path}/pages 0750 ${cfg.user} ${cfg.group} -"
+      "d ${gitlabConfig.production.shared.path}/registry 0750 ${cfg.user} ${cfg.group} -"
       "d ${gitlabConfig.production.shared.path}/terraform_state 0750 ${cfg.user} ${cfg.group} -"
       "L+ /run/gitlab/config - - - - ${cfg.statePath}/config"
       "L+ /run/gitlab/log - - - - ${cfg.statePath}/log"
@@ -1168,6 +1219,7 @@ in {
           cp -rf --no-preserve=mode ${cfg.packages.gitlab}/share/gitlab/config.dist/* ${cfg.statePath}/config
           cp -rf --no-preserve=mode ${cfg.packages.gitlab}/share/gitlab/db/* ${cfg.statePath}/db
           ln -sf ${extraGitlabRb} ${cfg.statePath}/config/initializers/extra-gitlab.rb
+          ln -sf ${cableYml} ${cfg.statePath}/config/cable.yml
 
           ${cfg.packages.gitlab-shell}/bin/install
 
@@ -1357,6 +1409,7 @@ in {
       wantedBy = [ "gitlab.target" ];
       partOf = [ "gitlab.target" ];
       path = with pkgs; [
+        remarshal
         exiftool
         gitPackage
         gnutar
@@ -1371,6 +1424,17 @@ in {
         TimeoutSec = "infinity";
         Restart = "on-failure";
         WorkingDirectory = gitlabEnv.HOME;
+        ExecStartPre = pkgs.writeShellScript "gitlab-workhorse-pre-start" ''
+          set -o errexit -o pipefail -o nounset
+          shopt -s dotglob nullglob inherit_errexit
+
+          ${utils.genJqSecretsReplacementSnippet
+              cfg.workhorse.config
+              "${cfg.statePath}/config/gitlab-workhorse.json"}
+
+          json2toml "${cfg.statePath}/config/gitlab-workhorse.json" "${cfg.statePath}/config/gitlab-workhorse.toml"
+          rm "${cfg.statePath}/config/gitlab-workhorse.json"
+        '';
         ExecStart =
           "${cfg.packages.gitlab-workhorse}/bin/workhorse "
           + "-listenUmask 0 "
@@ -1378,6 +1442,7 @@ in {
           + "-listenAddr /run/gitlab/gitlab-workhorse.socket "
           + "-authSocket ${gitlabSocket} "
           + "-documentRoot ${cfg.packages.gitlab}/share/gitlab/public "
+          + "-config ${cfg.statePath}/config/gitlab-workhorse.toml "
           + "-secretPath ${cfg.statePath}/.gitlab_workhorse_secret";
       };
     };
diff --git a/nixos/modules/services/misc/gitolite.nix b/nixos/modules/services/misc/gitolite.nix
index 88b9ac4a0a33d..012abda2d76f9 100644
--- a/nixos/modules/services/misc/gitolite.nix
+++ b/nixos/modules/services/misc/gitolite.nix
@@ -101,6 +101,14 @@ in
         '';
       };
 
+      description = mkOption {
+        type = types.str;
+        default = "Gitolite user";
+        description = lib.mdDoc ''
+          Gitolite user account's description.
+        '';
+      };
+
       group = mkOption {
         type = types.str;
         default = "gitolite";
@@ -145,7 +153,7 @@ in
     '';
 
     users.users.${cfg.user} = {
-      description     = "Gitolite user";
+      description     = cfg.description;
       home            = cfg.dataDir;
       uid             = config.ids.uids.gitolite;
       group           = cfg.group;
diff --git a/nixos/modules/services/misc/tandoor-recipes.nix b/nixos/modules/services/misc/tandoor-recipes.nix
new file mode 100644
index 0000000000000..a349bcac93214
--- /dev/null
+++ b/nixos/modules/services/misc/tandoor-recipes.nix
@@ -0,0 +1,144 @@
+{ config, pkgs, lib, ... }:
+
+with lib;
+let
+  cfg = config.services.tandoor-recipes;
+  pkg = cfg.package;
+
+  # SECRET_KEY through an env file
+  env = {
+    GUNICORN_CMD_ARGS = "--bind=${cfg.address}:${toString cfg.port}";
+    DEBUG = "0";
+    MEDIA_ROOT = "/var/lib/tandoor-recipes";
+  } // optionalAttrs (config.time.timeZone != null) {
+    TIMEZONE = config.time.timeZone;
+  } // (
+    lib.mapAttrs (_: toString) cfg.extraConfig
+  );
+
+  manage =
+    let
+      setupEnv = lib.concatStringsSep "\n" (mapAttrsToList (name: val: "export ${name}=\"${val}\"") env);
+    in
+    pkgs.writeShellScript "manage" ''
+      ${setupEnv}
+      exec ${pkg}/bin/tandoor-recipes "$@"
+    '';
+in
+{
+  meta.maintainers = with maintainers; [ ambroisie ];
+
+  options.services.tandoor-recipes = {
+    enable = mkOption {
+      type = lib.types.bool;
+      default = false;
+      description = lib.mdDoc ''
+        Enable Tandoor Recipes.
+
+        When started, the Tandoor Recipes database is automatically created if
+        it doesn't exist and updated if the package has changed. Both tasks are
+        achieved by running a Django migration.
+
+        A script to manage the instance (by wrapping Django's manage.py) is linked to
+        `/var/lib/tandoor-recipes/tandoor-recipes-manage`.
+      '';
+    };
+
+    address = mkOption {
+      type = types.str;
+      default = "localhost";
+      description = lib.mdDoc "Web interface address.";
+    };
+
+    port = mkOption {
+      type = types.port;
+      default = 8080;
+      description = lib.mdDoc "Web interface port.";
+    };
+
+    extraConfig = mkOption {
+      type = types.attrs;
+      default = { };
+      description = lib.mdDoc ''
+        Extra tandoor recipes config options.
+
+        See [the example dot-env file](https://raw.githubusercontent.com/vabene1111/recipes/master/.env.template)
+        for available options.
+      '';
+      example = {
+        ENABLE_SIGNUP = "1";
+      };
+    };
+
+    package = mkOption {
+      type = types.package;
+      default = pkgs.tandoor-recipes;
+      defaultText = literalExpression "pkgs.tandoor-recipes";
+      description = lib.mdDoc "The Tandoor Recipes package to use.";
+    };
+  };
+
+  config = mkIf cfg.enable {
+    systemd.services.tandoor-recipes = {
+      description = "Tandoor Recipes server";
+
+      serviceConfig = {
+        ExecStart = ''
+          ${pkg.python.pkgs.gunicorn}/bin/gunicorn recipes.wsgi
+        '';
+        Restart = "on-failure";
+
+        User = "tandoor_recipes";
+        DynamicUser = true;
+        StateDirectory = "tandoor-recipes";
+        WorkingDirectory = "/var/lib/tandoor-recipes";
+        RuntimeDirectory = "tandoor-recipes";
+
+        BindReadOnlyPaths = [
+          "${config.environment.etc."ssl/certs/ca-certificates.crt".source}:/etc/ssl/certs/ca-certificates.crt"
+          builtins.storeDir
+          "-/etc/resolv.conf"
+          "-/etc/nsswitch.conf"
+          "-/etc/hosts"
+          "-/etc/localtime"
+          "-/run/postgresql"
+        ];
+        CapabilityBoundingSet = "";
+        LockPersonality = true;
+        MemoryDenyWriteExecute = true;
+        PrivateDevices = true;
+        PrivateUsers = true;
+        ProtectClock = true;
+        ProtectControlGroups = true;
+        ProtectHome = true;
+        ProtectHostname = true;
+        ProtectKernelLogs = true;
+        ProtectKernelModules = true;
+        ProtectKernelTunables = true;
+        RestrictAddressFamilies = [ "AF_UNIX" "AF_INET" "AF_INET6" ];
+        RestrictNamespaces = true;
+        RestrictRealtime = true;
+        SystemCallArchitectures = "native";
+        # gunicorn needs setuid
+        SystemCallFilter = [ "@system-service" "~@privileged" "@resources" "@setuid" "@keyring" ];
+        UMask = "0066";
+      } // lib.optionalAttrs (cfg.port < 1024) {
+        AmbientCapabilities = [ "CAP_NET_BIND_SERVICE" ];
+        CapabilityBoundingSet = [ "CAP_NET_BIND_SERVICE" ];
+      };
+
+      wantedBy = [ "multi-user.target" ];
+
+      preStart = ''
+        ln -sf ${manage} tandoor-recipes-manage
+
+        # Let django migrate the DB as needed
+        ${pkg}/bin/tandoor-recipes migrate
+      '';
+
+      environment = env // {
+        PYTHONPATH = "${pkg.python.pkgs.makePythonPath pkg.propagatedBuildInputs}:${pkg}/lib/tandoor-recipes";
+      };
+    };
+  };
+}
diff --git a/nixos/modules/services/network-filesystems/ipfs.nix b/nixos/modules/services/network-filesystems/kubo.nix
index b9cf9ea882ff2..9942e4e41ad64 100644
--- a/nixos/modules/services/network-filesystems/ipfs.nix
+++ b/nixos/modules/services/network-filesystems/kubo.nix
@@ -1,9 +1,9 @@
 { config, lib, pkgs, utils, ... }:
 with lib;
 let
-  cfg = config.services.ipfs;
+  cfg = config.services.kubo;
 
-  ipfsFlags = utils.escapeSystemdExecArgs (
+  kuboFlags = utils.escapeSystemdExecArgs (
     optional cfg.autoMount "--mount" ++
     optional cfg.enableGC "--enable-gc" ++
     optional (cfg.serviceFdlimit != null) "--manage-fdlimit=false" ++
@@ -50,27 +50,27 @@ in
 
   options = {
 
-    services.ipfs = {
+    services.kubo = {
 
       enable = mkEnableOption (lib.mdDoc "Interplanetary File System (WARNING: may cause severe network degredation)");
 
       package = mkOption {
         type = types.package;
-        default = pkgs.ipfs;
-        defaultText = literalExpression "pkgs.ipfs";
-        description = lib.mdDoc "Which IPFS package to use.";
+        default = pkgs.kubo;
+        defaultText = literalExpression "pkgs.kubo";
+        description = lib.mdDoc "Which Kubo package to use.";
       };
 
       user = mkOption {
         type = types.str;
         default = "ipfs";
-        description = lib.mdDoc "User under which the IPFS daemon runs";
+        description = lib.mdDoc "User under which the Kubo daemon runs";
       };
 
       group = mkOption {
         type = types.str;
         default = "ipfs";
-        description = lib.mdDoc "Group under which the IPFS daemon runs";
+        description = lib.mdDoc "Group under which the Kubo daemon runs";
       };
 
       dataDir = mkOption {
@@ -84,7 +84,7 @@ in
           then "/var/lib/ipfs"
           else "/var/lib/ipfs/.ipfs"
         '';
-        description = lib.mdDoc "The data dir for IPFS";
+        description = lib.mdDoc "The data dir for Kubo";
       };
 
       defaultMode = mkOption {
@@ -96,13 +96,13 @@ in
       autoMount = mkOption {
         type = types.bool;
         default = false;
-        description = lib.mdDoc "Whether IPFS should try to mount /ipfs and /ipns at startup.";
+        description = lib.mdDoc "Whether Kubo should try to mount /ipfs and /ipns at startup.";
       };
 
       autoMigrate = mkOption {
         type = types.bool;
         default = true;
-        description = lib.mdDoc "Whether IPFS should try to run the fs-repo-migration at startup.";
+        description = lib.mdDoc "Whether Kubo should try to run the fs-repo-migration at startup.";
       };
 
       ipfsMountDir = mkOption {
@@ -126,7 +126,7 @@ in
       apiAddress = mkOption {
         type = types.str;
         default = "/ip4/127.0.0.1/tcp/5001";
-        description = lib.mdDoc "Where IPFS exposes its API to";
+        description = lib.mdDoc "Where Kubo exposes its API to";
       };
 
       swarmAddress = mkOption {
@@ -137,7 +137,7 @@ in
           "/ip4/0.0.0.0/udp/4001/quic"
           "/ip6/::/udp/4001/quic"
         ];
-        description = lib.mdDoc "Where IPFS listens for incoming p2p connections";
+        description = lib.mdDoc "Where Kubo listens for incoming p2p connections";
       };
 
       enableGC = mkOption {
@@ -174,14 +174,14 @@ in
 
       extraFlags = mkOption {
         type = types.listOf types.str;
-        description = lib.mdDoc "Extra flags passed to the IPFS daemon";
+        description = lib.mdDoc "Extra flags passed to the Kubo daemon";
         default = [ ];
       };
 
       localDiscovery = mkOption {
         type = types.bool;
-        description = lib.mdDoc ''Whether to enable local discovery for the ipfs daemon.
-          This will allow ipfs to scan ports on your local network. Some hosting services will ban you if you do this.
+        description = lib.mdDoc ''Whether to enable local discovery for the Kubo daemon.
+          This will allow Kubo to scan ports on your local network. Some hosting services will ban you if you do this.
         '';
         default = false;
       };
@@ -189,14 +189,14 @@ in
       serviceFdlimit = mkOption {
         type = types.nullOr types.int;
         default = null;
-        description = lib.mdDoc "The fdlimit for the IPFS systemd unit or `null` to have the daemon attempt to manage it";
+        description = lib.mdDoc "The fdlimit for the Kubo systemd unit or `null` to have the daemon attempt to manage it";
         example = 64 * 1024;
       };
 
       startWhenNeeded = mkOption {
         type = types.bool;
         default = false;
-        description = lib.mdDoc "Whether to use socket activation to start IPFS when needed.";
+        description = lib.mdDoc "Whether to use socket activation to start Kubo when needed.";
       };
 
     };
@@ -223,7 +223,7 @@ in
         uid = config.ids.uids.ipfs;
         description = "IPFS daemon user";
         packages = [
-          pkgs.ipfs-migrator
+          pkgs.kubo-migrator
         ];
       };
     };
@@ -255,7 +255,7 @@ in
           # After an unclean shutdown this file may exist which will cause the config command to attempt to talk to the daemon. This will hang forever if systemd is holding our sockets open.
           rm -vf "$IPFS_PATH/api"
       '' + optionalString cfg.autoMigrate ''
-        ${pkgs.ipfs-migrator}/bin/fs-repo-migrations -to '${cfg.package.repoVersion}' -y
+        ${pkgs.kubo-migrator}/bin/fs-repo-migrations -to '${cfg.package.repoVersion}' -y
       '' + ''
           ipfs --offline config profile apply ${profile} >/dev/null
         fi
@@ -279,7 +279,7 @@ in
           | ipfs --offline config replace -
       '';
       serviceConfig = {
-        ExecStart = [ "" "${cfg.package}/bin/ipfs daemon ${ipfsFlags}" ];
+        ExecStart = [ "" "${cfg.package}/bin/ipfs daemon ${kuboFlags}" ];
         User = cfg.user;
         Group = cfg.group;
         StateDirectory = "";
@@ -320,4 +320,27 @@ in
   meta = {
     maintainers = with lib.maintainers; [ Luflosi ];
   };
+
+  imports = [
+    (mkRenamedOptionModule [ "services" "ipfs" "enable" ] [ "services" "kubo" "enable" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "package" ] [ "services" "kubo" "package" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "user" ] [ "services" "kubo" "user" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "group" ] [ "services" "kubo" "group" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "dataDir" ] [ "services" "kubo" "dataDir" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "defaultMode" ] [ "services" "kubo" "defaultMode" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "autoMount" ] [ "services" "kubo" "autoMount" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "autoMigrate" ] [ "services" "kubo" "autoMigrate" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "ipfsMountDir" ] [ "services" "kubo" "ipfsMountDir" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "ipnsMountDir" ] [ "services" "kubo" "ipnsMountDir" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "gatewayAddress" ] [ "services" "kubo" "gatewayAddress" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "apiAddress" ] [ "services" "kubo" "apiAddress" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "swarmAddress" ] [ "services" "kubo" "swarmAddress" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "enableGC" ] [ "services" "kubo" "enableGC" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "emptyRepo" ] [ "services" "kubo" "emptyRepo" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "extraConfig" ] [ "services" "kubo" "extraConfig" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "extraFlags" ] [ "services" "kubo" "extraFlags" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "localDiscovery" ] [ "services" "kubo" "localDiscovery" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "serviceFdlimit" ] [ "services" "kubo" "serviceFdlimit" ])
+    (mkRenamedOptionModule [ "services" "ipfs" "startWhenNeeded" ] [ "services" "kubo" "startWhenNeeded" ])
+  ];
 }
diff --git a/nixos/modules/services/networking/coturn.nix b/nixos/modules/services/networking/coturn.nix
index 4d83d2d48e377..2f34a72377ce2 100644
--- a/nixos/modules/services/networking/coturn.nix
+++ b/nixos/modules/services/networking/coturn.nix
@@ -335,9 +335,10 @@ in {
         preStart = ''
           cat ${configFile} > ${runConfig}
           ${optionalString (cfg.static-auth-secret-file != null) ''
-            STATIC_AUTH_SECRET="$(head -n1 ${cfg.static-auth-secret-file} || :)"
-            sed -e "s,#static-auth-secret#,$STATIC_AUTH_SECRET,g" \
-              -i ${runConfig}
+            ${pkgs.replace-secret}/bin/replace-secret \
+              "#static-auth-secret#" \
+              ${cfg.static-auth-secret-file} \
+              ${runConfig}
           '' }
           chmod 640 ${runConfig}
         '';
diff --git a/nixos/modules/services/networking/firefox-syncserver.nix b/nixos/modules/services/networking/firefox-syncserver.nix
index fa8e4fcaed2f5..d7d5df59a4eb3 100644
--- a/nixos/modules/services/networking/firefox-syncserver.nix
+++ b/nixos/modules/services/networking/firefox-syncserver.nix
@@ -19,6 +19,9 @@ let
       fxa_email_domain = "api.accounts.firefox.com";
       fxa_oauth_server_url = "https://oauth.accounts.firefox.com/v1";
       run_migrations = true;
+      # if JWK caching is not enabled the token server must verify tokens
+      # using the fxa api, on a thread pool with a static size.
+      additional_blocking_threads_for_fxa_requests = 10;
     } // lib.optionalAttrs cfg.singleNode.enable {
       # Single-node mode is likely to be used on small instances with little
       # capacity. The default value (0.1) can only ever release capacity when
@@ -309,11 +312,7 @@ in
         enableACME = cfg.singleNode.enableTLS;
         forceSSL = cfg.singleNode.enableTLS;
         locations."/" = {
-          proxyPass = "http://localhost:${toString cfg.settings.port}";
-          # source mentions that this header should be set
-          extraConfig = ''
-            add_header X-Content-Type-Options nosniff;
-          '';
+          proxyPass = "http://127.0.0.1:${toString cfg.settings.port}";
         };
       };
     };
diff --git a/nixos/modules/services/networking/iwd.nix b/nixos/modules/services/networking/iwd.nix
index 526e6ab0a7ad6..a9908b01a58a0 100644
--- a/nixos/modules/services/networking/iwd.nix
+++ b/nixos/modules/services/networking/iwd.nix
@@ -67,5 +67,5 @@ in
     };
   };
 
-  meta.maintainers = with lib.maintainers; [ mic92 dtzWill ];
+  meta.maintainers = with lib.maintainers; [ dtzWill ];
 }
diff --git a/nixos/modules/services/networking/jitsi-videobridge.nix b/nixos/modules/services/networking/jitsi-videobridge.nix
index 4455b7bcee4a4..eefaa70604cdd 100644
--- a/nixos/modules/services/networking/jitsi-videobridge.nix
+++ b/nixos/modules/services/networking/jitsi-videobridge.nix
@@ -70,7 +70,7 @@ in
       description = lib.mdDoc ''
         Videobridge configuration.
 
-        See <https://github.com/jitsi/jitsi-videobridge/blob/master/src/main/resources/reference.conf>
+        See <https://github.com/jitsi/jitsi-videobridge/blob/master/jvb/src/main/resources/reference.conf>
         for default configuration with comments.
       '';
     };
diff --git a/nixos/modules/services/networking/knot.nix b/nixos/modules/services/networking/knot.nix
index de238112826cf..ee7ea83456d49 100644
--- a/nixos/modules/services/networking/knot.nix
+++ b/nixos/modules/services/networking/knot.nix
@@ -18,7 +18,7 @@ let
 
   knot-cli-wrappers = pkgs.stdenv.mkDerivation {
     name = "knot-cli-wrappers";
-    buildInputs = [ pkgs.makeWrapper ];
+    nativeBuildInputs = [ pkgs.makeWrapper ];
     buildCommand = ''
       mkdir -p $out/bin
       makeWrapper ${cfg.package}/bin/knotc "$out/bin/knotc" \
diff --git a/nixos/modules/services/networking/pptpd.nix b/nixos/modules/services/networking/pptpd.nix
index 2f206e813a57c..703dda99803e2 100644
--- a/nixos/modules/services/networking/pptpd.nix
+++ b/nixos/modules/services/networking/pptpd.nix
@@ -82,7 +82,7 @@ with lib;
       ppp-pptpd-wrapped = pkgs.stdenv.mkDerivation {
         name         = "ppp-pptpd-wrapped";
         phases       = [ "installPhase" ];
-        buildInputs  = with pkgs; [ makeWrapper ];
+        nativeBuildInputs  = with pkgs; [ makeWrapper ];
         installPhase = ''
           mkdir -p $out/bin
           makeWrapper ${pkgs.ppp}/bin/pppd $out/bin/pppd \
diff --git a/nixos/modules/services/networking/tinc.nix b/nixos/modules/services/networking/tinc.nix
index 1f93d82f96ebe..09b23a60a4afc 100644
--- a/nixos/modules/services/networking/tinc.nix
+++ b/nixos/modules/services/networking/tinc.nix
@@ -410,7 +410,7 @@ in
     environment.systemPackages = let
       cli-wrappers = pkgs.stdenv.mkDerivation {
         name = "tinc-cli-wrappers";
-        buildInputs = [ pkgs.makeWrapper ];
+        nativeBuildInputs = [ pkgs.makeWrapper ];
         buildCommand = ''
           mkdir -p $out/bin
           ${concatStringsSep "\n" (mapAttrsToList (network: data:
diff --git a/nixos/modules/services/networking/tmate-ssh-server.nix b/nixos/modules/services/networking/tmate-ssh-server.nix
new file mode 100644
index 0000000000000..1b8f6662ef4ca
--- /dev/null
+++ b/nixos/modules/services/networking/tmate-ssh-server.nix
@@ -0,0 +1,122 @@
+{ config, lib, pkgs, ... }:
+with lib;
+let
+  cfg = config.services.tmate-ssh-server;
+
+  defaultKeysDir = "/etc/tmate-ssh-server-keys";
+  edKey = "${defaultKeysDir}/ssh_host_ed25519_key";
+  rsaKey = "${defaultKeysDir}/ssh_host_rsa_key";
+
+  keysDir =
+    if cfg.keysDir == null
+    then defaultKeysDir
+    else cfg.keysDir;
+
+  domain = config.networking.domain;
+in
+{
+  options.services.tmate-ssh-server = {
+    enable = mkEnableOption (mdDoc "tmate ssh server");
+
+    package = mkOption {
+      type = types.package;
+      description = mdDoc "The package containing tmate-ssh-server";
+      defaultText = literalExpression "pkgs.tmate-ssh-server";
+      default = pkgs.tmate-ssh-server;
+    };
+
+    host = mkOption {
+      type = types.str;
+      description = mdDoc "External host name";
+      defaultText = lib.literalExpression "config.networking.domain or config.networking.hostName ";
+      default =
+        if domain == null then
+          config.networking.hostName
+        else
+          domain;
+    };
+
+    port = mkOption {
+      type = types.port;
+      description = mdDoc "Listen port for the ssh server";
+      default = 2222;
+    };
+
+    openFirewall = mkOption {
+      type = types.bool;
+      default = true;
+      description = mdDoc "Whether to automatically open the specified ports in the firewall.";
+    };
+
+    advertisedPort = mkOption {
+      type = types.port;
+      description = mdDoc "External port advertised to clients";
+    };
+
+    keysDir = mkOption {
+      type = with types; nullOr str;
+      description = mdDoc "Directory containing ssh keys, defaulting to auto-generation";
+      default = null;
+    };
+  };
+
+  config = mkIf cfg.enable {
+
+    networking.firewall.allowedTCPPorts = optionals cfg.openFirewall [ cfg.port ];
+
+    services.tmate-ssh-server = {
+      advertisedPort = mkDefault cfg.port;
+    };
+
+    environment.systemPackages =
+      let
+        tmate-config = pkgs.writeText "tmate.conf"
+          ''
+            set -g tmate-server-host "${cfg.host}"
+            set -g tmate-server-port ${toString cfg.port}
+            set -g tmate-server-ed25519-fingerprint "@ed25519_fingerprint@"
+            set -g tmate-server-rsa-fingerprint "@rsa_fingerprint@"
+          '';
+      in
+      [
+        (pkgs.writeShellApplication {
+          name = "tmate-client-config";
+          runtimeInputs = with pkgs;[ openssh coreutils sd ];
+          text = ''
+            RSA_SIG="$(ssh-keygen -l -E SHA256 -f "${keysDir}/ssh_host_rsa_key.pub" | cut -d ' ' -f 2)"
+            ED25519_SIG="$(ssh-keygen -l -E SHA256 -f "${keysDir}/ssh_host_ed25519_key.pub" | cut -d ' ' -f 2)"
+            sd -sp '@ed25519_fingerprint@' "$ED25519_SIG" ${tmate-config} | \
+              sd -sp '@rsa_fingerprint@' "$RSA_SIG"
+          '';
+        })
+      ];
+
+    systemd.services.tmate-ssh-server = {
+      description = "tmate SSH Server";
+      after = [ "network.target" ];
+      wantedBy = [ "multi-user.target" ];
+      serviceConfig = {
+        ExecStart = "${cfg.package}/bin/tmate-ssh-server -h ${cfg.host} -p ${toString cfg.port} -q ${toString cfg.advertisedPort} -k ${keysDir}";
+      };
+      preStart = mkIf (cfg.keysDir == null) ''
+        if [[ ! -d ${defaultKeysDir} ]]
+        then
+          mkdir -p ${defaultKeysDir}
+        fi
+        if [[ ! -f ${edKey} ]]
+        then
+          ${pkgs.openssh}/bin/ssh-keygen -t ed25519 -f ${edKey} -N ""
+        fi
+        if [[ ! -f ${rsaKey} ]]
+        then
+          ${pkgs.openssh}/bin/ssh-keygen -t rsa -f ${rsaKey} -N ""
+        fi
+      '';
+    };
+  };
+
+  meta = {
+    maintainers = with maintainers; [ jlesquembre ];
+  };
+
+}
diff --git a/nixos/modules/services/networking/xl2tpd.nix b/nixos/modules/services/networking/xl2tpd.nix
index 8f710bca322f0..7d25957076122 100644
--- a/nixos/modules/services/networking/xl2tpd.nix
+++ b/nixos/modules/services/networking/xl2tpd.nix
@@ -84,7 +84,7 @@ with lib;
       xl2tpd-ppp-wrapped = pkgs.stdenv.mkDerivation {
         name         = "xl2tpd-ppp-wrapped";
         phases       = [ "installPhase" ];
-        buildInputs  = with pkgs; [ makeWrapper ];
+        nativeBuildInputs  = with pkgs; [ makeWrapper ];
         installPhase = ''
           mkdir -p $out/bin
 
diff --git a/nixos/modules/services/security/endlessh-go.nix b/nixos/modules/services/security/endlessh-go.nix
new file mode 100644
index 0000000000000..61cca55317394
--- /dev/null
+++ b/nixos/modules/services/security/endlessh-go.nix
@@ -0,0 +1,138 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.services.endlessh-go;
+in
+{
+  options.services.endlessh-go = {
+    enable = mkEnableOption (mdDoc "endlessh-go service");
+
+    listenAddress = mkOption {
+      type = types.str;
+      default = "0.0.0.0";
+      example = "[::]";
+      description = mdDoc ''
+        Interface address to bind the endlessh-go daemon to SSH connections.
+      '';
+    };
+
+    port = mkOption {
+      type = types.port;
+      default = 2222;
+      example = 22;
+      description = mdDoc ''
+        Specifies on which port the endlessh-go daemon listens for SSH
+        connections.
+
+        Setting this to `22` may conflict with {option}`services.openssh`.
+      '';
+    };
+
+    prometheus = {
+      enable = mkEnableOption (mdDoc "Prometheus integration");
+
+      listenAddress = mkOption {
+        type = types.str;
+        default = "0.0.0.0";
+        example = "[::]";
+        description = mdDoc ''
+          Interface address to bind the endlessh-go daemon to answer Prometheus
+          queries.
+        '';
+      };
+
+      port = mkOption {
+        type = types.port;
+        default = 2112;
+        example = 9119;
+        description = mdDoc ''
+          Specifies on which port the endlessh-go daemon listens for Prometheus
+          queries.
+        '';
+      };
+    };
+
+    extraOptions = mkOption {
+      type = with types; listOf str;
+      default = [ ];
+      example = [ "-conn_type=tcp4" "-max_clients=8192" ];
+      description = mdDoc ''
+        Additional command line options to pass to the endlessh-go daemon.
+      '';
+    };
+
+    openFirewall = mkOption {
+      type = types.bool;
+      default = false;
+      description = lib.mdDoc ''
+        Whether to open a firewall port for the SSH listener.
+      '';
+    };
+  };
+
+  config = mkIf cfg.enable {
+    systemd.services.endlessh-go = {
+      description = "SSH tarpit";
+      requires = [ "network.target" ];
+      wantedBy = [ "multi-user.target" ];
+      serviceConfig =
+        let
+          needsPrivileges = cfg.port < 1024 || cfg.prometheus.port < 1024;
+          capabilities = [ "" ] ++ optionals needsPrivileges [ "CAP_NET_BIND_SERVICE" ];
+          rootDirectory = "/run/endlessh-go";
+        in
+        {
+          Restart = "always";
+          ExecStart = with cfg; concatStringsSep " " ([
+            "${pkgs.endlessh-go}/bin/endlessh-go"
+            "-logtostderr"
+            "-host=${listenAddress}"
+            "-port=${toString port}"
+          ] ++ optionals prometheus.enable [
+            "-enable_prometheus"
+            "-prometheus_host=${prometheus.listenAddress}"
+            "-prometheus_port=${toString prometheus.port}"
+          ] ++ extraOptions);
+          DynamicUser = true;
+          RootDirectory = rootDirectory;
+          BindReadOnlyPaths = [ builtins.storeDir ];
+          InaccessiblePaths = [ "-+${rootDirectory}" ];
+          RuntimeDirectory = baseNameOf rootDirectory;
+          RuntimeDirectoryMode = "700";
+          AmbientCapabilities = capabilities;
+          CapabilityBoundingSet = capabilities;
+          UMask = "0077";
+          LockPersonality = true;
+          MemoryDenyWriteExecute = true;
+          NoNewPrivileges = true;
+          PrivateDevices = true;
+          PrivateTmp = true;
+          PrivateUsers = !needsPrivileges;
+          ProtectClock = true;
+          ProtectControlGroups = true;
+          ProtectHome = true;
+          ProtectHostname = true;
+          ProtectKernelLogs = true;
+          ProtectKernelModules = true;
+          ProtectKernelTunables = true;
+          ProtectSystem = "strict";
+          ProtectProc = "noaccess";
+          ProcSubset = "pid";
+          RemoveIPC = true;
+          RestrictAddressFamilies = [ "AF_INET" "AF_INET6" ];
+          RestrictNamespaces = true;
+          RestrictRealtime = true;
+          RestrictSUIDSGID = true;
+          SystemCallArchitectures = "native";
+          SystemCallFilter = [ "@system-service" "~@resources" "~@privileged" ];
+        };
+    };
+
+    networking.firewall.allowedTCPPorts = with cfg;
+      optionals openFirewall [ port prometheus.port ];
+  };
+
+  meta.maintainers = with maintainers; [ azahi ];
+}
diff --git a/nixos/modules/services/security/fail2ban.nix b/nixos/modules/services/security/fail2ban.nix
index 29aa49c8aadaa..e208eed008ae0 100644
--- a/nixos/modules/services/security/fail2ban.nix
+++ b/nixos/modules/services/security/fail2ban.nix
@@ -91,8 +91,9 @@ in
         example = "nftables-multiport";
         description = lib.mdDoc ''
           Default banning action (e.g. iptables, iptables-new, iptables-multiport,
-          shorewall, etc) It is used to define action_* variables. Can be overridden
-          globally or per section within jail.local file
+          iptables-ipset-proto6-allports, shorewall, etc) It is used to
+          define action_* variables. Can be overridden globally or per
+          section within jail.local file
         '';
       };
 
@@ -212,10 +213,18 @@ in
               filter   = apache-nohome
               action   = iptables-multiport[name=HTTP, port="http,https"]
               logpath  = /var/log/httpd/error_log*
+              backend = auto
               findtime = 600
               bantime  = 600
               maxretry = 5
             ''';
+           dovecot = '''
+             # block IPs which failed to log-in
+             # aggressive mode add blocking for aborted connections
+             enabled = true
+             filter = dovecot[mode=aggressive]
+             maxretry = 3
+           ''';
           }
         '';
         type = types.attrsOf types.lines;
diff --git a/nixos/modules/services/security/privacyidea.nix b/nixos/modules/services/security/privacyidea.nix
index 5cd338ebf7fe0..e446e606cad8b 100644
--- a/nixos/modules/services/security/privacyidea.nix
+++ b/nixos/modules/services/security/privacyidea.nix
@@ -61,6 +61,12 @@ let
       (flip mapAttrs cfg.ldap-proxy.settings
         (const (mapAttrs (const renderValue)))));
 
+  privacyidea-token-janitor = pkgs.writeShellScriptBin "privacyidea-token-janitor" ''
+    exec -a privacyidea-token-janitor \
+      /run/wrappers/bin/sudo -u ${cfg.user} \
+      env PRIVACYIDEA_CONFIGFILE=${cfg.stateDir}/privacyidea.cfg \
+      ${penv}/bin/privacyidea-token-janitor $@
+  '';
 in
 
 {
@@ -178,6 +184,42 @@ in
         description = lib.mdDoc "Group account under which PrivacyIDEA runs.";
       };
 
+      tokenjanitor = {
+        enable = mkEnableOption (lib.mdDoc "automatic runs of the token janitor");
+        interval = mkOption {
+          default = "quarterly";
+          type = types.str;
+          description = lib.mdDoc ''
+            Interval in which the cleanup program is supposed to run.
+            See {manpage}`systemd.time(7)` for further information.
+          '';
+        };
+        action = mkOption {
+          type = types.enum [ "delete" "mark" "disable" "unassign" ];
+          description = lib.mdDoc ''
+            Which action to take for matching tokens.
+          '';
+        };
+        unassigned = mkOption {
+          default = false;
+          type = types.bool;
+          description = lib.mdDoc ''
+            Whether to search for **unassigned** tokens
+            and apply [](#opt-services.privacyidea.tokenjanitor.action)
+            onto them.
+          '';
+        };
+        orphaned = mkOption {
+          default = true;
+          type = types.bool;
+          description = lib.mdDoc ''
+            Whether to search for **orphaned** tokens
+            and apply [](#opt-services.privacyidea.tokenjanitor.action)
+            onto them.
+          '';
+        };
+      };
+
       ldap-proxy = {
         enable = mkEnableOption (lib.mdDoc "PrivacyIDEA LDAP Proxy");
 
@@ -228,10 +270,60 @@ in
 
     (mkIf cfg.enable {
 
-      environment.systemPackages = [ pkgs.privacyidea ];
+      assertions = [
+        {
+          assertion = cfg.tokenjanitor.enable -> (cfg.tokenjanitor.orphaned || cfg.tokenjanitor.unassigned);
+          message = ''
+            privacyidea-token-janitor has no effect if neither orphaned nor unassigned tokens
+            are to be searched.
+          '';
+        }
+      ];
+
+      environment.systemPackages = [ pkgs.privacyidea (hiPrio privacyidea-token-janitor) ];
 
       services.postgresql.enable = mkDefault true;
 
+      systemd.services.privacyidea-tokenjanitor = mkIf cfg.tokenjanitor.enable {
+        environment.PRIVACYIDEA_CONFIGFILE = "${cfg.stateDir}/privacyidea.cfg";
+        path = [ penv ];
+        serviceConfig = {
+          CapabilityBoundingSet = [ "" ];
+          ExecStart = "${pkgs.writeShellScript "pi-token-janitor" ''
+            ${optionalString cfg.tokenjanitor.orphaned ''
+              echo >&2 "Removing orphaned tokens..."
+              privacyidea-token-janitor find \
+                --orphaned true \
+                --action ${cfg.tokenjanitor.action}
+            ''}
+            ${optionalString cfg.tokenjanitor.unassigned ''
+              echo >&2 "Removing unassigned tokens..."
+              privacyidea-token-janitor find \
+                --assigned false \
+                --action ${cfg.tokenjanitor.action}
+            ''}
+          ''}";
+          Group = cfg.group;
+          LockPersonality = true;
+          MemoryDenyWriteExecute = true;
+          ProtectHome = true;
+          ProtectHostname = true;
+          ProtectKernelLogs = true;
+          ProtectKernelModules = true;
+          ProtectKernelTunables = true;
+          ProtectSystem = "strict";
+          ReadWritePaths = cfg.stateDir;
+          Type = "oneshot";
+          User = cfg.user;
+          WorkingDirectory = cfg.stateDir;
+        };
+      };
+      systemd.timers.privacyidea-tokenjanitor = mkIf cfg.tokenjanitor.enable {
+        wantedBy = [ "timers.target" ];
+        timerConfig.OnCalendar = cfg.tokenjanitor.interval;
+        timerConfig.Persistent = true;
+      };
+
       systemd.services.privacyidea = let
         piuwsgi = pkgs.writeText "uwsgi.json" (builtins.toJSON {
           uwsgi = {
diff --git a/nixos/modules/services/web-apps/mediawiki.nix b/nixos/modules/services/web-apps/mediawiki.nix
index a32db718848ab..e332847f5a285 100644
--- a/nixos/modules/services/web-apps/mediawiki.nix
+++ b/nixos/modules/services/web-apps/mediawiki.nix
@@ -35,7 +35,7 @@ let
   };
 
   mediawikiScripts = pkgs.runCommand "mediawiki-scripts" {
-    buildInputs = [ pkgs.makeWrapper ];
+    nativeBuildInputs = [ pkgs.makeWrapper ];
     preferLocalBuild = true;
   } ''
     mkdir -p $out/bin
diff --git a/nixos/modules/services/x11/desktop-managers/gnome.nix b/nixos/modules/services/x11/desktop-managers/gnome.nix
index 7bb7ef27ed572..d3db98cb4e2ae 100644
--- a/nixos/modules/services/x11/desktop-managers/gnome.nix
+++ b/nixos/modules/services/x11/desktop-managers/gnome.nix
@@ -22,42 +22,14 @@ let
     favorite-apps=[ 'org.gnome.Epiphany.desktop', 'org.gnome.Geary.desktop', 'org.gnome.Calendar.desktop', 'org.gnome.Music.desktop', 'org.gnome.Photos.desktop', 'org.gnome.Nautilus.desktop' ]
   '';
 
-  nixos-background-ligtht = pkgs.nixos-artwork.wallpapers.simple-blue;
+  nixos-background-light = pkgs.nixos-artwork.wallpapers.simple-blue;
   nixos-background-dark = pkgs.nixos-artwork.wallpapers.simple-dark-gray;
 
-  nixos-gsettings-desktop-schemas = let
-    defaultPackages = with pkgs; [ gsettings-desktop-schemas gnome.gnome-shell ];
-  in
-  pkgs.runCommand "nixos-gsettings-desktop-schemas" { preferLocalBuild = true; }
-    ''
-     mkdir -p $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas
-
-     ${concatMapStrings
-        (pkg: "cp -rf ${pkg}/share/gsettings-schemas/*/glib-2.0/schemas/*.xml $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas\n")
-        (defaultPackages ++ cfg.extraGSettingsOverridePackages)}
-
-     cp -f ${pkgs.gnome.gnome-shell}/share/gsettings-schemas/*/glib-2.0/schemas/*.gschema.override $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas
-
-     ${optionalString flashbackEnabled ''
-       cp -f ${pkgs.gnome.gnome-flashback}/share/gsettings-schemas/*/glib-2.0/schemas/*.gschema.override $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas
-     ''}
-
-     chmod -R a+w $out/share/gsettings-schemas/nixos-gsettings-overrides
-     cat - > $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas/nixos-defaults.gschema.override <<- EOF
-       [org.gnome.desktop.background]
-       picture-uri='file://${nixos-background-ligtht.gnomeFilePath}'
-       picture-uri-dark='file://${nixos-background-dark.gnomeFilePath}'
-
-       [org.gnome.desktop.screensaver]
-       picture-uri='file://${nixos-background-dark.gnomeFilePath}'
-
-       ${cfg.favoriteAppsOverride}
-
-       ${cfg.extraGSettingsOverrides}
-     EOF
-
-     ${pkgs.glib.dev}/bin/glib-compile-schemas $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas/
-    '';
+  # TODO: Having https://github.com/NixOS/nixpkgs/issues/54150 would supersede this
+  nixos-gsettings-desktop-schemas = pkgs.gnome.nixos-gsettings-overrides.override {
+    inherit (cfg) extraGSettingsOverrides extraGSettingsOverridePackages favoriteAppsOverride;
+    inherit flashbackEnabled nixos-background-dark nixos-background-light;
+  };
 
   nixos-background-info = pkgs.writeTextFile rec {
     name = "nixos-background-info";
@@ -67,7 +39,7 @@ let
       <wallpapers>
         <wallpaper deleted="false">
           <name>Blobs</name>
-          <filename>${nixos-background-ligtht.gnomeFilePath}</filename>
+          <filename>${nixos-background-light.gnomeFilePath}</filename>
           <filename-dark>${nixos-background-dark.gnomeFilePath}</filename-dark>
           <options>zoom</options>
           <shade_type>solid</shade_type>
diff --git a/nixos/modules/services/x11/hardware/libinput.nix b/nixos/modules/services/x11/hardware/libinput.nix
index 8eb11e281d662..0d30b9b5e68de 100644
--- a/nixos/modules/services/x11/hardware/libinput.nix
+++ b/nixos/modules/services/x11/hardware/libinput.nix
@@ -156,6 +156,14 @@ let cfg = config.services.xserver.libinput;
           '';
       };
 
+      tappingButtonMap = mkOption {
+        type = types.nullOr (types.enum [ "lrm" "lmr" ]);
+        default = null;
+        description = lib.mdDoc ''
+          Set the button mapping for 1/2/3-finger taps to left/right/middle or left/middle/right, respectively.
+        '';
+      };
+
       tappingDragLock = mkOption {
         type = types.bool;
         default = true;
@@ -220,6 +228,7 @@ let cfg = config.services.xserver.libinput;
       Option "HorizontalScrolling" "${xorgBool cfg.${deviceType}.horizontalScrolling}"
       Option "SendEventsMode" "${cfg.${deviceType}.sendEventsMode}"
       Option "Tapping" "${xorgBool cfg.${deviceType}.tapping}"
+      ${optionalString (cfg.${deviceType}.tappingButtonMap != null) ''Option "TappingButtonMap" "${cfg.${deviceType}.tappingButtonMap}"''}
       Option "TappingDragLock" "${xorgBool cfg.${deviceType}.tappingDragLock}"
       Option "DisableWhileTyping" "${xorgBool cfg.${deviceType}.disableWhileTyping}"
       ${cfg.${deviceType}.additionalOptions}
@@ -241,6 +250,7 @@ in {
       "horizontalScrolling"
       "sendEventsMode"
       "tapping"
+      "tappingButtonMap"
       "tappingDragLock"
       "transformationMatrix"
       "disableWhileTyping"
diff --git a/nixos/modules/system/boot/systemd.nix b/nixos/modules/system/boot/systemd.nix
index a3bff27626d8f..8f2044a0985eb 100644
--- a/nixos/modules/system/boot/systemd.nix
+++ b/nixos/modules/system/boot/systemd.nix
@@ -325,8 +325,8 @@ in
       type = types.lines;
       example = "DefaultLimitCORE=infinity";
       description = lib.mdDoc ''
-        Extra config options for systemd. See man systemd-system.conf for
-        available options.
+        Extra config options for systemd. See systemd-system.conf(5) man page
+        for available options.
       '';
     };
 
diff --git a/nixos/modules/system/boot/systemd/initrd.nix b/nixos/modules/system/boot/systemd/initrd.nix
index e843214f85521..03f94c426cb09 100644
--- a/nixos/modules/system/boot/systemd/initrd.nix
+++ b/nixos/modules/system/boot/systemd/initrd.nix
@@ -372,6 +372,8 @@ in {
         "/etc/os-release".source = config.boot.initrd.osRelease;
         "/etc/initrd-release".source = config.boot.initrd.osRelease;
 
+      } // optionalAttrs (config.environment.etc ? "modprobe.d/nixos.conf") {
+        "/etc/modprobe.d/nixos.conf".source = config.environment.etc."modprobe.d/nixos.conf".source;
       };
 
       storePaths = [
diff --git a/nixos/modules/tasks/filesystems/jfs.nix b/nixos/modules/tasks/filesystems/jfs.nix
index 700f05af2bec4..6d80c4c657da6 100644
--- a/nixos/modules/tasks/filesystems/jfs.nix
+++ b/nixos/modules/tasks/filesystems/jfs.nix
@@ -12,7 +12,7 @@ in
 
     boot.initrd.kernelModules = mkIf inInitrd [ "jfs" ];
 
-    boot.initrd.extraUtilsCommands = mkIf (inInitrd && !boot.initrd.systemd.enable) ''
+    boot.initrd.extraUtilsCommands = mkIf (inInitrd && !config.boot.initrd.systemd.enable) ''
       copy_bin_and_libs ${pkgs.jfsutils}/sbin/fsck.jfs
     '';
   };
diff --git a/nixos/modules/virtualisation/azure-agent.nix b/nixos/modules/virtualisation/azure-agent.nix
index 31047c4ddc0e8..abe6455a1a699 100644
--- a/nixos/modules/virtualisation/azure-agent.nix
+++ b/nixos/modules/virtualisation/azure-agent.nix
@@ -17,7 +17,7 @@ let
 
     patches = [ ./azure-agent-entropy.patch ];
 
-    buildInputs = [ makeWrapper python pythonPackages.wrapPython ];
+    nativeBuildInputs = [ makeWrapper python pythonPackages.wrapPython ];
     runtimeDeps = [ findutils gnugrep gawk coreutils openssl openssh
                     nettools # for hostname
                     procps # for pidof
diff --git a/nixos/modules/virtualisation/virtualbox-host.nix b/nixos/modules/virtualisation/virtualbox-host.nix
index 5a2ec4939d99d..b1565a09682a1 100644
--- a/nixos/modules/virtualisation/virtualbox-host.nix
+++ b/nixos/modules/virtualisation/virtualbox-host.nix
@@ -104,16 +104,18 @@ in
         group = "vboxusers";
         setuid = true;
       };
+      executables = [
+        "VBoxHeadless"
+        "VBoxNetAdpCtl"
+        "VBoxNetDHCP"
+        "VBoxNetNAT"
+        "VBoxVolInfo"
+      ] ++ (lib.optionals (!cfg.headless) [
+        "VBoxSDL"
+        "VirtualBoxVM"
+      ]);
     in mkIf cfg.enableHardening
-      (builtins.listToAttrs (map (x: { name = x; value = mkSuid x; }) [
-      "VBoxHeadless"
-      "VBoxNetAdpCtl"
-      "VBoxNetDHCP"
-      "VBoxNetNAT"
-      "VBoxSDL"
-      "VBoxVolInfo"
-      "VirtualBoxVM"
-    ]));
+      (builtins.listToAttrs (map (x: { name = x; value = mkSuid x; }) executables));
 
     users.groups.vboxusers.gid = config.ids.gids.vboxusers;
 
diff --git a/nixos/tests/acme.nix b/nixos/tests/acme.nix
index d3a436080ebff..d540bc6ec31bb 100644
--- a/nixos/tests/acme.nix
+++ b/nixos/tests/acme.nix
@@ -41,6 +41,16 @@
     inherit documentRoot;
   };
 
+  simpleConfig = {
+    security.acme = {
+      certs."http.example.test" = {
+        listenHTTP = ":80";
+      };
+    };
+
+    networking.firewall.allowedTCPPorts = [ 80 ];
+  };
+
   # Base specialisation config for testing general ACME features
   webserverBasicConfig = {
     services.nginx.enable = true;
@@ -173,6 +183,26 @@ in {
       services.nginx.logError = "stderr info";
 
       specialisation = {
+        # Tests HTTP-01 verification using Lego's built-in web server
+        http01lego.configuration = simpleConfig;
+
+        renew.configuration = lib.mkMerge [
+          simpleConfig
+          {
+            # Pebble provides 5 year long certs,
+            # needs to be higher than that to test renewal
+            security.acme.certs."http.example.test".validMinDays = 9999;
+          }
+        ];
+
+        # Tests that account creds can be safely changed.
+        accountchange.configuration = lib.mkMerge [
+          simpleConfig
+          {
+            security.acme.certs."http.example.test".email = "admin@example.test";
+          }
+        ];
+
         # First derivation used to test general ACME features
         general.configuration = { ... }: let
           caDomain = nodes.acme.test-support.acme.caDomain;
@@ -446,7 +476,35 @@ in {
 
       download_ca_certs(client)
 
-      # Perform general tests first
+      # Perform http-01 w/ lego test first
+      with subtest("Can request certificate with Lego's built in web server"):
+          switch_to(webserver, "http01lego")
+          webserver.wait_for_unit("acme-finished-http.example.test.target")
+          check_fullchain(webserver, "http.example.test")
+          check_issuer(webserver, "http.example.test", "pebble")
+
+      # Perform renewal test
+      with subtest("Can renew certificates when they expire"):
+          hash = webserver.succeed("sha256sum /var/lib/acme/http.example.test/cert.pem")
+          switch_to(webserver, "renew")
+          webserver.wait_for_unit("acme-finished-http.example.test.target")
+          check_fullchain(webserver, "http.example.test")
+          check_issuer(webserver, "http.example.test", "pebble")
+          hash_after = webserver.succeed("sha256sum /var/lib/acme/http.example.test/cert.pem")
+          assert hash != hash_after
+
+      # Perform account change test
+      with subtest("Handles email change correctly"):
+          hash = webserver.succeed("sha256sum /var/lib/acme/http.example.test/cert.pem")
+          switch_to(webserver, "accountchange")
+          webserver.wait_for_unit("acme-finished-http.example.test.target")
+          check_fullchain(webserver, "http.example.test")
+          check_issuer(webserver, "http.example.test", "pebble")
+          hash_after = webserver.succeed("sha256sum /var/lib/acme/http.example.test/cert.pem")
+          # Has to do a full run to register account, which creates new certs.
+          assert hash != hash_after
+
+      # Perform general tests
       switch_to(webserver, "general")
 
       with subtest("Can request certificate with HTTP-01 challenge"):
diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix
index b0886cab56249..643f1181eb5d1 100644
--- a/nixos/tests/all-tests.nix
+++ b/nixos/tests/all-tests.nix
@@ -180,6 +180,7 @@ in {
   ejabberd = handleTest ./xmpp/ejabberd.nix {};
   elk = handleTestOn ["x86_64-linux"] ./elk.nix {};
   emacs-daemon = handleTest ./emacs-daemon.nix {};
+  endlessh-go = handleTest ./endlessh-go.nix {};
   engelsystem = handleTest ./engelsystem.nix {};
   enlightenment = handleTest ./enlightenment.nix {};
   env = handleTest ./env.nix {};
@@ -284,7 +285,6 @@ in {
   installer-systemd-stage-1 = handleTest ./installer-systemd-stage-1.nix {};
   invoiceplane = handleTest ./invoiceplane.nix {};
   iodine = handleTest ./iodine.nix {};
-  ipfs = handleTest ./ipfs.nix {};
   ipv6 = handleTest ./ipv6.nix {};
   iscsi-multipath-root = handleTest ./iscsi-multipath-root.nix {};
   iscsi-root = handleTest ./iscsi-root.nix {};
@@ -317,6 +317,7 @@ in {
   ksm = handleTest ./ksm.nix {};
   kthxbye = handleTest ./kthxbye.nix {};
   kubernetes = handleTestOn ["x86_64-linux"] ./kubernetes {};
+  kubo = handleTest ./kubo.nix {};
   ladybird = handleTest ./ladybird.nix {};
   languagetool = handleTest ./languagetool.nix {};
   latestKernel.login = handleTest ./login.nix { latestKernel = true; };
@@ -597,6 +598,7 @@ in {
   systemd-initrd-btrfs-raid = handleTest ./systemd-initrd-btrfs-raid.nix {};
   systemd-initrd-luks-keyfile = handleTest ./systemd-initrd-luks-keyfile.nix {};
   systemd-initrd-luks-password = handleTest ./systemd-initrd-luks-password.nix {};
+  systemd-initrd-modprobe = handleTest ./systemd-initrd-modprobe.nix {};
   systemd-initrd-shutdown = handleTest ./systemd-shutdown.nix { systemdStage1 = true; };
   systemd-initrd-simple = handleTest ./systemd-initrd-simple.nix {};
   systemd-initrd-swraid = handleTest ./systemd-initrd-swraid.nix {};
@@ -612,6 +614,7 @@ in {
   systemd-shutdown = handleTest ./systemd-shutdown.nix {};
   systemd-timesyncd = handleTest ./systemd-timesyncd.nix {};
   systemd-misc = handleTest ./systemd-misc.nix {};
+  tandoor-recipes = handleTest ./tandoor-recipes.nix {};
   taskserver = handleTest ./taskserver.nix {};
   teeworlds = handleTest ./teeworlds.nix {};
   telegraf = handleTest ./telegraf.nix {};
@@ -624,6 +627,7 @@ in {
   tinc = handleTest ./tinc {};
   tinydns = handleTest ./tinydns.nix {};
   tinywl = handleTest ./tinywl.nix {};
+  tmate-ssh-server = handleTest ./tmate-ssh-server.nix { };
   tomcat = handleTest ./tomcat.nix {};
   tor = handleTest ./tor.nix {};
   # traefik test relies on docker-containers
diff --git a/nixos/tests/endlessh-go.nix b/nixos/tests/endlessh-go.nix
new file mode 100644
index 0000000000000..b261dbf1c5605
--- /dev/null
+++ b/nixos/tests/endlessh-go.nix
@@ -0,0 +1,58 @@
+import ./make-test-python.nix ({ lib, pkgs, ... }:
+{
+  name = "endlessh-go";
+  meta.maintainers = with lib.maintainers; [ azahi ];
+
+  nodes = {
+    server = { ... }: {
+      services.endlessh-go = {
+        enable = true;
+        prometheus.enable = true;
+        openFirewall = true;
+      };
+
+      specialisation = {
+        unprivileged.configuration = {
+          services.endlessh-go = {
+            port = 2222;
+            prometheus.port = 9229;
+          };
+        };
+
+        privileged.configuration = {
+          services.endlessh-go = {
+            port = 22;
+            prometheus.port = 92;
+          };
+        };
+      };
+    };
+
+    client = { pkgs, ... }: {
+      environment.systemPackages = with pkgs; [ curl netcat ];
+    };
+  };
+
+  testScript = ''
+    def activate_specialisation(name: str):
+        server.succeed(f"/run/booted-system/specialisation/{name}/bin/switch-to-configuration test >&2")
+
+    start_all()
+
+    with subtest("Unprivileged"):
+        activate_specialisation("unprivileged")
+        server.wait_for_unit("endlessh-go.service")
+        server.wait_for_open_port(2222)
+        server.wait_for_open_port(9229)
+        client.succeed("nc -dvW5 server 2222")
+        client.succeed("curl -kv server:9229/metrics")
+
+    with subtest("Privileged"):
+        activate_specialisation("privileged")
+        server.wait_for_unit("endlessh-go.service")
+        server.wait_for_open_port(22)
+        server.wait_for_open_port(92)
+        client.succeed("nc -dvW5 server 22")
+        client.succeed("curl -kv server:92/metrics")
+  '';
+})
diff --git a/nixos/tests/hydra/common.nix b/nixos/tests/hydra/common.nix
index fdf2b2c6f6dc1..2bce03418e1ff 100644
--- a/nixos/tests/hydra/common.nix
+++ b/nixos/tests/hydra/common.nix
@@ -16,7 +16,7 @@
     createTrivialProject = pkgs.stdenv.mkDerivation {
       name = "create-trivial-project";
       dontUnpack = true;
-      buildInputs = [ pkgs.makeWrapper ];
+      nativeBuildInputs = [ pkgs.makeWrapper ];
       installPhase = "install -m755 -D ${./create-trivial-project.sh} $out/bin/create-trivial-project.sh";
       postFixup = ''
         wrapProgram "$out/bin/create-trivial-project.sh" --prefix PATH ":" ${pkgs.lib.makeBinPath [ pkgs.curl ]} --set EXPR_PATH ${trivialJob}
diff --git a/nixos/tests/k3s/multi-node.nix b/nixos/tests/k3s/multi-node.nix
index ae9609fbccc9f..ce7e4b6ead148 100644
--- a/nixos/tests/k3s/multi-node.nix
+++ b/nixos/tests/k3s/multi-node.nix
@@ -1,4 +1,4 @@
-import ../make-test-python.nix ({ pkgs, ... }:
+import ../make-test-python.nix ({ pkgs, lib, ... }:
   let
     imageEnv = pkgs.buildEnv {
       name = "k3s-pause-image-env";
@@ -54,7 +54,15 @@ import ../make-test-python.nix ({ pkgs, ... }:
           role = "server";
           package = pkgs.k3s;
           clusterInit = true;
-          extraFlags = "--no-deploy coredns,servicelb,traefik,local-storage,metrics-server --pause-image test.local/pause:local --node-ip 192.168.1.1";
+          extraFlags = ''
+            --disable coredns \
+            --disable local-storage \
+            --disable metrics-server \
+            --disable servicelb \
+            --disable traefik \
+            --node-ip 192.168.1.1 \
+            --pause-image test.local/pause:local
+          '';
         };
         networking.firewall.allowedTCPPorts = [ 2379 2380 6443 ];
         networking.firewall.allowedUDPPorts = [ 8472 ];
@@ -76,7 +84,15 @@ import ../make-test-python.nix ({ pkgs, ... }:
           enable = true;
           serverAddr = "https://192.168.1.1:6443";
           clusterInit = false;
-          extraFlags = "--no-deploy coredns,servicelb,traefik,local-storage,metrics-server --pause-image test.local/pause:local --node-ip 192.168.1.3";
+          extraFlags = ''
+            --disable coredns \
+            --disable local-storage \
+            --disable metrics-server \
+            --disable servicelb \
+            --disable traefik \
+            --node-ip 192.168.1.3 \
+            --pause-image test.local/pause:local
+          '';
         };
         networking.firewall.allowedTCPPorts = [ 2379 2380 6443 ];
         networking.firewall.allowedUDPPorts = [ 8472 ];
@@ -123,7 +139,8 @@ import ../make-test-python.nix ({ pkgs, ... }:
       server.wait_until_succeeds("k3s kubectl get node agent")
 
       for m in machines:
-          m.succeed("k3s check-config")
+      '' # Fix-Me: Tests fail for 'aarch64-linux' as: "CONFIG_CGROUP_FREEZER: missing (fail)"
+      + lib.optionalString (!pkgs.stdenv.isAarch64) ''m.succeed("k3s check-config")'' + ''
           m.succeed(
               "${pauseImage} | k3s ctr image import -"
           )
diff --git a/nixos/tests/k3s/single-node.nix b/nixos/tests/k3s/single-node.nix
index 27e1e455e6415..ab562500f5d21 100644
--- a/nixos/tests/k3s/single-node.nix
+++ b/nixos/tests/k3s/single-node.nix
@@ -1,4 +1,4 @@
-import ../make-test-python.nix ({ pkgs, ... }:
+import ../make-test-python.nix ({ pkgs, lib, ... }:
   let
     imageEnv = pkgs.buildEnv {
       name = "k3s-pause-image-env";
@@ -40,7 +40,15 @@ import ../make-test-python.nix ({ pkgs, ... }:
       services.k3s.role = "server";
       services.k3s.package = pkgs.k3s;
       # Slightly reduce resource usage
-      services.k3s.extraFlags = "--no-deploy coredns,servicelb,traefik,local-storage,metrics-server --pause-image test.local/pause:local";
+      services.k3s.extraFlags = ''
+        --disable coredns \
+        --disable local-storage \
+        --disable metrics-server \
+        --disable servicelb \
+        --disable traefik \
+        --pause-image \
+        test.local/pause:local
+      '';
 
       users.users = {
         noprivs = {
@@ -57,7 +65,8 @@ import ../make-test-python.nix ({ pkgs, ... }:
       machine.wait_for_unit("k3s")
       machine.succeed("k3s kubectl cluster-info")
       machine.fail("sudo -u noprivs k3s kubectl cluster-info")
-      machine.succeed("k3s check-config")
+      '' # Fix-Me: Tests fail for 'aarch64-linux' as: "CONFIG_CGROUP_FREEZER: missing (fail)"
+      + lib.optionalString (!pkgs.stdenv.isAarch64) ''machine.succeed("k3s check-config")'' + ''
 
       machine.succeed(
           "${pauseImage} | k3s ctr image import -"
diff --git a/nixos/tests/kubernetes/base.nix b/nixos/tests/kubernetes/base.nix
index d4410beb937e6..714ac3098c0d7 100644
--- a/nixos/tests/kubernetes/base.nix
+++ b/nixos/tests/kubernetes/base.nix
@@ -18,7 +18,7 @@ let
         ${master.ip}  api.${domain}
         ${concatMapStringsSep "\n" (machineName: "${machines.${machineName}.ip}  ${machineName}.${domain}") (attrNames machines)}
       '';
-      wrapKubectl = with pkgs; runCommand "wrap-kubectl" { buildInputs = [ makeWrapper ]; } ''
+      wrapKubectl = with pkgs; runCommand "wrap-kubectl" { nativeBuildInputs = [ makeWrapper ]; } ''
         mkdir -p $out/bin
         makeWrapper ${pkgs.kubernetes}/bin/kubectl $out/bin/kubectl --set KUBECONFIG "/etc/kubernetes/cluster-admin.kubeconfig"
       '';
diff --git a/nixos/tests/ipfs.nix b/nixos/tests/kubo.nix
index 024822745ada5..e84a873a1a18d 100644
--- a/nixos/tests/ipfs.nix
+++ b/nixos/tests/kubo.nix
@@ -1,11 +1,11 @@
 import ./make-test-python.nix ({ pkgs, ...} : {
-  name = "ipfs";
+  name = "kubo";
   meta = with pkgs.lib.maintainers; {
     maintainers = [ mguentner ];
   };
 
   nodes.machine = { ... }: {
-    services.ipfs = {
+    services.kubo = {
       enable = true;
       # Also will add a unix domain socket socket API address, see module.
       startWhenNeeded = true;
@@ -15,7 +15,7 @@ import ./make-test-python.nix ({ pkgs, ...} : {
   };
 
   nodes.fuse = { ... }: {
-    services.ipfs = {
+    services.kubo = {
       enable = true;
       apiAddress = "/ip4/127.0.0.1/tcp/2324";
       autoMount = true;
diff --git a/nixos/tests/paperless.nix b/nixos/tests/paperless.nix
index 12883cd62c60c..b97834835c2c9 100644
--- a/nixos/tests/paperless.nix
+++ b/nixos/tests/paperless.nix
@@ -40,5 +40,13 @@ import ./make-test-python.nix ({ lib, ... }: {
         docs = json.loads(machine.succeed("curl -u admin:admin -fs localhost:28981/api/documents/"))['results']
         assert "2005-10-16" in docs[0]['created']
         assert "2005-10-16" in docs[1]['created']
+
+    # Detects gunicorn issues, see PR #190888
+    with subtest("Document metadata can be accessed"):
+        metadata = json.loads(machine.succeed("curl -u admin:admin -fs localhost:28981/api/documents/1/metadata/"))
+        assert "original_checksum" in metadata
+
+        metadata = json.loads(machine.succeed("curl -u admin:admin -fs localhost:28981/api/documents/2/metadata/"))
+        assert "original_checksum" in metadata
   '';
 })
diff --git a/nixos/tests/pulseaudio.nix b/nixos/tests/pulseaudio.nix
index cfdc61bc6c2b8..dc8e33ccd559c 100644
--- a/nixos/tests/pulseaudio.nix
+++ b/nixos/tests/pulseaudio.nix
@@ -1,10 +1,10 @@
 let
-  mkTest = { systemWide ? false }:
+  mkTest = { systemWide ? false , fullVersion ? false }:
     import ./make-test-python.nix ({ pkgs, lib, ... }:
       let
         testFile = pkgs.fetchurl {
           url =
-            "https://file-examples-com.github.io/uploads/2017/11/file_example_MP3_700KB.mp3";
+            "https://file-examples.com/storage/fe5947fd2362fc197a3c2df/2017/11/file_example_MP3_700KB.mp3";
           hash = "sha256-+iggJW8s0/LfA/okfXsB550/55Q0Sq3OoIzuBrzOPJQ=";
         };
 
@@ -22,7 +22,7 @@ let
           testPlay32 = { inherit (pkgs.pkgsi686Linux) sox alsa-utils; };
         };
       in {
-        name = "pulseaudio${lib.optionalString systemWide "-systemWide"}";
+        name = "pulseaudio${lib.optionalString fullVersion "Full"}${lib.optionalString systemWide "-systemWide"}";
         meta = with pkgs.lib.maintainers; {
           maintainers = [ synthetica ] ++ pkgs.pulseaudio.meta.maintainers;
         };
@@ -35,12 +35,14 @@ let
               enable = true;
               support32Bit = true;
               inherit systemWide;
+            } // lib.optionalAttrs fullVersion {
+              package = pkgs.pulseaudioFull;
             };
 
             environment.systemPackages = [ testers.testPlay pkgs.pavucontrol ]
               ++ lib.optional pkgs.stdenv.isx86_64 testers.testPlay32;
           } // lib.optionalAttrs systemWide {
-            users.users.alice.extraGroups = [ "audio" ];
+            users.users.alice.extraGroups = [ "pulse-access" ];
             systemd.services.pulseaudio.wantedBy = [ "multi-user.target" ];
           };
 
@@ -58,14 +60,21 @@ let
           ''}
           machine.screenshot("testPlay")
 
+          ${lib.optionalString (!systemWide) ''
+            machine.send_chars("pacmd info && touch /tmp/pacmd_success\n")
+            machine.wait_for_file("/tmp/pacmd_success")
+          ''}
+
           # Pavucontrol only loads when Pulseaudio is running. If it isn't, the
-          # text "Playback" (one of the tabs) will never show.
+          # text "Dummy Output" (sound device name) will never show.
           machine.send_chars("pavucontrol\n")
-          machine.wait_for_text("Playback")
+          machine.wait_for_text("Dummy Output")
           machine.screenshot("Pavucontrol")
         '';
       });
 in builtins.mapAttrs (key: val: mkTest val) {
-  user = { systemWide = false; };
-  system = { systemWide = true; };
+  user = { systemWide = false; fullVersion = false; };
+  system = { systemWide = true; fullVersion = false; };
+  userFull = { systemWide = false; fullVersion = true; };
+  systemFull = { systemWide = true; fullVersion = true; };
 }
diff --git a/nixos/tests/retroarch.nix b/nixos/tests/retroarch.nix
index c506ed02da89b..f4bf232ea725e 100644
--- a/nixos/tests/retroarch.nix
+++ b/nixos/tests/retroarch.nix
@@ -2,7 +2,7 @@ import ./make-test-python.nix ({ pkgs, ... }:
 
   {
     name = "retroarch";
-    meta = with pkgs.lib.maintainers; { maintainers = [ j0hax ]; };
+    meta = with pkgs.lib; { maintainers = teams.libretro.members ++ [ maintainers.j0hax ]; };
 
     nodes.machine = { ... }:
 
@@ -11,7 +11,7 @@ import ./make-test-python.nix ({ pkgs, ... }:
         services.xserver.enable = true;
         services.xserver.desktopManager.retroarch = {
           enable = true;
-          package = pkgs.retroarchFull;
+          package = pkgs.retroarchBare;
         };
         services.xserver.displayManager = {
           sddm.enable = true;
diff --git a/nixos/tests/seafile.nix b/nixos/tests/seafile.nix
index 6eec8b1fbe55c..78e735f4fed73 100644
--- a/nixos/tests/seafile.nix
+++ b/nixos/tests/seafile.nix
@@ -79,18 +79,14 @@ import ./make-test-python.nix ({ pkgs, ... }:
               f"seaf-cli download -l {libid} -s http://server -u admin\@example.com -p seafile_password -d . >&2"
           )
 
-          client1.sleep(3)
-
-          client1.succeed("seaf-cli status |grep synchronized >&2")
+          client1.wait_until_succeeds("seaf-cli status |grep synchronized >&2")
 
           client1.succeed("ls -la >&2")
           client1.succeed("ls -la test01 >&2")
 
           client1.execute("echo bla > test01/first_file")
 
-          client1.sleep(2)
-
-          client1.succeed("seaf-cli status |grep synchronized >&2")
+          client1.wait_until_succeeds("seaf-cli status |grep synchronized >&2")
 
       with subtest("client2 sync"):
           client2.wait_for_unit("default.target")
@@ -110,9 +106,7 @@ import ./make-test-python.nix ({ pkgs, ... }:
               f"seaf-cli download -l {libid} -s http://server -u admin\@example.com -p seafile_password -d . >&2"
           )
 
-          client2.sleep(3)
-
-          client2.succeed("seaf-cli status |grep synchronized >&2")
+          client2.wait_until_succeeds("seaf-cli status |grep synchronized >&2")
 
           client2.succeed("ls -la test01 >&2")
 
diff --git a/nixos/tests/spark/default.nix b/nixos/tests/spark/default.nix
index 025c5a5222e71..462f0d23a4032 100644
--- a/nixos/tests/spark/default.nix
+++ b/nixos/tests/spark/default.nix
@@ -7,6 +7,7 @@ import ../make-test-python.nix ({...}: {
         enable = true;
         master = "master:7077";
       };
+      virtualisation.memorySize = 2048;
     };
     master = { config, pkgs, ... }: {
       services.spark.master = {
diff --git a/nixos/tests/sssd-ldap.nix b/nixos/tests/sssd-ldap.nix
index 27dce6ceb98cd..ff83e96068a96 100644
--- a/nixos/tests/sssd-ldap.nix
+++ b/nixos/tests/sssd-ldap.nix
@@ -91,6 +91,11 @@ in import ./make-test-python.nix ({pkgs, ...}: {
     machine.start()
     machine.wait_for_unit("openldap.service")
     machine.wait_for_unit("sssd.service")
-    machine.succeed("getent passwd ${testUser}")
+    result = machine.execute("getent passwd ${testUser}")
+    if result[0] == 0:
+      assert "${testUser}" in result[1]
+    else:
+      machine.wait_for_console_text("Backend is online")
+      machine.succeed("getent passwd ${testUser}")
   '';
 })
diff --git a/nixos/tests/systemd-initrd-modprobe.nix b/nixos/tests/systemd-initrd-modprobe.nix
new file mode 100644
index 0000000000000..bf635a10d0e97
--- /dev/null
+++ b/nixos/tests/systemd-initrd-modprobe.nix
@@ -0,0 +1,17 @@
+import ./make-test-python.nix ({ lib, pkgs, ... }: {
+  name = "systemd-initrd-modprobe";
+
+  nodes.machine = { pkgs, ... }: {
+    boot.initrd.systemd.enable = true;
+    boot.initrd.kernelModules = [ "loop" ]; # Load module in initrd.
+    boot.extraModprobeConfig = ''
+      options loop max_loop=42
+    '';
+  };
+
+  testScript = ''
+    machine.wait_for_unit("multi-user.target")
+    max_loop = machine.succeed("cat /sys/module/loop/parameters/max_loop")
+    assert int(max_loop) == 42, "Parameter should be respected for initrd kernel modules"
+  '';
+})
diff --git a/nixos/tests/systemd-oomd.nix b/nixos/tests/systemd-oomd.nix
index f0b5a5f8e01ab..55c4c13500005 100644
--- a/nixos/tests/systemd-oomd.nix
+++ b/nixos/tests/systemd-oomd.nix
@@ -3,35 +3,52 @@ import ./make-test-python.nix ({ pkgs, ... }:
 {
   name = "systemd-oomd";
 
+  # This test is a simplified version of systemd's testsuite-55.
+  # https://github.com/systemd/systemd/blob/v251/test/units/testsuite-55.sh
   nodes.machine = { pkgs, ... }: {
-    systemd.oomd.extraConfig.DefaultMemoryPressureDurationSec = "1s"; # makes the test faster
-    # Kill cgroups when more than 1% pressure is encountered
-    systemd.slices."-".sliceConfig = {
-      ManagedOOMMemoryPressure = "kill";
-      ManagedOOMMemoryPressureLimit = "1%";
+    # Limit VM resource usage.
+    virtualisation.memorySize = 1024;
+    systemd.oomd.extraConfig.DefaultMemoryPressureDurationSec = "1s";
+
+    systemd.slices.workload = {
+      description = "Test slice for memory pressure kills";
+      sliceConfig = {
+        MemoryAccounting = true;
+        ManagedOOMMemoryPressure = "kill";
+        ManagedOOMMemoryPressureLimit = "10%";
+      };
     };
-    # A service to bring the system under memory pressure
-    systemd.services.testservice = {
-      serviceConfig.ExecStart = "${pkgs.coreutils}/bin/tail /dev/zero";
+
+    systemd.services.testbloat = {
+      description = "Create a lot of memory pressure";
+      serviceConfig = {
+        Slice = "workload.slice";
+        MemoryHigh = "5M";
+        ExecStart = "${pkgs.coreutils}/bin/tail /dev/zero";
+      };
     };
-    # Do not kill the backdoor
-    systemd.services.backdoor.serviceConfig.ManagedOOMMemoryPressure = "auto";
 
-    virtualisation.memorySize = 1024;
+    systemd.services.testchill = {
+      description = "No memory pressure";
+      serviceConfig = {
+        Slice = "workload.slice";
+        MemoryHigh = "3M";
+        ExecStart = "${pkgs.coreutils}/bin/sleep infinity";
+      };
+    };
   };
 
   testScript = ''
-    # Start the system
+    # Start the system.
     machine.wait_for_unit("multi-user.target")
     machine.succeed("oomctl")
 
-    # Bring the system into memory pressure
-    machine.succeed("echo 0 > /proc/sys/vm/panic_on_oom")  # NixOS tests kill the VM when the OOM killer is invoked - override this
-    machine.succeed("systemctl start testservice")
+    machine.succeed("systemctl start testchill.service")
+    with subtest("OOMd should kill the bad service"):
+        machine.fail("systemctl start --wait testbloat.service")
+        assert machine.get_unit_info("testbloat.service")["Result"] == "oom-kill"
 
-    # Wait for oomd to kill something
-    # Matches these lines:
-    # systemd-oomd[508]: Killed /system.slice/systemd-udevd.service due to memory pressure for / being 3.26% > 1.00% for > 1s with reclaim activity
-    machine.wait_until_succeeds("journalctl -b | grep -q 'due to memory pressure for'")
+    with subtest("Service without memory pressure should be untouched"):
+        machine.require_unit_state("testchill.service", "active")
   '';
 })
diff --git a/nixos/tests/tandoor-recipes.nix b/nixos/tests/tandoor-recipes.nix
new file mode 100644
index 0000000000000..54456238fe634
--- /dev/null
+++ b/nixos/tests/tandoor-recipes.nix
@@ -0,0 +1,43 @@
+import ./make-test-python.nix ({ lib, ... }: {
+  name = "tandoor-recipes";
+  meta.maintainers = with lib.maintainers; [ ambroisie ];
+
+  nodes.machine = { pkgs, ... }: {
+    # Setup using Postgres
+    services.tandoor-recipes = {
+      enable = true;
+
+      extraConfig = {
+        DB_ENGINE = "django.db.backends.postgresql";
+        POSTGRES_HOST = "/run/postgresql";
+        POSTGRES_USER = "tandoor_recipes";
+        POSTGRES_DB = "tandoor_recipes";
+      };
+    };
+
+    services.postgresql = {
+      enable = true;
+      ensureDatabases = [ "tandoor_recipes" ];
+      ensureUsers = [
+        {
+          name = "tandoor_recipes";
+          ensurePermissions."DATABASE tandoor_recipes" = "ALL PRIVILEGES";
+        }
+      ];
+    };
+
+    systemd.services = {
+      tandoor-recipes = {
+        after = [ "postgresql.service" ];
+      };
+    };
+  };
+
+  testScript = ''
+    machine.wait_for_unit("tandoor-recipes.service")
+
+    with subtest("Web interface gets ready"):
+        # Wait until server accepts connections
+        machine.wait_until_succeeds("curl -fs localhost:8080")
+  '';
+})
diff --git a/nixos/tests/tmate-ssh-server.nix b/nixos/tests/tmate-ssh-server.nix
new file mode 100644
index 0000000000000..e7f94db9bfcf4
--- /dev/null
+++ b/nixos/tests/tmate-ssh-server.nix
@@ -0,0 +1,73 @@
+import ./make-test-python.nix ({ pkgs, lib, ... }:
+let
+  inherit (import ./ssh-keys.nix pkgs)
+    snakeOilPrivateKey snakeOilPublicKey;
+
+  setUpPrivateKey = name: ''
+    ${name}.succeed(
+        "mkdir -p /root/.ssh",
+        "chown 700 /root/.ssh",
+        "cat '${snakeOilPrivateKey}' > /root/.ssh/id_snakeoil",
+        "chown 600 /root/.ssh/id_snakeoil",
+    )
+    ${name}.wait_for_file("/root/.ssh/id_snakeoil")
+  '';
+
+  sshOpts = "-oStrictHostKeyChecking=no -oUserKnownHostsFile=/dev/null -oIdentityFile=/root/.ssh/id_snakeoil";
+
+in
+{
+  name = "tmate-ssh-server";
+  nodes =
+    {
+      server = { ... }: {
+        services.tmate-ssh-server = {
+          enable = true;
+          port = 2223;
+        };
+      };
+      client = { ... }: {
+        environment.systemPackages = [ pkgs.tmate ];
+        services.openssh.enable = true;
+        users.users.root.openssh.authorizedKeys.keys = [ snakeOilPublicKey ];
+      };
+      client2 = { ... }: {
+        environment.systemPackages = [ pkgs.openssh ];
+      };
+    };
+  testScript = ''
+    start_all()
+
+    server.wait_for_unit("tmate-ssh-server.service")
+    server.wait_for_open_port(2223)
+    server.wait_for_file("/etc/tmate-ssh-server-keys/ssh_host_ed25519_key.pub")
+    server.wait_for_file("/etc/tmate-ssh-server-keys/ssh_host_rsa_key.pub")
+    server.succeed("tmate-client-config > /tmp/tmate.conf")
+    server.wait_for_file("/tmp/tmate.conf")
+
+    ${setUpPrivateKey "server"}
+    client.wait_for_unit("sshd.service")
+    client.wait_for_open_port(22)
+    server.succeed("scp ${sshOpts} /tmp/tmate.conf client:/tmp/tmate.conf")
+
+    client.wait_for_file("/tmp/tmate.conf")
+    client.send_chars("root\n")
+    client.sleep(2)
+    client.send_chars("tmate -f /tmp/tmate.conf\n")
+    client.sleep(2)
+    client.send_chars("q")
+    client.sleep(2)
+    client.send_chars("tmate display -p '#{tmate_ssh}' > /tmp/ssh_command\n")
+    client.wait_for_file("/tmp/ssh_command")
+    ssh_cmd = client.succeed("cat /tmp/ssh_command")
+
+    client2.succeed("mkdir -p ~/.ssh; ssh-keyscan -p 2223 server > ~/.ssh/known_hosts")
+    client2.send_chars("root\n")
+    client2.sleep(2)
+    client2.send_chars(ssh_cmd.strip() + "\n")
+    client2.sleep(2)
+    client2.send_chars("touch /tmp/client_2\n")
+
+    client.wait_for_file("/tmp/client_2")
+  '';
+})
diff --git a/nixos/tests/vengi-tools.nix b/nixos/tests/vengi-tools.nix
index 5bc8d72c77237..fd7567991487e 100644
--- a/nixos/tests/vengi-tools.nix
+++ b/nixos/tests/vengi-tools.nix
@@ -20,10 +20,8 @@ import ./make-test-python.nix ({ pkgs, ... }: {
       machine.wait_for_x()
       machine.execute("vengi-voxedit >&2 &")
       machine.wait_for_window("voxedit")
-      # OCR on voxedit's window is very expensive, so we avoid wasting a try
-      # by letting the window load fully first
+      # Let the window load fully
       machine.sleep(15)
-      machine.wait_for_text("Solid")
       machine.screenshot("screen")
     '';
 })
diff --git a/pkgs/applications/audio/apple-music-electron/default.nix b/pkgs/applications/audio/apple-music-electron/default.nix
deleted file mode 100644
index 850f644afc34e..0000000000000
--- a/pkgs/applications/audio/apple-music-electron/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ appimageTools, lib, fetchurl }:
-let
-  pname = "apple-music-electron";
-  version = "1.5.5";
-  name = "Apple.Music-${version}";
-
-  src = fetchurl {
-    url = "https://github.com/cryptofyre/Apple-Music-Electron/releases/download/v${version}/${name}.AppImage";
-    sha256 = "1gb6j3nvam9fcpsgiv56jccg9a4y14vzsyw11h3hckaigy90knpx";
-  };
-
-  appimageContents = appimageTools.extract { inherit name src; };
-in appimageTools.wrapType2 {
-  inherit name src;
-
-  extraInstallCommands = ''
-    mv $out/bin/${name} $out/bin/${pname}
-
-    install -m 444 -D ${appimageContents}/${pname}.desktop -t $out/share/applications
-    substituteInPlace $out/share/applications/${pname}.desktop \
-      --replace 'Exec=AppRun' 'Exec=${pname}'
-    cp -r ${appimageContents}/usr/share/icons $out/share
-  '';
-
-  meta = with lib; {
-    description = "Unofficial Apple Music application without having to bother with a Web Browser or iTunes";
-    homepage = "https://github.com/iiFir3z/Apple-Music-Electron";
-    license = licenses.mit;
-    maintainers = [ maintainers.ivar ];
-    platforms = [ "x86_64-linux" ];
-  };
-}
diff --git a/pkgs/applications/audio/audacity/default.nix b/pkgs/applications/audio/audacity/default.nix
index 953e9887f5a6e..733368c115c4c 100644
--- a/pkgs/applications/audio/audacity/default.nix
+++ b/pkgs/applications/audio/audacity/default.nix
@@ -13,6 +13,7 @@
 , libjack2
 , lv2
 , lilv
+, mpg123
 , serd
 , sord
 , sqlite
@@ -45,52 +46,36 @@
 , libsepol
 , libxkbcommon
 , util-linux
-, wxGTK
+, wavpack
+, wxGTK32
+, gtk3
 , libpng
 , libjpeg
-, AppKit ? null
-, AudioToolbox ? null
-, AudioUnit ? null
-, Carbon ? null
-, Cocoa ? null
-, CoreAudio ? null
-, CoreAudioKit ? null
-, CoreServices ? null
-, wxmac
+, AppKit
+, AudioToolbox
+, AudioUnit
+, Carbon
+, CoreAudio
+, CoreAudioKit
+, CoreServices
 }:
 
 # TODO
-# 1. as of 3.0.2, GTK2 is still the recommended version ref https://www.audacityteam.org/download/source/ check if that changes in future versions
-# 2. detach sbsms
+# 1. detach sbsms
 
 let
   inherit (lib) optionals;
   pname = "audacity";
-  version = "3.1.3";
-
-  wxWidgets_src = fetchFromGitHub {
-    owner = pname;
-    repo = "wxWidgets";
-    rev = "v${version}-${pname}";
-    sha256 = "sha256-KrmYYv23DHBYKIuxMYBioCQ2e4KWdgmuREnimtm0XNU=";
-    fetchSubmodules = true;
-  };
-
-  wxGTK' = wxGTK.overrideAttrs (oldAttrs: rec {
-    src = wxWidgets_src;
-  });
-
-  wxmac' = wxmac.overrideAttrs (oldAttrs: rec {
-    src = wxWidgets_src;
-  });
-in stdenv.mkDerivation rec {
+  version = "3.2.1";
+in
+stdenv.mkDerivation rec {
   inherit pname version;
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "Audacity-${version}";
-    sha256 = "sha256-sdI4paxIHDZgoWTCekjrkFR4JFpQC6OatcnJdVXCCZk=";
+    sha256 = "sha256-7rfttp9LnfM2LBT5seupPyDckS7LEzWDZoqtLsGgqgI=";
   };
 
   postPatch = ''
@@ -105,9 +90,9 @@ in stdenv.mkDerivation rec {
     gettext
     pkg-config
     python3
+    makeWrapper
   ] ++ optionals stdenv.isLinux [
     linuxHeaders
-    makeWrapper
   ];
 
   buildInputs = [
@@ -115,6 +100,7 @@ in stdenv.mkDerivation rec {
     ffmpeg_4
     file
     flac
+    gtk3
     lame
     libid3tag
     libjack2
@@ -125,6 +111,7 @@ in stdenv.mkDerivation rec {
     libvorbis
     lilv
     lv2
+    mpg123
     pcre
     portmidi
     serd
@@ -136,6 +123,8 @@ in stdenv.mkDerivation rec {
     suil
     twolame
     portaudio
+    wavpack
+    wxGTK32
   ] ++ optionals stdenv.isLinux [
     alsa-lib # for portaudio
     at-spi2-core
@@ -149,12 +138,8 @@ in stdenv.mkDerivation rec {
     libsepol
     libuuid
     util-linux
-    wxGTK'
-    wxGTK'.gtk
   ] ++ optionals stdenv.isDarwin [
-    wxmac'
     AppKit
-    Cocoa
     CoreAudioKit
     AudioUnit AudioToolbox CoreAudio CoreServices Carbon # for portaudio
     libpng
@@ -167,22 +152,33 @@ in stdenv.mkDerivation rec {
     "-DDISABLE_DYNAMIC_LOADING_FFMPEG=ON"
     "-Daudacity_conan_enabled=Off"
     "-Daudacity_use_ffmpeg=loaded"
+    "-Daudacity_has_vst3=Off"
 
     # RPATH of binary /nix/store/.../bin/... contains a forbidden reference to /build/
     "-DCMAKE_SKIP_BUILD_RPATH=ON"
   ];
 
+  # [ 57%] Generating LightThemeAsCeeCode.h...
+  # ../../utils/image-compiler: error while loading shared libraries:
+  # lib-theme.so: cannot open shared object file: No such file or directory
+  preBuild = ''
+    export LD_LIBRARY_PATH=$PWD/utils
+  '';
+
   doCheck = false; # Test fails
 
   # Replace audacity's wrapper, to:
   # - put it in the right place, it shouldn't be in "$out/audacity"
   # - Add the ffmpeg dynamic dependency
   postInstall = lib.optionalString stdenv.isLinux ''
-    rm "$out/audacity"
     wrapProgram "$out/bin/audacity" \
       --prefix LD_LIBRARY_PATH : "$out/lib/audacity":${lib.makeLibraryPath [ ffmpeg_4 ]} \
       --suffix AUDACITY_MODULES_PATH : "$out/lib/audacity/modules" \
       --suffix AUDACITY_PATH : "$out/share/audacity"
+  '' + lib.optionalString stdenv.isDarwin ''
+    mkdir -p $out/{Applications,bin}
+    mv $out/Audacity.app $out/Applications/
+    makeWrapper $out/Applications/Audacity.app/Contents/MacOS/Audacity $out/bin/audacity
   '';
 
   meta = with lib; {
@@ -198,11 +194,9 @@ in stdenv.mkDerivation rec {
       # Documentation.
       cc-by-30
     ];
-    maintainers = with maintainers; [ lheckemann veprbl ];
+    maintainers = with maintainers; [ lheckemann veprbl wegank ];
     platforms = platforms.unix;
-    # darwin-aarch due to qtbase broken for it.
-    # darwin-x86_64 due to
-    # https://logs.nix.ci/?attempt_id=5cbc4581-09b4-4148-82fe-0326411a56b3&key=nixos%2Fnixpkgs.152273.
-    broken = stdenv.isDarwin;
+    # error: unknown type name 'NSAppearanceName'
+    broken = stdenv.isDarwin && stdenv.isx86_64;
   };
 }
diff --git a/pkgs/applications/audio/aumix/default.nix b/pkgs/applications/audio/aumix/default.nix
index 2603e88fcbdb7..6127cb7e69291 100644
--- a/pkgs/applications/audio/aumix/default.nix
+++ b/pkgs/applications/audio/aumix/default.nix
@@ -28,8 +28,12 @@ stdenv.mkDerivation rec {
     })
   ];
 
+  nativeBuildInputs = lib.optionals gtkGUI [ pkg-config ];
+
   buildInputs = [ gettext ncurses ]
-    ++ lib.optionals gtkGUI [ pkg-config gtk2 ];
+    ++ lib.optionals gtkGUI [ gtk2 ];
+
+  configureFlags = lib.optionals (!gtkGUI) ["--without-gtk"];
 
   meta = with lib; {
     description = "Audio mixer for X and the console";
diff --git a/pkgs/applications/audio/blanket/default.nix b/pkgs/applications/audio/blanket/default.nix
index 6c648ed711591..3b12aeb886841 100644
--- a/pkgs/applications/audio/blanket/default.nix
+++ b/pkgs/applications/audio/blanket/default.nix
@@ -4,7 +4,7 @@
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook4
 , desktop-file-utils
 , appstream-glib
 , python3Packages
@@ -30,9 +30,8 @@ python3Packages.buildPythonApplication rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook4
     desktop-file-utils
-    appstream-glib
   ];
 
   buildInputs = [
@@ -57,6 +56,8 @@ python3Packages.buildPythonApplication rec {
 
   postPatch = ''
     patchShebangs build-aux/meson/postinstall.py
+    substituteInPlace build-aux/meson/postinstall.py \
+      --replace gtk-update-icon-cache gtk4-update-icon-cache
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/audio/calf/default.nix b/pkgs/applications/audio/calf/default.nix
index bdcbf024e6064..4ab651e3fb847 100644
--- a/pkgs/applications/audio/calf/default.nix
+++ b/pkgs/applications/audio/calf/default.nix
@@ -12,9 +12,10 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
+  nativeBuildInputs = [ pkg-config ];
   buildInputs = [
     cairo expat fftwSinglePrec fluidsynth glib gtk2 libjack2 ladspaH
-    libglade lv2 pkg-config
+    libglade lv2
   ];
 
   meta = with lib; {
diff --git a/pkgs/applications/audio/eartag/default.nix b/pkgs/applications/audio/eartag/default.nix
new file mode 100644
index 0000000000000..aad765041e4b8
--- /dev/null
+++ b/pkgs/applications/audio/eartag/default.nix
@@ -0,0 +1,78 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, meson
+, ninja
+, pkg-config
+, wrapGAppsHook4
+, libadwaita
+, gettext
+, glib
+, gobject-introspection
+, desktop-file-utils
+, appstream-glib
+, gtk4
+, librsvg
+, python3Packages
+}:
+
+python3Packages.buildPythonApplication rec {
+  pname = "eartag";
+  version = "0.2.1";
+  format = "other";
+
+  src = fetchFromGitHub {
+    owner = "knuxify";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-TlY2F2y7ZZ9f+vkYYkES5zoIGcuTWP1+rOJI62wc4SU=";
+  };
+
+  postPatch = ''
+    chmod +x ./build-aux/meson/postinstall.py
+    patchShebangs ./build-aux/meson/postinstall.py
+    substituteInPlace ./build-aux/meson/postinstall.py \
+      --replace "gtk-update-icon-cache" "gtk4-update-icon-cache"
+  '';
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    glib
+    desktop-file-utils
+    appstream-glib
+    pkg-config
+    gettext
+    gobject-introspection
+    wrapGAppsHook4
+  ] ++ lib.optional stdenv.isDarwin gtk4; # for gtk4-update-icon-cache
+
+  buildInputs = [
+    librsvg
+    libadwaita
+  ];
+
+  propagatedBuildInputs = with python3Packages; [
+    pygobject3
+    eyeD3
+    pillow
+    mutagen
+    pytaglib
+    python-magic
+  ];
+
+  dontWrapGApps = true;
+  preFixup = ''
+    makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/knuxify/eartag";
+    description = "Simple music tag editor";
+    # This seems to be using ICU license but we're flagging it to MIT license
+    # since ICU license is a modified version of MIT and to prevent it from
+    # being incorrectly identified as unfree software.
+    license = licenses.mit;
+    maintainers = with maintainers; [ foo-dogsquared ];
+  };
+}
diff --git a/pkgs/applications/audio/exact-audio-copy/default.nix b/pkgs/applications/audio/exact-audio-copy/default.nix
new file mode 100644
index 0000000000000..bd5e55bc21061
--- /dev/null
+++ b/pkgs/applications/audio/exact-audio-copy/default.nix
@@ -0,0 +1,86 @@
+{ lib
+, stdenv
+, fetchurl
+, makeDesktopItem
+, imagemagick
+, p7zip
+, wine
+, writeShellScriptBin
+, symlinkJoin
+, use64 ? false
+}:
+
+let
+  pname = "exact-audio-copy";
+  version = "1.6.0";
+
+  eac_exe = fetchurl {
+    url = "http://www.exactaudiocopy.de/eac-${lib.versions.majorMinor version}.exe";
+    sha256 = "8291d33104ebab2619ba8d85744083e241330a286f5bd7d54c7b0eb08f2b84c1";
+  };
+
+  cygwin_dll = fetchurl {
+    url = "https://cygwin.com/snapshots/x86/cygwin1-20220301.dll.xz";
+    sha256 = "0zxn0r5q69fhciy0mrplhxj1hxwy3sq4k1wdy6n6kyassm4zyz1x";
+  };
+
+  patched_eac = stdenv.mkDerivation {
+    pname = "patched_eac";
+    inherit version;
+
+    nativeBuildInputs = [
+      imagemagick
+      p7zip
+    ];
+
+    buildCommand = ''
+      mkdir -p $out
+      _tmp=$(mktemp -d)
+      cd $_tmp
+      7z x -aoa ${eac_exe}
+      chmod -R 755 .
+      cp ${cygwin_dll} cygwin1.dll.xz
+      xz --decompress cygwin1.dll.xz
+      mv cygwin1.dll CDRDAO/
+      cp -r * $out
+      7z x EAC.exe
+      convert .rsrc/1033/ICON/29.ico -thumbnail 128x128 -alpha on -background none -flatten "$out/eac.ico.128.png"
+    '';
+  };
+
+  wrapper = writeShellScriptBin pname ''
+    export WINEPREFIX="''${EXACT_AUDIO_COPY_HOME:-"''${XDG_DATA_HOME:-"''${HOME}/.local/share"}/exact-audio-copy"}/wine"
+    export WINEARCH=${if use64 then "win64" else "win32"}
+    export WINEDLLOVERRIDES="mscoree=" # disable mono
+    export WINEDEBUG=-all
+    if [ ! -d "$WINEPREFIX" ] ; then
+      mkdir -p "$WINEPREFIX"
+      ${wine}/bin/wineboot -u
+    fi
+
+    exec ${wine}/bin/wine ${patched_eac}/EAC.exe "$@"
+  '';
+
+  desktopItem = makeDesktopItem {
+    name = pname;
+    exec = pname;
+    comment = "Audio Grabber for CDs";
+    desktopName = "Exact Audio Copy";
+    categories = [ "Audio" "AudioVideo" ];
+    icon = "${patched_eac}/eac.ico.128.png";
+  };
+in
+symlinkJoin {
+  name = "${pname}-${version}";
+
+  paths = [ wrapper desktopItem ];
+
+  meta = with lib; {
+    description = "A precise CD audio grabber for creating perfect quality rips using CD and DVD drives";
+    homepage = "https://www.exactaudiocopy.de/";
+    changelog = "https://www.exactaudiocopy.de/en/index.php/resources/whats-new/whats-new/";
+    license = licenses.unfree;
+    maintainers = [ maintainers.brendanreis ];
+    platforms = wine.meta.platforms;
+  };
+}
diff --git a/pkgs/applications/audio/flac/default.nix b/pkgs/applications/audio/flac/default.nix
index 621804840bf02..c9e3b946dd19f 100644
--- a/pkgs/applications/audio/flac/default.nix
+++ b/pkgs/applications/audio/flac/default.nix
@@ -2,11 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "flac";
-  version = "1.3.4";
+  version = "1.4.1";
 
   src = fetchurl {
     url = "http://downloads.xiph.org/releases/flac/${pname}-${version}.tar.xz";
-    sha256 = "0dz7am8kbc97a6afml1h4yp085274prg8j7csryds8m3fmz61w4g";
+    # Official checksum is published at https://github.com/xiph/flac/releases/tag/${version}
+    sha256 = "91303c3e5dfde52c3e94e75976c0ab3ee14ced278ab8f60033a3a12db9209ae6";
   };
 
   buildInputs = [ libogg ];
@@ -20,5 +21,6 @@ stdenv.mkDerivation rec {
     description = "Library and tools for encoding and decoding the FLAC lossless audio file format";
     platforms = platforms.all;
     license = licenses.bsd3;
+    maintainers = with maintainers; [ ruuda ];
   };
 }
diff --git a/pkgs/applications/audio/ft2-clone/default.nix b/pkgs/applications/audio/ft2-clone/default.nix
index 1047da60906e6..d26d92e00db0f 100644
--- a/pkgs/applications/audio/ft2-clone/default.nix
+++ b/pkgs/applications/audio/ft2-clone/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ft2-clone";
-  version = "1.58";
+  version = "1.59";
 
   src = fetchFromGitHub {
     owner = "8bitbubsy";
     repo = "ft2-clone";
     rev = "v${version}";
-    sha256 = "sha256-FHhASs1PKTz6G1sAKNUeft0BHbWgl44l7eiOnyQXZb8=";
+    sha256 = "sha256-TQJCkvPV6vbhURLcuH41i8obHnfHkrCTJG0+IuSVDos=";
   };
 
   # Adapt the linux-only CMakeLists to darwin (more reliable than make-macos.sh)
diff --git a/pkgs/applications/audio/gmpc/default.nix b/pkgs/applications/audio/gmpc/default.nix
index 4c93fad511ae0..33930dfb7d2d1 100644
--- a/pkgs/applications/audio/gmpc/default.nix
+++ b/pkgs/applications/audio/gmpc/default.nix
@@ -24,9 +24,10 @@ stdenv.mkDerivation rec {
   version = "11.8.16";
 
   libmpd = stdenv.mkDerivation {
-    name = "libmpd-11.8.17";
+    pname = "libmpd";
+    version = "11.8.17";
     src = fetchurl {
-      url = "http://download.sarine.nl/Programs/gmpc/11.8/libmpd-11.8.17.tar.gz";
+      url = "https://download.sarine.nl/Programs/gmpc/${lib.versions.majorMinor version}/libmpd-${version}.tar.gz";
       sha256 = "10vspwsgr8pwf3qp2bviw6b2l8prgdiswgv7qiqiyr0h1mmk487y";
     };
     patches = [ ./libmpd-11.8.17-remove-strndup.patch ];
diff --git a/pkgs/applications/audio/grandorgue/default.nix b/pkgs/applications/audio/grandorgue/default.nix
index 30c6e57188abc..954a2265312e4 100644
--- a/pkgs/applications/audio/grandorgue/default.nix
+++ b/pkgs/applications/audio/grandorgue/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake pkg-config ];
 
-  buildInputs = [ pkg-config fftwFloat alsa-lib zlib wavpack wxGTK31 udev ]
+  buildInputs = [ fftwFloat alsa-lib zlib wavpack wxGTK31 udev ]
     ++ lib.optional jackaudioSupport libjack2;
 
   cmakeFlags = lib.optional (!jackaudioSupport) [
diff --git a/pkgs/applications/audio/jamesdsp/default.nix b/pkgs/applications/audio/jamesdsp/default.nix
index 786b455120852..be6f095143873 100644
--- a/pkgs/applications/audio/jamesdsp/default.nix
+++ b/pkgs/applications/audio/jamesdsp/default.nix
@@ -13,7 +13,6 @@
 , makeDesktopItem
 , pkg-config
 , libarchive
-, fetchpatch
 , copyDesktopItems
 , usePipewire ? true
 , usePulseaudio ? false
@@ -26,28 +25,15 @@ let
 in
   mkDerivation rec {
   pname = "jamesdsp";
-  version = "2.3";
+  version = "2.4";
   src = fetchFromGitHub rec {
     owner = "Audio4Linux";
     repo = "JDSP4Linux";
     fetchSubmodules = true;
     rev = version;
-    hash = "sha256-Hkzurr+s+vvSyOMCYH9kHI+nIm6mL9yORGNzY2FXslc=";
+    hash = "sha256-wD1JZQD8dR24cBN4QJCSrEsS4aoMD+MQmqnOIFKOeoE=";
   };
 
-  patches = [
-    # fixing /usr install assumption, remove on version bump
-    (fetchpatch {
-      url = "https://github.com/Audio4Linux/JDSP4Linux/commit/003c9e9fc426f83e269aed6e05be3ed55273931a.patch";
-      hash = "sha256-crll/a7C9pUq9eL5diq8/YgC5bNC6SrdijZEBxZpJ8E=";
-    })
-    # compatibility fix for PipeWire 0.3.44+, remove on version bump
-    (fetchpatch {
-      url = "https://github.com/Audio4Linux/JDSP4Linux/commit/e04c55735cc20fc3c3ce042c5681ec80f7df3c96.patch";
-      hash = "sha256-o6AUtQzugykALSdkM3i3lYqRmzJX3FzmALSi0TrWuRA=";
-    })
-  ];
-
   nativeBuildInputs = [
     qmake
     pkg-config
@@ -86,6 +72,11 @@ in
     })
   ];
 
+  postInstall = ''
+    install -D resources/icons/icon.png $out/share/pixmaps/jamesdsp.png
+    install -D resources/icons/icon.svg $out/share/icons/hicolor/scalable/apps/jamesdsp.svg
+  '';
+
   meta = with lib;{
     broken = (stdenv.isLinux && stdenv.isAarch64);
     description = "An audio effect processor for PipeWire clients";
diff --git a/pkgs/applications/audio/ltc-tools/default.nix b/pkgs/applications/audio/ltc-tools/default.nix
index c8c87959727c1..9355810507448 100644
--- a/pkgs/applications/audio/ltc-tools/default.nix
+++ b/pkgs/applications/audio/ltc-tools/default.nix
@@ -11,7 +11,8 @@ stdenv.mkDerivation rec {
     sha256 = "0vp25b970r1hv5ndzs4di63rgwnl31jfaj3jz5dka276kx34q4al";
   };
 
-  buildInputs = [ pkg-config libltc libsndfile jack2 ];
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ libltc libsndfile jack2 ];
 
   makeFlags = [ "PREFIX=$(out)" ];
 
diff --git a/pkgs/applications/audio/meterbridge/default.nix b/pkgs/applications/audio/meterbridge/default.nix
index a825eaa4e38cd..675189f6d1315 100644
--- a/pkgs/applications/audio/meterbridge/default.nix
+++ b/pkgs/applications/audio/meterbridge/default.nix
@@ -12,8 +12,9 @@ stdenv.mkDerivation rec {
 
   patches = [ ./buf_rect.patch ./fix_build_with_gcc-5.patch];
 
+  nativeBuildInputs = [ pkg-config ];
   buildInputs =
-    [ pkg-config SDL SDL_image libjack2
+    [ SDL SDL_image libjack2
     ];
 
   meta = with lib; {
diff --git a/pkgs/applications/audio/mod-arpeggiator-lv2/default.nix b/pkgs/applications/audio/mod-arpeggiator-lv2/default.nix
index 3896545dc41c2..a628e38469f51 100644
--- a/pkgs/applications/audio/mod-arpeggiator-lv2/default.nix
+++ b/pkgs/applications/audio/mod-arpeggiator-lv2/default.nix
@@ -12,7 +12,8 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-1KiWMTVTTf1/iR4AzJ1Oe0mOrWN5edsZN0tQMidgnRA=";
   };
 
-  buildInputs = [ lv2 pkg-config ];
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ lv2 ];
 
   makeFlags = [ "PREFIX=$(out)" ];
 
diff --git a/pkgs/applications/audio/musikcube/default.nix b/pkgs/applications/audio/musikcube/default.nix
index b19e22eeeba4d..6b47d1f3c846b 100644
--- a/pkgs/applications/audio/musikcube/default.nix
+++ b/pkgs/applications/audio/musikcube/default.nix
@@ -84,7 +84,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A fully functional terminal-based music player, library, and streaming audio server";
     homepage = "https://musikcube.com/";
-    maintainers = [ maintainers.aanderse ];
+    maintainers = with maintainers; [ aanderse srapenne ];
     license = licenses.bsd3;
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/audio/opusfile/default.nix b/pkgs/applications/audio/opusfile/default.nix
index a6683904cb1d9..f86595361b659 100644
--- a/pkgs/applications/audio/opusfile/default.nix
+++ b/pkgs/applications/audio/opusfile/default.nix
@@ -11,6 +11,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ openssl libogg ];
   propagatedBuildInputs = [ libopus ];
+  outputs = [ "out" "dev" ];
   patches = [ ./include-multistream.patch ]
     # fixes problem with openssl 1.1 dependency
     # see https://github.com/xiph/opusfile/issues/13
diff --git a/pkgs/applications/audio/patchage/default.nix b/pkgs/applications/audio/patchage/default.nix
index a8a5bed0e0739..99bbdf693a9c1 100644
--- a/pkgs/applications/audio/patchage/default.nix
+++ b/pkgs/applications/audio/patchage/default.nix
@@ -25,6 +25,7 @@ stdenv.mkDerivation rec {
     fetchSubmodules = true;
   };
 
+  nativeBuildInputs = [ pkg-config ];
   buildInputs = [
     alsa-lib
     boost
@@ -33,7 +34,6 @@ stdenv.mkDerivation rec {
     glibmm
     gtkmm2
     libjack2
-    pkg-config
     python3
     wafHook
   ];
diff --git a/pkgs/applications/audio/praat/default.nix b/pkgs/applications/audio/praat/default.nix
index 377dc4d2975c3..d05a12ec30af3 100644
--- a/pkgs/applications/audio/praat/default.nix
+++ b/pkgs/applications/audio/praat/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "praat";
-  version = "6.2.22";
+  version = "6.2.23";
 
   src = fetchFromGitHub {
     owner = "praat";
     repo = "praat";
     rev = "v${version}";
-    sha256 = "sha256-RE4QDK5x9xG1RsAWB6dgviu3V1ay/+r0vyHCPCu/qCU=";
+    sha256 = "sha256-gl+kT8wXLCWnNmOBx6Vg+FbmJ8kJ8pJKsahpqcYw9Lk=";
   };
 
   configurePhase = ''
diff --git a/pkgs/applications/audio/reaper/default.nix b/pkgs/applications/audio/reaper/default.nix
index 28d050d2e4258..6b09e086fa3de 100644
--- a/pkgs/applications/audio/reaper/default.nix
+++ b/pkgs/applications/audio/reaper/default.nix
@@ -17,12 +17,15 @@
 , libpulseaudio
 }:
 
+let
+  url_for_platform = version: arch: "https://www.reaper.fm/files/${lib.versions.major version}.x/reaper${builtins.replaceStrings ["."] [""] version}_linux_${arch}.tar.xz";
+in
 stdenv.mkDerivation rec {
   pname = "reaper";
   version = "6.66";
 
   src = fetchurl {
-    url = "https://www.reaper.fm/files/${lib.versions.major version}.x/reaper${builtins.replaceStrings ["."] [""] version}_linux_${stdenv.hostPlatform.qemuArch}.tar.xz";
+    url = url_for_platform version stdenv.hostPlatform.qemuArch;
     hash = {
       x86_64-linux = "sha256-kMXHHd+uIc5tKlDlxKjphZsfNMYvvV/4Zx84eRwPGcs=";
       aarch64-linux = "sha256-pB3qj9CJbI5iWBNKNX2niIfHrpSz9+qotX/zKGYDwYo=";
@@ -75,6 +78,8 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
+  passthru.updateScript = ./updater.sh;
+
   meta = with lib; {
     description = "Digital audio workstation";
     homepage = "https://www.reaper.fm/";
diff --git a/pkgs/applications/audio/reaper/updater.sh b/pkgs/applications/audio/reaper/updater.sh
new file mode 100755
index 0000000000000..750bea346bbc3
--- /dev/null
+++ b/pkgs/applications/audio/reaper/updater.sh
@@ -0,0 +1,18 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p curl common-updater-scripts
+
+set -euo pipefail
+
+reaper_ver=$(curl -Ls https://www.reaper.fm/download.php | grep -o 'Version [0-9]\.[0-9]*' | head -n1 | cut -d' ' -f2)
+
+function set_hash_for_arch() {
+  local arch=$1
+  pkg_hash=$(nix-prefetch-url https://www.reaper.fm/files/${reaper_ver%.*}.x/reaper${reaper_ver/./}_linux_$arch.tar.xz)
+  pkg_hash=$(nix hash to-sri "sha256:$pkg_hash")
+  # reset the version so the second architecture update doesn't get ignored
+  update-source-version reaper 0 "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" --system=$arch-linux
+  update-source-version reaper "${reaper_ver}" "$pkg_hash" --system=$arch-linux
+}
+
+set_hash_for_arch aarch64
+set_hash_for_arch x86_64
diff --git a/pkgs/applications/audio/sonic-lineup/default.nix b/pkgs/applications/audio/sonic-lineup/default.nix
index 711444651c333..d795138a4b562 100644
--- a/pkgs/applications/audio/sonic-lineup/default.nix
+++ b/pkgs/applications/audio/sonic-lineup/default.nix
@@ -2,6 +2,7 @@
 , libid3tag, liblo, libmad, liboggz, libpulseaudio, libsamplerate
 , libsndfile, lrdf, opusfile, portaudio, rubberband, serd, sord, capnproto
 , wrapQtAppsHook, pkg-config
+, libjack2
 }:
 
 stdenv.mkDerivation rec {
@@ -17,6 +18,7 @@ stdenv.mkDerivation rec {
     [ alsa-lib boost bzip2 fftw fftwFloat libfishsound libid3tag liblo
       libmad liboggz libpulseaudio libsamplerate libsndfile lrdf opusfile
       portaudio rubberband serd sord capnproto
+      libjack2
     ];
 
   nativeBuildInputs = [ pkg-config wrapQtAppsHook ];
@@ -34,5 +36,7 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.vandenoever ];
     platforms = platforms.linux;
+    # undefined reference to `std::__throw_bad_array_new_length()@GLIBCXX_3.4.29'
+    broken = true; # at 2022-09-30
   };
 }
diff --git a/pkgs/applications/audio/spot/default.nix b/pkgs/applications/audio/spot/default.nix
index e995f8cfa1b93..af1dfb01e9aea 100644
--- a/pkgs/applications/audio/spot/default.nix
+++ b/pkgs/applications/audio/spot/default.nix
@@ -16,7 +16,7 @@
 , openssl
 , alsa-lib
 , libpulseaudio
-, wrapGAppsHook
+, wrapGAppsHook4
 }:
 
 stdenv.mkDerivation rec {
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     rustPlatform.rust.cargo
     rustPlatform.cargoSetupHook
     rustPlatform.rust.rustc
-    wrapGAppsHook
+    wrapGAppsHook4
   ];
 
   buildInputs = [
@@ -67,6 +67,8 @@ stdenv.mkDerivation rec {
   postPatch = ''
     chmod +x build-aux/cargo.sh
     patchShebangs build-aux/cargo.sh build-aux/meson/postinstall.py
+    substituteInPlace build-aux/meson/postinstall.py \
+      --replace gtk-update-icon-cache gtk4-update-icon-cache
   '';
 
   passthru = {
diff --git a/pkgs/applications/audio/spotify-tui/default.nix b/pkgs/applications/audio/spotify-tui/default.nix
index 2b1d114964bfa..3011b712fe256 100644
--- a/pkgs/applications/audio/spotify-tui/default.nix
+++ b/pkgs/applications/audio/spotify-tui/default.nix
@@ -1,4 +1,17 @@
-{ lib, stdenv, fetchFromGitHub, fetchCrate, rustPlatform, installShellFiles, pkg-config, openssl, python3, libxcb, AppKit, Security }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, fetchCrate
+, fetchpatch
+, rustPlatform
+, installShellFiles
+, pkg-config
+, openssl
+, python3
+, libxcb
+, AppKit
+, Security
+}:
 
 rustPlatform.buildRustPackage rec {
   pname = "spotify-tui";
@@ -8,14 +21,30 @@ rustPlatform.buildRustPackage rec {
     owner = "Rigellute";
     repo = "spotify-tui";
     rev = "v${version}";
-    sha256 = "sha256-L5gg6tjQuYoAC89XfKE38KCFONwSAwfNoFEUPH4jNAI=";
+    hash = "sha256-L5gg6tjQuYoAC89XfKE38KCFONwSAwfNoFEUPH4jNAI=";
   };
 
-  # Use patched rspotify
   cargoPatches = [
+    # Use patched rspotify
     ./Cargo.lock.patch
+
+    # Needed so that the patch below it applies.
+    (fetchpatch {
+      name = "update-dirs.patch";
+      url = "https://github.com/Rigellute/spotify-tui/commit/3881defc1ed0bcf79df1aef4836b857f64be657c.patch";
+      hash = "sha256-OGqiYLFojMwR3RgKbddXxPDiAdzPySnscVVsVmTT7t4=";
+    })
+
+    # https://github.com/Rigellute/spotify-tui/pull/990
+    (fetchpatch {
+      name = "update-socket2-for-rust-1.64.patch";
+      url = "https://github.com/Rigellute/spotify-tui/commit/14df9419cf72da13f3b55654686a95647ea9dfea.patch";
+      hash = "sha256-craY6UwmHDdxih3nZBdPkNJtQ6wvVgf09Ovqdxi0JZo=";
+    })
   ];
+
   patches = [
+    # Use patched rspotify
     ./Cargo.toml.patch
   ];
 
@@ -44,7 +73,7 @@ rustPlatform.buildRustPackage rec {
     ln -s ${rspotify} ./rspotify-${rspotify.version}
   '';
 
-  cargoSha256 = "sha256-S8zuVYcyYvrwggIvlpxNydhoN9kx6xLBwYJSHcbEK40=";
+  cargoHash = "sha256-aZJ6Q/rvqrv+wvQw2eKFPnSROhI5vXPvr5pu1hwtZKA=";
 
   nativeBuildInputs = [ installShellFiles ] ++ lib.optionals stdenv.isLinux [ pkg-config python3 ];
   buildInputs = [ ]
diff --git a/pkgs/applications/audio/tauon/default.nix b/pkgs/applications/audio/tauon/default.nix
index 31a197071045e..6c39fdcf5fc08 100644
--- a/pkgs/applications/audio/tauon/default.nix
+++ b/pkgs/applications/audio/tauon/default.nix
@@ -25,13 +25,13 @@
 
 stdenv.mkDerivation rec {
   pname = "tauon";
-  version = "7.4.1";
+  version = "7.4.2";
 
   src = fetchFromGitHub {
     owner = "Taiko2k";
     repo = "TauonMusicBox";
     rev = "v${version}";
-    sha256 = "sha256-cHuEmRQG40p04MXcwmYMm7Jih+mYre9IBnOPMx1/k7k=";
+    sha256 = "sha256-fEEu7GqK1leOop3kd1Ci9BAH2bP31jvTOg3DEL8lIF4=";
   };
 
   postUnpack = ''
@@ -132,7 +132,7 @@ stdenv.mkDerivation rec {
     description = "The Linux desktop music player from the future";
     homepage = "https://tauonmusicbox.rocks/";
     license = licenses.gpl3;
-    maintainers = with maintainers; [ SuperSandro2000 ];
+    maintainers = with maintainers; [ jansol ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/audio/tidal-hifi/default.nix b/pkgs/applications/audio/tidal-hifi/default.nix
index 8b6d50917219d..f81854aec28f9 100644
--- a/pkgs/applications/audio/tidal-hifi/default.nix
+++ b/pkgs/applications/audio/tidal-hifi/default.nix
@@ -37,11 +37,11 @@
 
 stdenv.mkDerivation rec {
   pname = "tidal-hifi";
-  version = "4.2.0";
+  version = "4.3.0";
 
   src = fetchurl {
     url = "https://github.com/Mastermindzh/tidal-hifi/releases/download/${version}/tidal-hifi_${version}_amd64.deb";
-    sha256 = "sha256-YydpWzGH+Orb8Vot8hchh+FFcd327VwQ8Kr7x8WYnv4=";
+    sha256 = "sha256-/ZESysxaDhMpyTKHjjoRMiLM7SMESA5VIfgWCqdyDck=";
   };
 
   nativeBuildInputs = [ autoPatchelfHook dpkg makeWrapper ];
@@ -109,7 +109,7 @@ stdenv.mkDerivation rec {
       --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath buildInputs}" \
       "''${gappsWrapperArgs[@]}"
     substituteInPlace $out/share/applications/tidal-hifi.desktop \
-      --replace \ "/opt/tidal-hifi/tidal-hifi" "tidal-hifi" \
+      --replace "/opt/tidal-hifi/tidal-hifi" "tidal-hifi" \
       --replace "/usr/share/icons/hicolor/0x0/apps/tidal-hifi.png" "tidal-hifi.png"
 
     for size in 48 64 128 256 512; do
diff --git a/pkgs/applications/audio/transcode/default.nix b/pkgs/applications/audio/transcode/default.nix
index 112d84a08b112..da149db075379 100644
--- a/pkgs/applications/audio/transcode/default.nix
+++ b/pkgs/applications/audio/transcode/default.nix
@@ -9,8 +9,9 @@ stdenv.mkDerivation rec {
     sha256 = "1e4e72d8e0dd62a80b8dd90699f5ca64c9b0cb37a5c9325c184166a9654f0a92";
   };
 
+  nativeBuildInputs = [ pkg-config ];
   buildInputs = [ flac lame zlib libjpeg libvorbis libtheora libxml2 lzo
-                  libdvdread pkg-config x264 libmpeg2 xvidcore ];
+                  libdvdread x264 libmpeg2 xvidcore ];
   configureFlags = [
     "--disable-ffmpeg" "--disable-libavcodec" "--disable-libavformat"
     "--enable-lzo" "--enable-ogg" "--enable-vorbis" "--enable-theora" "--enable-libxml2"
diff --git a/pkgs/applications/audio/x42-plugins/default.nix b/pkgs/applications/audio/x42-plugins/default.nix
index 30b7abc6dfba7..a1613946150bc 100644
--- a/pkgs/applications/audio/x42-plugins/default.nix
+++ b/pkgs/applications/audio/x42-plugins/default.nix
@@ -3,12 +3,12 @@
 , libGLU, lv2, gtk2, cairo, pango, fftwFloat, zita-convolver }:
 
 stdenv.mkDerivation rec {
-  version = "20220714";
+  version = "20220923";
   pname = "x42-plugins";
 
   src = fetchurl {
     url = "https://gareus.org/misc/x42-plugins/${pname}-${version}.tar.xz";
-    sha256 = "sha256-myrHOfgpCwuW8YX0jZ3RutoqtXysU0ejBNcuxN3stXU=";
+    sha256 = "sha256-9Y9up5Ziipm6ums1wESfcADKgMwas2SESgGPn74RTt4=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/applications/audio/xsynth-dssi/default.nix b/pkgs/applications/audio/xsynth-dssi/default.nix
index 61d49d110a9e8..87305027e4c41 100644
--- a/pkgs/applications/audio/xsynth-dssi/default.nix
+++ b/pkgs/applications/audio/xsynth-dssi/default.nix
@@ -10,9 +10,9 @@ stdenv.mkDerivation  rec {
     sha256 = "00nwv2pqjbmxqdc6xdm0cljq6z05lv4y6bibmhz1kih9lm0lklnk";
   };
 
-  nativeBuildInputs = [ autoconf automake  ];
+  nativeBuildInputs = [ autoconf automake pkg-config ];
   buildInputs = [ alsa-lib dssi gtk2 libjack2 ladspaH
-    ladspaPlugins liblo pkg-config ];
+    ladspaPlugins liblo ];
 
   installPhase = ''
     mkdir -p $out/bin
diff --git a/pkgs/applications/blockchains/bitcoin-abc/default.nix b/pkgs/applications/blockchains/bitcoin-abc/default.nix
index 6f1734bbc1359..c1ede1ea839f6 100644
--- a/pkgs/applications/blockchains/bitcoin-abc/default.nix
+++ b/pkgs/applications/blockchains/bitcoin-abc/default.nix
@@ -15,6 +15,7 @@
 , protobuf
 , qrencode
 , libevent
+, sqlite
 , withGui
 , python3
 , jemalloc
@@ -23,17 +24,15 @@
 
 mkDerivation rec {
   pname = "bitcoin" + lib.optionalString (!withGui) "d" + "-abc";
-  version = "0.21.13";
+  version = "0.26.2";
 
   src = fetchFromGitHub {
     owner = "bitcoin-ABC";
     repo = "bitcoin-abc";
     rev = "v${version}";
-    sha256 = "1x8xcdi1vcskggk9bqkwr3ah4vi9b7sj2h8hf7spac6dvz8lmzav";
+    sha256 = "0gz4713lk3alk3ykwq1bdqjywadrfrnb7n2878136g01n87j00az";
   };
 
-  patches = [ ./fix-bitcoin-qt-build.patch ];
-
   nativeBuildInputs = [ pkg-config cmake ];
   buildInputs = [
     openssl
@@ -47,6 +46,7 @@ mkDerivation rec {
     util-linux
     protobuf
     libevent
+    sqlite
   ] ++ lib.optionals withGui [ qtbase qttools qrencode ];
 
   cmakeFlags = lib.optionals (!withGui) [
diff --git a/pkgs/applications/blockchains/bitcoin-abc/fix-bitcoin-qt-build.patch b/pkgs/applications/blockchains/bitcoin-abc/fix-bitcoin-qt-build.patch
deleted file mode 100644
index c49bbc4325192..0000000000000
--- a/pkgs/applications/blockchains/bitcoin-abc/fix-bitcoin-qt-build.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- bitcoin-abc-v0.15.0-src/build-aux/m4/bitcoin_qt.m4	1970-01-01 01:00:01.000000000 +0100
-+++ bitcoin-abc-v0.15.0-src.org/build-aux/m4/bitcoin_qt.m4	2017-09-27 23:38:44.748384197 +0100
-@@ -35,11 +35,7 @@
- dnl Output: $1 is set to the path of $2 if found. $2 are searched in order.
- AC_DEFUN([BITCOIN_QT_PATH_PROGS],[
-   BITCOIN_QT_CHECK([
--    if test "x$3" != x; then
--      AC_PATH_PROGS($1,$2,,$3)
--    else
--      AC_PATH_PROGS($1,$2)
--    fi
-+    AC_PATH_PROGS($1,$2)
-     if test "x$$1" = x && test "x$4" != xyes; then
-       BITCOIN_QT_FAIL([$1 not found])
-     fi
diff --git a/pkgs/applications/blockchains/clightning/default.nix b/pkgs/applications/blockchains/clightning/default.nix
index 8e87610e03fc2..4dfeebfe0962f 100644
--- a/pkgs/applications/blockchains/clightning/default.nix
+++ b/pkgs/applications/blockchains/clightning/default.nix
@@ -7,6 +7,7 @@
 , automake
 , gettext
 , libtool
+, lowdown
 , protobuf
 , unzip
 , which
@@ -21,30 +22,21 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "clightning";
-  version = "0.12.0";
+  version = "0.12.1";
 
   src = fetchurl {
     url = "https://github.com/ElementsProject/lightning/releases/download/v${version}/clightning-v${version}.zip";
-    sha256 = "1ff400339db3d314b459e1a3e973f1213783e814faa21f2e1b18917693cabfd9";
-  };
-
-  manpages = fetchurl {
-    url = "https://github.com/ElementsProject/lightning/releases/download/v${version}/clightning-v${version}-manpages.tar.xz";
-    sha256 = "sha256-7EohXp0/gIJwlMsTHwlcLNBzZb8LwF9n0eXkQhOnY7g=";
+    sha256 = "sha256-SlDDOJ6H2UVT/dof23CYSzCliAc+5CAYQc87AzOtYjg=";
   };
 
   # when building on darwin we need dawin.cctools to provide the correct libtool
   # as libwally-core detects the host as darwin and tries to add the -static
   # option to libtool, also we have to add the modified gsed package.
-  nativeBuildInputs = [ autoconf autogen automake gettext libtool protobuf py3 unzip which ]
+  nativeBuildInputs = [ autoconf autogen automake gettext libtool lowdown protobuf py3 unzip which ]
     ++ lib.optionals stdenv.isDarwin [ darwin.cctools darwin.autoSignDarwinBinariesHook ];
 
   buildInputs = [ gmp libsodium sqlite zlib ];
 
-  postUnpack = ''
-    tar -xf $manpages -C $sourceRoot
-  '';
-
   # this causes some python trouble on a darwin host so we skip this step.
   # also we have to tell libwally-core to use sed instead of gsed.
   postPatch = if !stdenv.isDarwin then ''
diff --git a/pkgs/applications/blockchains/eclair/default.nix b/pkgs/applications/blockchains/eclair/default.nix
index dcddef619312b..7c5d71f35f532 100644
--- a/pkgs/applications/blockchains/eclair/default.nix
+++ b/pkgs/applications/blockchains/eclair/default.nix
@@ -7,12 +7,12 @@
 
 stdenv.mkDerivation rec {
   pname = "eclair";
-  version = "0.6.2";
-  revision = "6817d6f";
+  version = "0.7.0-patch-disconnect";
+  revision = "cad88bf";
 
   src = fetchzip {
     url = "https://github.com/ACINQ/eclair/releases/download/v${version}/eclair-node-${version}-${revision}-bin.zip";
-    sha256 = "038r9mblm2r8mkxnv65k29r7xj22dff5gmvzv9xiy5zf9i45mmk8";
+    hash = "sha256-agOxflCXfoeSeGliB/PAMMyCdqYYajciHMfLrSiZx1Q=";
   };
 
   propagatedBuildInputs = [ jq openjdk11 ];
diff --git a/pkgs/applications/blockchains/ergo/default.nix b/pkgs/applications/blockchains/ergo/default.nix
index 3f1e7e8b99b37..3c54844863ffc 100644
--- a/pkgs/applications/blockchains/ergo/default.nix
+++ b/pkgs/applications/blockchains/ergo/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ergo";
-  version = "4.0.103";
+  version = "4.0.104";
 
   src = fetchurl {
     url = "https://github.com/ergoplatform/ergo/releases/download/v${version}/ergo-${version}.jar";
-    sha256 = "sha256-9vGPHNq76BSdqN1z0KzDOzeMOHAUKnA3Jpx+I5+FOFM=";
+    sha256 = "sha256-h6OVeDifYIKyIkwbN/pmJWge4/YGL6cnQQ/sI14LsHQ=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/blockchains/erigon.nix b/pkgs/applications/blockchains/erigon.nix
index 5ef6889af3068..70a87a98e8856 100644
--- a/pkgs/applications/blockchains/erigon.nix
+++ b/pkgs/applications/blockchains/erigon.nix
@@ -2,17 +2,17 @@
 
 buildGoModule rec {
   pname = "erigon";
-  version = "2022.09.03";
+  version = "2022.10.01";
 
   src = fetchFromGitHub {
     owner = "ledgerwatch";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-dilsoJw7VPA7SerpAOhYUviE2zt2qMBmSLWaPm0ux2Y=";
+    sha256 = "sha256-FuOVI59vfhm5q92hnfgarh3zpLXSDRmZQJuERHf4I7A=";
     fetchSubmodules = true;
   };
 
-  vendorSha256 = "sha256-W8hEMfn2qW/3+V6x/RH1azj49V26fyQ+1y2re3tXsTk=";
+  vendorSha256 = "sha256-B9brjWvYw65ti2Ac3D4nQUEax/q+Uf5DTPBHXeWQybw=";
   proxyVendor = true;
 
   # Build errors in mdbx when format hardening is enabled:
diff --git a/pkgs/applications/blockchains/fulcrum/default.nix b/pkgs/applications/blockchains/fulcrum/default.nix
index c3360da372182..02efa6f26974d 100644
--- a/pkgs/applications/blockchains/fulcrum/default.nix
+++ b/pkgs/applications/blockchains/fulcrum/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fulcrum";
-  version = "1.8.1";
+  version = "1.8.2";
 
   src = fetchFromGitHub {
     owner = "cculianu";
     repo = "Fulcrum";
     rev = "v${version}";
-    sha256 = "sha256-GaXXqIHuMTGn8iLymAhL8i0HzXmaO6RxtvIzgWw6QI0=";
+    sha256 = "sha256-sX9GeY+c/mcsAWApQ0E5LwoXZgWUC4w7YY8/PEzMhl8=";
   };
 
   nativeBuildInputs = [ pkg-config qmake ];
diff --git a/pkgs/applications/blockchains/lighthouse/default.nix b/pkgs/applications/blockchains/lighthouse/default.nix
new file mode 100644
index 0000000000000..fc95295d3d9e6
--- /dev/null
+++ b/pkgs/applications/blockchains/lighthouse/default.nix
@@ -0,0 +1,103 @@
+{ clang
+, cmake
+, fetchFromGitHub
+, fetchurl
+, lib
+, lighthouse
+, llvmPackages
+, nodePackages
+, perl
+, protobuf
+, rustPlatform
+, Security
+, stdenv
+, testers
+, unzip
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "lighthouse";
+  version = "3.1.2";
+
+  # lighthouse/common/deposit_contract/build.rs
+  depositContractSpecVersion = "0.12.1";
+  testnetDepositContractSpecVersion = "0.9.2.1";
+
+  src = fetchFromGitHub {
+    owner = "sigp";
+    repo = "lighthouse";
+    rev = "v${version}";
+    hash = "sha256-EJFg6ZjxxijxJNMwKRh0cYeqwujUV3OJgXBvBRsnbVI=";
+  };
+
+  cargoHash = "sha256-iXqRtBqvM9URQsL8qGmpr3CNX2fpbtDOaluibAX/lWo=";
+
+  buildFeatures = [ "modern" "gnosis" ];
+
+  nativeBuildInputs = [ clang cmake perl protobuf ];
+
+  buildInputs = lib.optionals stdenv.isDarwin [
+    Security
+  ];
+
+  LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
+
+  depositContractSpec = fetchurl {
+    url = "https://raw.githubusercontent.com/ethereum/eth2.0-specs/v${depositContractSpecVersion}/deposit_contract/contracts/validator_registration.json";
+    hash = "sha256-ZslAe1wkmkg8Tua/AmmEfBmjqMVcGIiYHwi+WssEwa8=";
+  };
+
+  testnetDepositContractSpec = fetchurl {
+    url = "https://raw.githubusercontent.com/sigp/unsafe-eth2-deposit-contract/v${testnetDepositContractSpecVersion}/unsafe_validator_registration.json";
+    hash = "sha256-aeTeHRT3QtxBRSNMCITIWmx89vGtox2OzSff8vZ+RYY=";
+  };
+
+  LIGHTHOUSE_DEPOSIT_CONTRACT_SPEC_URL = "file://${depositContractSpec}";
+  LIGHTHOUSE_DEPOSIT_CONTRACT_TESTNET_URL = "file://${testnetDepositContractSpec}";
+
+  cargoBuildFlags = [
+    "--package lighthouse"
+  ];
+
+  __darwinAllowLocalNetworking = true;
+
+  checkFeatures = [ ];
+
+  # All of these tests require network access
+  cargoTestFlags = [
+    "--workspace"
+    "--exclude beacon_node"
+    "--exclude http_api"
+    "--exclude beacon_chain"
+    "--exclude lighthouse"
+    "--exclude lighthouse_network"
+    "--exclude slashing_protection"
+    "--exclude web3signer_tests"
+  ];
+
+  # All of these tests require network access
+  checkFlags = [
+    "--skip service::tests::tests::test_dht_persistence"
+    "--skip time::test::test_reinsertion_updates_timeout"
+  ] ++ lib.optionals (stdenv.isAarch64 && stdenv.isDarwin) [
+    "--skip subnet_service::tests::sync_committee_service::same_subscription_with_lower_until_epoch"
+    "--skip subnet_service::tests::sync_committee_service::subscribe_and_unsubscribe"
+  ];
+
+  checkInputs = [
+    nodePackages.ganache
+  ];
+
+  passthru.tests.version = testers.testVersion {
+    package = lighthouse;
+    command = "lighthouse --version";
+    version = "v${lighthouse.version}";
+  };
+
+  meta = with lib; {
+    description = "Ethereum consensus client in Rust";
+    homepage = "https://lighthouse.sigmaprime.io/";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ centromere pmw ];
+  };
+}
diff --git a/pkgs/applications/blockchains/lnd/default.nix b/pkgs/applications/blockchains/lnd/default.nix
index 28813ae6b0dc3..bb91e141f44ef 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.1-beta";
+  version = "0.15.2-beta";
 
   src = fetchFromGitHub {
     owner = "lightningnetwork";
     repo = "lnd";
     rev = "v${version}";
-    sha256 = "sha256-E1RxFy7eRCTnzTg2B0llRt+r41K6V4VQH7Edh1As4cY=";
+    sha256 = "sha256-C7BZ6awY2v5Uvvh12YEosoEQyJoetWzH/1wIQSVjtEk=";
   };
 
-  vendorSha256 = "sha256-e72HIsS1fftJEOvjr1RQMo3+gjlBxXPHq2olGWfurJk=";
+  vendorSha256 = "sha256-rCdcPkgrFcDfLfF8wipFws7YTKEgotuVqVIJYLMOxbs=";
 
   subPackages = [ "cmd/lncli" "cmd/lnd" ];
 
diff --git a/pkgs/applications/blockchains/polkadot/default.nix b/pkgs/applications/blockchains/polkadot/default.nix
index 2e7df608eba09..92342bfda7856 100644
--- a/pkgs/applications/blockchains/polkadot/default.nix
+++ b/pkgs/applications/blockchains/polkadot/default.nix
@@ -10,13 +10,13 @@
 }:
 rustPlatform.buildRustPackage rec {
   pname = "polkadot";
-  version = "0.9.28";
+  version = "0.9.29";
 
   src = fetchFromGitHub {
     owner = "paritytech";
     repo = "polkadot";
     rev = "v${version}";
-    sha256 = "sha256-PYPNbysk9jHGtAUGr8O/Ah0ArTNKQYYToR5djG+XujI=";
+    sha256 = "sha256-/IJs3153KzhGf5I6LueljzRhDl/PYYlPseF6wCh+u3M=";
 
     # the build process of polkadot requires a .git folder in order to determine
     # the git commit hash that is being built and add it to the version string.
@@ -32,7 +32,7 @@ rustPlatform.buildRustPackage rec {
     '';
   };
 
-  cargoSha256 = "sha256-Dqcjt3yvZdaHp6sIQFo9wYH/icIInyXqKHE1Q/JjrwY=";
+  cargoSha256 = "sha256-mI8VvTlM9ynstDBC0ubQkzg3D2ZXuWqJGS/Y23D6dU0=";
 
   buildInputs = lib.optional stdenv.isDarwin [ Security ];
 
diff --git a/pkgs/applications/blockchains/zcash/default.nix b/pkgs/applications/blockchains/zcash/default.nix
index 20520037a60c1..c4d007f290773 100644
--- a/pkgs/applications/blockchains/zcash/default.nix
+++ b/pkgs/applications/blockchains/zcash/default.nix
@@ -40,7 +40,7 @@ rustPlatform.buildRustPackage.override { inherit stdenv; } rec {
   postPatch = ''
     # Have to do this here instead of in preConfigure because
     # cargoDepsCopy gets unset after postPatch.
-    configureFlagsArray+=("RUST_VENDORED_SOURCES=$NIX_BUILD_TOP/$cargoDepsCopy")
+    configureFlagsArray+=("RUST_VENDORED_SOURCES=$cargoDepsCopy")
   '';
 
   CXXFLAGS = [
diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix
index b25ee1ac6cdc1..976cfb95fd0c2 100644
--- a/pkgs/applications/editors/android-studio/default.nix
+++ b/pkgs/applications/editors/android-studio/default.nix
@@ -10,16 +10,16 @@ let
     inherit tiling_wm;
   };
   stableVersion = {
-    version = "2021.2.1.15"; # "Android Studio Chipmunk (2021.2.1)"
-    sha256Hash = "ABjg38DdKSFwBRb3osRDN3xVd4jaf7CkUkPstDAHRb4=";
+    version = "2021.3.1.16"; # "Android Studio Dolphin (2021.3.1)"
+    sha256Hash = "GnJbWFeG9DuUQzbK9wM2BEbj9LXm4jQFf/Eh5Q75HZo=";
   };
   betaVersion = {
-    version = "2021.3.1.14"; # "Android Studio Dolphin (2021.3.1) Beta 5"
-    sha256Hash = "k1Qt54u45rwHsQNz9TVqnFB65kBKtfFZ3OknpfutKPI=";
+    version = "2022.1.1.12"; # "Android Studio Electric Eel (2022.1.1) Beta 2"
+    sha256Hash = "8iSFPH0PTQkzV1t8bEq7CBtOU8pzdnD/PrpVcgPnO6Q=";
   };
   latestVersion = { # canary & dev
-    version = "2022.1.1.8"; # "Android Studio Electric Eel (2022.1.1) Canary 8"
-    sha256Hash = "0bZXx4YpMztLAnwuBaSaNT3GJNfYnqCDanwR+Q7qyUc=";
+    version = "2022.2.1.2"; # "Android Studio Flamingo (2022.2.1) Canary 2"
+    sha256Hash = "hlHlgyl9If2LH4aExpElx0rqmWeoFX+qx4w6RRb5e8U=";
   };
 in {
   # Attributes are named by their corresponding release channels
diff --git a/pkgs/applications/editors/cudatext/default.nix b/pkgs/applications/editors/cudatext/default.nix
index bed21ea5c3af2..74668bccacf2c 100644
--- a/pkgs/applications/editors/cudatext/default.nix
+++ b/pkgs/applications/editors/cudatext/default.nix
@@ -38,13 +38,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "cudatext";
-  version = "1.171.0";
+  version = "1.172.5";
 
   src = fetchFromGitHub {
     owner = "Alexey-T";
     repo = "CudaText";
     rev = version;
-    hash = "sha256-+NTxZ5UkmaFDcTYliNi/5c8xGztVu6P8C7Ga99MHSFM=";
+    hash = "sha256-bet0hLplxTjizYhRKDqafsps1kULW8jves1faEeLAKE=";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/editors/cudatext/deps.json b/pkgs/applications/editors/cudatext/deps.json
index 529c66125e877..4af7813e75a71 100644
--- a/pkgs/applications/editors/cudatext/deps.json
+++ b/pkgs/applications/editors/cudatext/deps.json
@@ -16,13 +16,13 @@
   },
   "ATSynEdit": {
     "owner": "Alexey-T",
-    "rev": "2022.09.18",
-    "hash": "sha256-HjW4V7MctQoHbDYIlMv7VS0nS7FFG6Qir0sCju+isI0="
+    "rev": "2022.10.09",
+    "hash": "sha256-FUqkKcX0UbknvhntIo782ZGIteEE1SvPsfXo4yv6310="
   },
   "ATSynEdit_Cmp": {
     "owner": "Alexey-T",
-    "rev": "2022.09.18",
-    "hash": "sha256-yIbIRo4hpwbCdH+3fIhjnQPtdvuFmfJSqloKjWqKEuY="
+    "rev": "2022.10.03",
+    "hash": "sha256-2XP3LyB18ZHLQOxzP4lBuhlUA8u1+wHl97cxmRYa7Xg="
   },
   "EControl": {
     "owner": "Alexey-T",
diff --git a/pkgs/applications/editors/eclipse/default.nix b/pkgs/applications/editors/eclipse/default.nix
index f5657b0a4d79c..64204deaa4aaa 100644
--- a/pkgs/applications/editors/eclipse/default.nix
+++ b/pkgs/applications/editors/eclipse/default.nix
@@ -14,11 +14,11 @@
 
 let
   platform_major = "4";
-  platform_minor = "24";
+  platform_minor = "25";
   year = "2022";
-  month = "06"; #release month
-  buildmonth = "06"; #sometimes differs from release month
-  timestamp = "${year}${buildmonth}070700";
+  month = "09"; #release month
+  buildmonth = "08"; #sometimes differs from release month
+  timestamp = "${year}${buildmonth}311800";
   gtk = gtk3;
 in rec {
 
@@ -38,7 +38,7 @@ in rec {
     src =
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-cpp-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
-        hash = "sha512-mqoeP6BwmTWGy6qp/+BSfjTaMfAEKtlyqHwn1GrihRCXQyDNeVWRkBNa7JTCUs+yve2rokgisZNVSwpgAqqHYQ==";
+        hash = "sha512-1sUQ/jDOQMqnKLKY6oh28STvS5pbH89+2zs+H77euiJOsBgB+yEkEntnhI39O67qmOK/EkQ3y3NkQcumbax56A==";
       };
   };
 
@@ -50,7 +50,7 @@ in rec {
     src =
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-modeling-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
-        hash = "sha512-RbvqIUnJ00/qvqsw1s5mcZ2SQhhT2y+S9J9xOB+t8bK+1SOhUOFvU/HcDAmHBl88L1qBCF0ckAKd7jETYPeXnw==";
+        hash = "sha512-Qb2BmfXtmVeTLIZZav91hayPkwSGYMAG3fod3BmyJdo1DPas6VC+MzBwklAjpC1wqLTzKCAKzVZtdtPYC9QCqw==";
       };
   };
 
@@ -62,7 +62,7 @@ in rec {
     src =
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-platform-${platform_major}.${platform_minor}-linux-gtk-x86_64.tar.gz";
-        hash = "sha512-PPgFti6UUSkIDEUBGY4tDVfnaFXxTUIRIvfMOVXVxIr+ciGK2dOHpQ7K9hcYnWqoIulxa/fV+TXQI3hzcIRVAA==";
+        hash = "sha512-RW+5H82AcH/U9XUzIlUCU5heN9qQAlMl3rmxsKnTYxVWdIjSN461Nf71F6jPhL/Q+VCAMesguOEF0AqyhnH0nw==";
       };
   };
 
@@ -88,7 +88,7 @@ in rec {
     src =
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-SDK-${platform_major}.${platform_minor}-linux-gtk-x86_64.tar.gz";
-        hash = "sha512-IVSdZI4QnMtj7HdWAXATeJSQt950qNkiSL7n/+f9bPioCA2NtNbDUlBBxnownMKnr+C+iJH2phzPabT9Ar6plA==";
+        hash = "sha512-1wjKNBl6A2XENRVZNtDelPSMAYtc4wRXdQ4CJX/1YcFUPEzbPsX7plO2uJXmDpZcjw3wkQNxqy4bmZF6YnXy/Q==";
       };
   };
 
@@ -100,7 +100,7 @@ in rec {
     src =
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-java-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
-        hash = "sha512-ace+zpz5tjLA89gHLyBrjldKU7+kb85uJX4y4IQdVkrskrA+uCv0z9lzB/qbgrH51ZFN2xz04z1nFLJd09WacA==";
+        hash = "sha512-UejE0pzgwBYpmNbdGEegMM5iEOMYP+VvebU17YQeJUzh/qYr0B6sfXwJ+cdTCavKCNGLMMDenJMYk9V/6DSZHw==";
       };
   };
 
@@ -112,7 +112,7 @@ in rec {
     src =
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-jee-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
-        hash = "sha512-Xo1dk8+BLUoUVrnMm9XC+IBzoS9bKde2waRaYxjCRBOykUiZ4npGgquh3bEbsk1GZ3cKlwuxLxr9Y9+RGw3UTA==";
+        hash = "sha512-9E0Zwv64qRwVdPouhmIYT6SkbTkd3zLnfkHduHy2VXvmqW7xaOfmplvxpr+V1RDpnfDfw4RouU+WQdhFqBqcWg==";
       };
   };
 
@@ -124,7 +124,7 @@ in rec {
     src =
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-committers-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
-        hash = "sha512-rkjLwexI352G8CYkaF/1dl26wF58IuPMan76gR/3Fx/CMywtv25Tueu8NWZGkHd6Zwdpv/h25D8fu9tbM2NExg==";
+        hash = "sha512-V7GmvqQVZnTkkhKmuGyMiZlFlRpFbXM7r6w9yS0FxBOHNHIzkX4pJ6sgn+ww1lvwsdPqBFYtbWUiuKo73eTKzg==";
       };
   };
 
@@ -136,7 +136,7 @@ in rec {
     src =
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-rcp-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
-        hash = "sha256-8FaVTzjvtT17pYUYfKJgVd55nd2ngrsLY+7AJnXu/BI=";
+        hash = "sha256-8qQWwUiNemJLTAncZwO14fBfr7kTmmXPSeqBLfV8wTw=";
       };
   };
 
diff --git a/pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix b/pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix
index 354210deb1323..d479802e60d43 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix
+++ b/pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix
@@ -19,10 +19,10 @@
       elpaBuild {
         pname = "ack";
         ename = "ack";
-        version = "1.10";
+        version = "1.11";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/ack-1.10.tar";
-          sha256 = "0jz8badhjpzjlrprpzgcm1z6ask1ykc7ab62ixjrj9wcgfjif5qw";
+          url = "https://elpa.gnu.org/packages/ack-1.11.tar";
+          sha256 = "0fsi3lgfkyv9gxwcs0q5c9fawksz6x0pqarjagcndnd7jlbxjw7z";
         };
         packageRequires = [];
         meta = {
@@ -234,10 +234,10 @@
       elpaBuild {
         pname = "async";
         ename = "async";
-        version = "1.9.6";
+        version = "1.9.7";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/async-1.9.6.tar";
-          sha256 = "0qyf1niqjhzaphb50q1znkwqzpdvqw3drivkzrqxrs747k7pm3my";
+          url = "https://elpa.gnu.org/packages/async-1.9.7.tar";
+          sha256 = "0wwjgvj42irznwz6rjh8yiz4p9hswgi6ak57anjn256c4zx8xaz2";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1071,10 +1071,10 @@
       elpaBuild {
         pname = "denote";
         ename = "denote";
-        version = "0.6.1";
+        version = "1.0.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/denote-0.6.1.tar";
-          sha256 = "1yxfnwq2b32xrl52g61a9g3i53m94iybx0n8hh6nbmcv5x4y43ya";
+          url = "https://elpa.gnu.org/packages/denote-1.0.0.tar";
+          sha256 = "1gywi22x12p7hkliwy84i7pvyis5ja22fybz5shkdmkcl12mx631";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1086,10 +1086,10 @@
       elpaBuild {
         pname = "detached";
         ename = "detached";
-        version = "0.9.0";
+        version = "0.9.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/detached-0.9.0.tar";
-          sha256 = "1br1s2kwb5ji4ad5m89grpyvjffhc3xxydgja9q796cx6zwrnavp";
+          url = "https://elpa.gnu.org/packages/detached-0.9.1.tar";
+          sha256 = "1hzvqb18bpdpmnk469cmkayvddm37knd3mjj7m6zv3qsjw17n6f1";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1247,6 +1247,21 @@
           license = lib.licenses.free;
         };
       }) {};
+    doc-toc = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+      elpaBuild {
+        pname = "doc-toc";
+        ename = "doc-toc";
+        version = "1.0";
+        src = fetchurl {
+          url = "https://elpa.gnu.org/packages/doc-toc-1.0.tar";
+          sha256 = "07yan1jmp6q87rhm8bmglswnhzlh5r9j35x5sqm5yfx0pcp16kpj";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/doc-toc.html";
+          license = lib.licenses.free;
+        };
+      }) {};
     docbook = callPackage ({ elpaBuild, fetchurl, lib }:
       elpaBuild {
         pname = "docbook";
@@ -1386,10 +1401,10 @@
       elpaBuild {
         pname = "eev";
         ename = "eev";
-        version = "20220828";
+        version = "20220926";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/eev-20220828.tar";
-          sha256 = "0znsimjq61p67c2q3qbia5qrimy847xy6gjpl1jgyrdlpgm9hv6r";
+          url = "https://elpa.gnu.org/packages/eev-20220926.tar";
+          sha256 = "0kc30y44wl691jchafljp938kbwilawdfxm0bp6nsniv1bm95rpy";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1401,10 +1416,10 @@
       elpaBuild {
         pname = "ef-themes";
         ename = "ef-themes";
-        version = "0.5.0";
+        version = "0.6.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/ef-themes-0.5.0.tar";
-          sha256 = "1k73q48vg7vyjmnvizinwn9if481ajq63ps2iwb01f1brrhmbf5v";
+          url = "https://elpa.gnu.org/packages/ef-themes-0.6.0.tar";
+          sha256 = "00xq5ymsq8lq2jc541lw64i9pp0a0757wj3nasmfsa27wfpivzhb";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1563,10 +1578,10 @@
       elpaBuild {
         pname = "ement";
         ename = "ement";
-        version = "0.2";
+        version = "0.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/ement-0.2.tar";
-          sha256 = "1kxbkqiy5c9pxk4f5k3d3j2q3qn7cg8f21zpgds9s8fd6ax0arcf";
+          url = "https://elpa.gnu.org/packages/ement-0.3.tar";
+          sha256 = "08k1qfcymsnaz0mzq33l3i0fj9kjf5y0pdpn7k0skhhlsw90h078";
         };
         packageRequires = [
           emacs
@@ -2909,10 +2924,10 @@
       elpaBuild {
         pname = "modus-themes";
         ename = "modus-themes";
-        version = "2.6.0";
+        version = "2.7.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/modus-themes-2.6.0.tar";
-          sha256 = "0i4y69rrdcm64mvqs5z7dmgx1xk0x7g5978q5gjblczlfka444k4";
+          url = "https://elpa.gnu.org/packages/modus-themes-2.7.1.tar";
+          sha256 = "1ms5nig05z26342723jln50m7xq055knr2570x40lkg2m9s1ikx1";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3162,10 +3177,10 @@
       elpaBuild {
         pname = "notmuch-indicator";
         ename = "notmuch-indicator";
-        version = "0.1.0";
+        version = "0.1.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/notmuch-indicator-0.1.0.tar";
-          sha256 = "11kbl8y95vwww1rsgdd1q5x8i690gi4cxql4n2sg7r5dysdrbyz1";
+          url = "https://elpa.gnu.org/packages/notmuch-indicator-0.1.1.tar";
+          sha256 = "1fdl8xm48id1a85gf3gr8d8m3sz61xrras9f598pvrksm3j162b6";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3582,10 +3597,10 @@
       elpaBuild {
         pname = "perl-doc";
         ename = "perl-doc";
-        version = "0.2";
+        version = "0.6";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/perl-doc-0.2.tar";
-          sha256 = "1p5bbkwllh91a0vg5aisqa9kbms7l9vxk14lm09bav952xxn6gdl";
+          url = "https://elpa.gnu.org/packages/perl-doc-0.6.tar";
+          sha256 = "0xmk09pfvdzkrjfsa2l78bd6akcbdhcbnpvwnm6r83h65gpld79f";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3642,10 +3657,10 @@
       elpaBuild {
         pname = "plz";
         ename = "plz";
-        version = "0.2";
+        version = "0.2.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/plz-0.2.tar";
-          sha256 = "1b45m9b9gzx5ylpxcppkiikk5lfya7ngiqsap4a7m1b2cr8rqxcj";
+          url = "https://elpa.gnu.org/packages/plz-0.2.1.tar";
+          sha256 = "01xa4vjbcdm37dya5d006k9p37kcm1g4yh4j7vh7hjfdz43j6y9s";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3747,10 +3762,10 @@
       elpaBuild {
         pname = "pyim";
         ename = "pyim";
-        version = "5.2.4";
+        version = "5.2.5";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/pyim-5.2.4.tar";
-          sha256 = "1dzl4xaf31nyjb5hnwwf29i75x0i8dakpmmagbn4ks5hi3jl2ig0";
+          url = "https://elpa.gnu.org/packages/pyim-5.2.5.tar";
+          sha256 = "00f23pl53rdy9iwp4gj2656wik7c6vnmhsglg7z4pz3ippz3f4hq";
         };
         packageRequires = [ async emacs xr ];
         meta = {
@@ -4427,10 +4442,10 @@
       elpaBuild {
         pname = "sokoban";
         ename = "sokoban";
-        version = "1.4.8";
+        version = "1.4.9";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/sokoban-1.4.8.tar";
-          sha256 = "1w3vrkg239x1saqka21zbl380fxqmbz3lr7820spxd8p5w9v55pn";
+          url = "https://elpa.gnu.org/packages/sokoban-1.4.9.tar";
+          sha256 = "1zri4czw2d5impkgn8d4hliyw31vndadg7wj31gairk8kyakjpgm";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -4687,10 +4702,10 @@
       elpaBuild {
         pname = "taxy-magit-section";
         ename = "taxy-magit-section";
-        version = "0.10";
+        version = "0.11";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/taxy-magit-section-0.10.tar";
-          sha256 = "1g58nvpb04ldhn5qnjw2q5idrv6vhlfa0qmb46cvis6bkz46cxkw";
+          url = "https://elpa.gnu.org/packages/taxy-magit-section-0.11.tar";
+          sha256 = "058z95c0z2hxplr5pfgph1cdq68zcrkmwx1wqyd5fy4a5h43yknq";
         };
         packageRequires = [ emacs magit-section taxy ];
         meta = {
@@ -4826,10 +4841,10 @@
       elpaBuild {
         pname = "tramp";
         ename = "tramp";
-        version = "2.5.3.2";
+        version = "2.5.3.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/tramp-2.5.3.2.tar";
-          sha256 = "1jcicb9f7c1nmaqg20yy2j4wd0qfch4llc26ga7q3ckhx41pvbiw";
+          url = "https://elpa.gnu.org/packages/tramp-2.5.3.3.tar";
+          sha256 = "05w04qwk1lk50fzwl6fxyf6pb1jd2lx4as99zm1dpa858jab6w4a";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4841,10 +4856,10 @@
       elpaBuild {
         pname = "tramp-nspawn";
         ename = "tramp-nspawn";
-        version = "1.0";
+        version = "1.0.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/tramp-nspawn-1.0.tar";
-          sha256 = "1si649vcj4md50p5nzvw431580rcl113rraj6fw636a394485hvx";
+          url = "https://elpa.gnu.org/packages/tramp-nspawn-1.0.1.tar";
+          sha256 = "1w8h563pcdksqqy5v5vi7vrx76r6pi4bzhqywk1v67rhnr33qsvq";
         };
         packageRequires = [ emacs ];
         meta = {
diff --git a/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix b/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix
index 2bfc2f18e97dd..94ca0cdf0b6d8 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix
+++ b/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix
@@ -96,7 +96,7 @@ self: let
           ./build.sh -j$NIX_BUILD_CORES
         '';
 
-        postInstall = ''
+        postInstall = (old.postInstall or "") + "\n" + ''
           ./install.sh --prefix=$out
         '';
 
diff --git a/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix b/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix
index 39835c58b6501..6190d25ce93d0 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix
+++ b/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix
@@ -186,7 +186,7 @@ let
             cd -
           '';
 
-          postInstall = ''
+          postInstall = (old.postInstall or "") + "\n" + ''
             install -m=755 -D source/sqlite/emacsql-sqlite \
               $out/share/emacs/site-lisp/elpa/emacsql-sqlite-${old.version}/sqlite/emacsql-sqlite
           '';
@@ -301,7 +301,7 @@ let
             make
             popd
           '';
-          postInstall = ''
+          postInstall = (attrs.postInstall or "") + "\n" + ''
             outd=$(echo $out/share/emacs/site-lisp/elpa/libgit-**)
             mkdir $outd/build
             install -m444 -t $outd/build ./source/src/libegit2.so
@@ -426,7 +426,7 @@ let
             cd -
           '';
 
-          postInstall = ''
+          postInstall = (old.postInstall or "") + "\n" + ''
             mkdir -p $out/bin
             install -m755 -Dt $out/bin ./source/server/telega-server
           '';
@@ -456,7 +456,7 @@ let
             pkgs.libtool
             (pkgs.zeromq.override { enableDrafts = true; })
           ];
-          postInstall = ''
+          postInstall = (old.postInstall or "") + "\n" + ''
             mv $EZMQ_LIBDIR/emacs-zmq.* $out/share/emacs/site-lisp/elpa/zmq-*
             rm -r $out/share/emacs/site-lisp/elpa/zmq-*/src
             rm $out/share/emacs/site-lisp/elpa/zmq-*/Makefile
@@ -533,7 +533,7 @@ let
           ];
           # we need the proper out directory to exist, so we do this in the
           # postInstall instead of postBuild
-          postInstall = ''
+          postInstall = (old.postInstall or "") + "\n" + ''
             pushd source/build >/dev/null
             make
             install -m444 -t $out/share/emacs/site-lisp/elpa/vterm-** ../*.so
diff --git a/pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix b/pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix
index 591774ad714b9..53b5f9e1743ea 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix
+++ b/pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix
@@ -49,10 +49,10 @@
       elpaBuild {
         pname = "annotate";
         ename = "annotate";
-        version = "1.7.2";
+        version = "1.8.0";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/annotate-1.7.2.tar";
-          sha256 = "0vdpv8k1cvkn3cvsnxqv299gvp470ga2pgmfvdqi7k1vzypgpp57";
+          url = "https://elpa.nongnu.org/nongnu/annotate-1.8.0.tar";
+          sha256 = "169cav480g2fm3z7d5dixrng2h8fv39sa9n066b79cb573p4bbcp";
         };
         packageRequires = [];
         meta = {
@@ -1208,10 +1208,10 @@
       elpaBuild {
         pname = "helm";
         ename = "helm";
-        version = "3.8.7";
+        version = "3.8.8";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/helm-3.8.7.tar";
-          sha256 = "1n0m061amrzm0xpgqy2mp9vrk2960gqhl5hi6c1smcmm7nxqwz12";
+          url = "https://elpa.nongnu.org/nongnu/helm-3.8.8.tar";
+          sha256 = "1qsiw8gswjwfp79n7g103db7xsmk36lq6ln558ipn4cw0fpnq1sc";
         };
         packageRequires = [ helm-core popup ];
         meta = {
@@ -1223,10 +1223,10 @@
       elpaBuild {
         pname = "helm-core";
         ename = "helm-core";
-        version = "3.8.7";
+        version = "3.8.8";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/helm-core-3.8.7.tar";
-          sha256 = "1sak74v3gg34zzlbbgvlzvg7gw32fhcbxp5kigigmwvvbj5imgs7";
+          url = "https://elpa.nongnu.org/nongnu/helm-core-3.8.8.tar";
+          sha256 = "0wg21425ki8n8d954lkmlyci6awwwv53jg4gn5z495vh27qiv3qn";
         };
         packageRequires = [ async emacs ];
         meta = {
@@ -2358,6 +2358,21 @@
           license = lib.licenses.free;
         };
       }) {};
+    sweeprolog = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+      elpaBuild {
+        pname = "sweeprolog";
+        ename = "sweeprolog";
+        version = "0.4.5";
+        src = fetchurl {
+          url = "https://elpa.nongnu.org/nongnu/sweeprolog-0.4.5.tar";
+          sha256 = "17dbrn2yvc6ib4dig410kbmvpwp4iz6q9hx6g0mk3vxqjrmgwyls";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/sweeprolog.html";
+          license = lib.licenses.free;
+        };
+      }) {};
     swift-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib, seq }:
       elpaBuild {
         pname = "swift-mode";
@@ -2518,10 +2533,10 @@
       elpaBuild {
         pname = "tuareg";
         ename = "tuareg";
-        version = "2.3.0";
+        version = "3.0.1";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/tuareg-2.3.0.tar";
-          sha256 = "0a24q64yk4bbgsvm56j1y68zs9yi25qyl83xydx3ff75sk27f1yb";
+          url = "https://elpa.nongnu.org/nongnu/tuareg-3.0.1.tar";
+          sha256 = "0y98gwnbrcj3csd9yilk1izgzmp1ds5dh3y1bxgb2fzrjir3i13f";
         };
         packageRequires = [ caml emacs ];
         meta = {
diff --git a/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json b/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json
index 2faff33b5d07d..1a630831d89ac 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json
+++ b/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json
@@ -204,11 +204,11 @@
   "repo": "ymarco/auto-activating-snippets",
   "unstable": {
    "version": [
-    20220426,
-    2058
+    20220930,
+    52
    ],
-   "commit": "566944e3b336c29d3ac11cd739a954c9d112f3fb",
-   "sha256": "0walpgv18gx11hvij1mf9hgsd1x40rhccbzsnwsh86lka1g3na34"
+   "commit": "e92b5cffa4e87c221c24f3e72ae33959e1ec2b68",
+   "sha256": "1nl7wm4l30hjcbqrvdci66aa6ax32ih46n58q3imc46z8c6rhqxh"
   },
   "stable": {
    "version": [
@@ -2197,15 +2197,15 @@
   "repo": "alan-platform/AlanForEmacs",
   "unstable": {
    "version": [
-    20220923,
-    1554
+    20220928,
+    1229
    ],
    "deps": [
     "flycheck",
     "s"
    ],
-   "commit": "01466bf6451104e9e996d157f1258fe0e19e049f",
-   "sha256": "1phpj6jbj8jbk90k3vi8y9m1faz3cxs3wkj2n17n5d2pmyjy77nb"
+   "commit": "8856871633ef961a0dd7cf019be44212cfe1add1",
+   "sha256": "1pmgp69w0vi14rzrrkxn8gwhvb1yfczcw73h5jfsawhislg2vq8a"
   },
   "stable": {
    "version": [
@@ -2336,14 +2336,14 @@
   "repo": "cpitclaudel/alectryon",
   "unstable": {
    "version": [
-    20211018,
-    321
+    20220925,
+    2236
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "5505e00e5c8a5080ee0e640e5dc8de947e3b9aff",
-   "sha256": "053pr895zdd0pklxvx4aa4lzn6lds1zgqd8adp9k1qcampxh64np"
+   "commit": "8a1f3054c97fc86d628413800cfef75577c43485",
+   "sha256": "11nsa1jh3d3q848hdx8qrqkk427pilldkai119plv3rnmf2sqckc"
   },
   "stable": {
    "version": [
@@ -2484,11 +2484,11 @@
   "repo": "domtronn/all-the-icons.el",
   "unstable": {
    "version": [
-    20220823,
-    1719
+    20220929,
+    2303
    ],
-   "commit": "4a4d6269b8b85b0b15954f063e6ce378630d80c0",
-   "sha256": "0y1dpxv8hha8pcxssayy0gaa7jd15ad0hwpmpixg164xzjn0cnb6"
+   "commit": "51bf77da1ebc3c199dfc11f54c0dce67559f5f40",
+   "sha256": "1idzamhpfgcdiwap20s3cc258kawxa1k46c4s79xslfbdqy0abdy"
   },
   "stable": {
    "version": [
@@ -2526,14 +2526,14 @@
   "repo": "wyuenho/all-the-icons-dired",
   "unstable": {
    "version": [
-    20220620,
-    1939
+    20220929,
+    1135
    ],
    "deps": [
     "all-the-icons"
    ],
-   "commit": "b5d3af1e47de09e6ac80d4d7fba516e6a3c38e26",
-   "sha256": "1a72ka2sfnn644kgz6ag8sz3j8dxkbmlyd5rv7fq9qwj7487n2yh"
+   "commit": "bcaed35bb3ad7fc46007f16e0d670beb82bb613e",
+   "sha256": "1ns87m2xgdp9q86iqbswz746gb896d0n0wv8b92n158hhz81c8g9"
   },
   "stable": {
    "version": [
@@ -3227,11 +3227,11 @@
   "repo": "bastibe/annotate.el",
   "unstable": {
    "version": [
-    20220916,
-    1547
+    20220930,
+    1003
    ],
-   "commit": "f166cca70bc5d54da6027a590b8407bc08deece6",
-   "sha256": "0n0jir0zhhskxm7z5kz988h9gxbd6mgiyyrixggjr7yyfg3m22r8"
+   "commit": "0c3342bd55c827b8e4529fd5ee2aa40053a334f6",
+   "sha256": "0y9v37y8l1mx14lggddlimlmivzz0ll4pwhq87szf50bv23xiq7r"
   },
   "stable": {
    "version": [
@@ -3721,11 +3721,11 @@
   "repo": "alexmurray/apparmor-mode",
   "unstable": {
    "version": [
-    20220920,
-    1225
+    20220930,
+    1134
    ],
-   "commit": "fdd520249a882eaf7b52dfaba49887149697741b",
-   "sha256": "0v179is71xpz3jn049wqib8dgjncv6pq0i9kx37rkg9djy06z0m8"
+   "commit": "9b0ba33995172044068fa2609d97b1015f9fb513",
+   "sha256": "0ncp3aq5b2xmr3khy2c6hz8492k56j8v8lfkqqky7n028zy90nv5"
   }
  },
  {
@@ -4272,20 +4272,20 @@
   "repo": "jwiegley/emacs-async",
   "unstable": {
    "version": [
-    20220922,
-    1622
+    20220928,
+    1909
    ],
-   "commit": "dbac40131f6644bf80fd27581b62361e743fb4a8",
-   "sha256": "04vx7a7rs8klfadafdik5x917zkz5hjbj9ckks6afq2d73pcj8lm"
+   "commit": "53addd02fbad33765f508f8e6254ebd44e1f81e5",
+   "sha256": "18pysi1pf6hbv6w0nq50j5xclvgd006iqqijh44wck9hxhdwyfr1"
   },
   "stable": {
    "version": [
     1,
     9,
-    6
+    7
    ],
-   "commit": "370ead445f5d0fc21b7338e05a64830c410368a3",
-   "sha256": "1q480ss2jgijdpy6pa4xrjni9pf5q6dwf8hv052fhdpi55bmfdn2"
+   "commit": "53addd02fbad33765f508f8e6254ebd44e1f81e5",
+   "sha256": "18pysi1pf6hbv6w0nq50j5xclvgd006iqqijh44wck9hxhdwyfr1"
   }
  },
  {
@@ -5477,14 +5477,14 @@
   "repo": "abo-abo/auto-yasnippet",
   "unstable": {
    "version": [
-    20191015,
-    942
+    20220927,
+    857
    ],
    "deps": [
     "yasnippet"
    ],
-   "commit": "db9e0dd4335b2202cd5dac95bbbc87a1032d9bbe",
-   "sha256": "0az8pip0gsq5xqpfizcz4rmj5hmkvz1fdkg996k9qqacp17p2caj"
+   "commit": "7ef65b8e128bcf8afc52a702402c7943839abfb9",
+   "sha256": "01mdijgngh4bjngxcs81d7v8f6r28ly355gz4f87dbqaxvsdj92f"
   },
   "stable": {
    "version": [
@@ -9960,11 +9960,11 @@
   "repo": "ocaml/caml-mode",
   "unstable": {
    "version": [
-    20220503,
-    1742
+    20220928,
+    835
    ],
-   "commit": "d3d2f5dbeccd0f415cbb28fab2015dc678e80bbd",
-   "sha256": "0w9ypvvkm8qx88rldkhysp12inc8izn1qj9rpcchk8xzs0s7sqxp"
+   "commit": "a970f303065fe176a920db0466dacf3e2a20b56b",
+   "sha256": "1bd21fhcjgz7iadbz66yyzb7d88mlan7mkxm8zm0jnlkhdmixc9v"
   },
   "stable": {
    "version": [
@@ -10094,8 +10094,8 @@
   "repo": "Titan-C/cardano.el",
   "unstable": {
    "version": [
-    20220906,
-    1126
+    20220929,
+    1312
    ],
    "deps": [
     "bech32",
@@ -10109,8 +10109,8 @@
     "yaml-mode",
     "yasnippet"
    ],
-   "commit": "2d414d39b4824bf4de97b98f130da24c70ca916e",
-   "sha256": "0ap82dyvzv19w89xinxfqq2ixsr8yrg3wq9lraxy87m6djjhlcy0"
+   "commit": "833a33780ea4fd95e99495b05fc19abac0412e5c",
+   "sha256": "1rzab8kqmrgsp3firl0v7bcbasv499gpj7qrm2g65lp1vygqh8m9"
   }
  },
  {
@@ -10694,15 +10694,15 @@
   "repo": "ema2159/centaur-tabs",
   "unstable": {
    "version": [
-    20220920,
-    510
+    20220926,
+    1247
    ],
    "deps": [
     "cl-lib",
     "powerline"
    ],
-   "commit": "eac6522bb9c19c525770822d9f14b4d0ff07324c",
-   "sha256": "1z7b3s29xb0n25bfbbm1wrcap9dvig5zi5fcnvlyrl9si9565948"
+   "commit": "7d9fad0daa44ffb2acecf6525759e46e08e35f2c",
+   "sha256": "0la8fmwirspg7m453qhfb64sqryl59dxc1lfmjkh6mzf85nqbl1i"
   },
   "stable": {
    "version": [
@@ -10803,11 +10803,11 @@
   "repo": "nbarrientos/cern-ldap.el",
   "unstable": {
    "version": [
-    20220830,
-    1909
+    20220925,
+    1550
    ],
-   "commit": "1e8ac2029ade5e7755ec76f15a0948a10c955a8f",
-   "sha256": "11gc34qrsmh814ma4y8asxb1fvy0rvhmch4yv2ydimgfblhlffxs"
+   "commit": "4851e952318e11ea9693efe2e460983d5c6dffcd",
+   "sha256": "0axaynilvccj0bwv5xa6zbk5m1vvxgy1avngvpdqqxp8hwm4m1rj"
   },
   "stable": {
    "version": [
@@ -11030,11 +11030,11 @@
   "repo": "GrammarSoft/cg3",
   "unstable": {
    "version": [
-    20220901,
-    1202
+    20220930,
+    907
    ],
-   "commit": "30a33cabfdaea2d9b54a040f88cf741ea43738b2",
-   "sha256": "07jcfw9cy7d5h57mna30a8q1nq1qvy0jhxrlz18jl5nd09hr9lh6"
+   "commit": "4d0fcdd3f9f33832af357928762d785d88b3d494",
+   "sha256": "0nh6lgwrd776n3chk3wyla95hf5jhkcmbmnz25d5lsk35nb2fwb8"
   },
   "stable": {
    "version": [
@@ -11711,8 +11711,8 @@
   "repo": "clojure-emacs/cider",
   "unstable": {
    "version": [
-    20220919,
-    1610
+    20220930,
+    1032
    ],
    "deps": [
     "clojure-mode",
@@ -11722,8 +11722,8 @@
     "sesman",
     "spinner"
    ],
-   "commit": "101671c06df301833b3dcf6a5ed83a028efc334f",
-   "sha256": "16y01kwm5zyhczw7lpmxcql6jaka2bcdswbn0xnwkld7m4dnjamd"
+   "commit": "e75706f53bd0470bcec0d1e3a4cef6a043a20fc7",
+   "sha256": "09k527ah8vh02mvzy28y5hwr6dvzqgdjxbjwv9q4fc1bvmfmnl0l"
   },
   "stable": {
    "version": [
@@ -12021,16 +12021,16 @@
   "repo": "emacs-citar/citar",
   "unstable": {
    "version": [
-    20220913,
-    1718
+    20220925,
+    2234
    ],
    "deps": [
     "citeproc",
     "org",
     "parsebib"
    ],
-   "commit": "60cc30e4aa6947a9a06db39a4198162fa5959f5e",
-   "sha256": "124r0s9qc40d7hca7l37l4b40dcyd6vcliszp0cf5wc6g13m7n7k"
+   "commit": "219a69c519fa77ba609b05ac5dbcb9ae357d383b",
+   "sha256": "02ay11a5nn7j1f3f3zjrsrp6j1hsyl1k58v8cx4mi5m73wbchc98"
   },
   "stable": {
    "version": [
@@ -12085,15 +12085,15 @@
   "repo": "emacs-citar/citar-org-roam",
   "unstable": {
    "version": [
-    20220913,
-    1114
+    20220927,
+    1834
    ],
    "deps": [
     "citar",
     "org-roam"
    ],
-   "commit": "29688b89ac3bf78405fa0dce7e17965aa8fe0dff",
-   "sha256": "06xzsrb1ihadwysxpghhcpl315rrv8zrfay03jwzqmm4hyrxvz6i"
+   "commit": "27105d0a9578279560cd79cfad5871e7e603bc58",
+   "sha256": "192p4bfa49mj5iq70lazi828gzwd1z7dfmckg4xfmdsd58crygh3"
   },
   "stable": {
    "version": [
@@ -12906,11 +12906,11 @@
   "repo": "clojure-emacs/clojure-mode",
   "unstable": {
    "version": [
-    20220905,
-    1237
+    20220928,
+    557
    ],
-   "commit": "d47298212ffc486ade3f2428f103feba3a467af0",
-   "sha256": "0jh2navzljxkna04lf95cqbvk9bzyfcjw9knvg5b331q6s9zl9ck"
+   "commit": "414157c3e523e80cc44dca8f86f1853122ee5f6b",
+   "sha256": "1ldzbc7zrkqnkf3gm69q94ys4my984zps1gymw5sdx6gn9qc96iv"
   },
   "stable": {
    "version": [
@@ -16466,14 +16466,14 @@
   "repo": "minad/consult",
   "unstable": {
    "version": [
-    20220914,
-    920
+    20220930,
+    2231
    ],
    "deps": [
     "compat"
    ],
-   "commit": "76aab86015c3d7628dbd5f92b2dd8ab9aeadac8d",
-   "sha256": "0wnsmn978ivf9vhis0by467q0fp4gprq169px41q4z4zaf6fcpjj"
+   "commit": "af11b72f628c1ff0b051bb4180bfdb7833d64e40",
+   "sha256": "0fmaxga2xws2xnxfxrqkvjacba1a1y6811s2m6bibfcm8iyldpyk"
   },
   "stable": {
    "version": [
@@ -16780,27 +16780,27 @@
   "repo": "jao/consult-notmuch",
   "unstable": {
    "version": [
-    20220513,
-    1647
+    20220929,
+    2111
    ],
    "deps": [
     "consult",
     "notmuch"
    ],
-   "commit": "4138855cddee0ef126cff6a5fc5ca9c49fd2682d",
-   "sha256": "1wqp0pp408bxywxzq3gk1hk5vr19k4vsz5b979b4gbk89i1gxamb"
+   "commit": "29e9a3d0d4ed2e8bcefbf009103f7e5665b6c260",
+   "sha256": "18r47cj89qli534irah3lwwzsnik5bcf61clnrkhafqv9y51m67z"
   },
   "stable": {
    "version": [
     0,
-    7
+    8
    ],
    "deps": [
     "consult",
     "notmuch"
    ],
-   "commit": "883527072b56bb09dd921800bca13860caaa4ffe",
-   "sha256": "0xzpkpf2sb89qkbqcrwddp4pgnzdjp40bc5da22jq9r4pf67y7qs"
+   "commit": "29e9a3d0d4ed2e8bcefbf009103f7e5665b6c260",
+   "sha256": "18r47cj89qli534irah3lwwzsnik5bcf61clnrkhafqv9y51m67z"
   }
  },
  {
@@ -20905,11 +20905,11 @@
   "repo": "niklaseklund/detached.el",
   "unstable": {
    "version": [
-    20220923,
-    1411
+    20220928,
+    806
    ],
-   "commit": "4d63d7d6aa4668fb7bd141c9701075f2dc7d67a5",
-   "sha256": "064xr2gjl29zx8g6sb7fj2h2v2rpqpzrr6pd4nj4r5pah1hi7xcv"
+   "commit": "772ac746a9e8350f24ff548301ef13986e5b21d9",
+   "sha256": "129y80yya8v3a8iz9z8nix44mivfkd5p3q454ancynv89pkbhsl2"
   },
   "stable": {
    "version": [
@@ -21031,11 +21031,11 @@
   "repo": "radian-software/diary-manager",
   "unstable": {
    "version": [
-    20220508,
-    128
+    20220929,
+    2042
    ],
-   "commit": "c538504e606208fa902d040e54188072df6193d0",
-   "sha256": "1j10wl00mgfpw3554jngkmn44z4s28m5qvw3lg0zgca50xkjnyqa"
+   "commit": "56c739224e5bb845d275bfe3f4e420285de3a929",
+   "sha256": "1248xyb9rmlf07ag7hnvcisgljvacia72s9l0grihjfa3mrlmdks"
   },
   "stable": {
    "version": [
@@ -21638,14 +21638,14 @@
   "repo": "tilmanrassy/emacs-dir-treeview",
   "unstable": {
    "version": [
-    20220820,
-    27
+    20220918,
+    42
    ],
    "deps": [
     "treeview"
    ],
-   "commit": "1e516096344e13cc5c19aeaed135a85de01b4561",
-   "sha256": "071m5rshcjbbv6xrz0dqm9j4m6nhawwq8flhxwjb5ab9vidjby84"
+   "commit": "3430eb32d824270181fc74bac7334fa7c4b5be9a",
+   "sha256": "0grvkyasj1mck8i7qhclgidcx9zqil9pm1n5gk4h659fr9ji283k"
   }
  },
  {
@@ -22612,14 +22612,14 @@
   "repo": "alexluigit/dirvish",
   "unstable": {
    "version": [
-    20220923,
-    1034
+    20221001,
+    426
    ],
    "deps": [
     "transient"
    ],
-   "commit": "36c8cb289fa57e6eb6b90080548deadeb4fc7838",
-   "sha256": "09ikiijvqvji3rn9vb7cr32d9ap7r1b73rmm3kmlv18120fp29kb"
+   "commit": "a877ba816f907daea2d86bd10754bec6484e753a",
+   "sha256": "0xq2h5fbfzd3r4hxy0lp0zz12a9mhf8x58ddxk1s6j80v8xr5v0b"
   },
   "stable": {
    "version": [
@@ -23710,15 +23710,15 @@
   "repo": "seagle0128/doom-modeline",
   "unstable": {
    "version": [
-    20220924,
-    1354
+    20220930,
+    952
    ],
    "deps": [
     "compat",
     "shrink-path"
    ],
-   "commit": "3e022a7a12a1a2e2fad0133b215266d73467ff31",
-   "sha256": "1b68c1bal7z56zg76i1lzmk2kylc75g49kq6i1f9gk5y71w888y1"
+   "commit": "5dbb43411e79c1c67cdcd05e04c037c229c8ea87",
+   "sha256": "03zj28dvf7dh2j21ffdn7liblg7j72wx3yfijx42w9v9hfgcya1m"
   },
   "stable": {
    "version": [
@@ -24527,11 +24527,11 @@
   "repo": "xenodium/dwim-shell-command",
   "unstable": {
    "version": [
-    20220910,
-    1225
+    20220928,
+    2032
    ],
-   "commit": "e5d427e4e63ca7b13960b5ad69893186ae3a9ceb",
-   "sha256": "0b5yy09li1v57q8bbf19m51s1w69zj5vnkfds12sdvdlrra7zqr0"
+   "commit": "6f599480be69437171fb4e9d58fd29b20731096f",
+   "sha256": "0qr50ivwgbpygp9kscm6h71jjys06s2jib1k8q35xahaah4dbrkf"
   }
  },
  {
@@ -25025,30 +25025,30 @@
   "repo": "masasam/emacs-easy-hugo",
   "unstable": {
    "version": [
-    20220616,
-    2302
+    20220928,
+    405
    ],
    "deps": [
     "popup",
     "request",
     "transient"
    ],
-   "commit": "46aa41a207c9644ef9789512e025d4e7c7f3d5ea",
-   "sha256": "07nhcnq0b1wha1nd7y6mzqgf7x5dzi4pg11q827fjfap7aw9mh6p"
+   "commit": "31e2f6d6d11be17576e135dd28d5ed441462d77d",
+   "sha256": "0jfm0cz65rlwb9ycdwd5lpwv0dh77ixd64bbjli4y4g5ilay6dx1"
   },
   "stable": {
    "version": [
     3,
     9,
-    56
+    57
    ],
    "deps": [
     "popup",
     "request",
     "transient"
    ],
-   "commit": "46aa41a207c9644ef9789512e025d4e7c7f3d5ea",
-   "sha256": "07nhcnq0b1wha1nd7y6mzqgf7x5dzi4pg11q827fjfap7aw9mh6p"
+   "commit": "31e2f6d6d11be17576e135dd28d5ed441462d77d",
+   "sha256": "0jfm0cz65rlwb9ycdwd5lpwv0dh77ixd64bbjli4y4g5ilay6dx1"
   }
  },
  {
@@ -26113,8 +26113,8 @@
   "repo": "joaotavora/eglot",
   "unstable": {
    "version": [
-    20220924,
-    854
+    20220926,
+    1235
    ],
    "deps": [
     "eldoc",
@@ -26124,8 +26124,8 @@
     "seq",
     "xref"
    ],
-   "commit": "83052a5e61267a2e1c091c1bd4301ea81f1bc6d7",
-   "sha256": "0irxjlfplmixshywsxpq7yknfy9g2m3dpky1mk6psxbk7h7swyyp"
+   "commit": "a49f620f53d00efe471dbceccc795329d6d40e5e",
+   "sha256": "18vgyjagk8s37dm30pqra1xk12rg0nv9npmm2q9vb44r47kbr02l"
   },
   "stable": {
    "version": [
@@ -27306,8 +27306,8 @@
   "repo": "jeetelongname/elfeed-goodies",
   "unstable": {
    "version": [
-    20220614,
-    49
+    20220929,
+    1136
    ],
    "deps": [
     "cl-lib",
@@ -27316,8 +27316,8 @@
     "popwin",
     "powerline"
    ],
-   "commit": "c9d9cd196746add3010d74f43b5c9866562f39fb",
-   "sha256": "1b80srhravjf791qlx42hmzlprzlf7p8faqn5cljh3nrrridivxn"
+   "commit": "ff9fa91e29c9cd06fdddedc1eabbdf4d3cb93e8c",
+   "sha256": "1s7f21cw84qv59hj3bnsph68p3mhzvdcsl9v095787pcddc85s3b"
   }
  },
  {
@@ -29923,15 +29923,15 @@
   "repo": "emacscollective/epkg",
   "unstable": {
    "version": [
-    20220917,
-    1359
+    20220927,
+    1207
    ],
    "deps": [
     "closql",
     "compat"
    ],
-   "commit": "01df3974f5bf08d0984619dbea4994e3863208f6",
-   "sha256": "0zvybm76nqhpmbmhqj6l7nc3wv2wvi6jfwhj9qfz3ahki3cadsd6"
+   "commit": "582759aa230e1de252f7b60711e38034769ab602",
+   "sha256": "1cgxqaif9azbmfi101alca1x728jm5l5dzly9fczamlbz587jaac"
   },
   "stable": {
    "version": [
@@ -31556,11 +31556,11 @@
   "repo": "emacs-ess/ESS",
   "unstable": {
    "version": [
-    20220902,
-    818
+    20220915,
+    2126
    ],
-   "commit": "ecd8865bbbdf6664b66be5ffd5d4e62d5af78240",
-   "sha256": "09x0hfipb2jmg8q01nn706vn7s8ks23jzwmg9vjndlv0ki94ip62"
+   "commit": "f45542e723d7415f5e22bcf39f25e31d055d168c",
+   "sha256": "088dd8mmsabpg639r08rv8kz6qzmlmgfvqln8k26h0szzrin01di"
   },
   "stable": {
    "version": [
@@ -31724,15 +31724,15 @@
   "repo": "ShuguangSun/ess-view-data",
   "unstable": {
    "version": [
-    20220920,
-    1548
+    20220927,
+    353
    ],
    "deps": [
     "csv-mode",
     "ess"
    ],
-   "commit": "8f00579c79d12f359ce6aff828a7462c421c962d",
-   "sha256": "0ww9b8gzih3klaq490k8hyizx867drcsds6kn8hjfqlj8fl0vh9q"
+   "commit": "1b48afef4dcc8fbaed1af98fade7f0df84bd6871",
+   "sha256": "0nybmqj166a5qrhcn0a7mlwdwfijm8hgzizvd3lycycak3ixq6xf"
   },
   "stable": {
    "version": [
@@ -32174,15 +32174,15 @@
   "repo": "emacs-evil/evil",
   "unstable": {
    "version": [
-    20220830,
-    1232
+    20220929,
+    1317
    ],
    "deps": [
     "cl-lib",
     "goto-chg"
    ],
-   "commit": "26ec0cda1bcb899ae37086a1268a055484171519",
-   "sha256": "1klh8zx0pmq4lca8c33714h1qczxp3wlqxaqdg31lawvg3cdm5hp"
+   "commit": "0aaf5944db224f1d8948acac64e2b703ed151446",
+   "sha256": "0b0frclfbh9k5igv5gdcgb9cwnwmnxcmkf5sgsmm8glrnvgblg1q"
   },
   "stable": {
    "version": [
@@ -32375,15 +32375,15 @@
   "repo": "emacs-evil/evil-collection",
   "unstable": {
    "version": [
-    20220810,
-    1901
+    20220926,
+    1733
    ],
    "deps": [
     "annalist",
     "evil"
    ],
-   "commit": "665d5c99e216c7b18856f7ceda7c91ea5669f904",
-   "sha256": "0vmwd85vc6hcyfzg4zwhsilp6y0kmygnyfn02ham0b6gc2kakz23"
+   "commit": "f45f4ab142adc02582e88d18e8f7ac904802b4c1",
+   "sha256": "04ak4hjg8dlzcx104lgmx66ip57z9vswhjhn2sx2b2sfyfhkbi6y"
   },
   "stable": {
    "version": [
@@ -32941,11 +32941,11 @@
   "repo": "redguardtoo/evil-matchit",
   "unstable": {
    "version": [
-    20220608,
-    1134
+    20220927,
+    220
    ],
-   "commit": "271551560c3c8c066b29d335f781ff9b5aefe746",
-   "sha256": "1vzpmr33smi1kgcrxj7jl8wvk1ffvy2bf6p6pki0r53lk03mf8fr"
+   "commit": "ec3dd819983b2d824142efddd46ef29b46a7c454",
+   "sha256": "00yclv8fky3czwnp3qfvcbbadqagqzyf6cxq50vyhmvjhnf9xspi"
   },
   "stable": {
    "version": [
@@ -33895,15 +33895,15 @@
   "repo": "meain/evil-textobj-tree-sitter",
   "unstable": {
    "version": [
-    20220905,
-    930
+    20220930,
+    1401
    ],
    "deps": [
     "evil",
     "tree-sitter"
    ],
-   "commit": "c2408aa1342fddbde5e877e405fdd2eb03a07779",
-   "sha256": "1aw9pzsnl3wm01a1vc3y7x9cb6pqbb6w521gqiqxjfn8r6xjaljl"
+   "commit": "fad2178f4455301afcafcf93d93fa5c5ca2aed47",
+   "sha256": "00yfc4hwbsdm9qfvi8pbva7ifr2lxrcrnb16dv05jmfssx8kdpdk"
   }
  },
  {
@@ -34403,6 +34403,31 @@
   }
  },
  {
+  "ename": "exercism",
+  "commit": "da659316f2b8c8b326e04ee1e55fceb105128103",
+  "sha256": "0vy86v7ya9lqizl7ldrnlzcd12219dksrgbgvyla0yr6i8msqh4w",
+  "fetcher": "github",
+  "repo": "anonimitoraf/exercism.el",
+  "unstable": {
+   "version": [
+    20221001,
+    1037
+   ],
+   "deps": [
+    "a",
+    "async",
+    "async-await",
+    "dash",
+    "persist",
+    "request",
+    "s",
+    "transient"
+   ],
+   "commit": "44dca0c889ac605777257ec3db442263772bb2c6",
+   "sha256": "1nzjfbyl0n4h9h9rrb037i65xd6j22ymvhb5irmrqvxbb2fvfs7w"
+  }
+ },
+ {
   "ename": "exiftool",
   "commit": "4835a76909d020781021e747fbc341111a94dbfa",
   "sha256": "1zvcps64yvz8lsjhi1j0808983fv2s7kx67yjr8ps454mcl8bpab",
@@ -35632,11 +35657,11 @@
   "repo": "technomancy/fennel-mode",
   "unstable": {
    "version": [
-    20220825,
-    1549
+    20220928,
+    842
    ],
-   "commit": "a3d7564f209c32b804852b7fe8056c1952414f08",
-   "sha256": "06w5q339k0nr0cvzc3s7zmk82124n0qikyyz918wvwgw8widcj3f"
+   "commit": "9173638b9a1f15e94a05440fdaec7a2f9ea45438",
+   "sha256": "0bb59s38lwpkmbwxld0z69jj3fk6h97yn2gqv51xm2rbkg2s92wc"
   },
   "stable": {
    "version": [
@@ -36995,8 +37020,8 @@
   "repo": "flycheck/flycheck",
   "unstable": {
    "version": [
-    20220823,
-    1254
+    20220928,
+    1355
    ],
    "deps": [
     "dash",
@@ -37004,8 +37029,8 @@
     "pkg-info",
     "seq"
    ],
-   "commit": "600b3bffda3862121d96bbc5c1f8990fa9033a82",
-   "sha256": "0nv8ln8mr63kn1c41amj88isl8f3imqhb0bqrpl6g6frm2rfwxkm"
+   "commit": "d72c29fec85f1da6584475d88c1265f80e1275ad",
+   "sha256": "1l39inrl26z9z13hdvbi8wk0zqnx31j4g2bs5nv80fxc8j5sxqna"
   },
   "stable": {
    "version": [
@@ -39483,15 +39508,15 @@
   "repo": "abingham/flycheck-vale",
   "unstable": {
    "version": [
-    20190609,
-    1533
+    20220929,
+    608
    ],
    "deps": [
     "flycheck",
     "let-alist"
    ],
-   "commit": "f08249535348d046d0974b9c20fe1b7dd3cd2660",
-   "sha256": "0xjaxckl5rajlxq9a4c9n8l4605n2xkkyd2sdj38kd9w9a428wvz"
+   "commit": "7c7ebc3de058a321cb76348a01f45f02dc55d2f0",
+   "sha256": "086b2ljx3n2jpjm2vl7p0mnjbhx3v45kjrxd5y7q4ilhi29g5cpf"
   }
  },
  {
@@ -39689,6 +39714,19 @@
    ],
    "commit": "023472345980c251429046d6a20e85c76f9e928e",
    "sha256": "1zfysavx2w5mvy2mgi3v32205f1b7zfcrabi17rzi0v88h8j46a8"
+  },
+  "stable": {
+   "version": [
+    1,
+    0,
+    1
+   ],
+   "deps": [
+    "flymake",
+    "let-alist"
+   ],
+   "commit": "6fb90eefc2ad6214127de2ccff5160bf1d47eb87",
+   "sha256": "1dxy1bljvd8rar0pivdrfahmgnnjlxm0mlks8mzw3l7k7b7jar6k"
   }
  },
  {
@@ -40714,6 +40752,21 @@
   }
  },
  {
+  "ename": "flymake-sqlfluff",
+  "commit": "a24b706cdc277fec9d3998574430882f318e26f8",
+  "sha256": "0pqwyaifdbj5lrwz5ifqmp2r2d4wjvqvr09gpgz54ijm3bjlb38q",
+  "fetcher": "github",
+  "repo": "erickgnavar/flymake-sqlfluff",
+  "unstable": {
+   "version": [
+    20220925,
+    2144
+   ],
+   "commit": "b76f335555c9a94ffc3d7281f3dca345de474eed",
+   "sha256": "0snghmn59xcfqb90rgfph8fviapcwhh7d76hls54ixc6lc5za42p"
+  }
+ },
+ {
   "ename": "flymake-swi-prolog",
   "commit": "a3645b08cb46e3d91081da7baa982b5283918447",
   "sha256": "05d86w375h7h7izw9bh8sqmgnjbw15dxv67sfnlk38b2mgmv6198",
@@ -41407,11 +41460,11 @@
   "repo": "usaoc/elisp-for",
   "unstable": {
    "version": [
-    20220923,
-    1018
+    20220929,
+    1246
    ],
-   "commit": "5df8659ef315882b90f84da2eb9adf95443b571c",
-   "sha256": "0xm4l2kiy5j1pjjrja7791msb37fi26nabfhnacxaiagxksxlda5"
+   "commit": "22de9e71e0b7f831da4e4a756c75abcc73a02fad",
+   "sha256": "12asqfhy6bmwg7k0iysvv1z85cvnyrwrl8bzbjrx7giwyy3rk30l"
   },
   "stable": {
    "version": [
@@ -41582,15 +41635,15 @@
   "repo": "lassik/emacs-format-all-the-code",
   "unstable": {
    "version": [
-    20220909,
-    1032
+    20220928,
+    1045
    ],
    "deps": [
     "inheritenv",
     "language-id"
    ],
-   "commit": "48f79e894c04b0c73c6334194ee17d7f72046c83",
-   "sha256": "1ri9cbbd73g3a6wlmj8g4xx5vwfnxr2r7sdkr0c91yfihai51xg1"
+   "commit": "d01a0702472d159bacc704394198a77a64d3c79b",
+   "sha256": "1r406npg5f2wqysj9rligcjjr68m44ja8n8v82rf8zpi6v1pmp8h"
   },
   "stable": {
    "version": [
@@ -43488,16 +43541,16 @@
   "repo": "thisch/gerrit.el",
   "unstable": {
    "version": [
-    20220812,
-    2150
+    20220928,
+    227
    ],
    "deps": [
     "dash",
     "magit",
     "s"
    ],
-   "commit": "4de561d1295d4c86ca9b159ab0c746bedc2d0380",
-   "sha256": "1k1gr6hnb9warbaglhfzarm145afsrv55xdkq6wq6s0imac742ba"
+   "commit": "38e53dfa782d65c7f93db8368b0c49f619c1f09e",
+   "sha256": "0rjrv7y4zkzry2fbsi55ccrnmasd0l8cpd0rapf0sskwc1wldymi"
   }
  },
  {
@@ -44846,30 +44899,30 @@
   "repo": "akirak/github-linguist.el",
   "unstable": {
    "version": [
-    20220418,
-    22
+    20220928,
+    2013
    ],
    "deps": [
     "async",
     "map",
     "project"
    ],
-   "commit": "e1055cba19d82620a735e8e40d094b538e1f4d94",
-   "sha256": "00abshhhm6pvzgwaqhw8g0gwfs915hpdnfh5bqxr9434a56hgkd2"
+   "commit": "73f9f52e1f626e866d8becc7a3671630449764c2",
+   "sha256": "0vsab3jwkck9l42j22j2ndcj6njqbi516z7ayhlnv2z10ifjwfp7"
   },
   "stable": {
    "version": [
     0,
     1,
-    1
+    2
    ],
    "deps": [
     "async",
     "map",
     "project"
    ],
-   "commit": "6e3fc58a465e6726dcba6da038f959028c62223b",
-   "sha256": "1zli3xzp44c61jrg0fn7h39ianxjp2r24sswm3i99hnx052pp8fp"
+   "commit": "f8f28745542d7e4300d73c6bf006ce48b6657947",
+   "sha256": "0a5ibyg7hncwiavngzvivhf5sbhp3czsicyfy1rpfijmbjm4whyl"
   }
  },
  {
@@ -47875,11 +47928,11 @@
   "repo": "ROCKTAKEY/grugru",
   "unstable": {
    "version": [
-    20211119,
-    815
+    20221001,
+    1525
    ],
-   "commit": "1b3b807e84cb250f0cc70876a438fed3b27eb756",
-   "sha256": "1p99lrq6p6xyn9lc2zmf68ns70kayhri1xls0h1h6ibxsqzvxyac"
+   "commit": "d03ccd6314d474f3e6beadc69c0b6ce32af62f07",
+   "sha256": "1s5xig6pbkbnb0xn7rp3a02ig0pzdwxqj54f3bjda0c37ch0l1cj"
   },
   "stable": {
    "version": [
@@ -48592,14 +48645,14 @@
   "repo": "alphapapa/hammy.el",
   "unstable": {
    "version": [
-    20220901,
-    1102
+    20220926,
+    1800
    ],
    "deps": [
     "ts"
    ],
-   "commit": "bd51cfd903d00a3302542dc2a8a17fe8b4d48107",
-   "sha256": "1vn0jzdkzjwvzmm824dgjdwhgfjpg4swsky61w2z9d57fl8p04an"
+   "commit": "62d3262a60d0f6f07920919bb3c47b57cb11bab2",
+   "sha256": "0q9lz0pz501l2s5g5hcn62ii2xfma04csij1rc6k3wzv6gnx4ary"
   }
  },
  {
@@ -49032,11 +49085,11 @@
   "repo": "emacsorphanage/haxe-mode",
   "unstable": {
    "version": [
-    20210108,
-    1835
+    20220930,
+    251
    ],
-   "commit": "fb3f3c9514e652f8955a67baeae13de264996860",
-   "sha256": "05kaxcazbr51chcmlx0fscwk32blj3lzndkr0qpbwfrn8n6mcmrg"
+   "commit": "4d51bd4bf75aef53d1671e22ce6555e4daf883db",
+   "sha256": "0dfjr6k0w996ygds0d5w0msx83bincvwnmmwaq8sxhdi3rnx26r2"
   },
   "stable": {
    "version": [
@@ -49175,28 +49228,28 @@
   "repo": "emacs-helm/helm",
   "unstable": {
    "version": [
-    20220924,
-    1201
+    20220928,
+    1917
    ],
    "deps": [
     "helm-core",
     "popup"
    ],
-   "commit": "3c64aa842a7d382460cacc9d6fbe0e39d012b4f5",
-   "sha256": "0j0sfm8an38d9lfgaijrg8abjwz63qrmh4zq8vhrb572gam9kxn8"
+   "commit": "0a9a1e32cf130d181b26e23919402c8c25f41996",
+   "sha256": "1i8hbdp5sg99h3imqydk4wd7mqsa04113yavk5sx1wgc17jm1l42"
   },
   "stable": {
    "version": [
     3,
     8,
-    7
+    8
    ],
    "deps": [
     "helm-core",
     "popup"
    ],
-   "commit": "4ede199d5d1b7050486a0fdeecbbbf49fef31118",
-   "sha256": "1a8zkp00ahb84ww5072naxwllzbjhi7ccarkk2d7xsykn5lig54c"
+   "commit": "0a9a1e32cf130d181b26e23919402c8c25f41996",
+   "sha256": "1i8hbdp5sg99h3imqydk4wd7mqsa04113yavk5sx1wgc17jm1l42"
   }
  },
  {
@@ -50081,26 +50134,26 @@
   "repo": "emacs-helm/helm",
   "unstable": {
    "version": [
-    20220920,
-    1150
+    20220928,
+    1917
    ],
    "deps": [
     "async"
    ],
-   "commit": "0c12230b4f90118990a3449cbc220b3e13417387",
-   "sha256": "1hrwab6k4sa8f6x6wssl25lpbp214arb1k210xa788gshm40wqjv"
+   "commit": "0a9a1e32cf130d181b26e23919402c8c25f41996",
+   "sha256": "1i8hbdp5sg99h3imqydk4wd7mqsa04113yavk5sx1wgc17jm1l42"
   },
   "stable": {
    "version": [
     3,
     8,
-    7
+    8
    ],
    "deps": [
     "async"
    ],
-   "commit": "4ede199d5d1b7050486a0fdeecbbbf49fef31118",
-   "sha256": "1a8zkp00ahb84ww5072naxwllzbjhi7ccarkk2d7xsykn5lig54c"
+   "commit": "0a9a1e32cf130d181b26e23919402c8c25f41996",
+   "sha256": "1i8hbdp5sg99h3imqydk4wd7mqsa04113yavk5sx1wgc17jm1l42"
   }
  },
  {
@@ -53905,14 +53958,14 @@
   "repo": "duncanburke/help-find",
   "unstable": {
    "version": [
-    20220513,
-    1028
+    20220929,
+    822
    ],
    "deps": [
     "dash"
    ],
-   "commit": "6dd61bbb6290e06e30c002c011da71e348ac045f",
-   "sha256": "00b4vbk3m0br5k2x9mqx1v58j7jpd4k1nln18s99ggxpmx5klk02"
+   "commit": "ef7266fc480367c12bff64817c875af940d0c9c0",
+   "sha256": "1m73capf6flcn8d8ykx13va0wvpcqkjj5isdf5wrlaxhayjc2s7r"
   }
  },
  {
@@ -53947,8 +54000,8 @@
   "repo": "Wilfred/helpful",
   "unstable": {
    "version": [
-    20220919,
-    540
+    20220925,
+    2206
    ],
    "deps": [
     "dash",
@@ -53956,8 +54009,8 @@
     "f",
     "s"
    ],
-   "commit": "db1e15b3783c83d9781a546f37b900ad53576659",
-   "sha256": "0cxpm6b36bwd42gmah9ic7i74m25j232wag5s0v3m1bsqrk66ra4"
+   "commit": "3aa08da7a151f1928bf0e3d12fc2443b6485b6ef",
+   "sha256": "062ym5662b83dxga30qgdvp7krq30m41m3qpj2n64jfimbyk1f56"
   },
   "stable": {
    "version": [
@@ -54928,11 +54981,11 @@
   "repo": "ideasman42/emacs-hl-indent-scope",
   "unstable": {
    "version": [
-    20220911,
-    920
+    20220929,
+    2350
    ],
-   "commit": "c8fd8bc602d71050d4e953ddd8922583081745ad",
-   "sha256": "03kd2j99d2zifarpcsj62f12a28n6k4dwghsa0cdxjkkpakf16lr"
+   "commit": "6220879d7b8b8fdb2274555b401890f7ae8d48c0",
+   "sha256": "0ysbg6r9af45qxc2cnh41ymp69aq1sr3dqyxb9f37ss2dkdjryc3"
   }
  },
  {
@@ -55083,16 +55136,16 @@
   "repo": "thanhvg/emacs-hnreader",
   "unstable": {
    "version": [
-    20220103,
-    1909
+    20220928,
+    423
    ],
    "deps": [
     "org",
     "promise",
     "request"
    ],
-   "commit": "e17006072b0cd06ab7ff32c6187e9565131a78b2",
-   "sha256": "0fyfgdzjc1xy2v13wz96xj09fa18q4285xksc77wm9gxn7ghpvz4"
+   "commit": "8481681c9b2f3bd1ddab12a657f5f3827e288ad7",
+   "sha256": "0ls4q79s361bwa89g1iq3mk6a9d5q3f5sldip8ww42dafmd9smbi"
   }
  },
  {
@@ -57609,11 +57662,11 @@
   "repo": "jcs-elpa/indent-control",
   "unstable": {
    "version": [
-    20220704,
-    652
+    20220930,
+    2107
    ],
-   "commit": "d82a5aa4d3ee4b37c69261480e1866fff8b7b348",
-   "sha256": "0llrz47013x2fllqg9p114ancrryb2dxpkypmxpr2x7y75qqkvk7"
+   "commit": "586b955dde5a0699fca76db28ad0d6c3e4141a27",
+   "sha256": "00jjkfa7aj5sssdsbkyh7crs2y6j3h9gyj3gmdapj8hk1wkbnc9a"
   },
   "stable": {
    "version": [
@@ -57934,6 +57987,36 @@
   }
  },
  {
+  "ename": "inferior-islisp",
+  "commit": "f276aa46506c784e1dc8caff8c5fa9885da4ba82",
+  "sha256": "1igq56vabdk38dby8g6db5f8kqifpdfkh8rlbd23bak6hyrlqadz",
+  "fetcher": "gitlab",
+  "repo": "sasanidas/islisp-mode",
+  "unstable": {
+   "version": [
+    20220924,
+    1040
+   ],
+   "deps": [
+    "islisp-mode"
+   ],
+   "commit": "423b84fe4cc6944e36971225b3e19c888e7e4690",
+   "sha256": "174zjlgcikaydgx5npsbwqblzc61pxnnpw50nia8jhh8175j2sbl"
+  },
+  "stable": {
+   "version": [
+    0,
+    3,
+    1
+   ],
+   "deps": [
+    "islisp-mode"
+   ],
+   "commit": "18258f7134cfd8e0bd12538351b3cd23ae44cec1",
+   "sha256": "174zjlgcikaydgx5npsbwqblzc61pxnnpw50nia8jhh8175j2sbl"
+  }
+ },
+ {
   "ename": "inflections",
   "commit": "392c7616d27bf12b29ef3c2ea71e42ffaea81cc6",
   "sha256": "0f02bhm2a5xiaxnf2c2hlpa4p121xfyyj3c59fy0yldipdxhvw70",
@@ -58016,14 +58099,14 @@
   "repo": "ubolonton/info-colors",
   "unstable": {
    "version": [
-    20200125,
-    1447
+    20220927,
+    1640
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "47ee73cc19b1049eef32c9f3e264ea7ef2aaf8a5",
-   "sha256": "1zmiik1ba7xspbk2g8igr1rscxxzxpzjrzspxjcw9khw6z4iwr51"
+   "commit": "2e237c301ba62f0e0286a27c1abe48c4c8441143",
+   "sha256": "0di34jg2r8nlflxln5azaf2a409hr3pwl93x8jdkv070yqyrf69f"
   },
   "stable": {
    "version": [
@@ -58977,6 +59060,30 @@
   }
  },
  {
+  "ename": "islisp-mode",
+  "commit": "f276aa46506c784e1dc8caff8c5fa9885da4ba82",
+  "sha256": "08fpz699philm5j45ixziccy8jc4bx0nzjgbsx64j84r5dbdnyg8",
+  "fetcher": "gitlab",
+  "repo": "sasanidas/islisp-mode",
+  "unstable": {
+   "version": [
+    20220924,
+    1043
+   ],
+   "commit": "bbf45d02495f9455e91beed01676178dfa5d3561",
+   "sha256": "174zjlgcikaydgx5npsbwqblzc61pxnnpw50nia8jhh8175j2sbl"
+  },
+  "stable": {
+   "version": [
+    0,
+    3,
+    1
+   ],
+   "commit": "18258f7134cfd8e0bd12538351b3cd23ae44cec1",
+   "sha256": "174zjlgcikaydgx5npsbwqblzc61pxnnpw50nia8jhh8175j2sbl"
+  }
+ },
+ {
   "ename": "isortify",
   "commit": "c756ccbae044bc23131060355532261aa9a12409",
   "sha256": "0bqs84prlwk94x543mv22wjnz0s7gqbdi7ryvdc20s7vdr18fn82",
@@ -59140,11 +59247,11 @@
   "repo": "abo-abo/swiper",
   "unstable": {
    "version": [
-    20220915,
-    1532
+    20220926,
+    1250
    ],
-   "commit": "011653a8c0572202603458fa90f337a419fb88a6",
-   "sha256": "16ci7d89kflw17h4f7kl9pmmj6gkdfqzjwspj6ckdgw18l4vlbqh"
+   "commit": "29b61fe1f4d5268d750b666a7ffc1269e22c6477",
+   "sha256": "0ckpclxyrihyimpl9bcyql1gfsn1b7flr23asni1rzxzpq16nvn9"
   },
   "stable": {
    "version": [
@@ -61826,8 +61933,8 @@
   "repo": "gcv/julia-snail",
   "unstable": {
    "version": [
-    20220828,
-    1436
+    20220927,
+    704
    ],
    "deps": [
     "dash",
@@ -61837,8 +61944,8 @@
     "spinner",
     "vterm"
    ],
-   "commit": "ef72f073d783a26c008c9fb478f3d686b9e9ea1b",
-   "sha256": "0vwlc0q1mrrgfwvz753j2wx7krqxyw23bkhms6vjki921zq24fsb"
+   "commit": "0e6fa5180447024c794cb8186c782c5cf28ae68e",
+   "sha256": "0phzrwr90zl7hvmh7p0cgkhs1sj2zpk3hg4f2gf49ix3q7vbbwhl"
   },
   "stable": {
    "version": [
@@ -62871,14 +62978,14 @@
   "repo": "tarsius/keymap-utils",
   "unstable": {
    "version": [
-    20220422,
-    1612
+    20220918,
+    2243
    ],
    "deps": [
     "compat"
    ],
-   "commit": "2e5f99f38cfdd55979dadda74b2d7086fedebb03",
-   "sha256": "08w0bccyi3j6cqgywah952vazl50gq4rh8p076459lyl8kjsc189"
+   "commit": "e4ef3c5fb46b1f749c9d838d2eba709e164402e2",
+   "sha256": "19vf6rmydf0ayns9cllj2skq79xjfdn343csijmy3vb6hp3zq869"
   },
   "stable": {
    "version": [
@@ -65208,11 +65315,11 @@
   "repo": "merrickluo/liberime",
   "unstable": {
    "version": [
-    20211203,
-    244
+    20220928,
+    845
    ],
-   "commit": "79b709debe036f98d74ac129934e59c4d08c1dd5",
-   "sha256": "1z1z8x65z4wp9gkbasljxc9bwigi2db95sy31m6k9120k74gkzsk"
+   "commit": "2217883b0ca3b308de4e2c670a0ac8c767fd633e",
+   "sha256": "0s0fsjs52x4v1h04j711fd2w7dmx55dc1chfd0s3czf1r5vr7hc3"
   },
   "stable": {
    "version": [
@@ -65437,8 +65544,8 @@
   "repo": "emacs-vs/line-reminder",
   "unstable": {
    "version": [
-    20220721,
-    451
+    20220928,
+    1307
    ],
    "deps": [
     "fringe-helper",
@@ -65446,8 +65553,8 @@
     "indicators",
     "ov"
    ],
-   "commit": "1b2dfa899409f4af2896fce6b9acbe98072abd59",
-   "sha256": "1xxmvdgqfj3lv33vn4pw3rdrxjmqypf09hh5w1jr69xbyl2ahzzp"
+   "commit": "7561700e37543bc7622e41d81d5b6dd038a8efe0",
+   "sha256": "0amx49lpbdxmm844b8xlc9x3x848pdq3az41b0l7qkyvsschxajl"
   },
   "stable": {
    "version": [
@@ -67400,26 +67507,26 @@
   "repo": "ROCKTAKEY/lsp-latex",
   "unstable": {
    "version": [
-    20210815,
-    1426
+    20221001,
+    1150
    ],
    "deps": [
     "lsp-mode"
    ],
-   "commit": "d1da34e21d88e507dc1abc75ec457c9cd30165db",
-   "sha256": "0saghy3j54gyknx5qljwrpkf8ibbdwjqwljfnqqn6yxq1kmfmdik"
+   "commit": "94c4536579c18e17e87f2441810968a153c3bea1",
+   "sha256": "1myzjgx2hq70aa9vb0vmgh2jdd25c5b7x580ccb9c0p40rzjjpbr"
   },
   "stable": {
    "version": [
-    2,
+    3,
     0,
     0
    ],
    "deps": [
     "lsp-mode"
    ],
-   "commit": "1c60c2d331baf778bd8a3ac9d5688516398ae323",
-   "sha256": "1nm03yn02ja867d9ba3n980v86kcd5varzng1lhzv7fr7akv5j13"
+   "commit": "94c4536579c18e17e87f2441810968a153c3bea1",
+   "sha256": "1myzjgx2hq70aa9vb0vmgh2jdd25c5b7x580ccb9c0p40rzjjpbr"
   }
  },
  {
@@ -67506,8 +67613,8 @@
   "repo": "emacs-lsp/lsp-mode",
   "unstable": {
    "version": [
-    20220922,
-    1911
+    20221001,
+    846
    ],
    "deps": [
     "dash",
@@ -67517,8 +67624,8 @@
     "markdown-mode",
     "spinner"
    ],
-   "commit": "447032e53c8bfb56dbd00f2b51355544e87ed180",
-   "sha256": "0r26ibqbr4xyfcckkzpwlc42xyhfcdw9clgl45l889pjzdv1rmdx"
+   "commit": "a5bb8deaa1bfa03ee94b563cd1b030676931a7df",
+   "sha256": "1rcqjk6fj0a7plnlb41ci26041r6w3lfkb2ifwb5fgdfg5r7cqiz"
   },
   "stable": {
    "version": [
@@ -68413,11 +68520,11 @@
   "repo": "roadrunner1776/magik",
   "unstable": {
    "version": [
-    20220920,
-    1237
+    20220926,
+    1228
    ],
-   "commit": "2f86d2f456029c3ed9d8e5cd0ed2f3dd8cb3b862",
-   "sha256": "0zg8y62zi59v0p6hi9zq9ajc90q7qz439l7aaqr9rjwbmj91m5bk"
+   "commit": "0ae427be02275054ec08cd6fc5259f38473120b3",
+   "sha256": "068wylr06qq2mgpn786lb2jb4cfp28h8aqiqzdhnq1sdcrqmxb1c"
   },
   "stable": {
    "version": [
@@ -68437,8 +68544,8 @@
   "repo": "magit/magit",
   "unstable": {
    "version": [
-    20220919,
-    1308
+    20220926,
+    56
    ],
    "deps": [
     "compat",
@@ -68448,8 +68555,8 @@
     "transient",
     "with-editor"
    ],
-   "commit": "4ee691cd90a4975b31ba4f3f6fc3ae69a0b0eb62",
-   "sha256": "0384yy53nfs91sqnhvb9gb9j265dszzz4c0g414f5cf0pj0jar5f"
+   "commit": "ada7b21fcc90004d7ac1c5a42c0750e12c2a5ef8",
+   "sha256": "1nl5axpxv5srxyihkzsi1sqnb5r09fah9ppvsiw1ihgc6fh7a460"
   },
   "stable": {
    "version": [
@@ -68476,15 +68583,15 @@
   "repo": "magit/magit-annex",
   "unstable": {
    "version": [
-    20220302,
-    1725
+    20220926,
+    300
    ],
    "deps": [
     "cl-lib",
     "magit"
    ],
-   "commit": "efe484644666c6b7c544b0fb7b87e30703fa9425",
-   "sha256": "1n2q9px8b3s3732a6yiz9gvfxbya7sa2qnxidzcn4gdp867l103c"
+   "commit": "0b3787d2c2ed0603467be8152847b7539c8a955c",
+   "sha256": "04g1bgzbxzm2g44rv89m3rcx2h89f06sj3m88his4m0l3rwgzkf7"
   },
   "stable": {
    "version": [
@@ -68959,15 +69066,15 @@
   "repo": "magit/magit",
   "unstable": {
    "version": [
-    20220901,
-    331
+    20220929,
+    1014
    ],
    "deps": [
     "compat",
     "dash"
    ],
-   "commit": "248d8103f83db841adf3d92b358ae42b81df41dc",
-   "sha256": "1yxhdf1mry0axln0fp3gvrxsqn7ls76jxa4559snwcfzfxxf2gy3"
+   "commit": "cfe5a1260bf19191adab837e90acc1004529a0c9",
+   "sha256": "04lfwy494bv1acmr9jhr4w46jrpi4hyjmg5wjsxf547vx666q6vd"
   },
   "stable": {
    "version": [
@@ -69389,22 +69496,22 @@
  },
  {
   "ename": "makefile-executor",
-  "commit": "08f8b4d680e4907dbd8ea46a75d98aa0e93c2bb9",
-  "sha256": "0889rq2a7ks2ynyq91xsa2kpzgd72kzbjxx0b34w8faknpj3b6hi",
+  "commit": "f1cd87e10ef298dd8db2361d81211bf5d732cde1",
+  "sha256": "1rgldb38nni217g1xvxbpj6xs9l079f9wfii1v71fccqra3r0mny",
   "fetcher": "github",
-  "repo": "thiderman/makefile-executor.el",
+  "repo": "Olivia5k/makefile-executor.el",
   "unstable": {
    "version": [
-    20220919,
-    802
+    20220928,
+    936
    ],
    "deps": [
     "dash",
     "f",
     "s"
    ],
-   "commit": "b304f4b5cc5d33eedf76ff0fdae839d1a00ed2a5",
-   "sha256": "1axamja9a3h7x2bwsiqgxdf7rrv5n0jhi8cirblag9ipg1ba7j75"
+   "commit": "170d14d834a0d163cd618d642d4580ff75b014be",
+   "sha256": "1g9mzic9k27fhpzcfpvlirgks2ip13z4xn8bfqabmp0xgq41ga5j"
   }
  },
  {
@@ -70892,11 +70999,11 @@
   "repo": "meow-edit/meow",
   "unstable": {
    "version": [
-    20220920,
-    45
+    20220930,
+    15
    ],
-   "commit": "c3f291ad289769fc9a3b2745a5e9969af6322d0c",
-   "sha256": "0059jwhdxl4pi90c8rsxidy4ya5ixcxly1iblbbbk58rwfy28ck4"
+   "commit": "dae2baa8228ee0a5cb37c6707057160c57bfe5f2",
+   "sha256": "08zpgaihsza69n6wnx4va3qjnh0bica477xshf7klyp6w13akr3k"
   },
   "stable": {
    "version": [
@@ -72491,11 +72598,11 @@
   "repo": "protesilaos/modus-themes",
   "unstable": {
    "version": [
-    20220921,
-    1323
+    20221001,
+    752
    ],
-   "commit": "ee35a9af344d2b2920589ec4d66e9cb513bdfb80",
-   "sha256": "0k7syi00vk2gds2gj6q9c4dh5msnn21bqgqn5vz3sxffpaw4say0"
+   "commit": "ad5cb41daf57456dc28d54b07f9a1dcb2c55cbd4",
+   "sha256": "19b49lg598qz50976i09scz15bz5njk8bnd51c7cb4cyknh1c87z"
   },
   "stable": {
    "version": [
@@ -72989,8 +73096,8 @@
   "repo": "themkat/mos-mode",
   "unstable": {
    "version": [
-    20220828,
-    847
+    20220927,
+    1845
    ],
    "deps": [
     "dap-mode",
@@ -72998,8 +73105,8 @@
     "ht",
     "lsp-mode"
    ],
-   "commit": "1e688e76f1600095b8b55ea8006489a3db9c421d",
-   "sha256": "0jb9nmp01dsjc1djksgia09vy52yqk38i59wglaqqcv60150kfaj"
+   "commit": "3f82f1de4f951096424e0da14ea4e4a40a82059d",
+   "sha256": "1i9xcmnvnz1vxhi4c9hkfnyniabyah0pwd3r64lgxr5yv04wzsyp"
   }
  },
  {
@@ -80335,6 +80442,24 @@
   }
  },
  {
+  "ename": "org-custom-cookies",
+  "commit": "44e1c0107084b9ac41e7459a78c0ef03aa34a05a",
+  "sha256": "0gxw7rp4n9psfd657hnlggnllb4cp9d71n7mviknblifj065ynfz",
+  "fetcher": "github",
+  "repo": "gsingh93/org-custom-cookies",
+  "unstable": {
+   "version": [
+    20220928,
+    114
+   ],
+   "deps": [
+    "org"
+   ],
+   "commit": "e57e0de5b8200224bf5d44b62481c542986f2f13",
+   "sha256": "1r3m7nvx10yzxsasld3h59psml4r7kmz2wn79n5xkppkpb0dbymn"
+  }
+ },
+ {
   "ename": "org-d20",
   "commit": "98bf91038196dfb59c491c9ed96c6b6a0cb311a9",
   "sha256": "158n900ifb1mfckd0gjmb9gpzibh8a2x56flbn2r035gcdbb7wc5",
@@ -82608,27 +82733,28 @@
   "repo": "akirak/org-reverse-datetree",
   "unstable": {
    "version": [
-    20220831,
-    1033
+    20220929,
+    1630
    ],
    "deps": [
     "dash",
     "org"
    ],
-   "commit": "b25ec9f8671c399807b6988b215e5dfc7c95a539",
-   "sha256": "1rjzsgy42mjjqd4a4f2jp73hf9jf8k324m3vspv2a4nrf5497p4i"
+   "commit": "e4e13cc5e240f9b2717295f6df536d29a8ead108",
+   "sha256": "0l05bn79dp27zk5xkcyk8qj6rwl7s1z02ncbzxw8qq10fs4081rm"
   },
   "stable": {
    "version": [
     0,
-    4
+    4,
+    1
    ],
    "deps": [
     "dash",
     "org"
    ],
-   "commit": "9b14ffbbdf0c08f3ea15fd4825522f5cd856d9a7",
-   "sha256": "0v566plqyl82hjd26l38x6vxbw8l6ib9b5v9i0zggkqrahv1x91p"
+   "commit": "f1fcb0c6391f8e38c94a18f7c2a19124196e4862",
+   "sha256": "07yv157ci814ndzwrynmys80w5iiq9k43qvv4hajn5x7c467vm97"
   }
  },
  {
@@ -82766,16 +82892,16 @@
   "repo": "org-roam/org-roam-ui",
   "unstable": {
    "version": [
-    20220803,
-    1024
+    20220927,
+    1434
    ],
    "deps": [
     "org-roam",
     "simple-httpd",
     "websocket"
    ],
-   "commit": "c75fc7506ee7f03840a9a93ed9336d7ed24551aa",
-   "sha256": "0mkcd2622np8s5qz2zvx7lch6dc586xqmn6914gi4ym7nvklf3zy"
+   "commit": "6bf6a5eecc1fa7ddbb1fcda85e08fe9c393f9298",
+   "sha256": "0y2rpk2ncl18ymvvvqzjvy1d3kxi94ack6qxb8zp2p5jdx2n0ciw"
   }
  },
  {
@@ -83333,15 +83459,15 @@
   "url": "https://repo.or.cz/org-tag-beautify.git",
   "unstable": {
    "version": [
-    20220912,
-    430
+    20220930,
+    948
    ],
    "deps": [
     "all-the-icons",
     "org-pretty-tags"
    ],
-   "commit": "bfe7f054109f9f0e6fedbf5c9240fa96ebdde5fd",
-   "sha256": "0i9r0623r6wwb8c0r5ph97n2iy166cmfcd6mmkmw6hpiyg19rx3x"
+   "commit": "25ceccde36cbb3bbed55da939348c47f91670455",
+   "sha256": "04j8c8j0d4lgn2pd2x21q79x3gdwsnzw57l45n5r8arqpdmmjbgz"
   }
  },
  {
@@ -83795,11 +83921,11 @@
   "repo": "nullman/emacs-org-visibility",
   "unstable": {
    "version": [
-    20220710,
-    1747
+    20220929,
+    1407
    ],
-   "commit": "24aee13a956bc1cff72f8b04f47e7d9ec01bb3b3",
-   "sha256": "1b7afdiagnf9biw0px7qc6ayjbbhy5z2gwl7g1whb3h5hvrri4j5"
+   "commit": "71d57ca126ccb5441b87aa052903fa6ad59b62f3",
+   "sha256": "1xl9v42isszx6svdnsnlfs5ksczyzwh14bzh5szkw041gfmy9k0r"
   },
   "stable": {
    "version": [
@@ -84409,11 +84535,11 @@
   "repo": "tbanel/orgaggregate",
   "unstable": {
    "version": [
-    20220726,
-    1241
+    20220928,
+    1944
    ],
-   "commit": "815c9f6aa89354a5720759616bcb1ff7ec52b21c",
-   "sha256": "19zzm7anr1f8dj53xikj4rdrj87bvc7f79hw6ig8zmyd7i490msy"
+   "commit": "068973339af3714ea015501f0fcc35014f255c1a",
+   "sha256": "03h0g2pr1yxbvvp7bj0k00p16dp3g5h4jgqjp28d4pllcpfwspmy"
   }
  },
  {
@@ -84439,14 +84565,14 @@
   "repo": "tbanel/orgtbljoin",
   "unstable": {
    "version": [
-    20220726,
-    1235
+    20220928,
+    1946
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "4b09436de15545ce73dd40e938176a98254109f8",
-   "sha256": "0k7z3d24k4nqz13xj0a7l79idar3kdl022r4jm3f9hjkxlddsbfk"
+   "commit": "8ce207b7100dc9cde071099b56cebb87924aaafd",
+   "sha256": "07mp1kgp9jkajs1lwwzl051gaygi8wqmnkp52pddw4xfcni9i6va"
   }
  },
  {
@@ -88477,17 +88603,25 @@
  },
  {
   "ename": "pg",
-  "commit": "5c4d1bb21948da2b283a3a9d89d9e3aed11afa13",
-  "sha256": "0n0187ndvwza1nis9a12h584qdqkwqfzhdw21kz5d1i6c43g7gji",
+  "commit": "a84e158f6ad6258c2e499cd7a7ca3c2006203b0d",
+  "sha256": "1738lkqpl9afp9ivq9nnz77j14vbvx7n7yv1xn5b1fk3hfj60v5c",
   "fetcher": "github",
-  "repo": "cbbrowne/pg.el",
+  "repo": "emarsden/pg-el",
   "unstable": {
    "version": [
-    20130731,
-    2142
+    20221001,
+    1320
+   ],
+   "commit": "99085cd115b705e42e574b13dc168b901b767bf3",
+   "sha256": "09l2zzp0r0pwl0kak9z6kn700vm4mr99acn2g2dgn9c3pl0syndj"
+  },
+  "stable": {
+   "version": [
+    0,
+    16
    ],
-   "commit": "4f6516ec3946d95dcef49abb6703cc89ecb5183d",
-   "sha256": "1zh7v4nnpzvbi8yj1ynlqlawk5bmlxi6s80b5f2y7hkdqb5q26k0"
+   "commit": "11f27360086f27936401e1f4b196f73dbd11d880",
+   "sha256": "1jdnslpgdm16klaga02p33g7c8bjzg164kxz3jd7gs5v9gqa6ppz"
   }
  },
  {
@@ -90973,23 +91107,20 @@
   "repo": "auto-complete/popup-el",
   "unstable": {
    "version": [
-    20220910,
-    1225
+    20220927,
+    1610
    ],
-   "commit": "66b840b6ded808974225501d2e672da7363579a6",
-   "sha256": "0alrzskhbi1mr3d33gq6ym546yfj7lsfai8xasxnbawb6w8akc4w"
+   "commit": "20ce6cbd2f06423be35b3b700c698f0e109e880c",
+   "sha256": "13ww7hld5pa32myj9krr6prmc99s7hnpsw8mw9krpxffykkblj2f"
   },
   "stable": {
    "version": [
     0,
     5,
-    8
-   ],
-   "deps": [
-    "cl-lib"
+    9
    ],
-   "commit": "9d104d4bbbcb37bbc9d9ce762e74d41174683f86",
-   "sha256": "0qrsz4z9q2bfq9xv4n94mvyslm232v2ql9r1fjycx7rnmpqggiwl"
+   "commit": "20ce6cbd2f06423be35b3b700c698f0e109e880c",
+   "sha256": "13ww7hld5pa32myj9krr6prmc99s7hnpsw8mw9krpxffykkblj2f"
   }
  },
  {
@@ -91581,11 +91712,11 @@
   "repo": "radian-software/prescient.el",
   "unstable": {
    "version": [
-    20220911,
-    138
+    20221001,
+    127
    ],
-   "commit": "928cc72ec3dca8e9a60d356b9b8ce896ec5ff621",
-   "sha256": "1hyn000z6xy5cb2k7h8xairxvhlhk2pcc1rqabwg76jlh8qbr24w"
+   "commit": "a86b71431002f7c7be6ea86f6f2694d206564b13",
+   "sha256": "1hxfilsd8bia4zn2gzsfzpll39bb980z4j76wqh4ry69nx84w2gf"
   },
   "stable": {
    "version": [
@@ -91933,11 +92064,11 @@
   "repo": "masukomi/private-comments-mode",
   "unstable": {
    "version": [
-    20220330,
-    1316
+    20220929,
+    1807
    ],
-   "commit": "57eb1ba3812e44344b7d5336c3a3ad14a28e4f9e",
-   "sha256": "0m5qksmzbjwzv10n7hb3v8sa6zab4kp2w7ayv2g7fc94cm1aljz2"
+   "commit": "b32b862e42e1f5cf26b6ca4cebea69b3f4e1aeab",
+   "sha256": "0q79dh1z9hgcln2maaw514dxqk1nw16wdqpw6vg2y6kz535xwmfn"
   },
   "stable": {
    "version": [
@@ -92751,11 +92882,11 @@
   "repo": "ProofGeneral/PG",
   "unstable": {
    "version": [
-    20220803,
-    1702
+    20220930,
+    1309
    ],
-   "commit": "b5e3589ac84698eb94eb005bd17cd35633788127",
-   "sha256": "12iscqdngyc6ap8xsxc44mfwsbzg93id2l4fc4y133brdcndzqal"
+   "commit": "ef18ee4d6ffa160fe563307561f2cad12e9478b5",
+   "sha256": "12sy38s3ys1jyvbfrbq9xwhdvvdmhcj3bymnqfvgqlhi7p3frrp8"
   },
   "stable": {
    "version": [
@@ -92864,10 +92995,10 @@
   "stable": {
    "version": [
     21,
-    6
+    7
    ],
-   "commit": "24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb",
-   "sha256": "0qr1158s97p7xdhjpbmd7ylqdzr2r3n5gn6xl4h948fyxzc9vsg8"
+   "commit": "54489e95e01882407f356f83c9074415e561db00",
+   "sha256": "0yhjgmgzj0awwsp6g2hsvwx86v2ns8pfcvk2wdq6kdyv6dngh7ig"
   }
  },
  {
@@ -93788,28 +93919,28 @@
   "repo": "tumashu/pyim",
   "unstable": {
    "version": [
-    20220919,
-    421
+    20220927,
+    803
    ],
    "deps": [
     "async",
     "xr"
    ],
-   "commit": "d1b28087e261814de5b3200629b023c403cb93d4",
-   "sha256": "1izcw1gqh8j497qjm7zxijk7arlakicl8g5jadjbamxybcha1mlp"
+   "commit": "1129a07aa45c71c8d6712b73f089e7addbce53db",
+   "sha256": "180bkdl5zbsxi5q0fxr4p6676iblky9cd1qq9cxssbyzjpj1qpgq"
   },
   "stable": {
    "version": [
     5,
     2,
-    4
+    5
    ],
    "deps": [
     "async",
     "xr"
    ],
-   "commit": "6b4329a25f0ec61f8fd404d926315064b966fa0b",
-   "sha256": "19q416q69lzf2w9yjv3fy7dnzrza3z6caqrrmnfh8q8lv22hn8ll"
+   "commit": "2d9e9c5b9703dc4f3a400ab353ee99556c892c00",
+   "sha256": "0ixvwfdk6kl14gqaz6988iz36fdjk8gd94aiqkaf7y2wlm4gjs11"
   }
  },
  {
@@ -94676,11 +94807,11 @@
   "repo": "quelpa/quelpa",
   "unstable": {
    "version": [
-    20220730,
-    230
+    20220928,
+    919
    ],
-   "commit": "59bd9bf760f2fdf70c81c220f2875dbee0c29d5c",
-   "sha256": "1lv8q6rs61qijrfj40fwy89gyhf9dgbp44z3p6clbhlq9kqf55jw"
+   "commit": "37962e3b264795b7a3593109c7f14dbf57d9b77e",
+   "sha256": "1xdqr73y8lpxhmgp1yrap3bw5pf8lhaw2v3jib1pka6aj40vi2di"
   },
   "stable": {
    "version": [
@@ -98902,8 +99033,8 @@
   "repo": "brotzeit/rustic",
   "unstable": {
    "version": [
-    20220923,
-    1411
+    20220928,
+    1157
    ],
    "deps": [
     "dash",
@@ -98917,8 +99048,8 @@
     "spinner",
     "xterm-color"
    ],
-   "commit": "17d49c734276fe112bf051492555c3c2ae4f2fea",
-   "sha256": "0n0hjj2inyl0kh0xkrmwrj5zfx85awba2aamrwz19irw17k1xyzz"
+   "commit": "0eca6e6f0b5b3b02233a2d03c797be2f9a983c19",
+   "sha256": "189dxc9p6dgiqgs3s0855lw4i2vpl2c9rhyyjanyih64mi378rm1"
   },
   "stable": {
    "version": [
@@ -100920,11 +101051,11 @@
   "repo": "midnightSuyama/shader-mode",
   "unstable": {
    "version": [
-    20180518,
-    1157
+    20220930,
+    1052
    ],
-   "commit": "d7dc8d0d6fe8914e8b6d5cf2081ad61e6952359c",
-   "sha256": "13scj6w3vsdcgmq7zak3pflqpq295wgzsng72rcafgkkr7r12rar"
+   "commit": "fe5a1982ba69e4a98b834141a46a1908f132df15",
+   "sha256": "1vch21zxhh4bwdm48060cixd479bs31i7hi5kxi7q8wqbic9gdzm"
   }
  },
  {
@@ -105700,11 +105831,11 @@
   "repo": "srfi-explorations/emacs-srfi",
   "unstable": {
    "version": [
-    20220922,
-    1947
+    20220925,
+    2308
    ],
-   "commit": "72bd263bc3171c5a2123441a4ed89ef9dbbfca02",
-   "sha256": "0v2v9fvwqgpxy9dnb2ymfga28rvxsxd5miby953qyjcbgrg7md47"
+   "commit": "20a1c9b36e99cbfbf70598e2cfaccd960e74c1ce",
+   "sha256": "1kz95vb6jbpkzs11mx623sj8xdf8n007vr9ix6wqvdsaqy158qkl"
   },
   "stable": {
    "version": [
@@ -108224,14 +108355,14 @@
   "repo": "mclear-tools/tabspaces",
   "unstable": {
    "version": [
-    20220614,
-    2113
+    20220924,
+    1805
    ],
    "deps": [
     "project"
    ],
-   "commit": "6c3314167bf15a99247acb4eb60827faea36f4dd",
-   "sha256": "1d9m8aji2nd38w1a39whbqsg1kpfjxkmi1xn6pyfkng5bzalfq40"
+   "commit": "93a2b5650e4a75bc844251b1807ec0aa48ea27e9",
+   "sha256": "1rqy6wxbriz1xxsk5mjifsczvi1dpqn3adhj677r4b9lbrl4jkqk"
   }
  },
  {
@@ -108416,10 +108547,10 @@
   "unstable": {
    "version": [
     20220924,
-    1232
+    1640
    ],
-   "commit": "566dd054ff70d9bfe26d6db448fcf4cc9c0623f1",
-   "sha256": "14qnyb8vjxlw0qz8bkbpylbjw29pjwkj9k50qi6lmggmlw8x448f"
+   "commit": "d441ae6b392597f0e01bc79292845c880d468b60",
+   "sha256": "123h7wz2ql6cl6s0n6n18g4ssa0p1a90svx7zh9627w45q68qlbr"
   },
   "stable": {
    "version": [
@@ -109777,11 +109908,11 @@
    "version": [
     2022,
     9,
-    19,
+    26,
     0
    ],
-   "commit": "2f0283d9c28cb792e846cbb7718bfa073943869d",
-   "sha256": "1dv6c23656mfb9advmipy0dlh1z6qql9iv2y3m7k8fkchigc9pmw"
+   "commit": "167ba9f102920b1ed9b7c4b666b370935a4151dd",
+   "sha256": "1syxzqkr32r9ybdjiv545k5lg927z3qw61nprgs1s5im3fd4yh54"
   }
  },
  {
@@ -110489,11 +110620,11 @@
   "repo": "tok/tok-theme",
   "unstable": {
    "version": [
-    20220924,
-    1242
+    20220928,
+    1823
    ],
-   "commit": "99b3cbd44470c2c345f3516a9d58a4d1c847a12a",
-   "sha256": "1d12qf6gv3i6wjmqr4vpcq08b112jnwikll4ra5w86l9dbfk12wi"
+   "commit": "eb67fd9ba96a29e00d6c62261721ddf7c156e26b",
+   "sha256": "0m9hczl0jdwr7i3k4ba1rx0k4lvbjvjgg0fdvpax8p8lc1yav4cy"
   }
  },
  {
@@ -111412,26 +111543,26 @@
   "repo": "emacs-tree-sitter/tree-sitter-langs",
   "unstable": {
    "version": [
-    20220915,
-    441
+    20220925,
+    1020
    ],
    "deps": [
     "tree-sitter"
    ],
-   "commit": "6d18db5e68d106b21c5c6a746bd262a8e8782a2c",
-   "sha256": "0dcahb895wa66p7jzps7fnaaxjca3rg31hq8wrjc9f9fglz5ipvw"
+   "commit": "00738cb725785cbd42978f944f8661c33b5d3fe5",
+   "sha256": "1nr1k92c0k7q0x7mgm0x23jyysc09mf967bmhyw6m4pdy1myc38x"
   },
   "stable": {
    "version": [
     0,
     12,
-    3
+    4
    ],
    "deps": [
     "tree-sitter"
    ],
-   "commit": "6d18db5e68d106b21c5c6a746bd262a8e8782a2c",
-   "sha256": "0dcahb895wa66p7jzps7fnaaxjca3rg31hq8wrjc9f9fglz5ipvw"
+   "commit": "00738cb725785cbd42978f944f8661c33b5d3fe5",
+   "sha256": "1nr1k92c0k7q0x7mgm0x23jyysc09mf967bmhyw6m4pdy1myc38x"
   }
  },
  {
@@ -111478,8 +111609,8 @@
   "repo": "Alexander-Miller/treemacs",
   "unstable": {
    "version": [
-    20220917,
-    1219
+    20220926,
+    1903
    ],
    "deps": [
     "ace-window",
@@ -111491,8 +111622,8 @@
     "pfuture",
     "s"
    ],
-   "commit": "e4bb236bd5cd7c077c2207b33d2699485c405536",
-   "sha256": "02g8w3xpkil724mwpk67x31gv16ahhj6slvcjbis3c16ni9m14ck"
+   "commit": "20765acd38e00faa46a72b9a2cf63a7b451c6850",
+   "sha256": "04wglc8lkw06hq9y9lsd3p5pwsc70cxx047da9v9hhdm2milggkn"
   },
   "stable": {
    "version": [
@@ -111797,11 +111928,11 @@
   "repo": "tilmanrassy/emacs-treeview",
   "unstable": {
    "version": [
-    20220912,
-    2346
+    20220928,
+    43
    ],
-   "commit": "b68f77bf102b289e7b0e97f767bb7ffff9a5835b",
-   "sha256": "11c9m4x4nrh6vxma59vdm24vkipk38n17mcnva3ymn49r3597fwh"
+   "commit": "d9c10feddf3b959e7b33ce83103e1f0a61162723",
+   "sha256": "14s0b6zbapsvgyxki59lglwb3s8wjsjwkgj5r66af9nj2bgz5ms9"
   }
  },
  {
@@ -112095,26 +112226,26 @@
   "repo": "ocaml/tuareg",
   "unstable": {
    "version": [
-    20220719,
-    148
+    20220929,
+    1327
    ],
    "deps": [
     "caml"
    ],
-   "commit": "ad8a688b7e2aeeafc320a845f86cdd9aa7c971ce",
-   "sha256": "0vma9ylyaxrl21a3g4vlzd9iqpwallchaar3p7v0dyp5cf8xxvfw"
+   "commit": "53ce2fdfdd372d52f3a6547c33b687e7d403357a",
+   "sha256": "1pxw5cy1zxw10vqk0mgfjvi26sq50naf22irdv701dwnqdp6j5yy"
   },
   "stable": {
    "version": [
-    2,
-    2,
-    0
+    3,
+    0,
+    1
    ],
    "deps": [
     "caml"
    ],
-   "commit": "5796f08757a6d172d628834a40ba6379f318edf5",
-   "sha256": "06zxnn85fk5087iq0zxc5l5n9fz8r0367wylmynbfhc9711vccy6"
+   "commit": "4d94293cc5a7bba6cd043e29968719ce597d65f5",
+   "sha256": "1p3xpk78i8ywgdmc59w05wjjy9dg6gm5gicm08szmrlnx08v2ihm"
   }
  },
  {
@@ -113773,11 +113904,11 @@
   "repo": "jcs-elpa/use-ttf",
   "unstable": {
    "version": [
-    20220704,
-    700
+    20220930,
+    1951
    ],
-   "commit": "0b1e16d4da63a53011bb46efdb9377293d3b5239",
-   "sha256": "1dg4csd1kd6kc34d67rwvg1f0gfhipcbzawhc9qbpnpip99dj4mz"
+   "commit": "105577c6290934119978e23b168f0b97c9d586ba",
+   "sha256": "143iy63rlibxlyrzxj2qfh3vjwsdgzypimazs7vd6x7l4p45xzrj"
   },
   "stable": {
    "version": [
@@ -118273,11 +118404,11 @@
   "repo": "jobbflykt/x509-mode",
   "unstable": {
    "version": [
-    20220905,
-    1652
+    20220926,
+    944
    ],
-   "commit": "def4acd761ee959b25599a8149488f1ab5789381",
-   "sha256": "0lnl9pns1qwbc2qwvsgcxi7vd9w8sp24d2x6v8v1z0m4qi92a3mm"
+   "commit": "933b02832ca2e098f865d2080b9feb058afa008b",
+   "sha256": "12bc8jzay4l7wmw177l7x3h5yaf8gg3vzisbcvbfcn0x076765ll"
   }
  },
  {
@@ -119440,11 +119571,11 @@
   "url": "https://www.yatex.org/hgrepos/yatex",
   "unstable": {
    "version": [
-    20220924,
-    325
+    20220929,
+    123
    ],
-   "commit": "86ceef677ca2804f00cb966b538a27928a28fe77",
-   "sha256": "1n6y4gyxshmrx5600wmh19v500birj2xnaz609c3x14nlxwnfb33"
+   "commit": "923a6c0183be469fb4f94b1258527f2ca1cc5b79",
+   "sha256": "0f5xgzid2bl0qy803vzy1dn8hiq022rbdq2lnj4zxjcvz9jd5cm7"
   },
   "stable": {
    "version": [
@@ -119803,11 +119934,11 @@
   "repo": "taquangtrung/emacs-yul-mode",
   "unstable": {
    "version": [
-    20220911,
-    1651
+    20220927,
+    338
    ],
-   "commit": "6d5a02ee18145d223a5b0bc46359f1938358b8d4",
-   "sha256": "064j7qlallg3wl5gxz94bg17v8qsmdbbv2f1l76h4zw5v4x14y0b"
+   "commit": "56cba05549873fcf1b66e304969011dc1a1ad228",
+   "sha256": "1wkmi6xi81z3ff872lpz1cpqbw2sj2844kwzhqhvir4w2lqr4ab5"
   }
  },
  {
@@ -119890,11 +120021,11 @@
   "repo": "bbatsov/zenburn-emacs",
   "unstable": {
    "version": [
-    20220823,
-    442
+    20220927,
+    631
    ],
-   "commit": "2db3a34f50ec4dd6e2cae92bab639ccfc742b3cc",
-   "sha256": "1iqshfkf4xchymmf340bdh6vl555z50l2wd3r3g063gf03vxsr5a"
+   "commit": "4788de0bcfecf8faec69251decb9924492d008f3",
+   "sha256": "0x52xmv6rhjss480sddj8hrsibmq4i06kra9m58hhv9pwyfvijdw"
   },
   "stable": {
    "version": [
diff --git a/pkgs/applications/editors/hecate/default.nix b/pkgs/applications/editors/hecate/default.nix
index 29a3e1ff1caa3..dd266c0babcac 100644
--- a/pkgs/applications/editors/hecate/default.nix
+++ b/pkgs/applications/editors/hecate/default.nix
@@ -1,19 +1,19 @@
-{ lib, buildGoPackage, fetchFromGitHub }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
-buildGoPackage rec {
-  version = "0.0.1";
+buildGoModule rec {
   pname = "hecate";
+  version = "unstable-2022-05-03";
 
   src = fetchFromGitHub {
-    owner  = "evanmiller";
-    repo   = "hecate";
-    rev    = "v${version}";
-    sha256 = "0ymirsd06z3qa9wi59k696mg8f4mhscw8gc5c5zkd0n3n8s0k0z8";
+    owner = "evanmiller";
+    repo = "hecate";
+    rev = "7637250f4b2c5b777418b35fa11276d11d5128b0";
+    sha256 = "sha256-8L0ukzPF7aECCeZfwZYKcJAJLpPgotkVJ+OSdwQUjhw=";
   };
 
-  goPackagePath = "hecate";
+  vendorSha256 = "sha256-eyMrTrNarNCB3w8EOeJBmCbVxpMZy25sQ19icVARU1M=";
 
-  goDeps = ./deps.nix;
+  ldflags = [ "-s" "-w" ];
 
   meta = with lib; {
     inherit (src.meta) homepage;
diff --git a/pkgs/applications/editors/hecate/deps.nix b/pkgs/applications/editors/hecate/deps.nix
deleted file mode 100644
index c9d94934a444a..0000000000000
--- a/pkgs/applications/editors/hecate/deps.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-[
-  {
-    goPackagePath = "github.com/nsf/termbox-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/nsf/termbox-go";
-      rev = "b6acae516ace002cb8105a89024544a1480655a5";
-      sha256 = "0zf95qdd5bif9rw03hqk87x7d905p373bvsj0bl4gi16spqjbdil";
-    };
-  }
-  {
-    goPackagePath = "github.com/edsrzf/mmap-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/edsrzf/mmap-go";
-      rev = "935e0e8a636ca4ba70b713f3e38a19e1b77739e8";
-      sha256 = "11a63wrjwfnchjhwqjp6yd5j0370ysppjgv31l5bmvvwps7whq9d";
-    };
-  }
-  {
-    goPackagePath = "github.com/mattn/go-runewidth";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mattn/go-runewidth";
-      rev = "737072b4e32b7a5018b4a7125da8d12de90e8045";
-      sha256 = "09ni8bmj6p2b774bdh6mfcxl03bh5sqk860z03xpb6hv6yfxqkjm";
-    };
-  }
-]
diff --git a/pkgs/applications/editors/kakoune/default.nix b/pkgs/applications/editors/kakoune/default.nix
index 9beab9fa4beaf..26788ddb06774 100644
--- a/pkgs/applications/editors/kakoune/default.nix
+++ b/pkgs/applications/editors/kakoune/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
     description = "A vim inspired text editor";
     license = licenses.publicDomain;
     mainProgram = "kak";
-    maintainers = with maintainers; [ vrthra ];
+    maintainers = with maintainers; [ vrthra srapenne ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/editors/leafpad/default.nix b/pkgs/applications/editors/leafpad/default.nix
index 2f53df97d325a..0376e3af6bfb7 100644
--- a/pkgs/applications/editors/leafpad/default.nix
+++ b/pkgs/applications/editors/leafpad/default.nix
@@ -8,8 +8,8 @@ stdenv.mkDerivation rec {
     sha256 = "0b0az2wvqgvam7w0ns1j8xp2llslm1rx6h7zcsy06a7j0yp257cm";
   };
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ intltool gtk2 ];
+  nativeBuildInputs = [ pkg-config intltool ];
+  buildInputs = [ gtk2 ];
 
   hardeningDisable = [ "format" ];
 
diff --git a/pkgs/applications/editors/neovim/neovide/default.nix b/pkgs/applications/editors/neovim/neovide/default.nix
index 77f0735ec989d..3d1aa9cdc57c7 100644
--- a/pkgs/applications/editors/neovim/neovide/default.nix
+++ b/pkgs/applications/editors/neovim/neovide/default.nix
@@ -27,6 +27,7 @@
 , ApplicationServices
 , AppKit
 , Carbon
+, removeReferencesTo
 }:
 rustPlatform.buildRustPackage rec {
   pname = "neovide";
@@ -80,6 +81,7 @@ rustPlatform.buildRustPackage rec {
     python2 # skia-bindings
     python3 # rust-xcb
     llvmPackages.clang # skia
+    removeReferencesTo
   ] ++ lib.optionals stdenv.isDarwin [ xcbuild ];
 
   # All tests passes but at the end cargo prints for unknown reason:
@@ -115,6 +117,10 @@ rustPlatform.buildRustPackage rec {
       xorg.libXi
     ] ++ lib.optionals enableWayland [ wayland ]);
   in ''
+      # library skia embeds the path to its sources
+      remove-references-to -t "$SKIA_SOURCE_DIR" \
+        $out/bin/neovide
+
       wrapProgram $out/bin/neovide \
         --prefix LD_LIBRARY_PATH : ${libPath}
     '';
@@ -128,6 +134,8 @@ rustPlatform.buildRustPackage rec {
     install -m444 -Dt $out/share/applications assets/neovide.desktop
   '';
 
+  disallowedReferences = [ SKIA_SOURCE_DIR ];
+
   meta = with lib; {
     description = "This is a simple graphical user interface for Neovim.";
     homepage = "https://github.com/Kethku/neovide";
diff --git a/pkgs/applications/editors/neovim/neovim-remote.nix b/pkgs/applications/editors/neovim/neovim-remote.nix
index b18811dd09805..6cfcec8f1f7b3 100644
--- a/pkgs/applications/editors/neovim/neovim-remote.nix
+++ b/pkgs/applications/editors/neovim/neovim-remote.nix
@@ -2,6 +2,7 @@
 , fetchFromGitHub
 , python3
 , neovim
+, fetchpatch
 }:
 
 with python3.pkgs; buildPythonApplication rec {
@@ -15,6 +16,14 @@ with python3.pkgs; buildPythonApplication rec {
     sha256 = "0lbz4w8hgxsw4k1pxafrl3rhydrvi5jc6vnsmkvnhh6l6rxlmvmq";
   };
 
+  patches = [
+    # Fix a compatibility issue with neovim 0.8.0
+    (fetchpatch {
+      url = "https://github.com/mhinz/neovim-remote/commit/56d2a4097f4b639a16902390d9bdd8d1350f948c.patch";
+      hash = "sha256-/PjE+9yfHtOUEp3xBaobzRM8Eo2wqOhnF1Es7SIdxvM=";
+    })
+  ];
+
   propagatedBuildInputs = [
     pynvim
     psutil
@@ -26,15 +35,12 @@ with python3.pkgs; buildPythonApplication rec {
     pytestCheckHook
   ];
 
-  disabledTests = [
-    # these tests get stuck and never return
-    "test_escape_filenames_properly"
-    "test_escape_single_quotes_in_filenames"
-    "test_escape_double_quotes_in_filenames"
-  ];
-
   doCheck = !stdenv.isDarwin;
 
+  preCheck = ''
+    export HOME="$(mktemp -d)"
+  '';
+
   meta = with lib; {
     description = "A tool that helps controlling nvim processes from a terminal";
     homepage = "https://github.com/mhinz/neovim-remote/";
diff --git a/pkgs/applications/editors/rehex/default.nix b/pkgs/applications/editors/rehex/default.nix
index 52134d15da823..6a67d6df743ca 100644
--- a/pkgs/applications/editors/rehex/default.nix
+++ b/pkgs/applications/editors/rehex/default.nix
@@ -3,41 +3,37 @@
 , fetchFromGitHub
 , pkg-config
 , which
+, zip
+, libicns
 , capstone
 , jansson
 , libunistring
-, lua5_3
 , wxGTK31
+, lua53Packages
+, perlPackages
 , Carbon
 , Cocoa
 , IOKit
-, libicns
-, wxmac
 }:
 
 stdenv.mkDerivation rec {
   pname = "rehex";
-  version = "0.4.1";
+  version = "0.5.3";
 
   src = fetchFromGitHub {
     owner = "solemnwarning";
     repo = pname;
     rev = version;
-    hash = "sha256-NuWWaYABQDaS9wkwmXkBJWHzLFJbUUCiePNQNo4yZrk=";
+    hash = "sha256-VBHNrOVIz7UM9tY1V7Ykwt4Cv0fY++8gXc2og4sLDk8=";
   };
 
-  postPatch = ''
-    # See https://github.com/solemnwarning/rehex/pull/148
-    substituteInPlace Makefile.osx \
-      --replace '$(filter-out %@2x.png,$(wildcard $(ICONSET)/*.png))' 'res/icon{16,32,128,256,512}.png'
-  '';
-
-  nativeBuildInputs = [ pkg-config which ]
+  nativeBuildInputs = [ pkg-config which zip ]
     ++ lib.optionals stdenv.isDarwin [ libicns ];
 
-  buildInputs = [ capstone jansson libunistring lua5_3 ]
-    ++ lib.optionals (!stdenv.isDarwin) [ wxGTK31 ]
-    ++ lib.optionals stdenv.isDarwin [ Carbon Cocoa IOKit wxmac ];
+  buildInputs = [ capstone jansson libunistring wxGTK31 ]
+    ++ (with lua53Packages; [ lua busted ])
+    ++ (with perlPackages; [ perl TemplateToolkit ])
+    ++ lib.optionals stdenv.isDarwin [ Carbon Cocoa IOKit ];
 
   makeFlags = [ "prefix=${placeholder "out"}" ]
     ++ lib.optionals stdenv.isDarwin [ "-f Makefile.osx" ];
@@ -53,7 +49,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/solemnwarning/rehex";
     changelog = "https://github.com/solemnwarning/rehex/raw/${version}/CHANGES.txt";
     license = licenses.gpl2Only;
-    maintainers = with maintainers; [ markus1189 ];
+    maintainers = with maintainers; [ markus1189 wegank ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/applications/editors/vim/plugins/generated.nix b/pkgs/applications/editors/vim/plugins/generated.nix
index d2fb08a807fc1..77dce00211f54 100644
--- a/pkgs/applications/editors/vim/plugins/generated.nix
+++ b/pkgs/applications/editors/vim/plugins/generated.nix
@@ -53,12 +53,12 @@ final: prev:
 
   Coqtail = buildVimPluginFrom2Nix {
     pname = "Coqtail";
-    version = "2022-09-16";
+    version = "2022-09-30";
     src = fetchFromGitHub {
       owner = "whonore";
       repo = "Coqtail";
-      rev = "4098ba53139d3e59efae1c9140180440d3df9174";
-      sha256 = "053a6b7xxz85bkh4v4s5kmjwvdlj26sksv5vyjmjk3anps9lc0dr";
+      rev = "98c99cc950f147a877d56a590d92b357c24086b9";
+      sha256 = "06q4riwy7gdmcrqjqnsgw98r382jwsk5qn1f43pg04cwdaksjy4k";
     };
     meta.homepage = "https://github.com/whonore/Coqtail/";
   };
@@ -161,12 +161,12 @@ final: prev:
 
   LeaderF = buildVimPluginFrom2Nix {
     pname = "LeaderF";
-    version = "2022-09-15";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "Yggdroot";
       repo = "LeaderF";
-      rev = "f090cb40eacdce71c406e466d02e3b41c03312c8";
-      sha256 = "0ma65874dffpj7sc3skczlxf7gmq1v2lqi5qwqv0hgx6idqdkf1c";
+      rev = "b7bf04eaeae846168efd86ef0136394a2d128b72";
+      sha256 = "00krndb2crrcvcp8vb60wqz75pjj3121335mykaqhhq0jhc67xw2";
     };
     meta.homepage = "https://github.com/Yggdroot/LeaderF/";
   };
@@ -281,12 +281,12 @@ final: prev:
 
   SchemaStore-nvim = buildVimPluginFrom2Nix {
     pname = "SchemaStore.nvim";
-    version = "2022-09-24";
+    version = "2022-10-06";
     src = fetchFromGitHub {
       owner = "b0o";
       repo = "SchemaStore.nvim";
-      rev = "687fc5aca8eef79278a01345f1a93dcc68453f29";
-      sha256 = "0mldl6zssdxnkxls4r9rbb94f9i5yi7bc0r99k34v4bq25j9ls55";
+      rev = "23bf2d69967491b1dc43f37c809f2711cc879fd2";
+      sha256 = "0zl8sf9sy2i3fp3wbpw9rvm5wjkak897i5yl699jfxxv0gal5sgv";
     };
     meta.homepage = "https://github.com/b0o/SchemaStore.nvim/";
   };
@@ -341,12 +341,12 @@ final: prev:
 
   SpaceVim = buildVimPluginFrom2Nix {
     pname = "SpaceVim";
-    version = "2022-09-25";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "SpaceVim";
       repo = "SpaceVim";
-      rev = "2adcaae6f53e0bc42445f14caa210e8d64368469";
-      sha256 = "039rfly4knc7d9n3wkvi4f7m4pwh4ifpci59gnbvqlyhr9x29mzs";
+      rev = "3bacbcd4ef84d24602799555465fed6d71fdd9b2";
+      sha256 = "1mhq6gz0maab2vvrajdcq689nr93sniw5iz75spr8vq9za9aazx0";
     };
     meta.homepage = "https://github.com/SpaceVim/SpaceVim/";
   };
@@ -437,12 +437,12 @@ final: prev:
 
   YouCompleteMe = buildVimPluginFrom2Nix {
     pname = "YouCompleteMe";
-    version = "2022-09-22";
+    version = "2022-10-06";
     src = fetchFromGitHub {
       owner = "ycm-core";
       repo = "YouCompleteMe";
-      rev = "cdd88b5e46109c01a69f3f9b10eae53811b4a65c";
-      sha256 = "0v7dg2s7igs11566kxd5qjl81fq4iw5i6xn9qrl23wg5mbksvwiy";
+      rev = "99ccab251fad7c8b235582b46752a0536d01b315";
+      sha256 = "1whjbplgqik4pdp3z1ly7z1qii6z615drqc3i09p4sahdb7cw2n6";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/ycm-core/YouCompleteMe/";
@@ -486,12 +486,12 @@ final: prev:
 
   aerial-nvim = buildVimPluginFrom2Nix {
     pname = "aerial.nvim";
-    version = "2022-09-25";
+    version = "2022-10-08";
     src = fetchFromGitHub {
       owner = "stevearc";
       repo = "aerial.nvim";
-      rev = "87099324fdf55e5219e852676769f3b5f0290d98";
-      sha256 = "039mh32k1vz3g7sdagavsir79wzxgp1y6747rgpgdrrf5jdf3crh";
+      rev = "bbdfc56c5a00f4f31936a057fed99807c0a52f0c";
+      sha256 = "04ma4nz47ld6a4x0d5pn7a70kx0a8p2ynyb2gg8mb1x09593q95m";
     };
     meta.homepage = "https://github.com/stevearc/aerial.nvim/";
   };
@@ -534,12 +534,12 @@ final: prev:
 
   ale = buildVimPluginFrom2Nix {
     pname = "ale";
-    version = "2022-09-25";
+    version = "2022-10-04";
     src = fetchFromGitHub {
       owner = "dense-analysis";
       repo = "ale";
-      rev = "78942df284a4a00c59a6edcc187684cdbc333fb9";
-      sha256 = "1i29zqi1xqar0i0a0y30jssl914a3mxvvvfki3k3c6gdhskf9in3";
+      rev = "f085227504076dff5224cbf10cb1bf83286188a9";
+      sha256 = "00n3vagkgy31r47a1ivy0zxm3a13z3d80l6ay7l49srh10rfh3c1";
     };
     meta.homepage = "https://github.com/dense-analysis/ale/";
   };
@@ -666,24 +666,24 @@ final: prev:
 
   asyncrun-vim = buildVimPluginFrom2Nix {
     pname = "asyncrun.vim";
-    version = "2022-09-23";
+    version = "2022-10-05";
     src = fetchFromGitHub {
       owner = "skywind3000";
       repo = "asyncrun.vim";
-      rev = "7ee75ae20c7d556f1febb6d1a5961e48766c9c0b";
-      sha256 = "1ikxarjknpba4mvd1bkyswvai9laca38biccn3py7x8lwvlvhp85";
+      rev = "8d92822df7fb5549bbc0cc65056e960341433cdf";
+      sha256 = "0af6fn9iym0kgldbla1h13dds8sd8pd441f20bpszfbmr4djfskh";
     };
     meta.homepage = "https://github.com/skywind3000/asyncrun.vim/";
   };
 
   asynctasks-vim = buildVimPluginFrom2Nix {
     pname = "asynctasks.vim";
-    version = "2022-08-23";
+    version = "2022-10-06";
     src = fetchFromGitHub {
       owner = "skywind3000";
       repo = "asynctasks.vim";
-      rev = "4b6abc813b67e743fee205da2f996f737df1ae20";
-      sha256 = "03vqz5yz76wymsrvbkyvnfl3453b4hba2h0ji9lyy3brxb6lf1bg";
+      rev = "32d2af43f196605f35aa78f38b16e9a8d158b010";
+      sha256 = "0ryq8qsrjzdyrapz040mvp9f3mzcflcw14nddp5fq95859n18n2k";
     };
     meta.homepage = "https://github.com/skywind3000/asynctasks.vim/";
   };
@@ -736,6 +736,18 @@ final: prev:
     meta.homepage = "https://github.com/jiangmiao/auto-pairs/";
   };
 
+  auto-save-nvim = buildVimPluginFrom2Nix {
+    pname = "auto-save.nvim";
+    version = "2022-08-06";
+    src = fetchFromGitHub {
+      owner = "pocco81";
+      repo = "auto-save.nvim";
+      rev = "2c7a2943340ee2a36c6a61db812418fca1f57866";
+      sha256 = "0zfy1pw39c0zf4mfd8kgl1hj9h1hcbsql32rp0wk0kf714hbxqli";
+    };
+    meta.homepage = "https://github.com/pocco81/auto-save.nvim/";
+  };
+
   auto-session = buildVimPluginFrom2Nix {
     pname = "auto-session";
     version = "2022-09-19";
@@ -786,12 +798,12 @@ final: prev:
 
   barbar-nvim = buildVimPluginFrom2Nix {
     pname = "barbar.nvim";
-    version = "2022-09-01";
+    version = "2022-10-03";
     src = fetchFromGitHub {
       owner = "romgrk";
       repo = "barbar.nvim";
-      rev = "c41ad6e3f68c2c9f6aa268c6232cdef885107303";
-      sha256 = "0mdimwsiclpjn2df75lc92ryyjyql4m1x0bvpl629z33hvhlcvs0";
+      rev = "61424a6211431a42458bc755b3e7e982e671c438";
+      sha256 = "1xg7wm3prq2vj0jg2knb96lc7mlh7l6fw6c23s0i9vqrbz4b8jr2";
     };
     meta.homepage = "https://github.com/romgrk/barbar.nvim/";
   };
@@ -894,12 +906,12 @@ final: prev:
 
   bufdelete-nvim = buildVimPluginFrom2Nix {
     pname = "bufdelete.nvim";
-    version = "2022-05-22";
+    version = "2022-10-07";
     src = fetchFromGitHub {
       owner = "famiu";
       repo = "bufdelete.nvim";
-      rev = "46255e4a76c4fb450a94885527f5e58a7d96983c";
-      sha256 = "1z6m9bavyx2ln2dik05fcaf6gq6jdrpcgrq5i1l1sy45h447a3hw";
+      rev = "e88dbe0ba5829119d8edb5fc69d3c8553e324a93";
+      sha256 = "0qja5jvx8047v5qbch6flcg8fq00369ffcivrv2gkqkmggg4dvb6";
     };
     meta.homepage = "https://github.com/famiu/bufdelete.nvim/";
   };
@@ -918,24 +930,24 @@ final: prev:
 
   bufferline-nvim = buildVimPluginFrom2Nix {
     pname = "bufferline.nvim";
-    version = "2022-09-19";
+    version = "2022-10-04";
     src = fetchFromGitHub {
       owner = "akinsho";
       repo = "bufferline.nvim";
-      rev = "83bf4dc7bff642e145c8b4547aa596803a8b4dc4";
-      sha256 = "1wlwm75c1ngk4dkzynl7p5av6ydxagcmx82bg7l9037h2ijvqhv2";
+      rev = "0606ceeea77e85428ba06e21c9121e635992ccc7";
+      sha256 = "099ad6vxlmplzvzrykl2rnbamgacriasa2pab8fv8q9hmdd0nbc2";
     };
     meta.homepage = "https://github.com/akinsho/bufferline.nvim/";
   };
 
   bullets-vim = buildVimPluginFrom2Nix {
     pname = "bullets.vim";
-    version = "2022-09-10";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "dkarter";
       repo = "bullets.vim";
-      rev = "d3a75d60ffe74c91b2a1225327bbeff540fdab11";
-      sha256 = "18l2nszcpm55x7q1ardp790sajairs1a2y8a9z63cck9bkigmj3w";
+      rev = "746f92ae05cdcc988857d8e76418326f07af9494";
+      sha256 = "0zdfri31h1iv3jjw2yqkqqfd07cdk7ymyrl5n03khwh192dawd5r";
     };
     meta.homepage = "https://github.com/dkarter/bullets.vim/";
   };
@@ -978,12 +990,12 @@ final: prev:
 
   ccc-nvim = buildVimPluginFrom2Nix {
     pname = "ccc.nvim";
-    version = "2022-09-26";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "uga-rosa";
       repo = "ccc.nvim";
-      rev = "19483e6c226650f14acabfc4b1ec6521cf964a4e";
-      sha256 = "11p4mzbyjsxik9jzg11d17mnacj8krxzrq4hjjg0pn1cggh3wqyh";
+      rev = "e74e0ebf3fac929c81fb9d918228ef03afc8d470";
+      sha256 = "1abpkiry3ffmwj51yldiaw3ix1scr6jjx714am1d4wz7kbl4228g";
     };
     meta.homepage = "https://github.com/uga-rosa/ccc.nvim/";
   };
@@ -1050,12 +1062,12 @@ final: prev:
 
   clangd_extensions-nvim = buildVimPluginFrom2Nix {
     pname = "clangd_extensions.nvim";
-    version = "2022-09-23";
+    version = "2022-10-02";
     src = fetchFromGitHub {
       owner = "p00f";
       repo = "clangd_extensions.nvim";
-      rev = "f2ca89d978f9fc907beb432a472a89fced7e10bd";
-      sha256 = "0g0w950l7pam1fibkc5fggchvsfi4fsyvrky2f1yizrndpmq09yz";
+      rev = "756a12b1604aa86368f2078ab44bfa788a29ece4";
+      sha256 = "1wxyy98gal3zdwrh6z92044yyj3nbw2bzq9diwa1h5waraf9jg7r";
     };
     meta.homepage = "https://github.com/p00f/clangd_extensions.nvim/";
   };
@@ -1458,12 +1470,12 @@ final: prev:
 
   cmp-path = buildVimPluginFrom2Nix {
     pname = "cmp-path";
-    version = "2022-07-26";
+    version = "2022-10-03";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "cmp-path";
-      rev = "447c87cdd6e6d6a1d2488b1d43108bfa217f56e1";
-      sha256 = "0nmxwfn0gp70z26w9x03dk2myx9bbjxqw7zywzvdm28lgr43dwhv";
+      rev = "91ff86cd9c29299a64f968ebb45846c485725f23";
+      sha256 = "18ixx14ibc7qrv32nj0ylxrx8w4ggg49l5vhcqd35hkp4n56j6mn";
     };
     meta.homepage = "https://github.com/hrsh7th/cmp-path/";
   };
@@ -1494,48 +1506,48 @@ final: prev:
 
   cmp-spell = buildVimPluginFrom2Nix {
     pname = "cmp-spell";
-    version = "2021-10-19";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "f3fora";
       repo = "cmp-spell";
-      rev = "5602f1a0de7831f8dad5b0c6db45328fbd539971";
-      sha256 = "1pk6izww8canfqpiyrqd6qx1p3j18pwfzkfx4ynbng8kl9nh6nv5";
+      rev = "60584cb75e5e8bba5a0c9e4c3ab0791e0698bffa";
+      sha256 = "1lzv8wbq1w45pbig7lcgyj46nmz4gkag7b37j72p04bixr7wgabv";
     };
     meta.homepage = "https://github.com/f3fora/cmp-spell/";
   };
 
   cmp-tabnine = buildVimPluginFrom2Nix {
     pname = "cmp-tabnine";
-    version = "2022-09-14";
+    version = "2022-10-05";
     src = fetchFromGitHub {
       owner = "tzachar";
       repo = "cmp-tabnine";
-      rev = "01653a5934b242e8ca517e079419c3b151ce2b00";
-      sha256 = "03nvx8rmdi23iiga5c3fnyaxl46jhv0hkqkcvcx10jjk34v1x9b0";
+      rev = "5a6d58badbfed69ee285983bf2cf5a17d957483a";
+      sha256 = "1dsbq0wcqf8c7y5ld74gqxbf2pdh28km7wdk37xvlqcvfk1kzmxs";
     };
     meta.homepage = "https://github.com/tzachar/cmp-tabnine/";
   };
 
   cmp-tmux = buildVimPluginFrom2Nix {
     pname = "cmp-tmux";
-    version = "2022-08-02";
+    version = "2022-10-05";
     src = fetchFromGitHub {
       owner = "andersevenrud";
       repo = "cmp-tmux";
-      rev = "e32f2f1417c9ff307ad348a134788eabd76c6112";
-      sha256 = "1fq9jiyf19mxlq13cg9775wmmrpm6jphhl0hrf7jb1aikvdi1b6y";
+      rev = "984772716f66d8ee88535a6bf3f94c4b4e1301f5";
+      sha256 = "1fy0rw9garhabbif6d7vvrv73c25lwv9fjh5b4y0m3kisvkbqfyr";
     };
     meta.homepage = "https://github.com/andersevenrud/cmp-tmux/";
   };
 
   cmp-treesitter = buildVimPluginFrom2Nix {
     pname = "cmp-treesitter";
-    version = "2022-06-09";
+    version = "2022-10-02";
     src = fetchFromGitHub {
       owner = "ray-x";
       repo = "cmp-treesitter";
-      rev = "c2886bbb09ef6daf996a258db29546cc1e7c12a7";
-      sha256 = "1ar6d6pqybn4vqynbh18mc7fy1ybv0s9mi1r2j1nfcmgvh4wsvwk";
+      rev = "5f695e4173ad74a4c8dbbfd8990286464bf69293";
+      sha256 = "1l32k8fdmpg8lfh1qqmahash957izz9zr6gfjvfs5s4if0fl3f2r";
     };
     meta.homepage = "https://github.com/ray-x/cmp-treesitter/";
   };
@@ -1590,12 +1602,12 @@ final: prev:
 
   cmp-zsh = buildVimPluginFrom2Nix {
     pname = "cmp-zsh";
-    version = "2022-01-18";
+    version = "2022-10-03";
     src = fetchFromGitHub {
       owner = "tamago324";
       repo = "cmp-zsh";
-      rev = "1d8133e5637c73b3eb392682ae9661d521738268";
-      sha256 = "0122lf44yqjp01znp7gnc682yx7fikjkzc5njp73lmys76321lz3";
+      rev = "c24db8e58fac9006ec23d93f236749288d00dec9";
+      sha256 = "1rifl2rhrbnq3hnwmn19fky3ibv1qf4pb0hx81pl38dgq6lfm2s6";
     };
     meta.homepage = "https://github.com/tamago324/cmp-zsh/";
   };
@@ -1638,12 +1650,12 @@ final: prev:
 
   coc-fzf = buildVimPluginFrom2Nix {
     pname = "coc-fzf";
-    version = "2022-09-13";
+    version = "2022-10-05";
     src = fetchFromGitHub {
       owner = "antoinemadec";
       repo = "coc-fzf";
-      rev = "5127966503e070770225437205949c6d244ab8a1";
-      sha256 = "1w5y0dkvmrrw4ilwlvcybp98mlx9222ygb0kdg31k5v4jzqynxj1";
+      rev = "cb405c0dc72312a06d17710a537ab0e6b6758648";
+      sha256 = "12s2nxyck0hwxk3z4h5knss9wsjmwiimj9kxs4bywwibwlwgnf6i";
     };
     meta.homepage = "https://github.com/antoinemadec/coc-fzf/";
   };
@@ -1710,12 +1722,12 @@ final: prev:
 
   coc-nvim = buildVimPluginFrom2Nix {
     pname = "coc.nvim";
-    version = "2022-09-25";
+    version = "2022-10-07";
     src = fetchFromGitHub {
       owner = "neoclide";
       repo = "coc.nvim";
-      rev = "ca63592c1ba484aa7146a6a9f34b9a6cb8d8ffb9";
-      sha256 = "10dr4kp8z2kzg167n1n7ndmdm7hhvsv4423g290yljlk0vbvflfn";
+      rev = "d0fa7acd233d76585daf9ce0b74ad1112591e271";
+      sha256 = "04qs3gcx2qjagawr577sadz6bkwlr40532i9f7p7jfkbd7ybgzm2";
     };
     meta.homepage = "https://github.com/neoclide/coc.nvim/";
   };
@@ -1782,24 +1794,24 @@ final: prev:
 
   command-t = buildVimPluginFrom2Nix {
     pname = "command-t";
-    version = "2022-09-18";
+    version = "2022-10-07";
     src = fetchFromGitHub {
       owner = "wincent";
       repo = "command-t";
-      rev = "f6a6cf7fb17cee08ca0ca84ffce6aabccc3d8476";
-      sha256 = "0gi6z6l5gw7dhg8gqbd6m3yzasyd2ccmwjjh8j4ma0dd7f5c7iq7";
+      rev = "f8d67e234aa39856ce62246cd4bf1c76f8b46245";
+      sha256 = "1iq34bysnkl65gvdpsfqgimvmnpq964654c0g1ijjc0ayfk1yyd8";
     };
     meta.homepage = "https://github.com/wincent/command-t/";
   };
 
   comment-nvim = buildVimPluginFrom2Nix {
     pname = "comment.nvim";
-    version = "2022-09-26";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "numtostr";
       repo = "comment.nvim";
-      rev = "7cc86127d30f7001a6e83c8b72656f17a67bc55f";
-      sha256 = "1jl2wwr8ssszgkynnkxpz2c57mw7yapvrc892jrnkbkj6lv7h8vi";
+      rev = "250bbc5a04b6e80ff1c212e89a80e976cda9e433";
+      sha256 = "18x9a1fmial78f28mkaqsajzazjj9zd4yq44fghw1ynaa36gjmwh";
     };
     meta.homepage = "https://github.com/numtostr/comment.nvim/";
   };
@@ -1866,12 +1878,12 @@ final: prev:
 
   compiler-explorer-nvim = buildVimPluginFrom2Nix {
     pname = "compiler-explorer.nvim";
-    version = "2022-09-27";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "krady21";
       repo = "compiler-explorer.nvim";
-      rev = "12641f77bea3e1bd93560653cba6e9f1c264c0dd";
-      sha256 = "1fm81s16ccrm0ia21hwc299mnpx3r2i3byggkwsi7cb5kh4lh6zw";
+      rev = "b565df009e92aad6ca8b338562b2f375fb1fea96";
+      sha256 = "0855y7vhhfzv3ppmg5834k593jg4b2qlkpg45fsf4xkks3g2s168";
     };
     meta.homepage = "https://github.com/krady21/compiler-explorer.nvim/";
   };
@@ -1950,12 +1962,12 @@ final: prev:
 
   conjure = buildVimPluginFrom2Nix {
     pname = "conjure";
-    version = "2022-09-26";
+    version = "2022-10-08";
     src = fetchFromGitHub {
       owner = "Olical";
       repo = "conjure";
-      rev = "0c91dd3c8c994f1cef3f91356133b971ffaf52c3";
-      sha256 = "1859f750c1v1y79khk6z7yizbgawvnndxsiwyb04wpzx2np3s21i";
+      rev = "839fe23a7746f03aa9ef1ebf087501cd6126cf0f";
+      sha256 = "1009jc5zz20hfi8g7j4znnrwm6jdj6041a24i3ayklgl5dqw2519";
     };
     meta.homepage = "https://github.com/Olical/conjure/";
   };
@@ -1998,24 +2010,24 @@ final: prev:
 
   coq-artifacts = buildVimPluginFrom2Nix {
     pname = "coq.artifacts";
-    version = "2022-09-27";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "coq.artifacts";
-      rev = "dbebb09f0c48d9af2b36f4e36e30e74ee7cef558";
-      sha256 = "09bv552gg5pkkzz8b0bj1xgp41ywz2yjwgrzqi64xhk98hdhhpy6";
+      rev = "e7ce839707e349fa5d8ea494dae2490fa849a4c3";
+      sha256 = "0g10avvx8i7pgfipq2wbylk98r1xz3g1sqr4kldxkv2g48842c1v";
     };
     meta.homepage = "https://github.com/ms-jpq/coq.artifacts/";
   };
 
   coq-thirdparty = buildVimPluginFrom2Nix {
     pname = "coq.thirdparty";
-    version = "2022-09-27";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "coq.thirdparty";
-      rev = "be1075ca88e3fd1d22bb8d3c8490701b4c90d2cb";
-      sha256 = "007gsvd0n53hgk92dk2wxx91lfdng8rq8cxl469gd9n71ixr31d0";
+      rev = "9f0744543875c3bee9c124248d259d059ccdad21";
+      sha256 = "0ykh3xl37x07z9ci63rvxqp1p3sw42macl0jxskbpk338rdvw9yi";
     };
     meta.homepage = "https://github.com/ms-jpq/coq.thirdparty/";
   };
@@ -2034,12 +2046,12 @@ final: prev:
 
   coq_nvim = buildVimPluginFrom2Nix {
     pname = "coq_nvim";
-    version = "2022-09-27";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "coq_nvim";
-      rev = "8988534294ceaa8fc0a76e68b188efdca88626bf";
-      sha256 = "09s8x7knsjbbbwnx13m3911nddapr92xink75lhn2k3hkr0hwmvq";
+      rev = "cbe678af3d43772781781fa485137ea3c46ce323";
+      sha256 = "1dc6903m9qs3s9jpc676lg6970w8vb635w6mc4w72zcln8xgih56";
     };
     meta.homepage = "https://github.com/ms-jpq/coq_nvim/";
   };
@@ -2178,12 +2190,12 @@ final: prev:
 
   dashboard-nvim = buildVimPluginFrom2Nix {
     pname = "dashboard-nvim";
-    version = "2022-09-16";
+    version = "2022-10-08";
     src = fetchFromGitHub {
       owner = "glepnir";
       repo = "dashboard-nvim";
-      rev = "1c4802a654c9127c745cbe2ffff9909a3a9ff965";
-      sha256 = "1fs9qk3xskvhbbs33kywk9krkcrbsrmizm0imqsbsp3c1cr3m8xk";
+      rev = "bd7163f56ac715a6d687737ea144731ac6ce8478";
+      sha256 = "0rbxs7bj0vhjrwmjlw74shskgy5igcfyn4iddrk1qc3kryaakdhw";
     };
     meta.homepage = "https://github.com/glepnir/dashboard-nvim/";
   };
@@ -2492,12 +2504,12 @@ final: prev:
 
   deoplete-nvim = buildVimPluginFrom2Nix {
     pname = "deoplete.nvim";
-    version = "2022-08-24";
+    version = "2022-09-28";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "deoplete.nvim";
-      rev = "4e30d980f51087241499e20d687b76dc5000274e";
-      sha256 = "0ll5wb8kpqy907rw6c9v99vkldp9lcvbrzdysjcdq4z8gzcwrvac";
+      rev = "14578f1d0c7ed8faca7e640104840b7eaa1c35ee";
+      sha256 = "1gwq7nhd90ifh1gys2jvrq2s8521pyz7w3nsr2pmnv64h3yl1f2f";
     };
     meta.homepage = "https://github.com/Shougo/deoplete.nvim/";
   };
@@ -2550,14 +2562,26 @@ final: prev:
     meta.homepage = "https://github.com/nvim-lua/diagnostic-nvim/";
   };
 
+  dial-nvim = buildVimPluginFrom2Nix {
+    pname = "dial.nvim";
+    version = "2022-08-29";
+    src = fetchFromGitHub {
+      owner = "monaqa";
+      repo = "dial.nvim";
+      rev = "d2d7a57fb030c82b8b0d6712d9c35dfb49d9aa3c";
+      sha256 = "1zm116xd7b79piaiia9fn56h7ivnmy0dip02q3n61fmn1sqijggr";
+    };
+    meta.homepage = "https://github.com/monaqa/dial.nvim/";
+  };
+
   diffview-nvim = buildVimPluginFrom2Nix {
     pname = "diffview.nvim";
-    version = "2022-09-24";
+    version = "2022-10-08";
     src = fetchFromGitHub {
       owner = "sindrets";
       repo = "diffview.nvim";
-      rev = "6baa30d0a6f63da254c2d2c0638a426166973976";
-      sha256 = "0jhs3nkxjkp0w26yx6p9qx7la9sr4pxp2vgcdj6jbgrwifxaqp3y";
+      rev = "a1fbcaa7e1e154cfa793ab44da4a6eb0ae15458d";
+      sha256 = "0wffr2g0d2nasbjqabm0arjgv28xlg6xqay9w5gw3hglz33rr5np";
     };
     meta.homepage = "https://github.com/sindrets/diffview.nvim/";
   };
@@ -2588,12 +2612,12 @@ final: prev:
 
   dressing-nvim = buildVimPluginFrom2Nix {
     pname = "dressing.nvim";
-    version = "2022-09-20";
+    version = "2022-10-03";
     src = fetchFromGitHub {
       owner = "stevearc";
       repo = "dressing.nvim";
-      rev = "76477792b34f8fed167b5aa61a325e4dab26c3d7";
-      sha256 = "10ma1k67c36jy38j3mx3s57scflmja7m68cgf5dzh0icg7h4viyi";
+      rev = "12b808a6867e8c38015488ad6cee4e3d58174182";
+      sha256 = "037sxvq9ywdnmy9f2gw89q52a76rmg4gwbn62i669ca95wvkhzxa";
     };
     meta.homepage = "https://github.com/stevearc/dressing.nvim/";
   };
@@ -2758,12 +2782,12 @@ final: prev:
 
   feline-nvim = buildVimPluginFrom2Nix {
     pname = "feline.nvim";
-    version = "2022-09-19";
+    version = "2022-10-06";
     src = fetchFromGitHub {
       owner = "feline-nvim";
       repo = "feline.nvim";
-      rev = "496975425a28ef1f974e90e9664fe3409738f071";
-      sha256 = "14p688anpsfj09yhmmjbl949xfx61qv79vg26hbxif149i3z5035";
+      rev = "f26dd12e5b0e39a8dd2abcb46066c250b5651de9";
+      sha256 = "03rla7gwjd8l35pk2mgi0qj23mpssdvfv2iz6c4dj2ixqs1ry9sh";
     };
     meta.homepage = "https://github.com/feline-nvim/feline.nvim/";
   };
@@ -2806,12 +2830,12 @@ final: prev:
 
   fidget-nvim = buildVimPluginFrom2Nix {
     pname = "fidget.nvim";
-    version = "2022-07-25";
+    version = "2022-10-02";
     src = fetchFromGitHub {
       owner = "j-hui";
       repo = "fidget.nvim";
-      rev = "492492e7d50452a9ace8346d31f6d6da40439f0e";
-      sha256 = "1s3qv09gbsjjmqkb85hc4832j18hd21j37rg4iqks0a4n2z5yi4b";
+      rev = "1097a86db8ba38e390850dc4035a03ed234a4673";
+      sha256 = "15pspfihd2rjzyw6pzd3yycjrn98nx79njasrn4j4sl4ivlay5g6";
     };
     meta.homepage = "https://github.com/j-hui/fidget.nvim/";
   };
@@ -2841,6 +2865,18 @@ final: prev:
     meta.homepage = "https://github.com/andviro/flake8-vim/";
   };
 
+  flit-nvim = buildVimPluginFrom2Nix {
+    pname = "flit.nvim";
+    version = "2022-09-23";
+    src = fetchFromGitHub {
+      owner = "ggandor";
+      repo = "flit.nvim";
+      rev = "dd43846edca345075a60d2f749bcca71cd47a17f";
+      sha256 = "1da1pfkm0jg9570smg0l2hc059jjaxpzvz8jbkx6i2m56gq9lmnh";
+    };
+    meta.homepage = "https://github.com/ggandor/flit.nvim/";
+  };
+
   float-preview-nvim = buildVimPluginFrom2Nix {
     pname = "float-preview.nvim";
     version = "2020-11-03";
@@ -2891,12 +2927,12 @@ final: prev:
 
   formatter-nvim = buildVimPluginFrom2Nix {
     pname = "formatter.nvim";
-    version = "2022-08-26";
+    version = "2022-09-27";
     src = fetchFromGitHub {
       owner = "mhartington";
       repo = "formatter.nvim";
-      rev = "07a746e6df6bf4c77766aa6c19723da618a38781";
-      sha256 = "0qffbwvb3vh92vixk8wq6h11ayvzvlq64x4qdwx7nz7dfd6cwlhb";
+      rev = "88aa63ba216708611b472d8737b96af71c2f3785";
+      sha256 = "0x55w1fs0pciinapdvs3vdsiql29753vi2f9sr3jpxlk4rgaygpa";
     };
     meta.homepage = "https://github.com/mhartington/formatter.nvim/";
   };
@@ -2915,12 +2951,12 @@ final: prev:
 
   friendly-snippets = buildVimPluginFrom2Nix {
     pname = "friendly-snippets";
-    version = "2022-09-18";
+    version = "2022-10-06";
     src = fetchFromGitHub {
       owner = "rafamadriz";
       repo = "friendly-snippets";
-      rev = "2be79d8a9b03d4175ba6b3d14b082680de1b31b1";
-      sha256 = "0hbvqcmfgkdww6gwdx3xaim2bx5xvw825slh3wi69wkqa5qbjasx";
+      rev = "6cd7469403fd06a3840a1065728d1affe1c23ec8";
+      sha256 = "0qilmi6xg37xq29kfk6nnchz1jm18qrbvgcfzq028pmdbnakg7r5";
     };
     meta.homepage = "https://github.com/rafamadriz/friendly-snippets/";
   };
@@ -3023,12 +3059,12 @@ final: prev:
 
   fzf-lua = buildVimPluginFrom2Nix {
     pname = "fzf-lua";
-    version = "2022-09-22";
+    version = "2022-10-08";
     src = fetchFromGitHub {
       owner = "ibhagwan";
       repo = "fzf-lua";
-      rev = "316879662ff9c33ae4b1072f8238e4bba2999e0a";
-      sha256 = "1b334fqvv49d9cnk4yv3hd3qgnw4x48l1i2ja1pxxiwi91q1hgwr";
+      rev = "c81874db259eef85ae21794b2f29e953519c692c";
+      sha256 = "1k6h1n4rpi47ggqvmxrw9bhis5mkd2fnqvyirvr4yz2sgivljmwn";
     };
     meta.homepage = "https://github.com/ibhagwan/fzf-lua/";
   };
@@ -3179,12 +3215,12 @@ final: prev:
 
   gitsigns-nvim = buildNeovimPluginFrom2Nix {
     pname = "gitsigns.nvim";
-    version = "2022-09-18";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "lewis6991";
       repo = "gitsigns.nvim";
-      rev = "f98c85e7c3d65a51f45863a34feb4849c82f240f";
-      sha256 = "0ljzja43jdkv77nh4253x3gwk2hjx968yk7b5ag4y1mvyp1540qn";
+      rev = "9d18976c10413e52d76d41a771f042704786ce2e";
+      sha256 = "1fzmg74i9q6xal0k1s1ikgbc37s0q1z79af5vhlfll5f2c5dkpsk";
     };
     meta.homepage = "https://github.com/lewis6991/gitsigns.nvim/";
   };
@@ -3215,12 +3251,12 @@ final: prev:
 
   glow-nvim = buildVimPluginFrom2Nix {
     pname = "glow.nvim";
-    version = "2022-09-22";
+    version = "2022-10-07";
     src = fetchFromGitHub {
       owner = "ellisonleao";
       repo = "glow.nvim";
-      rev = "b6b997277e019f751031ea52f9571ad2e1e7e42d";
-      sha256 = "1cnzgm0pixh2zrmkfgxjybb6i1lqa0hbkwrmbm1jb5p0hhc4d1j6";
+      rev = "9038d7cdd76a930973b6158d800c8dbc02236a4b";
+      sha256 = "0x49l7g84m1328fqad501f4iqqy3imbl8r8rh4rxsi1zam46f2ba";
     };
     meta.homepage = "https://github.com/ellisonleao/glow.nvim/";
   };
@@ -3335,12 +3371,12 @@ final: prev:
 
   gruvbox-nvim = buildVimPluginFrom2Nix {
     pname = "gruvbox.nvim";
-    version = "2022-09-15";
+    version = "2022-09-30";
     src = fetchFromGitHub {
       owner = "ellisonleao";
       repo = "gruvbox.nvim";
-      rev = "c632f629026cf41308b4473ab9bb9686318c993c";
-      sha256 = "1dn4a5wnahh2hnhx3sda2lrmfi675bmifpm3g1xjxqj3771ivznk";
+      rev = "24f9e795bfac5fabbaba703116e747dcf2ad8d2f";
+      sha256 = "0an08vf70ispd3alywz964vlxkgg17dgfz5n18q60ix2fs6pmgii";
     };
     meta.homepage = "https://github.com/ellisonleao/gruvbox.nvim/";
   };
@@ -3371,23 +3407,23 @@ final: prev:
 
   hare-vim = buildVimPluginFrom2Nix {
     pname = "hare.vim";
-    version = "2022-08-27";
+    version = "2022-10-10";
     src = fetchgit {
             url = "https://git.sr.ht/~sircmpwn/hare.vim";
-            rev = "0bdef854f8531747438f7764cf7553ba16e56fb8";
-            sha256 = "15ajgvhwl63h5268kp56m741bglaq3zgcf0bv61sasrh4v97xmgz";
+            rev = "267fb4dac4e8cd4df1d9b57fa587ce718f5fc256";
+            sha256 = "1spl17vd8w5k5xgqvmr80fi5samzhxfcqnkmzpqjk2sf5z88k80k";
         };
     meta.homepage = "https://git.sr.ht/~sircmpwn/hare.vim";
   };
 
   harpoon = buildVimPluginFrom2Nix {
     pname = "harpoon";
-    version = "2022-08-10";
+    version = "2022-10-06";
     src = fetchFromGitHub {
       owner = "ThePrimeagen";
       repo = "harpoon";
-      rev = "f4aff5bf9b512f5a85fe20eb1dcf4a87e512d971";
-      sha256 = "0jfc9d4dkx331567aic36mbqv3p2rq5nds35n33qg4f4mwqy8n6b";
+      rev = "4dfe94e633945c14ad0f03044f601b8e6a99c708";
+      sha256 = "1jr4k56glyd98lk19dj9r7i8zx72hhzn5lz1w846ffvsci5ffw1g";
     };
     meta.homepage = "https://github.com/ThePrimeagen/harpoon/";
   };
@@ -3454,12 +3490,12 @@ final: prev:
 
   hologram-nvim = buildVimPluginFrom2Nix {
     pname = "hologram.nvim";
-    version = "2022-09-03";
+    version = "2022-10-09";
     src = fetchFromGitHub {
       owner = "edluffy";
       repo = "hologram.nvim";
-      rev = "338969044a5d6f9f56f728c8efeeced7408d580a";
-      sha256 = "0q493i7fsws9q2wrmddbvxwr968qkkz8nlgm0nynb13m5qxpdzvh";
+      rev = "f5194f71ec1578d91b2e3119ff08e574e2eab542";
+      sha256 = "0khmi21mvmif7qd8cak9x1z4h68d34rwhfvcvnqxxh0mjzvskppv";
     };
     meta.homepage = "https://github.com/edluffy/hologram.nvim/";
   };
@@ -3478,28 +3514,40 @@ final: prev:
 
   hop-nvim = buildVimPluginFrom2Nix {
     pname = "hop.nvim";
-    version = "2022-07-31";
+    version = "2022-10-09";
     src = fetchFromGitHub {
       owner = "phaazon";
       repo = "hop.nvim";
-      rev = "2a1b686aad85a3c241f8cd8fd42eb09c7de5ed79";
-      sha256 = "1f8p8cxi74kgqs20knx7yq1bd7m30va1dqpsy5dqdzsazr50fymc";
+      rev = "6591b3656b75ff313cc38dc662a7ee8f75f1c165";
+      sha256 = "1y6jvl8q8j46zy1c18xi0hfdbma2cq7g3k0ymw05qghvvjyv65bq";
     };
     meta.homepage = "https://github.com/phaazon/hop.nvim/";
   };
 
   hotpot-nvim = buildVimPluginFrom2Nix {
     pname = "hotpot.nvim";
-    version = "2022-09-17";
+    version = "2022-10-01";
     src = fetchFromGitHub {
       owner = "rktjmp";
       repo = "hotpot.nvim";
-      rev = "a71c37feb8fe878d54f15135ddea0d2b3ea04a44";
-      sha256 = "1z7wq8dzfqw0m6ydvfahqi513x4a77vg7kxq3476awq8601h1525";
+      rev = "86f4f2f7c1cebdbeb9a9bd498810a0154e80dbab";
+      sha256 = "0gzxnh13l1ys8jbcnkgfrjz901qf8wvyslqyldyzm3ryis823acg";
     };
     meta.homepage = "https://github.com/rktjmp/hotpot.nvim/";
   };
 
+  hydra-nvim = buildVimPluginFrom2Nix {
+    pname = "hydra.nvim";
+    version = "2022-10-02";
+    src = fetchFromGitHub {
+      owner = "anuvyklack";
+      repo = "hydra.nvim";
+      rev = "fa41a971765d4cce9c39185289f5a10894f66dbd";
+      sha256 = "198bkw3y3253wjamvxxkdjr54nv1bkin148v554b47yv5w156zz1";
+    };
+    meta.homepage = "https://github.com/anuvyklack/hydra.nvim/";
+  };
+
   i3config-vim = buildVimPluginFrom2Nix {
     pname = "i3config.vim";
     version = "2021-06-23";
@@ -3897,14 +3945,38 @@ final: prev:
     meta.homepage = "https://github.com/leanprover/lean.vim/";
   };
 
+  leap-ast-nvim = buildVimPluginFrom2Nix {
+    pname = "leap-ast.nvim";
+    version = "2022-10-10";
+    src = fetchFromGitHub {
+      owner = "ggandor";
+      repo = "leap-ast.nvim";
+      rev = "1a21b70505ebb868a1e196c0d63797e1426b53a5";
+      sha256 = "1jb8rydp4h3b71vfn9hq4ni1fs6ds0kk92vlal4jl9gzs38cx5p9";
+    };
+    meta.homepage = "https://github.com/ggandor/leap-ast.nvim/";
+  };
+
+  leap-nvim = buildVimPluginFrom2Nix {
+    pname = "leap.nvim";
+    version = "2022-10-10";
+    src = fetchFromGitHub {
+      owner = "ggandor";
+      repo = "leap.nvim";
+      rev = "517f142dea3d62c956fd00ab78385b83b14932a9";
+      sha256 = "09j9frsxqxbzvk2fpyfz1ian9q5gzm1zj13kq64fwldzxamjsjji";
+    };
+    meta.homepage = "https://github.com/ggandor/leap.nvim/";
+  };
+
   legendary-nvim = buildVimPluginFrom2Nix {
     pname = "legendary.nvim";
-    version = "2022-09-26";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "mrjones2014";
       repo = "legendary.nvim";
-      rev = "59309190f3c80a41160e29d644a15ceb5c64e239";
-      sha256 = "17zg7hpabnb0bc9y78i358nasixmznimp44z097xw5h3fkz2z2aq";
+      rev = "9d8e43e25174033a1066f12b7d656d93c7527db7";
+      sha256 = "17drk65qrxnmnywg8p3251581hfy01drzj669v92brn1varp1a6d";
     };
     meta.homepage = "https://github.com/mrjones2014/legendary.nvim/";
   };
@@ -3935,12 +4007,12 @@ final: prev:
 
   lexima-vim = buildVimPluginFrom2Nix {
     pname = "lexima.vim";
-    version = "2022-09-26";
+    version = "2022-10-05";
     src = fetchFromGitHub {
       owner = "cohama";
       repo = "lexima.vim";
-      rev = "4a0644b64da8ebc5d64b964f7da9a394f06259bd";
-      sha256 = "0kyc1v26y98hmx3ajqgdr9xl4jw62c56n1i3xl6hab98inp1vq6z";
+      rev = "6be26d4c4a06228f72329b424f6f92d860de611d";
+      sha256 = "0nn3r7b513jhg9l0fa94rmxpdkwg9r7hdqn1x7jw3q6s547z9pin";
     };
     meta.homepage = "https://github.com/cohama/lexima.vim/";
   };
@@ -4031,12 +4103,12 @@ final: prev:
 
   lightline-vim = buildVimPluginFrom2Nix {
     pname = "lightline.vim";
-    version = "2022-05-09";
+    version = "2022-10-05";
     src = fetchFromGitHub {
       owner = "itchyny";
       repo = "lightline.vim";
-      rev = "b02ef0d9f253dfc1cbb3f340b74998d7a4db0bf6";
-      sha256 = "1rr5n23vvybfi3gbqljalqn0pnkwzzb4zqcz74jlz1dfyddsngah";
+      rev = "b1e91b41f5028d65fa3d31a425ff21591d5d957f";
+      sha256 = "0xb0hdjk4dww80s2ypvgz5rsvv41b07hskahz8r7xq6si5m5scrn";
     };
     meta.homepage = "https://github.com/itchyny/lightline.vim/";
   };
@@ -4103,12 +4175,12 @@ final: prev:
 
   litee-calltree-nvim = buildVimPluginFrom2Nix {
     pname = "litee-calltree.nvim";
-    version = "2022-09-27";
+    version = "2022-09-28";
     src = fetchFromGitHub {
       owner = "ldelossa";
       repo = "litee-calltree.nvim";
-      rev = "04e766756aa755e00a400cd09dae867a03f6f25d";
-      sha256 = "050a19kmilxlh4pknw6jakhnnkwwl51cddvi9aw2742pspddhnyy";
+      rev = "e2dffec35740032258fee3a3c7f30123226f2271";
+      sha256 = "091iga42vmkwxwr8y4p4j8l2cawja5q7n10bq7bqc9j8z6jvl9x8";
     };
     meta.homepage = "https://github.com/ldelossa/litee-calltree.nvim/";
   };
@@ -4127,12 +4199,12 @@ final: prev:
 
   litee-symboltree-nvim = buildVimPluginFrom2Nix {
     pname = "litee-symboltree.nvim";
-    version = "2022-09-26";
+    version = "2022-09-28";
     src = fetchFromGitHub {
       owner = "ldelossa";
       repo = "litee-symboltree.nvim";
-      rev = "4cbb64f3aa433522160c4e340fdf19900198e4ea";
-      sha256 = "0v8w2ddf8zwb0vpqwxc0294cgi4674ff335w0f226hrpkl962022";
+      rev = "488a660afcfd54644e6b755256907d3c7d8cf8d0";
+      sha256 = "0mjjap47cz01qar0q87ssh45l4dkzizxcm986gksrmvhwwrii3ap";
     };
     meta.homepage = "https://github.com/ldelossa/litee-symboltree.nvim/";
   };
@@ -4149,6 +4221,18 @@ final: prev:
     meta.homepage = "https://github.com/ldelossa/litee.nvim/";
   };
 
+  live-command-nvim = buildVimPluginFrom2Nix {
+    pname = "live-command.nvim";
+    version = "2022-10-10";
+    src = fetchFromGitHub {
+      owner = "smjonas";
+      repo = "live-command.nvim";
+      rev = "b3639c1bc78dbd396b47ef1dcf624dabc01238be";
+      sha256 = "0bkffrsha1mhsnd0w45js5d0kx097k21lyg7bwj4a40icgkgyfpk";
+    };
+    meta.homepage = "https://github.com/smjonas/live-command.nvim/";
+  };
+
   lsp-colors-nvim = buildVimPluginFrom2Nix {
     pname = "lsp-colors.nvim";
     version = "2022-09-05";
@@ -4294,12 +4378,12 @@ final: prev:
 
   lua-dev-nvim = buildVimPluginFrom2Nix {
     pname = "lua-dev.nvim";
-    version = "2022-09-27";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "lua-dev.nvim";
-      rev = "e18c4ce4048497384972052d8118eeaa0a681ada";
-      sha256 = "1yg3g613i2wp6zhvf940gvgz3318g8hzw4m5x76i63qpz6nanbmx";
+      rev = "092306391310e0cd3b8785588c50d03a9c98d473";
+      sha256 = "0hg6mq5h6a63vnvpxjjyfx1czjj14gpjdc0cn18hnch9krr5mz1i";
     };
     meta.homepage = "https://github.com/folke/lua-dev.nvim/";
   };
@@ -4318,24 +4402,24 @@ final: prev:
 
   lualine-nvim = buildVimPluginFrom2Nix {
     pname = "lualine.nvim";
-    version = "2022-09-11";
+    version = "2022-10-06";
     src = fetchFromGitHub {
       owner = "nvim-lualine";
       repo = "lualine.nvim";
-      rev = "a52f078026b27694d2290e34efa61a6e4a690621";
-      sha256 = "0cz9vpbd1z3986qbd166h747az8rqgwls0mhi1imqz0z9b66hrbc";
+      rev = "edca2b03c724f22bdc310eee1587b1523f31ec7c";
+      sha256 = "06gy6jy3gfhhjcy61fx9myhs4bmknhlfsmnsi1mmcydhm4gcbm2b";
     };
     meta.homepage = "https://github.com/nvim-lualine/lualine.nvim/";
   };
 
   luasnip = buildVimPluginFrom2Nix {
     pname = "luasnip";
-    version = "2022-09-20";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "l3mon4d3";
       repo = "luasnip";
-      rev = "d36c063b7f6e701852f7880f1314656592a61b4f";
-      sha256 = "1kqarf2710iqwa1zz8y7dm8s37b1q4330ldnw2adyzlyh6zifjwv";
+      rev = "08511f9a8dc3ef01c31a245429bfaef993e2f1f6";
+      sha256 = "04100gf6rgl3d7vxsxvf0xgn0y2ypyjh22qznx18hm0c7mdsl1qz";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/l3mon4d3/luasnip/";
@@ -4415,12 +4499,12 @@ final: prev:
 
   material-nvim = buildVimPluginFrom2Nix {
     pname = "material.nvim";
-    version = "2022-09-25";
+    version = "2022-10-06";
     src = fetchFromGitHub {
       owner = "marko-cerovac";
       repo = "material.nvim";
-      rev = "548761ecc9f23423186dfeee293807f957b45185";
-      sha256 = "0drcda1mipyia6pll6k2pns1sniwhsxs5hpc3671i77fwqw4synb";
+      rev = "de33236e23cab880a1ab3d1cfdc828d3eedbddf8";
+      sha256 = "1qww1rl7aw4n9766asbdz765wllxkhygm0azdkic7j8hb95dr94x";
     };
     meta.homepage = "https://github.com/marko-cerovac/material.nvim/";
   };
@@ -4439,12 +4523,12 @@ final: prev:
 
   mini-nvim = buildVimPluginFrom2Nix {
     pname = "mini.nvim";
-    version = "2022-09-26";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "echasnovski";
       repo = "mini.nvim";
-      rev = "49f970355e7b0dc5407057eb39b778d20209b7aa";
-      sha256 = "13fa6anil5y4wj0a543j4pip9a1slvrxwvlqihvh57cqn3r7vxsz";
+      rev = "9f7bdfd90d5bdb466fd297f691db6c58316c3bb7";
+      sha256 = "11yn7jwy8vy6rzmavh420x3dn7y9lzb0dn5nkrky2rr38s6wyd5h";
     };
     meta.homepage = "https://github.com/echasnovski/mini.nvim/";
   };
@@ -4811,12 +4895,12 @@ final: prev:
 
   neogit = buildVimPluginFrom2Nix {
     pname = "neogit";
-    version = "2022-09-22";
+    version = "2022-10-02";
     src = fetchFromGitHub {
       owner = "TimUntersberger";
       repo = "neogit";
-      rev = "463820a83f4ba387655f370a17c87dc3100cdf0d";
-      sha256 = "1h0mil77s8pbgjvqb0kf6l4avz1y33116rgv2kkaii1zn4dwmnws";
+      rev = "74c9e29b61780345d3ad9d7a4a4437607caead4a";
+      sha256 = "07szj9ajv3n8hpx0ibvysi0p5rfshcnbk0v3jyh2lvrcvky2qkqg";
     };
     meta.homepage = "https://github.com/TimUntersberger/neogit/";
   };
@@ -4871,12 +4955,12 @@ final: prev:
 
   neorg = buildVimPluginFrom2Nix {
     pname = "neorg";
-    version = "2022-09-23";
+    version = "2022-10-09";
     src = fetchFromGitHub {
       owner = "nvim-neorg";
       repo = "neorg";
-      rev = "9279eb2de80c8a9af12b1a35f3e0fd8d742b61dd";
-      sha256 = "0l7k6bf9jnqakzy7931fjr1pna2fvwcwd9y4y0yp7rsql5a5fk3d";
+      rev = "9a9891a3247b2c15b752efca749f1175b9013235";
+      sha256 = "01iibvgf5lf23zivd94dfcjiz2b0rmqcz7yddfqf8drq1pi3bxjw";
     };
     meta.homepage = "https://github.com/nvim-neorg/neorg/";
   };
@@ -4931,12 +5015,12 @@ final: prev:
 
   neovim-ayu = buildVimPluginFrom2Nix {
     pname = "neovim-ayu";
-    version = "2022-09-25";
+    version = "2022-10-01";
     src = fetchFromGitHub {
       owner = "Shatur";
       repo = "neovim-ayu";
-      rev = "0198dcf2d5585742220e21e002f095464874e19e";
-      sha256 = "1qbh4rpv4gzrsaqq0s64rq3c93ghspfd1ida76wpivzbzcrj4q7w";
+      rev = "bae6314522e47172564203d4f1c56dc1e39c1c14";
+      sha256 = "0hwhcdswa5msxndcfcn68dq8aj6gka7vmfcvbnaxmwza23ik09cd";
     };
     meta.homepage = "https://github.com/Shatur/neovim-ayu/";
   };
@@ -4979,12 +5063,12 @@ final: prev:
 
   nerdcommenter = buildVimPluginFrom2Nix {
     pname = "nerdcommenter";
-    version = "2022-09-12";
+    version = "2022-10-07";
     src = fetchFromGitHub {
       owner = "preservim";
       repo = "nerdcommenter";
-      rev = "2a0a05ff983aa62d74ba868aadf89deb93dd5454";
-      sha256 = "1qbkhkvag4aqp11b938j18drra5dymqqxjghwnq00dq97ll777s7";
+      rev = "60f3a2bc2bd22b98af5770b940762f77ca17cfee";
+      sha256 = "0vcv0j5zvz4mmaczkkspl5l5fv8x36fdlvm9sf3s85hsz0gh03xp";
     };
     meta.homepage = "https://github.com/preservim/nerdcommenter/";
   };
@@ -5051,12 +5135,12 @@ final: prev:
 
   nightfox-nvim = buildVimPluginFrom2Nix {
     pname = "nightfox.nvim";
-    version = "2022-09-05";
+    version = "2022-09-27";
     src = fetchFromGitHub {
       owner = "EdenEast";
       repo = "nightfox.nvim";
-      rev = "83f6ee9e646c803aa14c7293ad7775900f24ea1a";
-      sha256 = "07fi55ilkqmb7xqwk1vd6nkmpfwrpqjnjz8wv8z84h1s3dpcslzx";
+      rev = "59c3dbcec362eff7794f1cb576d56fd8a3f2c8bb";
+      sha256 = "1dkwgqx576xc8fryhi61q7mka93vv28hfsw340k594jkqc3da9i2";
     };
     meta.homepage = "https://github.com/EdenEast/nightfox.nvim/";
   };
@@ -5097,14 +5181,26 @@ final: prev:
     meta.homepage = "https://github.com/mcchrish/nnn.vim/";
   };
 
+  noice-nvim = buildVimPluginFrom2Nix {
+    pname = "noice.nvim";
+    version = "2022-10-09";
+    src = fetchFromGitHub {
+      owner = "folke";
+      repo = "noice.nvim";
+      rev = "87f908da660c321439a0dd98a8e51cd85227f57b";
+      sha256 = "0byzbwhclppby3ryqis29d6wpdgshk7qi9sp1pp8kkfjv2fg3xb3";
+    };
+    meta.homepage = "https://github.com/folke/noice.nvim/";
+  };
+
   nord-vim = buildVimPluginFrom2Nix {
     pname = "nord-vim";
-    version = "2022-05-31";
+    version = "2022-10-08";
     src = fetchFromGitHub {
       owner = "arcticicestudio";
       repo = "nord-vim";
-      rev = "bc0f057162491e9228207d74bd88b5efe875316e";
-      sha256 = "16fm573my8ysmcy68wy9kxwrm85q8fmpggwr83z1gwq3mmws59xy";
+      rev = "0748955e9e8d9770b44f2bec8456189430b37d9d";
+      sha256 = "1xifxwyjwfr9z801mm9sfh2sy0xf5ydhbg8ssi5mpdilffpkghp6";
     };
     meta.homepage = "https://github.com/arcticicestudio/nord-vim/";
   };
@@ -5123,12 +5219,12 @@ final: prev:
 
   nordic-nvim = buildVimPluginFrom2Nix {
     pname = "nordic.nvim";
-    version = "2022-08-17";
+    version = "2022-10-05";
     src = fetchFromGitHub {
       owner = "andersevenrud";
       repo = "nordic.nvim";
-      rev = "40c71de9596ad9e7a7c742ba969399790cadd711";
-      sha256 = "1md1ykr1anjxf2fcksk2wjhkqd7nc144l3v6pyc6pb0vs27qakzg";
+      rev = "fab5de2c7430b1d091801b254afc30c066a3b200";
+      sha256 = "1jqqnsi0sqfkgynhwy8a5ya3rqhry3fiabdkkivns9cjvvq5lz4m";
     };
     meta.homepage = "https://github.com/andersevenrud/nordic.nvim/";
   };
@@ -5147,36 +5243,36 @@ final: prev:
 
   nui-nvim = buildVimPluginFrom2Nix {
     pname = "nui.nvim";
-    version = "2022-09-12";
+    version = "2022-10-04";
     src = fetchFromGitHub {
       owner = "MunifTanjim";
       repo = "nui.nvim";
-      rev = "e9889bbd9919544697d497537acacd9c67d0de99";
-      sha256 = "0gd2kha6hi6z3y8g0wrgi9lnslchmldhxc5vbd6iak47csi7h7gr";
+      rev = "4715f6092443f0b8fb9a3bcb0cfd03202bb03477";
+      sha256 = "1ddqwifszbdl8yzi0sj8dh20cb4hg6rk3s6qjy4l4sgslzxgsnk9";
     };
     meta.homepage = "https://github.com/MunifTanjim/nui.nvim/";
   };
 
   null-ls-nvim = buildVimPluginFrom2Nix {
     pname = "null-ls.nvim";
-    version = "2022-09-22";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "jose-elias-alvarez";
       repo = "null-ls.nvim";
-      rev = "8af89c5fa2b732aaa9c3bf8aed95bccc9c4ce295";
-      sha256 = "0801yhgh6vjhskcmcwd9z62zvcp7szmb4q8xdrzn30gfwxzci04j";
+      rev = "ce85d7738b5a29c910a970fed3299bada855fb3d";
+      sha256 = "0gnz4w8yj2d8qzx63dfyvr18sxhid3876gdaf33p0j3x138d45p1";
     };
     meta.homepage = "https://github.com/jose-elias-alvarez/null-ls.nvim/";
   };
 
   numb-nvim = buildVimPluginFrom2Nix {
     pname = "numb.nvim";
-    version = "2022-03-20";
+    version = "2022-10-05";
     src = fetchFromGitHub {
       owner = "nacro90";
       repo = "numb.nvim";
-      rev = "453c50ab921fa066fb073d2fd0f826cb036eaf7b";
-      sha256 = "0pkssmd29r2d5f0s770ppj0z4rv0qj5szd43jh16wxknwwjmqi9n";
+      rev = "d95b7ea62e320b02ca1aa9df3635471a88d6f3b1";
+      sha256 = "1g8nnrxyfgn3v9k4xi7dh1b29vnp73k5x7vz002q7xar4alj468z";
     };
     meta.homepage = "https://github.com/nacro90/numb.nvim/";
   };
@@ -5207,12 +5303,12 @@ final: prev:
 
   nvim-autopairs = buildVimPluginFrom2Nix {
     pname = "nvim-autopairs";
-    version = "2022-09-17";
+    version = "2022-10-01";
     src = fetchFromGitHub {
       owner = "windwp";
       repo = "nvim-autopairs";
-      rev = "14cc2a4fc6243152ba085cc2059834113496c60a";
-      sha256 = "1z5dmlzvp0dmji8zl7nggl6wp9qh4cgkabqk0wabl1fa4y913qxp";
+      rev = "4fc96c8f3df89b6d23e5092d31c866c53a346347";
+      sha256 = "09aka75d7a0acixrp2b7hfy08vdnjxxiknd5ngf2pk479k8z5zbj";
     };
     meta.homepage = "https://github.com/windwp/nvim-autopairs/";
   };
@@ -5243,12 +5339,12 @@ final: prev:
 
   nvim-bqf = buildVimPluginFrom2Nix {
     pname = "nvim-bqf";
-    version = "2022-09-21";
+    version = "2022-10-06";
     src = fetchFromGitHub {
       owner = "kevinhwang91";
       repo = "nvim-bqf";
-      rev = "aea31569d1b20aa6a35fa84ec756cb205a4a7134";
-      sha256 = "105iz6m3hp2qqxhmgnz17rydcbbvwyn3yvrlfr5jsj0r8qxfs0yj";
+      rev = "c33b5c57ff82d71f8004b37c8c17a7928da76d08";
+      sha256 = "019lhnwaiz0drdqx6vj56hgjqklfjf48vsx1fk35j5b97nh0sbnh";
     };
     meta.homepage = "https://github.com/kevinhwang91/nvim-bqf/";
   };
@@ -5279,36 +5375,36 @@ final: prev:
 
   nvim-cmp = buildNeovimPluginFrom2Nix {
     pname = "nvim-cmp";
-    version = "2022-09-27";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "nvim-cmp";
-      rev = "2427d06b6508489547cd30b6e86b1c75df363411";
-      sha256 = "14ksk5c2dds7plqn5kfvxa65kck1yjn3dbgzalrfwn35ynxl92nx";
+      rev = "0ad2450ff617a3568cc3f5e46f13635ef5185e6c";
+      sha256 = "1fgl908sv4pzqg6z4i584d86qqkf91igd0pkhggwf951x0ss4m02";
     };
     meta.homepage = "https://github.com/hrsh7th/nvim-cmp/";
   };
 
   nvim-code-action-menu = buildVimPluginFrom2Nix {
     pname = "nvim-code-action-menu";
-    version = "2022-05-29";
+    version = "2022-10-07";
     src = fetchFromGitHub {
       owner = "weilbith";
       repo = "nvim-code-action-menu";
-      rev = "ee599409ed6ab31f6d7115e9c5c4550336470c14";
-      sha256 = "09kldrnfy4fz6f706s444rnwkrzl0zx5fpiygs4mgvdcq1maavlw";
+      rev = "58e12501ea028ff1171f8f06ea53891f7c6e1c3f";
+      sha256 = "18vfrfkwr27jswflwrsppv17ylvi1l2rgxrv4p14cmyr03h8zx22";
     };
     meta.homepage = "https://github.com/weilbith/nvim-code-action-menu/";
   };
 
   nvim-colorizer-lua = buildVimPluginFrom2Nix {
     pname = "nvim-colorizer.lua";
-    version = "2022-09-22";
+    version = "2022-09-28";
     src = fetchFromGitHub {
       owner = "nvchad";
       repo = "nvim-colorizer.lua";
-      rev = "20fd0091ef4d873fb1ce8b2bbb278664514cac7a";
-      sha256 = "02wj29bm7fwkp7igvynfmvndxmz6gngkhjz740xbwv2ncxiv974j";
+      rev = "9dd7ecde55b06b5114e1fa67c522433e7e59db8b";
+      sha256 = "1lmvxz8k680yfjhadkh0km2v16vhg8p07xbkkvc0jhkp6hg4sxx4";
     };
     meta.homepage = "https://github.com/nvchad/nvim-colorizer.lua/";
   };
@@ -5375,24 +5471,24 @@ final: prev:
 
   nvim-dap = buildVimPluginFrom2Nix {
     pname = "nvim-dap";
-    version = "2022-09-24";
+    version = "2022-10-09";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-dap";
-      rev = "764899df5ca39076acb08a447f7e5bd0b4fa3147";
-      sha256 = "1l02prap758nhgcfgnf440ndv6cchns1rd7wd2acpwhzdvx5xfdf";
+      rev = "6b12294a57001d994022df8acbe2ef7327d30587";
+      sha256 = "16v6cy2za9v48jrm4mipfnxv5ry0h60k85342xrzxwanhnkagi5v";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-dap/";
   };
 
   nvim-dap-ui = buildVimPluginFrom2Nix {
     pname = "nvim-dap-ui";
-    version = "2022-09-25";
+    version = "2022-10-06";
     src = fetchFromGitHub {
       owner = "rcarriga";
       repo = "nvim-dap-ui";
-      rev = "8d0768a83f7b89bd8cb8811800bc121b9353f0b2";
-      sha256 = "0hic4wf4lpl4ya4zbdng0ih2lbcc1bp6mqxc588nlmw044m68bia";
+      rev = "1cd4764221c91686dcf4d6b62d7a7b2d112e0b13";
+      sha256 = "19fn9jghvjvmvfm06g2a1hbpm1yd9w5dnr5dcqpwcaz0pxi1y74x";
     };
     meta.homepage = "https://github.com/rcarriga/nvim-dap-ui/";
   };
@@ -5469,6 +5565,18 @@ final: prev:
     meta.homepage = "https://github.com/smiteshp/nvim-gps/";
   };
 
+  nvim-highlight-colors = buildVimPluginFrom2Nix {
+    pname = "nvim-highlight-colors";
+    version = "2022-09-28";
+    src = fetchFromGitHub {
+      owner = "brenoprata10";
+      repo = "nvim-highlight-colors";
+      rev = "5d20935b99d976ffa0d8226a78a8b2e091f0f699";
+      sha256 = "0mqczqcrz2iz0k52k5bglad6rbsr8dddm5mvb1gsihbqp0ijyj85";
+    };
+    meta.homepage = "https://github.com/brenoprata10/nvim-highlight-colors/";
+  };
+
   nvim-highlite = buildVimPluginFrom2Nix {
     pname = "nvim-highlite";
     version = "2022-08-22";
@@ -5483,12 +5591,12 @@ final: prev:
 
   nvim-hlslens = buildVimPluginFrom2Nix {
     pname = "nvim-hlslens";
-    version = "2022-09-26";
+    version = "2022-10-09";
     src = fetchFromGitHub {
       owner = "kevinhwang91";
       repo = "nvim-hlslens";
-      rev = "b00336ebecc7115740577afa267ff8c26c6b31dc";
-      sha256 = "08k4j4qhdiq50rkq8q13dplyga6jrn9nkmzyn6m55sahh3cqz4xn";
+      rev = "8b67dd488cc4633dc3580b44bf0b30d002a2ba29";
+      sha256 = "1wwk0sxd3j4fpndill5hbdq1rwmjfv8x8hmajvsxdnpc8skvyzxa";
     };
     meta.homepage = "https://github.com/kevinhwang91/nvim-hlslens/";
   };
@@ -5507,12 +5615,12 @@ final: prev:
 
   nvim-jdtls = buildVimPluginFrom2Nix {
     pname = "nvim-jdtls";
-    version = "2022-09-18";
+    version = "2022-10-04";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-jdtls";
-      rev = "e9f40e793a16f3cebbd7e864e1ea0c32afa38747";
-      sha256 = "111962k5axifxmc5jilgimj2ly7sk7wwjskmviqc7i3wpc9pahia";
+      rev = "0422245fdef57aa4eddba3d99aee1afaaf425da7";
+      sha256 = "0h43bqf5n0l8f1jyzp7splsvcdran9j4arafpvli4pkfd9qx3h38";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-jdtls/";
   };
@@ -5567,12 +5675,12 @@ final: prev:
 
   nvim-lint = buildVimPluginFrom2Nix {
     pname = "nvim-lint";
-    version = "2022-09-21";
+    version = "2022-10-02";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-lint";
-      rev = "1b3468b07452e3736b67afd43547f766cc1db307";
-      sha256 = "096yp2lpqkr7fv2nh3kk3v06d5mcy1lsr0x3d0y3j7zsy2xxn8fb";
+      rev = "eefa696036d7cbaa23d4b72ad272f2c615936e73";
+      sha256 = "1wfsv7c4gl7dwy9n7x5pa0xrasim6ksl58ah8l4a6dpayyw2wrgm";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-lint/";
   };
@@ -5591,12 +5699,12 @@ final: prev:
 
   nvim-lspconfig = buildVimPluginFrom2Nix {
     pname = "nvim-lspconfig";
-    version = "2022-09-23";
+    version = "2022-10-09";
     src = fetchFromGitHub {
       owner = "neovim";
       repo = "nvim-lspconfig";
-      rev = "d4eb971db353ccf78cefb3be1b05483b69ec1e69";
-      sha256 = "0hrf4lkd8ikdrncajylbsgjkpj8vg6yfmbdlqaw6z8bqqk0n28dq";
+      rev = "0a8064eda0c7a4475c4a8ceb39199e975308797b";
+      sha256 = "163ppl8fdybx2bkaimbxxidn6vgqgz6dz6qs45ng9f9ys1wxg5nr";
     };
     meta.homepage = "https://github.com/neovim/nvim-lspconfig/";
   };
@@ -5627,12 +5735,12 @@ final: prev:
 
   nvim-metals = buildVimPluginFrom2Nix {
     pname = "nvim-metals";
-    version = "2022-09-05";
+    version = "2022-10-03";
     src = fetchFromGitHub {
       owner = "scalameta";
       repo = "nvim-metals";
-      rev = "b7587a9155d22761f1b28c18f7927e6df0d08387";
-      sha256 = "03jym28bk49609m5k0lw18xir6ia23df4m4av5046zqm9dmvhkj0";
+      rev = "1284bbf8d79fe010909e65abdd849f047ff51914";
+      sha256 = "121h5whwdyv3svby6qsjp893lwc98b6bs18jy58y5xzdzqv2lrd3";
     };
     meta.homepage = "https://github.com/scalameta/nvim-metals/";
   };
@@ -5675,12 +5783,12 @@ final: prev:
 
   nvim-notify = buildVimPluginFrom2Nix {
     pname = "nvim-notify";
-    version = "2022-09-22";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "rcarriga";
       repo = "nvim-notify";
-      rev = "3a8ec89e1918ea2acbb9b22c5ac2006d31773052";
-      sha256 = "00ixzciwgzpi2sg6s5cyw8101nnwrv0ks8x77mcqrvpmqnlg6hky";
+      rev = "56f65a9474e9ce294a89eb325fccf4391646bfd4";
+      sha256 = "1dr3yv8b3zv50yls8xwf6k75xk7l8y78cbbs7zvjmwri31sw5w4f";
     };
     meta.homepage = "https://github.com/rcarriga/nvim-notify/";
   };
@@ -5697,6 +5805,18 @@ final: prev:
     meta.homepage = "https://github.com/gennaro-tedesco/nvim-peekup/";
   };
 
+  nvim-rename-state = buildVimPluginFrom2Nix {
+    pname = "nvim-rename-state";
+    version = "2022-09-29";
+    src = fetchFromGitHub {
+      owner = "olrtg";
+      repo = "nvim-rename-state";
+      rev = "d8a2ad1d3e9269d673007dbd0e76871bb10da878";
+      sha256 = "1aj9pz1y3yn63z4nyifs3f47j3zcbwl4v42l64rjz7m9pzdsa34b";
+    };
+    meta.homepage = "https://github.com/olrtg/nvim-rename-state/";
+  };
+
   nvim-scrollview = buildVimPluginFrom2Nix {
     pname = "nvim-scrollview";
     version = "2022-09-26";
@@ -5711,12 +5831,12 @@ final: prev:
 
   nvim-snippy = buildVimPluginFrom2Nix {
     pname = "nvim-snippy";
-    version = "2022-09-22";
+    version = "2022-09-30";
     src = fetchFromGitHub {
       owner = "dcampos";
       repo = "nvim-snippy";
-      rev = "afff8a8cbda4de2b75249ee08359d0584458f0ef";
-      sha256 = "1swhn82b2a9gc5kxas9cgdpkvykpb9322ghmk5nwss99i05nrnl0";
+      rev = "ee5ed2100b953c315d9fa2bfd08e93d6548253e0";
+      sha256 = "0k8x58f12y565283h2rjw8mdlnhv39awldc4d9aqm0ny8vh4mj1h";
     };
     meta.homepage = "https://github.com/dcampos/nvim-snippy/";
   };
@@ -5747,12 +5867,12 @@ final: prev:
 
   nvim-surround = buildVimPluginFrom2Nix {
     pname = "nvim-surround";
-    version = "2022-09-26";
+    version = "2022-10-06";
     src = fetchFromGitHub {
       owner = "kylechui";
       repo = "nvim-surround";
-      rev = "a0b35fd410e16f00543e81dbb6c52c723f49717e";
-      sha256 = "1krsgy0x3x9bml8iszd0svz9iqmdn73yn15n49ffznq3vj3gafr2";
+      rev = "faf9ffe92d871dd18b4d26b52fcc6b36d315f335";
+      sha256 = "1miwnazlrgjw547lnh1ksv1p9qmiwrqfw5x7f6z6f18ilhly1k1q";
     };
     meta.homepage = "https://github.com/kylechui/nvim-surround/";
   };
@@ -5771,36 +5891,36 @@ final: prev:
 
   nvim-tree-lua = buildVimPluginFrom2Nix {
     pname = "nvim-tree.lua";
-    version = "2022-09-25";
+    version = "2022-10-09";
     src = fetchFromGitHub {
-      owner = "kyazdani42";
+      owner = "nvim-tree";
       repo = "nvim-tree.lua";
-      rev = "9914780cbabdffe3cd030867f0bc34c6e51bcb95";
-      sha256 = "1w6icjxl3l9djr8gx2p3rvwg0878g64npxn2l6s40iyizdb4qvc6";
+      rev = "875d38e52cc4367bad10e648a906a6bd73b3691c";
+      sha256 = "02mqgphmmpvnwqaivy4yjgvwrhf23s1jb8z8qldgfxypf5lfpgvl";
     };
-    meta.homepage = "https://github.com/kyazdani42/nvim-tree.lua/";
+    meta.homepage = "https://github.com/nvim-tree/nvim-tree.lua/";
   };
 
   nvim-treesitter = buildVimPluginFrom2Nix {
     pname = "nvim-treesitter";
-    version = "2022-09-27";
+    version = "2022-10-09";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter";
-      rev = "0289160c963fac1d0330966a798acacf85a43a88";
-      sha256 = "0c78089lk5wrj8brszcy08gzp6wvpmwiraynbixnnaxq8cnfmxgn";
+      rev = "7ddc2b54db9b92846292e081a337dce2ed4f66a1";
+      sha256 = "195qckaq6xiixh1m2h306c43mf09nfk5p840k2amdbg0i2wi44na";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter/";
   };
 
   nvim-treesitter-context = buildVimPluginFrom2Nix {
     pname = "nvim-treesitter-context";
-    version = "2022-09-23";
+    version = "2022-10-06";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter-context";
-      rev = "8d0759eb798fee2e1201b26c3279713ac67c44c2";
-      sha256 = "1pbd9x89vcph1n67ybfnn659xlnbsy8wjx403j9hp7x1qy73906p";
+      rev = "c46a8a0a60412a8fe43aa6bd3a01845c46de6bf2";
+      sha256 = "0p90akdva7zjfb2yc6gybx1i7yr82rbg6943xz74c8wgynppasbr";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter-context/";
   };
@@ -5831,12 +5951,12 @@ final: prev:
 
   nvim-treesitter-textobjects = buildVimPluginFrom2Nix {
     pname = "nvim-treesitter-textobjects";
-    version = "2022-09-03";
+    version = "2022-10-06";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter-textobjects";
-      rev = "e63c2ff8e38fad77299dd74e14c7c9360e1b3181";
-      sha256 = "1f3lkjfb7nh68yd2466fglz5xvzplghq522irfndq8ik5jpwcwbn";
+      rev = "80a38f9408102693539f54eef3e6a57d44c6147d";
+      sha256 = "1gnv82ph7irmaf17mmgm9a18gnysming6sfvbirx13d23y61xb1x";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter-textobjects/";
   };
@@ -5867,26 +5987,26 @@ final: prev:
 
   nvim-ts-rainbow = buildVimPluginFrom2Nix {
     pname = "nvim-ts-rainbow";
-    version = "2022-09-17";
+    version = "2022-09-30";
     src = fetchFromGitHub {
       owner = "p00f";
       repo = "nvim-ts-rainbow";
-      rev = "fad8badcd9baa4deb2cf2a5376ab412a1ba41797";
-      sha256 = "1q6daj6q89pf16pxgq8phcjad1l3i8m6afmra2b5ay5f9f2qk53q";
+      rev = "1ec3f880585c644ddd50a51502c59f4e36f03e62";
+      sha256 = "03403mx5rdknsaia8br0ymc9y53kv8jnnlawfrwralxm1fsrml5h";
     };
     meta.homepage = "https://github.com/p00f/nvim-ts-rainbow/";
   };
 
   nvim-web-devicons = buildVimPluginFrom2Nix {
     pname = "nvim-web-devicons";
-    version = "2022-09-18";
+    version = "2022-10-03";
     src = fetchFromGitHub {
-      owner = "kyazdani42";
+      owner = "nvim-tree";
       repo = "nvim-web-devicons";
-      rev = "969728506c0175644a1d448f55e311ccdada7eaf";
-      sha256 = "0ycxr16bxqjrp9mzq263j561jb8si9161asgdq2g1644r7mlzhbv";
+      rev = "a8cf88cbdb5c58e2b658e179c4b2aa997479b3da";
+      sha256 = "1946azhr3rq702mvidzby9jvq7h2zs45d6k9j7clxw2g9xbx0k6a";
     };
-    meta.homepage = "https://github.com/kyazdani42/nvim-web-devicons/";
+    meta.homepage = "https://github.com/nvim-tree/nvim-web-devicons/";
   };
 
   nvim-whichkey-setup-lua = buildVimPluginFrom2Nix {
@@ -5963,12 +6083,12 @@ final: prev:
 
   octo-nvim = buildVimPluginFrom2Nix {
     pname = "octo.nvim";
-    version = "2022-09-14";
+    version = "2022-10-09";
     src = fetchFromGitHub {
       owner = "pwntester";
       repo = "octo.nvim";
-      rev = "e634cd1b120af1d7f642081185782a24b49dc11f";
-      sha256 = "1zlqyhxr8ibgahz3s3gwbw0ybkczgd96a18d5lfcg5i9axi6iaqp";
+      rev = "d91f88be51fa7cde8b5d6f529c057338aad18383";
+      sha256 = "0d4340gjbsvbdvymw0a7kpqwvzrn946nnsaav9i0z6rallrk583n";
     };
     meta.homepage = "https://github.com/pwntester/octo.nvim/";
   };
@@ -6011,24 +6131,24 @@ final: prev:
 
   onedark-vim = buildVimPluginFrom2Nix {
     pname = "onedark.vim";
-    version = "2022-07-18";
+    version = "2022-10-03";
     src = fetchFromGitHub {
       owner = "joshdick";
       repo = "onedark.vim";
-      rev = "1fe54f212f09a03c2b5e277f0fe5b7b9d0b0a4ed";
-      sha256 = "19jhpfwidwigrcwz20qgm4gf5znz61xslfsf90fkr7k45vgwsk4q";
+      rev = "0c23bb090f14580c924323ef1d3ccb1f9d2fa001";
+      sha256 = "1fylkscj2iz4p89807xzzaj21lqi6621afsa8p3pms5vcn0hi8jm";
     };
     meta.homepage = "https://github.com/joshdick/onedark.vim/";
   };
 
   onedarkpro-nvim = buildVimPluginFrom2Nix {
     pname = "onedarkpro.nvim";
-    version = "2022-09-26";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "olimorris";
       repo = "onedarkpro.nvim";
-      rev = "d8ca7cfd1c64f262568da4531257fa9f54f211b3";
-      sha256 = "194yvzk7hi21hbbxrfmnk2xfhkylkl2nc5ymbjvgsy992x16d52r";
+      rev = "81f50f9ab0f4b556b4bd10c8c8cdf8a76ab01213";
+      sha256 = "179nq72hlcb4g5dgm8psl3il075km80ijz5kz5yzb43kllkaadls";
     };
     meta.homepage = "https://github.com/olimorris/onedarkpro.nvim/";
   };
@@ -6047,12 +6167,12 @@ final: prev:
 
   onenord-nvim = buildVimPluginFrom2Nix {
     pname = "onenord.nvim";
-    version = "2022-09-18";
+    version = "2022-10-01";
     src = fetchFromGitHub {
       owner = "rmehri01";
       repo = "onenord.nvim";
-      rev = "a31be34c1186f240fbadb9646ff00774f5759595";
-      sha256 = "1zicshnz0s4cfv793rd2wyi5mzh90ykg27a4jsydblgcgbqbgnih";
+      rev = "749ee2f7fdeb9a02f25195d4850d2ff16240c863";
+      sha256 = "0zagysrszabwfxr942dhj4aqdsnbr15qsvq6pvnd99nc3rs05w45";
     };
     meta.homepage = "https://github.com/rmehri01/onenord.nvim/";
   };
@@ -6071,24 +6191,24 @@ final: prev:
 
   open-browser-vim = buildVimPluginFrom2Nix {
     pname = "open-browser.vim";
-    version = "2021-10-05";
+    version = "2022-10-08";
     src = fetchFromGitHub {
       owner = "tyru";
       repo = "open-browser.vim";
-      rev = "80ec3f2bb0a86ac13c998e2f2c86e16e6d2f20bb";
-      sha256 = "01qj967nch3wwkbshrsdzyyr4apvsqrpa4dkmpn21qr2183w84zz";
+      rev = "7d4c1d8198e889d513a030b5a83faa07606bac27";
+      sha256 = "0sqzj25sdczxcpbp2ncpm07y631w9x81yv292xji3l0nzx7601pm";
     };
     meta.homepage = "https://github.com/tyru/open-browser.vim/";
   };
 
   orgmode = buildVimPluginFrom2Nix {
     pname = "orgmode";
-    version = "2022-09-25";
+    version = "2022-10-04";
     src = fetchFromGitHub {
       owner = "nvim-orgmode";
       repo = "orgmode";
-      rev = "77ea13332f3c811b707e902c7cb8605c471a2f4c";
-      sha256 = "02276gfmkik74248fy2zx888v0vf2fyf9vywagy5d9q566c78zac";
+      rev = "017570f58c6316982ecc6ddfe6fefd28b55a4092";
+      sha256 = "0bbvdraxslg8k2m2ldglmspaawrrrp3plglzri7hm8scnw7mz58n";
     };
     meta.homepage = "https://github.com/nvim-orgmode/orgmode/";
   };
@@ -6227,12 +6347,12 @@ final: prev:
 
   plenary-nvim = buildNeovimPluginFrom2Nix {
     pname = "plenary.nvim";
-    version = "2022-09-17";
+    version = "2022-10-01";
     src = fetchFromGitHub {
       owner = "nvim-lua";
       repo = "plenary.nvim";
-      rev = "62dc2a7acd2fb2581871a36c1743b29e26c60390";
-      sha256 = "1qrdv9as2h591rgv47irz374rwndv0jgaia5a7x931j6j8zr0kkp";
+      rev = "4b7e52044bbb84242158d977a50c4cbcd85070c7";
+      sha256 = "11815h0h2mf5ym282ghk7xav90635r88qbgaflpgbyk2banl31wl";
     };
     meta.homepage = "https://github.com/nvim-lua/plenary.nvim/";
   };
@@ -6421,12 +6541,12 @@ final: prev:
 
   rainbow = buildVimPluginFrom2Nix {
     pname = "rainbow";
-    version = "2021-11-15";
+    version = "2022-10-08";
     src = fetchFromGitHub {
       owner = "luochen1990";
       repo = "rainbow";
-      rev = "c18071e5c7790928b763c2e88c487dfc93d84a15";
-      sha256 = "1m691f3w1zraam4cmq0sj9a86bmd7g1bhirrzqy5mg089x6n3rdc";
+      rev = "61f719aebe0dc5c3048330c50db72cfee1afdd34";
+      sha256 = "0q6ynkv08b4rlns6gzrkwxrihykpadcrln8ckbcwmsv97injhxws";
     };
     meta.homepage = "https://github.com/luochen1990/rainbow/";
   };
@@ -6517,12 +6637,12 @@ final: prev:
 
   registers-nvim = buildVimPluginFrom2Nix {
     pname = "registers.nvim";
-    version = "2022-08-16";
+    version = "2022-10-03";
     src = fetchFromGitHub {
       owner = "tversteeg";
       repo = "registers.nvim";
-      rev = "23f9efc71cc7aa42a44df8a2f20f6812f6c54abf";
-      sha256 = "0aj4mx8riiclaccii1y0yzkp6kkkcfvjqgvkkkvr93ywncrfc6h9";
+      rev = "29af8cd89822d4eeadbd3410bcb0c6ae1ce83307";
+      sha256 = "06xilrcsya49p59bnyg1958ipa2avzjavnih9md0h89ks3k93rs7";
     };
     meta.homepage = "https://github.com/tversteeg/registers.nvim/";
   };
@@ -6637,12 +6757,12 @@ final: prev:
 
   rust-vim = buildVimPluginFrom2Nix {
     pname = "rust.vim";
-    version = "2021-10-05";
+    version = "2022-09-28";
     src = fetchFromGitHub {
       owner = "rust-lang";
       repo = "rust.vim";
-      rev = "4aa69b84c8a58fcec6b6dad6fe244b916b1cf830";
-      sha256 = "07nh8gvkwq91i7qcz0rk5jlc8sb4d3af4zq2892kmmw576zg1wd8";
+      rev = "1cdc5cb4bd061bc30b502e07321682b5a4396dca";
+      sha256 = "1xklq4g6dvqd3a5msnrir899hzqmjkscpb8bq9wd4fi3ivmjjjgg";
     };
     meta.homepage = "https://github.com/rust-lang/rust.vim/";
   };
@@ -6890,12 +7010,12 @@ final: prev:
 
   space-vim = buildVimPluginFrom2Nix {
     pname = "space-vim";
-    version = "2022-08-03";
+    version = "2022-09-29";
     src = fetchFromGitHub {
       owner = "liuchengxu";
       repo = "space-vim";
-      rev = "f1465f4c586962cec9231e237f1d6c15b9156a98";
-      sha256 = "0qq4g2kldg3hjv5g18na0r2442vg5xa52fs0h004908prnwdsnjr";
+      rev = "ad92c42f97c2cb495c34b83f43d91b3d6cfdfa4e";
+      sha256 = "1ijzvnj3hff2c0kilqlb2gwv7l141p61176xv4nz5r4v9knqgl5s";
     };
     meta.homepage = "https://github.com/liuchengxu/space-vim/";
   };
@@ -6999,12 +7119,12 @@ final: prev:
 
   sqlite-lua = buildVimPluginFrom2Nix {
     pname = "sqlite.lua";
-    version = "2022-07-23";
+    version = "2022-10-01";
     src = fetchFromGitHub {
       owner = "kkharji";
       repo = "sqlite.lua";
-      rev = "56c5aacd5e31496d9b3cd3d1b0e570bb9a65d35b";
-      sha256 = "1yx3bar8gsapaka0x9bkm5d7frzz3k1kpwbc7n110f5x3cirf1yx";
+      rev = "47685f0adb89928fc1b2a9b812418680f29aaf27";
+      sha256 = "03l86sr766kpggxxk97rc3fy6j4igsprsh19wdq8mzk119nmww0i";
     };
     meta.homepage = "https://github.com/kkharji/sqlite.lua/";
   };
@@ -7035,12 +7155,12 @@ final: prev:
 
   stabilize-nvim = buildVimPluginFrom2Nix {
     pname = "stabilize.nvim";
-    version = "2022-07-09";
+    version = "2022-10-06";
     src = fetchFromGitHub {
       owner = "luukvbaal";
       repo = "stabilize.nvim";
-      rev = "f7c4d93d6822df1770a90b7fdb46f6df5c94052e";
-      sha256 = "01ngpjnpppazq4dqfwrdc2jkgz5ikpxkscsy0gc89lyi4q2srpai";
+      rev = "34069870a8e72632c5447188e638e1c6bfebc353";
+      sha256 = "0ik3p1p3wndclw7a72rx507fzk6d9zv6b75lahd0sp9ra9xhzc86";
     };
     meta.homepage = "https://github.com/luukvbaal/stabilize.nvim/";
   };
@@ -7083,12 +7203,12 @@ final: prev:
 
   substrata-nvim = buildVimPluginFrom2Nix {
     pname = "substrata.nvim";
-    version = "2022-06-21";
+    version = "2022-10-07";
     src = fetchFromGitHub {
       owner = "kvrohit";
       repo = "substrata.nvim";
-      rev = "aea8143ceab98ffcb02934773cc3b4249425f76c";
-      sha256 = "07jjywqmcnll82hnibdrs42i148whn1x6l9dp2wr52kskq1419l2";
+      rev = "e3b2b69ce597e8d17767a41d8db45b15178a0b45";
+      sha256 = "0vw1s46fzqxd8mrqhb1azk6sks9bpacgczmyaki8g47i1adbs8cq";
     };
     meta.homepage = "https://github.com/kvrohit/substrata.nvim/";
   };
@@ -7119,12 +7239,12 @@ final: prev:
 
   surround-nvim = buildVimPluginFrom2Nix {
     pname = "surround.nvim";
-    version = "2022-02-22";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "ur4ltz";
       repo = "surround.nvim";
-      rev = "633068182cf894480341b992445f0f0d2883721d";
-      sha256 = "0mqg4vki23rs0rj6zyfkd1ki9wndjifp0lmnnw99x3i1qc0ba47i";
+      rev = "36c253d6470910692491b13382f54c9bab2811e1";
+      sha256 = "0bjv399gw0gkpfqclmv65viwi34il5zn5kx9zplnkq5r0734l3nw";
     };
     meta.homepage = "https://github.com/ur4ltz/surround.nvim/";
   };
@@ -7143,12 +7263,12 @@ final: prev:
 
   swayconfig-vim = buildVimPluginFrom2Nix {
     pname = "swayconfig.vim";
-    version = "2022-09-21";
+    version = "2022-10-05";
     src = fetchFromGitHub {
       owner = "jamespeapen";
       repo = "swayconfig.vim";
-      rev = "5369682267a826a1717c1331ea5f90c19d5ff64d";
-      sha256 = "017kj74lm935bi5sxg4gm32b0jq2wmfck65cjyhmxyyy8mcwi24c";
+      rev = "30014a34d0ab46f26311f47c1c11ba0b9166f1d5";
+      sha256 = "03jw3w80zgmql8ngs8s1j8digwkn7206psklmcnmc1p2drb2d3pf";
     };
     meta.homepage = "https://github.com/jamespeapen/swayconfig.vim/";
   };
@@ -7373,12 +7493,12 @@ final: prev:
 
   telescope-coc-nvim = buildVimPluginFrom2Nix {
     pname = "telescope-coc.nvim";
-    version = "2022-08-27";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "fannheyward";
       repo = "telescope-coc.nvim";
-      rev = "f1e5a5129129e2dd69f1d3f3df0dd8956903a963";
-      sha256 = "1jhif6vi7n5kvn4xfz11ahy0a37dzkjq0scc3iiah9ad5nydmykx";
+      rev = "da487dfd41266a0b5507a310da684ef3a3bfdb68";
+      sha256 = "1lnang3qn861z0p657aa8r7w6d1v6qn86gdwg7di11dgc5vljfh4";
     };
     meta.homepage = "https://github.com/fannheyward/telescope-coc.nvim/";
   };
@@ -7409,12 +7529,12 @@ final: prev:
 
   telescope-frecency-nvim = buildVimPluginFrom2Nix {
     pname = "telescope-frecency.nvim";
-    version = "2022-09-06";
+    version = "2022-09-27";
     src = fetchFromGitHub {
       owner = "nvim-telescope";
       repo = "telescope-frecency.nvim";
-      rev = "d51c7631dcc0f598692676f554c4e79d7596d541";
-      sha256 = "03mjzlk28igjjwln61r8g4xz972ps7yfhdxgs4fh3b2m08gqkdnd";
+      rev = "9634c3508c6565284065ec011476204ce13f354a";
+      sha256 = "1d0d9lwrpxqhvjn1r4jd1dnmra48jabjjbhi35sw41iw1v5v3al3";
     };
     meta.homepage = "https://github.com/nvim-telescope/telescope-frecency.nvim/";
   };
@@ -7494,12 +7614,12 @@ final: prev:
 
   telescope-project-nvim = buildVimPluginFrom2Nix {
     pname = "telescope-project.nvim";
-    version = "2022-09-16";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "nvim-telescope";
       repo = "telescope-project.nvim";
-      rev = "91e9a9737b8522b5a4ecbd8464504da35a1e96cd";
-      sha256 = "1nlamiyswmkx39m61lqnazdkak6vk6wyv6izl0g5k9g0ribdcjiw";
+      rev = "ff4d3cea905383a67d1a47b9dd210c4907d858c2";
+      sha256 = "16byj7gcyxpn837x096a074vpj67drbd5ndcfpkvp1xyam9604b4";
     };
     meta.homepage = "https://github.com/nvim-telescope/telescope-project.nvim/";
   };
@@ -7578,16 +7698,28 @@ final: prev:
 
   telescope-nvim = buildVimPluginFrom2Nix {
     pname = "telescope.nvim";
-    version = "2022-09-17";
+    version = "2022-10-09";
     src = fetchFromGitHub {
       owner = "nvim-telescope";
       repo = "telescope.nvim";
-      rev = "30e2dc5232d0dd63709ef8b44a5d6184005e8602";
-      sha256 = "1nn6gpmaw8qdx3qf89sjayhhh31x80h52dprxdllyyj0n79a10w4";
+      rev = "f174a0367b4fc7cb17710d867e25ea792311c418";
+      sha256 = "1hra6vrr25xan0xwjc76m14ml6hwrm7nx2wapl44zx3m29hwfasx";
     };
     meta.homepage = "https://github.com/nvim-telescope/telescope.nvim/";
   };
 
+  template-string-nvim = buildVimPluginFrom2Nix {
+    pname = "template-string.nvim";
+    version = "2022-08-18";
+    src = fetchFromGitHub {
+      owner = "axelvc";
+      repo = "template-string.nvim";
+      rev = "84e50b878caa92100c65deec12ccb41aa4ef3fae";
+      sha256 = "1ibz9vpqy0lck8pxzr3bikrw3zcrrw0nx5kz53a5n38qrb4l95gg";
+    };
+    meta.homepage = "https://github.com/axelvc/template-string.nvim/";
+  };
+
   tender-vim = buildVimPluginFrom2Nix {
     pname = "tender.vim";
     version = "2021-05-24";
@@ -7722,12 +7854,12 @@ final: prev:
 
   todo-comments-nvim = buildVimPluginFrom2Nix {
     pname = "todo-comments.nvim";
-    version = "2022-09-17";
+    version = "2022-10-02";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "todo-comments.nvim";
-      rev = "02eb3019786d9083b93ab9457761899680c6f3ec";
-      sha256 = "1p8gyi405knrb0rf9nqzy4d1ginhamrgsg4nz5x73bjxjf4klmg6";
+      rev = "8df75dbb9ddd78a378b9661f25f0b193f38f06dd";
+      sha256 = "149rq2w65gqi3972bwsp243qkflkyj2aqc4gc561kj9rkspqh82x";
     };
     meta.homepage = "https://github.com/folke/todo-comments.nvim/";
   };
@@ -7771,12 +7903,12 @@ final: prev:
 
   tokyonight-nvim = buildVimPluginFrom2Nix {
     pname = "tokyonight.nvim";
-    version = "2022-09-24";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "tokyonight.nvim";
-      rev = "81f0db1bd0b7f4eb8eb9e81c4b4f12b878cefb10";
-      sha256 = "0msaz7lh6x2dcgwrxjw1dxrbwh09qx87mcqnhx2hlwy5b10apvmf";
+      rev = "23c0038166800d373f3ec41e56768212aa3aaa2f";
+      sha256 = "1zz54cq4ls4kb74pjxpy1afzckw5m3q92r1gr83l36i7yn5w0h61";
     };
     meta.homepage = "https://github.com/folke/tokyonight.nvim/";
   };
@@ -7903,24 +8035,24 @@ final: prev:
 
   ultisnips = buildVimPluginFrom2Nix {
     pname = "ultisnips";
-    version = "2022-08-13";
+    version = "2022-10-02";
     src = fetchFromGitHub {
       owner = "SirVer";
       repo = "ultisnips";
-      rev = "4f5249b2a6f6308377cb2bf734974a4e6f8a960e";
-      sha256 = "0zaiyv63hzk1vaa9xd317zs0s2x1d9rbjam13g7qsm2i3lip6n65";
+      rev = "e99fdf15cd55a4a8e0cb0a80a6810c1867a5c401";
+      sha256 = "1ym6myhxq4z9h6nnh1dxvkqc4nbhq500wy4mj494lm2hz6nnhl09";
     };
     meta.homepage = "https://github.com/SirVer/ultisnips/";
   };
 
   undotree = buildVimPluginFrom2Nix {
     pname = "undotree";
-    version = "2022-09-10";
+    version = "2022-10-08";
     src = fetchFromGitHub {
       owner = "mbbill";
       repo = "undotree";
-      rev = "bf76bf2d1a097cda024699738286fa81fb6529ac";
-      sha256 = "0993pydpn62z6k7f9msd5d3xaks8ij2sg10xrzawd6n3s35n77lh";
+      rev = "bd60cb564e3c3220b35293679669bb77af5f389d";
+      sha256 = "0w05yhyjh6j7gcdfghvbjylc64wba42fagnj4bxk1lbcqvnnzxc8";
     };
     meta.homepage = "https://github.com/mbbill/undotree/";
   };
@@ -7951,12 +8083,12 @@ final: prev:
 
   urlview-nvim = buildVimPluginFrom2Nix {
     pname = "urlview.nvim";
-    version = "2022-09-25";
+    version = "2022-10-06";
     src = fetchFromGitHub {
       owner = "axieax";
       repo = "urlview.nvim";
-      rev = "da852a2d7e2aabae6d60178267d175d02c3396e2";
-      sha256 = "0v4ahqalwrj076jp7kg52hk2cididihbgkzq1z6i1f86vnm69kv8";
+      rev = "b60eb8f5f5257778645d9472d666853e1b86cc66";
+      sha256 = "00zp7w77glgzdncr95d5k7k8cd3b46m3kpsn77ya96yhb25g8i7w";
     };
     meta.homepage = "https://github.com/axieax/urlview.nvim/";
   };
@@ -8023,12 +8155,12 @@ final: prev:
 
   vifm-vim = buildVimPluginFrom2Nix {
     pname = "vifm.vim";
-    version = "2022-09-21";
+    version = "2022-10-06";
     src = fetchFromGitHub {
       owner = "vifm";
       repo = "vifm.vim";
-      rev = "90eeb664a73c640fbc6304855d1a153687ae583f";
-      sha256 = "1dyck2icfn4mdjlj4sz7458qsb4ilfp7244054qpzyxmxyf0ihma";
+      rev = "c40fd7de27b527e018d7ff5bb0191d94b5e54bcc";
+      sha256 = "1s63pcp8n33ajl18m2j49i3pskda376mwjdcyiw6wgvaz8sfzj7w";
     };
     meta.homepage = "https://github.com/vifm/vifm.vim/";
   };
@@ -8359,12 +8491,12 @@ final: prev:
 
   vim-airline = buildVimPluginFrom2Nix {
     pname = "vim-airline";
-    version = "2022-09-26";
+    version = "2022-09-29";
     src = fetchFromGitHub {
       owner = "vim-airline";
       repo = "vim-airline";
-      rev = "78abec3b83b5fb1bef51fcdddbcbebd7d4293685";
-      sha256 = "0ifd90mb1ysry9cpsimd7x2i2q63y17ragwv2rvvxppb4q7kkbdq";
+      rev = "46dd87223757619a0a7fb0b075e2cf7d23ea899d";
+      sha256 = "0xcv66ic68hgiw5cqdfbnimqdya7hg3zbrrzafgvfx6v468kgy96";
     };
     meta.homepage = "https://github.com/vim-airline/vim-airline/";
   };
@@ -8743,12 +8875,12 @@ final: prev:
 
   vim-clap = buildVimPluginFrom2Nix {
     pname = "vim-clap";
-    version = "2022-09-25";
+    version = "2022-10-08";
     src = fetchFromGitHub {
       owner = "liuchengxu";
       repo = "vim-clap";
-      rev = "5cd460ca66a734824d35e95f51750858bce1dc1c";
-      sha256 = "1521kv2fcay1kx9zyvcwrd1cj85y0slicpj04dhhnvc9my97ydpa";
+      rev = "bebf5bec5f497af5e299ea162087c443ed96c003";
+      sha256 = "15bg1bqxskx9ji7w7id1ri5r1xlkcdih9bpfv7gpfm95ifkd8ss2";
     };
     meta.homepage = "https://github.com/liuchengxu/vim-clap/";
   };
@@ -9031,12 +9163,12 @@ final: prev:
 
   vim-dadbod-ui = buildVimPluginFrom2Nix {
     pname = "vim-dadbod-ui";
-    version = "2022-09-26";
+    version = "2022-09-28";
     src = fetchFromGitHub {
       owner = "kristijanhusak";
       repo = "vim-dadbod-ui";
-      rev = "dec7689004dcf6e5a3a4efd2a55944f7d43aed40";
-      sha256 = "0w0k5m3lb29ack7kh8yb1h58r2jc3ygnjywf6v7m7z91py933c40";
+      rev = "29ffd51107bff410f9fa667575541e253f4099a1";
+      sha256 = "0ibknwr8lc58aggblndr7zm5qjb6nspxcmqad2b8whaxs9176a3h";
     };
     meta.homepage = "https://github.com/kristijanhusak/vim-dadbod-ui/";
   };
@@ -9067,12 +9199,12 @@ final: prev:
 
   vim-devicons = buildVimPluginFrom2Nix {
     pname = "vim-devicons";
-    version = "2022-01-10";
+    version = "2022-10-01";
     src = fetchFromGitHub {
       owner = "ryanoasis";
       repo = "vim-devicons";
-      rev = "a2258658661e42dd4cdba4958805dbad1fe29ef4";
-      sha256 = "044aim36332ss5zlv8vxww8gqv0pldmn3nw08msldkfxmi86ybbd";
+      rev = "71f239af28b7214eebb60d4ea5bd040291fb7e33";
+      sha256 = "0kshppxgi63wn96a8h9zv7drwqcbljin5jhszh8q7pqw2xsd83gn";
     };
     meta.homepage = "https://github.com/ryanoasis/vim-devicons/";
   };
@@ -9307,12 +9439,12 @@ final: prev:
 
   vim-erlang-runtime = buildVimPluginFrom2Nix {
     pname = "vim-erlang-runtime";
-    version = "2022-09-16";
+    version = "2022-10-02";
     src = fetchFromGitHub {
       owner = "vim-erlang";
       repo = "vim-erlang-runtime";
-      rev = "6dc03035315a5d694c8e5bd852937784766b7904";
-      sha256 = "0n6wm3pydc08ryvqkhs98lszqaxql975w9smlzr55h3a9xmyj7p6";
+      rev = "f7d4bbdcff675000d4345d9834cc7d825a84ed3f";
+      sha256 = "0b4f2jwsbsbysg364pslw8c94nvh5q2clfxfnz3lqrkkl1cpr3cs";
     };
     meta.homepage = "https://github.com/vim-erlang/vim-erlang-runtime/";
   };
@@ -9571,12 +9703,12 @@ final: prev:
 
   vim-gist = buildVimPluginFrom2Nix {
     pname = "vim-gist";
-    version = "2021-11-04";
+    version = "2022-10-09";
     src = fetchFromGitHub {
       owner = "mattn";
       repo = "vim-gist";
-      rev = "34e0f0aad5cc21cb3087a5d92ae1aa108019ecda";
-      sha256 = "1dlsml47nh2mdllahh2nicnpqxk271p62cp3xsjd4dbbr0lallds";
+      rev = "5bfbb5450d9eff248f6c074de0b7800392439304";
+      sha256 = "00yvl59jbblkif4967kdg6b0mr0hd7rnr5mkxnb4n74akj9pwcf0";
     };
     meta.homepage = "https://github.com/mattn/vim-gist/";
   };
@@ -9968,12 +10100,12 @@ final: prev:
 
   vim-illuminate = buildVimPluginFrom2Nix {
     pname = "vim-illuminate";
-    version = "2022-09-21";
+    version = "2022-10-04";
     src = fetchFromGitHub {
       owner = "RRethy";
       repo = "vim-illuminate";
-      rev = "a2e8476af3f3e993bb0d6477438aad3096512e42";
-      sha256 = "1wk0gxvljzl6c0vrwb99mvxj755ck1c6jhvn16r1d68kva1f0nkj";
+      rev = "0603e75fc4ecde1ee5a1b2fc8106ed6704f34d14";
+      sha256 = "01361ss6g7kcap7hjma9ij8xa75zlvy878s4p7r5sxxbdwwpqarg";
     };
     meta.homepage = "https://github.com/RRethy/vim-illuminate/";
   };
@@ -10281,12 +10413,12 @@ final: prev:
 
   vim-ledger = buildVimPluginFrom2Nix {
     pname = "vim-ledger";
-    version = "2022-08-12";
+    version = "2022-09-30";
     src = fetchFromGitHub {
       owner = "ledger";
       repo = "vim-ledger";
-      rev = "519befb7004bf3a66a3ddfdc2d431b0bd360dc97";
-      sha256 = "0dg23ayi191xjvhyyb52byjvl731xrrf9255h3qci7hi3p20jkcy";
+      rev = "212e3aa210c9f0965e4b234653a08fd3aa525470";
+      sha256 = "1vbkm5rs0n9hhcv462ldrf3acx4q170fgzzp44444dmxd7w2pgf9";
     };
     meta.homepage = "https://github.com/ledger/vim-ledger/";
   };
@@ -10401,12 +10533,12 @@ final: prev:
 
   vim-lsp = buildVimPluginFrom2Nix {
     pname = "vim-lsp";
-    version = "2022-09-27";
+    version = "2022-10-09";
     src = fetchFromGitHub {
       owner = "prabirshrestha";
       repo = "vim-lsp";
-      rev = "8fdaf4f78c94c6abba06a907520a5de157c5803b";
-      sha256 = "0cm3vf84hvvi13v4239j3m24p6dzclv7y4061wyh6sdf7cdx6dqq";
+      rev = "23728ad8c5becd2641ac7fb7e995b36295d2544e";
+      sha256 = "026blks2bljynrw1xg8wmxz1ikr0f819ih0635bxwp8ah9dkfqzc";
     };
     meta.homepage = "https://github.com/prabirshrestha/vim-lsp/";
   };
@@ -10510,12 +10642,12 @@ final: prev:
 
   vim-matchup = buildVimPluginFrom2Nix {
     pname = "vim-matchup";
-    version = "2022-09-21";
+    version = "2022-10-01";
     src = fetchFromGitHub {
       owner = "andymass";
       repo = "vim-matchup";
-      rev = "80ad7817e58755a602f993163f61f3500978ebe5";
-      sha256 = "1q001rwqp04nl09xl32c328vbbdmm9n51i3a8wszqpz3blp4jl3s";
+      rev = "3fa1b2283e957784922fe891de361a2342b90bca";
+      sha256 = "0x86wmph3pb4bkqddb1zm381q9214hvf7cq9ydch4hjbx0vmbjwi";
     };
     meta.homepage = "https://github.com/andymass/vim-matchup/";
   };
@@ -10534,12 +10666,12 @@ final: prev:
 
   vim-merginal = buildVimPluginFrom2Nix {
     pname = "vim-merginal";
-    version = "2022-07-26";
+    version = "2022-10-04";
     src = fetchFromGitHub {
       owner = "idanarye";
       repo = "vim-merginal";
-      rev = "436076b9f2daa805948fa054a24e3b519f6fc089";
-      sha256 = "1gcc35pp44sm632nqa14hg9d8ymfrfs9sd62gzjkygjbyz9c8nc1";
+      rev = "e8740401cdec9199f4676c5a640a785ec094258b";
+      sha256 = "09rmmqq9a3xjcplw69kxsqbv3bpdkw1zvdiiihl499vafwrhky6w";
     };
     meta.homepage = "https://github.com/idanarye/vim-merginal/";
   };
@@ -10606,12 +10738,12 @@ final: prev:
 
   vim-mucomplete = buildVimPluginFrom2Nix {
     pname = "vim-mucomplete";
-    version = "2022-05-25";
+    version = "2022-09-28";
     src = fetchFromGitHub {
       owner = "lifepillar";
       repo = "vim-mucomplete";
-      rev = "71269817dd8f5a9122ae40891bb116050cadbf89";
-      sha256 = "1f0rjxb7x6haz96j3wqrayk972k6g8kw4c40m3rcfhp2bxsn1g9m";
+      rev = "03bcd4a7dfe0a2f6d432e8ce936d35273a15209d";
+      sha256 = "04vqya8dsphxia5j080ir7jk61jak2gc6xhg810wwxql4zls3fs1";
     };
     meta.homepage = "https://github.com/lifepillar/vim-mucomplete/";
   };
@@ -11290,12 +11422,12 @@ final: prev:
 
   vim-qml = buildVimPluginFrom2Nix {
     pname = "vim-qml";
-    version = "2020-11-03";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "peterhoeg";
       repo = "vim-qml";
-      rev = "50d2e737094c146195171b7d52e522384f15afe8";
-      sha256 = "1iz2l51c15ijkpzyk5qwmd8y0yy2z8f1jwxcwk16h63g4nmfm1zr";
+      rev = "92cd291bc3d59126ef771dfaad5f2506636104c7";
+      sha256 = "1pabhpsikss4cr439yikwl7lnq5bahzs22xmv9icp3fz921c67bh";
     };
     meta.homepage = "https://github.com/peterhoeg/vim-qml/";
   };
@@ -11542,12 +11674,12 @@ final: prev:
 
   vim-sexp-mappings-for-regular-people = buildVimPluginFrom2Nix {
     pname = "vim-sexp-mappings-for-regular-people";
-    version = "2020-01-16";
+    version = "2022-10-04";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-sexp-mappings-for-regular-people";
-      rev = "7c3de2f13422fb4b62b4c34a660532c7b3d240c7";
-      sha256 = "0malswal9hnbq2wf1rx2lp1r69wpwsvyhgi46xbg079x2n857bmj";
+      rev = "ffe645ff61e22d0b7c282d53b8745be4298104e6";
+      sha256 = "1g0zi26lppgp35f9q12484c00q7yj58d7wrpfs57v4six02292dc";
     };
     meta.homepage = "https://github.com/tpope/vim-sexp-mappings-for-regular-people/";
   };
@@ -11614,24 +11746,24 @@ final: prev:
 
   vim-sleuth = buildVimPluginFrom2Nix {
     pname = "vim-sleuth";
-    version = "2022-04-28";
+    version = "2022-10-06";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-sleuth";
-      rev = "1d25e8e5dc4062e38cab1a461934ee5e9d59e5a8";
-      sha256 = "1nb90zm9jc2mq5fxbxifrmhkpjs3a5y68amr3f99rxfd0197jxcs";
+      rev = "8332f123a63c739c870c96907d987cc3ff719d24";
+      sha256 = "15aln4mb82d2k67brgh6xq8nx9rn9ymy3a2ciwwjnxawzjs2pbpg";
     };
     meta.homepage = "https://github.com/tpope/vim-sleuth/";
   };
 
   vim-slime = buildVimPluginFrom2Nix {
     pname = "vim-slime";
-    version = "2022-08-30";
+    version = "2022-10-08";
     src = fetchFromGitHub {
       owner = "jpalardy";
       repo = "vim-slime";
-      rev = "c959072d38fabb36cd5371439aaba0b692fb0b73";
-      sha256 = "1chq7ppyv7djjsamj7a05dx3zs5ic3nr0wvvc8qfswx1i9lrjhys";
+      rev = "9cdd180a6056e8ae0c7d3581313344b9a3e8e7e8";
+      sha256 = "02f8lmyrp60myj624aqgdqg91l19rfs32gds3d2y411w0p77kzbl";
     };
     meta.homepage = "https://github.com/jpalardy/vim-slime/";
   };
@@ -11710,12 +11842,12 @@ final: prev:
 
   vim-snippets = buildVimPluginFrom2Nix {
     pname = "vim-snippets";
-    version = "2022-09-12";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "honza";
       repo = "vim-snippets";
-      rev = "faaa499189c4ee3fe13860e675e2370d55e3e5dd";
-      sha256 = "11zhff8l3r60jcmmvy7yv5dxz661ggv7sjs8gca5xw9m63d9v3z1";
+      rev = "9a7f3968c92c6589d3a12aa5448e8374c8d68a42";
+      sha256 = "15bqw0l78s8v2l44j4h64lvs7456h5l0dy46kxas095jrjg9aqnw";
     };
     meta.homepage = "https://github.com/honza/vim-snippets/";
   };
@@ -11746,12 +11878,12 @@ final: prev:
 
   vim-speeddating = buildVimPluginFrom2Nix {
     pname = "vim-speeddating";
-    version = "2021-04-29";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-speeddating";
-      rev = "95da3d72efc91a5131acf388eafa4b1ad6512a9b";
-      sha256 = "1al53c1x2bnnf0nnn7319jxq7bphaxdcnb5i7qa86m337jb2wqrp";
+      rev = "5a36fd29df63ea3f65562bd2bb837be48a5ec90b";
+      sha256 = "0zwhynknkcf9zpsl7ddsrihh351fy9k75ylfrzzl222i88g17d14";
     };
     meta.homepage = "https://github.com/tpope/vim-speeddating/";
   };
@@ -11951,12 +12083,12 @@ final: prev:
 
   vim-test = buildVimPluginFrom2Nix {
     pname = "vim-test";
-    version = "2022-09-22";
+    version = "2022-09-29";
     src = fetchFromGitHub {
       owner = "vim-test";
       repo = "vim-test";
-      rev = "8e2d3f55fdf315903a59cfa9ee60bac283a5f7fa";
-      sha256 = "0fnjgalxgyjzy5c5j20zvla1c645hgf2d5mqinz397xxss672mfm";
+      rev = "e7150de777ef0c81a015972e4feb56c4b3137efd";
+      sha256 = "03jc3jf4znhknvw90iqyn4jpwm13fc3w0nw4vllggwxzvihha1hv";
     };
     meta.homepage = "https://github.com/vim-test/vim-test/";
   };
@@ -12131,24 +12263,24 @@ final: prev:
 
   vim-tpipeline = buildVimPluginFrom2Nix {
     pname = "vim-tpipeline";
-    version = "2022-09-26";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "vimpostor";
       repo = "vim-tpipeline";
-      rev = "c9a050e10d95461e344f7908fdb5e2d93156601a";
-      sha256 = "1xz5ycnai7iy94xiq1xp1l1c66g0p39pndb09bkxmfxrdqi8pmyd";
+      rev = "58daf4b1927c4c4fa5377f7527a2d13d06a044f7";
+      sha256 = "1k91q2i7pv1yx1mdcwhagwvpi294zbwngvd63xv1wfkwkyi32jcj";
     };
     meta.homepage = "https://github.com/vimpostor/vim-tpipeline/";
   };
 
   vim-trailing-whitespace = buildVimPluginFrom2Nix {
     pname = "vim-trailing-whitespace";
-    version = "2020-11-18";
+    version = "2022-10-07";
     src = fetchFromGitHub {
       owner = "bronson";
       repo = "vim-trailing-whitespace";
-      rev = "05f068ebd9dbdf71d2d334d02abd99deb0311c40";
-      sha256 = "1bh15yw2aysvpn2ndnc0s6jzc0y93x6q1blc5pph67rdix5bm7gy";
+      rev = "907174052a504e60e9b915f5c083ee5f6e067080";
+      sha256 = "07jsgsv4j1zcxizl9wflib68rrp61zpxzy89yzak4b1lyxnl66s9";
     };
     meta.homepage = "https://github.com/bronson/vim-trailing-whitespace/";
   };
@@ -12299,12 +12431,12 @@ final: prev:
 
   vim-vsnip = buildVimPluginFrom2Nix {
     pname = "vim-vsnip";
-    version = "2022-04-22";
+    version = "2022-10-07";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "vim-vsnip";
-      rev = "8f199ef690ed26dcbb8973d9a6760d1332449ac9";
-      sha256 = "1d9wr97a02j717sbh55xk7xam6d97l5ggi0ymc67q64hrq8nsaai";
+      rev = "b2caf50a6e3c021c92b236abff70bbb467bce24f";
+      sha256 = "0dccl6rqvkj7vlx25s7ja5p0nsxzryabd1hpj16r9dnsvklzs1wq";
     };
     meta.homepage = "https://github.com/hrsh7th/vim-vsnip/";
   };
@@ -12623,12 +12755,12 @@ final: prev:
 
   vimspector = buildVimPluginFrom2Nix {
     pname = "vimspector";
-    version = "2022-09-23";
+    version = "2022-10-09";
     src = fetchFromGitHub {
       owner = "puremourning";
       repo = "vimspector";
-      rev = "46c280d2fb9b329ae8dec8c1e520cab3a3d5b743";
-      sha256 = "158yiba4hnai1fk8yq0dz6rmrhy17h8rb8gkaajac2b5c8f823f2";
+      rev = "90c8b7de334ee778c99eaafee41105808e363f81";
+      sha256 = "0hgasj2sr5kh4c70rwgzn2cfpw8vc61m82jjhis15a6bdl2jqw4a";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/puremourning/vimspector/";
@@ -12636,12 +12768,12 @@ final: prev:
 
   vimtex = buildVimPluginFrom2Nix {
     pname = "vimtex";
-    version = "2022-09-26";
+    version = "2022-10-03";
     src = fetchFromGitHub {
       owner = "lervag";
       repo = "vimtex";
-      rev = "f72d835b40946a2c934f9cb775dc2d6b1eae0b66";
-      sha256 = "0828792i2kjjd8yvc3xj7206klhb8i82n1l2flzkl2r4asdncjd7";
+      rev = "06ae45a2aa9fdee5d479b2ccd1be145d225852e2";
+      sha256 = "086qima9v821raw2mbm3wxkfj5l58mwwlbgjnnx5sz9msw7qg7dc";
     };
     meta.homepage = "https://github.com/lervag/vimtex/";
   };
@@ -12766,6 +12898,18 @@ final: prev:
     meta.homepage = "https://github.com/gcmt/wildfire.vim/";
   };
 
+  windows-nvim = buildVimPluginFrom2Nix {
+    pname = "windows.nvim";
+    version = "2022-09-28";
+    src = fetchFromGitHub {
+      owner = "anuvyklack";
+      repo = "windows.nvim";
+      rev = "e3a1217976d4ec8d2515cb634dbf5d26cabd46d5";
+      sha256 = "1wpbspyjxcdvvbdysk0982wg24fy0p47df6c8d9rs2dmzb9zghv3";
+    };
+    meta.homepage = "https://github.com/anuvyklack/windows.nvim/";
+  };
+
   winshift-nvim = buildVimPluginFrom2Nix {
     pname = "winshift.nvim";
     version = "2022-09-06";
@@ -12961,12 +13105,12 @@ final: prev:
 
   catppuccin-nvim = buildVimPluginFrom2Nix {
     pname = "catppuccin-nvim";
-    version = "2022-09-27";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "catppuccin";
       repo = "nvim";
-      rev = "ef90176bb55fb71da491c4b6c098986c22f1d8e5";
-      sha256 = "145m98vihgy8qpgdsxqqcv66m804i8ysf30flck896rfz492dqy6";
+      rev = "9991ede2bc5714abfdca7eaf5b20be429502ffe4";
+      sha256 = "10w5q3v91swm538rczncvpzmph01rvpzvwv3zi5la6hbkz5qab8y";
     };
     meta.homepage = "https://github.com/catppuccin/nvim/";
   };
@@ -12985,12 +13129,12 @@ final: prev:
 
   chad = buildVimPluginFrom2Nix {
     pname = "chad";
-    version = "2022-09-27";
+    version = "2022-10-10";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "chadtree";
-      rev = "7cd1f0acb516f031648d5e93d9abf56c025cc82a";
-      sha256 = "1y9jk7pqgbdjiinx9sx7hibxah9rxaq4nfjr8mxg6w04jacwdmn7";
+      rev = "caab879af5f52cdfc673ebd2aff2fb099cf538e1";
+      sha256 = "0rb89dlil2lv8cf7x2vsqfvh0ba7mr5rfwyzx8ln7h8bj56hnx5i";
     };
     meta.homepage = "https://github.com/ms-jpq/chadtree/";
   };
@@ -13057,12 +13201,12 @@ final: prev:
 
   rose-pine = buildVimPluginFrom2Nix {
     pname = "rose-pine";
-    version = "2022-09-20";
+    version = "2022-10-03";
     src = fetchFromGitHub {
       owner = "rose-pine";
       repo = "neovim";
-      rev = "3723a16f99955ab274777cc27323b75f2515420f";
-      sha256 = "1mx6vkii6rhi7lv5l50kc7rqmi9rxvhw9bm7i8450d0258c987ak";
+      rev = "69dca24ba7f8e74f1e6f0bacbc93481ac4047f2e";
+      sha256 = "1n6q7h53zbbybyi219hamagpycasvnnxjgvifsdrxw7825zdnlsy";
     };
     meta.homepage = "https://github.com/rose-pine/neovim/";
   };
diff --git a/pkgs/applications/editors/vim/plugins/overrides.nix b/pkgs/applications/editors/vim/plugins/overrides.nix
index 743c0b99f8a33..850f82f7018ca 100644
--- a/pkgs/applications/editors/vim/plugins/overrides.nix
+++ b/pkgs/applications/editors/vim/plugins/overrides.nix
@@ -53,6 +53,7 @@
 , zsh
 
   # command-t dependencies
+, getconf
 , ruby
 
   # cpsm dependencies
@@ -239,10 +240,11 @@ self: super: {
   };
 
   command-t = super.command-t.overrideAttrs (old: {
-    buildInputs = [ ruby ];
+    nativeBuildInputs = [ getconf ruby ];
     buildPhase = ''
       substituteInPlace lua/wincent/commandt/lib/Makefile \
-        --replace '/bin/bash' 'bash'
+        --replace '/bin/bash' 'bash' \
+        --replace xcrun ""
       make build
       rm ruby/command-t/ext/command-t/*.o
     '';
@@ -357,6 +359,10 @@ self: super: {
     };
   });
 
+  flit-nvim = super.flit-nvim.overrideAttrs (old: {
+    dependencies = with self; [ leap-nvim ];
+  });
+
   forms = super.forms.overrideAttrs (old: {
     dependencies = with self; [ self.self ];
   });
@@ -520,6 +526,10 @@ self: super: {
     dependencies = with self; [ nvim-lspconfig plenary-nvim ];
   });
 
+  leap-ast-nvim = super.leap-ast-nvim.overrideAttrs (old: {
+    dependencies = with self; [ leap-nvim nvim-treesitter ];
+  });
+
   lens-vim = super.lens-vim.overrideAttrs (old: {
     # remove duplicate g:lens#animate in doc/lens.txt
     # https://github.com/NixOS/nixpkgs/pull/105810#issuecomment-740007985
@@ -610,6 +620,10 @@ self: super: {
     dependencies = with self; [ plenary-nvim ];
   });
 
+  noice-nvim = super.noice-nvim.overrideAttrs(old: {
+    dependencies = with self; [ nui-nvim nvim-notify ];
+  });
+
   null-ls-nvim = super.null-ls-nvim.overrideAttrs (old: {
     dependencies = with self; [ plenary-nvim ];
   });
@@ -983,7 +997,7 @@ self: super: {
             libiconv
           ];
 
-          cargoSha256 = "sha256-g5yNqDCN1O9x7/HcM8NsZlMwLudDTuPLE5gSpScNQnY=";
+          cargoSha256 = "sha256-AY14YEdMpHXmiHwEA9hwSwwwJ8hYIomAuIuCJv1OUDw=";
         };
       in
       ''
diff --git a/pkgs/applications/editors/vim/plugins/vim-plugin-names b/pkgs/applications/editors/vim/plugins/vim-plugin-names
index baaeea48ddd76..e7f9251e9b2db 100644
--- a/pkgs/applications/editors/vim/plugins/vim-plugin-names
+++ b/pkgs/applications/editors/vim/plugins/vim-plugin-names
@@ -60,6 +60,7 @@ https://github.com/vmchale/ats-vim/,,
 https://github.com/ray-x/aurora/,,
 https://github.com/hotwatermorning/auto-git-diff/,,
 https://github.com/jiangmiao/auto-pairs/,,
+https://github.com/pocco81/auto-save.nvim/,HEAD,
 https://github.com/rmagatti/auto-session/,,
 https://github.com/vim-scripts/autoload_cscope.vim/,,
 https://github.com/rafi/awesome-vim-colorschemes/,,
@@ -213,6 +214,7 @@ https://github.com/rhysd/devdocs.vim/,,
 https://github.com/vmchale/dhall-vim/,,
 https://github.com/onsails/diaglist.nvim/,,
 https://github.com/nvim-lua/diagnostic-nvim/,,
+https://github.com/monaqa/dial.nvim/,HEAD,
 https://github.com/sindrets/diffview.nvim/,,
 https://github.com/direnv/direnv.vim/,,
 https://github.com/doki-theme/doki-theme-vim/,,
@@ -237,6 +239,7 @@ https://github.com/wincent/ferret/,,
 https://github.com/j-hui/fidget.nvim/,,
 https://github.com/bogado/file-line/,,
 https://github.com/andviro/flake8-vim/,,
+https://github.com/ggandor/flit.nvim/,HEAD,
 https://github.com/ncm2/float-preview.nvim/,,
 https://github.com/fhill2/floating.nvim/,,
 https://github.com/floobits/floobits-neovim/,,
@@ -293,6 +296,7 @@ https://github.com/edluffy/hologram.nvim/,,
 https://github.com/urbit/hoon.vim/,,
 https://github.com/phaazon/hop.nvim/,,
 https://github.com/rktjmp/hotpot.nvim/,,
+https://github.com/anuvyklack/hydra.nvim/,HEAD,
 https://github.com/mboughaba/i3config.vim/,,
 https://github.com/cocopon/iceberg.vim/,,
 https://github.com/idris-hackers/idris-vim/,,
@@ -326,6 +330,8 @@ https://github.com/latex-box-team/latex-box/,,
 https://github.com/kdheepak/lazygit.nvim/,,
 https://github.com/Julian/lean.nvim/,,
 https://github.com/leanprover/lean.vim/,,
+https://github.com/ggandor/leap-ast.nvim/,HEAD,
+https://github.com/ggandor/leap.nvim/,HEAD,
 https://github.com/mrjones2014/legendary.nvim/,HEAD,
 https://github.com/camspiers/lens.vim/,,
 https://github.com/thirtythreeforty/lessspace.vim/,,
@@ -347,6 +353,7 @@ https://github.com/ldelossa/litee-calltree.nvim/,,
 https://github.com/ldelossa/litee-filetree.nvim/,,
 https://github.com/ldelossa/litee-symboltree.nvim/,,
 https://github.com/ldelossa/litee.nvim/,,
+https://github.com/smjonas/live-command.nvim/,HEAD,
 https://github.com/folke/lsp-colors.nvim/,,
 https://github.com/lukas-reineke/lsp-format.nvim/,HEAD,
 https://github.com/lvimuser/lsp-inlayhints.nvim/,HEAD,
@@ -428,6 +435,7 @@ https://github.com/EdenEast/nightfox.nvim/,,
 https://github.com/zah/nim.vim/,,
 https://github.com/tjdevries/nlua.nvim/,,
 https://github.com/mcchrish/nnn.vim/,,
+https://github.com/folke/noice.nvim/,HEAD,
 https://github.com/arcticicestudio/nord-vim/,,
 https://github.com/shaunsingh/nord.nvim/,,
 https://github.com/andersevenrud/nordic.nvim/,,
@@ -460,6 +468,7 @@ https://github.com/vijaymarupudi/nvim-fzf/,,
 https://github.com/vijaymarupudi/nvim-fzf-commands/,,
 https://github.com/sakhnik/nvim-gdb/,,
 https://github.com/smiteshp/nvim-gps/,,
+https://github.com/brenoprata10/nvim-highlight-colors/,HEAD,
 https://github.com/Iron-E/nvim-highlite/,,
 https://github.com/kevinhwang91/nvim-hlslens/,,
 https://github.com/neovimhaskell/nvim-hs.vim/,,
@@ -479,6 +488,7 @@ https://github.com/AckslD/nvim-neoclip.lua/,,
 https://github.com/yamatsum/nvim-nonicons/,,
 https://github.com/rcarriga/nvim-notify/,,
 https://github.com/gennaro-tedesco/nvim-peekup/,,
+https://github.com/olrtg/nvim-rename-state/,HEAD,
 https://github.com/dstein64/nvim-scrollview/,,
 https://github.com/dcampos/nvim-snippy/,HEAD,
 https://github.com/ishan9299/nvim-solarized-lua/,,
@@ -636,6 +646,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/axelvc/template-string.nvim/,HEAD,
 https://github.com/jacoborus/tender.vim/,,
 https://github.com/wincent/terminus/,,
 https://github.com/oberblastmeister/termwrapper.nvim/,,
@@ -1071,6 +1082,7 @@ https://github.com/mattn/webapi-vim/,,
 https://github.com/folke/which-key.nvim/,,
 https://github.com/gelguy/wilder.nvim/,,
 https://github.com/gcmt/wildfire.vim/,,
+https://github.com/anuvyklack/windows.nvim/,,
 https://github.com/sindrets/winshift.nvim/,,
 https://github.com/wannesm/wmgraphviz.vim/,,
 https://github.com/vim-scripts/wombat256.vim/,,
diff --git a/pkgs/applications/editors/vim/plugins/vim-utils.nix b/pkgs/applications/editors/vim/plugins/vim-utils.nix
index 1692a81c3d6c1..2e482cdf7df5b 100644
--- a/pkgs/applications/editors/vim/plugins/vim-utils.nix
+++ b/pkgs/applications/editors/vim/plugins/vim-utils.nix
@@ -167,7 +167,7 @@ let
   rtpPath = ".";
 
   vimFarm = prefix: name: drvs:
-    let mkEntryFromDrv = drv: { name = "${prefix}/${drv.pname}"; path = drv; };
+    let mkEntryFromDrv = drv: { name = "${prefix}/${lib.getName drv}"; path = drv; };
     in linkFarm name (map mkEntryFromDrv drvs);
 
   /* Generates a packpath folder as expected by vim
diff --git a/pkgs/applications/editors/vscode/extensions/default.nix b/pkgs/applications/editors/vscode/extensions/default.nix
index a7936404015f9..e866c25e29d0c 100644
--- a/pkgs/applications/editors/vscode/extensions/default.nix
+++ b/pkgs/applications/editors/vscode/extensions/default.nix
@@ -225,8 +225,8 @@ let
         mktplcRef = {
           name = "vscode-apollo";
           publisher = "apollographql";
-          version = "1.19.9";
-          sha256 = "sha256-iJpzNKcuQrfq4Z0LXuadt6OKXelBbDQg/vuc7NJ2I5o=";
+          version = "1.19.11";
+          sha256 = "sha256-EixefDuJiw/p5yAR/UQLK1a1RXJLXlTmOlD34qpAN+U=";
         };
         meta = with lib; {
           changelog = "https://marketplace.visualstudio.com/items/apollographql.vscode-apollo/changelog";
@@ -326,7 +326,7 @@ let
           downloadPage = "https://marketplace.visualstudio.com/items?itemName=attilabuti.brainfuck-syntax";
           homepage = "https://github.com/attilabuti/brainfuck-syntax";
           license = licenses.mit;
-          maintainers = with maintainers; [ superherointj ];
+          maintainers = with maintainers; [  ];
         };
       };
 
@@ -410,7 +410,7 @@ let
           downloadPage = "https://marketplace.visualstudio.com/items?itemName=badochov.ocaml-formatter";
           homepage = "https://github.com/badochov/ocamlformatter-vscode";
           license = licenses.mit;
-          maintainers = with maintainers; [ superherointj ];
+          maintainers = with maintainers; [  ];
         };
       };
 
@@ -585,7 +585,7 @@ let
           downloadPage = "https://marketplace.visualstudio.com/items?itemName=christian-kohler.path-intellisense";
           homepage = "https://github.com/ChristianKohler/PathIntellisense";
           license = licenses.mit;
-          maintainers = with maintainers; [ imgabe superherointj ];
+          maintainers = with maintainers; [ imgabe  ];
         };
       };
 
@@ -673,8 +673,8 @@ let
         mktplcRef = {
           name = "vscode-eslint";
           publisher = "dbaeumer";
-          version = "2.2.2";
-          sha256 = "sha256-llalyQXl+k/ugZq+Ti9mApHRqAGu6QyoMP51GtZnRJ4=";
+          version = "2.2.6";
+          sha256 = "sha256-1yZeyLrXuubhKzobWcd00F/CdU824uJDTkB6qlHkJlQ=";
         };
         meta = {
           license = lib.licenses.mit;
@@ -698,8 +698,8 @@ let
         mktplcRef = {
           name = "vscode-markdownlint";
           publisher = "DavidAnson";
-          version = "0.47.0";
-          sha256 = "sha256-KtDJo8rhQXkZtJz93E+J7eNiAIcLk4e5qKDLoR3DoGw=";
+          version = "0.48.1";
+          sha256 = "sha256-3TpZGvas+pfabHayaA6Yd9nOO2MbfXbCvCiTcbja9Vo=";
         };
         meta = with lib; {
           changelog = "https://marketplace.visualstudio.com/items/DavidAnson.vscode-markdownlint/changelog";
@@ -934,8 +934,8 @@ let
         mktplcRef = {
           name = "prettier-vscode";
           publisher = "esbenp";
-          version = "9.8.0";
-          sha256 = "sha256-+8lEuQD73w+urAv2Tw0b+q6oQ66+gLgMPe3Luln9cuY=";
+          version = "9.9.0";
+          sha256 = "sha256-Yr7M4HyRNcsBf8YglQLvyZjblMhtkpMP+f9SH8oUav0=";
         };
         meta = with lib; {
           changelog = "https://marketplace.visualstudio.com/items/esbenp.prettier-vscode/changelog";
@@ -943,7 +943,7 @@ let
           downloadPage = "https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode";
           homepage = "https://github.com/prettier/prettier-vscode";
           license = licenses.mit;
-          maintainers = with maintainers; [ datafoo superherointj ];
+          maintainers = with maintainers; [ datafoo  ];
         };
       };
 
@@ -1134,7 +1134,7 @@ let
           downloadPage = "https://marketplace.visualstudio.com/items?itemName=gencer.html-slim-scss-css-class-completion";
           homepage = "https://github.com/gencer/SCSS-Everywhere";
           license = licenses.mit;
-          maintainers = with maintainers; [ superherointj ];
+          maintainers = with maintainers; [  ];
         };
       };
 
@@ -1150,7 +1150,7 @@ let
           downloadPage = "https://marketplace.visualstudio.com/items?itemName=gitlab.gitlab-workflow";
           homepage = "https://gitlab.com/gitlab-org/gitlab-vscode-extension#readme";
           license = licenses.mit;
-          maintainers = with maintainers; [ superherointj ];
+          maintainers = with maintainers; [  ];
         };
       };
 
@@ -1368,11 +1368,16 @@ let
         mktplcRef = {
           name = "elixir-ls";
           publisher = "JakeBecker";
-          version = "0.8.0";
-          sha256 = "sha256-VD1g4DJfA0vDJ0cyHFDEtCEqQo0nXfPC5vknEU91cPk=";
+          version = "0.11.0";
+          sha256 = "sha256-okvwyD0m2r8ar85VtuBUNMUZGGrCfJ4DB9v7aSX5PjM=";
         };
         meta = with lib; {
+          changelog = "https://marketplace.visualstudio.com/items/JakeBecker.elixir-ls/changelog";
+          description = "Elixir support with debugger, autocomplete, and more. Powered by ElixirLS.";
+          downloadPage = "https://marketplace.visualstudio.com/items?itemName=JakeBecker.elixir-ls";
+          homepage = "https://github.com/elixir-lsp/elixir-ls";
           license = licenses.mit;
+          maintainers = with maintainers; [ datafoo ];
         };
       };
 
@@ -1400,24 +1405,7 @@ let
           downloadPage = "https://marketplace.visualstudio.com/items?itemName=IronGeek.vscode-env";
           homepage = "https://github.com/IronGeek/vscode-env.git";
           license = licenses.mit;
-          maintainers = with maintainers; [ superherointj ];
-        };
-      };
-
-      jakebecker.elixir-ls = buildVscodeMarketplaceExtension {
-        mktplcRef = {
-          name = "elixir-ls";
-          publisher = "JakeBecker";
-          version = "0.11.0";
-          sha256 = "sha256-okvwyD0m2r8ar85VtuBUNMUZGGrCfJ4DB9v7aSX5PjM=";
-        };
-        meta = with lib; {
-          changelog = "https://marketplace.visualstudio.com/items/JakeBecker.elixir-ls/changelog";
-          description = "Elixir support with debugger, autocomplete, and more. Powered by ElixirLS.";
-          downloadPage = "https://marketplace.visualstudio.com/items?itemName=JakeBecker.elixir-ls";
-          homepage = "https://github.com/elixir-lsp/elixir-ls";
-          license = licenses.mit;
-          maintainers = with maintainers; [ datafoo ];
+          maintainers = with maintainers; [  ];
         };
       };
 
@@ -1468,7 +1456,7 @@ let
           downloadPage = "https://marketplace.visualstudio.com/items?itemName=jnoortheen.nix-ide";
           homepage = "https://github.com/jnoortheen/vscode-nix-ide";
           license = licenses.mit;
-          maintainers = with maintainers; [ superherointj SuperSandro2000 ];
+          maintainers = with maintainers; [  SuperSandro2000 ];
         };
       };
 
@@ -1893,8 +1881,8 @@ let
         mktplcRef = {
           name = "color-highlight";
           publisher = "naumovs";
-          version = "2.5.0";
-          sha256 = "sha256-dYMDV84LEGXUjt/fbsSy3BVM5SsBHcPaDDll8KjPIWY=";
+          version = "2.6.0";
+          sha256 = "sha256-TcPQOAHCYeFHPdR85GIXsy3fx70p8cLdO2UNO0krUOs=";
         };
         meta = with lib; {
           changelog = "https://marketplace.visualstudio.com/items/naumovs.color-highlight/changelog";
@@ -1963,7 +1951,7 @@ let
           downloadPage = "https://marketplace.visualstudio.com/items?itemName=phoenixframework.phoenix";
           homepage = "https://github.com/phoenixframework/vscode-phoenix";
           license = licenses.mit;
-          maintainers = with maintainers; [ superherointj ];
+          maintainers = with maintainers; [  ];
         };
       };
 
@@ -2027,7 +2015,7 @@ let
           downloadPage = "https://marketplace.visualstudio.com/items?itemName=ocamllabs.ocaml-platform";
           homepage = "https://github.com/ocamllabs/vscode-ocaml-platform";
           license = licenses.isc;
-          maintainers = with maintainers; [ ratsclub superherointj ];
+          maintainers = with maintainers; [ ratsclub  ];
         };
         mktplcRef = {
           name = "ocaml-platform";
@@ -2090,7 +2078,7 @@ let
           downloadPage = "https://marketplace.visualstudio.com/items?itemName=Prisma.prisma";
           homepage = "https://github.com/prisma/language-tools";
           license = licenses.asl20;
-          maintainers = with maintainers; [ superherointj ];
+          maintainers = with maintainers; [  ];
         };
       };
 
@@ -2332,7 +2320,7 @@ let
           downloadPage = "https://marketplace.visualstudio.com/items?itemName=stefanjarina.vscode-eex-snippets";
           homepage = "https://github.com/stefanjarina/vscode-eex-snippets";
           license = licenses.mit;
-          maintainers = with maintainers; [ superherointj ];
+          maintainers = with maintainers; [  ];
         };
       };
 
@@ -2357,8 +2345,8 @@ let
         mktplcRef = {
           publisher = "stkb";
           name = "rewrap";
-          version = "1.16.1";
-          sha256 = "sha256-OTPNbwoQmKd73g8IwLKMIbe6c7E2jKNkzwuBU/f8dmY=";
+          version = "1.16.3";
+          sha256 = "sha256-WHeLTN992ltEZw2W7B3sJrHfAFsOGMq3llV4C0hXLNA=";
         };
         meta = with lib; {
           changelog = "https://github.com/stkb/Rewrap/blob/master/CHANGELOG.md";
@@ -2374,8 +2362,8 @@ let
         mktplcRef = {
           name = "code-spell-checker";
           publisher = "streetsidesoftware";
-          version = "2.3.1";
-          sha256 = "0pm9i3zw4aa4qrcqnzb9bz166rl7p6nwb81m9rqzisdc85mx4s3x";
+          version = "2.10.1";
+          sha256 = "sha256-FeYkSML6QYtuIHIbAovOqlPwkKfNkHr7IdMCWwkynQ0=";
         };
         meta = with lib; {
           changelog = "https://marketplace.visualstudio.com/items/streetsidesoftware.code-spell-checker/changelog";
@@ -2469,7 +2457,7 @@ let
           downloadPage = "https://marketplace.visualstudio.com/items?itemName=theangryepicbanana.language-pascal";
           homepage = "https://github.com/ALANVF/vscode-pascal-magic";
           license = licenses.mit;
-          maintainers = with maintainers; [ superherointj ];
+          maintainers = with maintainers; [  ];
         };
       };
 
@@ -2800,6 +2788,7 @@ let
 
   aliases = self: super: {
     # aliases
+    jakebecker.elixir-ls = super.elixir-lsp.vscode-elixir-ls;
     ms-vscode = lib.recursiveUpdate super.ms-vscode { inherit (super.golang) go; };
   };
 
diff --git a/pkgs/applications/editors/vscode/extensions/rescript/default.nix b/pkgs/applications/editors/vscode/extensions/rescript/default.nix
index 902bc58f1d14c..1f92e600f40fd 100644
--- a/pkgs/applications/editors/vscode/extensions/rescript/default.nix
+++ b/pkgs/applications/editors/vscode/extensions/rescript/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, vscode-utils, callPackage }:
 let
-  version = "1.6.0";
+  version = "1.8.1";
   rescript-editor-analysis = callPackage ./rescript-editor-analysis.nix { inherit version; };
   arch =
     if stdenv.isLinux then "linux"
@@ -13,7 +13,7 @@ vscode-utils.buildVscodeMarketplaceExtension rec {
     name = "rescript-vscode";
     publisher = "chenglou92";
     inherit version;
-    sha256 = "sha256-/Nv+uyTkJQVaPKIDRr1P/Z5vsituXpP48/sDn3FUEeA=";
+    sha256 = "sha256-XZG0PRzc3wyAVq9tQeGDlaUZg5YAgkPxJ3NsrdUHoOk=";
   };
   postPatch = ''
     rm -r ${analysisDir}
diff --git a/pkgs/applications/editors/vscode/extensions/rescript/rescript-editor-analysis.nix b/pkgs/applications/editors/vscode/extensions/rescript/rescript-editor-analysis.nix
index a0b49f9c44be7..a87cd0943428e 100644
--- a/pkgs/applications/editors/vscode/extensions/rescript/rescript-editor-analysis.nix
+++ b/pkgs/applications/editors/vscode/extensions/rescript/rescript-editor-analysis.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
     owner = "rescript-lang";
     repo = "rescript-vscode";
     rev = version;
-    sha256 = "sha256-O5kZCnhtMcevPTs5UxhIXx124WQf1VvF2WMVHjMEQZc=";
+    sha256 = "sha256-a8otK0BxZbl0nOp4QWQRkjb5fM85JA4nVkLuKAz71xU=";
   };
 
   nativeBuildInputs = [ ocaml dune_3 ];
diff --git a/pkgs/applications/editors/vscode/extensions/vscode-lldb/default.nix b/pkgs/applications/editors/vscode/extensions/vscode-lldb/default.nix
index d5961f0c9ebaa..9eba40330b96d 100644
--- a/pkgs/applications/editors/vscode/extensions/vscode-lldb/default.nix
+++ b/pkgs/applications/editors/vscode/extensions/vscode-lldb/default.nix
@@ -45,7 +45,8 @@ let
     inherit (stdenv.hostPlatform) system;
   }).nodeDependencies.override (old: {
     inherit src version;
-    buildInputs = [pkg-config libsecret];
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [libsecret];
     dontNpmInstall = true;
   }));
 
diff --git a/pkgs/applications/editors/wxhexeditor/default.nix b/pkgs/applications/editors/wxhexeditor/default.nix
index f310fb85a26c6..efcbe32f78d77 100644
--- a/pkgs/applications/editors/wxhexeditor/default.nix
+++ b/pkgs/applications/editors/wxhexeditor/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, wxGTK, autoconf, automake, libtool, python2, gettext }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, wxGTK, autoconf, automake, libtool, python2, gettext, openmp, Cocoa }:
 
 stdenv.mkDerivation rec {
   pname = "wxHexEditor";
@@ -12,13 +12,17 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ autoconf automake ];
-  buildInputs = [ wxGTK libtool python2 gettext ];
+  buildInputs = [ wxGTK libtool python2 gettext ]
+    ++ lib.optionals stdenv.cc.isClang [ openmp ]
+    ++ lib.optionals stdenv.isDarwin [ Cocoa ];
 
   preConfigure = "patchShebangs .";
 
   prePatch = ''
     substituteInPlace Makefile --replace "/usr" "$out"
     substituteInPlace Makefile --replace "mhash; ./configure" "mhash; ./configure --prefix=$out"
+  '' + lib.optionalString stdenv.cc.isClang ''
+    substituteInPlace Makefile --replace "-lgomp" "-lomp"
   '';
 
   patches = [
@@ -30,7 +34,7 @@ stdenv.mkDerivation rec {
     ./missing-semicolon.patch
   ];
 
-  makeFlags = [ "OPTFLAGS=-fopenmp" ];
+  makeFlags = lib.optionals stdenv.cc.isGNU [ "OPTFLAGS=-fopenmp" ];
 
   meta = {
     description = "Hex Editor / Disk Editor for Huge Files or Devices";
@@ -46,6 +50,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = "http://www.wxhexeditor.org/";
     license = lib.licenses.gpl2;
-    platforms = lib.platforms.linux;
+    platforms = lib.platforms.unix;
+    maintainers = with lib.maintainers; [ wegank ];
   };
 }
diff --git a/pkgs/applications/emulators/duckstation/default.nix b/pkgs/applications/emulators/duckstation/default.nix
index 45bb9ed74f9f6..d02e08ed6cd40 100644
--- a/pkgs/applications/emulators/duckstation/default.nix
+++ b/pkgs/applications/emulators/duckstation/default.nix
@@ -1,38 +1,40 @@
 { lib
-, mkDerivation
+, stdenv
 , fetchFromGitHub
 , SDL2
 , cmake
+, copyDesktopItems
+, makeDesktopItem
 , curl
 , extra-cmake-modules
-, gtk3
 , libevdev
 , libpulseaudio
-, mesa
+, libXrandr
+, mesa # for libgbm
 , ninja
 , pkg-config
 , qtbase
 , qttools
-, sndio
 , vulkan-loader
-, wayland
+#, wayland # Wayland doesn't work correctly this version
 , wrapQtAppsHook
 }:
 
-mkDerivation rec {
+stdenv.mkDerivation rec {
   pname = "duckstation";
-  version = "0.pre+date=2022-01-18";
+  version = "unstable-2022-07-08";
 
   src = fetchFromGitHub {
     owner = "stenzek";
     repo = pname;
-    rev = "51041e47f70123eda41d999701f5651830a0a95e";
-    sha256 = "sha256-nlF6ctDU8KCK7MN2pniPLLqUbPUygX9rl0hjzVQ+mPo=";
+    rev = "82965f741e81e4d2f7e1b2abdc011e1f266bfe7f";
+    sha256 = "sha256-D8Ps/EQRcHLsps/KEUs56koeioOdE/GPA0QJSrbSdYs=";
   };
 
   nativeBuildInputs = [
     cmake
     extra-cmake-modules
+    copyDesktopItems
     ninja
     pkg-config
     qttools
@@ -42,43 +44,43 @@ mkDerivation rec {
   buildInputs = [
     SDL2
     curl
-    gtk3
     libevdev
     libpulseaudio
+    libXrandr
     mesa
     qtbase
-    sndio
     vulkan-loader
-    wayland
+    #wayland
   ];
 
   cmakeFlags = [
     "-DUSE_DRMKMS=ON"
-    "-DUSE_WAYLAND=ON"
+    #"-DUSE_WAYLAND=ON"
   ];
 
-  postPatch = ''
-    substituteInPlace extras/linux-desktop-files/duckstation-qt.desktop \
-      --replace "duckstation-qt" "duckstation" \
-      --replace "TryExec=duckstation" "tryExec=duckstation-qt" \
-      --replace "Exec=duckstation" "Exec=duckstation-qt"
-    substituteInPlace extras/linux-desktop-files/duckstation-nogui.desktop \
-      --replace "duckstation-nogui" "duckstation" \
-      --replace "TryExec=duckstation" "tryExec=duckstation-nogui" \
-      --replace "Exec=duckstation" "Exec=duckstation-nogui"
-  '';
+  desktopItems = [
+    (makeDesktopItem {
+      name = "duckstation-qt";
+      desktopName = "DuckStation";
+      genericName = "PlayStation 1 Emulator";
+      icon = "duckstation";
+      tryExec = "duckstation-qt";
+      exec = "duckstation-qt %f";
+      comment = "Fast PlayStation 1 emulator";
+      categories = [ "Game" "Emulator" "Qt" ];
+      type = "Application";
+    })
+  ];
 
   installPhase = ''
     runHook preInstall
 
-    mkdir -p $out/bin $out/share $out/share/pixmaps $out/share/applications
-    rm bin/common-tests
+    mkdir -p $out/bin $out/share
 
     cp -r bin $out/share/duckstation
-    ln -s $out/share/duckstation/duckstation-{qt,nogui} $out/bin/
+    ln -s $out/share/duckstation/duckstation-qt $out/bin/
 
-    cp ../extras/icons/icon-256px.png $out/share/pixmaps/duckstation.png
-    cp ../extras/linux-desktop-files/* $out/share/applications/
+    install -Dm644 ../extras/icons/icon-256px.png $out/share/pixmaps/duckstation.png
 
     runHook postInstall
   '';
@@ -86,12 +88,13 @@ mkDerivation rec {
   doCheck = true;
   checkPhase = ''
     runHook preCheck
-    ./bin/common-tests
+    bin/common-tests
     runHook postCheck
   '';
 
   # Libpulseaudio fixes https://github.com/NixOS/nixpkgs/issues/171173
   qtWrapperArgs = [
+    "--set QT_QPA_PLATFORM xcb"
     "--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ libpulseaudio vulkan-loader ]}"
   ];
 
diff --git a/pkgs/applications/emulators/fs-uae/launcher.nix b/pkgs/applications/emulators/fs-uae/launcher.nix
index afe12aab0c830..e3f3900340388 100644
--- a/pkgs/applications/emulators/fs-uae/launcher.nix
+++ b/pkgs/applications/emulators/fs-uae/launcher.nix
@@ -2,8 +2,9 @@
 , stdenv
 , fetchurl
 , gettext
-, makeWrapper
 , python3
+, wrapQtAppsHook
+, fsuae
 }:
 
 stdenv.mkDerivation rec {
@@ -17,8 +18,8 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     gettext
-    makeWrapper
     python3
+    wrapQtAppsHook
   ];
 
   buildInputs = with python3.pkgs; [
@@ -29,15 +30,19 @@ stdenv.mkDerivation rec {
 
   makeFlags = [ "prefix=$(out)" ];
 
-  postInstall = ''
-    wrapProgram $out/bin/fs-uae-launcher --set PYTHONPATH "$PYTHONPATH"
+  dontWrapQtApps = true;
+
+  preFixup = ''
+      wrapQtApp "$out/bin/fs-uae-launcher" --set PYTHONPATH "$PYTHONPATH" \
+        --prefix PATH : ${lib.makeBinPath [ fsuae ]}
   '';
 
   meta = with lib; {
     homepage = "https://fs-uae.net";
     description = "Graphical front-end for the FS-UAE emulator";
-    license = lib.licenses.gpl2Plus;
+    license = licenses.gpl2Plus;
     maintainers = with  maintainers; [ sander AndersonTorres ];
     platforms = [ "i686-linux" "x86_64-linux" ];
   };
 }
+
diff --git a/pkgs/applications/emulators/np2kai/default.nix b/pkgs/applications/emulators/np2kai/default.nix
index dd5e53967c010..cf55085b78a19 100644
--- a/pkgs/applications/emulators/np2kai/default.nix
+++ b/pkgs/applications/emulators/np2kai/default.nix
@@ -124,7 +124,7 @@ stdenv.mkDerivation rec {
 
   configurePhase = ''
     export GIT_VERSION=${builtins.substring 0 7 src.rev}
-    buildFlags="$buildFlags ''${enableParallelBuilding:+-j$NIX_BUILD_CORES -l$NIX_BUILD_CORES}"
+    buildFlags="$buildFlags ''${enableParallelBuilding:+-j$NIX_BUILD_CORES"
   '' + optionalString enableX11 ''
     cd x11
     substituteInPlace Makefile.am \
diff --git a/pkgs/applications/emulators/pcem/default.nix b/pkgs/applications/emulators/pcem/default.nix
index 2e6aa683e4d3a..22173fe9e0853 100644
--- a/pkgs/applications/emulators/pcem/default.nix
+++ b/pkgs/applications/emulators/pcem/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchzip, wxGTK31, coreutils, SDL2, openal, alsa-lib, pkg-config
+{ stdenv, lib, fetchzip, wxGTK32, coreutils, SDL2, openal, alsa-lib, pkg-config
 , autoreconfHook, withNetworking ? true, withALSA ? true }:
 
 stdenv.mkDerivation rec {
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
-  buildInputs = [ wxGTK31 coreutils SDL2 openal ]
+  buildInputs = [ wxGTK32 coreutils SDL2 openal ]
     ++ lib.optional withALSA alsa-lib;
 
   configureFlags = [ "--enable-release-build" ]
diff --git a/pkgs/applications/emulators/retroarch/cores.nix b/pkgs/applications/emulators/retroarch/cores.nix
index ed47c579d642c..57ae88dbd42ce 100644
--- a/pkgs/applications/emulators/retroarch/cores.nix
+++ b/pkgs/applications/emulators/retroarch/cores.nix
@@ -8,7 +8,6 @@
 , fetchFromGitHub
 , ffmpeg
 , fluidsynth
-, gcc10Stdenv
 , gettext
 , hexdump
 , hidapi
@@ -31,7 +30,6 @@
 , portaudio
 , python3
 , retroarch
-, SDL
 , sfml
 , snappy
 , udev
@@ -40,6 +38,7 @@
 , xxd
 , xz
 , zlib
+, fetchpatch
 }:
 
 let
@@ -56,7 +55,7 @@ let
     , stdenvOverride ? stdenv
     , src ? (getCoreSrc core)
     , broken ? false
-    , version ? "unstable-2022-04-21"
+    , version ? "unstable-2022-10-01"
     , platforms ? retroarch.meta.platforms
       # The resulting core file is based on core name
       # Setting `normalizeCore` to `true` will convert `-` to `_` on the core filename
@@ -113,7 +112,7 @@ let
         meta = with lib; {
           inherit broken description license platforms;
           homepage = "https://www.libretro.com/";
-          maintainers = with maintainers; [ edwtjo hrdinka MP2E thiagokokada ];
+          maintainers = with maintainers; teams.libretro.members ++ [ hrdinka ];
         };
       }) // builtins.removeAttrs args [ "core" "src" "description" "license" "makeFlags" ]
     );
@@ -205,6 +204,14 @@ in
     makefile = "Makefile";
   };
 
+  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";
+  };
+
   beetle-supergrafx = mkLibRetroCore {
     core = "mednafen-supergrafx";
     src = getCoreSrc "beetle-supergrafx";
@@ -233,6 +240,7 @@ in
     core = "blastem";
     description = "Port of BlastEm to libretro";
     license = lib.licenses.gpl3Only;
+    platforms = lib.platforms.x86;
   };
 
   bluemsx = mkLibRetroCore {
@@ -300,7 +308,6 @@ in
   citra = mkLibRetroCore {
     core = "citra";
     description = "Port of Citra to libretro";
-    stdenvOverride = gcc10Stdenv;
     license = lib.licenses.gpl2Plus;
     extraBuildInputs = [ libGLU libGL boost ffmpeg nasm ];
     makefile = "Makefile";
@@ -331,7 +338,6 @@ in
     core = "dolphin";
     description = "Port of Dolphin to libretro";
     license = lib.licenses.gpl2Plus;
-
     extraNativeBuildInputs = [ cmake curl pkg-config ];
     extraBuildInputs = [
       libGLU
@@ -359,7 +365,7 @@ in
     core = "dosbox";
     description = "Port of DOSBox to libretro";
     license = lib.licenses.gpl2Only;
-    stdenvOverride = gcc10Stdenv;
+    CXXFLAGS = "-std=gnu++11";
   };
 
   eightyone = mkLibRetroCore {
@@ -397,7 +403,8 @@ in
     license = lib.licenses.gpl2Only;
     extraBuildInputs = [ libGL libGLU ];
     makefile = "Makefile";
-    makeFlags = lib.optional stdenv.hostPlatform.isAarch64 [ "platform=arm64" ];
+    makeFlags = lib.optionals stdenv.hostPlatform.isAarch64 [ "platform=arm64" ];
+    patches = [ ./fix-flycast-makefile.patch ];
     platforms = [ "aarch64-linux" "x86_64-linux" ];
   };
 
@@ -452,9 +459,9 @@ in
     core = "hatari";
     description = "Port of Hatari to libretro";
     license = lib.licenses.gpl2Only;
-    extraBuildInputs = [ SDL zlib ];
     extraNativeBuildInputs = [ which ];
     dontConfigure = true;
+    # zlib is already included in mkLibRetroCore as buildInputs
     makeFlags = [ "EXTERNAL_ZLIB=1" ];
   };
 
@@ -467,41 +474,37 @@ in
 
   mame2000 = mkLibRetroCore {
     core = "mame2000";
-    description = "Port of MAME ~2000 to libretro";
+    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";
-    enableParallelBuilding = false;
   };
 
   mame2003 = mkLibRetroCore {
     core = "mame2003";
-    description = "Port of MAME ~2003 to libretro";
+    description = "Port of MAME ~2003 to libretro, compatible with MAME 0.78 sets";
     license = "MAME";
     makefile = "Makefile";
-    enableParallelBuilding = false;
   };
 
   mame2003-plus = mkLibRetroCore {
     core = "mame2003-plus";
-    description = "Port of MAME ~2003+ to libretro";
+    description = "Port of MAME ~2003+ to libretro, compatible with MAME 0.78 sets";
     license = "MAME";
     makefile = "Makefile";
-    enableParallelBuilding = false;
   };
 
   mame2010 = mkLibRetroCore {
     core = "mame2010";
-    description = "Port of MAME ~2010 to libretro";
+    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" ];
-    enableParallelBuilding = false;
   };
 
   mame2015 = mkLibRetroCore {
     core = "mame2015";
-    description = "Port of MAME ~2015 to libretro";
+    description = "Port of MAME ~2015 to libretro, compatible with MAME 0.160 sets";
     license = "MAME";
     makeFlags = [ "PYTHON=python3" ];
     extraNativeBuildInputs = [ python3 ];
@@ -512,16 +515,11 @@ in
 
   mame2016 = mkLibRetroCore {
     core = "mame2016";
-    description = "Port of MAME ~2016 to libretro";
+    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" ];
-    postPatch = ''
-      # Prevent the failure during the parallel building of:
-      # make -C 3rdparty/genie/build/gmake.linux -f genie.make obj/Release/src/host/lua-5.3.0/src/lgc.o
-      mkdir -p 3rdparty/genie/build/gmake.linux/obj/Release/src/host/lua-5.3.0/src
-    '';
     enableParallelBuilding = false;
   };
 
@@ -666,7 +664,7 @@ in
     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;
@@ -677,11 +675,7 @@ in
     core = "picodrive";
     description = "Fast MegaDrive/MegaCD/32X emulator";
     license = "MAME";
-
-    extraBuildInputs = [ libpng SDL ];
-    SDL_CONFIG = "${lib.getDev SDL}/bin/sdl-config";
-    dontAddPrefix = true;
-    configurePlatforms = [ ];
+    dontConfigure = true;
     makeFlags = lib.optional stdenv.hostPlatform.isAarch64 [ "platform=aarch64" ];
   };
 
@@ -727,6 +721,17 @@ in
     makefile = "Makefile";
   };
 
+  puae = mkLibRetroCore {
+    core = "puae";
+    description = "Amiga emulator based on WinUAE";
+    license = lib.licenses.gpl2Only;
+    makefile = "Makefile";
+    patches = fetchpatch {
+        url = "https://github.com/libretro/libretro-uae/commit/90ba4c9bb940e566781c3590553270ad69cf212e.patch";
+        sha256 = "sha256-9xkRravvyFZc0xsIj0OSm2ux5BqYogfQ1TDnH9l6jKw=";
+    };
+  };
+
   quicknes = mkLibRetroCore {
     core = "quicknes";
     description = "QuickNES libretro port";
@@ -747,7 +752,7 @@ in
     core = "scummvm";
     description = "Libretro port of ScummVM";
     license = lib.licenses.gpl2Only;
-    extraBuildInputs = [ fluidsynth libjpeg libvorbis libGLU libGL SDL ];
+    extraBuildInputs = [ fluidsynth libjpeg libvorbis libGLU libGL ];
     makefile = "Makefile";
     preConfigure = "cd backends/platform/libretro/build";
   };
@@ -800,9 +805,8 @@ in
     core = "stella";
     description = "Port of Stella to libretro";
     license = lib.licenses.gpl2Only;
-    extraBuildInputs = [ libpng pkg-config SDL ];
     makefile = "Makefile";
-    preBuild = "cd src/libretro";
+    preBuild = "cd src/os/libretro";
     dontConfigure = true;
   };
 
@@ -844,7 +848,7 @@ in
     core = "tic80";
     description = "Port of TIC-80 to libretro";
     license = lib.licenses.mit;
-    extraNativeBuildInputs = [ cmake pkg-config libGL libGLU ];
+    extraNativeBuildInputs = [ cmake pkg-config ];
     makefile = "Makefile";
     cmakeFlags = [
       "-DBUILD_LIBRETRO=ON"
diff --git a/pkgs/applications/emulators/retroarch/default.nix b/pkgs/applications/emulators/retroarch/default.nix
index 4a8c762b6a934..1754ad5eccb6b 100644
--- a/pkgs/applications/emulators/retroarch/default.nix
+++ b/pkgs/applications/emulators/retroarch/default.nix
@@ -1,5 +1,6 @@
 { lib
 , stdenv
+, nixosTests
 , enableNvidiaCgToolkit ? false
 , withGamemode ? stdenv.isLinux
 , withVulkan ? stdenv.isLinux
@@ -36,11 +37,11 @@
 }:
 
 let
-  version = "1.10.3";
+  version = "1.11.0";
   libretroCoreInfo = fetchFromGitHub {
     owner = "libretro";
     repo = "libretro-core-info";
-    sha256 = "sha256-wIIMEWrria8bZe/rcoJwDA9aCMWwbkDQFyEU80TZXFQ=";
+    sha256 = "sha256-46T87BpzWUQHD7CsCF2sZo065Sl8Y4Sj1zwzBWmCiiU=";
     rev = "v${version}";
   };
   runtimeLibs = lib.optional withVulkan vulkan-loader
@@ -53,7 +54,7 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "libretro";
     repo = "RetroArch";
-    sha256 = "sha256-nAv1yv0laqlOmB8UUkK5wSYy/ySqXloEErm+yV30bbA=";
+    sha256 = "sha256-/rOf85TQTXbY9kIETaO5E58f2ZvKPqEFLsbNne/+/lw=";
     rev = "v${version}";
   };
 
@@ -128,12 +129,9 @@ stdenv.mkDerivation rec {
 
   # 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" ]
-    # Workaround build failure on -fno-common toolchains:
-    #   duplicate symbol '_apple_platform' in:ui_cocoa.o cocoa_common.o
-    # TODO: drop when upstream gets a fix for it:
-    #   https://github.com/libretro/RetroArch/issues/14025
-    ++ lib.optionals stdenv.isDarwin [ "-fcommon" ];
+  NIX_CFLAGS_COMPILE = lib.optionals stdenv.cc.isClang [ "-Wno-undef-prefix" ];
+
+  passthru.tests = nixosTests.retroarch;
 
   meta = with lib; {
     homepage = "https://libretro.com";
@@ -141,6 +139,10 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3Plus;
     platforms = platforms.unix;
     changelog = "https://github.com/libretro/RetroArch/blob/v${version}/CHANGES.md";
-    maintainers = with maintainers; [ MP2E edwtjo matthewbauer kolbycrouch thiagokokada ];
+    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
+    broken = stdenv.isDarwin;
   };
 }
diff --git a/pkgs/applications/emulators/retroarch/fix-flycast-makefile.patch b/pkgs/applications/emulators/retroarch/fix-flycast-makefile.patch
new file mode 100644
index 0000000000000..a067839c7c32b
--- /dev/null
+++ b/pkgs/applications/emulators/retroarch/fix-flycast-makefile.patch
@@ -0,0 +1,12 @@
+diff --git a/Makefile b/Makefile
+index 01d99c30..8c2dd248 100644
+--- a/Makefile
++++ b/Makefile
+@@ -440,7 +440,6 @@ else ifeq ($(platform), arm64)
+ 	CPUFLAGS += -DTARGET_LINUX_ARMv8 -frename-registers
+ 	CFLAGS += $(CPUFLAGS)
+ 	CXXFLAGS += $(CPUFLAGS)
+-	ASFLAGS += $(CFLAGS) -c -frename-registers -fno-strict-aliasing -ffast-math -ftree-vectorize
+ 	PLATFORM_EXT := unix
+ 	WITH_DYNAREC=arm64
+ 	HAVE_GENERIC_JIT = 0
diff --git a/pkgs/applications/emulators/retroarch/hashes.json b/pkgs/applications/emulators/retroarch/hashes.json
index 41649cbf4c003..fac926c9062bd 100644
--- a/pkgs/applications/emulators/retroarch/hashes.json
+++ b/pkgs/applications/emulators/retroarch/hashes.json
@@ -2,8 +2,8 @@
     "atari800": {
         "owner": "libretro",
         "repo": "libretro-atari800",
-        "rev": "beab30e7ea10b7ed14d0514064f47d16f76cd995",
-        "sha256": "r9MsnasNhhYdFyr2VHJXkTXssB5U00JW6wN/+i+SNUk="
+        "rev": "94033288b026fe699bc50703609807aa8075f4dd",
+        "sha256": "fTKFELELt1g7t3uPgnXIgeMkkSbl9GHr0/k2FHcpDFI="
     },
     "beetle-gba": {
         "owner": "libretro",
@@ -14,38 +14,38 @@
     "beetle-lynx": {
         "owner": "libretro",
         "repo": "beetle-lynx-libretro",
-        "rev": "de0d520d679cb92767876d4e98da908b1ea6a2d6",
-        "sha256": "BszU5bnlHBOwQSZOM9P4WIP863rS5RluNWvGBFxqzYs="
+        "rev": "3d2fcc5a555bea748b76f92a082c40227dff8222",
+        "sha256": "PpFLi9DIvv8igtAqDPkLfH1CjkbeOumcpNCP7K9C1PY="
     },
     "beetle-ngp": {
         "owner": "libretro",
         "repo": "beetle-ngp-libretro",
-        "rev": "facf8e1f5440c5d289258ee3c483710f3bf916fb",
-        "sha256": "vDKDt7MvCB9XQYP291cwcEPDxfNIVgNSWtBYz9PVgcw="
+        "rev": "00c7cb8ea97ad9a372307405d8abf34e401fec8a",
+        "sha256": "MtZMPjgT4dQy+E+4jSDE08PRi0pwa+q48kmTHhfIQMY="
     },
     "beetle-pce-fast": {
         "owner": "libretro",
         "repo": "beetle-pce-fast-libretro",
-        "rev": "e8801687f232a6f8828b3ff5dadbc9fe1b0076fc",
-        "sha256": "YM+URLnMqsdmk/5yqCg8U4mPpgtmj5qne2CrbTpTeN8="
+        "rev": "cc248db4d2f47d0f255fbc1a3c651df4beb3d835",
+        "sha256": "euoNldhyEPfC9EgEX201mpSjns2qbCIAow0zmMKTnaE="
     },
     "beetle-pcfx": {
         "owner": "libretro",
         "repo": "beetle-pcfx-libretro",
-        "rev": "bfc0954e14b261a04dcf8dbe0df8798f16ae3f3c",
-        "sha256": "XzCb1lZFYgsg+3eQ1OqyycNxCgLtZFA30rno3ytdnoM="
+        "rev": "08632fcbc039f70dbd6da5810db9dcc304d7fbde",
+        "sha256": "G+OUs6k8dwH4BK+0X/g47wbY7Dpb3lT5TslLwPWq6g4="
     },
     "beetle-psx": {
         "owner": "libretro",
         "repo": "beetle-psx-libretro",
-        "rev": "5a24d54d30dd00d817d267cf92fd5b3f4640928f",
-        "sha256": "uG1BhElNW75PnfM+rEYfbl97iwRT89hnl84yvlgx6fg="
+        "rev": "bd6b9ef3049fe3f70a18ee6f752a935ae83c2f2b",
+        "sha256": "CXcLMOF6IXUrp14nyTQ5KK2LR+FyWcF0UcvHTxEVSo0="
     },
     "beetle-saturn": {
         "owner": "libretro",
         "repo": "beetle-saturn-libretro",
-        "rev": "dd18f9c477106263b3b7b050f4970d331ff7b23a",
-        "sha256": "RN5dmORtNOjIklSz/n11lz37bZ4IcPD7cyRcBGS4Oi8="
+        "rev": "054862a4ccb9b2f1bad9e5b075fc3d1116dc8055",
+        "sha256": "oL9YPvDGkUs0Tm/rNznnV+Tg5mcvqs1VcGVmz/fDHmw="
     },
     "beetle-snes": {
         "owner": "libretro",
@@ -53,66 +53,72 @@
         "rev": "d770563fc3c4bd9abb522952cefb4aa923ba0b91",
         "sha256": "zHPtfgp9hc8Q4gXJ5VgfJLWLeYjCsQhkfU1T5RM7AL0="
     },
+    "beetle-supafaust": {
+        "owner": "libretro",
+        "repo": "supafaust",
+        "rev": "85b5527231a6ad6f9475c15c8ff1b9d16884cd30",
+        "sha256": "6ynxRfGYlp7Fuq3XT2uHsR9Uwu7WMIYjclLc0Pf/qNM="
+    },
     "beetle-supergrafx": {
         "owner": "libretro",
         "repo": "beetle-supergrafx-libretro",
-        "rev": "59991a98c232b1a8350a9d67ac554c5b22771d3c",
-        "sha256": "zv3dAPWrj6hkNaFQ5vUKm5Orcrb2XO48WSkAFiAVUO0="
+        "rev": "3cfafe8c684a2f4f4532bcf18e25d2f8760ca45d",
+        "sha256": "hIBUMpXgX5zPi/W1vAhkuxprGfZQ/K5ZrtiswV36EMQ="
     },
     "beetle-vb": {
         "owner": "libretro",
         "repo": "beetle-vb-libretro",
-        "rev": "246555f8ed7e0b9e5748b2ee2ed6743187c61393",
-        "sha256": "96lQlDqx2bvFeovqGGkemxqS2zlHw92O6YeTEGlgf34="
+        "rev": "162918f06d9a705330b2ba128e0d3b65fd1a1bcc",
+        "sha256": "BtrdDob+B5g8Lq93LUhF7E0uWFUIMZneWFgH0VcsgPE="
     },
     "beetle-wswan": {
         "owner": "libretro",
         "repo": "beetle-wswan-libretro",
-        "rev": "d1fb3f399a2bc16b9ad0f2e8c8ba9f7051cd26bd",
-        "sha256": "p9mJv7zBFjNh1sh5iAjBZzxP6k8ydUNDXLQIjHl9doQ="
+        "rev": "16d96f64a32cbe1fa89c40b142298dbd007f2f4d",
+        "sha256": "LBtOQfVvP70OB6qMnFXtWdJUu7CkkMfSQ0iPGhe7xeI="
     },
     "blastem": {
         "owner": "libretro",
         "repo": "blastem",
-        "rev": "0786858437ed71996f43b7af0fbe627eb88152fc",
-        "sha256": "uEP5hSgLAle1cLv/EM7D11TJMAggu7pqWxfrUt3rhEg="
+        "rev": "277e4a62668597d4f59cadda1cbafb844f981d45",
+        "sha256": "EHvKElPw8V5Z6LnMaQXBCdM4niLIlF3aBm8dRbeYXHs="
     },
     "bluemsx": {
         "owner": "libretro",
         "repo": "bluemsx-libretro",
-        "rev": "92d0c41b4973854114c7b2d06ab727a266d404c5",
-        "sha256": "dL4k+zG8L4KK4lwf9eXPVGk/u5xQn2htIEpoKyj9kQI="
+        "rev": "acf358be18644a9df0ed9602d63c2f73d4fe605a",
+        "sha256": "K4mH+brakYZcVEeYMFUkFThqdZGt2+aP5DfpOgWSJxg="
     },
     "bsnes": {
         "owner": "libretro",
         "repo": "bsnes-libretro",
-        "rev": "26c583e1c5d09253b6c61e2b9d418e8758eef632",
-        "sha256": "Qa0ScFHcEgBUoWouNoW4JINZ2aHjNATndxhcwKw476Q="
+        "rev": "7679cb9618c37c9044158d5cf3da28ef25afa9af",
+        "sha256": "9ozzXvCAuafcZn9iq91tTq16e2mlYqjwauJUGSbFd+k="
     },
     "bsnes-hd": {
         "owner": "DerKoun",
         "repo": "bsnes-hd",
-        "rev": "65f24e56c37f46bb752190024bd4058e64ad77d1",
-        "sha256": "1dk2i71NOLeTTOZjVll8wrkr5dIH5bGSGUeeHqWjZHE="
+        "rev": "04821703aefdc909a4fd66d168433fcac06c2ba7",
+        "sha256": "QmNthbWb92vel5PFwJRXeEEVZHIxfvZ0ls+csodpGbU="
     },
     "bsnes-mercury": {
         "owner": "libretro",
         "repo": "bsnes-mercury",
-        "rev": "4ba6d8d88e57d3193d95e1bcf39e8d31121f76d4",
-        "sha256": "w2MVslgRlxW4SMzgcXP4gXr9A8B07N7LNrB1LXzk1Zk="
+        "rev": "fb9a41fe9bc230a07c4506cad3cbf21d3fa635b4",
+        "sha256": "gBOxKSv3j229IVdtffqFV/zSSacEs8UsBERnQgdFw4Y="
     },
     "citra": {
         "owner": "libretro",
         "repo": "citra",
-        "rev": "44e01f99016008eff18bc7a28234d1098382358d",
-        "sha256": "vIrUStv+VM8pYeznnWSVBRfSA71/B7VIY7B/syymGzE=",
+        "rev": "70bf7d8a63b0b501e8f5cff89a86a3e2d4083aa0",
+        "sha256": "uHWROH6/ZAZygkhEQGNyllncCp2XDCdYwy/CKgGKAcM=",
         "fetchSubmodules": true
     },
     "desmume": {
         "owner": "libretro",
         "repo": "desmume",
-        "rev": "5d0ae2be2c9fb6362af528b3722e81323318eb9f",
-        "sha256": "4bJ6fLZ+fV7SnZ71YT3JFcXFOgmskNUCmCHwc2QNl0A="
+        "rev": "fbd368c8109f95650e1f81bca1facd6d4d8687d7",
+        "sha256": "7MFa5zd1jdOCqSI+VPl5nAHE7Kfm/lA0lbSPFskzqaQ="
     },
     "desmume2015": {
         "owner": "libretro",
@@ -123,20 +129,20 @@
     "dolphin": {
         "owner": "libretro",
         "repo": "dolphin",
-        "rev": "6a0b6ee8a4d5363e669f5faf43abc8f17e4278a8",
-        "sha256": "TeeHnttGmCeOTDTK/gJM+RpusjDDndapZAa3T+oLiq0="
+        "rev": "9810e29a1f3633d32b6643b97a1147d83311d73a",
+        "sha256": "iIaVSJSC3mD1k751vQvWI6x0C/HhfjEaMwfX53FpZv4="
     },
     "dosbox": {
         "owner": "libretro",
         "repo": "dosbox-libretro",
-        "rev": "74cd17ed0ff810ff78cb8c1f1e45513bfe8a0f32",
-        "sha256": "0PIloW7j/87asDJ8IDw4r3r4muxNF+RbvkIRPLZQvRc="
+        "rev": "b7b24262c282c0caef2368c87323ff8c381b3102",
+        "sha256": "PG2eElenlEpu0U/NIh53p0uLqewnEdaq6Aoak5E1P3I="
     },
     "eightyone": {
         "owner": "libretro",
         "repo": "81-libretro",
-        "rev": "2e34567a320cba27b9162b1776db4de3cdb7cf03",
-        "sha256": "vjrHRLzc9Fy0MwV9d+LlcJTGJfVsRauEig8R+erBtfw="
+        "rev": "73f6cca62dabc84df946aea71cf457ce5ae5ea9d",
+        "sha256": "oovIKMZXxtLc+zmbguagTVoMPngokdN3xTBnb/+KUjY="
     },
     "fbalpha2012": {
         "owner": "libretro",
@@ -147,14 +153,14 @@
     "fbneo": {
         "owner": "libretro",
         "repo": "fbneo",
-        "rev": "e4625a196b9232ba93a156e3a5164aa11193f20a",
-        "sha256": "/5JmwuLWWBQWXnqCMjKzOC2XG6wo5a6xgQOYX1P1zcw="
+        "rev": "8678b0fcd02c4049c0cfa40a0ab87fded1bbedd8",
+        "sha256": "MiLYaURj17Sq8V31SDFQ93XH4DAYMQQelVq+4EBmtro="
     },
     "fceumm": {
         "owner": "libretro",
         "repo": "libretro-fceumm",
-        "rev": "b3c35b6515b2b6a789c589f976a4a323ebebe3eb",
-        "sha256": "zwFQGQyO0Vj/IBM1k8JB3D/jB3OwDuGdSHLavr8Fxgw="
+        "rev": "3d3cc53c0177e296af2427c29bbb31902b26f3b8",
+        "sha256": "Z5LqP6IBq0H6uM0027PSkW6JLvVDA/4CrO6bI478Z1o="
     },
     "flycast": {
         "owner": "libretro",
@@ -165,38 +171,38 @@
     "fmsx": {
         "owner": "libretro",
         "repo": "fmsx-libretro",
-        "rev": "11fa9f3c08cde567394c41320ca76798c2c64670",
-        "sha256": "1u5c5oDIjjXEquh6UBv2H1F/Ln7h44DTF1ohDG0Qnww="
+        "rev": "1360c9ff32b390383567774d01fbe5d6dfcadaa3",
+        "sha256": "LLGD29HKpV34IOJ2ygjHZZT7XQqHHXccnpGNfWCuabg="
     },
     "freeintv": {
         "owner": "libretro",
         "repo": "freeintv",
-        "rev": "295dd3c9e4b2d4f652f6a6a904afbe90a8187068",
-        "sha256": "tz0X6AfD7IL3Y50vjgSO5r6sDhu++6Gj8Rp7de5OqMk="
+        "rev": "9a65ec6e31d48ad0dae1f381c1ec61c897f970cb",
+        "sha256": "ZeWw/K6i04XRympqZ6sQG/yjN8cJglVcIkxpyRHx424="
     },
     "gambatte": {
         "owner": "libretro",
         "repo": "gambatte-libretro",
-        "rev": "15536214cdce31894d374b2ffa2494543057082b",
-        "sha256": "cTSoK6rezRajnuWPt7WkYn3SWL0sTu7h5X3Ig1KukDA="
+        "rev": "7e02df60048db0898131ea365f387a026e4e648d",
+        "sha256": "RnFuD8PL+/uPhWe+sSXMPm5+XH8FzCwY+MSquR/AB+o="
     },
     "genesis-plus-gx": {
         "owner": "libretro",
         "repo": "Genesis-Plus-GX",
-        "rev": "7520ac8aae7b08262c0472e724e6ef0bfe41d285",
-        "sha256": "wKcO/dulgZKgXTuHdcQvfSrfxSI5UA0az6qMLtP4K6g="
+        "rev": "5cdb31854074de1662266a0a675866ea7b787b42",
+        "sha256": "vMswSKM5aYlPZu5y4Z1L/+eaPBdQaLPPMKoC7B/xzqc="
     },
     "gpsp": {
         "owner": "libretro",
         "repo": "gpsp",
-        "rev": "f0f0b31f9ab95946965b75fed8d31e19290f3d43",
-        "sha256": "aiegBSpQDyXzVkyWuUpI66QvA1tqS8PQ8+75U89K10A="
+        "rev": "81649a2c8075201bb823cce8fdf16a31c92a3b6c",
+        "sha256": "De9Tke+fp6CtXzm0w6Qzts3jj1j/1uB0kYZfaWyNqA0="
     },
     "gw": {
         "owner": "libretro",
         "repo": "gw-libretro",
-        "rev": "d08a08154ce8ed8e9de80582c108f157e4c6b226",
-        "sha256": "PWd/r4BBmhiNqJdV6OaXHr4XCdR1GyVipq3zvyBcqEs="
+        "rev": "19a1cb3105ca4a82139fb4994e7995fd956f6f8d",
+        "sha256": "luhKXzxrXVNAHw8ArF1I78Zch7XEPwI3aqe0f6WRgD0="
     },
     "handy": {
         "owner": "libretro",
@@ -207,44 +213,44 @@
     "hatari": {
         "owner": "libretro",
         "repo": "hatari",
-        "rev": "e5e36a5262cfeadc3d1c7b411b7a70719c4f293c",
-        "sha256": "T4I3NVEMBKr5HLs60x48VNRl2TMnhqvaF+LTtYQ7qdU="
+        "rev": "1ebf0a0488580ef95c0b28f02223b31813c867c5",
+        "sha256": "i6dr+fFWPatRCIY+ajIZ1p3ERPV5ktv0nxHKxbGE5ao="
     },
     "mame": {
         "owner": "libretro",
         "repo": "mame",
-        "rev": "b7dd999590717638ceade2e24d16d63147aa12ad",
-        "sha256": "QgENNjykhO+WSxAb//J+R7QP3/rZnxqv7sarO4eBYuc="
+        "rev": "fcacbc7811a9b69874fd09b91e7217e44c6a0980",
+        "sha256": "WiBmqBcqxXmeQOmTN4FDDUv680uqAkpYUOnvJ7FXn4k="
     },
     "mame2000": {
         "owner": "libretro",
         "repo": "mame2000-libretro",
-        "rev": "dd9d6612c29bf5b29bc2f94cab2d43fe3dcd69ee",
-        "sha256": "X0fP0bNBk2hqXVdRspylLIjZO563aMXkyX4qgx/3Vr8="
+        "rev": "0208517404e841fce0c094f1a2776a0e1c6c101d",
+        "sha256": "WEJd7wSzY32sqMpMrjCD0hrOyAQq1WMBaGiY/2QQ4BQ="
     },
     "mame2003": {
         "owner": "libretro",
         "repo": "mame2003-libretro",
-        "rev": "3eb27d5f161522cf873c0642f14b8e2267b3820f",
-        "sha256": "TQ4FwboKeEP58hOL2hYs4OYes2o0wSKFSp4CqZV5r6I="
+        "rev": "cb0c89304b2cd584cda7105c6be4e69fa304f0e0",
+        "sha256": "ob/aUh5NZCfQvpA+nEs2QhVXeNBBVZesX/xQfatY9wU="
     },
     "mame2003-plus": {
         "owner": "libretro",
         "repo": "mame2003-plus-libretro",
-        "rev": "e5ee29ecb8182952f861f22516e5791625fe2671",
-        "sha256": "YunfAITR/Etm8lvEab/HigZoBz+ayJQ7ezjItWI/HvE="
+        "rev": "982db57b325b54aa90a60bd2e512b624d3b6642c",
+        "sha256": "uyysUD/PULHyaOw42GJoBsT9fYdYuAl4eLCVNRU8/Sw="
     },
     "mame2010": {
         "owner": "libretro",
         "repo": "mame2010-libretro",
-        "rev": "932e6f2c4f13b67b29ab33428a4037dee9a236a8",
-        "sha256": "HSZRSnc+0300UE9fPcUOMrXABlxHhTewkFPTqQ4Srxs="
+        "rev": "5f524dd5fca63ec1dcf5cca63885286109937587",
+        "sha256": "OmJgDdlan/niGQfajv0KNG8NJfEKn7Nfe6GRQD+TZ8M="
     },
     "mame2015": {
         "owner": "libretro",
         "repo": "mame2015-libretro",
-        "rev": "e6a7aa4d53726e61498f68d6b8e2c092a2169fa2",
-        "sha256": "IgiLxYYuUIn3YE+kQCXzgshES2VNpUHn0Qjsorw0w/s="
+        "rev": "2599c8aeaf84f62fe16ea00daa460a19298c121c",
+        "sha256": "TURTX0XrvqwqKG3O3aCttDAdicBdge5F1thVvYgEHaw="
     },
     "mame2016": {
         "owner": "libretro",
@@ -255,20 +261,20 @@
     "melonds": {
         "owner": "libretro",
         "repo": "melonds",
-        "rev": "e93ec3e462d3dfc1556781510a3cee113f02abb2",
-        "sha256": "NDrsqX17OKw1/PIZSrWAxhVl+Qk/xG7lCnr6Ts+7YJ4="
+        "rev": "6a03f3f11a729dbf698ec53954c735a0680aca01",
+        "sha256": "GH/G/UzwjNqHwtIwx6VohP4XsJKe+EFU2n+GX43IByM="
     },
     "mesen": {
         "owner": "libretro",
         "repo": "mesen",
-        "rev": "bb9ea02eba28682986044a6f49329ec533aa26ba",
-        "sha256": "G2NQDpByvI9RFEwrRiKXcMnPtVtqpvEoZgk7/fk5qCU="
+        "rev": "9b412c1533a6d7eec7b2904775cbd26c21f02119",
+        "sha256": "Tf+lWfSU7AuW6Um5TXkWNAeg35W08YkYQwW0Yx3iNTM="
     },
     "mesen-s": {
         "owner": "libretro",
         "repo": "mesen-s",
-        "rev": "b0b53409eecb696fb13f411ffde72e8f576feb09",
-        "sha256": "lDHyeIsVsI5+ZK8EJI50alrFuu0uJmxscda5bR1UmQQ="
+        "rev": "32a7adfb4edb029324253cb3632dfc6599ad1aa8",
+        "sha256": "/OOMH7kt9Pmkdmy5m+I8FMvog5mqZHyrZvfjHccz8oo="
     },
     "meteor": {
         "owner": "libretro",
@@ -279,114 +285,120 @@
     "mgba": {
         "owner": "libretro",
         "repo": "mgba",
-        "rev": "5d48e0744059ebf38a4e937b256ffd5df4e0d103",
-        "sha256": "OYw2nlldFx5B7WX0E8Gbgfp1j4h65ZxyKDS9tneHXQg="
+        "rev": "db7ace387cdc87d9f2bd4f9f5211c26ce0b07867",
+        "sha256": "i/U5yrnGQBRHqBu8c/mQ7Eov43+6IOOs+H8pSKXNM1E="
     },
     "mupen64plus": {
         "owner": "libretro",
         "repo": "mupen64plus-libretro-nx",
-        "rev": "6e9dcd2cd9d23d3e79eaf2349bf7e9f25ad45bf1",
-        "sha256": "rs/VL2K6aS8Rl01IyxUiWipzLEzg+7+fbXxI0qN5X/I="
+        "rev": "c10546e333d57eb2e5a6ccef1e84cb6f9274c526",
+        "sha256": "dbS32slJBfz8DHeIQy20lAYw0+ig0LRgIaGfqW082xs="
     },
     "neocd": {
         "owner": "libretro",
         "repo": "neocd_libretro",
-        "rev": "327aeceecdf71c8a0c0af3d6dc53686c94fe44ad",
-        "sha256": "cY0P+0EQ0b9df+YT2EMvrxjp5L+DwIg31rEJqchU+hc="
+        "rev": "b7d96e794f2dfa500cba46c78cbc3c28349cfd05",
+        "sha256": "TG5xIqIM0MlHDNtPhyISqo/ctTqemKROwXgoqUsCQ0E="
     },
     "nestopia": {
         "owner": "libretro",
         "repo": "nestopia",
-        "rev": "a9e197f2583ef4f36e9e77d930a677e63a2c2f62",
-        "sha256": "QqmWSk8Ejf7QMJk0cVBgpnyqcK6oLjCnnXMXInuWfYc="
+        "rev": "a9ee6ca84f04990e209880fe47144e62b14253db",
+        "sha256": "q3pD2Cm/a62x3xW8JymU9w82zHlT0BoPlaSfzjZzh/c="
     },
     "np2kai": {
         "owner": "AZO234",
         "repo": "NP2kai",
-        "rev": "2b09ea6a589cdcae27bca27160b3f82638fbb45d",
-        "sha256": "M3kGA1TU3xui6of9XgUspI+Zf+hjYP1d2mgKwxsy3IQ=",
+        "rev": "606fafa7081b62df5f4727c34560da23927c21cd",
+        "sha256": "qS7OrY8bFkAmRgbzLCw9PqgxtKuVNKI+tsDVU7PqWIw=",
         "fetchSubmodules": true
     },
     "nxengine": {
         "owner": "libretro",
         "repo": "nxengine-libretro",
-        "rev": "bc692a392473a45f63cdccbb353c3445b530d671",
-        "sha256": "tAZkYHRKL+mI6f7YCnaU0qTSOZGW2o20p6wovMK1n2k="
+        "rev": "aa32afb8df8461920037bdbbddbff00bf465c6de",
+        "sha256": "Ic5YsNLoEZJ/vkjthwypwLN3ntB/5EX8bU92V80S7R4="
     },
     "o2em": {
         "owner": "libretro",
         "repo": "libretro-o2em",
-        "rev": "641f06d67d192a0677ec861fcb731d3ce8da0f87",
-        "sha256": "s3FreOziXeGhUyQdSoOywZldD21m3+OXK0EJ2Z8rXiY="
+        "rev": "3303cc15e4323280084471f694f6d34c78199725",
+        "sha256": "xH8Dlsg84q8awxjObMPXKZcJSwmix1YdRXIpee7rw6o="
     },
     "opera": {
         "owner": "libretro",
         "repo": "opera-libretro",
-        "rev": "3849c969c64b82e622a7655b327fa94bc5a4c7cc",
-        "sha256": "McSrvjrYTemqAAnfHELf9qXC6n6Dg4kNsUDA7e2DvkE="
+        "rev": "8a49bb8877611037438aeb857cb182f41ee0e3a1",
+        "sha256": "oH+sQi4D+xkqiJbq7fgGdHjgvyLt8UjlgXIo7K3wXZM="
     },
     "parallel-n64": {
         "owner": "libretro",
         "repo": "parallel-n64",
-        "rev": "b804ab1a199d6ff1f8fef4aa7dfcf663990e430b",
-        "sha256": "zAet6hYa/79CBbvwZNTNs/ayWuHHlwg+0Y4BAUFddBc="
+        "rev": "a03fdcba6b2e9993f050b50112f597ce2f44fa2c",
+        "sha256": "aJG+s+1OkHQHPvVzlJWU/VziQWj1itKkRwqcEBK+lgA="
     },
     "pcsx2": {
         "owner": "libretro",
         "repo": "pcsx2",
-        "rev": "0251730a21d7238856d79aa25e2942b48edb38f6",
-        "sha256": "a/lWLBCww4QwxdO7Sbvmfq0XF9FnP4xzF51ljsWk46I="
+        "rev": "ad7650949e6c8c87cd2c5e278af88e3722a321bc",
+        "sha256": "iqXCW28werxbZNo1hlDLiD3ywSZ9hvWmxwGPJ5bRZ+w="
     },
     "pcsx_rearmed": {
         "owner": "libretro",
         "repo": "pcsx_rearmed",
-        "rev": "e24732050e902bd5402b2b7da7c391d2ca8fa799",
-        "sha256": "tPz5E3QO6FucjYOzdjbY2FHLPz1Fmms10tdt7rZIW8U="
+        "rev": "5b406fd9567c0829171af44b3325dae6dd155732",
+        "sha256": "V+z58fRSaLurDiu4Y/xQjndkMKPSmEGjay3foDkppM0="
     },
     "picodrive": {
         "owner": "libretro",
         "repo": "picodrive",
-        "rev": "7ff457f2f833570013f2a7e2608ac40632e0735d",
-        "sha256": "xEG5swvvWFhvosC1XpFaZphESNaf4AtX+6UE02B57j8=",
+        "rev": "26719f348eb579a8372e2c58ef0132d95d9dc817",
+        "sha256": "xD8RxFHeKOltIc35Zudj29x+vkq2AXfSKu0/ZzQQHi4=",
         "fetchSubmodules": true
     },
     "play": {
         "owner": "jpd002",
         "repo": "Play-",
-        "rev": "39eb5c2eb6da65dc76b1c4d1319175a68120a77a",
-        "sha256": "EF3p0lvHjKGt4pxtTAkDM+uHsnW72lN+Ki8BaZIk/BQ=",
+        "rev": "1129440ab6ede8263275dc3a5eec1624d20442fb",
+        "sha256": "nTJjxVPGOofnIZbjGe3GZDIj4YnC73IbSdGsSuVIjEA=",
         "fetchSubmodules": true
     },
     "ppsspp": {
         "owner": "hrydgard",
         "repo": "ppsspp",
-        "rev": "83b8211abf7fb705835eb1ccf8feae04816ae96c",
-        "sha256": "8K4bz/GUnE8GrlAVFULMXLC+i3ZYvR28EpehEg6up4s=",
+        "rev": "16f93a26844b26e11cf9becfd275c4a637bfd1ab",
+        "sha256": "k1URDPE4kRMY1LUeR2zcLJFGt0Gnt5N8gTQHpIxDdRw=",
         "fetchSubmodules": true
     },
     "prboom": {
         "owner": "libretro",
         "repo": "libretro-prboom",
-        "rev": "b22a6b19fd976a14374db9083baea9c91b079106",
-        "sha256": "NmEWRTHaZjV2Y6Wrc3WOamXCnOawKc2ja1KBDxokRiY="
+        "rev": "4e671fa0a4b7b892e17ac4e1803c9d627653a4c1",
+        "sha256": "d2/cpfhNczZkHzMGQIxO9jw65AMs9Jmh4ItiLLdDYsk="
     },
     "prosystem": {
         "owner": "libretro",
         "repo": "prosystem-libretro",
-        "rev": "fbf62c3dacaac694f7ec26cf9be10a51b27271e7",
-        "sha256": "Opb6CUeT/bnaTg4MJo7DNsVyaPa73PLbIor25HHWzZ0="
+        "rev": "cf544d3c8e40ff197ea5bb177a1269db31077803",
+        "sha256": "A7yQwzM8ewI+UCPQVyO7DNyiQCTw2yG1soi6l7T3pDE="
+    },
+    "puae": {
+        "owner": "libretro",
+        "repo": "libretro-uae",
+        "rev": "1b7dd443ff89d667d99f8c44454a91ed59bcabd9",
+        "sha256": "YJiZEtB0rBFffEZj/hB7zEFBUp02kCzblq4CtCmygKo="
     },
     "quicknes": {
         "owner": "libretro",
         "repo": "QuickNES_Core",
-        "rev": "e6f08c165af45fc2d2f26c80ba0cfc33e26f9cfe",
-        "sha256": "JQtlqN3mvIwKy6iN9opHPHnh0E7AIn9JVitIfXklI/I="
+        "rev": "1b88a09f1c386ff9ee46bb371583ae04c5cb5dd0",
+        "sha256": "Q7DDufGTdP+R05ND56PxMNR96ZacJFxPi0ETieV2B58="
     },
     "sameboy": {
         "owner": "libretro",
         "repo": "sameboy",
-        "rev": "b154b7d3d885a3cf31203f0b8f50d3b37c8b742b",
-        "sha256": "tavGHiNpRiPkibi66orMf93cnCqQCD8XhSl/36nl/9M="
+        "rev": "09138330990da32362246c7034cf4de2ea0a2a2b",
+        "sha256": "hQWIuNwCykkJR+6naNarR50kUvIFNny+bbZHR6/GA/4="
     },
     "scummvm": {
         "owner": "libretro",
@@ -397,38 +409,38 @@
     "smsplus-gx": {
         "owner": "libretro",
         "repo": "smsplus-gx",
-        "rev": "9de9847dc8ba458e9522d5ae8b87bf71ad437257",
-        "sha256": "XzqQ/3XH5L79UQep+DZ+mDHnUJKZQXzjNCZNZw2mGvY="
+        "rev": "60af17ddb2231ba98f4ed1203e2a2f58d08ea088",
+        "sha256": "2SZR9BOTYLmtjEF4Bdl49H2pFNEIaU68VqlA7ll5TqU="
     },
     "snes9x": {
         "owner": "snes9xgit",
         "repo": "snes9x",
-        "rev": "3c729a9763263bc3a69f48370e43ae05e672970a",
-        "sha256": "01M6Wvbu1omMwh3Xg4RGh028jirGs7mLpxwKJgMRQxA="
+        "rev": "28be1a196d2c59ed4b6489d487187569a7370aff",
+        "sha256": "FW4ynSS+R1ygQaCS0UrWGktfHGtcy0P/Mp/BXKfmII0="
     },
     "snes9x2002": {
         "owner": "libretro",
         "repo": "snes9x2002",
-        "rev": "c4397de75a5f11403d154abd935e39fe969bca94",
-        "sha256": "yL4SIRR1Er+7Iq3YPfoe5ES47nvyA3UmGK+upLzKiFA="
+        "rev": "540baad622d9833bba7e0696193cb06f5f02f564",
+        "sha256": "WJh8Qf1/uFaL9f9d28qXsbpeAZfYGPgjoty3G6XAKSs="
     },
     "snes9x2005": {
         "owner": "libretro",
         "repo": "snes9x2005",
-        "rev": "23f759bc4bf2e39733296f7749e446418e3cd0f3",
-        "sha256": "/bZrMp7NHgdYvA3Tw1ZoWXRg7VxmatRUX5cCJsU3NCY="
+        "rev": "fd45b0e055bce6cff3acde77414558784e93e7d0",
+        "sha256": "zjA/G62V38/hj+WjJDGAs48AcTUIiMWL8feCqLsCRnI="
     },
     "snes9x2010": {
         "owner": "libretro",
         "repo": "snes9x2010",
-        "rev": "c98224bc74aa0bbf355d128b22e4a2a4e94215b0",
-        "sha256": "mf5msdwdcRRfFWHwmWLS/qKd7gNlLwexGEB6wB6TfhE="
+        "rev": "e86e54624a7910a64a9a744e3734d4067c48d240",
+        "sha256": "U1eeXuhYssAOgiNOZ7fr/8rkPScts3GmWgK6ki39PVA="
     },
     "stella": {
         "owner": "stella-emu",
         "repo": "stella",
-        "rev": "efb2a9f299cad241e12d811580f28d75b6c3438d",
-        "sha256": "QYwDTd8EZUMXJiuSJtoW8XQXgl+Wx0lPkNLOwzM5bzA="
+        "rev": "65115cc3a133d68979f3096bdecb067bcaedb493",
+        "sha256": "letOnjaIGIjC9xwj5C156VkBhMPFtVq12FG7SuC5+OY="
     },
     "stella2014": {
         "owner": "libretro",
@@ -439,14 +451,14 @@
     "swanstation": {
         "owner": "libretro",
         "repo": "swanstation",
-        "rev": "0e53a5ac09a30d73d78b628f7e4954ebe5615801",
-        "sha256": "vOu99fsm2oeSi96tWR+vV5suZSYCyXJVgOdvjnKbNhg="
+        "rev": "b6a18318bd7bf0d3b28b50d2b554810ea11b30cb",
+        "sha256": "jZ6SfiHFJyaTFvINrEe61yhUtWYoqRzaAi0vLuDnMuo="
     },
     "tgbdual": {
         "owner": "libretro",
         "repo": "tgbdual-libretro",
-        "rev": "1e0c4f931d8c5e859e6d3255d67247d7a2987434",
-        "sha256": "0wHv9DpKuzJ/q5vERqCo4GBLre2ggClBIWSjGnMLQq8="
+        "rev": "a6f3018e6a23030afc1873845ee54d4b2d8ec9d3",
+        "sha256": "MBUgYXX/Pc+TkwoS7OwbXSPssKUf6lwWx/bKhvwDkHs="
     },
     "thepowdertoy": {
         "owner": "libretro",
@@ -457,15 +469,15 @@
     "tic80": {
         "owner": "libretro",
         "repo": "tic-80",
-        "rev": "e9f62f85a154796c6baaee8a9f6fd0cfdd447019",
-        "sha256": "JTAoIqxqpaLjsQiIpJ4wQsREI5/rTxVxDywoL3oLI4Q=",
+        "rev": "bd6ce86174fc7c9d7d3a86263acf3a7de1b62c11",
+        "sha256": "RFp8sTSRwD+cgW3EYk3nBeY+zVKgZVQI5mjtfe2a64Q=",
         "fetchSubmodules": true
     },
     "vba-m": {
         "owner": "libretro",
         "repo": "vbam-libretro",
-        "rev": "254f6effebe882b7d3d29d9e417c6aeeabc08026",
-        "sha256": "vJWjdqJ913NLGL4G15sRPqO/wp9xPsuhUMLUuAbDRKk="
+        "rev": "7c25d64d6903c6d859cce781c52da0671c4f7d3e",
+        "sha256": "U+jBM34sZxny9lpuegQ8YDKBwYrWOAyLBMKumoQCok4="
     },
     "vba-next": {
         "owner": "libretro",
@@ -476,8 +488,8 @@
     "vecx": {
         "owner": "libretro",
         "repo": "libretro-vecx",
-        "rev": "141af284202c86ed0d4ce9030c76954a144287cf",
-        "sha256": "p5vMuG2vr3BTJOQWNcTPb89MlkVrRvJNTIJSU8r9zfU="
+        "rev": "b5c17bb7fd4a704f58160bc699322a16d0643396",
+        "sha256": "nICXrVyoMWs2yDcewHd7z6rBt+haY/Dqf5lvF6RLnyg="
     },
     "virtualjaguar": {
         "owner": "libretro",
@@ -488,7 +500,7 @@
     "yabause": {
         "owner": "libretro",
         "repo": "yabause",
-        "rev": "17dfcd8de4700341d972993501d3a043925675ce",
-        "sha256": "xwW7Oe3Cy3yC0xC5acLW6OGUIG+dKd1mwiXK5ZAumdo="
+        "rev": "c7e02721eddb3de0ec7ae0d61e9e3afa5f586a62",
+        "sha256": "Y2YsPpgBA021pRDOFqH29zsRSbFIpRo5fq+tkknJbSA="
     }
 }
diff --git a/pkgs/applications/emulators/retroarch/update_cores.py b/pkgs/applications/emulators/retroarch/update_cores.py
index bb6fd2884a500..b546569d283fe 100755
--- a/pkgs/applications/emulators/retroarch/update_cores.py
+++ b/pkgs/applications/emulators/retroarch/update_cores.py
@@ -18,6 +18,7 @@ CORES = {
     "beetle-psx": {"repo": "beetle-psx-libretro"},
     "beetle-saturn": {"repo": "beetle-saturn-libretro"},
     "beetle-snes": {"repo": "beetle-bsnes-libretro"},
+    "beetle-supafaust": {"repo": "supafaust"},
     "beetle-supergrafx": {"repo": "beetle-supergrafx-libretro"},
     "beetle-vb": {"repo": "beetle-vb-libretro"},
     "beetle-wswan": {"repo": "beetle-wswan-libretro"},
@@ -71,6 +72,7 @@ CORES = {
     "ppsspp": {"repo": "ppsspp", "owner": "hrydgard", "fetch_submodules": True},
     "prboom": {"repo": "libretro-prboom"},
     "prosystem": {"repo": "prosystem-libretro"},
+    "puae": {"repo": "libretro-uae"},
     "quicknes": {"repo": "QuickNES_Core"},
     "sameboy": {"repo": "sameboy"},
     "scummvm": {"repo": "scummvm"},
diff --git a/pkgs/applications/emulators/retroarch/wrapper.nix b/pkgs/applications/emulators/retroarch/wrapper.nix
index 6adcb8ffd8b44..535cd40db6c34 100644
--- a/pkgs/applications/emulators/retroarch/wrapper.nix
+++ b/pkgs/applications/emulators/retroarch/wrapper.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation {
       The following cores are included:
       ${lib.concatStringsSep "\n" (map (x: "  - ${x.name}") cores)}
     '';
-    # FIXME: exits with error on macOS:
+    # 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;
   };
diff --git a/pkgs/applications/emulators/rpcs3/default.nix b/pkgs/applications/emulators/rpcs3/default.nix
index 3f8c2fc97b0e2..c53276659e089 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 = "14141-d686b48f6";
-  rpcs3Version = "0.0.24-14141-d686b48f6";
-  rpcs3Revision = "d686b48f6549c736661e14d1e0990b043c32e3c2";
-  rpcs3Sha256 = "1jzpb189isy9kc6l5cy1nfx0wq5cri753sh32b1xq259lkqihdp5";
+  rpcs3GitVersion = "14241-92b08a4fa";
+  rpcs3Version = "0.0.24-14241-92b08a4fa";
+  rpcs3Revision = "92b08a4fafb1e36ccc23ac7e2a9b10e91a9b6df7";
+  rpcs3Sha256 = "01h9m4cdywdfhiv5kjd7cv53spv3g2ixk3dvji14vi28zac8jcxb";
 
   ittapi = fetchFromGitHub {
     owner = "intel";
diff --git a/pkgs/applications/emulators/ryujinx/default.nix b/pkgs/applications/emulators/ryujinx/default.nix
index fa0b63ba1be1b..765f7b12721aa 100644
--- a/pkgs/applications/emulators/ryujinx/default.nix
+++ b/pkgs/applications/emulators/ryujinx/default.nix
@@ -1,5 +1,7 @@
 { lib
 , buildDotnetModule
+, dotnetCorePackages
+, stdenvNoCC
 , fetchFromGitHub
 , wrapGAppsHook
 , libX11
@@ -86,6 +88,8 @@ buildDotnetModule rec {
     "/p:ExtraDefineConstants=DISABLE_UPDATER"
   ];
 
+  dotnetRestoreFlags = [ "--runtime ${dotnetCorePackages.sdk_6_0.systemToDotnetRid stdenvNoCC.targetPlatform.system}" ];
+
   executables = [
     "Ryujinx.Headless.SDL2"
     "Ryujinx.Ava"
diff --git a/pkgs/applications/emulators/ryujinx/deps.nix b/pkgs/applications/emulators/ryujinx/deps.nix
index 4db1f8d2fec78..39fef4cad2ee3 100644
--- a/pkgs/applications/emulators/ryujinx/deps.nix
+++ b/pkgs/applications/emulators/ryujinx/deps.nix
@@ -1,3 +1,6 @@
+# This file was automatically generated by passthru.fetch-deps.
+# Please dont edit it manually, your changes might get overwritten!
+
 { fetchNuGet }: [
   (fetchNuGet { pname = "AtkSharp"; version = "3.22.25.128"; sha256 = "0fg01zi7v6127043jzxzihirsdp187pyj83gfa6p79cx763l7z94"; })
   (fetchNuGet { pname = "Avalonia"; version = "0.10.15"; sha256 = "02rf96gxpafbk0ilg3nxf0fas9gkpb25kzqc2lnbxp8h366qg431"; })
@@ -132,15 +135,6 @@
   (fetchNuGet { pname = "runtime.unix.System.Net.Sockets"; version = "4.3.0"; sha256 = "03npdxzy8gfv035bv1b9rz7c7hv0rxl5904wjz51if491mw0xy12"; })
   (fetchNuGet { pname = "runtime.unix.System.Private.Uri"; version = "4.3.0"; sha256 = "1jx02q6kiwlvfksq1q9qr17fj78y5v6mwsszav4qcz9z25d5g6vk"; })
   (fetchNuGet { pname = "runtime.unix.System.Runtime.Extensions"; version = "4.3.0"; sha256 = "0pnxxmm8whx38dp6yvwgmh22smknxmqs5n513fc7m4wxvs1bvi4p"; })
-  (fetchNuGet { pname = "runtime.win.Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0k1h8nnp1s0p8rjwgjyj1387cc1yycv0k22igxc963lqdzrx2z36"; })
-  (fetchNuGet { pname = "runtime.win.System.Console"; version = "4.3.0"; sha256 = "0x2yajfrbc5zc6g7nmlr44xpjk6p1hxjq47jn3xki5j7i33zw9jc"; })
-  (fetchNuGet { pname = "runtime.win.System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "16fbn4bcynad1ygdq0yk1wmckvs8jvrrf104xa5dc2hlc8y3x58f"; })
-  (fetchNuGet { pname = "runtime.win.System.IO.FileSystem"; version = "4.3.0"; sha256 = "1c01nklbxywszsbfaxc76hsz7gdxac3jkphrywfkdsi3v4bwd6g8"; })
-  (fetchNuGet { pname = "runtime.win.System.Net.Primitives"; version = "4.3.0"; sha256 = "1dixh195bi7473n17hspll6i562gghdz9m4jk8d4kzi1mlzjk9cf"; })
-  (fetchNuGet { pname = "runtime.win.System.Net.Sockets"; version = "4.3.0"; sha256 = "0lr3zki831vs6qhk5wckv2b9qbfk9rcj0ds2926qvj1b9y9m6sck"; })
-  (fetchNuGet { pname = "runtime.win.System.Runtime.Extensions"; version = "4.3.0"; sha256 = "1700famsxndccfbcdz9q14qb20p49lax67mqwpgy4gx3vja1yczr"; })
-  (fetchNuGet { pname = "runtime.win7-x64.runtime.native.System.IO.Compression"; version = "4.3.0"; sha256 = "1dmbmksnxg12fk2p0k7rzy16448mddr2sfrnqs0rhhrzl0z22zi5"; })
-  (fetchNuGet { pname = "runtime.win7.System.Private.Uri"; version = "4.3.0"; sha256 = "0bxkcmklp556dc43bra8ngc8wymcbbflcydi0xwq0j22gm66xf2m"; })
   (fetchNuGet { pname = "Ryujinx.Audio.OpenAL.Dependencies"; version = "1.21.0.1"; sha256 = "0z5k42h252nr60d02p2ww9190d7k1kzrb26vil4ydfhxqqqv6w9l"; })
   (fetchNuGet { pname = "Ryujinx.Graphics.Nvdec.Dependencies"; version = "5.0.1-build10"; sha256 = "05r3fh92raaydf4vcih77ivymbs97kqwjlgqdpaxa11aqq0hq753"; })
   (fetchNuGet { pname = "Ryujinx.SDL2-CS"; version = "2.0.22-build20"; sha256 = "03d1rv0rlr2z7ynqixgj9xqlksplk1vsvq5wxjf5c6c6zcknx01r"; })
@@ -293,7 +287,6 @@
   (fetchNuGet { pname = "System.Text.RegularExpressions"; version = "4.3.0"; sha256 = "1bgq51k7fwld0njylfn7qc5fmwrk2137gdq7djqdsw347paa9c2l"; })
   (fetchNuGet { pname = "System.Threading"; version = "4.0.11"; sha256 = "19x946h926bzvbsgj28csn46gak2crv2skpwsx80hbgazmkgb1ls"; })
   (fetchNuGet { pname = "System.Threading"; version = "4.3.0"; sha256 = "0rw9wfamvhayp5zh3j7p1yfmx9b5khbf4q50d8k5rk993rskfd34"; })
-  (fetchNuGet { pname = "System.Threading.Overlapped"; version = "4.3.0"; sha256 = "1nahikhqh9nk756dh8p011j36rlcp1bzz3vwi2b4m1l2s3vz8idm"; })
   (fetchNuGet { pname = "System.Threading.Tasks"; version = "4.0.11"; sha256 = "0nr1r41rak82qfa5m0lhk9mp0k93bvfd7bbd9sdzwx9mb36g28p5"; })
   (fetchNuGet { pname = "System.Threading.Tasks"; version = "4.3.0"; sha256 = "134z3v9abw3a6jsw17xl3f6hqjpak5l682k2vz39spj4kmydg6k7"; })
   (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.0.0"; sha256 = "1cb51z062mvc2i8blpzmpn9d9mm4y307xrwi65di8ri18cz5r1zr"; })
diff --git a/pkgs/applications/file-managers/felix-fm/default.nix b/pkgs/applications/file-managers/felix-fm/default.nix
new file mode 100644
index 0000000000000..121a1708a5b78
--- /dev/null
+++ b/pkgs/applications/file-managers/felix-fm/default.nix
@@ -0,0 +1,25 @@
+{ lib, rustPlatform, fetchFromGitHub, zoxide }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "felix";
+  version = "1.2.0";
+
+  src = fetchFromGitHub {
+    owner = "kyoheiu";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-7WeikYd/mADsp9DQ0jelhuZo5ZiyJrHG9HBg/YLpjZY=";
+  };
+
+  cargoSha256 = "sha256-IUiyDk+TRfODXQ+45ARcFximkLVk32pqvJfn23H0kAw=";
+
+  checkInputs = [ zoxide ];
+
+  meta = with lib; {
+    description = "A tui file manager with vim-like key mapping";
+    homepage = "https://github.com/kyoheiu/felix";
+    license = licenses.mit;
+    maintainers = with maintainers; [ figsoda ];
+    mainProgram = "fx";
+  };
+}
diff --git a/pkgs/applications/file-managers/spacefm/default.nix b/pkgs/applications/file-managers/spacefm/default.nix
index 433109cd86af3..334228f98ead1 100644
--- a/pkgs/applications/file-managers/spacefm/default.nix
+++ b/pkgs/applications/file-managers/spacefm/default.nix
@@ -45,9 +45,9 @@ stdenv.mkDerivation rec {
     gappsWrapperArgs+=(--prefix XDG_DATA_DIRS : "${shared-mime-info}/share")
   '';
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [ pkg-config intltool ];
   buildInputs = [
-    gtk3 udev desktop-file-utils shared-mime-info intltool
+    gtk3 udev desktop-file-utils shared-mime-info
     wrapGAppsHook ffmpegthumbnailer jmtpfs lsof udisks2
   ] ++ (if ifuseSupport then [ ifuse ] else []);
   # Introduced because ifuse doesn't build due to CVEs in libplist
diff --git a/pkgs/applications/file-managers/xfe/default.nix b/pkgs/applications/file-managers/xfe/default.nix
index d59b936608c84..c861c695598e4 100644
--- a/pkgs/applications/file-managers/xfe/default.nix
+++ b/pkgs/applications/file-managers/xfe/default.nix
@@ -9,8 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "1v1v0vcbnm30kpyd3rj8f56yh7lfnwy7nbs9785wi229b29fiqx1";
   };
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ fox gettext xlibsWrapper gcc intltool file libpng ];
+  nativeBuildInputs = [ pkg-config intltool ];
+  buildInputs = [ fox gettext xlibsWrapper gcc file libpng ];
 
   preConfigure = ''
     sed -i s,/usr/share/xfe,$out/share/xfe, src/xfedefs.h
diff --git a/pkgs/applications/gis/spatialite-gui/default.nix b/pkgs/applications/gis/spatialite-gui/default.nix
index 541d0da8d734e..3fc5b08beb171 100644
--- a/pkgs/applications/gis/spatialite-gui/default.nix
+++ b/pkgs/applications/gis/spatialite-gui/default.nix
@@ -21,6 +21,7 @@
 , virtualpg
 , wxGTK
 , wxmac
+, xz
 , zstd
 , Carbon
 , Cocoa
@@ -56,6 +57,7 @@ stdenv.mkDerivation rec {
     proj
     sqlite
     virtualpg
+    xz
     zstd
   ] ++ lib.optional stdenv.isLinux wxGTK
     ++ lib.optionals stdenv.isDarwin [ Carbon Cocoa IOKit wxmac ];
diff --git a/pkgs/applications/graphics/artem/default.nix b/pkgs/applications/graphics/artem/default.nix
new file mode 100644
index 0000000000000..5747c88b24bbf
--- /dev/null
+++ b/pkgs/applications/graphics/artem/default.nix
@@ -0,0 +1,50 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, installShellFiles
+, pkg-config
+, openssl
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "artem";
+  version = "1.1.5";
+
+  src = fetchFromGitHub {
+    owner = "finefindus";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1jax39gizlcbqnkjckxwm5h0wdk5dk8dasaj9wxv7yidbcbgj4zh";
+  };
+
+  cargoSha256 = "sha256-n2NOWrgcMVHpNCHL7r8+Kl1e01XYadaNM7UdE8fQo1U=";
+
+  nativeBuildInputs = [ installShellFiles pkg-config ];
+
+  buildInputs = [ openssl ];
+
+  OPENSSL_NO_VENDOR = 1;
+
+  checkFlags = [
+    # require internet access
+    "--skip=arguments::input::url_input"
+    "--skip=full_file_compare_url"
+
+    # flaky
+    "--skip=full_file_compare_html"
+  ];
+
+  postInstall = ''
+    installManPage $releaseDir/build/artem-*/out/artem.1
+    installShellCompletion $releaseDir/build/artem-*/out/artem.{bash,fish} \
+      --zsh $releaseDir/build/artem-*/out/_artem
+  '';
+
+  meta = with lib; {
+    description = "A small CLI program to convert images to ASCII art";
+    homepage = "https://github.com/finefindus/artem";
+    changelog = "https://github.com/finefindus/artem/blob/v${version}/CHANGELOG.md";
+    license = licenses.mpl20;
+    maintainers = with maintainers; [ figsoda ];
+  };
+}
diff --git a/pkgs/applications/graphics/gpicview/default.nix b/pkgs/applications/graphics/gpicview/default.nix
index ae1e64297bd57..06c3b03ae5330 100644
--- a/pkgs/applications/graphics/gpicview/default.nix
+++ b/pkgs/applications/graphics/gpicview/default.nix
@@ -16,9 +16,9 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [ pkg-config intltool ];
 
-  buildInputs = [ intltool gtk2 ];
+  buildInputs = [ gtk2 ];
 
   meta = with lib; {
     description = "A simple and fast image viewer for X";
diff --git a/pkgs/applications/graphics/hydrus/default.nix b/pkgs/applications/graphics/hydrus/default.nix
index 4b421b41d9a3d..06cab430bc3f1 100644
--- a/pkgs/applications/graphics/hydrus/default.nix
+++ b/pkgs/applications/graphics/hydrus/default.nix
@@ -10,14 +10,14 @@
 
 python3Packages.buildPythonPackage rec {
   pname = "hydrus";
-  version = "500";
+  version = "501";
   format = "other";
 
   src = fetchFromGitHub {
     owner = "hydrusnetwork";
     repo = "hydrus";
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-gsOto37++++ucpDC0ri3HhROp7v6qlHENjFvsbuyM6k=";
+    sha256 = "sha256-dmQD3CAAAhE6IOfT38PHUIlHdDFdk6HZ6ZEZmKw7+WM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/graphics/image-roll/default.nix b/pkgs/applications/graphics/image-roll/default.nix
index 49cf0ff1b6057..461a07837d83b 100644
--- a/pkgs/applications/graphics/image-roll/default.nix
+++ b/pkgs/applications/graphics/image-roll/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , glib
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook4
 , gtk4
 }:
 
@@ -20,7 +20,7 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "sha256-cUE2IZOunR/NIo/qytORRfNqCsf87LfpKA8o/v4Nkhk=";
 
-  nativeBuildInputs = [ glib pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ glib pkg-config wrapGAppsHook4 ];
 
   buildInputs = [ gtk4 ];
 
@@ -29,7 +29,7 @@ rustPlatform.buildRustPackage rec {
     "--skip=file_list::tests"
 
     # sometimes fails on darwin
-    "image_list::tests::save_current_image_overwrites_image_at_current_image_path_when_filename_is_set_to_none"
+    "--skip=image_list::tests::save_current_image_overwrites_image_at_current_image_path_when_filename_is_set_to_none"
   ];
 
   postInstall = ''
diff --git a/pkgs/applications/graphics/pineapple-pictures/default.nix b/pkgs/applications/graphics/pineapple-pictures/default.nix
index d6e0724383764..2877d81d4110f 100644
--- a/pkgs/applications/graphics/pineapple-pictures/default.nix
+++ b/pkgs/applications/graphics/pineapple-pictures/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "pineapple-pictures";
-  version = "0.6.3";
+  version = "0.6.4";
 
   src = fetchFromGitHub {
     owner = "BLumia";
     repo = "pineapple-pictures";
     rev = version;
-    sha256 = "sha256-9Nlrei3TxZr3tv0BtlfsKAvDJhQHgd21FzLnzitYF3U=";
+    sha256 = "sha256-HOZ1BQIXrjVi2Y+2czt64pb++KGyN+6yDZ5Inu8NhJY=";
   };
 
   nativeBuildInputs = [
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     qtsvg
-    exiv2.lib
+    exiv2
   ];
 
   meta = with lib; {
diff --git a/pkgs/applications/graphics/pinta/deps.nix b/pkgs/applications/graphics/pinta/deps.nix
index 57c2c152edf84..66f7e61267247 100644
--- a/pkgs/applications/graphics/pinta/deps.nix
+++ b/pkgs/applications/graphics/pinta/deps.nix
@@ -1,3 +1,6 @@
+# This file was automatically generated by passthru.fetch-deps.
+# Please dont edit it manually, your changes might get overwritten!
+
 { fetchNuGet }: [
   (fetchNuGet { pname = "AtkSharp"; version = "3.24.24.34"; sha256 = "1jn1vgi9xm0jp7769k6sbdi8d273kigjrsh93i6s4c03hqxv7cqs"; })
   (fetchNuGet { pname = "CairoSharp"; version = "3.24.24.34"; sha256 = "0pydn1k0cam1gclg9sc1sbnmbyzh28qlc5qanyxcylwghink3kgz"; })
diff --git a/pkgs/applications/graphics/synfigstudio/default.nix b/pkgs/applications/graphics/synfigstudio/default.nix
index a77a0313223bf..c87a71fdf6c7c 100644
--- a/pkgs/applications/graphics/synfigstudio/default.nix
+++ b/pkgs/applications/graphics/synfigstudio/default.nix
@@ -114,7 +114,6 @@ stdenv.mkDerivation {
     gtk3
     gtkmm3
     imagemagick
-    intltool
     libjack2
     libsigcxx
     libxmlxx
diff --git a/pkgs/applications/graphics/vengi-tools/default.nix b/pkgs/applications/graphics/vengi-tools/default.nix
index fb44d36f62a6d..d54d4e06f0d46 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.20";
+  version = "0.0.21";
 
   src = fetchFromGitHub {
     owner = "mgerhardy";
     repo = "vengi";
     rev = "v${version}";
-    sha256 = "sha256-WsG6mjO90QQNsAarxdupZvXubdy06JjQmVYUzygl8l4=";
+    sha256 = "sha256-T9YBU/YhhOASdKnzLcwQGBLc4HcQspiOV9VRgotfq3c=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/graphics/xaos/default.nix b/pkgs/applications/graphics/xaos/default.nix
index 15c2d468fb4f0..2ba96fda3f0b9 100644
--- a/pkgs/applications/graphics/xaos/default.nix
+++ b/pkgs/applications/graphics/xaos/default.nix
@@ -12,9 +12,10 @@ stdenv.mkDerivation rec {
 
   hardeningDisable = [ "format" ];
 
+  nativeBuildInputs = [ intltool ];
   buildInputs = [
     aalib gsl libpng libX11 xorgproto libXext
-    libXt zlib gettext intltool perl
+    libXt zlib gettext perl
   ];
 
   preConfigure = ''
diff --git a/pkgs/applications/graphics/yacreader/default.nix b/pkgs/applications/graphics/yacreader/default.nix
index 990e279c59012..44733d8bead75 100644
--- a/pkgs/applications/graphics/yacreader/default.nix
+++ b/pkgs/applications/graphics/yacreader/default.nix
@@ -5,13 +5,13 @@
 
 mkDerivation rec {
   pname = "yacreader";
-  version = "9.9.1";
+  version = "9.9.2";
 
   src = fetchFromGitHub {
     owner = "YACReader";
     repo = pname;
     rev = version;
-    sha256 = "sha256-D+ZmFMg9ZixZNUAMjPHwz7gcwKjG49lm5hTEqftbIrY=";
+    sha256 = "sha256-rurJkCIuHTWxIGb+TTHp8sQS26/5W/sdtWFxyeqVx54=";
   };
 
   nativeBuildInputs = [ qmake pkg-config ];
@@ -22,5 +22,6 @@ mkDerivation rec {
     description = "A comic reader for cross-platform reading and managing your digital comic collection";
     homepage = "http://www.yacreader.com";
     license = lib.licenses.gpl3;
+    maintainers = with lib.maintainers; [ srapenne ];
   };
 }
diff --git a/pkgs/applications/misc/1password-gui/darwin.nix b/pkgs/applications/misc/1password-gui/darwin.nix
new file mode 100644
index 0000000000000..04bc102311621
--- /dev/null
+++ b/pkgs/applications/misc/1password-gui/darwin.nix
@@ -0,0 +1,21 @@
+{ stdenv
+, pname
+, version
+, src
+, meta
+, unzip
+, undmg
+}:
+
+stdenv.mkDerivation {
+  inherit pname version src meta;
+
+  nativeBuildInputs = [ unzip undmg ];
+
+  sourceRoot = ".";
+
+  installPhase = ''
+    mkdir -p $out/Applications
+    cp -r *.app $out/Applications
+  '';
+}
diff --git a/pkgs/applications/misc/1password-gui/default.nix b/pkgs/applications/misc/1password-gui/default.nix
index 46480a0325987..7f8cc200a968f 100644
--- a/pkgs/applications/misc/1password-gui/default.nix
+++ b/pkgs/applications/misc/1password-gui/default.nix
@@ -1,144 +1,58 @@
-{ lib
-, stdenv
+{ stdenv
+, callPackage
+, channel ? "stable"
 , fetchurl
-, makeWrapper
-, wrapGAppsHook
-, alsa-lib
-, at-spi2-atk
-, at-spi2-core
-, atk
-, cairo
-, cups
-, dbus
-, expat
-, gdk-pixbuf
-, glib
-, gtk3
-, libX11
-, libXcomposite
-, libXdamage
-, libXext
-, libXfixes
-, libXrandr
-, libdrm
-, libxcb
-, libxkbcommon
-, libxshmfence
-, libGL
-, libappindicator-gtk3
-, mesa
-, nspr
-, nss
-, pango
-, systemd
-, udev
-, xdg-utils
+, lib
+# This is only relevant for Linux, so we need to pass it through
+, polkitPolicyOwners ? [ ] }:
 
-  # The 1Password polkit file requires a list of users for whom polkit
-  # integrations should be enabled. This should be a list of strings that
-  # correspond to usernames.
-, polkitPolicyOwners ? []
-}:
 let
-  # Convert the polkitPolicyOwners variable to a polkit-compatible string for the polkit file.
-  policyOwners = lib.concatStringsSep " " (map (user: "unix-user:${user}") polkitPolicyOwners);
 
-in stdenv.mkDerivation rec {
   pname = "1password";
-  version = "8.9.4";
+  version = if channel == "stable" then "8.9.4" else "8.9.6-30.BETA";
 
-  src =
-    if stdenv.hostPlatform.isAarch64 then
-      fetchurl {
-        url = "https://downloads.1password.com/linux/tar/stable/aarch64/1password-${version}.arm64.tar.gz";
-        sha256 = "0y456ssfsx4cy6pcnihiwi64y90s91399qhgs4abn4pp9wr0h08g";
-      }
-    else
-      fetchurl {
+  sources = {
+    stable = {
+      x86_64-linux = {
         url = "https://downloads.1password.com/linux/tar/stable/x86_64/1password-${version}.x64.tar.gz";
         sha256 = "sha256-Smq0gOGfBTjIOMwF1AI+TJwXaIiTi/YP9mGIqcjsCNQ=";
       };
+      aarch64-linux = {
+        url = "https://downloads.1password.com/linux/tar/stable/aarch64/1password-${version}.arm64.tar.gz";
+        sha256 = "sha256-SJDUfAFEwYnOR+y/6Dg2S/CkA84QogoRpMXOPP5PyrM=";
+      };
+      x86_64-darwin = {
+        url = "https://downloads.1password.com/mac/1Password-${version}-x86_64.zip";
+        sha256 = "sha256-+2FQQ5FiB0N30JM/Mtnfa04K2XZaf3r/W1+i8VKNslA=";
+      };
+      aarch64-darwin = {
+        url = "https://downloads.1password.com/mac/1Password-${version}-aarch64.zip";
+        sha256 = "sha256-nhocEwtr6cMSSStPa7S+g8SwPStJVWPblA3HbqJ8q6Q=";
+      };
+    };
+    beta = {
+      x86_64-linux = {
+        url = "https://downloads.1password.com/linux/tar/beta/x86_64/1password-${version}.x64.tar.gz";
+        sha256 = "sha256-xBfpBkYff1X26Iu0Ee03lIiR6UdJOiaG+kZMVotG0Hc=";
+      };
+      aarch64-linux = {
+        url = "https://downloads.1password.com/linux/tar/beta/aarch64/1password-${version}.arm64.tar.gz";
+        sha256 = "0j0v90i78y1m77gpn65iyjdy1xslv1mar1ihxj9jzcmva0nmdmra";
+      };
+      x86_64-darwin = {
+        url = "https://downloads.1password.com/mac/1Password-${version}-x86_64.zip";
+        sha256 = "sha256-PNlEBFoIGYkDR4TzbudsqAE5vjbiVHTNL7XoflN+mUY=";
+      };
+      aarch64-darwin = {
+        url = "https://downloads.1password.com/mac/1Password-${version}-aarch64.zip";
+        sha256 = "sha256-PYS0N4VeUjNhCncSDXvpyLuHlpv4nn35aJTPANdMXwk=";
+      };
+    };
+  };
 
-  nativeBuildInputs = [ makeWrapper wrapGAppsHook ];
-  buildInputs = [ glib ];
-
-  dontConfigure = true;
-  dontBuild = true;
-  dontPatchELF = true;
-  dontWrapGApps = true;
-
-  installPhase =
-    let rpath = lib.makeLibraryPath [
-      alsa-lib
-      at-spi2-atk
-      at-spi2-core
-      atk
-      cairo
-      cups
-      dbus
-      expat
-      gdk-pixbuf
-      glib
-      gtk3
-      libX11
-      libXcomposite
-      libXdamage
-      libXext
-      libXfixes
-      libXrandr
-      libdrm
-      libxcb
-      libxkbcommon
-      libxshmfence
-      libGL
-      libappindicator-gtk3
-      mesa
-      nspr
-      nss
-      pango
-      systemd
-    ] + ":${stdenv.cc.cc.lib}/lib64";
-    in ''
-      runHook preInstall
-
-      mkdir -p $out/bin $out/share/1password
-      cp -a * $out/share/1password
-
-      # Desktop file
-      install -Dt $out/share/applications resources/${pname}.desktop
-      substituteInPlace $out/share/applications/${pname}.desktop \
-        --replace 'Exec=/opt/1Password/${pname}' 'Exec=${pname}'
-
-      '' + (lib.optionalString (polkitPolicyOwners != [ ])
-      ''
-      # Polkit file
-        mkdir -p $out/share/polkit-1/actions
-        substitute com.1password.1Password.policy.tpl $out/share/polkit-1/actions/com.1password.1Password.policy --replace "\''${POLICY_OWNERS}" "${policyOwners}"
-        '') + ''
-
-      # Icons
-      cp -a resources/icons $out/share
-
-      interp="$(cat $NIX_CC/nix-support/dynamic-linker)"
-      patchelf --set-interpreter $interp $out/share/1password/{1password,1Password-BrowserSupport,1Password-KeyringHelper}
-      patchelf --set-rpath ${rpath}:$out/share/1password $out/share/1password/{1password,1Password-BrowserSupport,1Password-KeyringHelper}
-      for file in $(find $out -type f -name \*.so\* ); do
-        patchelf --set-rpath ${rpath}:$out/share/1password $file
-      done
-
-      runHook postInstall
-    '';
-
-  preFixup = ''
-    # Electron is trying to open udev via dlopen()
-    # and for some reason that doesn't seem to be impacted from the rpath.
-    # Adding udev to LD_LIBRARY_PATH fixes that.
-    # Make xdg-open overrideable at runtime.
-    makeWrapper $out/share/1password/1password $out/bin/1password \
-      ''${gappsWrapperArgs[@]} \
-      --suffix PATH : ${lib.makeBinPath [ xdg-utils ]} \
-      --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ udev ]}
-  '';
+  src = fetchurl {
+    inherit (sources.${channel}.${stdenv.system}) url sha256;
+  };
 
   meta = with lib; {
     description = "Multi-platform password manager";
@@ -146,6 +60,9 @@ in stdenv.mkDerivation rec {
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
     license = licenses.unfree;
     maintainers = with maintainers; [ timstott savannidgerinel maxeaubrey sebtm ];
-    platforms = [ "x86_64-linux" "aarch64-linux" ];
+    platforms = builtins.attrNames sources.${channel};
   };
-}
+
+in if stdenv.isDarwin
+then callPackage ./darwin.nix { inherit pname version src meta; }
+else callPackage ./linux.nix { inherit pname version src meta polkitPolicyOwners; }
diff --git a/pkgs/applications/misc/1password-gui/beta.nix b/pkgs/applications/misc/1password-gui/linux.nix
index d90b3e46f50cb..06a10dd973d3d 100644
--- a/pkgs/applications/misc/1password-gui/beta.nix
+++ b/pkgs/applications/misc/1password-gui/linux.nix
@@ -1,6 +1,9 @@
 { lib
 , stdenv
-, fetchurl
+, pname
+, version
+, src
+, meta
 , makeWrapper
 , wrapGAppsHook
 , alsa-lib
@@ -43,21 +46,8 @@ let
   # Convert the polkitPolicyOwners variable to a polkit-compatible string for the polkit file.
   policyOwners = lib.concatStringsSep " " (map (user: "unix-user:${user}") polkitPolicyOwners);
 
-in stdenv.mkDerivation rec {
-  pname = "1password";
-  version = "8.9.6-30.BETA";
-
-  src =
-    if stdenv.hostPlatform.isAarch64 then
-      fetchurl {
-        url = "https://downloads.1password.com/linux/tar/beta/aarch64/1password-${version}.arm64.tar.gz";
-        sha256 = "0j0v90i78y1m77gpn65iyjdy1xslv1mar1ihxj9jzcmva0nmdmra";
-      }
-    else
-      fetchurl {
-        url = "https://downloads.1password.com/linux/tar/beta/x86_64/1password-${version}.x64.tar.gz";
-        sha256 = "sha256-xBfpBkYff1X26Iu0Ee03lIiR6UdJOiaG+kZMVotG0Hc=";
-      };
+in stdenv.mkDerivation {
+  inherit pname version src meta;
 
   nativeBuildInputs = [ makeWrapper wrapGAppsHook ];
   buildInputs = [ glib ];
@@ -120,8 +110,8 @@ in stdenv.mkDerivation rec {
       cp -a resources/icons $out/share
 
       interp="$(cat $NIX_CC/nix-support/dynamic-linker)"
-      patchelf --set-interpreter $interp $out/share/1password/{1password,1Password-BrowserSupport,1Password-KeyringHelper}
-      patchelf --set-rpath ${rpath}:$out/share/1password $out/share/1password/{1password,1Password-BrowserSupport,1Password-KeyringHelper}
+      patchelf --set-interpreter $interp $out/share/1password/{1password,1Password-BrowserSupport,1Password-KeyringHelper,op-ssh-sign}
+      patchelf --set-rpath ${rpath}:$out/share/1password $out/share/1password/{1password,1Password-BrowserSupport,1Password-KeyringHelper,op-ssh-sign}
       for file in $(find $out -type f -name \*.so\* ); do
         patchelf --set-rpath ${rpath}:$out/share/1password $file
       done
@@ -139,14 +129,4 @@ in stdenv.mkDerivation rec {
       --suffix PATH : ${lib.makeBinPath [ xdg-utils ]} \
       --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ udev ]}
   '';
-
-
-  meta = with lib; {
-    description = "Multi-platform password manager";
-    homepage = "https://1password.com/";
-    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
-    license = licenses.unfree;
-    maintainers = with maintainers; [ timstott savannidgerinel maxeaubrey sebtm ];
-    platforms = [ "x86_64-linux" "aarch64-linux" ];
-  };
 }
diff --git a/pkgs/applications/misc/ArchiSteamFarm/deps.nix b/pkgs/applications/misc/ArchiSteamFarm/deps.nix
index a6fb04a9e7d7e..12445d958c806 100644
--- a/pkgs/applications/misc/ArchiSteamFarm/deps.nix
+++ b/pkgs/applications/misc/ArchiSteamFarm/deps.nix
@@ -1,3 +1,6 @@
+# This file was automatically generated by passthru.fetch-deps.
+# Please dont edit it manually, your changes might get overwritten!
+
 { fetchNuGet }: [
   (fetchNuGet { pname = "AngleSharp"; version = "0.17.1"; sha256 = "038idg33ydy72362qplsd7y8ldifi9zg02dhjli6wy4p47hyqcph"; })
   (fetchNuGet { pname = "AngleSharp.XPath"; version = "2.0.1"; sha256 = "0sdxqjwvyf0l1cp4n4i84g7rly8z7ramq0y7vsgqvf6hzx7dnk5i"; })
diff --git a/pkgs/applications/misc/albert/default.nix b/pkgs/applications/misc/albert/default.nix
index 1239d22f1f3e5..84499448a41b7 100644
--- a/pkgs/applications/misc/albert/default.nix
+++ b/pkgs/applications/misc/albert/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "albert";
-  version = "0.17.3";
+  version = "0.17.6";
 
   src = fetchFromGitHub {
     owner = "albertlauncher";
     repo = "albert";
     rev = "v${version}";
-    sha256 = "sha256-UIG6yLkIcdf5IszhNPwkBcSfZe4/CyI5shK/QPOmpPE=";
+    sha256 = "sha256-nbnywrsKvFG8AkayjnylOKSnn7rRWgNv5zE9DDeOmLw=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/applications/misc/anytype/default.nix b/pkgs/applications/misc/anytype/default.nix
index 7b327cd7f0960..98ea0802f2e45 100644
--- a/pkgs/applications/misc/anytype/default.nix
+++ b/pkgs/applications/misc/anytype/default.nix
@@ -2,13 +2,13 @@
 
 let
   pname = "anytype";
-  version = "0.28.0";
+  version = "0.29.0";
   name = "Anytype-${version}";
   nameExecutable = pname;
   src = fetchurl {
     url = "https://at9412003.fra1.digitaloceanspaces.com/Anytype-${version}.AppImage";
     name = "Anytype-${version}.AppImage";
-    sha256 = "sha256-tYeVz10saTJBf6DDGIVSd4IkSREDJFi/am/kg/An02E=";
+    sha256 = "sha256-xoHYQbV8fPsHs/G1iuTaQ197dpUZkMohmYM924y8NT0=";
   };
   appimageContents = appimageTools.extractType2 { inherit name src; };
 in
diff --git a/pkgs/applications/misc/bemenu/default.nix b/pkgs/applications/misc/bemenu/default.nix
index f0e0b877d9d79..9f69cdc5d2d03 100644
--- a/pkgs/applications/misc/bemenu/default.nix
+++ b/pkgs/applications/misc/bemenu/default.nix
@@ -11,13 +11,13 @@ assert x11Support -> xorg != null;
 
 stdenv.mkDerivation rec {
   pname = "bemenu";
-  version = "0.6.10";
+  version = "0.6.12";
 
   src = fetchFromGitHub {
     owner = "Cloudef";
     repo = pname;
     rev = version;
-    sha256 = "sha256-pv/GxTGmpGc8RHjKO8F03jybS0uO+SS3z4KCZfHYV0Q=";
+    sha256 = "sha256-u8DQn1WIQjt1Be3WMAUNr/4qQm4vLGaj5RY49sQVpFI=";
   };
 
   nativeBuildInputs = [ pkg-config pcre ];
diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix
index 1d26881868e51..e573ee93d2130 100644
--- a/pkgs/applications/misc/calibre/default.nix
+++ b/pkgs/applications/misc/calibre/default.nix
@@ -1,37 +1,40 @@
 { lib
-, mkDerivation
+, stdenv
 , fetchurl
+, cmake
 , fetchpatch
-, poppler_utils
-, pkg-config
-, libpng
+, fontconfig
+, hunspell
+, hyphen
+, icu
 , imagemagick
 , libjpeg
-, fontconfig
+, libmtp
+, libpng
+, libstemmer
+, libuchardet
+, libusb1
+, pkg-config
 , podofo
-, qtbase
+, poppler_utils
+, python3Packages
 , qmake
-, icu
+, qtbase
+, qtwayland
+, removeReferencesTo
 , sqlite
-, hunspell
-, hyphen
-, unrarSupport ? false
-, python3Packages
-, libusb1
-, libmtp
+, wrapQtAppsHook
 , xdg-utils
-, removeReferencesTo
-, libstemmer
-, wrapGAppsHook
+, unrarSupport ? false
 }:
 
-mkDerivation rec {
+stdenv.mkDerivation rec {
   pname = "calibre";
-  version = "5.44.0";
+  version = "6.6.1";
 
   src = fetchurl {
     url = "https://download.calibre-ebook.com/${version}/${pname}-${version}.tar.xz";
-    hash = "sha256-b/qj6v02okNV5ZV/D4ONttttNFbPoXy00Tn9lOuviOw=";
+    hash = "sha256-jJMHliPTRqiI4Wx5N9qbSryoARcGBisSq6awXIaTk5g=";
   };
 
   # https://sources.debian.org/patches/calibre/${version}+dfsg-1
@@ -40,18 +43,18 @@ mkDerivation rec {
     (fetchpatch {
       name = "0001-only-plugin-update.patch";
       url = "https://raw.githubusercontent.com/debian-calibre/calibre/debian/${version}%2Bdfsg-1/debian/patches/0001-only-plugin-update.patch";
-      sha256 = "sha256-dLzO1TWP7Q4nw2a3oN7qlhGCmcA0NKJrZidUnD6hUMA=";
+      hash = "sha256-uL1mSjgCl5ZRLbSuKxJM6XTfvVwog70F7vgKtQzQNEQ=";
     })
     (fetchpatch {
       name = "0006-Hardening-Qt-code.patch";
       url = "https://raw.githubusercontent.com/debian-calibre/calibre/debian/${version}%2Bdfsg-1/debian/patches/0006-Hardening-Qt-code.patch";
-      sha256 = "sha256-/X6iZZFxv4793h2yYI3UAz0mLNEmKpdVrmOnABFT0tE=";
+      hash = "sha256-CutVTb7K4tjewq1xAjHEGUHFcuuP/Z4FFtj4xQb4zKQ=";
     })
   ]
   ++ lib.optional (!unrarSupport) ./dont_build_unrar_plugin.patch;
 
   prePatch = ''
-    sed -i "s@\[tool.sip.project\]@[tool.sip.project]\nsip-include-dirs = [\"${python3Packages.pyqt5}/${python3Packages.python.sitePackages}/PyQt5/bindings\"]@g" \
+    sed -i "s@\[tool.sip.project\]@[tool.sip.project]\nsip-include-dirs = [\"${python3Packages.pyqt6}/${python3Packages.python.sitePackages}/PyQt6/bindings\"]@g" \
       setup/build.py
     sed -i "s/\[tool.sip.bindings.pictureflow\]/[tool.sip.bindings.pictureflow]\ntags = [\"${python3Packages.sip.platform_tag}\"]/g" \
       setup/build.py
@@ -61,8 +64,15 @@ mkDerivation rec {
   '';
 
   dontUseQmakeConfigure = true;
+  dontUseCmakeConfigure = true;
 
-  nativeBuildInputs = [ pkg-config qmake removeReferencesTo wrapGAppsHook ];
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    qmake
+    removeReferencesTo
+    wrapQtAppsHook
+  ];
 
   buildInputs = [
     fontconfig
@@ -74,10 +84,12 @@ mkDerivation rec {
     libmtp
     libpng
     libstemmer
+    libuchardet
     libusb1
     podofo
     poppler_utils
     qtbase
+    qtwayland
     sqlite
     xdg-utils
   ] ++ (
@@ -102,7 +114,7 @@ mkDerivation rec {
       pillow
       pychm
       pyqt-builder
-      pyqt5
+      pyqt6
       python
       regex
       sip
@@ -166,8 +178,7 @@ mkDerivation rec {
       $out/lib/calibre/calibre/plugins/podofo.so
 
     for program in $out/bin/*; do
-      wrapProgram $program \
-        ''${qtWrapperArgs[@]} \
+      wrapQtApp $program \
         --prefix PYTHONPATH : $PYTHONPATH \
         --prefix PATH : ${poppler_utils.out}/bin
     done
diff --git a/pkgs/applications/misc/catclock/default.nix b/pkgs/applications/misc/catclock/default.nix
index 494ed3001e5c1..e65bcd2ff2e2d 100644
--- a/pkgs/applications/misc/catclock/default.nix
+++ b/pkgs/applications/misc/catclock/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, xlibsWrapper, motif
+{ stdenv, lib, fetchFromGitHub, motif, xorg
 , withAudioTracking ? false, libpulseaudio, aubio }:
 
 stdenv.mkDerivation {
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
   makeFlags = [ "DESTINATION=$(out)/bin/" ]
     ++ lib.optional withAudioTracking "WITH_TEMPO_TRACKER=1";
 
-  buildInputs = [ xlibsWrapper motif ]
+  buildInputs = [ motif xorg.libX11 xorg.libXext xorg.libXt ]
     ++ lib.optionals withAudioTracking [ libpulseaudio aubio ];
 
   meta = with lib; {
diff --git a/pkgs/applications/misc/cubiomes-viewer/default.nix b/pkgs/applications/misc/cubiomes-viewer/default.nix
index 2243a8d093757..5832cf9432aee 100644
--- a/pkgs/applications/misc/cubiomes-viewer/default.nix
+++ b/pkgs/applications/misc/cubiomes-viewer/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cubiomes-viewer";
-  version = "2.4.1";
+  version = "2.5.1";
 
   src = fetchFromGitHub {
     owner = "Cubitect";
     repo = pname;
     rev = version;
-    sha256 = "sha256-vneX3Wo1DUK1WIwBP3nMUDV26EN2A7XIqMcTZQ4UI4A=";
+    sha256 = "sha256-Ge1dO2I4avblN+3BXY9AXFFmgX4lIwZYUf4IohH1vqc=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/applications/misc/dbeaver/default.nix b/pkgs/applications/misc/dbeaver/default.nix
index 32440ad7df197..ceb1b9833c928 100644
--- a/pkgs/applications/misc/dbeaver/default.nix
+++ b/pkgs/applications/misc/dbeaver/default.nix
@@ -23,16 +23,16 @@
   inherit maven; # use overridden maven version (see dbeaver's entry in all-packages.nix)
 }) rec {
   pname = "dbeaver";
-  version = "22.2.0"; # When updating also update mvnSha256
+  version = "22.2.2"; # When updating also update mvnSha256
 
   src = fetchFromGitHub {
     owner = "dbeaver";
     repo = "dbeaver";
     rev = version;
-    sha256 = "sha256-T2S5qoOqjqJGf7M4h+IFO+bBER3aNcbxC7CY1fJFqpg=";
+    sha256 = "sha256-TUdtrhQ1JzqZx+QNauNA1P/+WDSSeOGIgGX3SdS0JTI=";
   };
 
-  mvnSha256 = "HdIhENml6W4U+gM7ODxXinbex5o1X4YhWGTct5rpL5c=";
+  mvnSha256 = "uu7UNRIuAx2GOh4+YxxoGRcV5QO8C72q32e0ynJdgFo=";
   mvnParameters = "-P desktop,all-platforms";
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/deadd-notification-center/default.nix b/pkgs/applications/misc/deadd-notification-center/default.nix
index 5d77f301c8217..4625a6dda99dd 100644
--- a/pkgs/applications/misc/deadd-notification-center/default.nix
+++ b/pkgs/applications/misc/deadd-notification-center/default.nix
@@ -11,13 +11,13 @@
 }:
 stdenv.mkDerivation rec {
   pname = "deadd-notification-center";
-  version = "2021-03-10";
+  version = "2022-04-20";
 
   src = fetchFromGitHub {
     owner = "phuhl";
     repo = "linux_notification_center";
-    rev = "640ce0f";
-    sha256 = "12ldr8vppylr90849g3mpjphmnr4lp0vsdkj01a5f4bv4ksx35fm";
+    rev = "d31867472c35a09562c832b0a589479930c52b86";
+    sha256 = "sha256-Arl4niscJPYCFWd4mw42IgNs+JsHsVpaTx86zEj3KFM=";
   };
 
   patches = [
diff --git a/pkgs/applications/misc/diff-pdf/default.nix b/pkgs/applications/misc/diff-pdf/default.nix
index 186826e6f7d45..918605366fe7d 100644
--- a/pkgs/applications/misc/diff-pdf/default.nix
+++ b/pkgs/applications/misc/diff-pdf/default.nix
@@ -1,12 +1,5 @@
-{ lib, stdenv, fetchFromGitHub, autoconf, automake, pkg-config, cairo, poppler, wxGTK ? null, wxmac ? null, darwin ? null }:
+{ lib, stdenv, fetchFromGitHub, autoconf, automake, pkg-config, cairo, poppler, wxGTK, Cocoa }:
 
-let
-  wxInputs =
-    if stdenv.isDarwin then
-      [ wxmac darwin.apple_sdk.frameworks.Cocoa ]
-    else
-      [ wxGTK ];
-in
 stdenv.mkDerivation rec {
   pname = "diff-pdf";
   version = "0.5";
@@ -19,7 +12,8 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ autoconf automake pkg-config ];
-  buildInputs = [ cairo poppler ] ++ wxInputs;
+  buildInputs = [ cairo poppler wxGTK ]
+    ++ lib.optionals stdenv.isDarwin [ Cocoa ];
 
   preConfigure = "./bootstrap";
 
diff --git a/pkgs/applications/misc/electrum/default.nix b/pkgs/applications/misc/electrum/default.nix
index 46ea57c6193d3..9421cce1d8f75 100644
--- a/pkgs/applications/misc/electrum/default.nix
+++ b/pkgs/applications/misc/electrum/default.nix
@@ -89,7 +89,13 @@ python3.pkgs.buildPythonApplication {
     qdarkstyle
   ];
 
-  preBuild = ''
+  postPatch = ''
+    # make compatible with protobuf4 by easing dependencies ...
+    substituteInPlace ./contrib/requirements/requirements.txt \
+      --replace "protobuf>=3.12,<4" "protobuf>=3.12"
+    # ... and regenerating the paymentrequest_pb2.py file
+    protoc --python_out=. electrum/paymentrequest.proto
+
     substituteInPlace ./electrum/ecc_fast.py \
       --replace ${libsecp256k1_name} ${secp256k1}/lib/libsecp256k1${stdenv.hostPlatform.extensions.sharedLibrary}
   '' + (if enableQt then ''
diff --git a/pkgs/applications/misc/etesync-dav/default.nix b/pkgs/applications/misc/etesync-dav/default.nix
index 1c590451a9b86..5ab3694728ad1 100644
--- a/pkgs/applications/misc/etesync-dav/default.nix
+++ b/pkgs/applications/misc/etesync-dav/default.nix
@@ -62,7 +62,7 @@ in python.pkgs.buildPythonApplication rec {
     homepage = "https://www.etesync.com/";
     description = "Secure, end-to-end encrypted, and privacy respecting sync for contacts, calendars and tasks";
     license = licenses.gpl3;
-    maintainers = with maintainers; [ valodim ];
+    maintainers = with maintainers; [ thyol valodim ];
     broken = stdenv.isDarwin; # pyobjc-framework-Cocoa is missing
   };
 }
diff --git a/pkgs/applications/misc/exercism/default.nix b/pkgs/applications/misc/exercism/default.nix
index 79420eacec827..f13d45059473e 100644
--- a/pkgs/applications/misc/exercism/default.nix
+++ b/pkgs/applications/misc/exercism/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "exercism";
-  version = "3.0.13";
+  version = "3.1.0";
 
   src = fetchFromGitHub {
     owner  = "exercism";
     repo   = "cli";
     rev    = "v${version}";
-    sha256 = "17gvz9a0sn4p36hf4l77bxhhfipf4x998iay31layqwbnzmb4xy7";
+    sha256 = "sha256-9GdkQaxYvxMGI5aFwUtQnctjpZfjZaKP3CsMjC/ZBSo";
   };
 
-  vendorSha256 = "0b2m9xkac60k5rbxmb03cxf530m23av14pnsjk8067l998sm4vqi";
+  vendorSha256 = "sha256-EW9SNUqJHgPQlNpeErYaooJRXGcDrNpXLhMYpmZPVSw";
 
   doCheck = false;
 
diff --git a/pkgs/applications/misc/genact/default.nix b/pkgs/applications/misc/genact/default.nix
index c5d48ff454e4f..061fce572631a 100644
--- a/pkgs/applications/misc/genact/default.nix
+++ b/pkgs/applications/misc/genact/default.nix
@@ -1,32 +1,29 @@
-{ lib, rustPlatform, fetchFromGitHub, jq }:
+{ lib, rustPlatform, fetchFromGitHub, installShellFiles }:
 
 rustPlatform.buildRustPackage rec {
   pname = "genact";
-  version = "1.1.1";
+  version = "1.2.2";
 
   src = fetchFromGitHub {
     owner = "svenstaro";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Mw6mPOxiWnYu2QgqL4VccwwJhdxZ7zLJyX/oJWfGUhw=";
+    sha256 = "sha256-MB/i1jCxoGE8cPF+NE8aS7kF7ZsGb4+OyLcPcGp1hwI=";
   };
 
-  cargoSha256 = "sha256-ygQklcRjdffGl0s77MwKsyHVJWqWJZHq4SU38cSMVug=";
+  cargoSha256 = "sha256-OBGJIR3REeMxHQu3ovEKSZZ8QNlhl/5jvWbR5OdsRTQ=";
 
-  depsExtraArgs = {
-    nativeBuildInputs = [ jq ];
-    postBuild = ''
-      pushd $name/humansize
+  nativeBuildInputs = [ installShellFiles ];
 
-      [ -d feature-tests ] && rm -r feature-tests
+  postInstall = ''
+    $out/bin/genact --print-manpage > genact.1
+    installManPage genact.1
 
-      jq '.files |= with_entries(select(.key | startswith("feature-tests") | not))' \
-        -c .cargo-checksum.json > .cargo-checksum.json.new
-      mv .cargo-checksum.json{.new,}
-
-      popd
-    '';
-  };
+    installShellCompletion --cmd genact \
+      --bash <($out/bin/genact --print-completions bash) \
+      --fish <($out/bin/genact --print-completions fish) \
+      --zsh <($out/bin/genact --print-completions zsh)
+  '';
 
   meta = with lib; {
     description = "A nonsense activity generator";
diff --git a/pkgs/applications/misc/gtkradiant/default.nix b/pkgs/applications/misc/gtkradiant/default.nix
new file mode 100644
index 0000000000000..a8f5c91d1eb8e
--- /dev/null
+++ b/pkgs/applications/misc/gtkradiant/default.nix
@@ -0,0 +1,163 @@
+{ lib, stdenv, fetchFromGitHub, fetchsvn
+, scons, pkg-config, python3
+, glib, libxml2, gtk2, libGLU, gnome2
+, runCommand, writeScriptBin, runtimeShell
+, makeDesktopItem, copyDesktopItems
+}:
+
+let
+  q3Pack = fetchsvn {
+    url = "svn://svn.icculus.org/gtkradiant-gamepacks/Q3Pack/trunk";
+    rev = 144;
+    sha256 = "sha256-U1GtMv775JEOAJ1W2kSaRNPDCnW39W+KqVDTTG2yISY=";
+  };
+  urtPack = fetchsvn {
+    url = "svn://svn.icculus.org/gtkradiant-gamepacks/UrTPack/trunk";
+    rev = 144;
+    sha256 = "sha256-DQjENyQa1kEieU3ZWyMt2e4oEN0X2K3lxP79sBI91iI=";
+  };
+  etPack = fetchsvn {
+    url = "svn://svn.icculus.org/gtkradiant-gamepacks/ETPack/trunk";
+    rev = 144;
+    sha256 = "sha256-mqaWOYfF/F6ABh7nKA36YvsywZIdwJ9IitFi2Xp5rgk=";
+  };
+  qlPack = fetchsvn {
+    url = "svn://svn.icculus.org/gtkradiant-gamepacks/QLPack/trunk";
+    rev = 144;
+    sha256 = "sha256-lrn4nu3JI7j+t9jYd+UFE55GOCbc6+Sh2fZfVlEr1WM=";
+  };
+  q2Pack = fetchsvn {
+    url = "svn://svn.icculus.org/gtkradiant-gamepacks/Q2Pack/trunk";
+    rev = 144;
+    sha256 = "sha256-ad8dRV+28Zz5yQsJU7hvteSIn9wWpehuqxMspw3yvvU=";
+  };
+  quetooPack = fetchsvn {
+    url = "svn://svn.icculus.org/gtkradiant-gamepacks/QuetooPack/trunk";
+    rev = 144;
+    sha256 = "sha256-SOblPJgdVEZrTYtvDlcF7paIm3UitSVFQ9+RahXkO64=";
+  };
+  jaPack = fetchsvn {
+    url = "svn://svn.icculus.org/gtkradiant-gamepacks/JAPack/trunk";
+    rev = 144;
+    sha256 = "sha256-P6lI+nNrPwoWJl5ThUHIA3Iw1nWVo2djaaWHAF5HuDo=";
+  };
+  stvefPack = fetchsvn {
+    url = "svn://svn.icculus.org/gtkradiant-gamepacks/STVEFPack/trunk";
+    rev = 144;
+    sha256 = "sha256-quNyVC6fg1FIBsLWx0LzRK2JfxKMNJeUEIkWGhGJHhI=";
+  };
+  wolfPack = fetchsvn {
+    url = "svn://svn.icculus.org/gtkradiant-gamepacks/WolfPack/trunk";
+    rev = 144;
+    sha256 = "sha256-693k6KiIchQddVGBhRJf7ikv6ut5L9rcLt0FTZ7pSvw=";
+  };
+  unvanquishedPack = fetchsvn {
+    url = "https://github.com/Unvanquished/unvanquished-mapeditor-support.git/trunk/build/gtkradiant/";
+    rev = 212;
+    sha256 = "sha256-weBlnSBezPppbhsMOT66vubioTxpDC+AcKIOC2Xitdo=";
+  };
+  q1Pack = fetchsvn {
+    url = "svn://svn.icculus.org/gtkradiant-gamepacks/Q1Pack/trunk";
+    rev = 144;
+    sha256 = "sha256-JfmDIUoDY7dYdMgwwUMgcwNhWxuxsdkv1taw8DXhPY4=";
+  };
+  packs = runCommand "gtkradiant-packs" {} ''
+    mkdir -p $out
+    ln -s ${q3Pack} $out/Q3Pack
+    ln -s ${urtPack} $out/UrTPack
+    ln -s ${etPack} $out/ETPack
+    ln -s ${qlPack} $out/QLPack
+    ln -s ${q2Pack} $out/Q2Pack
+    ln -s ${quetooPack} $out/QuetooPack
+    ln -s ${jaPack} $out/JAPack
+    ln -s ${stvefPack} $out/STVEFPack
+    ln -s ${wolfPack} $out/WolfPack
+    ln -s ${unvanquishedPack} $out/UnvanquishedPack
+    ln -s ${q1Pack} $out/Q1Pack
+  '';
+
+in
+stdenv.mkDerivation rec {
+  pname = "gtkradiant";
+
+  version = "unstable-2022-07-31";
+
+  src = fetchFromGitHub {
+    owner = "TTimo";
+    repo = "GtkRadiant";
+    rev = "5b498bfa01bde6c2c9eb60fb94cf04666e52d22d";
+    sha256 = "sha256-407faeQnhxqbWgOUunQKj2JhHeqIzPPgrhz2K5O4CaM=";
+  };
+
+  # patch paths so that .game settings are put into the user's home instead of the read-only /nix/store
+  postPatch = ''
+    substituteInPlace radiant/preferences.cpp \
+      --replace 'gameFilePath += "games/";' 'gameFilePath = g_get_home_dir(); gameFilePath += "/.cache/radiant/games/";printf("gameFilePath: %s\\n", gameFilePath);' \
+      --replace 'radCreateDirectory( gameFilePath );' 'if (g_mkdir_with_parents( gameFilePath, 0777 ) == -1) {radCreateDirectory( gameFilePath );};' \
+      --replace 'strGamesPath = g_strAppPath.GetBuffer();' 'strGamesPath = g_get_home_dir();' \
+      --replace 'strGamesPath += "games";' 'strGamesPath += "/.cache/radiant/games";'
+  '';
+
+  nativeBuildInputs =
+    let
+      python = python3.withPackages (ps: with ps; [
+        urllib3
+      ]);
+      svn = writeScriptBin "svn" ''
+        #!${runtimeShell} -e
+        if [ "$1" = checkout ]; then
+          # link predownloaded pack to destination
+          mkdir -p $(dirname $3)
+          ln -s ${packs}/$(basename $3) $3
+          # verify existence
+          test -e $(readlink $3)
+        elif [ "$1" = update ]; then
+          # verify existence
+          test -e $(readlink $3)
+        else
+          echo "$@"
+          exit 1
+        fi
+      '';
+    in [
+      scons
+      pkg-config
+      python
+      svn
+      copyDesktopItems
+    ];
+
+  buildInputs = [ glib libxml2 gtk2 libGLU gnome2.gtkglext ];
+
+  enableParallelBuilding = true;
+
+  desktopItems = [ (makeDesktopItem {
+    name = "gtkradiant";
+    exec = "gtkradiant";
+    desktopName = "GtkRadiant";
+    comment = meta.description;
+    categories = [ "Development" ];
+    icon = "gtkradiant";
+    # includes its own splash screen
+    startupNotify = false;
+  }) ];
+
+  postInstall = ''
+    mkdir -p $out/{bin,lib}
+    cp -ar install $out/lib/gtkradiant
+
+    ln -s ../lib/gtkradiant/radiant.bin $out/bin/gtkradiant
+    ln -s ../lib/gtkradiant/{q3map2,q3map2_urt,q3data} $out/bin/
+
+    mkdir -p $out/share/pixmaps
+    ln -s ../../lib/gtkradiant/bitmaps/icon.png $out/share/pixmaps/gtkradiant.png
+  '';
+
+  meta = with lib; {
+    description = "Level editor for idTech games";
+    homepage = "https://icculus.org/gtkradiant/";
+    license = with licenses; [ gpl2Only bsdOriginal lgpl21Only ];
+    maintainers = with maintainers; [ astro ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/misc/gum/default.nix b/pkgs/applications/misc/gum/default.nix
index 8d77d75dafeb8..416de12bcb181 100644
--- a/pkgs/applications/misc/gum/default.nix
+++ b/pkgs/applications/misc/gum/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "gum";
-  version = "0.6.0";
+  version = "0.7.0";
 
   src = fetchFromGitHub {
     owner = "charmbracelet";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-pEULArQDwKZzpD0GVH21L1v9xVZiBz91kL/jPJjJav4=";
+    sha256 = "sha256-T8dIk99qUMyeZvfM+rLA13HAmITQ8SMsQ9uIXtMM+MM=";
   };
 
-  vendorSha256 = "sha256-vvNoO5eABGVwvAzK33uPelmo3BKxfqiYgEXZI7kgeSo=";
+  vendorSha256 = "sha256-sht9e4pam4aJCylUZPeVGwk9TYttumJSniNVxI0LfNM=";
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/pkgs/applications/misc/gv/default.nix b/pkgs/applications/misc/gv/default.nix
index 851f2d80c9763..d5aa1ac88179c 100644
--- a/pkgs/applications/misc/gv/default.nix
+++ b/pkgs/applications/misc/gv/default.nix
@@ -13,11 +13,11 @@ stdenv.mkDerivation rec {
     "--enable-SIGCHLD-fallback"
   ];
 
+  nativeBuildInputs = [ pkg-config ];
   buildInputs = [
     Xaw3d
     ghostscriptX
     perl
-    pkg-config
   ] ++ lib.optionals stdenv.isDarwin [
     libiconv
   ];
diff --git a/pkgs/applications/misc/gxmessage/default.nix b/pkgs/applications/misc/gxmessage/default.nix
index f7c5714f1262a..fb172eb22b016 100644
--- a/pkgs/applications/misc/gxmessage/default.nix
+++ b/pkgs/applications/misc/gxmessage/default.nix
@@ -9,8 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "db4e1655fc58f31e5770a17dfca4e6c89028ad8b2c8e043febc87a0beedeef05";
   };
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ intltool gtk3 texinfo ];
+  nativeBuildInputs = [ pkg-config intltool ];
+  buildInputs = [ gtk3 texinfo ];
 
   meta = {
     description = "A GTK enabled dropin replacement for xmessage";
diff --git a/pkgs/applications/misc/holochain-launcher/default.nix b/pkgs/applications/misc/holochain-launcher/default.nix
new file mode 100644
index 0000000000000..5a9c5122acc36
--- /dev/null
+++ b/pkgs/applications/misc/holochain-launcher/default.nix
@@ -0,0 +1,52 @@
+{ stdenv
+, lib
+, fetchurl
+, autoPatchelfHook
+, pkg-config
+, dpkg
+, openssl
+, webkitgtk
+, libappindicator
+, wrapGAppsHook
+}:
+
+stdenv.mkDerivation rec {
+  name = "holochain-launcher";
+  version = "0.6.0";
+
+  src = fetchurl {
+    url = "https://github.com/holochain/launcher/releases/download/v${version}/holochain-launcher_${version}_amd64.deb";
+    sha256 = "sha256-o9cUFtq5XUkbC3yFRFiV2k4uWjb+szlE8qV+G9Gve5E=";
+  };
+
+  nativeBuildInputs = [
+    autoPatchelfHook
+    dpkg
+    wrapGAppsHook # required for FileChooser
+  ];
+
+  buildInputs = [
+    openssl
+    webkitgtk
+    libappindicator
+  ];
+
+  unpackCmd = "dpkg-deb -x $curSrc source";
+
+  installPhase = ''
+    mv usr $out
+  '';
+
+  preFixup = ''
+    patchelf --add-needed "libappindicator3.so" "$out/bin/holochain-launcher"
+  '';
+
+  meta = with lib; {
+    description = "A cross-platform executable that launches a local Holochain conductor, and installs and opens apps";
+    homepage = "https://github.com/holochain/launcher";
+    maintainers = [ maintainers.steveej ];
+    license = licenses.cal10;
+    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/misc/hugo/default.nix b/pkgs/applications/misc/hugo/default.nix
index 5481376af8c60..d57f2270daf18 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.2";
+  version = "0.104.3";
 
   src = fetchFromGitHub {
     owner = "gohugoio";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-7GB2bLf6J253oFkTLg8iblE6c2wFYS3WCUqTDsc61/8=";
+    sha256 = "sha256-bGyU0i/wwFprAoLENrmBY2IxLjwyX4pQ9z4LFIUguI4=";
   };
 
-  vendorSha256 = "sha256-K7rQSs4PqFGV4gZ6UevS7S0w0OQykAkHntklKz5vPrU=";
+  vendorSha256 = "sha256-is1dQJwvhygn95rbeHeGI97vDXo8ftnNqug4eERN3gI=";
 
   doCheck = false;
 
diff --git a/pkgs/applications/misc/josm/default.nix b/pkgs/applications/misc/josm/default.nix
index 7d99bd8558a94..aecd7a4b09001 100644
--- a/pkgs/applications/misc/josm/default.nix
+++ b/pkgs/applications/misc/josm/default.nix
@@ -3,15 +3,15 @@
 }:
 let
   pname = "josm";
-  version = "18543";
+  version = "18570";
   srcs = {
     jar = fetchurl {
       url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
-      hash = "sha256-AQmdBwgOVws8MDAX8i3P7bsk3r69g7x3jhADGwRWa2c=";
+      hash = "sha256-EAEh/n7M56rzjtkIs8ZteDvOLuHxNsMyT7VGFyPre6s=";
     };
     macosx = fetchurl {
       url = "https://josm.openstreetmap.de/download/macosx/josm-macos-${version}-java17.zip";
-      hash = "sha256-pGVn+NgfSlyYcT0BCTj+Ntbe7d0l6LJSeDi9xve0K4g=";
+      hash = "sha256-2xsHsaDxm/wjiCyS5tmD8uUlLrBdd3sS8JLal3pX3pA=";
     };
     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 fdac7cede1702..c7040e1c96c7f 100644
--- a/pkgs/applications/misc/keepassx/community.nix
+++ b/pkgs/applications/misc/keepassx/community.nix
@@ -124,7 +124,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = "https://keepassxc.org/";
     license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ jonafato turion ];
+    maintainers = with maintainers; [ jonafato turion srapenne ];
     platforms = platforms.linux ++ platforms.darwin;
     broken = stdenv.isDarwin;  # see to https://github.com/NixOS/nixpkgs/issues/172165
   };
diff --git a/pkgs/applications/misc/keylight-controller-mschneider82/default.nix b/pkgs/applications/misc/keylight-controller-mschneider82/default.nix
index e019e9f1b9865..3a8750301fea4 100644
--- a/pkgs/applications/misc/keylight-controller-mschneider82/default.nix
+++ b/pkgs/applications/misc/keylight-controller-mschneider82/default.nix
@@ -41,7 +41,7 @@ buildGoModule rec {
     '';
     license = licenses.mit;
     homepage = "https://github.com/mschneider82/keylight-control";
-    maintainers = with maintainers; [ superherointj ];
+    maintainers = with maintainers; [ ];
   };
 }
 
diff --git a/pkgs/applications/misc/lutris/fhsenv.nix b/pkgs/applications/misc/lutris/fhsenv.nix
index 0ff5b4a6a625b..278d2c363bdb7 100644
--- a/pkgs/applications/misc/lutris/fhsenv.nix
+++ b/pkgs/applications/misc/lutris/fhsenv.nix
@@ -62,6 +62,9 @@ in buildFHSUserEnv {
     # Osmose
     qt4
 
+    # Overwatch 2
+    libunwind
+
     # PPSSPP
     glew snappy
 
diff --git a/pkgs/applications/misc/mangal/default.nix b/pkgs/applications/misc/mangal/default.nix
index 4e229c59fab45..f14084a865e5c 100644
--- a/pkgs/applications/misc/mangal/default.nix
+++ b/pkgs/applications/misc/mangal/default.nix
@@ -2,17 +2,17 @@
 
 buildGoModule rec {
   pname = "mangal";
-  version = "3.11.0";
+  version = "3.12.0";
 
   src = fetchFromGitHub {
     owner = "metafates";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-gBHNB3s7RHHxlxgeUFmxOdYvPaI78AzL4vRaCmXKgus=";
+    hash = "sha256-1fWy7riInrbReQ0sQ1TF8GhqWQG0KXk1JzhmxlSuvmk=";
   };
 
   proxyVendor = true;
-  vendorSha256 = "sha256-Faz/cujnbK83vrIM1KUWXbUzNIB9eYAWCqWs+oJ1sYk=";
+  vendorSha256 = "sha256-+HDuGSZinotUtCqffrmFkjHegxdArSJMWwnUG/tnLRc=";
 
   ldflags = [ "-s" "-w" ];
 
diff --git a/pkgs/applications/misc/mdzk/default.nix b/pkgs/applications/misc/mdzk/default.nix
index 3144f59476b57..98bcda9943fcd 100644
--- a/pkgs/applications/misc/mdzk/default.nix
+++ b/pkgs/applications/misc/mdzk/default.nix
@@ -8,10 +8,15 @@ rustPlatform.buildRustPackage rec {
     owner = "mdzk-rs";
     repo = "mdzk";
     rev = version;
-    sha256 = "sha256-V//tVcIzhCh03VjwMC+R2ynaOFm+dp6qxa0oqBfvGUs=";
+    hash = "sha256-V//tVcIzhCh03VjwMC+R2ynaOFm+dp6qxa0oqBfvGUs=";
   };
 
-  cargoSha256 = "sha256-2lPckUhnyfHaVWXzZXKliolDZiPtNl9UBZIKs6tUaNQ=";
+  cargoPatches = [
+    # Remove when new version of mdzk is released.
+    ./update-mdbook-for-rust-1.64.patch
+  ];
+
+  cargoHash = "sha256-5zGUBvmf68tCk5jGrNn+ukgYbiKzrlmZvWrYgoJf2zk=";
 
   buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ];
 
diff --git a/pkgs/applications/misc/mdzk/update-mdbook-for-rust-1.64.patch b/pkgs/applications/misc/mdzk/update-mdbook-for-rust-1.64.patch
new file mode 100644
index 0000000000000..79b7240b96f88
--- /dev/null
+++ b/pkgs/applications/misc/mdzk/update-mdbook-for-rust-1.64.patch
@@ -0,0 +1,246 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index ae63793..4068e02 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -162,12 +162,46 @@ dependencies = [
+  "ansi_term",
+  "atty",
+  "bitflags",
+- "strsim",
+- "textwrap",
++ "strsim 0.8.0",
++ "textwrap 0.11.0",
+  "unicode-width",
+  "vec_map",
+ ]
+ 
++[[package]]
++name = "clap"
++version = "3.2.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8e538f9ee5aa3b3963f09a997035f883677966ed50fce0292611927ce6f6d8c6"
++dependencies = [
++ "atty",
++ "bitflags",
++ "clap_lex",
++ "indexmap",
++ "lazy_static",
++ "strsim 0.10.0",
++ "termcolor",
++ "textwrap 0.15.1",
++]
++
++[[package]]
++name = "clap_complete"
++version = "3.2.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3f7a2e0a962c45ce25afce14220bc24f9dade0a1787f185cecf96bfba7847cd8"
++dependencies = [
++ "clap 3.2.2",
++]
++
++[[package]]
++name = "clap_lex"
++version = "0.2.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5"
++dependencies = [
++ "os_str_bytes",
++]
++
+ [[package]]
+ name = "cpufeatures"
+ version = "0.2.1"
+@@ -222,9 +256,9 @@ dependencies = [
+ 
+ [[package]]
+ name = "env_logger"
+-version = "0.7.1"
++version = "0.9.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
++checksum = "c90bf5f19754d10198ccb95b70664fc925bd1fc090a0fd9a6ebc54acc8cd6272"
+ dependencies = [
+  "atty",
+  "humantime",
+@@ -385,15 +419,6 @@ dependencies = [
+  "version_check",
+ ]
+ 
+-[[package]]
+-name = "getopts"
+-version = "0.2.21"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "14dbbfd5c71d70241ecf9e6f13737f7b5ce823821063188d7e46c41d371eebd5"
+-dependencies = [
+- "unicode-width",
+-]
+-
+ [[package]]
+ name = "getrandom"
+ version = "0.1.16"
+@@ -471,7 +496,7 @@ dependencies = [
+  "log",
+  "pest",
+  "pest_derive",
+- "quick-error 2.0.1",
++ "quick-error",
+  "serde",
+  "serde_json",
+ ]
+@@ -575,12 +600,9 @@ checksum = "6456b8a6c8f33fee7d958fcd1b60d55b11940a79e63ae87013e6d22e26034440"
+ 
+ [[package]]
+ name = "humantime"
+-version = "1.3.0"
++version = "2.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
+-dependencies = [
+- "quick-error 1.2.3",
+-]
++checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
+ 
+ [[package]]
+ name = "hyper"
+@@ -822,13 +844,14 @@ checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f"
+ 
+ [[package]]
+ name = "mdbook"
+-version = "0.4.15"
++version = "0.4.21"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "241f10687eb3b4e0634b3b4e423f97c5f1efbd69dc9522e24a8b94583eeec3c6"
++checksum = "23f3e133c6d515528745ffd3b9f0c7d975ae039f0b6abb099f2168daa2afb4f9"
+ dependencies = [
+  "anyhow",
+  "chrono",
+- "clap",
++ "clap 3.2.2",
++ "clap_complete",
+  "env_logger",
+  "handlebars",
+  "lazy_static",
+@@ -838,7 +861,6 @@ dependencies = [
+  "pulldown-cmark",
+  "regex",
+  "serde",
+- "serde_derive",
+  "serde_json",
+  "shlex",
+  "tempfile",
+@@ -1062,6 +1084,12 @@ dependencies = [
+  "winapi 0.3.9",
+ ]
+ 
++[[package]]
++name = "os_str_bytes"
++version = "6.3.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9ff7415e9ae3fff1225851df9e0d9e4e5479f947619774677a63572e55e80eff"
++
+ [[package]]
+ name = "parking_lot"
+ version = "0.11.2"
+@@ -1258,17 +1286,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "34f197a544b0c9ab3ae46c359a7ec9cbbb5c7bf97054266fecb7ead794a181d6"
+ dependencies = [
+  "bitflags",
+- "getopts",
+  "memchr",
+  "unicase",
+ ]
+ 
+-[[package]]
+-name = "quick-error"
+-version = "1.2.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
+-
+ [[package]]
+ name = "quick-error"
+ version = "2.0.1"
+@@ -1386,9 +1407,9 @@ dependencies = [
+ 
+ [[package]]
+ name = "regex"
+-version = "1.5.4"
++version = "1.6.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461"
++checksum = "4c4eb3267174b8c6c2f654116623910a0fef09c4753f8dd83db29c48a0df988b"
+ dependencies = [
+  "aho-corasick",
+  "memchr",
+@@ -1403,9 +1424,9 @@ checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
+ 
+ [[package]]
+ name = "regex-syntax"
+-version = "0.6.25"
++version = "0.6.27"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
++checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244"
+ 
+ [[package]]
+ name = "remove_dir_all"
+@@ -1577,13 +1598,19 @@ version = "0.8.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
+ 
++[[package]]
++name = "strsim"
++version = "0.10.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
++
+ [[package]]
+ name = "structopt"
+ version = "0.3.26"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "0c6b5c64445ba8094a6ab0c3cd2ad323e07171012d9c98b0b15651daf1787a10"
+ dependencies = [
+- "clap",
++ "clap 2.33.3",
+  "lazy_static",
+  "structopt-derive",
+ ]
+@@ -1673,6 +1700,12 @@ dependencies = [
+  "unicode-width",
+ ]
+ 
++[[package]]
++name = "textwrap"
++version = "0.15.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "949517c0cf1bf4ee812e2e07e08ab448e3ae0d23472aee8a06c985f0c8815b16"
++
+ [[package]]
+ name = "thiserror"
+ version = "1.0.30"
+diff --git a/Cargo.toml b/Cargo.toml
+index dfeeb45..8b1e4e5 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -38,7 +38,7 @@ handlebars = "4.2.1"
+ ignore = "0.4.18"
+ lazy_static = "1.4.0"
+ lazy-regex = "2.2.2"
+-mdbook = { version = "0.4.15", default-features = false }
++mdbook = { version = "0.4.21", default-features = false }
+ notify = "4.0.17"
+ pest = "2.1.3"
+ pest_derive = "2.1.0"
+diff --git a/src/renderer/mdzk_renderer.rs b/src/renderer/mdzk_renderer.rs
+index 55b2423..f8480ca 100644
+--- a/src/renderer/mdzk_renderer.rs
++++ b/src/renderer/mdzk_renderer.rs
+@@ -92,7 +92,7 @@ impl Renderer for HtmlMdzk {
+             "description",
+             json!(ctx.config.book.description.clone().unwrap_or_default()),
+         );
+-        if let Some(ref livereload) = html_config.livereload_url {
++        if let Some(ref livereload) = html_config.live_reload_endpoint {
+             data.insert("livereload", json!(livereload));
+         }
+         data.insert("fold_enable", json!(html_config.fold.enable));
diff --git a/pkgs/applications/misc/numberstation/default.nix b/pkgs/applications/misc/numberstation/default.nix
index 1dba44531e595..52ced3b41753a 100644
--- a/pkgs/applications/misc/numberstation/default.nix
+++ b/pkgs/applications/misc/numberstation/default.nix
@@ -15,7 +15,7 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "numberstation";
-  version = "1.1.0";
+  version = "1.2.0";
 
   format = "other";
 
@@ -23,7 +23,7 @@ python3.pkgs.buildPythonApplication rec {
     owner = "~martijnbraam";
     repo = "numberstation";
     rev = version;
-    hash = "sha256-A6qwsbeNZXfSOZwHp19/4JQ8dZgjsK7Y2zho6vJXsGA=";
+    hash = "sha256-e/KZrBnep5LbzgNnIoZlS5AMxhx4KlmdYDzdldMGVwg=";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/misc/osmscout-server/default.nix b/pkgs/applications/misc/osmscout-server/default.nix
index cefce001eba90..9f057e3b019a4 100644
--- a/pkgs/applications/misc/osmscout-server/default.nix
+++ b/pkgs/applications/misc/osmscout-server/default.nix
@@ -1,7 +1,7 @@
 { lib, mkDerivation, fetchFromGitHub, pkg-config
 , qmake, qttools, kirigami2, qtquickcontrols2, qtlocation
 , libosmscout, valhalla, libpostal, osrm-backend, protobuf
-, libmicrohttpd_0_9_70, sqlite, marisa, kyotocabinet, boost
+, libmicrohttpd, sqlite, marisa, kyotocabinet, boost
 }:
 
 let
@@ -27,7 +27,7 @@ mkDerivation rec {
   nativeBuildInputs = [ qmake pkg-config qttools ];
   buildInputs = [
     kirigami2 qtquickcontrols2 qtlocation
-    valhalla libosmscout osrm-backend libmicrohttpd_0_9_70
+    valhalla libosmscout osrm-backend libmicrohttpd
     libpostal sqlite marisa kyotocabinet boost protobuf date
   ];
 
diff --git a/pkgs/applications/misc/oxker/default.nix b/pkgs/applications/misc/oxker/default.nix
new file mode 100644
index 0000000000000..2a6495ff0155f
--- /dev/null
+++ b/pkgs/applications/misc/oxker/default.nix
@@ -0,0 +1,21 @@
+{ lib, fetchCrate, rustPlatform }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "oxker";
+  version = "0.1.5";
+
+  src = fetchCrate {
+    inherit pname version;
+    sha256 = "sha256-OhXU61F8XK5ts4GwDUkFv4+FGNFUmJJ9ooRS9/D0yvQ=";
+  };
+
+  cargoSha256 = "sha256-ldf0XYBhxLL2v0+yBX9Dqq8kYgJZ2f4Lor+rUA0/47E=";
+
+  meta = with lib; {
+    description = "A simple tui to view & control docker containers";
+    homepage = "https://github.com/mrjackwills/oxker";
+    changelog = "https://github.com/mrjackwills/oxker/blob/v${version}/CHANGELOG.md";
+    license = licenses.mit;
+    maintainers = with maintainers; [ siph ];
+  };
+}
diff --git a/pkgs/applications/misc/parsec/bin.nix b/pkgs/applications/misc/parsec/bin.nix
new file mode 100644
index 0000000000000..502ee9f7f0161
--- /dev/null
+++ b/pkgs/applications/misc/parsec/bin.nix
@@ -0,0 +1,81 @@
+{ stdenvNoCC, stdenv
+, lib
+, dpkg, autoPatchelfHook, makeWrapper
+, fetchurl
+, alsa-lib, openssl, udev
+, libglvnd
+, libX11, libXcursor, libXi, libXrandr
+, libpulseaudio
+, libva
+, ffmpeg
+}:
+
+stdenvNoCC.mkDerivation {
+  pname = "parsec-bin";
+  version = "150_28";
+
+  src = fetchurl {
+    url = "https://web.archive.org/web/20220622215230id_/https://builds.parsecgaming.com/package/parsec-linux.deb";
+    sha256 = "1hfdzjd8qiksv336m4s4ban004vhv00cv2j461gc6zrp37s0fwhc";
+  };
+
+  unpackPhase = ''
+    runHook preUnpack
+
+    dpkg-deb -x $src .
+
+    runHook postUnpack
+  '';
+
+  nativeBuildInputs = [ dpkg autoPatchelfHook makeWrapper ];
+
+  buildInputs = [
+    stdenv.cc.cc # libstdc++
+    libglvnd
+    libX11
+  ];
+
+  runtimeDependenciesPath = lib.makeLibraryPath [
+    stdenv.cc.cc
+    libglvnd
+    openssl
+    udev
+    alsa-lib
+    libpulseaudio
+    libva
+    ffmpeg
+    libX11
+    libXcursor
+    libXi
+    libXrandr
+  ];
+
+  prepareParsec = ''
+    if [[ ! -e "$HOME/.parsec/appdata.json" ]]; then
+      mkdir -p "$HOME/.parsec"
+      cp --no-preserve=mode,ownership,timestamps ${placeholder "out"}/share/parsec/skel/* "$HOME/.parsec/"
+    fi
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir $out
+    mv usr/* $out
+
+    wrapProgram $out/bin/parsecd \
+      --prefix LD_LIBRARY_PATH : "$runtimeDependenciesPath" \
+      --run "$prepareParsec"
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    homepage = "https://parsecgaming.com/";
+    description = "Remote streaming service client";
+    license = licenses.unfree;
+    maintainers = with maintainers; [ arcnmx ];
+    platforms = platforms.linux;
+    mainProgram = "parsecd";
+  };
+}
diff --git a/pkgs/applications/misc/pcmanx-gtk2/default.nix b/pkgs/applications/misc/pcmanx-gtk2/default.nix
index dffbd2079aead..2e75791e30823 100644
--- a/pkgs/applications/misc/pcmanx-gtk2/default.nix
+++ b/pkgs/applications/misc/pcmanx-gtk2/default.nix
@@ -11,8 +11,8 @@ stdenv.mkDerivation rec {
     sha256 = "0fbwd149wny67rfhczz4cbh713a1qnswjiz7b6c2bxfcwh51f9rc";
   };
 
-  nativeBuildInputs = [ pkg-config automake autoconf ];
-  buildInputs = [ gtk2 libXft intltool libtool ];
+  nativeBuildInputs = [ pkg-config automake autoconf intltool ];
+  buildInputs = [ gtk2 libXft libtool ];
 
   preConfigure = ''
     ./autogen.sh
diff --git a/pkgs/applications/misc/pgmodeler/default.nix b/pkgs/applications/misc/pgmodeler/default.nix
index 93d5d74ac731c..966d8207cc0dc 100644
--- a/pkgs/applications/misc/pgmodeler/default.nix
+++ b/pkgs/applications/misc/pgmodeler/default.nix
@@ -10,13 +10,13 @@
 
 mkDerivation rec {
   pname = "pgmodeler";
-  version = "0.9.4";
+  version = "1.0.0-beta";
 
   src = fetchFromGitHub {
     owner = "pgmodeler";
     repo = "pgmodeler";
     rev = "v${version}";
-    sha256 = "sha256-FwLPhIc2ofaB8Z2ZUYMFFt5XdoosEfEOwoIaI7pSxa0=";
+    sha256 = "sha256-1+1hKOY8unu6Z7LLv/WQ86JlwWUubQuhPP9OUjyXOrM=";
   };
 
   nativeBuildInputs = [ pkg-config qmake ];
diff --git a/pkgs/applications/misc/privacyidea/default.nix b/pkgs/applications/misc/privacyidea/default.nix
index d7613b0c2a54f..405d992576da8 100644
--- a/pkgs/applications/misc/privacyidea/default.nix
+++ b/pkgs/applications/misc/privacyidea/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchFromGitHub, cacert, openssl, nixosTests
-, python39
+, python39, fetchpatch
 }:
 
 let
@@ -107,6 +107,16 @@ python3'.pkgs.buildPythonPackage rec {
     pydash ecdsa google-auth importlib-metadata argon2-cffi bcrypt
   ];
 
+  patches = [
+    # Apply https://github.com/privacyidea/privacyidea/pull/3304, fixes
+    # `Exceeds the limit (4300) for integer string conversion` in the tests,
+    # see https://hydra.nixos.org/build/192932057
+    (fetchpatch {
+      url = "https://github.com/privacyidea/privacyidea/commit/0e28f36c0b3291a361669f4a3a77c294f4564475.patch";
+      sha256 = "sha256-QqcO8bkt+I2JKce/xk2ZhzEaLZ3E4uZ4x5W9Kk0pMQQ=";
+    })
+  ];
+
   passthru.tests = { inherit (nixosTests) privacyidea; };
 
   checkInputs = with python3'.pkgs; [ openssl mock pytestCheckHook responses testfixtures ];
diff --git a/pkgs/applications/misc/process-viewer/default.nix b/pkgs/applications/misc/process-viewer/default.nix
index 80563a931292f..442f9d0e9b50b 100644
--- a/pkgs/applications/misc/process-viewer/default.nix
+++ b/pkgs/applications/misc/process-viewer/default.nix
@@ -39,5 +39,6 @@ rustPlatform.buildRustPackage rec {
     homepage = "https://github.com/guillaumegomez/process-viewer";
     license = licenses.mit;
     maintainers = with maintainers; [ figsoda ];
+    mainProgram = "process_viewer";
   };
 }
diff --git a/pkgs/applications/misc/prusa-slicer/default.nix b/pkgs/applications/misc/prusa-slicer/default.nix
index 286abfb3fdb13..1592ef5461559 100644
--- a/pkgs/applications/misc/prusa-slicer/default.nix
+++ b/pkgs/applications/misc/prusa-slicer/default.nix
@@ -130,6 +130,15 @@ stdenv.mkDerivation rec {
     # likely due to commit e682dd84cff5d2420fcc0a40508557477f6cc9d3
     # See issue #185808 for details.
     sed -i 's|test_voronoi.cpp||g' tests/libslic3r/CMakeLists.txt
+
+    # prusa-slicer expects the OCCTWrapper shared library in the same folder as
+    # the executable when loading STEP files. We force the loader to find it in
+    # the usual locations (i.e. LD_LIBRARY_PATH) instead. See the manpage
+    # dlopen(3) for context.
+    if [ -f "src/libslic3r/Format/STEP.cpp" ]; then
+      substituteInPlace src/libslic3r/Format/STEP.cpp \
+        --replace 'libpath /= "OCCTWrapper.so";' 'libpath = "OCCTWrapper.so";'
+    fi
   '';
 
   src = fetchFromGitHub {
@@ -147,11 +156,20 @@ stdenv.mkDerivation rec {
   postInstall = ''
     ln -s "$out/bin/prusa-slicer" "$out/bin/prusa-gcodeviewer"
 
+    mkdir -p "$out/lib"
+    mv -v $out/bin/*.so $out/lib/
+
     mkdir -p "$out/share/pixmaps/"
     ln -s "$out/share/PrusaSlicer/icons/PrusaSlicer.png" "$out/share/pixmaps/PrusaSlicer.png"
     ln -s "$out/share/PrusaSlicer/icons/PrusaSlicer-gcodeviewer_192px.png" "$out/share/pixmaps/PrusaSlicer-gcodeviewer.png"
   '';
 
+  preFixup = ''
+    gappsWrapperArgs+=(
+      --prefix LD_LIBRARY_PATH : "$out/lib"
+    )
+  '';
+
   meta = with lib; {
     description = "G-code generator for 3D printer";
     homepage = "https://github.com/prusa3d/PrusaSlicer";
diff --git a/pkgs/applications/misc/qcad/application-dir.patch b/pkgs/applications/misc/qcad/application-dir.patch
index 0b8a29319eb3d..84782e1e7178f 100644
--- a/pkgs/applications/misc/qcad/application-dir.patch
+++ b/pkgs/applications/misc/qcad/application-dir.patch
@@ -33,16 +33,3 @@ index c6c31cbf5..c51b59ce6 100644
  }
  
  int RSettings::getSnapRange() {
-diff --git a/qcad.desktop b/qcad.desktop
-index 93c5e9720..2d0e6bf32 100644
---- a/qcad.desktop
-+++ b/qcad.desktop
-@@ -48,7 +48,7 @@ Comment[sv]=2D CAD-system
- Comment[sl]=Sistem 2D CAD
- Comment[uk]=2D САПР
- Comment[tr]=2D CAD Sistemi
--Exec=qcad %F
-+Exec=qcad-bin %F
- X-MultipleArgs=true
- Icon=qcad_icon
- Terminal=false
diff --git a/pkgs/applications/misc/scli/default.nix b/pkgs/applications/misc/scli/default.nix
index 9729301f6e74c..abd47c149ebb2 100644
--- a/pkgs/applications/misc/scli/default.nix
+++ b/pkgs/applications/misc/scli/default.nix
@@ -22,6 +22,7 @@ python3.pkgs.buildPythonApplication rec {
     urwid
     urwid-readline
   ];
+  format = "other";
 
   dontBuild = true;
 
diff --git a/pkgs/applications/misc/synergy/default.nix b/pkgs/applications/misc/synergy/default.nix
index 60954d567e22a..f756e9788ac95 100644
--- a/pkgs/applications/misc/synergy/default.nix
+++ b/pkgs/applications/misc/synergy/default.nix
@@ -35,13 +35,13 @@
 
 stdenv.mkDerivation rec {
   pname = "synergy";
-  version = "1.14.5.17";
+  version = "1.14.5.22";
 
   src = fetchFromGitHub {
     owner = "symless";
     repo = "synergy-core";
     rev = version;
-    sha256 = "sha256-9B6KPa1TsS4khCf7ccmwQZJ1KDEuLNw/W0PScYCgtlE=";
+    sha256 = "sha256-rqQ4n8P8pZSWRCxaQLa2PuduXMt2XeaFs051qcT3/o8=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/applications/misc/tandoor-recipes/common.nix b/pkgs/applications/misc/tandoor-recipes/common.nix
new file mode 100644
index 0000000000000..49b38bec655a8
--- /dev/null
+++ b/pkgs/applications/misc/tandoor-recipes/common.nix
@@ -0,0 +1,19 @@
+{ lib, fetchFromGitHub }:
+rec {
+  version = "1.4.4";
+
+  src = fetchFromGitHub {
+    owner = "TandoorRecipes";
+    repo = "recipes";
+    rev = version;
+    sha256 = "sha256-1wqZoOT2Aafbs2P0mL33jw5HkrLIitUcRt6bQQcHx40=";
+  };
+
+  yarnSha256 = "sha256-gH0q3pJ2BC5pAU9KSo3C9DDRUnpypoyLOEqKSrkxYrk=";
+
+  meta = with lib; {
+    homepage = "https://tandoor.dev/";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ ambroisie ];
+  };
+}
diff --git a/pkgs/applications/misc/tandoor-recipes/default.nix b/pkgs/applications/misc/tandoor-recipes/default.nix
new file mode 100644
index 0000000000000..767d0c768ded0
--- /dev/null
+++ b/pkgs/applications/misc/tandoor-recipes/default.nix
@@ -0,0 +1,143 @@
+{ callPackage
+, nixosTests
+, python3
+}:
+let
+  python = python3.override {
+    packageOverrides = self: super: {
+      django = super.django_4;
+
+      # Tests are incompatible with Django 4
+      django-js-reverse = super.django-js-reverse.overridePythonAttrs (_: {
+        doCheck = false;
+      });
+    };
+  };
+
+  common = callPackage ./common.nix { };
+
+  frontend = callPackage ./frontend.nix { };
+in
+python.pkgs.pythonPackages.buildPythonPackage rec {
+  pname = "tandoor-recipes";
+
+  inherit (common) version src;
+
+  format = "other";
+
+  patches = [
+    # Allow setting MEDIA_ROOT through environment variable
+    ./media-root.patch
+  ];
+
+  propagatedBuildInputs = with python.pkgs; [
+    beautifulsoup4
+    bleach
+    bleach-allowlist
+    boto3
+    cryptography
+    django
+    django-allauth
+    django-annoying
+    django-auth-ldap
+    django-autocomplete-light
+    django-cleanup
+    django-cors-headers
+    django-crispy-forms
+    django-hcaptcha
+    django-js-reverse
+    django-oauth-toolkit
+    django-prometheus
+    django-scopes
+    django-storages
+    django-tables2
+    django-webpack-loader
+    django_treebeard
+    djangorestframework
+    drf-writable-nested
+    gunicorn
+    icalendar
+    jinja2
+    lxml
+    markdown
+    microdata
+    pillow
+    psycopg2
+    pyppeteer
+    python-dotenv
+    pytube
+    pyyaml
+    recipe-scrapers
+    requests
+    six
+    uritemplate
+    validators
+    webdavclient3
+    whitenoise
+  ];
+
+  configurePhase = ''
+    runHook preConfigure
+
+    ln -sf ${frontend}/ cookbook/static/vue
+    cp ${frontend}/webpack-stats.json vue/
+
+    runHook postConfigure
+  '';
+
+  buildPhase = ''
+    runHook preBuild
+
+    # Avoid dependency on django debug toolbar
+    export DEBUG=0
+
+    # See https://github.com/TandoorRecipes/recipes/issues/2043
+    mkdir cookbook/static/themes/maps/
+    touch cookbook/static/themes/maps/style.min.css.map
+    touch cookbook/static/themes/bootstrap.min.css.map
+    touch cookbook/static/css/bootstrap-vue.min.css.map
+
+    ${python.pythonForBuild.interpreter} manage.py collectstatic_js_reverse
+    ${python.pythonForBuild.interpreter} manage.py collectstatic
+
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/lib
+    cp -r . $out/lib/tandoor-recipes
+    chmod +x $out/lib/tandoor-recipes/manage.py
+    makeWrapper $out/lib/tandoor-recipes/manage.py $out/bin/tandoor-recipes \
+      --prefix PYTHONPATH : "$PYTHONPATH"
+
+    # usually copied during frontend build (see vue.config.js)
+    cp vue/src/sw.js $out/lib/tandoor-recipes/cookbook/templates/
+
+    runHook postInstall
+  '';
+
+  checkInputs = with python.pkgs; [
+    pytestCheckHook
+    pytest-django
+    pytest-factoryboy
+  ];
+
+  passthru = {
+    inherit frontend python;
+
+    updateScript = ./update.sh;
+
+    tests = {
+      inherit (nixosTests) tandoor-recipes;
+    };
+  };
+
+  meta = common.meta // {
+    description = ''
+      Application for managing recipes, planning meals, building shopping lists
+      and much much more!
+    '';
+  };
+}
diff --git a/pkgs/applications/misc/tandoor-recipes/frontend.nix b/pkgs/applications/misc/tandoor-recipes/frontend.nix
new file mode 100644
index 0000000000000..47dcde5aca517
--- /dev/null
+++ b/pkgs/applications/misc/tandoor-recipes/frontend.nix
@@ -0,0 +1,57 @@
+{ stdenv, fetchYarnDeps, fixup_yarn_lock, callPackage, nodejs-16_x }:
+let
+  common = callPackage ./common.nix { };
+in
+stdenv.mkDerivation {
+  pname = "tandoor-recipes-frontend";
+  inherit (common) version;
+
+  src = "${common.src}/vue";
+
+  yarnOfflineCache = fetchYarnDeps {
+    yarnLock = "${common.src}/vue/yarn.lock";
+    sha256 = common.yarnSha256;
+  };
+
+  nativeBuildInputs = [
+    fixup_yarn_lock
+    # Use Node JS 16 because of @achrinza/node-ipc@9.2.2
+    nodejs-16_x
+    nodejs-16_x.pkgs.yarn
+  ];
+
+  configurePhase = ''
+    runHook preConfigure
+
+    export HOME=$(mktemp -d)
+    yarn config --offline set yarn-offline-mirror "$yarnOfflineCache"
+    fixup_yarn_lock yarn.lock
+    command -v yarn
+    yarn install --frozen-lockfile --offline --no-progress --non-interactive
+    patchShebangs node_modules/
+
+    runHook postConfigure
+  '';
+
+  buildPhase = ''
+    runHook preBuild
+
+    yarn --offline run build
+
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    cp -R ../cookbook/static/vue/ $out
+    cp webpack-stats.json $out
+    echo "${common.version}" > "$out/version"
+
+    runHook postInstall
+  '';
+
+  meta = common.meta // {
+    description = "Tandoor Recipes frontend";
+  };
+}
diff --git a/pkgs/applications/misc/tandoor-recipes/media-root.patch b/pkgs/applications/misc/tandoor-recipes/media-root.patch
new file mode 100644
index 0000000000000..8114ca8aaeb37
--- /dev/null
+++ b/pkgs/applications/misc/tandoor-recipes/media-root.patch
@@ -0,0 +1,17 @@
+diff --git a/recipes/settings.py b/recipes/settings.py
+index 5676fe0a..6c6f1747 100644
+--- a/recipes/settings.py
++++ b/recipes/settings.py
+@@ -426,10 +426,10 @@ if os.getenv('S3_ACCESS_KEY', ''):
+         AWS_S3_CUSTOM_DOMAIN = os.getenv('S3_CUSTOM_DOMAIN', '')
+ 
+     MEDIA_URL = os.getenv('MEDIA_URL', '/media/')
+-    MEDIA_ROOT = os.path.join(BASE_DIR, "mediafiles")
++    MEDIA_ROOT = os.getenv('MEDIA_ROOT', os.path.join(BASE_DIR, "mediafiles"))
+ else:
+     MEDIA_URL = os.getenv('MEDIA_URL', '/media/')
+-    MEDIA_ROOT = os.path.join(BASE_DIR, "mediafiles")
++    MEDIA_ROOT = os.getenv('MEDIA_ROOT', os.path.join(BASE_DIR, "mediafiles"))
+ 
+ # Serve static files with gzip
+ STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'
diff --git a/pkgs/applications/misc/tandoor-recipes/update.sh b/pkgs/applications/misc/tandoor-recipes/update.sh
new file mode 100755
index 0000000000000..49b6d5f98ae95
--- /dev/null
+++ b/pkgs/applications/misc/tandoor-recipes/update.sh
@@ -0,0 +1,42 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -I nixpkgs=../../../../ -i bash -p nix wget prefetch-yarn-deps nix-prefetch-github jq
+
+# shellcheck shell=bash
+
+if [ -n "$GITHUB_TOKEN" ]; then
+    TOKEN_ARGS=(--header "Authorization: token $GITHUB_TOKEN")
+fi
+
+if [ "$#" -gt 1 ] || [[ "$1" == -* ]]; then
+    echo "Regenerates packaging data for the tandoor-recipes package."
+    echo "Usage: $0 [git release tag]"
+    exit 1
+fi
+
+version="$1"
+
+set -euo pipefail
+
+if [ -z "$version" ]; then
+    version="$(wget -O- "${TOKEN_ARGS[@]}" "https://api.github.com/repos/TandoorRecipes/recipes/releases?per_page=1" | jq -r '.[0].tag_name')"
+fi
+
+package_src="https://raw.githubusercontent.com/TandoorRecipes/recipes/$version"
+
+src_hash=$(nix-prefetch-github TandoorRecipes recipes --rev "${version}" | jq -r .sha256)
+
+tmpdir=$(mktemp -d)
+trap 'rm -rf "$tmpdir"' EXIT
+
+pushd "$tmpdir"
+wget "${TOKEN_ARGS[@]}" "$package_src/vue/yarn.lock"
+yarn_hash=$(prefetch-yarn-deps yarn.lock)
+popd
+
+# Use friendlier hashes
+src_hash=$(nix hash to-sri --type sha256 "$src_hash")
+yarn_hash=$(nix hash to-sri --type sha256 "$yarn_hash")
+
+sed -i -E -e "s#version = \".*\"#version = \"$version\"#" common.nix
+sed -i -E -e "s#sha256 = \".*\"#sha256 = \"$src_hash\"#" common.nix
+sed -i -E -e "s#yarnSha256 = \".*\"#yarnSha256 = \"$yarn_hash\"#" common.nix
diff --git a/pkgs/applications/misc/udevil/default.nix b/pkgs/applications/misc/udevil/default.nix
index 536d800001b23..9c50b189cc150 100644
--- a/pkgs/applications/misc/udevil/default.nix
+++ b/pkgs/applications/misc/udevil/default.nix
@@ -20,11 +20,10 @@ stdenv.mkDerivation rec {
     sha256 = "0nd44r8rbxifx4x4m24z5aji1c6k1fhw8cmf5s43wd5qys0bcdad";
   };
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [ pkg-config intltool ];
 
   buildInputs = [
     glib
-    intltool
     udev
   ];
 
diff --git a/pkgs/applications/misc/wtf/default.nix b/pkgs/applications/misc/wtf/default.nix
index 0ba8c5a97ad9d..e7a871a171dfb 100644
--- a/pkgs/applications/misc/wtf/default.nix
+++ b/pkgs/applications/misc/wtf/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "wtf";
-  version = "0.41.0";
+  version = "0.42.0";
 
   src = fetchFromGitHub {
     owner = "wtfutil";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Y8Vdh6sMMX8pS4zIuOfcejfsOB5z5mXEpRskJXQgU1Y=";
+    sha256 = "sha256-6dSKambBAi1JHVyhq9xBUx5X6QmjsZCV8lENB55Wzto=";
   };
 
-  vendorSha256 = "sha256-UE7BYal8ycU7mM1TLJMhoNxQKZjtsO9rJ+YXmLiOSk0=";
+  vendorSha256 = "sha256-Qe+u0u/NBXpEDvfKAF50Uxu5rh8BLa7N0wJ4bEuKOps=";
 
   doCheck = false;
 
diff --git a/pkgs/applications/misc/xmr-stak/default.nix b/pkgs/applications/misc/xmr-stak/default.nix
index 73d111979f33a..5fffac0c7772b 100644
--- a/pkgs/applications/misc/xmr-stak/default.nix
+++ b/pkgs/applications/misc/xmr-stak/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, stdenvGcc6, lib
-, fetchFromGitHub, cmake, libmicrohttpd_0_9_70, openssl
+{ stdenv, lib, fetchpatch
+, fetchFromGitHub, cmake, libmicrohttpd, openssl
 , opencl-headers, ocl-icd, hwloc
 , devDonationLevel ? "0.0"
 , openclSupport ? true
@@ -18,11 +18,18 @@ stdenv.mkDerivation rec {
 
   NIX_CFLAGS_COMPILE = "-O3";
 
+  patches = [ (fetchpatch {
+    name = "fix-libmicrohttpd-0-9-71.patch";
+    url = "https://github.com/fireice-uk/xmr-stak/compare/06e08780eab54dbc025ce3f38c948e4eef2726a0...8adb208987f5881946992ab9cd9a45e4e2a4b870.patch";
+    excludes = [ "CMakeLists.txt.user" ];
+    hash = "sha256-Yv0U5EO1P5eikn1fKvUXEwemoUIjjeTjpP9p5J8pbC0=";
+  }) ];
+
   cmakeFlags = [ "-DCUDA_ENABLE=OFF" ]
     ++ lib.optional (!openclSupport) "-DOpenCL_ENABLE=OFF";
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ libmicrohttpd_0_9_70 openssl hwloc ]
+  buildInputs = [ libmicrohttpd openssl hwloc ]
     ++ lib.optionals openclSupport [ opencl-headers ocl-icd ];
 
   postPatch = ''
diff --git a/pkgs/applications/misc/xpad/default.nix b/pkgs/applications/misc/xpad/default.nix
index dbb5eb42e1d94..2a14cbe24fb51 100644
--- a/pkgs/applications/misc/xpad/default.nix
+++ b/pkgs/applications/misc/xpad/default.nix
@@ -11,9 +11,9 @@ stdenv.mkDerivation rec {
     sha256 = "1qpmlwn0bcw1q73ag0l0fdnlzmwawfvsy4g9y5b0vyrc58lcp5d3";
   };
 
-  nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook intltool ];
 
-  buildInputs = [ glib intltool gtk3 gtksourceview ];
+  buildInputs = [ glib gtk3 gtksourceview ];
 
   meta = with lib; {
     description = "A sticky note application for jotting down things to remember";
diff --git a/pkgs/applications/misc/xplr/default.nix b/pkgs/applications/misc/xplr/default.nix
index 5fca27915f0ac..392944aa2a990 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.3";
+  version = "0.19.4";
 
   src = fetchFromGitHub {
     owner = "sayanarijit";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-0aNtBf3np9cq9JTgHRWy73i4AKaVEOluhSMSUyobduI=";
+    sha256 = "sha256-oVMnhtsovZAqMdmtV8oJ8frgHGidjlFzVyrYxi+gNdg=";
   };
 
   buildInputs = lib.optional stdenv.isDarwin libiconv;
 
-  cargoSha256 = "sha256-DXPpW7vls4yDEMiRrqDndxEKSA7Uncrt6n8nmsBXHcU=";
+  cargoSha256 = "sha256-PDbhnVThdb/42Q/dp/MNU6i6Un/lkKzfKuGukFt5tmc=";
 
   meta = with lib; {
     description = "A hackable, minimal, fast TUI file explorer";
diff --git a/pkgs/applications/misc/xxkb/default.nix b/pkgs/applications/misc/xxkb/default.nix
index d6514e58517e3..5e76e3a14d537 100644
--- a/pkgs/applications/misc/xxkb/default.nix
+++ b/pkgs/applications/misc/xxkb/default.nix
@@ -23,14 +23,14 @@ stdenv.mkDerivation rec {
     sha256 = "0hl1i38z9xnbgfjkaz04vv1n8xbgfg88g5z8fyzyb2hxv2z37anf";
   };
 
-  nativeBuildInputs = [ imake gccmakedep ];
+  nativeBuildInputs = [ imake gccmakedep pkg-config ];
 
   buildInputs = [
     libX11
     libXt
     libXext
     libXpm
-  ] ++ lib.optionals svgSupport [ librsvg glib gdk-pixbuf pkg-config ];
+  ] ++ lib.optionals svgSupport [ librsvg glib gdk-pixbuf ];
 
   outputs = [ "out" "man" ];
 
diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix
index b22a334b64f3d..afee9cf4f61bc 100644
--- a/pkgs/applications/networking/browsers/chromium/common.nix
+++ b/pkgs/applications/networking/browsers/chromium/common.nix
@@ -325,7 +325,7 @@ let
 
     buildPhase = let
       buildCommand = target: ''
-        ninja -C "${buildPath}" -j$NIX_BUILD_CORES -l$NIX_BUILD_CORES "${target}"
+        ninja -C "${buildPath}" -j$NIX_BUILD_CORES "${target}"
         (
           source chrome/installer/linux/common/installer.include
           PACKAGE=$packageName
diff --git a/pkgs/applications/networking/browsers/chromium/update.py b/pkgs/applications/networking/browsers/chromium/update.py
index 8341f2c6ee222..2a370a1a33b8d 100755
--- a/pkgs/applications/networking/browsers/chromium/update.py
+++ b/pkgs/applications/networking/browsers/chromium/update.py
@@ -70,7 +70,7 @@ def get_matching_chromedriver(version):
             'version': chromedriver_version,
             'sha256_linux': nix_prefetch_url(get_chromedriver_url('linux64')),
             'sha256_darwin': nix_prefetch_url(get_chromedriver_url('mac64')),
-            'sha256_darwin_aarch64': nix_prefetch_url(get_chromedriver_url('mac64_m1'))
+            'sha256_darwin_aarch64': nix_prefetch_url(get_chromedriver_url('mac_arm64'))
         }
 
 
diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.json b/pkgs/applications/networking/browsers/chromium/upstream-info.json
index 0d0c25dc3e526..46d4bd2b876c5 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": "106.0.5249.61",
-    "sha256": "15qljfg8w124yp65srp1rz3ywrlqhzqzkhimn1h9xz0jkf9cnypj",
-    "sha256bin64": "0l0vxlv8gmd655z2889549iafnyd4gyknqfal5iaqdhvig3sdp07",
+    "version": "106.0.5249.91",
+    "sha256": "16jlwzlfqdhhyajsxxrdfcqmh76ds8g1w4xd5mz3bdbd81mljh2p",
+    "sha256bin64": "1cfhsar79f319417cx4blcg5hk7b7ix45r7vhrbbwla18p0jij5y",
     "deps": {
       "gn": {
         "version": "2022-08-11",
@@ -12,42 +12,42 @@
       }
     },
     "chromedriver": {
-      "version": "106.0.5249.21",
-      "sha256_linux": "0z4m5145s00dycb7f7nscwghzwqym4if6k95w0q6d1hjyih8jh32",
-      "sha256_darwin": "1jnwaim2p579p1xlh9y2w11rp5agmp2144ipjs1fg9p97hrdi3yf",
-      "sha256_darwin_aarch64": "13wl55n54ld6nrmy1vallrqkzz031kzmw4sjwczra6k7ryd4z09w"
+      "version": "106.0.5249.61",
+      "sha256_linux": "0l2270d5az46pc6icpn3zx7yr8ilkszsrfy3qmwrx3cyc4xnmznj",
+      "sha256_darwin": "07k76i9m3j34h6ybn1wafy39d2ngf06bhp24qzwvv45rks714hqa",
+      "sha256_darwin_aarch64": "1nvid0s44nlzy46cgxzsyyb3jfpyl3xy7aqafwskmbxdczx7bdap"
     }
   },
   "beta": {
-    "version": "106.0.5249.61",
-    "sha256": "15qljfg8w124yp65srp1rz3ywrlqhzqzkhimn1h9xz0jkf9cnypj",
-    "sha256bin64": "15149hwjlw6gyh4ismgv0b9k4xn3350s70pqij9n79jb53f4nj9s",
+    "version": "107.0.5304.18",
+    "sha256": "0d3px8300zvimrp3k9vqaw1ivcizmlxs635gyb8sfrc4gvng29wm",
+    "sha256bin64": "1p06mmv7azivx8zhh4sgffblq9j3rgjvpjfsz5b6li9mlwqg72rq",
     "deps": {
       "gn": {
-        "version": "2022-08-11",
+        "version": "2022-09-14",
         "url": "https://gn.googlesource.com/gn",
-        "rev": "0bcd37bd2b83f1a9ee17088037ebdfe6eab6d31a",
-        "sha256": "13zks2z65kg7fzzsysq4mswd4bhhy3h7ycdrpxfilcvixx2n2gac"
+        "rev": "fff29c1b3f9703ea449f720fe70fa73575ef24e5",
+        "sha256": "1c0dvpp4im1hf277bs5w7rgqxz3g2bax266i2g6smi3pl7a8jpnp"
       }
     }
   },
   "dev": {
-    "version": "107.0.5304.10",
-    "sha256": "0i7awirsqbzbx3s6ff9b8g584w8s69islmahiwjkprm192k98k70",
-    "sha256bin64": "1v524ygk59r68b8hc8qn9vx067613nbcrdrvwkx7vggd9yp9mcya",
+    "version": "108.0.5327.0",
+    "sha256": "14g164khca0k5q0b5hgy790s5krfs5xxm08gqvs3jg5dn8w4pzvd",
+    "sha256bin64": "08nmikr06qlmfr0jx4jclid1wlb0iqy467c5jn67z033ym7ff1dy",
     "deps": {
       "gn": {
-        "version": "2022-09-14",
+        "version": "2022-09-16",
         "url": "https://gn.googlesource.com/gn",
-        "rev": "fff29c1b3f9703ea449f720fe70fa73575ef24e5",
-        "sha256": "1c0dvpp4im1hf277bs5w7rgqxz3g2bax266i2g6smi3pl7a8jpnp"
+        "rev": "cc28efe62ef0c2fb32455f414a29c4a55bb7fbc4",
+        "sha256": "0vibz1v6p88mr7is2nz6ir9x3zlx4vphciwv2awjrb5nhwabz9dg"
       }
     }
   },
   "ungoogled-chromium": {
-    "version": "106.0.5249.62",
-    "sha256": "1nm6hxr0gk5263v2ypmyc72dj1xb5r3r335vjvhvcqscgpikvnhq",
-    "sha256bin64": null,
+    "version": "106.0.5249.103",
+    "sha256": "0k2f3hc6mdmwzw9zzwcv6pnpibdz47a3xxkhfcvdki5gbag6cpr2",
+    "sha256bin64": "0bg6d9fv3ha7iql17nj8h22klbs3ls2nlvabczhh067mh3fpzf5x",
     "deps": {
       "gn": {
         "version": "2022-08-11",
@@ -56,8 +56,8 @@
         "sha256": "13zks2z65kg7fzzsysq4mswd4bhhy3h7ycdrpxfilcvixx2n2gac"
       },
       "ungoogled-patches": {
-        "rev": "106.0.5249.62-1",
-        "sha256": "0lm7brj3sx8rkq2nzz9w0by5mk9qp0ax1wsp68b2wcwcx6nrzjw4"
+        "rev": "106.0.5249.103-1",
+        "sha256": "00acfq9hsdjqqlxddr9lr45l4372mpqxj717qpf78z8iyrccjm23"
       }
     }
   }
diff --git a/pkgs/applications/networking/browsers/elinks/default.nix b/pkgs/applications/networking/browsers/elinks/default.nix
index 3278191a9c532..d2cb55810eb0b 100644
--- a/pkgs/applications/networking/browsers/elinks/default.nix
+++ b/pkgs/applications/networking/browsers/elinks/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, ncurses, xlibsWrapper, bzip2, zlib
+{ lib, stdenv, fetchFromGitHub, fetchpatch, ncurses, libX11, bzip2, zlib
 , brotli, zstd, xz, openssl, autoreconfHook, gettext, pkg-config, libev
 , gpm, libidn, tre, expat
 , # Incompatible licenses, LGPLv3 - GPLv2
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    ncurses xlibsWrapper bzip2 zlib brotli zstd xz
+    ncurses libX11 bzip2 zlib brotli zstd xz
     openssl libidn tre expat libev
   ]
     ++ lib.optional stdenv.isLinux gpm
diff --git a/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
index fc3c98f4f36b7..5110cdcb3a836 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
@@ -1,985 +1,985 @@
 {
-  version = "106.0b5";
+  version = "106.0b9";
   sources = [
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/ach/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/ach/firefox-106.0b9.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha256 = "bea7f87f3a7b29f3c096f49f2ab94e51856cb442e7f1761094f8f52bde5eb059";
+      sha256 = "884386b80804a5634988315d8c3e20258255574d1ed0dc8ac58bc6c837ab8141";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/af/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/af/firefox-106.0b9.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha256 = "a9dd69131df9d9a3bb8caf9a4b55ae3dcd4465b704b5f8bddd781ab7cfc775e8";
+      sha256 = "2d6f42f7b22ae15ce6b3b13a8224a3af961341de2d762dd6f8dea00001a631b0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/an/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/an/firefox-106.0b9.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha256 = "c15a591ca484546cd529a53a574941f53be43c521fef08e3e55010be351d06dc";
+      sha256 = "2b28d9f37925b3d537219d9bd121ba7053198bf08a4ff7eb71e2b9096e0b4bd2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/ar/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/ar/firefox-106.0b9.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha256 = "4c995eddc6de0eef2459e37bb1501bccbc552bf0ad47193eb1043154e3e07a49";
+      sha256 = "dd28e26e7eea3908673916291f1d05349d3ab127203b37ad3bd28bf3215a29f2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/ast/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/ast/firefox-106.0b9.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha256 = "ae81c1f39262047e85d621b86c99baccd8fe82f756f5c0c44d1bd2ad90710943";
+      sha256 = "db0adbfa48167a1e7861bc89ffb21bca28353129503a647235128af9d56b0328";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/az/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/az/firefox-106.0b9.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha256 = "3910d9fe216ee82555db1f0828646c987c5cb613ef5762a2711c60093971737b";
+      sha256 = "e6ef489e52d790bc3d8b4dd0a4dbc03fabd9579a9d415f236db1d94bbc3ff75d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/be/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/be/firefox-106.0b9.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha256 = "2ce805213b9a64661f2557f7afecbc5f8f6944d89f6d060c2bdb4a19dc8d7901";
+      sha256 = "3197d11054bb72a9bc4643222b00963f5f4e2a84d11208c557a1b661f0f46cec";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/bg/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/bg/firefox-106.0b9.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha256 = "a6bbe60761bbff9f22b1734b9a9c3e43909fa9d5ff6631e5d625994df18d65fb";
+      sha256 = "59cc8ef8696f2505ec19439da42e51af773553416112005d99e366efd71b5bf9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/bn/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/bn/firefox-106.0b9.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha256 = "7429b78661eafadecf5fc2c21ba2e32c424fb29843625ee3d5768104c9c79c73";
+      sha256 = "31726e80484062b79e8e97789322e0549a07abce5f48fa4eb42b755e50475428";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/br/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/br/firefox-106.0b9.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha256 = "68381f2a0fa6666c97607b6a6c66b667e54311ec61292ccdfa2432c6d3919931";
+      sha256 = "c51069ea5902c0e508605ca068362673dec9c4907dc4cbededa1b66377570446";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/bs/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/bs/firefox-106.0b9.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha256 = "73a61dde5341c3222922da34552a8fbf7b61db27d067319def238f3185912a2f";
+      sha256 = "510f49a46b807ef0ca04824e0b7bc5348a0b4c73609874bae404898788567779";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/ca-valencia/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/ca-valencia/firefox-106.0b9.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha256 = "df2b3b99b7aca85bb36b590ca30c1208ac8560b70823de3f84ef0a992b2e78b8";
+      sha256 = "9409079b1786b08777b115429bcb2cb8a2fd62ed9d04ca0124d777a76425310d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/ca/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/ca/firefox-106.0b9.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha256 = "de7dd57997baf718d07535457092c82046d48d91049c7774e3b8ecfde4c7fe8d";
+      sha256 = "9632a0ed604bf7dc9473ddd1dc2ddc8b4bc29fc6184def0f9f77270c27c2bd80";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/cak/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/cak/firefox-106.0b9.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha256 = "91e28a46e769a9c61ccf6673de33c5e87291c428ca0d35d00a7ff6f8e168ade4";
+      sha256 = "d946152baa84a8b2d884e70af657c685b28634976e271733c599a71e892a87f2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/cs/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/cs/firefox-106.0b9.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha256 = "25b8a12896b9caaeda63b8a37476f2696fbba0ece2ea29e2589543895bbc724d";
+      sha256 = "d3a55cef8382b75602e619bcb0342094cde293003573668ec47659c7ffeedc6c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/cy/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/cy/firefox-106.0b9.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha256 = "00722d5a8fa7b7fef65aa1414095ed792cef438249548e49996768533ccf62a3";
+      sha256 = "b0b7ea683ac637d03410367e1b57422ebd4009ca4effd997842227c6412a7daf";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/da/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/da/firefox-106.0b9.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha256 = "98b4d5daaa9e01a8fe94479263ab036c11f9b54eb248b38679e04b240be0a5a7";
+      sha256 = "d15a7d59a3a026e12195a50f38f0ed6aef4e6925652784a7b1442dd47d3b8b2e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/de/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/de/firefox-106.0b9.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha256 = "afa49b3348af68b40ad2878fe4179aa574bfbcd3c018c3fc2ab558ceb685d019";
+      sha256 = "7b61583bca9630dd024e35e4916e28e84d611a04ea7328b27e5af3d1a0807c86";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/dsb/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/dsb/firefox-106.0b9.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha256 = "f924915523444a65b931bf79c313f2f812a674ababcac9c6b87d409b0a85dea8";
+      sha256 = "54d4f0d90e5ceba46616e7872a551e9e9c12126be122dc9da51a30186a0c370c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/el/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/el/firefox-106.0b9.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha256 = "b8b45b326456fb57d21a5824088e7dee205eb32678a054e3a5df07f7bd1a78d2";
+      sha256 = "06718b57ec734acaee81ab6b38d1f2fbf5b9fe6fe05680994391533b9e851d68";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/en-CA/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/en-CA/firefox-106.0b9.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha256 = "0b0008a5286cde1dd8921221d824b431c63a72fc9481f7fce1b38f74d5cd012f";
+      sha256 = "b90eab420f6b5fd03a1ca6c048762ccf99c094f69de3743a7273b36c8e6791c4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/en-GB/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/en-GB/firefox-106.0b9.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha256 = "94591b8014b8a11af8eba21d0d11b26cabdc316c0e8d767467b47f8a6812d5a9";
+      sha256 = "c63a1febee839ff9e859d22695d531df34e4c8fde8618869ee3ebc3a09e505c5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/en-US/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/en-US/firefox-106.0b9.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha256 = "e273a1b11dc3e91000d68dce334ea7a4268cfbbe6b58237eac7d9ab18951023e";
+      sha256 = "ae0844cfcf718fc8f83e5a0acc8695a25a770a023b490b8c8d53bf713a294d0f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/eo/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/eo/firefox-106.0b9.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha256 = "1dea74114d1b7faac73ea4c5a311b7154aec8909c1889b83027d7099ecf554e5";
+      sha256 = "2812f644e7ec87b6ced6ddd342ecbe59ab703ba836aae42cd67ee071543e2137";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/es-AR/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/es-AR/firefox-106.0b9.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha256 = "071ea18cd48c6e18276e0b78c7aaf71c2e63076b1a2ddeb56383937cad01946d";
+      sha256 = "d76876f1df1db49000b2c65f8802fcf71e8be4a9b2511323bc98e9ebdf70ae53";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/es-CL/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/es-CL/firefox-106.0b9.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha256 = "1f00980599f660f3e428ef84afa09df877311fb9ab681fcec04b83612ba112f7";
+      sha256 = "2980ff292d28ad81235325cddec2be72982cf407d82f3e51d1d37a41e16525e2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/es-ES/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/es-ES/firefox-106.0b9.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha256 = "b8c126fc40a10ec3be625d769a5480226893e80684ef0a107b67478c5e66609a";
+      sha256 = "e31346603d21bbff04588ef0173c6a095aa6d1120044096db433fbb230250ead";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/es-MX/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/es-MX/firefox-106.0b9.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha256 = "2b5954e0de55133c34aa559a249fa25c57457db1d2d8faf2bf62cf7e4913dedf";
+      sha256 = "34692451448730d19a05dadee9e0cf14808a783ee5e1257c2f315c7eae4c4df7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/et/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/et/firefox-106.0b9.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha256 = "25a1f91f515e22a2ff746ba0d7bdf0d2dc872054332cca11073b1a044816b1b4";
+      sha256 = "51459c73a16b847a831486c6455d13fcd8e9ff748e30db7a3e20161ea1f0b01e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/eu/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/eu/firefox-106.0b9.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha256 = "7b15f34cec3ffddefa5abf3b7c188ae4632ebe6bdb65857da08a243e109ec017";
+      sha256 = "22cc72a94a4e24face8e5eeed20aca426057096fc77d285dd7d62ae7c03fb0ff";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/fa/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/fa/firefox-106.0b9.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha256 = "241350d7f85483d005db7c1a019a310f3a522733f7cde4e99a07b5455df3b24f";
+      sha256 = "e76421fc81172c017175566a9eccbdc4fc007885834113416379c0c38aa9ad17";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/ff/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/ff/firefox-106.0b9.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha256 = "b3d86797d3194e60f45e831e81b98d59605c71f67867c441bd7cb09b798a8a6c";
+      sha256 = "47d2088c839808dbe4cce09168af0716315dc79d308c0d2930ba36f6d91797bf";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/fi/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/fi/firefox-106.0b9.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha256 = "67718e8fb190fad9293f83141e3c019813e32f6ae4488a27a65f083835d2d875";
+      sha256 = "ffa72cfa0a0d94a4ca0424e965e402852b2a48f61311deb528eadd9033b08a26";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/fr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/fr/firefox-106.0b9.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha256 = "1fd4c7f4beaaeebc5096cd1f0dca50489373f6df7ee14882382e11af83b9f7d6";
+      sha256 = "1b303b927790cc05e18a2b1a429d600fdff80418e05063be3e32f134d8093955";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/fy-NL/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/fy-NL/firefox-106.0b9.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha256 = "ae1c105ec2612c51c4e22d8927f10db6d8ac926f68418d668302f6f88a19446a";
+      sha256 = "870e3d436cf5460fd8b1a13c3861bb18e567bc876ec401a45f00d331340eae29";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/ga-IE/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/ga-IE/firefox-106.0b9.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha256 = "019fb8ca065127fdf32549429377eaec17cdca33be1bf23d8a984e24e5122892";
+      sha256 = "5da83a865fe5cf17697f7ddfd63451d5df45009c047141dd6a797a4845da8824";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/gd/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/gd/firefox-106.0b9.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha256 = "d6fc76cf2af53b13eef471b32a5e56e832713208d9a93f401c4c024a2a805431";
+      sha256 = "5327ff5ff1cdeb266a126cf6d92b935af04106d41cc43f82b876b973092c07d7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/gl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/gl/firefox-106.0b9.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha256 = "8927a42942c020ae39ab7e71009019c8a8eea5c95504c8a1078ea9c4d747db79";
+      sha256 = "66be6b90ee36c42456a82ed48317a3639810964501bbc47e4a30fa37bbed61f9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/gn/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/gn/firefox-106.0b9.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha256 = "9ebfc17c47c2ae47ee1fccbd060936dd80896839672200ddcf33ab8a0443f591";
+      sha256 = "7aaf379858d049bd00a791b0c663a90c90e4b08bd6012b93752cdc56118c285d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/gu-IN/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/gu-IN/firefox-106.0b9.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha256 = "e8b258e4824668c2418636f152b908e731712a42443b12f2da15703c91ddde0a";
+      sha256 = "884377774adaeb51eeb2d38e6f2feeef8d1b666cd161e919a153e853d4111c01";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/he/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/he/firefox-106.0b9.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha256 = "272276863f7614f276b6798f5ab7613b04a0c715dc3d6f132c212971d8844908";
+      sha256 = "08e6e439247c9aee53373a7e3bc432d1a0a39383f05b3faacb6b0c497c9bdb8f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/hi-IN/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/hi-IN/firefox-106.0b9.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha256 = "76a40f6845a43bcb614df52735604c797f26ef7d5bdc524a977fa6ef5893a7f9";
+      sha256 = "1f3eb0228d6ea1cf8d1587ab1405bd2b97ac5bb35e714350a2ff312e2d2b4924";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/hr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/hr/firefox-106.0b9.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha256 = "dcf93acdd526561af640e3a6fa13b7de92b20cd0e0b5e4011c0490f95550080c";
+      sha256 = "c4c2898ab76c530dc391860466c7e7c2cfceccd5c4a281af916a64bc9844333f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/hsb/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/hsb/firefox-106.0b9.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha256 = "aefc788cd53e96eb91635bc0b29c257ca5f6eadcd349f33d211a69e0c35fb633";
+      sha256 = "366cc0ad32317e32fadc3c78421713f063c3290029d4d6c2662557c73124f129";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/hu/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/hu/firefox-106.0b9.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha256 = "2d9b5f4f8dd3fdd10316c4d63bf5c5177831489499adf27d4de6d7dd2e860964";
+      sha256 = "a09357f8ad8fd06c80336902d6289f30c0e5d390c1ec605ad4410ec78013331b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/hy-AM/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/hy-AM/firefox-106.0b9.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha256 = "a399698df95f954613020654c9a088cd1929d9f772a22a388d3f39861f26ff98";
+      sha256 = "137e8bfce4fa4a4d24b7fbfafb0c6e626280d684a80d920e92e10d1969844b52";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/ia/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/ia/firefox-106.0b9.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha256 = "51f3425e0769384010c7a09914410ddd980b11e098b07e489f624302a515a33b";
+      sha256 = "d64210d5b787f096d023fa19e5aac611326b998b005a2947971ccd67db8ddf4f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/id/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/id/firefox-106.0b9.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha256 = "70ef6ff4532ab0c3b65770d632ad56dbddd08bf23e641b16a2d2ef477d13682e";
+      sha256 = "e10a323f2d72586d215eec35f524acafce965ff955c54cf954bbc95992dd8b11";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/is/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/is/firefox-106.0b9.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha256 = "ad6aa8a533a00a2a2deb2b0f3ec89f4b3fedbc4981c9efe68eaaf6df8aff7599";
+      sha256 = "a0331d0f2e35a305d6a38caefd93de547d8b0a1b2383e651299662a139f6efeb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/it/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/it/firefox-106.0b9.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha256 = "e94457fd250270e5814a463e6d27e1b23f3d092ed9af0a2c8341eac238f598c9";
+      sha256 = "66917927944d966c64145e61a901ec7442a1b8ec7019f252cc62f7fc33791ccb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/ja/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/ja/firefox-106.0b9.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha256 = "fe2c1e465e2bfa951e516e83b00de06942e496f8c49a1263397d7bdc1f842c8c";
+      sha256 = "670e93ffc4fc2720671d7785d17aa60b2c2a1636c7f5c924c410dc696ffe94fb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/ka/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/ka/firefox-106.0b9.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha256 = "cdea26f06a2022b1dc257345488befadc7d56846f058b8cf4c13428921d8b45d";
+      sha256 = "7d37c71122582b4dd349e3be2559cfff2c6d7282405230a862ae6813db37802f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/kab/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/kab/firefox-106.0b9.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha256 = "ea574431246be1f4255c526d8f22f6a93eb013236531fe0c8e82b84e3a332ed1";
+      sha256 = "9a9070c6dca44b706dd45f1d7b3c050d5d22c48aa66b8f59da8070bff67c161c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/kk/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/kk/firefox-106.0b9.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha256 = "09bba91f39ba55c982859be6f9f35b6292c7501d65b5f91205f2c281962b5673";
+      sha256 = "6fee854d09045525b4496c69b6ac2954c707a9b428dd2e2637be414868181a52";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/km/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/km/firefox-106.0b9.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha256 = "0034438685615cd9a60ae185e28f1536d85c47e7b2f2673c9754fa49474ab079";
+      sha256 = "79258f0b3f4f1168a630bc6febc1b41b9eac146961911e3f71480684c26b20b0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/kn/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/kn/firefox-106.0b9.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha256 = "f39eddee2312c72573982e673986f15feeb080b61248d9d9cbe2505643a89ab7";
+      sha256 = "d168d17bda835f9df79fde9a25825dabf1c1ddd46640b63e1180fbce21f28a11";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/ko/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/ko/firefox-106.0b9.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha256 = "533f070343c7ad16f588c3e1c95e9426322f9125f0ec6e44ec14028a84c795b1";
+      sha256 = "2e01cc1b4f80da8f150fe0439e573d2b70a484acb613d051e10450dd8fafb3ee";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/lij/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/lij/firefox-106.0b9.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha256 = "2ccbaa80bc62059889e40d9ac942afbe4ea1a4ce59443fc4dad1496cc5b111b4";
+      sha256 = "0add5b6f6fa18757c1c5d4e85bd0d0b3d11fe7e5dc4fd4ca6220ec14a05a3a7f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/lt/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/lt/firefox-106.0b9.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha256 = "1414dc3341af8fbea50697f1c3d2ef82113165fd433301c2cf855496e48851c0";
+      sha256 = "576b1d2c13519a5b456a031a571ccc9b66d19bd61eb55b874398dd42ce2e0c0b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/lv/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/lv/firefox-106.0b9.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha256 = "2a5b9870de4717d3c38306f761db12ebfa3aa168a4853c2da112ff90654a1fa6";
+      sha256 = "3efe9ac444cef5bacc06255520de2aa6da45bc2129debc649031d6c04aa56292";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/mk/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/mk/firefox-106.0b9.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha256 = "2fa658a186ea7d45137d4733bd36228165ead1344c0c5a55f5d1f08cca705d26";
+      sha256 = "8ead3cf9b0e703fbc2f16ced309dcdc6dc0fc4dbd5f48bee9e1199c67899f83b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/mr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/mr/firefox-106.0b9.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha256 = "c84dad1b673bebd621c671c3955dc0f74dd0c33d5fea0bf984b323baceeec753";
+      sha256 = "fdc824c3cdbc8d494a7676bc4201867e8d40df9b8d52282a6d025bb07ec183bf";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/ms/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/ms/firefox-106.0b9.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha256 = "3874937e10203c29a7694055eb94c21fa21c22eed84a8a784df0a6c2db3af628";
+      sha256 = "07314a76a0de637c890d31e87fc86fb786666e804edaad8392e63d6b13c97801";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/my/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/my/firefox-106.0b9.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha256 = "0458d73594a7b6a893fbe238f3c04040ef465ef24de99cf93ce63d2ee138a6ef";
+      sha256 = "34b4ef6e06c84860930e2cd8cc2ffd4d2089fe9f957f164fa60ee60c3e27a670";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/nb-NO/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/nb-NO/firefox-106.0b9.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha256 = "627e707144082ba5b517e81494d897a7ba45037bd7671e51a31f050f43c893aa";
+      sha256 = "bd78999ae613e35503df88c16296f96e13b077241c266f1dfc2cb8e88f766024";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/ne-NP/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/ne-NP/firefox-106.0b9.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha256 = "8e3f0eebe18515d6ba3313647ca7eb4b47a5562aa6d98fc5ff03f76c19a9f195";
+      sha256 = "719dee950f25b2802ff329e2d5362df8d3c27ea5f97a02c626cf60f83bcd0e8f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/nl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/nl/firefox-106.0b9.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha256 = "c01353905bb853f9bb84b6a57e659957f056bcec97f909429a11afee615fd467";
+      sha256 = "ab5a58486c7da8b4b9d619a876e980b09993014e1b50ebbbdc3a53ab03b5d3f7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/nn-NO/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/nn-NO/firefox-106.0b9.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha256 = "e7f32834243ccc2750f3c910a77ab3ca23c2ad20a25b36f46ed158dd8a2b6ff4";
+      sha256 = "f7587731395794edafd05ddadd18af09eb662a24a640a1489626854929bbdd6f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/oc/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/oc/firefox-106.0b9.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha256 = "68f961dc9cb1736788d24af07de2ff898203f83e22a104b4753b9ca5975eab01";
+      sha256 = "39c62c38fdf124cac776bbd3fbd6a595415fbbe850be6464fe1f3cf1be93e768";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/pa-IN/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/pa-IN/firefox-106.0b9.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha256 = "8473afdf1cd2f401d590b590572741bbb9a9d6de813d9156eee9f211372f3919";
+      sha256 = "ae5464b38c0d62c36809d1cb0fb39a4a255a98d3f2481b72da4bf55e06e0d52c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/pl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/pl/firefox-106.0b9.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha256 = "9d0b27ca2d551dc1b0e2441e42ddfdccac9be9c55fbe6407da62a13a812d6c2f";
+      sha256 = "8bed3706c4014fe7d2c6665401c94a0ae7afe53368648e7443e1df752ca9bd1b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/pt-BR/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/pt-BR/firefox-106.0b9.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha256 = "cb6437c603f99b6fffb61068abbea8c14ed918c5f6014cf74c4e07061c585c62";
+      sha256 = "f767971eb37f8ede6bda836ef5ae28de2a22fd961b9fbcabfbdf86af3fb12545";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/pt-PT/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/pt-PT/firefox-106.0b9.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha256 = "3e77d7b0d5defaa43b2d546acaa432386cfc1a7500080381b7f0aa7d76bb3f8e";
+      sha256 = "34ef843b85b80b41784df33f6113683a59e5750e886f13fad2117137beca7b10";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/rm/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/rm/firefox-106.0b9.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha256 = "401b0c3c8a20f8e54fb7b4efdee8ff5b87b2e5a92f810ebbbf95ca29a3d198f8";
+      sha256 = "e3c639b929a4271890ad0dc30f08ba4c55cda28ab1cd5e06bc600159e189f3f8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/ro/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/ro/firefox-106.0b9.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha256 = "7c8579b37b2f87221484cf4d9b91e0ce07b3fbe491d52045dad5a99487014d3d";
+      sha256 = "2f408339fa4ea283988077bfb9bbafcb92e7cdf7695fb27fea14c3cf012dd4bd";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/ru/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/ru/firefox-106.0b9.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha256 = "b09f65afe0fadf16d7f79c9394a32ec01810e5ff5d6f579a134f1af2a9572b5e";
+      sha256 = "509be703ba720c4370899113f9d707834ca9ede13c9f6c70694cbb2569b95f30";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/sco/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/sco/firefox-106.0b9.tar.bz2";
       locale = "sco";
       arch = "linux-x86_64";
-      sha256 = "4c3ab17ec042eff2f22e64d8e13fddb5bc8c2f20b50e5c2f270dafbb8e291734";
+      sha256 = "ef4c8bb53f87977335963ef7478eb815c7422f2b2ce4f4acf3a3679e0ac07dfc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/si/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/si/firefox-106.0b9.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha256 = "29eca6a13366388a53d2be6ec5ed0f920162658778998f5bf4db74992d4c822a";
+      sha256 = "1eb58e98f806b62451e6b0767dcc04f879fa5b8f20ef93dc52e14684f043b290";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/sk/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/sk/firefox-106.0b9.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha256 = "f8f15fb9d5d79a7c871bc85e9d307c9f80c9483effae44e785eaf9366e9d965d";
+      sha256 = "0cd2691ca65ddb7b4b0bf16b0b9cce3d3d4c000e7f2ca28f5b2d3771c9d96480";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/sl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/sl/firefox-106.0b9.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha256 = "2598d5da878e9191d3afd09c763f8fa8810dbd07e74cc7e606be16b662ccaaf0";
+      sha256 = "f4a68b03acec57d119ffbb47648dcf8223561501616f7f7ee925e2ae26dcb9d5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/son/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/son/firefox-106.0b9.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha256 = "82195883335e0e519e49bee16e74658346ae746fa8dbba7f8e93e54d0af2fbd8";
+      sha256 = "b739bc82c76a4b3955ccacc44c9168413635b7bac63893da3a7eda9c7c3b8bcb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/sq/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/sq/firefox-106.0b9.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha256 = "2539b349125716e96daca48728bc630fef26f7041ff9555c05d999da249f30c5";
+      sha256 = "f5d9c509c4a367b5497612e68af9609ae986a6fabdca6027c4ac0dd1a6de44c8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/sr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/sr/firefox-106.0b9.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha256 = "b83878494c9d2c00576456f353fcebd451741d806d4f28e3bd471a79d50ea1af";
+      sha256 = "e49535fb7c0df0b3dc018a8b44441408d1332c98e7753ac191c0d1f54bc3a6fd";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/sv-SE/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/sv-SE/firefox-106.0b9.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha256 = "6401bd691601f5ce3eb6dc15bbf317601b1e6f4538a34029a81dca9db2fc2818";
+      sha256 = "7ca9bd5945e54fb0b94d2866c94779ff015d8123e74898a440eb171dce8e1afb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/szl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/szl/firefox-106.0b9.tar.bz2";
       locale = "szl";
       arch = "linux-x86_64";
-      sha256 = "2329347da1cd23f925a00c30119c27e7bc3d51250b65f692b098fee50ad95224";
+      sha256 = "103fc014424d95f7ea916505361e93b6d17348ed6dfbd66e56cce39bb2b03134";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/ta/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/ta/firefox-106.0b9.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha256 = "850cbd19a1a4f382e9457caa92f0a2fdb43a11bf7351e0d2b291eee48f9ff8e1";
+      sha256 = "2ffc06cafe43074c3f907e7e4bd035afdfef84bc6955463c7f7cb56bfd33584b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/te/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/te/firefox-106.0b9.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha256 = "b9fe3a5939eb5590692533ee23ce60063b11531480d4161de5722dea6e98eeba";
+      sha256 = "e8d594d166bc04262115cf0a732aa71ba3e156a1bd75d206468de457a5842758";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/th/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/th/firefox-106.0b9.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha256 = "7bc0e3063692bcb8b45ba8e1f66adbcad564c2f26a4ce86e064cb1e65868ae3a";
+      sha256 = "0a02d63c62bd72e56e012ac929b6afc29862ecdb44fa3632e4c342b690dbbc03";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/tl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/tl/firefox-106.0b9.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha256 = "8cd7a5b6a8ad541f221785db3eb36d57fa881940e0f6e3f815fe25521efd9b4c";
+      sha256 = "473068cc7abd578ed767239beeb093ad3c7f0af3c96a19a14436f11d500307ba";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/tr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/tr/firefox-106.0b9.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha256 = "1cd939b803cde0ae9c492e9228c25e5b5f3ee791a0f24e78487453c9da62404f";
+      sha256 = "45225e3a43989061e44bb2386937e68e54f0fc5ef5b1890afef7b31faefdf522";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/trs/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/trs/firefox-106.0b9.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha256 = "822f95b96f3e4bc5443a94d5211bba78c97522851b4bbf140505ac02f4568582";
+      sha256 = "4b9e67cf20dff22c963d6c478253afd63e0325a89a9c1c4b7a890b018e0d964f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/uk/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/uk/firefox-106.0b9.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha256 = "e8f636cb417047c77a172a408897dc4c561a791398f0ef67109d442296e83c7d";
+      sha256 = "d6960fc1987fe6889f285decec8f4148797bfc07777780c99629b2e81a900eba";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/ur/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/ur/firefox-106.0b9.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha256 = "a5d34b9c701f6ac3d7bc9d489fb745b6e1918a32134ba2a46602b0dbf02cfd71";
+      sha256 = "065ba756eedfcf3987dbc4b20b2800db24e66ae9b0d664ad5b839231c277c4f4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/uz/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/uz/firefox-106.0b9.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha256 = "99b5cb40e2395eae81a08e4b35e493783b3ae9974bbf8ab07be19f06d7083196";
+      sha256 = "d37fc13e8d4e75b1fad0288a44ca45e135e1ae479db4c3b84f0bcc2628ddd966";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/vi/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/vi/firefox-106.0b9.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha256 = "b7f9a9ff83528a178271f11468cbb44061a338d89f0b81bf55173dede0104651";
+      sha256 = "e0635391843d343a3393363462795b22a889a4b8f42d29538c1a2b75a518fc43";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/xh/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/xh/firefox-106.0b9.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha256 = "f56cf5d4ec969ce37c50380e10c9c705f4c4c024243e7f240a85be1643a4218a";
+      sha256 = "154ee128d4945ed37ccbea334021070a4abf5f4d031b6f507cc6b54af2218cb8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/zh-CN/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/zh-CN/firefox-106.0b9.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha256 = "98d28832e91435cf766f8600eb234618e29cfc924338b20b5839a65f157d056c";
+      sha256 = "9e19077947e419b9b0cff04ef8351938c6cdb7ca0776a01fbf435b8ffe4d94cf";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-x86_64/zh-TW/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-x86_64/zh-TW/firefox-106.0b9.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha256 = "a7c8399e074762be8bd4db9d35b16a7c4cfe77cf652bc7171026049b2294a9fd";
+      sha256 = "0452f1a544c09a2968400d75055b83314c3e27c468834516fea36bc365f95e4a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/ach/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/ach/firefox-106.0b9.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha256 = "169078c74274713ffbb76cb8adc528c6cabaabd1273c9ac1a95cfee05aaa7bef";
+      sha256 = "7ddcfe2286a7f76bc4425d0eb0e36f14535d7e367da0646154a746b911b08418";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/af/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/af/firefox-106.0b9.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha256 = "e4242a1757a8b99f546fbc744afff0c1522404a89f7c6e9e1aeb818a2a6d4bae";
+      sha256 = "4ed067ed2ee93644fce3d1e61d2d6442e0899d0a1b3691b1d147843487b2928b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/an/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/an/firefox-106.0b9.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha256 = "454a0c854b3b79d3b95d9867a020dde2f80ee3b0f0095df9c4fe2a9df9544551";
+      sha256 = "eedb7406a87afbe55058fc83911b74900fc05c7cf465ac4351707529931092db";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/ar/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/ar/firefox-106.0b9.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha256 = "9cb8ae5b764d5b8f5256486039f8408895f710620a3a9e12ecb161bef85d53a0";
+      sha256 = "37e3e257b900a3fc05bb3b915621024d81bc04da21554f396e8702d50decc0ba";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/ast/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/ast/firefox-106.0b9.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha256 = "e4c5d5fdcf8046311a838d2240a667681e88ba54c8e23dd83b9eb63585a652a0";
+      sha256 = "fca0e482392f9c6d279f313ec268f58d1ad7600f09050dea921d129f770e4348";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/az/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/az/firefox-106.0b9.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha256 = "1bf60c9297ca771568fbc05b5cdec9ea8b9a635db1892367bd7d56a8f7634fa3";
+      sha256 = "8ec0f6ec976dffd6150712d28fbb14d7eef2a10e5e3250a6e5ddc3d568b62483";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/be/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/be/firefox-106.0b9.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha256 = "f446ea1ec69f709f9414b1ae12ed1f743ddb6c51fa4934e7045fef34d6ff69fe";
+      sha256 = "825f6b10c23195f00c6450dd32fe1f1a41afeebd3b08305f60ddcfa07d48e669";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/bg/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/bg/firefox-106.0b9.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha256 = "794a41ebcfc905628cd4c79af06e044c63c6ff2121ecf35d99b414e65c897a36";
+      sha256 = "b2d3794ba2f6a31fce5d6f3dc96cf619b099bd47a45b17f795ba9c3a7a23acfa";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/bn/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/bn/firefox-106.0b9.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha256 = "f101f45d4de2e3fdf0e6d505982e363f0431d1955f95e35afc0bbac8d5e38bd7";
+      sha256 = "1fcd45de7e29f89b8463fa512f7958f17a81c5e7d72896b150336bb6adfd1818";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/br/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/br/firefox-106.0b9.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha256 = "3285c16382a1a53dbfb97c6ef5cc248efa136737a8ab163d011bfefc8c3dbd48";
+      sha256 = "5f4d489cd0167ead702b10f3b58a746ff069c04e9e195febf5b21471b1a6ca76";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/bs/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/bs/firefox-106.0b9.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha256 = "42f651f98d3a55fd7e0839a099cfd56ca4d52042ff77de5380db2941cc281ce0";
+      sha256 = "2f7b2516820b5a984d468cc5fcb856c05a9a71670d459833997b6db0fe5d10db";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/ca-valencia/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/ca-valencia/firefox-106.0b9.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha256 = "11df86cb15f49f56cd342dd6e1bdae85c9be3c5275b309f4c5c69ad788d64507";
+      sha256 = "abbb9608a45ae44376f353372ea0d4fd74fc58fed2ea817f685ae0b723314133";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/ca/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/ca/firefox-106.0b9.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha256 = "7171df8a1cd84e8a8037ed4403abffa84c3d6f962dcc8536473ed1032eb44497";
+      sha256 = "2e02ed37b13edb838d8286163bbd3f8fca84310d369faa23385bda30df2d94d2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/cak/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/cak/firefox-106.0b9.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha256 = "defe1af608fbd9feaa67387ab62f261f9ca907d2bd2ffa0221393b83b32e2018";
+      sha256 = "fce6c81e05bf7c513d3861f060f1d5f4888313746bb8de31fe64d88a06a71e4d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/cs/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/cs/firefox-106.0b9.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha256 = "5cd180fcbf478d9f7c7b46879ca03bd043f6d3aff116dc0da82a4ca78f85d75d";
+      sha256 = "d93f351edf81d998ae6a2d81b7a17947c8f1ccdcb500aa08438340f30b253035";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/cy/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/cy/firefox-106.0b9.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha256 = "becd879cd077966bd14463d29bc6bb2661446f4ca5fae88cfd7b6885281931b7";
+      sha256 = "1a93457e9e405b177c990baf64c93b45a5fb1a50a5cadf3ae38257480a6768d5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/da/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/da/firefox-106.0b9.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha256 = "fe6d51f6e466e4032b0e676781dcd0261f74202d87141eb0d28886342c4b34eb";
+      sha256 = "ec7424e6c190f78bcd9c18851330ed1a3ca241cf358b43ee578522d585e9c5a1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/de/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/de/firefox-106.0b9.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha256 = "3b30a374bc43e7bccbec85b315066262820abcbaca827839cbde81995ca515ff";
+      sha256 = "b3329bedac1d4644329a1de28ae2b01c6dd2451b3a0d18f7927a48c18a0fba98";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/dsb/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/dsb/firefox-106.0b9.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha256 = "84564df51533b11ea8d87c3cf22b7717af60ef82d10480e29ff3e8d6a78c91f1";
+      sha256 = "a419634e9542f7a09deb0abca3794012d6fa5fc87a02e7fca68baca158360515";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/el/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/el/firefox-106.0b9.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha256 = "1a714aa96e1b1b8e703342656dadb3cb69e71c3ae500ad2e3478c7595845d961";
+      sha256 = "76da46e58ac925e99a4a0b5d14513e45113782dedd23dfde4a1285212620eb7f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/en-CA/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/en-CA/firefox-106.0b9.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha256 = "615bf2277f21cdd78977ba69e650e71674ee5dd9bc8b8f2494a58b384ed504da";
+      sha256 = "9f556862c55697963c437fc91ee02ce83d895984647574cdb8f3db125637c216";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/en-GB/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/en-GB/firefox-106.0b9.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha256 = "56c164907b01f1e82a93895c5a0eccd9ccb5263bdb1f1994152291e72adc674f";
+      sha256 = "ac66ce286de81500af84af2a7e7686be1ab4dd495f46d27b2acd6be57f95174e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/en-US/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/en-US/firefox-106.0b9.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha256 = "50493199497b216f1be3bf25ba86364806eada947112f375f59bb7bf354ca8a2";
+      sha256 = "80da60ef5c75a36dcb501a1c2cd77c7a12ac4e9cef219e836c5ed001b494dd7b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/eo/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/eo/firefox-106.0b9.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha256 = "262a430720e18cee49592f9c0dcda721a6011b44ee67d45a827cb6a962fc727a";
+      sha256 = "5b5fe4c594e01b03347b8ed3d0c4764490a04a03772731d3da81cb67fff9a6ab";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/es-AR/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/es-AR/firefox-106.0b9.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha256 = "811a8106f0e1582deddf17cc06e1e897b9bbbc6971ee7b918b435e94091b5dde";
+      sha256 = "a3e73149c8e2e43473a87fac7436971e8f063dfd5b47ea56fea9271c4a1aa699";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/es-CL/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/es-CL/firefox-106.0b9.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha256 = "fbd830e4167439ca683a85a651bc8c775e041bdf36f8a37e620f0a75abe9a414";
+      sha256 = "8f458a1c37d63dec999d4ab135ad6ded101692d9666e0d1a188a06e2a3b12997";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/es-ES/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/es-ES/firefox-106.0b9.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha256 = "41830935f8a966c2dedb9273bfc4d0a621c57a9e0a4ff26344a02f28f9d3ced2";
+      sha256 = "b7611f34149c9fcec3cf0fc0463c09ea2a70143c85c0891d5ac096d1c62b154f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/es-MX/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/es-MX/firefox-106.0b9.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha256 = "9282891f005799dfb6e3de35c58c83d56a7f54ad18453cbc9baa353683f41062";
+      sha256 = "788f9ccd60ffcce5a57191c0c2853bc587a6c6baff2236d2e13e81ed8b58023a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/et/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/et/firefox-106.0b9.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha256 = "30156bfb0e8bad70f2d7627f715f88a01bdcd386f413e046f1870945124bcbfa";
+      sha256 = "4a170edc300029e8848faa2484ca18c1df217f22bf7fa2ec5faf1902757e5092";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/eu/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/eu/firefox-106.0b9.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha256 = "276d3ed3317085eb0eb8cb1c579cd06ee12f7b615599f3e3dc1428758d7b2c78";
+      sha256 = "6ffade19d934bd6b26d089dd9201435268a5c584bc5977a949d8c31f5d79b6f8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/fa/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/fa/firefox-106.0b9.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha256 = "e91dff193a088ab5fd17f918e85adcb99a9d6971df59f0934b933676808a44be";
+      sha256 = "4bd931aececd9b03e5ccd37b7d89808184081bad17f749dc2ba30294cad49663";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/ff/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/ff/firefox-106.0b9.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha256 = "1ceb71ed721122af040cf77be246df18a5598766b8e4288f8f16e2127ea2308b";
+      sha256 = "279262ecd59cd2e0909a541832640121e2f296945c792c7bac656c4ef4b2aee2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/fi/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/fi/firefox-106.0b9.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha256 = "dd0e8125686a13dc8a7a870781a076256e1797b97a784198cf39399a3a8cef1f";
+      sha256 = "90a531658a543e32e2c95858de101e3ad7cc37f520507e33d44120265ed8ed81";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/fr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/fr/firefox-106.0b9.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha256 = "0120c5b797070f7cd3b3fd12bf83a8aec29c423ed9633df4995f653408492c49";
+      sha256 = "9b9b240e8b3fd09aaf72fc04257c83e1c4da8d0e18224a2eee15d4e1fc059cf1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/fy-NL/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/fy-NL/firefox-106.0b9.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha256 = "cd746b723f847bcb428b92d53e86a0a9a566f7539aeccd982f056cd3416c2a8c";
+      sha256 = "37573ab88a9d4d0f7bf73bf4e5c992eaca0bede036284994fab397ef035785a1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/ga-IE/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/ga-IE/firefox-106.0b9.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha256 = "2c8f04872e6da8dcdf9a5cd6b39b2b6d5d16eee1b75180c829e75d040ec0e108";
+      sha256 = "923e4ce3de2f0dc861b0f580e4ba4a83c34f04f9e5a9b262232f0088afc94a9c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/gd/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/gd/firefox-106.0b9.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha256 = "974558931565de0e93fd95e8af46e8203ee3d50c7ed74cea3e1cf8d9a231dbb2";
+      sha256 = "32a1303e3e42b4496fbc565d5bcfda73e54f51b419acfa8a0f9612c4a04b9506";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/gl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/gl/firefox-106.0b9.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha256 = "25c7e7398c41e698bbc1ef60a29ec67ec6b4cb0d5970f16e438d0251c4b233be";
+      sha256 = "762eef980d7152dba2f1658dfc507a59d53930e95d86e1ff51fb5e5ac3f1ee01";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/gn/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/gn/firefox-106.0b9.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha256 = "9a60eca480973b4d17cc61ade4220db856afc3fede155cf20cb7d3d1520edb19";
+      sha256 = "237f3385a33dd6bd64b62b7125999dc264c85e772bbf3d4109d45846b3aa36c0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/gu-IN/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/gu-IN/firefox-106.0b9.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha256 = "b5dbf1c01e67bb8803300774eab8a2db1090ebced6b63aa95731bbd3e0ee5c92";
+      sha256 = "9c0312960163c5fd751a628196f0586a7b86bd2db2bef57a27b1c89f3837e6c7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/he/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/he/firefox-106.0b9.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha256 = "d9fb27f016bc8ed15582c064ad616ccc0aab11ad8054d6b7cef79d552658cc00";
+      sha256 = "28035e6a1749b928306bf3044f29ee3e25727872927e2579a31d40028b3201bd";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/hi-IN/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/hi-IN/firefox-106.0b9.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha256 = "427375be41df65c7b42619bdf52d7ff74cc6019d9d95ada7cf0abe388c430bfe";
+      sha256 = "0bb06ef91899ad6d310e510b9955b10af932b3e5ba60c35979a8247e4400c9b0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/hr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/hr/firefox-106.0b9.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha256 = "4142e5fce3fbc48e71d62635958d8f91ce18759066a3808eaeba66b8560cf683";
+      sha256 = "61f84ec81ea55b12f44e2fd75586b3fb77e81f5a507276f7756bf1ff2152bcda";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/hsb/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/hsb/firefox-106.0b9.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha256 = "282031c7b262ee6e25cd8a8d7358f4067de7ded90413c5e6fc2f0309733c0df6";
+      sha256 = "21bb5259e3df6bab36619074696d65c927f5b72b95c273a275af91af8b68f9c9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/hu/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/hu/firefox-106.0b9.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha256 = "82c9562e6e00c508675ce68a95576f5182377d69bd6d88ac852501b5a68b38cf";
+      sha256 = "fbff0c74f2f2dd7260b02998b4464f99a6a5a97a3f7ab03d24db26733a4f2d84";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/hy-AM/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/hy-AM/firefox-106.0b9.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha256 = "56eeceb75cfdb3289ab3676fbd11b00b9a2af5ff43f635e740690bc51c56b989";
+      sha256 = "da6287f72ba79afb290cf36eb14e3535eb5b31c6ac5b3656de0d801db9fd6f10";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/ia/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/ia/firefox-106.0b9.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha256 = "853a3b4f646df1f1a0b35bd2b5adc1037230fbecbf3e3cd695e23d650987fe5d";
+      sha256 = "3937806ce4291210aa41ec3a6014637415013ad754ca2d5934b9a2aef9e51990";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/id/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/id/firefox-106.0b9.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha256 = "88d9b1afcb5b0ba2e9ba15e4cc3c4db1c70f3f7c3e610d1673f7e6a79730676a";
+      sha256 = "894c02e2533b6286ac7b4c01ed14419c4a3dbf63ceeaf08d1063d2231c07feb1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/is/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/is/firefox-106.0b9.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha256 = "17b81b21f0b29af20b7fe784291ce82af92c2f500826a9317824589cc53fd531";
+      sha256 = "8244aab22d14f10eff5e1dd5611cebb41bd8ff6c70305f6b41309348f64a38cc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/it/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/it/firefox-106.0b9.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha256 = "accc16a4e97055e20d2b43cd6845a1366d98e47e82210fa64205935f465b7905";
+      sha256 = "87ce1fc0221be982ceb34a63dc7741ba4ccb4feb731301246f5fabda2c849d10";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/ja/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/ja/firefox-106.0b9.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha256 = "d33537fc124f00aa026d7c38516c57abc8db96c91683283bd4e05a6913c2e4f8";
+      sha256 = "4670f718fe6b763e81db0c397afda0f8023f7f72af2eff0ac1b2be9dcab09b4c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/ka/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/ka/firefox-106.0b9.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha256 = "7b2f82de48d51c3974f5f6d288ad36ccbb1c2c81a1e552a79018b769cdfad897";
+      sha256 = "9349eae96f436e3acc8b228ae56221e11dd04ab70e961769a4a4af776cf36d0d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/kab/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/kab/firefox-106.0b9.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha256 = "199068a45daa7969f76eda767a5d93d46a50a17deef61882f2735df595aac59b";
+      sha256 = "eb18f9faca92ba1590a60b332fe247eebf4ec5acaf1c29a54bc6f8c453eb6ae5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/kk/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/kk/firefox-106.0b9.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha256 = "00fc43c92a23afc23dfd5a8898aefa598ad43b70364024659aba3f30f79d1c42";
+      sha256 = "75fbc363dc259f311469817f540683de02003b098476d5c8472be23bca4b36c4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/km/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/km/firefox-106.0b9.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha256 = "34aa8d09cf26680d73785ecdb437f3725e869c9f5228d732bd63ea59cee4a413";
+      sha256 = "a69a970684800cdf04f47d2ef496786067b3f155a1e63635edce49f449daa485";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/kn/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/kn/firefox-106.0b9.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha256 = "e32ba6af267023b41228fff4846494f57c2716f473f82b1c496402a770bce2f7";
+      sha256 = "5622ee7bb68734dcad4b660e4c354c2cd871633d0dcb64de2bc677f9b33d9e78";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/ko/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/ko/firefox-106.0b9.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha256 = "79c749404b273e38c5e55f9aa826008948113789f8e4e8d081fb6b1373c90d84";
+      sha256 = "905376d5f7a99ccd306c22f8cfc5de997ac83f95e3da94dc017016310464434d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/lij/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/lij/firefox-106.0b9.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha256 = "cae6d39686fb95b24d49384050c0ecdb6e62ee3c6ca5e09b3060df66eb6d8ab4";
+      sha256 = "01875a19973b9de6d7df36599130c8cc09246e68f107e76e5ece393be6f85e7b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/lt/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/lt/firefox-106.0b9.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha256 = "587b6e65835fafc7248019796ad8be5f66e76711a501047c1bb3f13a85405ba4";
+      sha256 = "6eea9fe10eef5fde2c0b4f2b015c733241e3f6277b9c79ad8bf3c694adb42e01";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/lv/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/lv/firefox-106.0b9.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha256 = "ad0b9cc6999fbf2d94c31bc1374ad69b63d055e95e472ce78989b717411b7b06";
+      sha256 = "2924e91cd66d4c27daed5f97cb7fd637a8de715afabd7165a4e8ef40f8b1fe99";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/mk/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/mk/firefox-106.0b9.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha256 = "6157eb460916c3380c482de68a90efa56ee34ed5726cccc7f4a6b6592f5e3a4d";
+      sha256 = "65236b18e53a659041d92f065e38a535164d31e8668f022917369bb6d675aa14";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/mr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/mr/firefox-106.0b9.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha256 = "1bc36fe6d9c1053251273378e88d0fee9390473d2e4727daa3f6ada440d5daee";
+      sha256 = "98dc87f85ea2c4b058c3693cc5e41515d37fab4bd67652a634fc46f1bb3006ab";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/ms/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/ms/firefox-106.0b9.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha256 = "39177d411723ad28f4b7c5068d2e170eb1bd24241304052473185d72ca05ce84";
+      sha256 = "1e78ec58e43f92d4e68dcd4a2312815d865f3d353b765364cd7703d6937dbd87";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/my/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/my/firefox-106.0b9.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha256 = "acaa92b8a029f8207e150f8417156aa474e28af775199b7a9e4ec9757ef8c0b5";
+      sha256 = "af2de02b8e6ca8985312fcbb9bc72214bd9ef96b67018771fe02423448846d5b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/nb-NO/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/nb-NO/firefox-106.0b9.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha256 = "177f0dd59c5d463937dce0fedf18841cc6cf7423decfacae5347ae580aeb6bcd";
+      sha256 = "bf9fedfcc944f561f47488ada0799d67c393355b5534351b9128fa8cc7f28a53";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/ne-NP/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/ne-NP/firefox-106.0b9.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha256 = "246f98ba8548543213e6e15f1c33613dd7c4d718d23c6c93c7453dcde63c2d46";
+      sha256 = "f56ec0434f53094dde70fabd48c811c50454db36c10d1b5ef3baa1b6afb3f9ad";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/nl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/nl/firefox-106.0b9.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha256 = "0fde142970d72d4f1bf0a0aa9729a2828172856697440253fef2c2888ebbf077";
+      sha256 = "fcbaf3329d7881b1580a3d441f1ef5dabbb326c4d3ce85170bbbfa8eb44f5474";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/nn-NO/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/nn-NO/firefox-106.0b9.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha256 = "2801c4a9db78587d3d5a4d817cdb6551551c6daedada650b658a94e0bdbca91f";
+      sha256 = "0883c23897ff9543bfb04d71e8b783f02062c32ac9664dfeca0484a84b267644";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/oc/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/oc/firefox-106.0b9.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha256 = "db851c61ac83f4328b97fe95e377a748da500beca19f2eedfd9b58abaf346239";
+      sha256 = "81367e6cde9aa7cad970fd8946f0b6dd1c8d27af61ff8d11271f0e741077d6aa";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/pa-IN/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/pa-IN/firefox-106.0b9.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha256 = "bbc9e82d30764efcc9e5168fef26c8d3ab141af6a2bee58007843b5dc9170ef8";
+      sha256 = "effd52994aefdc0019361483f78799c1205f03bf6882fd9335fdd1d7e55b7356";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/pl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/pl/firefox-106.0b9.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha256 = "cdafd35d0ff5482477f0942fce33258974a533371d55e2a4de7c7b5f0ff17b0b";
+      sha256 = "c1034d37df9f66d19a243a07d6f3eec4596f765968f66271b170e7189128b709";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/pt-BR/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/pt-BR/firefox-106.0b9.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha256 = "fb80e5442da92bedecc4a94f935321ac70c3a57072e115663243287265d9ce7b";
+      sha256 = "691380fafc56a1144985483266ed4c9ac1800ca1d294731fba08b9ca04033e87";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/pt-PT/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/pt-PT/firefox-106.0b9.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha256 = "471daad9a2ac8bc4df475bca4c6f8ff940e545b9171970c01ed57b173ff820ff";
+      sha256 = "314cce53df018e4ce2c8b5beb460ec5933b1146b2f35e3105725d24072395b3c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/rm/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/rm/firefox-106.0b9.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha256 = "993751ae6469b7105cb187952570b1b4e87f458720b47576ffeccb50c7b9f52f";
+      sha256 = "d75782064471f8e2417b9c50414734a8d482d4335ad0bb54106c29f008e01089";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/ro/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/ro/firefox-106.0b9.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha256 = "47ec676324b841bcb9cf366176a394640f9b47c181b5a3a818342b1692e3b1c5";
+      sha256 = "778f33dcf00fcf0c1c0d5c354d0848fd3b37d9a8ed14394ee34b48894e1b5556";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/ru/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/ru/firefox-106.0b9.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha256 = "15dc118027eaa0d7d063523aabba12b46920405076c1ce238fda62db2b4ee7e4";
+      sha256 = "75ac9c96c1357fb989b75a3c2192b5155f5f60d3c7108d30d6dd9f28a6b456ca";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/sco/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/sco/firefox-106.0b9.tar.bz2";
       locale = "sco";
       arch = "linux-i686";
-      sha256 = "82476bdfe8ad10077e32b96789c5fed32eaeb5c907650e003010203788006bf0";
+      sha256 = "52067dc01bf3c1543ddd7e3fb7301ffda1dc42d5f9cc7a4ff1170f8e5527defb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/si/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/si/firefox-106.0b9.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha256 = "bd2e414bc53a2f13cb36366a0fbed16dac9aed3e777553e1fe052f435af03bdb";
+      sha256 = "0afe6495a3c68c53616752466722a34ed9315cac88081cd92de7473d5a84bb0c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/sk/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/sk/firefox-106.0b9.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha256 = "4c6a3a51cfe0ac744b1f7940f419b78d67033733c9ec141e6e117cb80ecf8dd7";
+      sha256 = "9a0765b70801fcdd9b71f07c0ada27d77ea8736f870a2ebc659c454dd7aa9f57";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/sl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/sl/firefox-106.0b9.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha256 = "305cba317b340a649a531c493801bca0533e05b68b7b8c1c81f4970cf57a1d09";
+      sha256 = "8b1cccc21530f8386a1fd41a72e0ec77f3d12abbb3de3ed50e508f9d9aef093b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/son/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/son/firefox-106.0b9.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha256 = "88c43f4fd4c61a1cdbd6109f65bb27235e22f471c8091d52890c0dcb8bf38b48";
+      sha256 = "5cd84cbc6dc77d23895e3abcd146ef9264efac25ca7352cafe2d5c5075b67799";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/sq/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/sq/firefox-106.0b9.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha256 = "127e042d07e6b56e2bc177c05a09a6b712ee63fbbaeb4a90d4b0e9775fef7aa2";
+      sha256 = "dc981d039848dd5b6a92aacce5b597b3f9d47cd731d73448c3c66f75977397ec";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/sr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/sr/firefox-106.0b9.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha256 = "d08f6fba892fb500924d2ed2531127b6bf51b7b9d65f11c36ae3e05adebd1a71";
+      sha256 = "ab188a37c103fc99be79d7674248ec628d170c72e30822d4b61c77838d329465";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/sv-SE/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/sv-SE/firefox-106.0b9.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha256 = "ef56a2f2acd15e54f831f0e0c4a55506c3ed8ff1d532cefca86f6fdaa5b14d21";
+      sha256 = "0545988d72226792a165b6efa6d2cc5fbcc2a12ee8ccd797e6ba62d476bd730f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/szl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/szl/firefox-106.0b9.tar.bz2";
       locale = "szl";
       arch = "linux-i686";
-      sha256 = "8aefe66b15188403a200cd215c89da1b35998d5a5cbf5519ee05160dc98b8e10";
+      sha256 = "95a0de3340d6f739a0e31d59d0d077d0f9773a3c7f83604068f4f10b414d4420";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/ta/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/ta/firefox-106.0b9.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha256 = "427f704d4d0a533b76f120d10164def4da34d0292870e728dd3019d7aa7d87e0";
+      sha256 = "28d987dd792b9e77e460d23bd3d04005ac2f041cd3658feeeb4f827348beba6e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/te/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/te/firefox-106.0b9.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha256 = "7edb070de265f08795b5808dc1bdb6f98b17b22b7a1f8cbd449de5e54fd2c4c3";
+      sha256 = "21b7ccdfcf77edeb9110880208c3bf74adf99986defe570fbe095cde44fd93af";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/th/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/th/firefox-106.0b9.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha256 = "c618a55797f8dcc66efe766ed00ceb8a26768fb8873865d3a88c721e8419fba1";
+      sha256 = "3276c6dee7c9714335f5659b9f5865aca423834a88f2a3e594164884dc706257";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/tl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/tl/firefox-106.0b9.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha256 = "d33946e26e36e72e341d7407184806230c5bff06f9d9cd4042dfc723f0283072";
+      sha256 = "453b46acd3de9b5d470d04c1f4afbc2c0579bd8fd663ac45a3669290c3fb029e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/tr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/tr/firefox-106.0b9.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha256 = "38ae66fe5a76b6f86283adbce1e2b47117e69316d4fdf17c68b3173ae332ed13";
+      sha256 = "5af1d2c7c55af71798c6766b2553ed1961da03900a4c1348ca4984b381827606";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/trs/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/trs/firefox-106.0b9.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha256 = "0f628d1d423a024491dc1360c5d7ff949061ec7e4b373501f026f94e0725493b";
+      sha256 = "3ea2e868c7df4812c394bb614c6d9f209f00e8aec1bd9b363a46b2fc7b451c6b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/uk/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/uk/firefox-106.0b9.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha256 = "95ec7c2a00e87aec69055334681a81dd1e26074136bae946e166193b380d469a";
+      sha256 = "bf1300196d9edfa174d486b9d811f7d864b51232e4b5b02a6a5b0337cc13ca81";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/ur/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/ur/firefox-106.0b9.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha256 = "9f7a89e65ce6e3c286499bc2b54ed86cb4319a509cafbc5705bcd6fd509bc0b2";
+      sha256 = "796f2e0d29c518ca826d84f2aebfc36b42892ed35dd7aa7774b232d03d971981";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/uz/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/uz/firefox-106.0b9.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha256 = "54e32fe8c68655dfd0ac18af6be75f6bb853b4d2f065a021e8042c415fefc90f";
+      sha256 = "c70249d8d3e18331021ff98b77f2aa595acd6fe8d5265a34979dc02b8e4dea0a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/vi/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/vi/firefox-106.0b9.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha256 = "23a925448bb9bf719f12af2d5d1735d580f1a53f9a7f4d9d0ef351a1d1bc1b59";
+      sha256 = "e1d87e2ff57aec8f7301c52580b04736fc165933d2bb5437f2d428f8de8cadf8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/xh/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/xh/firefox-106.0b9.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha256 = "258cd630090bdf94f9df31a572d20bfc6b556527646c0c29e75446c884cda1db";
+      sha256 = "6620a82d899f69b661477f10ad7e38823f0ac7dee2091abcd3ff145e7efebd8e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/zh-CN/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/zh-CN/firefox-106.0b9.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha256 = "5509842e4292b9b98fe24671643b646b25f7f50a32f4cf75bbe0afeb4e784642";
+      sha256 = "84e6f6e6d1960fc2fb0e8e86c1dfa0cd87b14441a96d31d1fd3f817312591734";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b5/linux-i686/zh-TW/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/106.0b9/linux-i686/zh-TW/firefox-106.0b9.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha256 = "5fe8c896bd2ef9b80041c4375a3441707b3719161d2f03e220e54cfd956ad9e2";
+      sha256 = "a3a693b4d98f3fc3dc269fb6f9b05915f6bb68d1008f3b0b2cea3406db547bf5";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/default.nix b/pkgs/applications/networking/browsers/firefox-bin/default.nix
index 5d221a9c70c2e..d6b78a90fecf8 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/default.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/default.nix
@@ -144,14 +144,15 @@ stdenv.mkDerivation {
 
   inherit gtk3;
 
-  buildInputs = [ wrapGAppsHook gtk3 adwaita-icon-theme ];
+  nativeBuildInputs = [ wrapGAppsHook ];
+  buildInputs = [ gtk3 adwaita-icon-theme ];
 
   # "strip" after "patchelf" may break binaries.
   # See: https://github.com/NixOS/patchelf/issues/10
   dontStrip = true;
   dontPatchELF = true;
 
-  patchPhase = ''
+  postPatch = ''
     # Don't download updates from Mozilla directly
     echo 'pref("app.update.auto", "false");' >> defaults/pref/channel-prefs.js
   '';
diff --git a/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
index d84d53101937a..9f307fc952457 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
@@ -1,985 +1,985 @@
 {
-  version = "106.0b5";
+  version = "106.0b9";
   sources = [
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/ach/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/ach/firefox-106.0b9.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha256 = "8561511ffa05f44e7ecb355e55a5f34debf314fda2db73f9e3b72be9748acd40";
+      sha256 = "3ebe56c40b5bf562e2e4eabbe327e29b00a870c94c07ba8810a1df403b16d7c8";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/af/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/af/firefox-106.0b9.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha256 = "83617476e933ae50766e48d915716606585e52aadfb0794f2f522ea0249588bd";
+      sha256 = "a26e05d8d10e025454460a2659cc56774b3724b13b453131465d94096fc70729";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/an/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/an/firefox-106.0b9.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha256 = "05500e3cb7dfd8d6767cf1a0a9de36f8e5569f8c561a6c723702373a258e9416";
+      sha256 = "91f07dec175b186a3a1c3153754b1461aadd7810336c630b2bf35378d6ba90af";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/ar/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/ar/firefox-106.0b9.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha256 = "7a084938b7996cf7003a9d351ac6a47d36d1341aada27be3a7b4cd8a904bb8aa";
+      sha256 = "57202c3b150d84a7367eac72472c42e1fe838215f99a348ad236a46440d297fb";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/ast/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/ast/firefox-106.0b9.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha256 = "2555cbd082b0e4e94ebbc71f45897c3f2e62703d8f14300360d896cc48d70e86";
+      sha256 = "ca2a01659555bc132b62a1cbcf1adc7678fd56dbf396feeeb4930a05d9158503";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/az/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/az/firefox-106.0b9.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha256 = "71cff2fa458bc664a8fc43f8c94b36dd75b61c6534e45d904e391991dae38590";
+      sha256 = "6deb5ec435900f4f336823c3239387fa5656292c283257536c8af2e835f16b53";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/be/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/be/firefox-106.0b9.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha256 = "30b1055d251fffe08c867e4e17ce564e0cfb98db57c5e94733a462e25a93b357";
+      sha256 = "bfad1ca2c73d7207a52bc15cdbda57da44fa944d23c3742286de46b5f5163c52";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/bg/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/bg/firefox-106.0b9.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha256 = "0fa796ab33be0378f5119f6485310370032b3ff0a265c09844060a16299d8044";
+      sha256 = "c8f56d7a61ac8d403f27edb3d69f937c25c19f5b265183f033954a248517633e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/bn/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/bn/firefox-106.0b9.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha256 = "e9167f0d715f29337bc378d0bad08c283b61128d0c6d4d34b0ea9d0230129d27";
+      sha256 = "5c22cae00f1a693a70fb97342c812bc5eb2d12ec13367440437a09ac40e7227e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/br/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/br/firefox-106.0b9.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha256 = "7ffd2f5ce0a865984016849c41c2eec420f65f569142d2999a45c85f88b6359b";
+      sha256 = "3578dd15c79a1f7d4b7e75d9110d8717c65e5dd9691ddec8c5b48614918e6081";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/bs/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/bs/firefox-106.0b9.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha256 = "255a076f7d77405a6a9a717baa2e7428810ab2d0e52f4b1b7d3bd661a8e68d45";
+      sha256 = "446c9eb257df3876eacb1a8357770b0a5610f4119481b555c2ee03bc718bc5b1";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/ca-valencia/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/ca-valencia/firefox-106.0b9.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha256 = "adea915bc0c7b6b108c78399e1f2246c71e6c52edf68b0acc5bb09b89910c77f";
+      sha256 = "b0b117bfe4c23850b37ade82eee9d0c759a0e4cacc5b70b1a1356e3faa4937c8";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/ca/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/ca/firefox-106.0b9.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha256 = "bd57a37cd9d7d7b7fe11d4d657a65edb28f6d8cdf97c618db8f5ee61cf0f45a1";
+      sha256 = "1d7715d5861603511216a00a6cae3185cc1b1a729d728a00fa4e78cfe5f344de";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/cak/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/cak/firefox-106.0b9.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha256 = "064bfc818a73e26b2391af3952419fcd33185b777a445566f7611573b512aa36";
+      sha256 = "54ecf36ac07d55e9039bbd0558d0e5c445c9cf71bab4023c15a9259981305e70";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/cs/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/cs/firefox-106.0b9.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha256 = "96f9ffcd5c27fb63322146012db1484f4348e37ef67487ee6ae595785f821d4c";
+      sha256 = "e35eab9da83e67fef76685fd7a94abb9539177bbae7131687cd1195bd744494f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/cy/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/cy/firefox-106.0b9.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha256 = "f33a17099b64ca3a88d53666ac3e82f9d349f17610bceb3be2f2f78c00b442c3";
+      sha256 = "4bd53c1ea3742f4ccaf7271bb9b6113173dadf63c1a6a8bac9a4d0dff414b6dd";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/da/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/da/firefox-106.0b9.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha256 = "c17bd03975c4aea3c8469f16340a50ae55287b1fd9a92223487e5293e6520540";
+      sha256 = "90441f376364471a6f7d56ebb07ca25665d31a44b5f92ebe8c4826ae1078cc57";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/de/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/de/firefox-106.0b9.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha256 = "3b8c84ab9a961d4c0b1fbfcab10a6b38e855bff9b54446d94f9f7b5a66dd04a1";
+      sha256 = "0c5d1095f0864098fb584b6d1d389e4b04d63c4281893fa79036d2285a5bbd14";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/dsb/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/dsb/firefox-106.0b9.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha256 = "10f57d6cb48e493d860a1fbcd1817224e63bbaf36bcc9bf8d6d56e9e7e07d490";
+      sha256 = "1648e34c3ed9e875500cd0000ab504a83f00495d2dcdf7edda5a375e128aaa17";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/el/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/el/firefox-106.0b9.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha256 = "ebb6a84f17e0a0ae677f01417e7e199be75b8888624c739a63be50e7cb6631ed";
+      sha256 = "6bd50fffcd3dd60c431f68d34beea2b26e013c6fa9dcf355b1a4bd9115f41353";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/en-CA/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/en-CA/firefox-106.0b9.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha256 = "f132aa451958757f8f8fd1ae82ed0b72e46838ff59044d956edc7242a106687e";
+      sha256 = "8c15de5a3ffa277e43f895574800afc8d1b663a1454f32e18da0e68886542293";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/en-GB/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/en-GB/firefox-106.0b9.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha256 = "733e103756d3e885d9b7dd084448c8ed9158b735615e2433ea2eb35c4aacf413";
+      sha256 = "834f87eb566870ff0916d52771ad1dc9be3edc99f5d9638223e75028ec4de961";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/en-US/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/en-US/firefox-106.0b9.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha256 = "3c5e8abf57742958345d1be9ed5d4cc8096198a8f9e1b58277ddf5dee300df42";
+      sha256 = "d7cef4f3c7330ad8b2e92f70ed587d004df97967be2053feacf718b0eee228a7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/eo/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/eo/firefox-106.0b9.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha256 = "ed02281964a7b63be645a1c0bfa54c60c9c06e17ae46958b4bbe7feaf844a55b";
+      sha256 = "81a07a70272fe99118fe866e7d951a7e491e87b2e886e9ed5ce0a5c3e713100b";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/es-AR/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/es-AR/firefox-106.0b9.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha256 = "8acea707b073aee74c3a5072f04150b35bbf4e1b603752d3931dca3d51abfb5e";
+      sha256 = "ef73fb7d8086b9339f90bc086fa803d18b24dabe19ae4c35d6938afac8fcb536";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/es-CL/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/es-CL/firefox-106.0b9.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha256 = "295208a0fa79f04f27e7d0a5597faa40ace70c425c6236ce5ffa0105d617a68e";
+      sha256 = "a32d4e057513e52a59af0d701e7f017b7ddf9e8c1817b5d74334b8ed43b616aa";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/es-ES/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/es-ES/firefox-106.0b9.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha256 = "c278cf1a3010f0fdf63334773b37e02a368f2fa60aeb626215f16a45cbea7ac8";
+      sha256 = "8e8a263393e8363b3fd368a1612c85ccdb3a773115a9387faf282bd68bbbbbf3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/es-MX/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/es-MX/firefox-106.0b9.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha256 = "68b8242ce796aef4e08e23db3c804d373e7b811e22759fc0fd4777169e77864f";
+      sha256 = "c3a2654f12b4acf0a81135216c3e4129cad50eb7ecf66d977a1bbf53d2b32ac4";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/et/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/et/firefox-106.0b9.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha256 = "0526e691ee552cbf11a74749d2a1c633d84289210ba85677f035565c9ac9f395";
+      sha256 = "8510ffc3dc24d2988d6893375b99d8f910defab3ca16f4ff03840d8bbb5ecbe0";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/eu/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/eu/firefox-106.0b9.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha256 = "fb8aadf65afcc9503181600eb1c446922fe6d46ba74a32c069b7dbe9acab4f14";
+      sha256 = "b7f865d539e4f68f1b3068c125c5170062e4fe475105c081a2253255e34c4104";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/fa/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/fa/firefox-106.0b9.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha256 = "79f82ad1a1aeacd865449c34c1d7249d62875924dc204e04e9cd0123fad04286";
+      sha256 = "2a3a561a0155b5a297e67458cc73f075eab5e203f6c61edfaf4fea16b0c58f32";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/ff/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/ff/firefox-106.0b9.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha256 = "c33b13c7b6a19604f46f33e705ea3d950832ea62495ef687212e38d8205b322a";
+      sha256 = "7048aedf27c36ef50f8e8f47e84361800cb68488e37cc02f63924818bbdc9abc";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/fi/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/fi/firefox-106.0b9.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha256 = "8080d7de2104faa02a38b12700bde752c8bd2b01168d975247c2576e59b34d8e";
+      sha256 = "19ffb0b0c7336fd4a2a266caf67133867b7becde145c0e1a0e21f026a4b749ee";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/fr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/fr/firefox-106.0b9.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha256 = "f552d225f475b428c701a52780824f559659760438928c6ca765fc95888d4a48";
+      sha256 = "813d18b63de5d4baecdc4a2f4c1ec456c0a95fff618567339c7a4c0119c0e14d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/fy-NL/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/fy-NL/firefox-106.0b9.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha256 = "3918bf4e8662d104255c633e6845653797c15ec4919864b20460520320ec0acf";
+      sha256 = "749041497606ee86e47596cbe6e4c1ac5014b35e06d2a371d8b29023236a8bce";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/ga-IE/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/ga-IE/firefox-106.0b9.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha256 = "643808c3cddae4bb84d1e1801e861c82d8254c783a70e08bd2323e0ffc6f1136";
+      sha256 = "afa62ee5a9fc30a44a12442f2ff51828d5fde8c09ba0b5d71be5830f14e2799e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/gd/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/gd/firefox-106.0b9.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha256 = "d07e8ac6bd91644e92a81d004f2167b4a0157671b4883cae42e5ee4435bdfb04";
+      sha256 = "4da5232a4871e9f6d53feb8af228cf99906f3cb197c90e90d7c76185a05fb413";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/gl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/gl/firefox-106.0b9.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha256 = "bc844861dedb5a3567f20352bc522cdd6f1517a8578716dd856a0c505f13f350";
+      sha256 = "f354d1aed287e2d2ddae35f09b0bb30f546dcca99f710f1ea4ba99ecf330cdd7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/gn/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/gn/firefox-106.0b9.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha256 = "28b2a372aad0253f7c86897eeee1ffbd5618b3adc1795fab5f45519ad8308df0";
+      sha256 = "1c157ea5b0e9c2b1c203aedf4e12c5a50bbf4294dea006f4b0d58ed2dc480f0b";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/gu-IN/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/gu-IN/firefox-106.0b9.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha256 = "513eb2523c4ae09c14b7102c09f6fbc6a33f194e0f9c71ab0fbbeca96796d9a6";
+      sha256 = "f81162b1e36c55ba112fec447f8a6916e935b805fe7d4397a9cf93315b0984b6";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/he/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/he/firefox-106.0b9.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha256 = "20b83257778c16097889f9399f326cbc631fdd9fb3c8aec03e9d99d1af0d1764";
+      sha256 = "692da92b9ccf4f99b393d973cdb28050947ff27a8050be5287f1e53f17fe092c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/hi-IN/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/hi-IN/firefox-106.0b9.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha256 = "beb5034ab76c09b605b91a87070674c82a5ffe92da5e8905cade02477976dbc4";
+      sha256 = "fd815c9f887ae62df294b9a37922eb648ae4d9c3fe55b27b147fbcaa49606dcb";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/hr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/hr/firefox-106.0b9.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha256 = "76585fcca92bae5ea91b2e16d1c38b645d1a5b6132a474be1de070efa7d14a34";
+      sha256 = "36a469ffbcd55cc55536cb76cf5f131149c2af307a7f630495897ce83308aacd";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/hsb/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/hsb/firefox-106.0b9.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha256 = "ee3c70ec61475cb01df13adbf45d6f889934e97162662dba56e54a553b403913";
+      sha256 = "7542a7adb317b0067062320e1ce023aa99a0ea3ce4b4e9d48e9f18385b154ea0";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/hu/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/hu/firefox-106.0b9.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha256 = "2349d58a9dce6588de0a0afcb28a66269674cdd6b8879a3ff9514a4d129dad09";
+      sha256 = "bec7a36369264e5ad8b135fc785ea366ead64495fb2ca9ea4da74b0a7b9c87ab";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/hy-AM/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/hy-AM/firefox-106.0b9.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha256 = "a5429d3282b68498986668070ca1e6b009b2471871efee707df659d4ab1a5051";
+      sha256 = "bc700c136152a4a35981062af1fd3a55958c62177325d1fda0cbb2c7556cd86c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/ia/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/ia/firefox-106.0b9.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha256 = "c00260190fa7f71b0394f33eb4f3955c3eaece1c47ba85eb32c7c61ddc750fb7";
+      sha256 = "b06a46c6c851e705364f6eadfe64ed90ad8a815a67f5f8be969ca85a05386bfb";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/id/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/id/firefox-106.0b9.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha256 = "1b89d56c33b0b36d16d4a454beb1572a29f21f4e93c584f7282367770f309b46";
+      sha256 = "e24eb1b8532cd0dddbad2be8fd98c04b38bdf57f2fca3a19851fe19e96199b36";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/is/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/is/firefox-106.0b9.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha256 = "64b453f79e65911ebc192201a711439d0d4c2bf31b2757fafcdbaf42e4cdd61a";
+      sha256 = "75b0b03fe19b5071fbe73d02f4e4c2e3e51494c0a54be3806027d4dd00b6c468";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/it/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/it/firefox-106.0b9.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha256 = "f199bbd3957966733a8d7b3b7cb365b9d8ff6bb1a1009dc8a444b9d23cf75ce6";
+      sha256 = "fed3d54a4ada6d58ecf0c1975a08b1dcd3ad8e72d072c63d991192dd4b07008e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/ja/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/ja/firefox-106.0b9.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha256 = "fd671e68f74080861b7671c7c50e10553d3aab4e3bd695f2726eade496a7d462";
+      sha256 = "7c4a5cb3fbebc1a3785da5f4c33e01beb078e136a786d07b1c8b9af889d699ec";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/ka/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/ka/firefox-106.0b9.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha256 = "85b4c5e5c1aa54e634db7beea0fd9570aaf7d88753cca8fee58198763be86d54";
+      sha256 = "e5039787dd0f5e9f5e947a40a2f676d95603cf6ab05cdff7dbcc1bb1d92b4d21";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/kab/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/kab/firefox-106.0b9.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha256 = "f99f041f9239e4c2f01c812523390bf53a514ddb76dc9be59865f04deae06b1d";
+      sha256 = "29aaa921bfa8b08c072aa5ef99fce272d7a272a62873ff985a7f9022f61fd70d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/kk/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/kk/firefox-106.0b9.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha256 = "7b594bee8a5c86306e8b1958418b3113bafeff8ffeab26996b4d61f6adbbc10c";
+      sha256 = "0b4d833544b617f6f608668a9c14dafda9c7dc7e96053ee3fee832ea1758e7c3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/km/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/km/firefox-106.0b9.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha256 = "77290edbc038e7a263ba2020215d69f18d1dd431982d54ddeb2947296f0b798a";
+      sha256 = "763ff1d6e23f14a6f276aef5415683780cf9201689b3df2c4c908a8f1ecbb75f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/kn/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/kn/firefox-106.0b9.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha256 = "32e9df13c83adb6a9d715e3987ae8a64c8b008265b9737b5c9ca1e219963905a";
+      sha256 = "ba81d1d500b81ca6bd109a90224cbe3ce632d34fe444840da68ad596e932c493";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/ko/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/ko/firefox-106.0b9.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha256 = "4bc1ac651a96274d6353113f7c28a2937d533d12a297f8c8afa8596b73e1b35f";
+      sha256 = "c98e00b855acc484b7656a6c6c13cd5a931e018e00b4a5183297443b0c349d6b";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/lij/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/lij/firefox-106.0b9.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha256 = "51beb8c5e8aab30a3cfeeeb6944315082c3bad5f6984ed9de8b0f3b439bb47fc";
+      sha256 = "1030abb7bf5f336353b3ac404dc85d3d14b9e28f88761b49ac3e7cec3bd620a5";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/lt/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/lt/firefox-106.0b9.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha256 = "18ee3a3f4d3628060338ff32b738e6ece839aa01c8b7c21e54eeb1a4a42decb2";
+      sha256 = "0d1b9957b4bd43b14148fe7fe3d659487ae8764417c506c93d0daeb62ed47611";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/lv/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/lv/firefox-106.0b9.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha256 = "dee950f1b2dbd3d96e121d4200c3ed05befb3e96f88b70fe08a4c5ec081b6190";
+      sha256 = "5e62b670e1db3770d4e216363ad5ee9e6f3988f6413b0f34a8470db97d2093cb";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/mk/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/mk/firefox-106.0b9.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha256 = "1ae47a547f40f517f185fd49cd74c48d3203a40d377651705563fcb651b867af";
+      sha256 = "d506ea8340ee0307ba56c89f32835058a1fa0e70036e0e9731bad8b483e95f41";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/mr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/mr/firefox-106.0b9.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha256 = "0adfcf990bb90bc33b056fe113f7c89a4dcd06e2dd5e05ba1fa5e6290fa4cb50";
+      sha256 = "83b5f7d958043f2a4b9fc1ee87a4f3cfc1bb26351f0147c037e85a03e83e364c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/ms/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/ms/firefox-106.0b9.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha256 = "c105fb810a6665a95b801f963aa66356b110ebe573c720e0076b123fc3f6ee8d";
+      sha256 = "5efba8634ca7c218b9d3131a18e9ed08377a2f8db56538d53daad8fbbf362bf1";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/my/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/my/firefox-106.0b9.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha256 = "73c8a093f14db76099b84f9bd97c679cbceee78e93470878cc2144f50edc7c21";
+      sha256 = "c5492ebe9be80028a4b557c693a2bb145220c264215f9675fd1e1619837dab7d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/nb-NO/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/nb-NO/firefox-106.0b9.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha256 = "9b323cc24010071a915c2d7f8ad7c62a125799289e2d37e16054df22deea0e95";
+      sha256 = "028ab96ad8397ffed47f1c027788f3e25cdeb7b72f9cb72c3d9fac9b0b3e6f44";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/ne-NP/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/ne-NP/firefox-106.0b9.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha256 = "aac79aeba8cfe567b8f281c98e4b0914c7ba94c746ba836c3eb3d2dc5b908e04";
+      sha256 = "dae8ffd4e1c0cdb7fb0e89053319f27ae0fce0ff2e0c688f450cc97669bb4abc";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/nl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/nl/firefox-106.0b9.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha256 = "e7d7b3ba83e5de6636335c612b709916974f06b9fb9bedac3786f23a8d76887d";
+      sha256 = "4b0f93e49f9a0619e4462bdff86739baeb102802546dd6f20758ead3801b042c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/nn-NO/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/nn-NO/firefox-106.0b9.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha256 = "806a6d230030228fc9c386711de90a57d47fb46a8360f6d0ca4608e845bf1e5d";
+      sha256 = "db544a7d0396d1941651775eb879ce85a092ef3d612bd072d453b886e2fcbf72";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/oc/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/oc/firefox-106.0b9.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha256 = "d44da3e42a9539efb56d87f15d8f931d10e555124951f679f6651630161e1434";
+      sha256 = "dd29cdfb7c0325ad2fb1c7d9e4c50eeec98d83f3d87e25465a4d27cc46f96f99";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/pa-IN/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/pa-IN/firefox-106.0b9.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha256 = "f5a69d6488040009bbdd02481931a4b8b16a2cefd092f8b77822e7d92acfd658";
+      sha256 = "5703607d932822eddd3556fdc1e3b4b0114eb43491b5ffc89823d41ad625f1b8";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/pl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/pl/firefox-106.0b9.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha256 = "713b9a753f3124c7f828b9d47fd0efb096f992d7dda927469ba9d5b657488ffd";
+      sha256 = "8097c645b1016b0a7542e4ec74c6058e2447ec8b130b0d82c54269c504074cd3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/pt-BR/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/pt-BR/firefox-106.0b9.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha256 = "765ceef939a14617f3c6551245c5f5add040b2be481366dfb80f55680ccd5a4f";
+      sha256 = "32870792882be1dbca51c7c6e7c4bb4bb68c86a45b495152b4520991b377028b";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/pt-PT/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/pt-PT/firefox-106.0b9.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha256 = "7489126fb451d4a75b5a18be31d1bee296efe7b47339def2b7d97a7308663800";
+      sha256 = "ab8aa12b54d9295137f959469a2266e996415326f13549e4f3c6a8d2ff05c5c4";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/rm/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/rm/firefox-106.0b9.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha256 = "444781014ed9cb501c6ce6bd7254bef771b5d9a78a46b40caa057fda5ea9fdbc";
+      sha256 = "4d2fa84dd0f83fdbc15d255394388df4cc8117872d5702473730cb581c72a27d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/ro/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/ro/firefox-106.0b9.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha256 = "a435a105cc1b450e56fa773215f4f39974dd1865ff21abdfe0d9eab15ac38f20";
+      sha256 = "4cead2f0280332334da157a7c72f45eb52d4db17d8382c13b36d8eb1618501ab";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/ru/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/ru/firefox-106.0b9.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha256 = "50bb64601eac51ee80cd232f25a37c40f58f630ea888f4656e06ff53a511d978";
+      sha256 = "e863acbc65bce522eb0150a44c1a8bf12ba49b5b6540ebf7251cc95fd231f73a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/sco/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/sco/firefox-106.0b9.tar.bz2";
       locale = "sco";
       arch = "linux-x86_64";
-      sha256 = "30d43956c9ad25eb0e60453fdd88f9adad5d057ddddcafe32d8e103193a8a7f0";
+      sha256 = "6642b1ea47168930e6abbfeb4dd22423dafcedf55cd636e51ec676827ba2f418";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/si/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/si/firefox-106.0b9.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha256 = "0013f2fd5008756443e661becf13d91d5a6fcec91c83aedf9deb422b14c1957a";
+      sha256 = "c1534f27e7c52703c6498716225d801211c5aef6e69d515e8300d53383a15055";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/sk/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/sk/firefox-106.0b9.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha256 = "8feabb983ee212d93f59bcad6d9a8a66450e871560e597d768ad7c986f694b68";
+      sha256 = "3e13107e564986ad5407168d037efcb9de58fbe5ea5ac1b87e0a79e96b3edf06";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/sl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/sl/firefox-106.0b9.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha256 = "ecab79986183edc42aa1450488cbb6163a7ad92a21788ee5f8468ad47d3629f8";
+      sha256 = "f67f2438bef34b425b5db30d74433eed3cbcd39bde893a9363c625c518c93628";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/son/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/son/firefox-106.0b9.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha256 = "7742d879125b22e25bc18e9113e567150eea3b991a6fe55d364399ca01374552";
+      sha256 = "b5d4d684d36b54d2349bb2a2bbf5e4cb383fdbeedf39f01e7a33ac9716657ea0";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/sq/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/sq/firefox-106.0b9.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha256 = "21d213389cae20280f5ecba82993d165dba36fc36c6f9ab0e93732d049f2f593";
+      sha256 = "77cd5bbcc773578f0569a72be475927efd11cbb0fc2eaaf171806424d9c9f6e4";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/sr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/sr/firefox-106.0b9.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha256 = "978ad725c887c4b68a65cf7c67349b44298ef404d7d84f7113a0c4855370a31e";
+      sha256 = "9c69a858ec50d3ecc0743642c2e84325782857506623d3112681326fad8cf2ed";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/sv-SE/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/sv-SE/firefox-106.0b9.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha256 = "7e53f46c1135822a09c53cd10a375ca299b6254752daf0a90883648c1d428209";
+      sha256 = "1d31cb570348098b47c77f8dacaa73d4f06c9491e9b8a182183ee0d4151c3d13";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/szl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/szl/firefox-106.0b9.tar.bz2";
       locale = "szl";
       arch = "linux-x86_64";
-      sha256 = "37e203a9b83482ffa8bd2ac5c757d295e0ff1550077b0151023e1974f049642f";
+      sha256 = "4e064354abe58d9ab1e856dc558ad04941c33fd2c3cef4d35146f3911dda5984";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/ta/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/ta/firefox-106.0b9.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha256 = "2044377f697fd6943d7e904b74556a084700d2a7064eb994114119264fef450e";
+      sha256 = "22d4fde7f0b8797ef69552df43467d746ddd35536cbe902708e4321091285e38";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/te/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/te/firefox-106.0b9.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha256 = "0afe9d890f0e3d6087d3f12a63d007de658bd94c7bad43845065e2f7f8ea1715";
+      sha256 = "4c22051fe420ae0b22b14f90aa84e922db2ac700924f78bdbc65417013d2bda3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/th/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/th/firefox-106.0b9.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha256 = "9d3bfa3a227c1193c4900e99aa181306aa2560e0f419405e8f0026aa5f04e0b7";
+      sha256 = "862f090de4606753bfd47454e4809cf71549cfea3145168b2658737f7dd8c0e0";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/tl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/tl/firefox-106.0b9.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha256 = "c4784990fefd26fcb26abdc59bf5b978bf00dc6036212565e4c4c75baf71f8fe";
+      sha256 = "808bca7567af4013440c4bc91d0ae75730245886f378525b6b93d42592cbac19";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/tr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/tr/firefox-106.0b9.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha256 = "bff6fcbdc140766aa4971dabd2544a08ce42f923a8726871fc47b18fde099c59";
+      sha256 = "998de3d38bf6176a0a20261989569c9cfcabcc9217bcc640ae828b7eb981b3ad";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/trs/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/trs/firefox-106.0b9.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha256 = "727663232ee0fca2a9b5918688211de5013dc294d2fec80e7f568ef579fcfcdb";
+      sha256 = "56662e9611ebebc0e5b86756d7e2209f9e428c949e87485f1348b3839326943a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/uk/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/uk/firefox-106.0b9.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha256 = "feda8099c81ca622f19a1a3205d6aef9d2b452397e16e6d1b213609ff23bfa05";
+      sha256 = "edb0ca3d48f2a49d9c2dbfa799de5467230e7508a12a9d11c4a128822575ea5c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/ur/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/ur/firefox-106.0b9.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha256 = "40ee8c47b590054eddf4bf8789abc52bb76d8a4261fd342db26a15e614ce6e57";
+      sha256 = "2f875dc26f140f23227b8450cd40d57055f4152161ae6ccb426dea8ded49355f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/uz/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/uz/firefox-106.0b9.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha256 = "f6fa60d36fc6f624ce5b8b97a74a181720645ff0aa7b0f5545b6759804e9821c";
+      sha256 = "a5674cd2175cbf1c9bf18ea7d123c7fe67de0f391b7d3448b625b42ece339aa3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/vi/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/vi/firefox-106.0b9.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha256 = "0159e7f7bec4e32589a955cc7b94c322e0d80257fbb960c8fa1f5d56cb5564cb";
+      sha256 = "0bc4c7dfc9eec43dcd82c122c8561ed4618e128d0bcf672c4a82a8b4bd9720ca";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/xh/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/xh/firefox-106.0b9.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha256 = "e05a18b54cc54b74b7a90317378939cfac2278473e5d2166288a560bc621964e";
+      sha256 = "2b05ab2150cdbec19c6a4ae66268093bfc22515fc5b07ab692a05d33fa918109";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/zh-CN/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/zh-CN/firefox-106.0b9.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha256 = "88337f1fa445a934866493be661e59d968ab48d1beb8ab65820adbf5c43b47ad";
+      sha256 = "6c1d98a6c9343a3cc535d66f016bd82ea945e1c8c2af2c96dda9cc3250792719";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-x86_64/zh-TW/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-x86_64/zh-TW/firefox-106.0b9.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha256 = "5710e0a112ccc06d7dfbcfc550e397796a3a829d9b587723cd6f74352ad2ffa3";
+      sha256 = "50578db4e06eb23cf82467b6ab7b2e37fa53ae53f3eff0e4065bfddd6a512954";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/ach/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/ach/firefox-106.0b9.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha256 = "ad16eeb19cb0d64715faafa58f7ae5344306c57ae5cc00064870ea6d0d422705";
+      sha256 = "1175d4285ad6cdc184c6136300416b618173e5b23a2748c05d285d3f8c6d57cd";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/af/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/af/firefox-106.0b9.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha256 = "3e94c4b550466e7ae223ee9347e67ba05f00b5aa77a889b4063066b6c0f96a01";
+      sha256 = "49f3892f719527f1f4e6b064d75e96ee42368f60d949ed58bfbc84e467d4b1d8";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/an/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/an/firefox-106.0b9.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha256 = "7bec79c662b03e5b9690ea283d15b26105714ebcae5e43ddf6acff3207c8a399";
+      sha256 = "954e04f76f5a7c5583f44ef847cf65ec326ac967c0b307a5a0962ce9e979a89c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/ar/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/ar/firefox-106.0b9.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha256 = "7ff23d45f9af6dc4e381ad944726f196239baa0c073f2e91ce2b6a0f8fbb0e82";
+      sha256 = "f17fbe8aac355b8f1dde44125c7f67fecce0ce69aa6e1f8f5e5deeb03ab0affb";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/ast/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/ast/firefox-106.0b9.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha256 = "4ebba3167fbb09e7881c765378db6dc283f68dfe5cb430bc1b7e7d1d69f5e7d1";
+      sha256 = "d7486ea5070281d71d039323046aaa38aecb59961296ba6549921399dc1d9be6";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/az/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/az/firefox-106.0b9.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha256 = "d14511717cf9d7baeff5d18bacf364374f24d5a6f5ef780eb43db7b85feb490b";
+      sha256 = "a6e2056709fdba67d0f0275c54cab6cba588cdaaee5b55edfe88f8faec9d3287";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/be/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/be/firefox-106.0b9.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha256 = "a9e8f4776977c30cf9b3f30f5d0e82c34b402ca0974d3c130ed5629a22e168b2";
+      sha256 = "0baaa51a5bb272961ff5f58a67befcaf0a858d27c79582ee1175095e33a55652";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/bg/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/bg/firefox-106.0b9.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha256 = "47d8c1926013cb318b400f9e0cf68c9ce555fe2e4923d47d5017df792925beae";
+      sha256 = "311f49e906a79ce19e6a7661d8834bec00e0b10db39b9d3264621a69dc00fc2c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/bn/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/bn/firefox-106.0b9.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha256 = "551740e8756abde368f1c7937f123ec571ebf576d1b71d60ca20ec075ecc2b2d";
+      sha256 = "d755517b47e2a3624d5918259ce3afe8ddc1692050a5ace5b783e8e915702c2e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/br/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/br/firefox-106.0b9.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha256 = "2d1a3e19a9f076f0e71600527324db780b3422f4f204f64c7b99d0e01256c5ba";
+      sha256 = "1055b678f7885672062967cf10963e60ecd56ae66aef311a43a7e24c4b8210ec";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/bs/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/bs/firefox-106.0b9.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha256 = "9d1030495857bbb0e1ff8bb76c4e7519b73c219233d608c74420149dac2d8f1b";
+      sha256 = "b5fb9371d28c58c06feb7df2a5fc9bd608953f917427b540deb12754c2b8c1ff";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/ca-valencia/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/ca-valencia/firefox-106.0b9.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha256 = "1eeb313718a669ea559b7f88a427d96b54f0229424ad8b3db01b8e3843bbc4ed";
+      sha256 = "33af156bff13112ac7525bc7a908a97951e16a8a6c3b6b9af23f9ab5c12a33ab";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/ca/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/ca/firefox-106.0b9.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha256 = "e348847c952faa0a60a6a21a579102c86cf186b28b400cbac07119228bee33a1";
+      sha256 = "8adbaf3ead5e92b61aa5df704e8c3ebfd767997ab431ecd26532506a956f65fd";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/cak/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/cak/firefox-106.0b9.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha256 = "8f019eb3200baa1ff673b86d4a020ec40008c79d217e54698f0b01b4b6bea4ac";
+      sha256 = "8d4068c9409e5d77d21c75d9e7aa5dac32ef66ee1c2df1835f8485328c2aaaa4";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/cs/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/cs/firefox-106.0b9.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha256 = "b3076475e5eefcfb7053dd6efc93ab71aa60fdcf2007d4d78c19c277b1ae696f";
+      sha256 = "f6ae92878aa3d6ac355e227c86481b200f171b371a07740c8cb116bc040c266a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/cy/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/cy/firefox-106.0b9.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha256 = "ce73e760b47aceba4585a0e1c718efe454276878bab20d3bdef949e95167340a";
+      sha256 = "2862e0db884f6293f93f3ece80bae58551b8760715865d5d411a94ed7bb3525b";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/da/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/da/firefox-106.0b9.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha256 = "0f3a2ca436f1ae15fcc894c404debe5c2a913374839d307c6ddf63542d9755fa";
+      sha256 = "460d65fec1d4f939e8c04eabf11f4b73007a8b7a42bc7cfdb8fe9ad3f1c9f365";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/de/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/de/firefox-106.0b9.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha256 = "fddc3ac5efc62eee05df25aff44b9581e716206e57b0d466bcc97294c76d3f27";
+      sha256 = "bbce376fefbff5d1e1e831ee0924530ac6e49fce3899de98a440619c3395a2b8";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/dsb/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/dsb/firefox-106.0b9.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha256 = "55fb931de68335a636689aa7734a03f3b4bd12796b0d16f82dd4400d0c250960";
+      sha256 = "a84df46b23f0b0ac646d1357c60922c32a2e394b17ff78332e674724b6be0c5b";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/el/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/el/firefox-106.0b9.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha256 = "8a5a2396eb14fd11c58c4e6c951746bac1d2e1ba65804927f105e3b97607ee3c";
+      sha256 = "1706ba7ffbbe8d46001a10421ee4705a79c371f0cfe404b7027caf224f3e2468";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/en-CA/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/en-CA/firefox-106.0b9.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha256 = "18651db0a2a70b056b3d324279e294d1626790701bf523c43f2f1641f4d89fdd";
+      sha256 = "140a224de2cff29941e7d81fa025244950f56f736a94dc1c74452f53ba7e27db";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/en-GB/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/en-GB/firefox-106.0b9.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha256 = "8efd080d721fe1d971d61ebfd9a284f78feb743fc3450c216d0438e46734e1bc";
+      sha256 = "358fc1253ecb78168f4961dcb3d9646470b408b7dce0984ee891dcc451343918";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/en-US/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/en-US/firefox-106.0b9.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha256 = "732c2355f1105af61505c899932e6e53e43c79784c1e921b684ff10db3c50262";
+      sha256 = "514f96960ef3c5e259d5acc18ed3b492451d3aea5694037bea9e22af31237dc4";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/eo/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/eo/firefox-106.0b9.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha256 = "7151f8420e25157e86733bdf13df4a2fed5357aecf7674dab505feee9c4eb09c";
+      sha256 = "d5ffcc045fb45cd1dd748b6351412a1a2016fb47d3457f00f3d0b63ae8bc12d1";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/es-AR/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/es-AR/firefox-106.0b9.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha256 = "1f017a00e0755655c5503348e7d4f0462330fc6afba8d3aec24ab3173efd0926";
+      sha256 = "6122faba3085ab9bcba174181bddc42093fc09953bf3478c194e7706b51cb157";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/es-CL/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/es-CL/firefox-106.0b9.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha256 = "a31fba6855a952403692d6fbdb85c01ea83770205e8542e0cef8c635a861c6a6";
+      sha256 = "5304587072a1adcf8edd404b332b6048a7ae7ed3c3b85f13c8a2a2590deae2d5";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/es-ES/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/es-ES/firefox-106.0b9.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha256 = "a28f566bbf8e0eb5908fc88b5468f3f94455e3b70cff0bc81006c1370144404d";
+      sha256 = "e9e1cb95838da3e97082f5dc7a656cc4df1cbe9767ac7e573ea2c980bfddc347";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/es-MX/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/es-MX/firefox-106.0b9.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha256 = "641f6b89fcd53bd8a55b93bd72b2e59922f43f0e4bef3ae0391dd721ba1e124c";
+      sha256 = "9281244a4fbcf02a5a0a0b49e9823cd97cdad72ddb8d415edb9dd45cbc86e1ca";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/et/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/et/firefox-106.0b9.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha256 = "4b4f28c3590ff40d42246c5e2867398606a572d0f1f289c2b1e60e5aae4ffb5f";
+      sha256 = "a65d3c1e6a967a0e7a5e9490e9ad41a10b3c42013f41b446c915dd638e211743";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/eu/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/eu/firefox-106.0b9.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha256 = "dd5a093ff4a8990f48900b48f30b3eec6df7029a41cddb4eae23b934770da1ec";
+      sha256 = "df03f88804366c44777ad0f83c402557ed330c8d56b820b98a7e628e92dd3ae6";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/fa/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/fa/firefox-106.0b9.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha256 = "f4c869d935cc9e57bb1363d7bd4fff11eb85af6f9a6569164acf01948f675a84";
+      sha256 = "674d4c04836f7ac87de7f72c4d797e83a52239852df7939da54f4e5b9df0feea";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/ff/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/ff/firefox-106.0b9.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha256 = "a4b4eb26b522d3394c7beb1b059cd7bc347e613e5cd24660f6f9841193ac8c8a";
+      sha256 = "3808a89290cc624a1b747794225340c4324c9076f46ba738ffc17d5ee709430e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/fi/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/fi/firefox-106.0b9.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha256 = "5b88dd9ea08e45ad165ba05d2e17586aff8df602277724be9106068508d59234";
+      sha256 = "20ac2cb22b2c4a78c93b5a1ea126619fbd58b5b5331fdb2c0d022e41a8aa5cc4";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/fr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/fr/firefox-106.0b9.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha256 = "5b5e392b8984afb42bd2871e5a0044c5b64fcc006026af618d4bbee6905f06ed";
+      sha256 = "781ed63cdfbb35bba49cb5fc4874828135c8a0c224b45524912ed3a90cf5f9a3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/fy-NL/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/fy-NL/firefox-106.0b9.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha256 = "e71c2f92a1b7805b23ea03902383ebb82318d6252be76726a80659c53f73c1ba";
+      sha256 = "9970e9d1de09af683bfcf2c6de36d3ce404242cd6bec1711990409f18e9c0ebf";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/ga-IE/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/ga-IE/firefox-106.0b9.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha256 = "7bfe67bff7f844586fa9fc3d46c383823cec26a35856d7d71b73f84c59deb1d5";
+      sha256 = "35afbab556d75b0a037859270bc7ce1f3225ef6719431b2436e150efa020c5fa";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/gd/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/gd/firefox-106.0b9.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha256 = "2de9bcaf38257b2557f61d0f2828bdd3ab67d4b406cb93dcdc4d8ef145716708";
+      sha256 = "9f74ffaea003fdb8c09913a5e300424cb2d81126c184f363c57c3dc35f39e69d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/gl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/gl/firefox-106.0b9.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha256 = "94f25607dde8a8b7cd96c91bbf59047b40c6e28763cd28055ab0991470448de2";
+      sha256 = "60640cca039224cc9857c79f6b519fe477ce5b937666705112082b1b622e3fd7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/gn/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/gn/firefox-106.0b9.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha256 = "8b7fb89fa16cfebc8f88ebfa0a71e00fc6be999e5ab8d5605482580f2c812d1b";
+      sha256 = "4ef2fb51be32294d2487bf832bc78ce8af95e7820b35189dcff4510891a512f7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/gu-IN/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/gu-IN/firefox-106.0b9.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha256 = "eb6a925a483b5f0e42e14d8f9be83c4d1fe0d6d29aea44adb9e1b3e53cad465e";
+      sha256 = "dfa4721f747df82d64b76c2faf27e76ac3e03537bda79b5ba6ced1c6c627ac78";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/he/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/he/firefox-106.0b9.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha256 = "137ac1cdaebfaa5b07076176537d6bf83e7159f23d486f7846dafda995177d76";
+      sha256 = "2ca67315c89c9b7df8580c6416ff91181c1de9901d098ae38a0e7729887d3886";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/hi-IN/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/hi-IN/firefox-106.0b9.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha256 = "5c0fb3aa2c88d954dab3f4a11ae901f56e3af990b37e0c161952ada8280c2b8b";
+      sha256 = "eb275752bcb54c8d7f36256b8e095ad2d3712b40a433da858751adf78f150378";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/hr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/hr/firefox-106.0b9.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha256 = "36339c7514dd93088dd89fb58de234804cc6cd2959ab47be01e66b08322e0e0c";
+      sha256 = "e9a5ed69afbbbc9b5d03fe25453e4f7e3a8f75d6ca4dfbf05eba44058ec77eb0";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/hsb/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/hsb/firefox-106.0b9.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha256 = "438cfe725888f0a3ecd06c426951148dd26a2102e8085de988f62f391ae63491";
+      sha256 = "c9a78aef751d2000d5f7aa0c980b2df8cca8b6830acc87271b936e703f754699";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/hu/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/hu/firefox-106.0b9.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha256 = "d6cf04012dcdcba201e02d2e8bdc54134d845ad3055d604cce9701e6b1a43a2d";
+      sha256 = "fc915cdbeb0b35bab8dabfb4dcd7bc0d938fd4c57edfc890f8ac8af321edb4a6";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/hy-AM/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/hy-AM/firefox-106.0b9.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha256 = "46622bc5ba0240171a93f8eb6b023998455fbc46c562f5ee134eca255349e896";
+      sha256 = "13d02d7872f68131c343d11bc5942938a9b11d894fb01c9a5b3e6f3e5c5e2d5d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/ia/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/ia/firefox-106.0b9.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha256 = "70f0ce5b7a053b9dc0e0728501c525c305683792654717ffa8f56d53e7421b19";
+      sha256 = "b175f0f47c31650641322a4f511982dc489bd197b858a389cc2b3dd50e9dcc94";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/id/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/id/firefox-106.0b9.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha256 = "c544291b74d3538ce76dadaef86b68ef16a7bdb6af12f274fa4313fc6ac55474";
+      sha256 = "3416bb5cbbf904de8bf043f633e01519eb3bf5a37116f04e42fd71938bd5fdec";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/is/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/is/firefox-106.0b9.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha256 = "345965cd4a4ddf0a69b00ec10f33ba947f75b38a35e56705a6ff44957d2b650d";
+      sha256 = "09f6e4514739e97dd294151206361d7b3892671457e3cf714981f3e06ba614f9";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/it/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/it/firefox-106.0b9.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha256 = "b01889446d3e539046c13c0b3c8a9c60308768e0e0bb3cc772a7b19198702547";
+      sha256 = "987ed3c877edca44a904dc4f58a8249bc608b637775727acb42797f4c7ade527";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/ja/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/ja/firefox-106.0b9.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha256 = "6270bad12685a49626291d90f620aa194e3262e2e0a59fda87a75e1bb47b3559";
+      sha256 = "d0fccd27709b0f9002ac0cd449b0b1646c653c5b0bb54b277db002a826fe8aa1";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/ka/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/ka/firefox-106.0b9.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha256 = "20c845eb27d0aab0ffceef8ff1d7215b8fcda883dcc7cd285ff01a890ecdbf7f";
+      sha256 = "de6c70e8d6519a8704f23740ffbba2b41de65364f7bfdc5e718bc73cadb01165";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/kab/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/kab/firefox-106.0b9.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha256 = "82083c91554c9432c93fbdb740a69cff2fa0d23ec937c6f308524b5e8c619348";
+      sha256 = "566adec6f20d034fcc0b778bf43bd7fcbdc57482b23cbfc31c0bb377ffec5293";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/kk/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/kk/firefox-106.0b9.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha256 = "0060a1ffbc5c272c9f13375f657bedbbd856e39f88ac13082db138b5c5361ca7";
+      sha256 = "742d0311b4e6313a7ff3c31546fb8f53fd6ff3d79ef8535bd29f9880b3a0a9a5";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/km/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/km/firefox-106.0b9.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha256 = "f888e6b31238df74d6c10ac1136c795276c65ab7b2e9b4d63b4f20230b861fb3";
+      sha256 = "c18901f91949d3a7047bd7dbe5ca61015291becea830bad3d05ca30972e01b11";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/kn/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/kn/firefox-106.0b9.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha256 = "107b113f5239f0d1a225248f274f7d730b6e5b2c3ed7b873c0252d83c5d798e4";
+      sha256 = "76c2644846e8713f8651b811d3db326ba7c3ac6347bc026196237341756d50e0";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/ko/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/ko/firefox-106.0b9.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha256 = "d4db566fa090f3ab7c49d51d2fa4d3d822ac6fdb7c6562278f1880b6b742deed";
+      sha256 = "04cf3e4b7ceae9d31b6d0c93b2180700a8a045e0205dd78a96ce27783bd2f216";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/lij/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/lij/firefox-106.0b9.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha256 = "32a62e75511133ac65c0cf02bd41e9142ee33adaeefc593795dfb7f477f9b6ce";
+      sha256 = "37a852991a1a8cc7b4cf9cfdf9c106cf613edae6b943d12b7fa08496d6b8e767";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/lt/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/lt/firefox-106.0b9.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha256 = "926c0eef7c2f96034ae0901d3803d9940a03b9c5d14a2bc6baabda82d285cfa5";
+      sha256 = "15640392e0e1782c23cc28472dc46db4d8d0437308393df33c255e71bd11ca27";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/lv/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/lv/firefox-106.0b9.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha256 = "7c4643e8b8626679b55499cdffaeca1b7d941502c916171c7cac28c4efa925d4";
+      sha256 = "b018303fa2d17328fb4538d652cedd54c5870c4c7db861f1ba212a107c638370";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/mk/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/mk/firefox-106.0b9.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha256 = "652ba14a7c92460f6f6ded6340888b7442df3eef506ede26d1f829999f223766";
+      sha256 = "10a1ae1599834a6541ab657b712350e6ee103b3c9329afc514c272fa4011a67e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/mr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/mr/firefox-106.0b9.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha256 = "8b8f2da65becc73b9d4b17cef27554e6a29d4313174947f80567b9ea1dfb7036";
+      sha256 = "11991f7a934d0f8d3096469c3ab6c803a23fed9a1f59951bf0542194ad36225e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/ms/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/ms/firefox-106.0b9.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha256 = "39cf1d632f53a686d66f76a2a9d51c2da719655824ef888cd89b9f0deb04d1e1";
+      sha256 = "e5e05406b5031598b298d4641b2c492c4ebdf818fe7f91bbfd3a12babeeebd47";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/my/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/my/firefox-106.0b9.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha256 = "ab8afee1d85f3f7b96c232bbee11ba7e7e3442e3415e450cb9d0fe93922a78f4";
+      sha256 = "c771c314486c6bae7f4f19fffc015788bdcdfe7571caee595da58339e0d7f33d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/nb-NO/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/nb-NO/firefox-106.0b9.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha256 = "9e4dba2ab7645922257e59cdf3f008086fddd32c5acfd52dd2d2ffa97f747aae";
+      sha256 = "0cdb88bbf63e494742c64499121fb49f27fc833547f976ebf070bfc95ef86aaa";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/ne-NP/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/ne-NP/firefox-106.0b9.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha256 = "2a158b9898f464500a94f9f70575d717195c9f197fea2844f3d7ae7f3b3ee619";
+      sha256 = "28e4d3adaf02147ee68c72169fa3920d81b7173a65db75b1705ca1fd978565c3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/nl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/nl/firefox-106.0b9.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha256 = "528f9f405a69ef8c8b1a49c2ed9c5e24a23d570b0e956c5376ffeff5e3ad21e0";
+      sha256 = "849987c786576e60657438cb075921f05693d8769fc13242a708844c94b63824";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/nn-NO/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/nn-NO/firefox-106.0b9.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha256 = "47722775d70bd26f72bb1d0791afc8871ad1a6e0770ffb79858a078a23ea0796";
+      sha256 = "b6241f9130f9216fc5ee0302eb3cd6b02f7d6ffb9281fa652950b934f6d68996";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/oc/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/oc/firefox-106.0b9.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha256 = "bdf867e3a02420d361f1089b4c3795473c062a8b7e0d3b6fa6d43734f059cd9f";
+      sha256 = "b471bd1a403c8a780ed4d5c4f4ac93991939cec4ddaf93ab3dc1ff9ff63a31b7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/pa-IN/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/pa-IN/firefox-106.0b9.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha256 = "d533a1f51a2feeeb233b0a450ce7f435acbae3e7d10d085c96ccf2668a3980ab";
+      sha256 = "dc775133de278bd10e3a3aef38f8cd9bca749ea66789623924c790351dfb0473";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/pl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/pl/firefox-106.0b9.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha256 = "dac080a9f0967529443d78e78641239e33176751b81d21654110b6479daa53e8";
+      sha256 = "7ab83fac6fa2974510fe5a6793a8afd0d547f8e8a78102bb87f76977199d1f67";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/pt-BR/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/pt-BR/firefox-106.0b9.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha256 = "2c0a21897e70bc1a552f85040ba35b024e0c702eb4b4455b47ecf94a7220de71";
+      sha256 = "38ad22204c9ef39075d3444870f5ae68230afc894602e02c7a50c3091406b015";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/pt-PT/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/pt-PT/firefox-106.0b9.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha256 = "1a3ce08ce28134b84c05b2bebf9706e0735931af479ab117684d76b4fd33b097";
+      sha256 = "ce374b167688832594c0879bcd415c2fa391ae9da1bd7c1fa8dc31b702952cf5";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/rm/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/rm/firefox-106.0b9.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha256 = "fffd3d3a7b9bdfb6f61c92105dbafcf018acc58733cc5e6d7552acc0ab0505b6";
+      sha256 = "364555cb49afe2bc7aa8cd8b680ddf50d1a79cfcfefb2eb24c5a4ea936198a92";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/ro/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/ro/firefox-106.0b9.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha256 = "4d7fe3626437e5c4b49e35aff6bdfd532203599947ef0014953a869cdffa31f9";
+      sha256 = "8552829ff43f174420cdb98cac11b5d537bf2863c6a284333ee6d8fa96f5296c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/ru/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/ru/firefox-106.0b9.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha256 = "c31f1f2dadb723a10097408b36e63532f921fa1362d4699c9f437c016d24169c";
+      sha256 = "6132c265a8b0eeaeaf1173d0eca2bf6d575ac77896800f7b02c80700532073b7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/sco/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/sco/firefox-106.0b9.tar.bz2";
       locale = "sco";
       arch = "linux-i686";
-      sha256 = "d7ae32dd99b2c5b09d5ce01d068bbcdd6ba3c42a81852693fd895c7611ce7bc9";
+      sha256 = "6de01840100140e8dc07f27b8893b2d1d0c802ccfe58cfc3f7111e86fd6b794d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/si/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/si/firefox-106.0b9.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha256 = "350533abb41efa727a2cc74ade0b23a1bd25e8fdb6858c90c32f9c395db263c7";
+      sha256 = "44767ab3f7a236f1daa5b8fe90f5e84ec542a184d8d44d2f6ddbb71fb42b59eb";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/sk/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/sk/firefox-106.0b9.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha256 = "7358c40827d3c0fdc5e36766c0073374b42281cd0c6e63f45b7f0e03207f4bd4";
+      sha256 = "9017035546caf2ecc747c52905e03e96f0dfeb09b29cff2379e26f9ca482bbbf";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/sl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/sl/firefox-106.0b9.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha256 = "b5e38822a3aeb879a6dbca59b7c2417e3ebedbf79dbd08d4df5881ebf776e62a";
+      sha256 = "78c9828abf47d7f2fba55bd0dac337f2d8c30cadd1b7115ed1d352d7d0ed4421";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/son/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/son/firefox-106.0b9.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha256 = "484e3341331e95e9c375a263fbaa8ca7a59db445701f9c7f9caa1d70d3f6805e";
+      sha256 = "128a013cc004a3b0b5193cdb95f0f35229902c8d8e5c07f2fb23c274486b8e42";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/sq/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/sq/firefox-106.0b9.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha256 = "8d408e7bf017679496e76f7f2968684d5c4046c9fb443d2fb3c9ea13abf19594";
+      sha256 = "eb302dde11ed7925d834029ffbf26fb7944a82050f20d523b2c78c71b96a6086";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/sr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/sr/firefox-106.0b9.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha256 = "50a3b16863ac0c79ad17361fc845d1d374ca114038fbdbb1722a1e90ca4c52c6";
+      sha256 = "2697e476475aea0e94cd3bad0b060aeb07aedb46d2647f8f35bead016756c0e4";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/sv-SE/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/sv-SE/firefox-106.0b9.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha256 = "ca9af22602e8683d810032f895e7d7e5d5ae7c5f6b3ceded2085277c3c7ea3f2";
+      sha256 = "00ccdaf2b02c64026a85706c754604fd76cd079167e89eeae1eca9bd07157421";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/szl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/szl/firefox-106.0b9.tar.bz2";
       locale = "szl";
       arch = "linux-i686";
-      sha256 = "501b33a929f17e5ad49041113140676d77f24484343ef4a785dd29b5e2fb23a2";
+      sha256 = "1b554f298ff742b727178d906fc3aad9529ecb3ef732b3e454f3d5aca9a137a8";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/ta/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/ta/firefox-106.0b9.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha256 = "513af6cc93ed1197a8f4519fbf26a3791b2de608ba5d3e3c282d04e5bad941db";
+      sha256 = "8cd8c82bffa0dee0a496fcd1d6a89afd2cbaf91823a386e5d5ea1ecb6c6caaf0";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/te/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/te/firefox-106.0b9.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha256 = "7a2a9d2244c73c39d915a970e2133532a1a44596dcad4fec0783702bd630521d";
+      sha256 = "c1ff4531313bf901b27a904e6b653e862e03f1987e0595553e25d5e457e70e0d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/th/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/th/firefox-106.0b9.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha256 = "7c5453ef9a84da8f71305919cc23b8e0bb746239df4a94b75a26c240c3b00c12";
+      sha256 = "7d916199a29e54d15477b02af0fa7a4101294c82ce834cb67df2d7f9606a219d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/tl/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/tl/firefox-106.0b9.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha256 = "00c4d5b8120a2e434cf77c2fa994575eda8a46d10fddf5e55407bf5a84b9d7ea";
+      sha256 = "816c28e5b805ce4e1a2d588073b9a10ccee2032f53414a7c55df44d6c29a2603";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/tr/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/tr/firefox-106.0b9.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha256 = "daa107b760f215ec0bec362462edebbd3df0e9f7dc3ecec0baba394bf16f9c51";
+      sha256 = "57e183a63f4f590ca7417a6b5a896395c684cec05b00ca667a042a51b9f6a41e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/trs/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/trs/firefox-106.0b9.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha256 = "bcfc29fbfbf9e791896e19935b868609cdfc85116282a732cfdd83f5871f825f";
+      sha256 = "61ecefe086cf856da4ebe5a62c06fcc2fa005e7a808df2b6183bd984fca81a59";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/uk/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/uk/firefox-106.0b9.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha256 = "a0a55891b3032d00da27a940b99af8447537e9f5c1aab3689ef77131e7ae9210";
+      sha256 = "18311d4224139f98b54fe90927a806345628008916b8c4b3b5f97bf33f46f29d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/ur/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/ur/firefox-106.0b9.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha256 = "a6038932291061aba7b57a3cd95346580df997ba34e45bbf77b0f648f9f3f7ed";
+      sha256 = "f1a92d802f2e587d993aaf401ddc554eb7c857b2f5d7bdc8e16aa2a8b45dff9d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/uz/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/uz/firefox-106.0b9.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha256 = "c1eecdca0d2047392cb70d19ee485d02b7cda0717ed4bc3eabc9906579f3189c";
+      sha256 = "61d5b07f450d01d8cc1264a71df42eab82f6a4985f701d8b1516e29c7b06ce70";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/vi/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/vi/firefox-106.0b9.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha256 = "bc33bb2e02e23ec740cb1f91298862d346b799ac9df04ed3e0301e19a7b97e34";
+      sha256 = "f9e444905d3778da8f5f10d01c618f0bcde4d9ed4d27eff380e1c39315e415d3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/xh/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/xh/firefox-106.0b9.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha256 = "4d7147385bbd00a3cca6130831ca67e87904aa403d4e8134d459c18a8b3824d6";
+      sha256 = "bb09260b0d530a1327075d83f996beb72067857df25424238ecc9cb96c1516e4";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/zh-CN/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/zh-CN/firefox-106.0b9.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha256 = "3d854dfd5ba369e803a462c75cbe4912e3c28767e570f5946cf3ec07a25c85d7";
+      sha256 = "511306078e0489f2ec4923b7db8048d0010fab17467cb0b7bc3599c3b7a2e7b9";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b5/linux-i686/zh-TW/firefox-106.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/106.0b9/linux-i686/zh-TW/firefox-106.0b9.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha256 = "b439906bdc4e1b6b2b19ca28506aebbedaf0fb063ea9a5955654521983ec0f6b";
+      sha256 = "d80241665552f3a1ff87621d71d32b1a26648e63cc812e8c24f28045a8016693";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
index db8b01a524563..9a4fa4a077483 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 = "105.0.1";
+  version = "105.0.3";
   sources = [
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/ach/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/ach/firefox-105.0.3.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha256 = "2a292e4d140ea74bf51fb150fcf07c053d3b670780bbf865597a90195e41c88d";
+      sha256 = "8147662ba2ab1b5299771a006cbb09e654f4af46bb4a65d9b75474e456514824";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/af/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/af/firefox-105.0.3.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha256 = "001f428c1923dfdebf73bfcbe7e56b6387c98f2c7b55f2c068c314bb3d0e394c";
+      sha256 = "8c0164434b26d85a17deba56a0c41f05b214ec1b414496520f2bb9a8a03fc266";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/an/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/an/firefox-105.0.3.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha256 = "515c8ff97fff98703c1b7a225411ed8cfe256c2b389ce9777a52a711ada7d8de";
+      sha256 = "739c4eda5931d67054d48cf8bd2e428b0344f04c4fc0d57a29efc60bc6fa6ba1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/ar/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/ar/firefox-105.0.3.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha256 = "e1c07b1be533debf394c3d5120cc54a1403963dbae6044004db41ea00795f238";
+      sha256 = "f49ab32d39f9bea4f4ccf74f039265cdc938fd85676be8c4e9f83214e731b558";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/ast/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/ast/firefox-105.0.3.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha256 = "b3c36cb5c6d9365dd9b070ece37896cd83405dfd7d5bd34c4438e50454e1fc14";
+      sha256 = "e655e1b333f14c4540dabb9c48639aba2cb31a8ed499e303155fa46d10b30d54";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/az/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/az/firefox-105.0.3.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha256 = "456b1e3609e8e4629b64795870c20fd231bdb53223b24046a19649e367f37ecc";
+      sha256 = "56a9ede376eb86322325ab81525d138a9f404f7d8384beea1e41a1c74093774d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/be/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/be/firefox-105.0.3.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha256 = "75d5ac806ff70fce1671636794c9bc0451eb33fc7109a9e195cef8246d80919e";
+      sha256 = "07c5bff28da68df45e0d32e22e411436f6ad6538791f7f8805bfdc7cfe1cb988";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/bg/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/bg/firefox-105.0.3.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha256 = "436126b9edf631eea6e68b7068cc752a3e3e6d86e77722cb74fcb1c3dbef7bd5";
+      sha256 = "b9ce3e10b398da8ecb07f158874c0ecb6a92319f2587731a1a94af370ae6e4bb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/bn/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/bn/firefox-105.0.3.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha256 = "2f08c7ac904ea50df7cff5645ff4bc56e470b6a7215affeeee1497e63edaad06";
+      sha256 = "b51077e8746523ce6278986d70e12f3867af394ad8ca54b259f3b061d2370fc2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/br/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/br/firefox-105.0.3.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha256 = "aa77c3646cb0753d80bb52f3fd1e71a2d1e13b004d3924481dc175c453154269";
+      sha256 = "6cd62dcf0ac98d81d6acaa24d29ddb7052ae322d1de5df1faa6f3fc74612eb19";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/bs/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/bs/firefox-105.0.3.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha256 = "ae2cf70e774eddb67c6c311f3d325b921b7db74a0f8b06146ef2431cf79df804";
+      sha256 = "c51aeaeb69dcbc099521ff568d8746f32304e231988b2790e2b1c96a217b9b89";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/ca-valencia/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/ca-valencia/firefox-105.0.3.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha256 = "b85b6d597939f559270fda3993298db51717c2b86ce9ab8d50fe777b1101bc1e";
+      sha256 = "5e05be19fb65b8fa8e3e6babfd1d970be960d82367877337a5b13118d3ec82b6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/ca/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/ca/firefox-105.0.3.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha256 = "01764fb52c22caf81291e25efa606e28796fc3c9489fc95d9312bfb60a6590e7";
+      sha256 = "fbb55041ca2d43c7d84469f0b0f379f41e890837f6642696f1c0b0cf6afccf65";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/cak/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/cak/firefox-105.0.3.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha256 = "56b87331ad9c5aefd3890fa760a64397d878b93b48bed93a5d743f72273df943";
+      sha256 = "831217cf7cc7e0d58fe3b7502bb341ec60397954e7b1c825cf6732f2f0f0c38f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/cs/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/cs/firefox-105.0.3.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha256 = "f4ab7f935c4d13510c82d0c05627f1173f2e6f0c314b5e4eb27210982d837238";
+      sha256 = "e5ab70b9bc95b7929e75524713076455b27cc7dabd97f0b9323f7d7c1566a899";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/cy/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/cy/firefox-105.0.3.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha256 = "0d77c652ce5deef61ae2ad0bc78de9a5fd1578d4e6c7cd0152fb7d80df125ea8";
+      sha256 = "705f2e17f1f50afd3fb0f7399c13093c9e8375fae25c33ebcc2428182c9f2936";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/da/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/da/firefox-105.0.3.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha256 = "e0ed75c3d18380782d229940be3686599a29368a3525d28d5390cc8a4d76322d";
+      sha256 = "539190ddb241de10f6ba817d721ead00b7e3637bec6d554be64161d466d3e30c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/de/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/de/firefox-105.0.3.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha256 = "ffb8157e40d92992e6119094ceeb30621b111804956dfd0bcb09c75949fd5b7c";
+      sha256 = "aa7427a996ff1aae94d6e9d1c7550cb68509822fe0f3bbc02c51711dd22b6bae";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/dsb/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/dsb/firefox-105.0.3.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha256 = "32ef53801f3e3cebb410956d13c8280e5ee4ac90f5eefbb367a667a578f5c558";
+      sha256 = "c888c692542a4e4f1de11ae8deb2e9eefc8b0a18b4361e70b1894aaa1a4fde6b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/el/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/el/firefox-105.0.3.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha256 = "ece05bdbaf75cde0d42d528f5445ee8d36ad312df58d2aee6f35d70f635ca977";
+      sha256 = "989621c666d3bbbf795e44889249b9ed7bdc5ca2064de047b8ddf433f347bf6c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/en-CA/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/en-CA/firefox-105.0.3.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha256 = "258eea4191b27d4d677769b0e9d24befc8bb186ab820265e6a89706469d4fdc5";
+      sha256 = "bad4096dafa44bbeba0d79a229b824237e27946dc5d2f1f638638a93fde19c6e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/en-GB/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/en-GB/firefox-105.0.3.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha256 = "72323eeef336612e706e200b0e4bff9e7dd6041a5f968810e274b697469cccf6";
+      sha256 = "b3b9e9e775bd0b1b5e2b2468142990f6f3766dbafa008c526d4df960157ab1fc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/en-US/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/en-US/firefox-105.0.3.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha256 = "99d277ca46e0f6f79a8b7f7b77d05a0f4d2aa63b6c582ff6f248984d87fb2c4b";
+      sha256 = "e334d4dfbe4be20e6acf42a5c1915cd326b5a1112e6465537cab6efe7ebae50f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/eo/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/eo/firefox-105.0.3.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha256 = "9c0fcbc3febed025550d4f1739a13a5765c09c3d79be15b2f58d935a09a14f78";
+      sha256 = "8549bfc0d781f02f7aba6ce987993594ce6a4ec2cc6cdd3726d4cbd5f609dc31";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/es-AR/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/es-AR/firefox-105.0.3.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha256 = "3cb6116afdeeb4a39e5d40ca31fcd2123266956000ddfcb5886c2a31c2596a8c";
+      sha256 = "83d9b40aea5209ff08200ec1c1a01140b33a3e462f6a092d6b398bb963cde939";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/es-CL/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/es-CL/firefox-105.0.3.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha256 = "2dee3c9d15841b7fdeb446b06de5638d0938f47374b91aa76da3f0c6ead516d3";
+      sha256 = "b72104bd3fe1841160694ab3f8f80a0423ca8ad5cb7053a56faf60a7f2c2aa4b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/es-ES/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/es-ES/firefox-105.0.3.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha256 = "0bec68bf87c51280895aad0f524780e62acbdd9227227634aff8431802f2536a";
+      sha256 = "fa4628e37f72412161e8caf1f0632d7b6de8b1b6fa0b24779a0304d6c164d893";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/es-MX/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/es-MX/firefox-105.0.3.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha256 = "dbbd6228aa426432bfd8772c3ef3ac54fd1f9c548d8b0472033f56b3f94864f3";
+      sha256 = "f06f9b25d5b819a632dc40129c13209fa4e4ea08f0c6b976c9d5e09655870bff";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/et/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/et/firefox-105.0.3.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha256 = "bf88a2d9bd8e1650342a06807c261c4d46d7f58380151bb4beb17416315dc7a0";
+      sha256 = "4266932d3e1cbdc8db6f9281903ca29cf677fda74643e852593fe328f121a5a4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/eu/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/eu/firefox-105.0.3.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha256 = "9635765d8b7ea51881a012298882e7f644ffcbe6b0d6b227db15cda6d568b92f";
+      sha256 = "c57cdb69028a40c5eb9e785dd160585863c3a7228141f04a514ef0d78483847a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/fa/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/fa/firefox-105.0.3.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha256 = "d97dd45457d806e5d9adcfb05ec5000469ccdc7d97fcb866f7d27bd693000985";
+      sha256 = "e66ab1bced7b570bf7e965cf77b7bb63664f9411eb82e2501d34e4a144654d7d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/ff/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/ff/firefox-105.0.3.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha256 = "d812c9d77ed85b6876ac13f9930799b90b74dfd8d1a7c48593aece3529913243";
+      sha256 = "3bb4733a58d696148210380c8b3c63a1e776a30b1c3a4f7863df450afb4781cb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/fi/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/fi/firefox-105.0.3.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha256 = "e6a50f893698ebb52406d837fe8de3aea1588477c65af7b5580c04d69d1cd5ac";
+      sha256 = "b7acbc08ae7e5c71ada03fba6697c897483b2868c50de4f685478397898a5f26";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/fr/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/fr/firefox-105.0.3.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha256 = "4567e8b6092b6a027ba50249244ac3b3c2ff5d3d2b00e9abeb0836cfbce2bd6e";
+      sha256 = "4fca40c7b2da51dc31e3d1e635db494f3709114a050bc0a0f48cdaa4d3d0cdbc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/fy-NL/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/fy-NL/firefox-105.0.3.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha256 = "375ddfcb709e820a568f3a3aa5dfe62b6699636506aea3045ba0f499d8163937";
+      sha256 = "ff99d51e8ea33c4bbe95b1f13fd306c49acf1f16896e380f23522637fe178ea0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/ga-IE/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/ga-IE/firefox-105.0.3.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha256 = "0fc745fdaad6978e093b7b736b9676dc830c6e60a924e2a095278b6a14f76ae9";
+      sha256 = "28882d7cb3cde4e5623bb97e2a5f1b5cd395f9c11b67d35419dbd07d6422d70c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/gd/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/gd/firefox-105.0.3.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha256 = "9a8aad8ca0baf54ef2eb0c77175c394c6f4aa676c51781fb78c6e5b00e407758";
+      sha256 = "d9fbc262f0a2bc8bbb4c9399ecbeb1d9da5f61bca4540e5a94fef64dd52c929e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/gl/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/gl/firefox-105.0.3.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha256 = "8979485ed7c0a1bfa950749aa3d291bc25c7f5aaac6563996a5b991e05989cd1";
+      sha256 = "97180c4a243258c13881559736babf28ec22b19db05fb7d1d4b0b3c91515a3fb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/gn/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/gn/firefox-105.0.3.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha256 = "1dce9550f3d2942a8688fc9263ffad3abbbd11545d9c29255924fe88e1cbf020";
+      sha256 = "1572f5d457aa28a8a9868f17f5228f01a5520b132c13729052004b73f56fd4d4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/gu-IN/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/gu-IN/firefox-105.0.3.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha256 = "3429fe9b7be0daf7ae039e00b7d16ca16b2dcdd77434575091c2deaa33dabbff";
+      sha256 = "3fd3724195a1050cd43a78dec568966f29c072e740add16d568e2b2ae38ba900";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/he/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/he/firefox-105.0.3.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha256 = "c5b93b8b0aa69ef0a9c29dbc81bcc532652d08a2891874c12d7048a475240b2f";
+      sha256 = "ec0dfa3637d47d6585695f22155f79baa4a698b1e88f75b3a71cea78d1d89d7f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/hi-IN/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/hi-IN/firefox-105.0.3.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha256 = "54d3ac7e94abab83b03b88de143523e56a6e0c85314c61b3c821b8145e49593d";
+      sha256 = "9b59e25246eaeda267658575a45ab84df76a3e45053303492eeb3bdfbde365ba";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/hr/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/hr/firefox-105.0.3.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha256 = "1bb9a4b332aa13786fa21dd23ba51b5faa69669fc41ba996b84979ec1d0cd638";
+      sha256 = "52f3ad9bca4d2d082d746f70014be9771b5c331920adec4149b713a05ea40186";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/hsb/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/hsb/firefox-105.0.3.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha256 = "d3edfbf7b52beee12fe098e20d4a76dc092f1bdb5717779f19a3ed58ace4c6ee";
+      sha256 = "2802d07492f7728d0c73c6e87a07f43226c69060e0e2f821d2c9e501b4af93c9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/hu/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/hu/firefox-105.0.3.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha256 = "47823efccb14195f7deafbe49021d2e9224852f5d87771ce680e05ed33927209";
+      sha256 = "9030c21d2c07924ef077269c112b7371e58a513385988dd7a2ffd4d7732092db";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/hy-AM/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/hy-AM/firefox-105.0.3.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha256 = "130856c658b356bfa8de750fd4e36f940a3367e4db368acdab0e071954abb1d5";
+      sha256 = "800752f83f6ffbdaa890b3193c3ed13d339acfd56aeee51dd8deb0146cab0e4f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/ia/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/ia/firefox-105.0.3.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha256 = "f6f99a21f73c43049f0935eda76b866e47b6d6e1ab0cb82464550ce13b06f4fc";
+      sha256 = "25d6ef5d14dcb9272c3290d6dba09f5a86b15cade172469e21d7c76e1c00f8cf";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/id/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/id/firefox-105.0.3.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha256 = "11155d40d29b241e4d10d3d71d11a81353498f40a33d2ec3e8a16ecba1ebb9b0";
+      sha256 = "642c33998da03b4b01aaeacce08dd5174816409559b40b8772cac23d2d59fdef";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/is/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/is/firefox-105.0.3.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha256 = "ef750f5c5fcca99fddfc6a28c5531211873770efdff403b0c4f6ba4ea6492375";
+      sha256 = "f50416330af1f0a441b7ebaba7e74177b15601797e1f62764ec4aa0f6be88fc6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/it/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/it/firefox-105.0.3.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha256 = "f77fabfe81caf68142429d8840f9c3a0c3532e7bc02d4425e3394801840ce607";
+      sha256 = "ffce6c4f6a74d1f377e59c2c7249eab9899556860e696cdba823335b103cb29f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/ja/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/ja/firefox-105.0.3.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha256 = "618404d115720cfcb75cb462179f648772c98cd78912ecd2a2062f7f977c606e";
+      sha256 = "26d31f2161974a66f8cc0b6f687e40e921d10f41021df957753a55ca943b18dc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/ka/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/ka/firefox-105.0.3.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha256 = "99b41e63b573b62fde39daee0af1f7c0ec6b93b30cec594691634e27f70cbe49";
+      sha256 = "b0a48857217ffea6a0ea457638295c22ead53912df1890ff751cf4a0576217a0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/kab/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/kab/firefox-105.0.3.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha256 = "447df815475f83c3b9215758948292d9eb093cf417897f4904ff4253ac3cb818";
+      sha256 = "73c2b31c6411f416a78050c6c1400fae21d2a4ba498d91ce5fdcea295be7d810";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/kk/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/kk/firefox-105.0.3.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha256 = "376a29caff8ab9382321487665b545ca97b9177551e368158176c9d50f5cf5e8";
+      sha256 = "399124d887a7c9c3ff0638b1f3f1ab831197d030985c41c5b8d90d1e76a9a899";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/km/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/km/firefox-105.0.3.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha256 = "86b08e8922c907bd0358d91ab19a5b5ef84ac505c33b9126eb4c4ce034107aba";
+      sha256 = "a9e5032a7ba4fd1934094443bbc936fbc33a3b347aa19dc98e2e1f4a199a9cd8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/kn/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/kn/firefox-105.0.3.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha256 = "d90f60352bf07cf3366f1a421c9dc7ae4c16b1ab7db3edc252eb884ee3f7035b";
+      sha256 = "9d8b54bb8bfdad388b3879ff30f36b71cef805ac7eaa60faaaba33a64ca8c16a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/ko/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/ko/firefox-105.0.3.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha256 = "7e5144713519d0b29451047a0946215117791641142247c1f90d6e4c294ebef4";
+      sha256 = "ef37cba1d8cf70e1d505d01a31536e0db078b84e3f38bc0e1995138ca3fb00f9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/lij/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/lij/firefox-105.0.3.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha256 = "75165203c5ba0c382818214dddfeb2ab94a6948f4c5c7d142d31c36ca9422e2d";
+      sha256 = "20fb0d20e33b85c54b4eb50567ccbb7d67c1431edf1325278ad97b45c056cba8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/lt/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/lt/firefox-105.0.3.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha256 = "6cb8920f924f8be2fdf6b8cef9113e4b539205beb24d5f5110712eef818ca279";
+      sha256 = "710a927eb3ce175d19a0d7f7bbf9252c3807eb7e860289219cf56016ed41b9cd";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/lv/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/lv/firefox-105.0.3.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha256 = "1e4e7622a97910462ba924109e8e0e6d35efcfbdc849ac3621d61ccd119a60e5";
+      sha256 = "30b34d3a9c9afcdfda31dc9a5e8459971936a19d436bd5862db14b3bb95858ca";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/mk/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/mk/firefox-105.0.3.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha256 = "88ab94691358f26a294da16f2fd51755bd873dcfa07c6ab3e5dbfefe4684315c";
+      sha256 = "7f0e8799121fad98150d7cf7d1545580bd7d93fcad14e578e789d2f03c5ab124";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/mr/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/mr/firefox-105.0.3.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha256 = "034d14b22d0258499863487b4cb693be23fab6d710f920640ede7430a75b0c11";
+      sha256 = "6198357f1be5f0399658146aac94eca90ede5d3adbd406aa601e3c23431385e3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/ms/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/ms/firefox-105.0.3.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha256 = "0b0162fcf05a7317f8f977b93b532f312460de0dab631376ee1b8f618c776ec1";
+      sha256 = "52c1cce6ced27b9b3d2a95b2c8ee68f3edd6d7aa9dc88b95b92ae826d6458565";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/my/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/my/firefox-105.0.3.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha256 = "d01e4b321b2193675ab28c689164ce13f83ab9d6b808419a82536d294a230d53";
+      sha256 = "4515e82eb618ce9ec75b4adf3a4d09bacb5c9c55cebe13eb5e2a4b1a75e22eaf";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/nb-NO/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/nb-NO/firefox-105.0.3.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha256 = "bdb9e0a86302a4af47c84342aec2c9987b2052e876f9b81a1df20165593ae30b";
+      sha256 = "29016c84832ed48e2d48c3d28c4d05f03baaa948b174a902727389cfea04837b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/ne-NP/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/ne-NP/firefox-105.0.3.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha256 = "5c79c03bcfb2f81fe3ad3bb530fb7181c86e8615a096fe30b4bd207a6da3e395";
+      sha256 = "f7ebdd85ad39793bceb7a3a4ceaaebc2189a82e03a2ab2feb50c2c925be4d576";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/nl/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/nl/firefox-105.0.3.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha256 = "63733782d97d22d00abd3f8ddf82da5ff5d9313e2c5c56d7f767d153fb9ff3ec";
+      sha256 = "a8919d7112d934d55e14937fe7dc0718062fc3af24a85cb9790ca002e07fd9b7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/nn-NO/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/nn-NO/firefox-105.0.3.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha256 = "6e7c22e2b4bb9edfeb9936dad41c686bc27b3dec0dbcbf779388fb0bafd33e7f";
+      sha256 = "fbf06915fcdba83605cb1651f6e91b1bba5296b7d2e71ad7cf2e4b0262829f45";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/oc/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/oc/firefox-105.0.3.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha256 = "071afc449c6e9a2a2168c5ffb520a23970f95c8c1b9218ecbc36260d60d9690f";
+      sha256 = "49e373108a6ab7b632179171e9f98c6c2188e863894bee4f702a735b493ff416";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/pa-IN/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/pa-IN/firefox-105.0.3.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha256 = "accfda66ed9b56182a95459ee2e0dacfea2991d47899826eeb1df89c390ef837";
+      sha256 = "78c3f93f209260c4294ac128aa65c4a29a8acbf338725091348f049061e162ea";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/pl/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/pl/firefox-105.0.3.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha256 = "de2fc27c76605ed73b4685debcf0b6673bb0654282437b88df60a4594ff069bf";
+      sha256 = "b58fe040c0a127e095b15ec3e68471f1765fd7a9626972b7312b74f054b5b8c7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/pt-BR/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/pt-BR/firefox-105.0.3.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha256 = "cba9679f14dfef7fd092b38d2477a4f48ce23947798227ecdb7fc8d2750e014d";
+      sha256 = "43b01a5e09a1f19f61b3cd86a5baa88ea5d02118562049a551c0aeae08c2b014";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/pt-PT/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/pt-PT/firefox-105.0.3.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha256 = "b04db51038bcdfe8dd6cc7d237f12a933d671c4f591742f4825f03e6f5675222";
+      sha256 = "10d0d5d4a28d13d36dceb8f9a99fa6fba97dcc685afbe60ecba9a07dcf37bcfb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/rm/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/rm/firefox-105.0.3.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha256 = "967b15befae35083f0b1ded69fec4deb8250211a9b099df76a8e689df2ccb0b0";
+      sha256 = "f9322f3568b1669ae7ffa17d5fb48fe8da0715e7c85e135638b8113365fe787d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/ro/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/ro/firefox-105.0.3.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha256 = "7aa8c11f8e0c2e54b7c25e3d71fbe3fa8f4e36714e42a3cc0cec8167cdfa3691";
+      sha256 = "d727b95e668b4e09d8c393c1af3318ada365a579392e4591413107fde51c7bc6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/ru/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/ru/firefox-105.0.3.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha256 = "b934733462b2dad1ff962709b6597e7827cc2880041f20b9015f8f270ca8df42";
+      sha256 = "89e413c2c59ad990fa4935f2a67ad399501d05f974c012a622e3ae62a38358ae";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/sco/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/sco/firefox-105.0.3.tar.bz2";
       locale = "sco";
       arch = "linux-x86_64";
-      sha256 = "49a09268d03a2d92649dcddf34b3d0ceb94899529da1c15249883e3ef8c30ffc";
+      sha256 = "8ea888b40e086ae5be65fb75a257d63da086a0456373d8a974d0717fe16a2e62";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/si/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/si/firefox-105.0.3.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha256 = "fbfe9ed75eb62b5c3404c99228ddd9341fb9a0ca873d03592061952b0a6d3864";
+      sha256 = "7c4702dc16276c0e5b8ae9bf6b0c9a73aec37530b0948785a8c4ae4c181e4505";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/sk/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/sk/firefox-105.0.3.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha256 = "372d7fb0cffa5f89e2a9e44651f7a07dbb29911a9d5806809bf5db7a21005b51";
+      sha256 = "3a154f41965d1b18188796ff0df0c6c2afad1a331e4321cb62ee2feccdb44fbe";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/sl/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/sl/firefox-105.0.3.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha256 = "f6859b6e603261a3db82b368400d46a76bb10b9c0b3ce5eb39d493e41b534e6d";
+      sha256 = "232b2f0d5b7748ddde518e0c3899a9924ac7fc32890535e4d7163dc45b1b1b1e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/son/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/son/firefox-105.0.3.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha256 = "0891be0acc6412889574416f09642ffd344579185a602384ae0bf1d82b43cd43";
+      sha256 = "25232a28a0eb14a7cabda3ac3edd87a4d428db8bd069b95565aa1f744f0c5df2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/sq/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/sq/firefox-105.0.3.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha256 = "4f13416dc34f59a84043ab3dd018a4ce6d0f20a90458f637d836e4048dc9852a";
+      sha256 = "25f2c0097e041e1b7eb160f18e0dd03e4e7cae01feda344c80941ccbc312770e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/sr/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/sr/firefox-105.0.3.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha256 = "47b49b18d3cf2f9cd1fe81b3e13386fcf188aff88eaea478e161f674e19d017e";
+      sha256 = "cebb574e7931deb6a3f5a9eb23bfe011c0885bf2829806f73cf06646ae89992f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/sv-SE/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/sv-SE/firefox-105.0.3.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha256 = "af5052b8c4167b0f95dd0cd8b0265b67c4a3aba52c7b762424d6ee6462e783a1";
+      sha256 = "a57e0bbf14516a3ad69bc5cfab784063cc3593678535cdeddd96a8a7a6de44a4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/szl/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/szl/firefox-105.0.3.tar.bz2";
       locale = "szl";
       arch = "linux-x86_64";
-      sha256 = "51dba44f903035373235f8b1a997387832e0a67fa74e1fe6d14ea44b9a363744";
+      sha256 = "9c6ada967213b76935c675947abadf7b5be106a5f6e455712d94a7ae5e6e76db";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/ta/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/ta/firefox-105.0.3.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha256 = "0f6e7b5409bd90a7120577480188257d590996a75a6bf11dcffc1cef7c0df749";
+      sha256 = "15c31dfd3d80fb66c334a4a64030ba649e52768def483b26e5db22049dfd4d39";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/te/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/te/firefox-105.0.3.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha256 = "831e373a64e2bcc0f9b60f18ac8e3f5a747e1042579bfd03f5d76d3f04f890c2";
+      sha256 = "97e746e03c1f90ed1a0ec8ac1e072af0d3dc59edff99a81c4b26ec7a566901c1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/th/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/th/firefox-105.0.3.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha256 = "3e343b11ab2a93557c86daf5cf1a789154fb53fb7090e33225dd04ee30e9acd5";
+      sha256 = "eef68d447b21c14ee34a383148ffa43bb1e4b57ef73d049ef29d4cfec12edcd4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/tl/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/tl/firefox-105.0.3.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha256 = "4005e0e9a6078bca9c134862335d0d677af0cbd834a8e04e4720f8c2b59a4dc1";
+      sha256 = "5991f5a368beee2deb554a7b0132361ad156780fdd6cfff63063ea054ab0e0a1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/tr/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/tr/firefox-105.0.3.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha256 = "2ef97fceb2fe522ac83dd7b4db509e248eac83e6a5f7fab20064d3ceb4612d6e";
+      sha256 = "ea276f0f853430b26ffea06318e233ca7995235660700015a253c71899d7386b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/trs/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/trs/firefox-105.0.3.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha256 = "131ce0fabb180156f04854fd3a78cacd7a07b8c45b78d219261cf76ad51a2f42";
+      sha256 = "07f8aca6d6ceb32a9d862a6cef92013167e618915e8b28501748c85bc312ab4d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/uk/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/uk/firefox-105.0.3.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha256 = "a35637a2633969dea796cd374aa0cd684661ced36ce8cf118514072b08e4a325";
+      sha256 = "1e94f245aef54002fd7ba55154f5a68db0149b2ba9ec7e63ac36df67c0246c35";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/ur/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/ur/firefox-105.0.3.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha256 = "24cb5ca13af2b770b0ce64cc2244b86a57aa70df6ce3d6234bd03527f72beb93";
+      sha256 = "73d678e08bf52bee53ca428406fda8f7148208c3c15518bbc77cae3090f2e44a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/uz/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/uz/firefox-105.0.3.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha256 = "73008ac9452f1dbfdafcfd233a4dbd3fc2212030bbea5f1bc1e3efe8c291a4a3";
+      sha256 = "8ab6a0e67504679f3dd6c9e30a33db9ab18c13bbe2d9cd79e780b638f09cd74c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/vi/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/vi/firefox-105.0.3.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha256 = "990bd18ca8bd08d65df488e728d434edccce43a93cc1253baa3bd8d67e9ede40";
+      sha256 = "96208b8bc0d7420106132a2cb5d97751ec7ace98d22be3503d2ac6deb29b4b1a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/xh/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/xh/firefox-105.0.3.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha256 = "9efe95e531a2b42d4464d75bc2d54b1bed4830e548619aa23fe957bd372c663d";
+      sha256 = "c40350afdce9a32b9fe962a773f4c3c091c1d98fd62f1a01d5a306bd85bb4454";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/zh-CN/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/zh-CN/firefox-105.0.3.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha256 = "03c12d452a4bc63f299f02868d79be87ee0b04ca76cad724964e11bf20bfed90";
+      sha256 = "4223011139dac7e70991f986dca40268ebeaf2758ca0b15278391dde6821df9a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-x86_64/zh-TW/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-x86_64/zh-TW/firefox-105.0.3.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha256 = "32c5e7ef19452f315d25c853c9bd24c34e67bda934221e2fe5f958fa789fc0e4";
+      sha256 = "e151e82aa0ffe00ab48e9b65159ca7c5fa678c210157be70ce96fa4574f9c7db";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/ach/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/ach/firefox-105.0.3.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha256 = "c17485b51c8829882e8fb50bd4a0ccd6419ef2b4dc15fa7a15551ff45def53b1";
+      sha256 = "13dc94158502eb7ea705d6bfcb03a5b12118ed318631cc9dbdcb5f9fe16af827";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/af/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/af/firefox-105.0.3.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha256 = "d12603bb7925dad96760de5731c895d287af7b05b1762eaeabab69d5bad61837";
+      sha256 = "761d6c44b4abadc14f0b0eee2ab791be000db4bc7ab3f9794c0063c25de29390";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/an/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/an/firefox-105.0.3.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha256 = "1140e17d0775c8e6ba1fa485aec35b9b7ac8434179a3faebfcd1e1cead070d03";
+      sha256 = "e220611ecb3451e2267fc72e1e30632515b9c6422713de6b1d8bedec676e30ec";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/ar/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/ar/firefox-105.0.3.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha256 = "89d1cc5e45444f7aeb35e5fb094a6be4efb80d523cd0209188c61f10012102a5";
+      sha256 = "7a647d8bf52809ec99457b8f9b30883b7a896a427e510af030516179b5a5d2fe";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/ast/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/ast/firefox-105.0.3.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha256 = "6bca591e2edf525e20d125e0f3ace831ddd217135537d958c070d2e00b852c26";
+      sha256 = "98bd8e8913331f45d61c8c9bf338bf15a0029c9d555e5eb1fa0858afcf5d27fc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/az/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/az/firefox-105.0.3.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha256 = "f9eec0db663469d85e4f665969143a37860bc1043a3c5d83cf330dcafb1682c0";
+      sha256 = "e878e8f4b6f932b7981d55f4c5af811b792506501571a7d5a36f46fbddf6b077";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/be/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/be/firefox-105.0.3.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha256 = "5f792f86c5fbb601ccb769818ee3755c01fa443e87ed8a1d7df7388bbfb1fa56";
+      sha256 = "cfb65a329276f490b6e340f7d2702d88f880ee275f96404d393c61cc770e1da1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/bg/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/bg/firefox-105.0.3.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha256 = "32305448e9d4740eb64e41f073e498da9013b90559eecfc619d1476d455c2c44";
+      sha256 = "95697a3e618f092986a5a5f7879c964bfe84d52efb5db5604de6655836286246";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/bn/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/bn/firefox-105.0.3.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha256 = "f3244f87fac769e054774e1ee6a5e72873fdfc08189f9e7d1fccba63cc75fa2e";
+      sha256 = "3c575ef6538b90e29d1cdb4c3717e7ad20a1ed324d4feaf6e9862d5574bebb26";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/br/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/br/firefox-105.0.3.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha256 = "2cd2a1b5b46b52470e14105960593da5da9ece3ef7cba2aa0157691968820016";
+      sha256 = "89f19dffb2b14b80209367c7788e5d6a4921478c722e706444b9a1cf5903ff00";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/bs/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/bs/firefox-105.0.3.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha256 = "661d4dc2bc6e093e2c8221f626d7fce7a66bd1a427a3af6582959e0073db8dfe";
+      sha256 = "4b5958c26babef5764ee8860c5b08d4406ca0e8d06ca226d71ae71550a299087";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/ca-valencia/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/ca-valencia/firefox-105.0.3.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha256 = "09c9bc54fc0c5b3527d5e2325d6b9b34f6dfaffe1e795efebd4d353a512c4f84";
+      sha256 = "5c2e9169837edacee5d3c482cbf45bbd7bf51ff90e8dba1ec01c6e82f1d22744";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/ca/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/ca/firefox-105.0.3.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha256 = "930d3dfa38d78297eff4b49359016f9c3db05d05046333b39a63d22b87f38383";
+      sha256 = "7ed89f9c281cc803dddab5ad62ff47a81ac1f0e4484cd53fe1b2824ed2504943";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/cak/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/cak/firefox-105.0.3.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha256 = "c8b9108011123ffa9f67a10de3b70384b9f3d4a886e46f4779be8220acc33a68";
+      sha256 = "b55ca4396ced578f8c2d544a2ca0cc8661c46f32af107356834d7c8acc9fb870";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/cs/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/cs/firefox-105.0.3.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha256 = "5f1ff971482d5626a5e4f1e77140cffa508f033049eab5b5036590e6ae8a4f81";
+      sha256 = "8afdcc9d5b1812ebb93644690da9f796c790b3f6c2a987ed54acc27b84be40a4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/cy/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/cy/firefox-105.0.3.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha256 = "af3352a2fcddda67ba32130f61209fca0b40ff04e1b68dc285dfc55be913c704";
+      sha256 = "dfda2d78cd1a0c60bb7e66527b11df2ff86f5733a3b7516b86c6cc5c06357630";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/da/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/da/firefox-105.0.3.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha256 = "498ff4a5713bc063d20b3cf8218e33c33599a7ea663f06d8404a6380cffefbae";
+      sha256 = "3062b6bebf9430f3181fff4e77b6b366b462048129b9d7726a3f4ae280710543";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/de/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/de/firefox-105.0.3.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha256 = "e870df16f1af88255ff245a1becdf801fc79da9e0b862677aace5033aafbf250";
+      sha256 = "5ec53e0ee55cb8767ebfc82bb9795717ded89af7903af76bf0ec78dbb4335772";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/dsb/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/dsb/firefox-105.0.3.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha256 = "31a1d0c69e7be52417d5ba9d65cb1289a93b950966646b4bc53bd1676db0af49";
+      sha256 = "ca56d014fa6cc2af72b170685610863766b0da74aae4470812cd8814aae655cf";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/el/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/el/firefox-105.0.3.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha256 = "7e75ccf8b0259e99e450efd6e05fe03ffe4be200b2d67ed1c095f5bf2db01bc7";
+      sha256 = "f31dc7ccf5865482376cc216518649c88b0444c116abd1e4a0fe043ede4026f8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/en-CA/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/en-CA/firefox-105.0.3.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha256 = "0536023b7b2b9d9bcae78edb72851043b0be972d06fb6fd3767e2b877f24fb91";
+      sha256 = "97d5cfbaa7e4db0a6990255d14c445e2435930496d20681ac5640c35fb10dc05";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/en-GB/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/en-GB/firefox-105.0.3.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha256 = "85164c418b3e48b5c0f0d6203900c0ce8cc17a04eafeb862a24b0dc3a5bc587a";
+      sha256 = "4f856283545699764d0e5413e2451bef76e3081df81bb895f39649aa02346eb8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/en-US/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/en-US/firefox-105.0.3.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha256 = "69d823ec54825b1965280c454dbc7a63757080a4e5de72c6e567e72531ed895b";
+      sha256 = "ee32c1d9542ccbd3ef1580e14aedcd4d826e9798ab3d2d92ad66f2901bc1fc52";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/eo/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/eo/firefox-105.0.3.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha256 = "abb83c2758cac013bf0cf6fbbf7acf05386567f55c571054e1b6dea8c0c0e43f";
+      sha256 = "64e71a8db62a60af6b5d99aba3f679d14bc9c24e484cd8d90cb104c6a47c54b6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/es-AR/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/es-AR/firefox-105.0.3.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha256 = "ea93982ba143edaba06936c16284b5eb001c1e5424462e060699a3295119b75f";
+      sha256 = "e11588e20066b3fd9a937e61e3d9b78910360ea7f2a73456108ae273e6cbef30";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/es-CL/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/es-CL/firefox-105.0.3.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha256 = "aa92a0970c62f9e7d1909d643453986e41ea81a321871f2c8128ef916a8e1fe8";
+      sha256 = "c30a01b1a1c39795276337b14e07f6e1fb8538abf09c047aa6f9da45881f4e37";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/es-ES/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/es-ES/firefox-105.0.3.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha256 = "06bd1d53d60a276a22a840d7353bfa20c226ac58cd7c465fb06c9fe177eb420a";
+      sha256 = "b4874ecc37544358935eab9b10ec0b64f04d68f02fdf65b72c1eb5931abeeb3c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/es-MX/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/es-MX/firefox-105.0.3.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha256 = "7e5ec5011643f3cfe8085c193b840fd1de8e369eb1bd67eb007f4341acac9487";
+      sha256 = "fafeff66e92255a41b41c747b73b8f0ac73792570d0d2b51c7ca1679bdaace48";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/et/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/et/firefox-105.0.3.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha256 = "018f41bea6254ae1385897945bf751983e0dc817c9035f9079840f67f6af3ed4";
+      sha256 = "7332994f9c21977fbabe0f503dba93eebd8594dc1ac3bb9368833d1d6f3a4c5b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/eu/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/eu/firefox-105.0.3.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha256 = "34c3f772a5fa16f80922728f11a11f96c6b0b2f7c7bb95a6dd2396c70fb39562";
+      sha256 = "86b8eadfc374c00b7ad24b1307bb39b312a08262ffde8af1d10d5bfacf1f0f4c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/fa/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/fa/firefox-105.0.3.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha256 = "2b4021fcdf417558767f703505b4b1ad7e70293db27198def80c45988b3429f3";
+      sha256 = "f320084ff16f36591b354a8d2d235eed4ee62826626d8e1540e4a89ab7bc3cf3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/ff/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/ff/firefox-105.0.3.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha256 = "9b1b52de7649d6852379e96324fa7e21426c73c6e1b8eeeb6cf18bf639b41c7f";
+      sha256 = "a5b476cda93670e727a464ecc4fe28f832b961393a664422b8e1ae562ae55586";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/fi/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/fi/firefox-105.0.3.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha256 = "b7a225e82b76f4f16332463937303b1a3a8c22007033393659ab1daa02d27722";
+      sha256 = "a1aa4a1664f6ef40d03889e3ff9b9f4d32d349d711ec8c3ed5d1b22ef3de839e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/fr/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/fr/firefox-105.0.3.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha256 = "7fefa49faba7d92119f76d662d041428f883399aafb00331ffb97f060da2e32d";
+      sha256 = "043cf0ed02dc1bc0b661290a542a3d68989a483fada922a7c8878ade1027e16c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/fy-NL/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/fy-NL/firefox-105.0.3.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha256 = "9550b148d724d2629fe3907c7d3eeba143a2c50d23ab14494f55da33e31454e1";
+      sha256 = "327a189aeca03795337c89a1a8b3c74f4befff03f3f68c08c7086f4a663f9e55";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/ga-IE/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/ga-IE/firefox-105.0.3.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha256 = "5ec814aaeb6a430b794df8113d9481d96d97912b542f51950dd1c3c24a5cf220";
+      sha256 = "66fb53e02ed85e55c9b33ef75bdbf64d6dfefae995428f1af994a36d47f5f049";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/gd/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/gd/firefox-105.0.3.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha256 = "227fddc59c3314ba62ac7d13e40f7c3112d99ae2a3d0676990329fc4d1874e1d";
+      sha256 = "7841ade74e3c1ae03a7a5bdd42e0bf3d0cae84d973ebc63d392e28f94abd592b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/gl/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/gl/firefox-105.0.3.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha256 = "5f0f25b7ad58772e4948ad1a72e01bc1f2f33a1b0512954291c0c63c891b950e";
+      sha256 = "f36796fb54015075c0ccaa62d18f1375c5562f4aaf77d57432257e3472f4f33c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/gn/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/gn/firefox-105.0.3.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha256 = "e5dd4e06fbd220f1a21c471ee38e6653d38a303b2f5564b1e00f8eb35a3cf303";
+      sha256 = "76378aee5b9e08f3dcf39a274b22d6c9a5beeb425ff3d3f5a1690496688d5472";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/gu-IN/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/gu-IN/firefox-105.0.3.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha256 = "181024bdfae07111738906baf996fe8faa4041b872804e725160d3b98b747fe9";
+      sha256 = "e8c0e4e369e7921f86322988fbb90a1065548054d2523d416e05d153c1da9d29";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/he/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/he/firefox-105.0.3.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha256 = "8968e235b288da41c7896a2d73574c7f8f018f0b0348c1e1c20626a3e29d73e8";
+      sha256 = "3009c00e1f5667a90f68296a636a2ca854899e598f533c458a086657291974e1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/hi-IN/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/hi-IN/firefox-105.0.3.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha256 = "4d57c54d40f965169cee2023afefad8dded92e2695e920031b95b28e98d04336";
+      sha256 = "22de9e232b13211a288df7591a9092da08097424d3592da51cc158420df55004";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/hr/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/hr/firefox-105.0.3.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha256 = "f7d5493712185009393d83470488bb3f8610132a6166d13ee1eb33d992cdbeab";
+      sha256 = "f292e53cf42b508dbd1ca6b39909f4596a25adec924b3b1211cc0c8e77d4d392";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/hsb/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/hsb/firefox-105.0.3.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha256 = "39c333ede996d3d678a8673461072c5f25732fef4d39629df2a4b85912fd3b04";
+      sha256 = "9ce8fca11383bf8892f25f4427da0972e9d064e6e454724a88cef28d8d63fcf1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/hu/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/hu/firefox-105.0.3.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha256 = "1f30c7756933e397f8817dafcb0c3265cde450720d3915e01374918774cc626c";
+      sha256 = "43e6997bf1136e7ceaf8aa3aad29f5bfb0ed7f188a2f1d60ae9c6d0734b83dac";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/hy-AM/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/hy-AM/firefox-105.0.3.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha256 = "481d7b3a31e3a95e12f1fd73e32da4ef7be1b1de5c24cf13779cd5b8de600216";
+      sha256 = "1767835b4c87f056cac8c92ebd871381847b92cc5b8389c98b53747b036865a5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/ia/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/ia/firefox-105.0.3.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha256 = "9472b0cab6807dd844aca41bb5e4cc041fdbc414e902418192271efe6c6051ac";
+      sha256 = "6d6c8edecdde5e7b9f3b29707bb185e8e2c74955a8353eee3501259e29d170e8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/id/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/id/firefox-105.0.3.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha256 = "0d1573bad6adf59a8c738f5d841fa68800e24f41c1fdeffb2429e899df4e3ecb";
+      sha256 = "6c45b503afd145f046cc75b21c15454e9dbdebb6ec0acc72620b36df48fe4d63";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/is/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/is/firefox-105.0.3.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha256 = "b420be8c79d1ec72e72d127c439a8828f5999c7d38e3781f99c68b1a64b8035f";
+      sha256 = "1bc10eec344890a2b7965d78fd7c1075b55f011e25157d12b5fcada24c1438be";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/it/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/it/firefox-105.0.3.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha256 = "2bf3cc8b4ea09af4acf9ddc8aa0028ac0166c94ac12d8202e2db17b512e4fffb";
+      sha256 = "eaab133d00e207eb82c92279614ea981f721c181673acc9d7df221078f935c76";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/ja/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/ja/firefox-105.0.3.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha256 = "666b5370f9d37434fc43d02904a2f101571611f5a12ebe7ea90f689dcf8c8b81";
+      sha256 = "8f440f3517c88dbd760bb3d9772c664776e1531d3da99bc1c2d29f1c9a0d60e5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/ka/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/ka/firefox-105.0.3.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha256 = "f2b12e230c3ee6b3320508b192b4e3f427d562fe505abb99bed913218588bd74";
+      sha256 = "13e4a15576c5b1251a494187495549982fe3a9e2953a9787f61da3d7ae45cee0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/kab/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/kab/firefox-105.0.3.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha256 = "b0a6a1e4aff4f340c1fddf2bde03a0e56397bff5dabaeea862f57b007f14cdc0";
+      sha256 = "d691522589df270c1d8c11bbccde65912a927c21b1e908424d7ee27ada5693f5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/kk/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/kk/firefox-105.0.3.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha256 = "783865df2e7095fafbcd6edde3e1dc3470bb301d625c0315ff83b293534eb263";
+      sha256 = "8927e2a173fbc3550f7fa1bbf10b7f279fc2230c82923f8970b067c3a0f03c09";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/km/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/km/firefox-105.0.3.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha256 = "06c25152dd3cf32e89f5adf526d1f9ad8ce5e798ad6265b98b227d400190c617";
+      sha256 = "3ebdc47b131615c763bf2c70d5227317e83e9eb29f99e8de5d06728217c2a7c4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/kn/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/kn/firefox-105.0.3.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha256 = "7a5bf4c31b625c46ebd82a4db8347e68e031892d9c9126c711ca43df63fc2649";
+      sha256 = "e6bd0cc5005a4d940e435e45f8da1f7e9ce77967b17eb670b1a249d286bb8899";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/ko/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/ko/firefox-105.0.3.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha256 = "a0780299835f875bedd0fc1908959817d27ae9e8df0854d762c09da0fbbb70e6";
+      sha256 = "2183dfbf8f7326e8d7032937e20a07d40b945a2ac356b3d52284c7f86627b9e7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/lij/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/lij/firefox-105.0.3.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha256 = "636067354e25e0e88d2b5b679f4984a3cbee6a36ef360bcce77a4cea20993748";
+      sha256 = "ce9a749e34524f4a794e0b9f16203c696387f8e50772f4a4570cee7aad2d4f70";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/lt/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/lt/firefox-105.0.3.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha256 = "f8643f2956b44a9f4127867154ad4e6d1924269fdcfd21a8e74b329d96d4a706";
+      sha256 = "698b1c07e987b982ba79219bbd0f6520676fdbbff5deebb2d61e63b84f824545";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/lv/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/lv/firefox-105.0.3.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha256 = "e8dfb8b33801ae7445aa43b767a9f51cc220d59b07f1c1367457653ac738d272";
+      sha256 = "8f81574c7bbbeef860394442563735659043f9037bb1db2d9b8f4e861b3f924f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/mk/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/mk/firefox-105.0.3.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha256 = "965030558d6bc43c8c07c32d7ac93d35d7d9962396c0e2b45d9a8499774a60a8";
+      sha256 = "488dcef5415ad5705710eea19fd5fa998d1a6a4b84ec8575cba5b3ef7e1f9785";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/mr/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/mr/firefox-105.0.3.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha256 = "2763857de9bc8fc41e01fbfbb63a479672fa38cadee59ddad514661bf345ce72";
+      sha256 = "3fdb46231269e6980a8d0e255053537b6dac9426eecae3e275fbfe0e865d3fae";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/ms/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/ms/firefox-105.0.3.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha256 = "0cbc063cff1ad5718028a81937280486feee3a63aba4fb13224a2a10fcddd561";
+      sha256 = "13f3b1b733bc56f6c74125d41e31fcae26ec100b1e809b60b123a7c7cc7245a6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/my/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/my/firefox-105.0.3.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha256 = "d2adf75fc742fa205f1493a6b65d0646e83e942c348ebfafe385e528e721d71b";
+      sha256 = "6220591b94ee888d0923714140afc9bee16bf3e65354853f0064e1d532e96b7f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/nb-NO/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/nb-NO/firefox-105.0.3.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha256 = "1464a6619f1cceb564c1e9f32ae8b5cc3e8a9ee62cbbffe181226698c5ded161";
+      sha256 = "44b8a4c53c4eac3b5a070aed067edf3cc5df016223a2d7f23a05963906621c0a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/ne-NP/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/ne-NP/firefox-105.0.3.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha256 = "0ada42ddf96d8288bd325f99aaf91fac6779922dd2117fc74d9034112a1f985d";
+      sha256 = "58c284124e69cb968df0ee24ec3e675298383a77300135f762a7c4c69aa90927";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/nl/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/nl/firefox-105.0.3.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha256 = "ebbfcdbab8ebc80dfb15eac0206efd68e559754fc1bafac3ab450c564ee1e8c6";
+      sha256 = "43d15e1bc47e0353f10afa0b4b1ff78019fd1b9b94801f8c19366c2e4855c11c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/nn-NO/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/nn-NO/firefox-105.0.3.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha256 = "fdaad5508051c682a6949daa0e36ec84bfea17f016d24b2d2b93461b6a85ca87";
+      sha256 = "6c2e14754de59c46407a392866d459a0703024eba02ca30c85d425f616915f41";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/oc/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/oc/firefox-105.0.3.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha256 = "eff46408202a97bbfa1885aa6a76835dfaeb33d1892f1294940d696d432c20c5";
+      sha256 = "7a5be45cf9ac8cd05543c0176554d8a6a79746b4ae64241104217a1606a5378d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/pa-IN/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/pa-IN/firefox-105.0.3.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha256 = "840fbea8544d6baf81241c1b7a7d23560973ec3677214836a20137338cd41c33";
+      sha256 = "8ee00f57db739bfa281d9ed34cf098ea454cb7daab987af44c6899a19483bbe9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/pl/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/pl/firefox-105.0.3.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha256 = "7238903aaed3625786dd315084238cfed31aace7a48dc19edfb40714b8ef8f0f";
+      sha256 = "6ff08d1d2c99c3fb219608420942e652340aec3d9173fe9dca8d19c0c9e23179";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/pt-BR/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/pt-BR/firefox-105.0.3.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha256 = "75d5374dce1e4a6e25317ea050ea8819e8b855affbf306df2213822eba743c1b";
+      sha256 = "8af52fe74cea46431a52e3b25fd1117ab5b0a3ca6a2f98de6a1b3a4aed934157";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/pt-PT/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/pt-PT/firefox-105.0.3.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha256 = "1f1cdaf6f3909558a38a4716539166f7e237c54485f4e53b6adc2aa25fff7f5f";
+      sha256 = "f5eb2fe6f79566fdc15bc742889989f486c6a1e689fa1cc66bfea6a1226606d5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/rm/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/rm/firefox-105.0.3.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha256 = "bf261fc9821f42901350982452e7ef69f0cf94fb4b4c3a8cc2e6a39611ccf4a7";
+      sha256 = "9f3014f23a3e6b5705690c3e6191139a9a7d2b154061db9e426d3addc75e173a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/ro/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/ro/firefox-105.0.3.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha256 = "9f6ea3fb9af5f0ae117129548a2c6f3bba28765c103558756f672ded6bac9e78";
+      sha256 = "2f0f597bd12f1a4829812ef7d37b385304e9b4f34640dcabb75e3e57e1533dfc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/ru/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/ru/firefox-105.0.3.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha256 = "933893a72cc90061cb0bf0a4efce8a8e5694c648201728fe2749612fc1ec2a7f";
+      sha256 = "42aa24a51d8195cd5b775985e4649bbb90b09881c8079efb67c9e2c98981402d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/sco/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/sco/firefox-105.0.3.tar.bz2";
       locale = "sco";
       arch = "linux-i686";
-      sha256 = "b67dde50849a7beb29bfdd57aea15dc78a1e53ebf511a1f96a7fb35c0e6532db";
+      sha256 = "b427a10f867151eeef63e1c688c6ca8f8badd01fe6bc5679a4c7317187a63c70";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/si/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/si/firefox-105.0.3.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha256 = "6063bd9e5aee98e3f709127ebc2dba8c06b6089461983c3da621bce197f11d11";
+      sha256 = "e2998353d246e09ad103e8996f5dfa09fc88ee8bcd448519e28164caf53820bb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/sk/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/sk/firefox-105.0.3.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha256 = "3fdf0d10003878d73a2f5d0e07f7dd63bd9e7e363c039e200c5b2628edbf5343";
+      sha256 = "6703272c7c5b82d17f540851ab8dd0bd4e22dc53bc207378e26f7ac980456df0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/sl/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/sl/firefox-105.0.3.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha256 = "008c46056e4d03bd31216c818858dcde07adbf3a7b87c273196ff8ac22e5979b";
+      sha256 = "fdef0b818d06b40ef8afd5caa2f1c7527fe5ddc7404171913b0523e30bc10d4f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/son/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/son/firefox-105.0.3.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha256 = "3bfa44ec693f9bfb1813316bdd4f5e5be0c76dab938248fd4cdfb3259f22d98b";
+      sha256 = "bd776e170be9f81a05d6257252ab8f918463ac5b06f4ce34014471eb89b3e0c2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/sq/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/sq/firefox-105.0.3.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha256 = "070e7162c2ed8daab7adab7d08d93adda8d411a56bc8ca9d32daba7a333b4873";
+      sha256 = "18c9106995e2fc3196f095fb682836fb1c2e934de91324a61815854130ed2803";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/sr/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/sr/firefox-105.0.3.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha256 = "df51f1310cf61c087c128999fe09c5cac56141a9ab7c0ed1faf9ca41992af756";
+      sha256 = "a8ff60a41173b262139791ac5675a90864f6fe9dcd885095dd3cad40ee830463";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/sv-SE/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/sv-SE/firefox-105.0.3.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha256 = "df05aec1c9a34bc8392717522535f9b83a5adda4e57dcbfd9421b4f71caa2928";
+      sha256 = "6e16e619a700c460807662aae598c2733e8c4d45be4dcb2a11f17afda9fcff81";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/szl/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/szl/firefox-105.0.3.tar.bz2";
       locale = "szl";
       arch = "linux-i686";
-      sha256 = "c39fabf4ae4d38411a5054365a97440a2ce14dc0aabfd1dfeb4b32c70e5cc84d";
+      sha256 = "6f6e39fe204a09cd8b0531cc713aa001041f17091bcedfc6ecb12082a56b87a6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/ta/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/ta/firefox-105.0.3.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha256 = "e3648edda3e89e46c69cbbfa64835d7d1eea0df3cb34c224d85b21b9bf2de0a9";
+      sha256 = "6a096797f2728a3e6f7f62563c8564c3633c792dd353314cf9fd93ed27d8640d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/te/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/te/firefox-105.0.3.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha256 = "60e808bd5cc3d7e95c5815bf0718c7dcfa469f114485636abcac8b9f6f4598bd";
+      sha256 = "2fcc10e8cd8605f66ea64434c2e86ca5038537f62dc0320ac7fe2a5593758671";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/th/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/th/firefox-105.0.3.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha256 = "5327332fa0fa7bb2b15553274f4867158723f7f778fe1b76e47e03b8286fe8c4";
+      sha256 = "b84a5d5a1cbf6cf96e8b58cce0ffa4106f495893bc3ddc3f0926c42977e42b16";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/tl/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/tl/firefox-105.0.3.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha256 = "417ed820ec567617b79029cc56572f82d68a54a194e281c0046329d247cc8321";
+      sha256 = "29110abcd66455ea69051a6bf67a2a6d039e83117643c96eb3779c9642bd913c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/tr/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/tr/firefox-105.0.3.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha256 = "efadb1233f78517063d5ea01992a2e0b87e6bf0b7e059ab93cea9ec56b92fd5f";
+      sha256 = "f63eb01f58376fedff264bb5b928c133b2dc5d1fe59ecfe1968499497caae6d8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/trs/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/trs/firefox-105.0.3.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha256 = "d50741ee4a03767bc93f8c6fe6c3d4ae28d4279e491dc7f63a6d4d9c0b903636";
+      sha256 = "bb5b894c541304f16b8b49e9c73ffdbec1845308b6d03ca89a7466cb3c8b8672";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/uk/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/uk/firefox-105.0.3.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha256 = "b793a691f4ba360110d8588d135fc9b6148114367cb511fa4109af9591031468";
+      sha256 = "51d9df9ea5f3da901146428ecd59ec6ec5fe3f47bb4f2d1f8721ee07186653a1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/ur/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/ur/firefox-105.0.3.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha256 = "86779f16e1c6bd852a5bf2a6d3cf4d185318a0e8255f5e740320a0acdad7483b";
+      sha256 = "2d5b7c2f5c0eca1a6ad23987d56b4621c05e610956486b69703f8555ba92b868";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/uz/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/uz/firefox-105.0.3.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha256 = "75923c30c7d2f4ae52cd85f08636d984c28413cd1e3c78d0c11dac5a217cb496";
+      sha256 = "1cb92952cea218d021bb417d6e70f691531e2d47bf480ac63dd94ceaed4ab99d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/vi/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/vi/firefox-105.0.3.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha256 = "28f263131e02353e593906a289f9e6b929a6bd84be54647b486c9477c09596ce";
+      sha256 = "c10a5bd0eb0c5264de3b5a5adcf722c38af5308d1e77c84469d6833cc1083390";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/xh/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/xh/firefox-105.0.3.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha256 = "6c27086dc8136077ab1c18d134ba5d569675296e428f7eb06db12761a4a52d93";
+      sha256 = "6811b7ab830b82e53ac6d6d6e66c2345cfa75fb334345387f33ac5e9ffc9f79f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/zh-CN/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/zh-CN/firefox-105.0.3.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha256 = "04e98684a9aaeb75e8e5e70ace60593fe200705ab055ffe1556f71e23ca77424";
+      sha256 = "af851d028a17c3444382d49f429f86340d52f2d326bf0de1f4e5a66be18f0a0d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.1/linux-i686/zh-TW/firefox-105.0.1.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/105.0.3/linux-i686/zh-TW/firefox-105.0.3.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha256 = "55f58ba2ef1806f37493503aad5bffdaab69cfb31661933b01e8be5aeb963e64";
+      sha256 = "9e2f93327b92bd7825530be238312a04ec848958053bfff69191181c1a9b520b";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix
index 682d4c37ee432..438f90bf19572 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 = "105.0.1";
+    version = "105.0.3";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
-      sha512 = "66ef7cd5028953e7da9d55e127135739c9d85be68ec633b71c52d6c9427edb0bd8a38504148484cd322adcefb57bfefe6e57cb15855f195508fe438864f4322b";
+      sha512 = "8a60ed26f3a6e3fafb1eb13a8daf067056d011a17835310f8ce814b86121014796e790f611058aea75334428529028a2e29ba81d9d2653e09517dc7c3cf48e76";
     };
 
     meta = {
diff --git a/pkgs/applications/networking/browsers/firefox/wrapper.nix b/pkgs/applications/networking/browsers/firefox/wrapper.nix
index 3e20e6158c979..e09bbef871b59 100644
--- a/pkgs/applications/networking/browsers/firefox/wrapper.nix
+++ b/pkgs/applications/networking/browsers/firefox/wrapper.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, makeDesktopItem, makeWrapper, makeBinaryWrapper, lndir, config
-, fetchurl, zip, unzip, jq, xdg-utils, writeText
+, jq, xdg-utils, writeText
 
 ## various stuff that can be plugged in
 , ffmpeg_5, xorg, alsa-lib, libpulseaudio, libcanberra-gtk3, libglvnd, libnotify, opensc
diff --git a/pkgs/applications/networking/browsers/polypane/default.nix b/pkgs/applications/networking/browsers/polypane/default.nix
new file mode 100644
index 0000000000000..ad7f6e5154ada
--- /dev/null
+++ b/pkgs/applications/networking/browsers/polypane/default.nix
@@ -0,0 +1,41 @@
+{ lib, fetchurl, appimageTools }:
+
+let
+  pname = "polypane";
+  version = "10.0.1";
+
+  src = fetchurl {
+    url = "https://github.com/firstversionist/${pname}/releases/download/v${version}/${pname}-${version}.AppImage";
+    name = "${pname}-${version}.AppImage";
+    sha256 = "eujv99L5svMhDIKHFOfm7sOwNZ4xiUaIsimfOf4BBik=";
+  };
+
+  appimageContents = appimageTools.extractType2 {
+    inherit pname src version;
+  };
+in appimageTools.wrapType2 {
+  inherit pname src version;
+
+  multiPkgs = null;
+  extraPkgs = pkgs: appimageTools.defaultFhsEnvArgs.multiPkgs pkgs ++ [ pkgs.bash ];
+
+  extraInstallCommands = ''
+    ln -s $out/bin/${pname}-${version} $out/bin/${pname}
+    install -m 444 -D ${appimageContents}/${pname}.desktop $out/share/applications/${pname}.desktop
+    install -m 444 -D ${appimageContents}/${pname}.png \
+      $out/share/icons/hicolor/512x512/apps/${pname}.png
+  '';
+
+  meta = with lib; {
+    description = "Browser with unified devtools targeting responsability and acessibility";
+    longDescription = ''
+      The stand-alone browser for ambitious developers that want to build responsive,
+      accessible and performant websites in a fraction of the time it takes with other browsers.
+    '';
+    homepage = "https://polypane.app/";
+    maintainers = with maintainers; [ zoedsoupe ];
+    platforms = [ "x86_64-linux" ];
+    changelog = "https://polypane.app/docs/changelog/";
+    license = licenses.unfree;
+  };
+}
diff --git a/pkgs/applications/networking/browsers/qutebrowser/default.nix b/pkgs/applications/networking/browsers/qutebrowser/default.nix
index ce2392ab4edca..a3f5b32369730 100644
--- a/pkgs/applications/networking/browsers/qutebrowser/default.nix
+++ b/pkgs/applications/networking/browsers/qutebrowser/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, lib, fetchurl, fetchzip, python3
-, mkDerivationWith, wrapQtAppsHook, wrapGAppsHook, qtbase, qtwebengine, glib-networking
+{ stdenv, lib, fetchurl, fetchzip, fetchFromGitHub, python3
+, wrapQtAppsHook, glib-networking
 , asciidoc, docbook_xml_dtd_45, docbook_xsl, libxml2
 , libxslt, gst_all_1 ? null
 , withPdfReader      ? true
@@ -7,35 +7,56 @@
 , backend            ? "webengine"
 , pipewireSupport    ? stdenv.isLinux
 , pipewire_0_2
-}:
+, qtwayland
+, mkDerivationWith ? null
+, qtbase ? null
+, qtwebengine ? null
+, wrapGAppsHook ? null
+}: let
+  isQt6 = mkDerivationWith == null;
 
-assert withMediaPlayback -> gst_all_1 != null;
-
-let
   python3Packages = python3.pkgs;
   pdfjs = let
     version = "2.14.305";
   in
-  fetchzip rec {
+  fetchzip {
     url = "https://github.com/mozilla/pdf.js/releases/download/v${version}/pdfjs-${version}-dist.zip";
     hash = "sha256-E7t+0AUndrgi4zfJth0w28RmWLqLyXMUCnueNf/gNi4=";
     stripRoot = false;
   };
 
   backendPackage =
-   if backend == "webengine" then python3Packages.pyqtwebengine else
+   if backend == "webengine" then if isQt6 then python3Packages.pyqt6-webengine else python3Packages.pyqtwebengine else
    if backend == "webkit"    then python3Packages.pyqt5_with_qtwebkit else
    throw ''
      Unknown qutebrowser backend "${backend}".
      Valid choices are qtwebengine (recommended) or qtwebkit.
    '';
 
-in mkDerivationWith python3Packages.buildPythonApplication rec {
+  buildPythonApplication = if isQt6 then python3Packages.buildPythonApplication else mkDerivationWith python3Packages.buildPythonApplication;
+
   pname = "qutebrowser";
-  version = "2.5.2";
+  version = if isQt6 then "unstable-2022-09-16" else "2.5.2";
 
+in
+
+assert withMediaPlayback -> gst_all_1 != null;
+assert isQt6 -> backend != "webkit";
+
+buildPythonApplication {
+  inherit pname version;
+
+  src = if isQt6 then
+    # comes from qt6-v2 branch of upstream
+    # https://github.com/qutebrowser/qutebrowser/issues/7202
+    fetchFromGitHub {
+      owner = "qutebrowser";
+      repo = "qutebrowser";
+      rev = "5e11e6c7d413cf5c77056ba871a545aae1cfd66a";
+      sha256 = "sha256-5HNzPO07lUQe/Q3Nb4JiS9kb9GMQ5/FqM5029vLNNWo=";
+    }
   # the release tarballs are different from the git checkout!
-  src = fetchurl {
+   else fetchurl {
     url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/${pname}-${version}.tar.gz";
     hash = "sha256-qb/OFN3EA94N6y7t+YPCMc4APgdZmV7H706jTkl06Qg=";
   };
@@ -66,6 +87,7 @@ in mkDerivationWith python3Packages.buildPythonApplication rec {
     adblock
   ]
     ++ lib.optional (pythonOlder "3.9") importlib-resources
+    ++ lib.optional stdenv.isLinux qtwayland
   );
 
   patches = [
@@ -94,14 +116,15 @@ in mkDerivationWith python3Packages.buildPythonApplication rec {
 
     # Install icons
     for i in 16 24 32 48 64 128 256 512; do
-        install -Dm644 "icons/qutebrowser-''${i}x''${i}.png" \
+        install -Dm644 "qutebrowser/icons/qutebrowser-''${i}x''${i}.png" \
             "$out/share/icons/hicolor/''${i}x''${i}/apps/qutebrowser.png"
     done
-    install -Dm644 icons/qutebrowser.svg \
+    install -Dm644 ${if isQt6 then "qutebrowser/" else ""}icons/qutebrowser.svg \
         "$out/share/icons/hicolor/scalable/apps/qutebrowser.svg"
 
     # Install scripts
     sed -i "s,/usr/bin/,$out/bin/,g" scripts/open_url_in_instance.sh
+    ${if isQt6 then "rm -rf scripts/{testbrowser,dev}" else ""}
     install -Dm755 -t "$out/share/qutebrowser/scripts/" $(find scripts -type f)
     install -Dm755 -t "$out/share/qutebrowser/userscripts/" misc/userscripts/*
 
diff --git a/pkgs/applications/networking/calls/default.nix b/pkgs/applications/networking/calls/default.nix
index b5961c4adbc27..a0a9b10f068a0 100644
--- a/pkgs/applications/networking/calls/default.nix
+++ b/pkgs/applications/networking/calls/default.nix
@@ -25,6 +25,7 @@
 , gtk-doc
 , docbook-xsl-nons
 , docbook_xml_dtd_43
+, docutils
 , gobject-introspection
 , gst_all_1
 , sofia_sip
@@ -32,15 +33,15 @@
 
 stdenv.mkDerivation rec {
   pname = "calls";
-  version = "42.0";
+  version = "43.0";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "GNOME";
     repo = pname;
-    rev = version;
+    rev = "v${version}";
     fetchSubmodules = true;
-    hash = "sha256-ASKK9PB5FAD10CR5O+L2WgMjCzmIalithHL8jV0USiM=";
+    hash = "sha256-fvG9N6HuuO8BMH8MJRquMSe1oEPNmX/pzsJX5yzs1CY=";
   };
 
   outputs = [ "out" "devdoc" ];
@@ -56,6 +57,7 @@ stdenv.mkDerivation rec {
     gtk-doc
     docbook-xsl-nons
     docbook_xml_dtd_43
+    docutils
   ];
 
   buildInputs = [
@@ -104,7 +106,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A phone dialer and call handler";
     longDescription = "GNOME Calls is a phone dialer and call handler. Setting NixOS option `programs.calls.enable = true` is recommended.";
-    homepage = "https://source.puri.sm/Librem5/calls";
+    homepage = "https://gitlab.gnome.org/GNOME/calls";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ craigem lheckemann tomfitzhenry ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/cluster/argo/default.nix b/pkgs/applications/networking/cluster/argo/default.nix
index 1d799c9fe9fdd..3fd45f3e9c28d 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.3.9";
+  version = "3.4.1";
 
   src = fetchFromGitHub {
     owner = "argoproj";
     repo = "argo";
     rev = "v${version}";
-    sha256 = "sha256-BDanFiLhucNE4uvUxKDXAK1W755VfNytQ3gXuLIKfSE=";
+    sha256 = "sha256-bAfND84mbJulv0IO6JF2c+ZbwKeND8AVAJHmdMmhZ/s=";
   };
 
-  vendorSha256 = "sha256-303+LE3n3lltuCf+Pc7S+qHdsjQDt9IAu9Kd4sUaiYI=";
+  vendorSha256 = "sha256-S4p56/OZpufpi71aueYTvPcM4LoZWyAhcAzUUUrUw4Q=";
 
   doCheck = false;
 
diff --git a/pkgs/applications/networking/cluster/argocd-autopilot/default.nix b/pkgs/applications/networking/cluster/argocd-autopilot/default.nix
index ca4c7139adba6..8aef3f81af518 100644
--- a/pkgs/applications/networking/cluster/argocd-autopilot/default.nix
+++ b/pkgs/applications/networking/cluster/argocd-autopilot/default.nix
@@ -11,7 +11,7 @@ buildGoModule rec {
     sha256 = "sha256-aC3U9Qeahji3xSuJWuMlf2TzKEqPDAOuB52A4Om/fRU=";
   };
 
-  vendorSha256 = "sha256-ujDtfDL1VWe4XjTHD+pXMmMFp0AiuZcE+CKRkMsiv9Q=";
+  vendorSha256 = "sha256-waEvrIEXQMyzSyHpPo7H0OwfD5Zo/rwWTpeWvipZXv8=";
 
   proxyVendor = true;
 
diff --git a/pkgs/applications/networking/cluster/argocd/default.nix b/pkgs/applications/networking/cluster/argocd/default.nix
index 84cc0ee0f09a2..02ec3369501e1 100644
--- a/pkgs/applications/networking/cluster/argocd/default.nix
+++ b/pkgs/applications/networking/cluster/argocd/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "argocd";
-  version = "2.4.12";
+  version = "2.4.14";
 
   src = fetchFromGitHub {
     owner = "argoproj";
     repo = "argo-cd";
     rev = "v${version}";
-    sha256 = "sha256-U3Qct7wL/oJDgU+PXL5UMMTsQo4maeKShDwU2crSWxk=";
+    sha256 = "sha256-txVNv/JowIGKMvNjsMUzwLT328qJg/DkS/R0RkN8b34=";
   };
 
   vendorSha256 = "sha256-n6elT6ETOtbZsFqfwMo9d2qqamS8jdrROjFjStNkalc=";
diff --git a/pkgs/applications/networking/cluster/clusterctl/default.nix b/pkgs/applications/networking/cluster/clusterctl/default.nix
index f6e5aa4952f83..3892266c7f929 100644
--- a/pkgs/applications/networking/cluster/clusterctl/default.nix
+++ b/pkgs/applications/networking/cluster/clusterctl/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "clusterctl";
-  version = "1.2.2";
+  version = "1.2.3";
 
   src = fetchFromGitHub {
     owner = "kubernetes-sigs";
     repo = "cluster-api";
     rev = "v${version}";
-    sha256 = "sha256-U9U1r74E4ryc8zUb1EogfBT57kfsd89i7DWO05tnQw4=";
+    sha256 = "sha256-QVzhRaNLFhH+5x+/X/Nc3bW/09txurhVd0yDU9LYhAo=";
   };
 
-  vendorSha256 = "sha256-jM5qU/KaBf+CzKKOuVXjawn/QqwrCjXKaQFFomEPndg=";
+  vendorSha256 = "sha256-jPIrUW4el8sAO+4j20qMYVXqvov6Ac0cENd7gOrYj+U=";
 
   subPackages = [ "cmd/clusterctl" ];
 
diff --git a/pkgs/applications/networking/cluster/cmctl/default.nix b/pkgs/applications/networking/cluster/cmctl/default.nix
index 4a990caf3b50d..82728cc1d2a2c 100644
--- a/pkgs/applications/networking/cluster/cmctl/default.nix
+++ b/pkgs/applications/networking/cluster/cmctl/default.nix
@@ -48,6 +48,6 @@ buildGoModule rec {
     downloadPage = "https://github.com/cert-manager/cert-manager";
     license = licenses.asl20;
     homepage = "https://cert-manager.io/";
-    maintainers = with maintainers; [ joshvanl superherointj ];
+    maintainers = with maintainers; [ joshvanl ];
   };
 }
diff --git a/pkgs/applications/networking/cluster/fluxcd/default.nix b/pkgs/applications/networking/cluster/fluxcd/default.nix
index 71597daea2b05..c0886ff20430f 100644
--- a/pkgs/applications/networking/cluster/fluxcd/default.nix
+++ b/pkgs/applications/networking/cluster/fluxcd/default.nix
@@ -65,7 +65,7 @@ in buildGoModule rec {
     '';
     homepage = "https://fluxcd.io";
     license = licenses.asl20;
-    maintainers = with maintainers; [ bryanasdev000 jlesquembre superherointj ];
+    maintainers = with maintainers; [ bryanasdev000 jlesquembre ];
     mainProgram = "flux";
   };
 }
diff --git a/pkgs/applications/networking/cluster/gatekeeper/default.nix b/pkgs/applications/networking/cluster/gatekeeper/default.nix
index 8dbe5f4659f04..192f37228a736 100644
--- a/pkgs/applications/networking/cluster/gatekeeper/default.nix
+++ b/pkgs/applications/networking/cluster/gatekeeper/default.nix
@@ -6,13 +6,13 @@
 
 buildGoModule rec {
   pname = "gatekeeper";
-  version = "3.9.0";
+  version = "3.9.1";
 
   src = fetchFromGitHub {
     owner = "open-policy-agent";
     repo = "gatekeeper";
     rev = "v${version}";
-    sha256 = "sha256-hZ8PBJ+6G0A5tVrJfxy2rODxOxQarQg6mxG3sQCqjfY=";
+    sha256 = "sha256-XZASej26Mn4tq9c4nvjQNhQZWtu3L6jIgMNhyYyh5IE=";
   };
 
   vendorSha256 = null;
diff --git a/pkgs/applications/networking/cluster/hadoop/default.nix b/pkgs/applications/networking/cluster/hadoop/default.nix
index 1d9b10bfc39b3..365cac59f41ad 100644
--- a/pkgs/applications/networking/cluster/hadoop/default.nix
+++ b/pkgs/applications/networking/cluster/hadoop/default.nix
@@ -10,7 +10,7 @@
 , which
 , bzip2
 , cyrus_sasl
-, protobuf3_7
+, protobuf
 , snappy
 , zlib
 , zstd
@@ -92,8 +92,8 @@ in
     pname = "hadoop";
     platformAttrs = rec {
         x86_64-linux = {
-          version = "3.3.3";
-          hash = "sha256-+nHGG7qkJxKa7wn+wCizTdVCxlrZD9zOxefvk9g7h2Q=";
+          version = "3.3.4";
+          hash = "sha256-akg9GgsSNJDr2N8/cbZOs58zP3i5XwkK61jkM8vCQW0=";
         };
         x86_64-darwin = x86_64-linux;
         aarch64-linux = {
@@ -107,7 +107,7 @@ in
     jdk = jdk11_headless;
     inherit openssl;
     # TODO: Package and add Intel Storage Acceleration Library
-    nativeLibs = [ stdenv.cc.cc.lib protobuf3_7 zlib snappy ];
+    nativeLibs = [ stdenv.cc.cc.lib protobuf zlib snappy ];
     libPatches = ''
       ln -s ${getLib cyrus_sasl}/lib/libsasl2.so $out/lib/${untarDir}/lib/native/libsasl2.so.2
       ln -s ${getLib openssl}/lib/libcrypto.so $out/lib/${untarDir}/lib/native/
@@ -119,14 +119,17 @@ in
       patchelf --add-rpath ${jdk.home}/lib/server $out/lib/${untarDir}/lib/native/libnativetask.so.1.0.0
       # Java 8 has libjvm.so at a different path
       patchelf --add-rpath ${jdk.home}/jre/lib/amd64/server $out/lib/${untarDir}/lib/native/libnativetask.so.1.0.0
+      # NixOS/nixpkgs#193370
+      # This workaround is needed to use protobuf 3.19
+      patchelf --replace-needed libprotobuf.so.18 libprotobuf.so $out/lib/${untarDir}/lib/native/libhdfspp.so
     '';
     tests = nixosTests.hadoop;
   };
   hadoop_3_2 = common rec {
     pname = "hadoop";
     platformAttrs.x86_64-linux = {
-      version = "3.2.3";
-      hash = "sha256-Q2/a1LcKutpJoGySB0qlCcYE2bvC/HoG/dp9nBikuNU=";
+      version = "3.2.4";
+      hash = "sha256-qt2gpMr+NHuiVR+/zFRzRyRKG725/ZNBIM69z9J9wNw=";
     };
     jdk = jdk8_headless;
     # not using native libs because of broken openssl_1_0_2 dependency
diff --git a/pkgs/applications/networking/cluster/hashi-up/default.nix b/pkgs/applications/networking/cluster/hashi-up/default.nix
new file mode 100644
index 0000000000000..1efc1c438a5ab
--- /dev/null
+++ b/pkgs/applications/networking/cluster/hashi-up/default.nix
@@ -0,0 +1,25 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "hashi-up";
+  version = "0.16.0";
+
+  src = fetchFromGitHub {
+    owner = "jsiebens";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-PdZ8X2pJ5TfT0bJ4/P/XbMTv+yyL5/1AxIFHnL/qNcg=";
+  };
+
+  vendorSha256 = "sha256-dircE3WlDPsPnF+0wT5RG/c4hC8qPs8NaSGM5wpvVlM=";
+
+  meta = with lib; {
+    description = "A lightweight utility to install HashiCorp Consul, Nomad, or Vault on any remote Linux host";
+    homepage = "https://github.com/jsiebens/hashi-up";
+    license = licenses.mit;
+    maintainers = with maintainers; [ lucperkins ];
+  };
+}
diff --git a/pkgs/applications/networking/cluster/istioctl/default.nix b/pkgs/applications/networking/cluster/istioctl/default.nix
index 13d08e334786b..e469562bff2bc 100644
--- a/pkgs/applications/networking/cluster/istioctl/default.nix
+++ b/pkgs/applications/networking/cluster/istioctl/default.nix
@@ -42,7 +42,7 @@ buildGoModule rec {
     description = "Istio configuration command line utility for service operators to debug and diagnose their Istio mesh";
     homepage = "https://istio.io/latest/docs/reference/commands/istioctl";
     license = licenses.asl20;
-    maintainers = with maintainers; [ superherointj bryanasdev000 veehaitch ];
+    maintainers = with maintainers; [ bryanasdev000 veehaitch ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/networking/cluster/k3s/default.nix b/pkgs/applications/networking/cluster/k3s/default.nix
index 47caa17213363..0fdc7cc4f429a 100644
--- a/pkgs/applications/networking/cluster/k3s/default.nix
+++ b/pkgs/applications/networking/cluster/k3s/default.nix
@@ -47,10 +47,10 @@ 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.0+k3s1";     # k3s git tag
-  k3sCommit = "26e9405767263a2915723cb72b1ffd7f50687a8f"; # k3s git commit at the above version
-  k3sRepoSha256 = "0rk0svqx26rn6qlvvyj5rsqb87195h1qcf84qmmvf874qwszwpgh";
-  k3sVendorSha256 = "sha256-YX/yLOLtDxGhRB4tic6oTli/qeeSnpP+f+S+sVXXDSs=";
+  k3sVersion = "1.25.2+k3s1";     # k3s git tag
+  k3sCommit = "53c268d8eb90ceea5e1c7865f89db5c7fb8763bc"; # k3s git commit at the above version
+  k3sRepoSha256 = "1w040bsrf981k19rwaaxjsv52pgzc0k77x083fkhysmrca565z0y";
+  k3sVendorSha256 = "sha256-8Xti08sjFk1WKimH/GEb99oqBdFO79WVCvYyXIWMpgo=";
 
   # 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.
@@ -77,7 +77,7 @@ let
     description = "A lightweight Kubernetes distribution";
     license = licenses.asl20;
     homepage = "https://k3s.io";
-    maintainers = with maintainers; [ euank mic92 superherointj ];
+    maintainers = with maintainers; [ euank mic92 ];
     platforms = platforms.linux;
   };
 
diff --git a/pkgs/applications/networking/cluster/k3s/update.sh b/pkgs/applications/networking/cluster/k3s/update.sh
index 6c9755334cde0..ac46e7ae51e5e 100755
--- a/pkgs/applications/networking/cluster/k3s/update.sh
+++ b/pkgs/applications/networking/cluster/k3s/update.sh
@@ -7,8 +7,8 @@ WORKDIR=$(mktemp -d)
 trap "rm -rf ${WORKDIR}" EXIT
 
 NIXPKGS_ROOT="$(git rev-parse --show-toplevel)"/
-NIXPKGS_K3S_FOLDER=$(cd $(dirname ${BASH_SOURCE[0]}); pwd -P)/
-cd ${NIXPKGS_K3S_FOLDER}
+NIXPKGS_K3S_PATH=$(cd $(dirname ${BASH_SOURCE[0]}); pwd -P)/
+cd ${NIXPKGS_K3S_PATH}
 
 LATEST_TAG_RAWFILE=${WORKDIR}/latest_tag.json
 curl --silent ${GITHUB_TOKEN:+"-u \":$GITHUB_TOKEN\""} \
@@ -60,7 +60,7 @@ CRI_CTL_VERSION=$(grep github.com/kubernetes-sigs/cri-tools ${FILE_GO_MOD} \
     | head -n1 | awk '{print $4}' | sed -e 's/"//g' -e 's/^v//')
 
 setKV () {
-    sed -i "s|$1 = \".*\"|$1 = \"${2:-}\"|" ${NIXPKGS_K3S_FOLDER}default.nix
+    sed -i "s|$1 = \".*\"|$1 = \"${2:-}\"|" ${NIXPKGS_K3S_PATH}default.nix
 }
 
 setKV k3sVersion ${K3S_VERSION}
@@ -91,3 +91,11 @@ else
     echo "Update failed. K3S_VENDOR_SHA256 is empty."
     exit 1
 fi
+
+# `git` flag here is to be used by local maintainers to speed up the bump process
+if [ $# -eq 1 ] && [ "$1" = "git" ]; then
+    OLD_VERSION="$(nix-instantiate --eval -E "with import $NIXPKGS_ROOT. {}; k3s.version or (builtins.parseDrvName k3s.name).version" | tr -d '"')"
+    git switch -c "package-k3s-${K3S_VERSION}"
+    git add "$NIXPKGS_K3S_PATH"/default.nix
+    git commit -m "k3s: ${OLD_VERSION} -> ${K3S_VERSION}"
+fi
diff --git a/pkgs/applications/networking/cluster/k3sup/default.nix b/pkgs/applications/networking/cluster/k3sup/default.nix
index 3bedb0195248f..f9586ffa46614 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.3";
+  version = "0.12.7";
 
   src = fetchFromGitHub {
     owner = "alexellis";
     repo = "k3sup";
     rev = version;
-    sha256 = "sha256-2S/VnxVb056aPxFd5LxtUdaNlosHLlu7Tl/RQbY/zpA=";
+    sha256 = "sha256-EOGYOxRhpPHOSo9ccCSvat9kq2SlujPqno8v7/zmuto=";
   };
 
   nativeBuildInputs = [ makeWrapper installShellFiles ];
diff --git a/pkgs/applications/networking/cluster/kubectl-doctor/default.nix b/pkgs/applications/networking/cluster/kubectl-doctor/default.nix
index 5e78cc9b72bd9..8e504294053b0 100644
--- a/pkgs/applications/networking/cluster/kubectl-doctor/default.nix
+++ b/pkgs/applications/networking/cluster/kubectl-doctor/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildGoModule, fetchFromGitHub }:
+{ lib, buildGoModule, fetchFromGitHub, fetchpatch }:
 
 buildGoModule rec {
   pname = "kubectl-doctor";
@@ -11,7 +11,16 @@ buildGoModule rec {
     sha256 = "sha256-yp5OfSDxIASiCgISUVNxfe3dsLukgIoHARVPALIaQfY=";
   };
 
-  vendorSha256 = "sha256-pdg65q7iMkcpFvSVUTa07m5URLQNNEfWQ4mdGu4suBM=";
+  patches = [
+    (fetchpatch {
+      # https://github.com/emirozer/kubectl-doctor/pull/21
+      name = "go-1.19-client-go-0.25.patch";
+      url = "https://github.com/emirozer/kubectl-doctor/commit/a987ef58063e305409034af280d688a11682dbb9.patch";
+      sha256 = "sha256-NQd/WxUfYwBDowhnoUWaOV8k7msiOhff3Bjux+a9R9E=";
+    })
+  ];
+
+  vendorSha256 = "sha256-qhffg/s1RZFNW0nHLbJ89yqLzdC72ARXdbSfMLJK2pQ=";
 
   postInstall = ''
     mv $out/bin/{cmd,kubectl-doctor}
diff --git a/pkgs/applications/networking/cluster/kubectl-images/default.nix b/pkgs/applications/networking/cluster/kubectl-images/default.nix
new file mode 100644
index 0000000000000..87d9b36f7b840
--- /dev/null
+++ b/pkgs/applications/networking/cluster/kubectl-images/default.nix
@@ -0,0 +1,27 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "kubectl-images";
+  version = "0.5.2";
+
+  src = fetchFromGitHub {
+    owner = "chenjiandongx";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-aDWtLTnMQklTU6X6LF0oBuh1317I5/kiEZVePgJjIdU";
+  };
+
+  vendorSha256 = "sha256-FxaOOFwDf3LNREOlA7frqhDXzc91LC3uJev3kzLDEy8";
+
+  postInstall = ''
+    mv $out/bin/cmd $out/bin/kubectl-images
+  '';
+
+  meta = with lib; {
+    description = "Show container images used in the cluster.";
+    homepage = "https://github.com/chenjiandongx/kubectl-images";
+    changelog = "https://github.com/chenjiandongx/kubectl-images/releases/tag/v${version}";
+    license = licenses.mit;
+    maintainers = [ maintainers.ivankovnatsky ];
+  };
+}
diff --git a/pkgs/applications/networking/cluster/kubent/default.nix b/pkgs/applications/networking/cluster/kubent/default.nix
index 79c0fdf2186a0..5302917cdfff4 100644
--- a/pkgs/applications/networking/cluster/kubent/default.nix
+++ b/pkgs/applications/networking/cluster/kubent/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "kubent";
-  version = "0.5.1";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "doitintl";
     repo = "kube-no-trouble";
     rev = "${version}";
-    sha256 = "0pwb9g1hhfqn3rl87fg6sf07m7aviadljb05bbnd241hhlcyslv6";
+    sha256 = "sha256-aXuBYfXQfg6IQE9cFFTBCPNmDg7IZYPAAeuAxCiU0ro=";
   };
 
-  vendorSha256 = "1z4cvk936l7011fbimsgpw89yqzyikw9jb4184l37mnj9hl5wpcp";
+  vendorSha256 = "sha256-WQwWBcwhFZxXPFO6h+5Y8VDM4urJGfZ6AOvhRoaSbpk=";
 
   ldflags = [
     "-w" "-s"
diff --git a/pkgs/applications/networking/cluster/linkerd/generic.nix b/pkgs/applications/networking/cluster/linkerd/generic.nix
index 80150b45d866e..f21ee96ecd33b 100644
--- a/pkgs/applications/networking/cluster/linkerd/generic.nix
+++ b/pkgs/applications/networking/cluster/linkerd/generic.nix
@@ -53,6 +53,6 @@ buildGoModule rec {
     downloadPage = "https://github.com/linkerd/linkerd2/";
     homepage = "https://linkerd.io/";
     license = licenses.asl20;
-    maintainers = with maintainers; [ bryanasdev000 Gonzih superherointj ];
+    maintainers = with maintainers; [ bryanasdev000 Gonzih ];
   };
 }
diff --git a/pkgs/applications/networking/cluster/minikube/default.nix b/pkgs/applications/networking/cluster/minikube/default.nix
index 3b95b4e8cd958..e0a16ab885b8b 100644
--- a/pkgs/applications/networking/cluster/minikube/default.nix
+++ b/pkgs/applications/networking/cluster/minikube/default.nix
@@ -12,9 +12,9 @@
 
 buildGoModule rec {
   pname = "minikube";
-  version = "1.27.0";
+  version = "1.27.1";
 
-  vendorSha256 = "sha256-wAjgeq//vRUDUyVNTsVIxLXhA6fzTrYvn4klAPAv7DE=";
+  vendorSha256 = "sha256-2sXWf+iK1v9gv2DXhmEs8xlIRF+6EM7Y6Otd6F89zGk=";
 
   doCheck = false;
 
@@ -22,7 +22,7 @@ buildGoModule rec {
     owner = "kubernetes";
     repo = "minikube";
     rev = "v${version}";
-    sha256 = "sha256-Pn0F3363YJoOdWyoPy46HmIUwWr/I5TekalBp9hHg7I=";
+    sha256 = "sha256-GmvxKWHo0meiR1r5IlgI8jQRiDvmQafxTS9acv92EPk=";
   };
 
   nativeBuildInputs = [ installShellFiles pkg-config which makeWrapper ];
diff --git a/pkgs/applications/networking/cluster/nixops/default.nix b/pkgs/applications/networking/cluster/nixops/default.nix
index 58229718aa58a..a3ad35a4eabe2 100644
--- a/pkgs/applications/networking/cluster/nixops/default.nix
+++ b/pkgs/applications/networking/cluster/nixops/default.nix
@@ -10,7 +10,7 @@ let
   interpreter = (
     poetry2nix.mkPoetryPackages {
       projectDir = ./.;
-      python = pkgs.python39;
+      python = pkgs.python310;
       overrides = [
         poetry2nix.defaultPoetryOverrides
         (import ./poetry-git-overlay.nix { inherit pkgs; })
@@ -42,12 +42,22 @@ let
         overrides
 
         # Make nixops pluginable
-        (self: super: {
+        (self: super: let
+          # Create a fake sphinx directory that doesn't pull the entire setup hook and incorrect python machinery
+          sphinx = pkgs.runCommand "sphinx" {} ''
+            mkdir -p $out/bin
+            for f in ${pkgs.python3.pkgs.sphinx}/bin/*; do
+              ln -s $f $out/bin/$(basename $f)
+            done
+          '';
+
+        in {
           nixops = super.__toPluginAble {
             drv = super.nixops;
             finalDrv = self.nixops;
 
-            nativeBuildInputs = [ self.sphinx ];
+            nativeBuildInputs = [ sphinx ];
+
             postInstall = ''
               doc_cache=$(mktemp -d)
               sphinx-build -b man -d $doc_cache doc/ $out/share/man/man1
diff --git a/pkgs/applications/networking/cluster/nixops/poetry-git-overlay.nix b/pkgs/applications/networking/cluster/nixops/poetry-git-overlay.nix
index c388f6a9e2689..7166c3ac288ab 100644
--- a/pkgs/applications/networking/cluster/nixops/poetry-git-overlay.nix
+++ b/pkgs/applications/networking/cluster/nixops/poetry-git-overlay.nix
@@ -5,8 +5,8 @@ self: super: {
     _: {
       src = pkgs.fetchgit {
         url = "https://github.com/NixOS/nixops.git";
-        rev = "7220cbdc8a1cf2db5b3ad75b525faf145a5560a3";
-        sha256 = "199cw25cvjb8gxs56nc8ilq7v4560c6vgi1sh1vqrsqxayq1g4cs";
+        rev = "683baa66c613216a662aad3fd58b0cdc5cd41adb";
+        sha256 = "00yyzsybn1fjhkar64albxqp46d1v9c6lf1gd10lh9q72xq979sf";
       };
     }
   );
@@ -15,8 +15,8 @@ self: super: {
     _: {
       src = pkgs.fetchgit {
         url = "https://github.com/NixOS/nixops-aws.git";
-        rev = "bc9de10b77aa74c9b245fd533f829e4307b984e8";
-        sha256 = "12qsaxwlk67q04g13sqs4bxscpjspip5yphx6d8rq3iqki8yg4z9";
+        rev = "d8a6679c413edd1a7075b2fe08017b4c7fa3b3ce";
+        sha256 = "0aqkaskp6nkcnfxxf1n294xp4ggk36qldj5c3kzfgxim06jap7n5";
       };
     }
   );
@@ -25,8 +25,8 @@ self: super: {
     _: {
       src = pkgs.fetchgit {
         url = "https://github.com/nix-community/nixops-digitalocean.git";
-        rev = "b527b4bd27a419753e38c8231fd7528b3ea33886";
-        sha256 = "069jlgcjqgyb1v3dnrp2h0w4gv5hfx624iq2xazaix2wxpx9w7f8";
+        rev = "e977b7f11e264a6a2bff2dcbc7b94c6a97b92fff";
+        sha256 = "020fg1kjh3x57dj95micpq6mxjg5j50jy6cs5f10i33ayy3556v8";
       };
     }
   );
diff --git a/pkgs/applications/networking/cluster/nixops/poetry.lock b/pkgs/applications/networking/cluster/nixops/poetry.lock
index 7b287734c5e76..56405bc1460ef 100644
--- a/pkgs/applications/networking/cluster/nixops/poetry.lock
+++ b/pkgs/applications/networking/cluster/nixops/poetry.lock
@@ -19,14 +19,14 @@ python-versions = "*"
 
 [[package]]
 name = "boto3"
-version = "1.24.16"
+version = "1.24.88"
 description = "The AWS SDK for Python"
 category = "main"
 optional = false
 python-versions = ">= 3.7"
 
 [package.dependencies]
-botocore = ">=1.27.16,<1.28.0"
+botocore = ">=1.27.88,<1.28.0"
 jmespath = ">=0.7.1,<2.0.0"
 s3transfer = ">=0.6.0,<0.7.0"
 
@@ -35,7 +35,7 @@ crt = ["botocore[crt] (>=1.21.0,<2.0a0)"]
 
 [[package]]
 name = "botocore"
-version = "1.27.16"
+version = "1.27.88"
 description = "Low-level, data-driven core of boto 3."
 category = "main"
 optional = false
@@ -47,11 +47,11 @@ python-dateutil = ">=2.1,<3.0.0"
 urllib3 = ">=1.25.4,<1.27"
 
 [package.extras]
-crt = ["awscrt (==0.13.8)"]
+crt = ["awscrt (==0.14.0)"]
 
 [[package]]
 name = "certifi"
-version = "2022.6.15"
+version = "2022.9.24"
 description = "Python package for providing Mozilla's CA Bundle."
 category = "main"
 optional = false
@@ -59,7 +59,7 @@ python-versions = ">=3.6"
 
 [[package]]
 name = "cffi"
-version = "1.15.0"
+version = "1.15.1"
 description = "Foreign Function Interface for Python calling C code."
 category = "main"
 optional = false
@@ -70,11 +70,11 @@ pycparser = "*"
 
 [[package]]
 name = "charset-normalizer"
-version = "2.0.12"
+version = "2.1.1"
 description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet."
 category = "main"
 optional = false
-python-versions = ">=3.5.0"
+python-versions = ">=3.6.0"
 
 [package.extras]
 unicode_backport = ["unicodedata2"]
@@ -91,12 +91,12 @@ python-versions = ">=3.6"
 cffi = ">=1.12"
 
 [package.extras]
-docs = ["sphinx (>=1.6.5,!=1.8.0,!=3.1.0,!=3.1.1)", "sphinx-rtd-theme"]
-docstest = ["doc8", "pyenchant (>=1.6.11)", "twine (>=1.12.0)", "sphinxcontrib-spelling (>=4.0.1)"]
+docs = ["sphinx (>=1.6.5,!=1.8.0,!=3.1.0,!=3.1.1)", "sphinx_rtd_theme"]
+docstest = ["doc8", "pyenchant (>=1.6.11)", "sphinxcontrib-spelling (>=4.0.1)", "twine (>=1.12.0)"]
 pep8test = ["black", "flake8", "flake8-import-order", "pep8-naming"]
 sdist = ["setuptools-rust (>=0.11.4)"]
 ssh = ["bcrypt (>=3.1.5)"]
-test = ["pytest (>=6.0)", "pytest-cov", "pytest-subtests", "pytest-xdist", "pretend", "iso8601", "pytz", "hypothesis (>=1.11.4,!=3.79.2)"]
+test = ["hypothesis (>=1.11.4,!=3.79.2)", "iso8601", "pretend", "pytest (>=6.0)", "pytest-cov", "pytest-subtests", "pytest-xdist", "pytz"]
 
 [[package]]
 name = "hetzner"
@@ -108,7 +108,7 @@ python-versions = "*"
 
 [[package]]
 name = "idna"
-version = "3.3"
+version = "3.4"
 description = "Internationalized Domain Names in Applications (IDNA)"
 category = "main"
 optional = false
@@ -131,13 +131,13 @@ optional = false
 python-versions = ">=2.7"
 
 [package.extras]
-docs = ["sphinx", "jaraco.packaging (>=3.2)", "rst.linker (>=1.9)"]
-testing = ["pytest (>=3.5,!=3.7.3)", "pytest-checkdocs (>=1.2.3)", "pytest-black-multipy", "pytest-cov", "ecdsa", "feedparser", "numpy", "pandas", "pymongo", "scikit-learn", "sqlalchemy", "pytest-flake8 (<1.1.0)", "enum34", "jsonlib", "pytest-flake8 (>=1.1.1)"]
+docs = ["jaraco.packaging (>=3.2)", "rst.linker (>=1.9)", "sphinx"]
+testing = ["ecdsa", "enum34", "feedparser", "jsonlib", "numpy", "pandas", "pymongo", "pytest (>=3.5,!=3.7.3)", "pytest-black-multipy", "pytest-checkdocs (>=1.2.3)", "pytest-cov", "pytest-flake8 (<1.1.0)", "pytest-flake8 (>=1.1.1)", "scikit-learn", "sqlalchemy"]
 "testing.libs" = ["simplejson", "ujson", "yajl"]
 
 [[package]]
 name = "libvirt-python"
-version = "8.4.0"
+version = "8.8.0"
 description = "The libvirt virtualization API python binding"
 category = "main"
 optional = false
@@ -149,11 +149,11 @@ version = "2.0.0"
 description = "NixOS cloud provisioning and deployment tool"
 category = "main"
 optional = false
-python-versions = "^3.7"
+python-versions = "^3.10"
 develop = false
 
 [package.dependencies]
-pluggy = "^0.13.1"
+pluggy = "^1.0.0"
 PrettyTable = "^0.7.2"
 typeguard = "^2.7.1"
 typing-extensions = "^3.7.4"
@@ -162,7 +162,7 @@ typing-extensions = "^3.7.4"
 type = "git"
 url = "https://github.com/NixOS/nixops.git"
 reference = "master"
-resolved_reference = "7220cbdc8a1cf2db5b3ad75b525faf145a5560a3"
+resolved_reference = "683baa66c613216a662aad3fd58b0cdc5cd41adb"
 
 [[package]]
 name = "nixops-aws"
@@ -183,8 +183,8 @@ typing-extensions = "^3.7.4"
 [package.source]
 type = "git"
 url = "https://github.com/NixOS/nixops-aws.git"
-reference = "master"
-resolved_reference = "bc9de10b77aa74c9b245fd533f829e4307b984e8"
+reference = "HEAD"
+resolved_reference = "d8a6679c413edd1a7075b2fe08017b4c7fa3b3ce"
 
 [[package]]
 name = "nixops-digitalocean"
@@ -196,14 +196,14 @@ python-versions = "^3.7"
 develop = false
 
 [package.dependencies]
-nixops = {git = "https://github.com/NixOS/nixops.git", branch = "master"}
+nixops = {git = "https://github.com/NixOS/nixops.git"}
 python-digitalocean = "^1.15.0"
 
 [package.source]
 type = "git"
 url = "https://github.com/nix-community/nixops-digitalocean.git"
-reference = "master"
-resolved_reference = "b527b4bd27a419753e38c8231fd7528b3ea33886"
+reference = "HEAD"
+resolved_reference = "e977b7f11e264a6a2bff2dcbc7b94c6a97b92fff"
 
 [[package]]
 name = "nixops-encrypted-links"
@@ -215,12 +215,12 @@ python-versions = "^3.7"
 develop = false
 
 [package.dependencies]
-nixops = {git = "https://github.com/NixOS/nixops.git", branch = "master"}
+nixops = {git = "https://github.com/NixOS/nixops.git"}
 
 [package.source]
 type = "git"
 url = "https://github.com/nix-community/nixops-encrypted-links.git"
-reference = "master"
+reference = "HEAD"
 resolved_reference = "e2f196fce15fcfb00d18c055e1ac53aec33b8fb1"
 
 [[package]]
@@ -241,7 +241,7 @@ nixos-modules-contrib = {git = "https://github.com/nix-community/nixos-modules-c
 [package.source]
 type = "git"
 url = "https://github.com/nix-community/nixops-gce.git"
-reference = "master"
+reference = "HEAD"
 resolved_reference = "712453027486e62e087b9c91e4a8a171eebb6ddd"
 
 [[package]]
@@ -254,12 +254,12 @@ python-versions = "^3.8"
 develop = false
 
 [package.dependencies]
-nixops = {git = "https://github.com/NixOS/nixops.git", branch = "master"}
+nixops = {git = "https://github.com/NixOS/nixops.git"}
 
 [package.source]
 type = "git"
 url = "https://github.com/hercules-ci/nixops-hercules-ci.git"
-reference = "master"
+reference = "HEAD"
 resolved_reference = "e601d5baffd003fd5f22deeaea0cb96444b054dc"
 
 [[package]]
@@ -280,7 +280,7 @@ typing-extensions = "^3.7.4"
 [package.source]
 type = "git"
 url = "https://github.com/NixOS/nixops-hetzner"
-reference = "master"
+reference = "HEAD"
 resolved_reference = "bc7a68070c7371468bcc8bf6e36baebc6bd2da35"
 
 [[package]]
@@ -294,12 +294,12 @@ develop = false
 
 [package.dependencies]
 libvirt-python = "^8.0"
-nixops = {git = "https://github.com/NixOS/nixops.git", branch = "master"}
+nixops = {git = "https://github.com/NixOS/nixops.git"}
 
 [package.source]
 type = "git"
 url = "https://github.com/nix-community/nixops-libvirtd.git"
-reference = "master"
+reference = "HEAD"
 resolved_reference = "bc3cf1c5c774a80e05991ca040baa2b23e3ecd51"
 
 [[package]]
@@ -317,7 +317,7 @@ nixops = {git = "https://github.com/NixOS/nixops.git", rev = "master"}
 [package.source]
 type = "git"
 url = "https://github.com/nix-community/nixops-vbox.git"
-reference = "master"
+reference = "HEAD"
 resolved_reference = "2729672865ebe2aa973c062a3fbddda8c1359da0"
 
 [[package]]
@@ -340,14 +340,15 @@ resolved_reference = "81a1c2ef424dcf596a97b2e46a58ca73a1dd1ff8"
 
 [[package]]
 name = "pluggy"
-version = "0.13.1"
+version = "1.0.0"
 description = "plugin and hook calling mechanisms for python"
 category = "main"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
+python-versions = ">=3.6"
 
 [package.extras]
 dev = ["pre-commit", "tox"]
+testing = ["pytest", "pytest-benchmark"]
 
 [[package]]
 name = "prettytable"
@@ -390,7 +391,7 @@ requests = "*"
 
 [[package]]
 name = "requests"
-version = "2.28.0"
+version = "2.28.1"
 description = "Python HTTP for Humans."
 category = "main"
 optional = false
@@ -398,13 +399,13 @@ python-versions = ">=3.7, <4"
 
 [package.dependencies]
 certifi = ">=2017.4.17"
-charset-normalizer = ">=2.0.0,<2.1.0"
+charset-normalizer = ">=2,<3"
 idna = ">=2.5,<4"
 urllib3 = ">=1.21.1,<1.27"
 
 [package.extras]
 socks = ["PySocks (>=1.5.6,!=1.5.7)"]
-use_chardet_on_py3 = ["chardet (>=3.0.2,<5)"]
+use_chardet_on_py3 = ["chardet (>=3.0.2,<6)"]
 
 [[package]]
 name = "s3transfer"
@@ -437,8 +438,8 @@ optional = false
 python-versions = ">=3.5.3"
 
 [package.extras]
-doc = ["sphinx-rtd-theme", "sphinx-autodoc-typehints (>=1.2.0)"]
-test = ["pytest", "typing-extensions", "mypy"]
+doc = ["sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme"]
+test = ["mypy", "pytest", "typing-extensions"]
 
 [[package]]
 name = "typing-extensions"
@@ -450,21 +451,21 @@ python-versions = "*"
 
 [[package]]
 name = "urllib3"
-version = "1.26.9"
+version = "1.26.12"
 description = "HTTP library with thread-safe connection pooling, file post, and more."
 category = "main"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4"
+python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, <4"
 
 [package.extras]
-brotli = ["brotlicffi (>=0.8.0)", "brotli (>=1.0.9)", "brotlipy (>=0.6.0)"]
-secure = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "certifi", "ipaddress"]
+brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"]
+secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"]
 socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"]
 
 [metadata]
 lock-version = "1.1"
-python-versions = "^3.9"
-content-hash = "781bb4378f4491b427372322c3ec71131ed7a28e0a166e0bc43969b016b5d926"
+python-versions = "^3.10"
+content-hash = "dd5b4dffae860fa56cf6c00bf5aea7a89d7501b2839fdd5e25c5782548092e55"
 
 [metadata.files]
 apache-libcloud = [
@@ -476,72 +477,86 @@ boto = [
     {file = "boto-2.49.0.tar.gz", hash = "sha256:ea0d3b40a2d852767be77ca343b58a9e3a4b00d9db440efb8da74b4e58025e5a"},
 ]
 boto3 = [
-    {file = "boto3-1.24.16-py3-none-any.whl", hash = "sha256:2c6f7e4103d41ca07d6b934a6612e4b9a2666eae36e8289f88726868534b8de2"},
-    {file = "boto3-1.24.16.tar.gz", hash = "sha256:422c000ff2ee5226e89fe427a9c4c09db095d69c179a3bcc3cfba37cbc5e787e"},
+    {file = "boto3-1.24.88-py3-none-any.whl", hash = "sha256:6b4cf1cd0be65202c4cf0e4c69099bac3620bcd4049ca25a5e223c668401dd69"},
+    {file = "boto3-1.24.88.tar.gz", hash = "sha256:93934343cac76084600a520e5be70c52152364d0c410681c2e25c2290f0e151c"},
 ]
 botocore = [
-    {file = "botocore-1.27.16-py3-none-any.whl", hash = "sha256:f117d59899d21beeb200130d7af2090a8112d702a06e2c2794ef576bcea36773"},
-    {file = "botocore-1.27.16.tar.gz", hash = "sha256:b3b9710902f675a11f5bfd46afda770150530876ae6541d099584462bf949fd1"},
+    {file = "botocore-1.27.88-py3-none-any.whl", hash = "sha256:de4e087b24cd3bc369eb2e27f8fe94a6499f7dea08c919fba13cefb2496bd2bb"},
+    {file = "botocore-1.27.88.tar.gz", hash = "sha256:ded0a4035baf91eb358ef501c92a8512543f5ab7658f459df3077a70a555b5cd"},
 ]
 certifi = [
-    {file = "certifi-2022.6.15-py3-none-any.whl", hash = "sha256:fe86415d55e84719d75f8b69414f6438ac3547d2078ab91b67e779ef69378412"},
-    {file = "certifi-2022.6.15.tar.gz", hash = "sha256:84c85a9078b11105f04f3036a9482ae10e4621616db313fe045dd24743a0820d"},
+    {file = "certifi-2022.9.24-py3-none-any.whl", hash = "sha256:90c1a32f1d68f940488354e36370f6cca89f0f106db09518524c88d6ed83f382"},
+    {file = "certifi-2022.9.24.tar.gz", hash = "sha256:0d9c601124e5a6ba9712dbc60d9c53c21e34f5f641fe83002317394311bdce14"},
 ]
 cffi = [
-    {file = "cffi-1.15.0-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:c2502a1a03b6312837279c8c1bd3ebedf6c12c4228ddbad40912d671ccc8a962"},
-    {file = "cffi-1.15.0-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:23cfe892bd5dd8941608f93348c0737e369e51c100d03718f108bf1add7bd6d0"},
-    {file = "cffi-1.15.0-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:41d45de54cd277a7878919867c0f08b0cf817605e4eb94093e7516505d3c8d14"},
-    {file = "cffi-1.15.0-cp27-cp27m-win32.whl", hash = "sha256:4a306fa632e8f0928956a41fa8e1d6243c71e7eb59ffbd165fc0b41e316b2474"},
-    {file = "cffi-1.15.0-cp27-cp27m-win_amd64.whl", hash = "sha256:e7022a66d9b55e93e1a845d8c9eba2a1bebd4966cd8bfc25d9cd07d515b33fa6"},
-    {file = "cffi-1.15.0-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:14cd121ea63ecdae71efa69c15c5543a4b5fbcd0bbe2aad864baca0063cecf27"},
-    {file = "cffi-1.15.0-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:d4d692a89c5cf08a8557fdeb329b82e7bf609aadfaed6c0d79f5a449a3c7c023"},
-    {file = "cffi-1.15.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0104fb5ae2391d46a4cb082abdd5c69ea4eab79d8d44eaaf79f1b1fd806ee4c2"},
-    {file = "cffi-1.15.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:91ec59c33514b7c7559a6acda53bbfe1b283949c34fe7440bcf917f96ac0723e"},
-    {file = "cffi-1.15.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:f5c7150ad32ba43a07c4479f40241756145a1f03b43480e058cfd862bf5041c7"},
-    {file = "cffi-1.15.0-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:00c878c90cb53ccfaae6b8bc18ad05d2036553e6d9d1d9dbcf323bbe83854ca3"},
-    {file = "cffi-1.15.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:abb9a20a72ac4e0fdb50dae135ba5e77880518e742077ced47eb1499e29a443c"},
-    {file = "cffi-1.15.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a5263e363c27b653a90078143adb3d076c1a748ec9ecc78ea2fb916f9b861962"},
-    {file = "cffi-1.15.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f54a64f8b0c8ff0b64d18aa76675262e1700f3995182267998c31ae974fbc382"},
-    {file = "cffi-1.15.0-cp310-cp310-win32.whl", hash = "sha256:c21c9e3896c23007803a875460fb786118f0cdd4434359577ea25eb556e34c55"},
-    {file = "cffi-1.15.0-cp310-cp310-win_amd64.whl", hash = "sha256:5e069f72d497312b24fcc02073d70cb989045d1c91cbd53979366077959933e0"},
-    {file = "cffi-1.15.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:64d4ec9f448dfe041705426000cc13e34e6e5bb13736e9fd62e34a0b0c41566e"},
-    {file = "cffi-1.15.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2756c88cbb94231c7a147402476be2c4df2f6078099a6f4a480d239a8817ae39"},
-    {file = "cffi-1.15.0-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3b96a311ac60a3f6be21d2572e46ce67f09abcf4d09344c49274eb9e0bf345fc"},
-    {file = "cffi-1.15.0-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:75e4024375654472cc27e91cbe9eaa08567f7fbdf822638be2814ce059f58032"},
-    {file = "cffi-1.15.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:59888172256cac5629e60e72e86598027aca6bf01fa2465bdb676d37636573e8"},
-    {file = "cffi-1.15.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:27c219baf94952ae9d50ec19651a687b826792055353d07648a5695413e0c605"},
-    {file = "cffi-1.15.0-cp36-cp36m-win32.whl", hash = "sha256:4958391dbd6249d7ad855b9ca88fae690783a6be9e86df65865058ed81fc860e"},
-    {file = "cffi-1.15.0-cp36-cp36m-win_amd64.whl", hash = "sha256:f6f824dc3bce0edab5f427efcfb1d63ee75b6fcb7282900ccaf925be84efb0fc"},
-    {file = "cffi-1.15.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:06c48159c1abed75c2e721b1715c379fa3200c7784271b3c46df01383b593636"},
-    {file = "cffi-1.15.0-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:c2051981a968d7de9dd2d7b87bcb9c939c74a34626a6e2f8181455dd49ed69e4"},
-    {file = "cffi-1.15.0-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:fd8a250edc26254fe5b33be00402e6d287f562b6a5b2152dec302fa15bb3e997"},
-    {file = "cffi-1.15.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:91d77d2a782be4274da750752bb1650a97bfd8f291022b379bb8e01c66b4e96b"},
-    {file = "cffi-1.15.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:45db3a33139e9c8f7c09234b5784a5e33d31fd6907800b316decad50af323ff2"},
-    {file = "cffi-1.15.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:263cc3d821c4ab2213cbe8cd8b355a7f72a8324577dc865ef98487c1aeee2bc7"},
-    {file = "cffi-1.15.0-cp37-cp37m-win32.whl", hash = "sha256:17771976e82e9f94976180f76468546834d22a7cc404b17c22df2a2c81db0c66"},
-    {file = "cffi-1.15.0-cp37-cp37m-win_amd64.whl", hash = "sha256:3415c89f9204ee60cd09b235810be700e993e343a408693e80ce7f6a40108029"},
-    {file = "cffi-1.15.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:4238e6dab5d6a8ba812de994bbb0a79bddbdf80994e4ce802b6f6f3142fcc880"},
-    {file = "cffi-1.15.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:0808014eb713677ec1292301ea4c81ad277b6cdf2fdd90fd540af98c0b101d20"},
-    {file = "cffi-1.15.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:57e9ac9ccc3101fac9d6014fba037473e4358ef4e89f8e181f8951a2c0162024"},
-    {file = "cffi-1.15.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8b6c2ea03845c9f501ed1313e78de148cd3f6cad741a75d43a29b43da27f2e1e"},
-    {file = "cffi-1.15.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:10dffb601ccfb65262a27233ac273d552ddc4d8ae1bf93b21c94b8511bffe728"},
-    {file = "cffi-1.15.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:786902fb9ba7433aae840e0ed609f45c7bcd4e225ebb9c753aa39725bb3e6ad6"},
-    {file = "cffi-1.15.0-cp38-cp38-win32.whl", hash = "sha256:da5db4e883f1ce37f55c667e5c0de439df76ac4cb55964655906306918e7363c"},
-    {file = "cffi-1.15.0-cp38-cp38-win_amd64.whl", hash = "sha256:181dee03b1170ff1969489acf1c26533710231c58f95534e3edac87fff06c443"},
-    {file = "cffi-1.15.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:45e8636704eacc432a206ac7345a5d3d2c62d95a507ec70d62f23cd91770482a"},
-    {file = "cffi-1.15.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:31fb708d9d7c3f49a60f04cf5b119aeefe5644daba1cd2a0fe389b674fd1de37"},
-    {file = "cffi-1.15.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:6dc2737a3674b3e344847c8686cf29e500584ccad76204efea14f451d4cc669a"},
-    {file = "cffi-1.15.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:74fdfdbfdc48d3f47148976f49fab3251e550a8720bebc99bf1483f5bfb5db3e"},
-    {file = "cffi-1.15.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ffaa5c925128e29efbde7301d8ecaf35c8c60ffbcd6a1ffd3a552177c8e5e796"},
-    {file = "cffi-1.15.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3f7d084648d77af029acb79a0ff49a0ad7e9d09057a9bf46596dac9514dc07df"},
-    {file = "cffi-1.15.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ef1f279350da2c586a69d32fc8733092fd32cc8ac95139a00377841f59a3f8d8"},
-    {file = "cffi-1.15.0-cp39-cp39-win32.whl", hash = "sha256:2a23af14f408d53d5e6cd4e3d9a24ff9e05906ad574822a10563efcef137979a"},
-    {file = "cffi-1.15.0-cp39-cp39-win_amd64.whl", hash = "sha256:3773c4d81e6e818df2efbc7dd77325ca0dcb688116050fb2b3011218eda36139"},
-    {file = "cffi-1.15.0.tar.gz", hash = "sha256:920f0d66a896c2d99f0adbb391f990a84091179542c205fa53ce5787aff87954"},
+    {file = "cffi-1.15.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:a66d3508133af6e8548451b25058d5812812ec3798c886bf38ed24a98216fab2"},
+    {file = "cffi-1.15.1-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:470c103ae716238bbe698d67ad020e1db9d9dba34fa5a899b5e21577e6d52ed2"},
+    {file = "cffi-1.15.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:9ad5db27f9cabae298d151c85cf2bad1d359a1b9c686a275df03385758e2f914"},
+    {file = "cffi-1.15.1-cp27-cp27m-win32.whl", hash = "sha256:b3bbeb01c2b273cca1e1e0c5df57f12dce9a4dd331b4fa1635b8bec26350bde3"},
+    {file = "cffi-1.15.1-cp27-cp27m-win_amd64.whl", hash = "sha256:e00b098126fd45523dd056d2efba6c5a63b71ffe9f2bbe1a4fe1716e1d0c331e"},
+    {file = "cffi-1.15.1-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:d61f4695e6c866a23a21acab0509af1cdfd2c013cf256bbf5b6b5e2695827162"},
+    {file = "cffi-1.15.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:ed9cb427ba5504c1dc15ede7d516b84757c3e3d7868ccc85121d9310d27eed0b"},
+    {file = "cffi-1.15.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:39d39875251ca8f612b6f33e6b1195af86d1b3e60086068be9cc053aa4376e21"},
+    {file = "cffi-1.15.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:285d29981935eb726a4399badae8f0ffdff4f5050eaa6d0cfc3f64b857b77185"},
+    {file = "cffi-1.15.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3eb6971dcff08619f8d91607cfc726518b6fa2a9eba42856be181c6d0d9515fd"},
+    {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:21157295583fe8943475029ed5abdcf71eb3911894724e360acff1d61c1d54bc"},
+    {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5635bd9cb9731e6d4a1132a498dd34f764034a8ce60cef4f5319c0541159392f"},
+    {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2012c72d854c2d03e45d06ae57f40d78e5770d252f195b93f581acf3ba44496e"},
+    {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd86c085fae2efd48ac91dd7ccffcfc0571387fe1193d33b6394db7ef31fe2a4"},
+    {file = "cffi-1.15.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:fa6693661a4c91757f4412306191b6dc88c1703f780c8234035eac011922bc01"},
+    {file = "cffi-1.15.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:59c0b02d0a6c384d453fece7566d1c7e6b7bae4fc5874ef2ef46d56776d61c9e"},
+    {file = "cffi-1.15.1-cp310-cp310-win32.whl", hash = "sha256:cba9d6b9a7d64d4bd46167096fc9d2f835e25d7e4c121fb2ddfc6528fb0413b2"},
+    {file = "cffi-1.15.1-cp310-cp310-win_amd64.whl", hash = "sha256:ce4bcc037df4fc5e3d184794f27bdaab018943698f4ca31630bc7f84a7b69c6d"},
+    {file = "cffi-1.15.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3d08afd128ddaa624a48cf2b859afef385b720bb4b43df214f85616922e6a5ac"},
+    {file = "cffi-1.15.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3799aecf2e17cf585d977b780ce79ff0dc9b78d799fc694221ce814c2c19db83"},
+    {file = "cffi-1.15.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a591fe9e525846e4d154205572a029f653ada1a78b93697f3b5a8f1f2bc055b9"},
+    {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3548db281cd7d2561c9ad9984681c95f7b0e38881201e157833a2342c30d5e8c"},
+    {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91fc98adde3d7881af9b59ed0294046f3806221863722ba7d8d120c575314325"},
+    {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:94411f22c3985acaec6f83c6df553f2dbe17b698cc7f8ae751ff2237d96b9e3c"},
+    {file = "cffi-1.15.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:03425bdae262c76aad70202debd780501fabeaca237cdfddc008987c0e0f59ef"},
+    {file = "cffi-1.15.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:cc4d65aeeaa04136a12677d3dd0b1c0c94dc43abac5860ab33cceb42b801c1e8"},
+    {file = "cffi-1.15.1-cp311-cp311-win32.whl", hash = "sha256:a0f100c8912c114ff53e1202d0078b425bee3649ae34d7b070e9697f93c5d52d"},
+    {file = "cffi-1.15.1-cp311-cp311-win_amd64.whl", hash = "sha256:04ed324bda3cda42b9b695d51bb7d54b680b9719cfab04227cdd1e04e5de3104"},
+    {file = "cffi-1.15.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50a74364d85fd319352182ef59c5c790484a336f6db772c1a9231f1c3ed0cbd7"},
+    {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e263d77ee3dd201c3a142934a086a4450861778baaeeb45db4591ef65550b0a6"},
+    {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cec7d9412a9102bdc577382c3929b337320c4c4c4849f2c5cdd14d7368c5562d"},
+    {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4289fc34b2f5316fbb762d75362931e351941fa95fa18789191b33fc4cf9504a"},
+    {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:173379135477dc8cac4bc58f45db08ab45d228b3363adb7af79436135d028405"},
+    {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:6975a3fac6bc83c4a65c9f9fcab9e47019a11d3d2cf7f3c0d03431bf145a941e"},
+    {file = "cffi-1.15.1-cp36-cp36m-win32.whl", hash = "sha256:2470043b93ff09bf8fb1d46d1cb756ce6132c54826661a32d4e4d132e1977adf"},
+    {file = "cffi-1.15.1-cp36-cp36m-win_amd64.whl", hash = "sha256:30d78fbc8ebf9c92c9b7823ee18eb92f2e6ef79b45ac84db507f52fbe3ec4497"},
+    {file = "cffi-1.15.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:198caafb44239b60e252492445da556afafc7d1e3ab7a1fb3f0584ef6d742375"},
+    {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5ef34d190326c3b1f822a5b7a45f6c4535e2f47ed06fec77d3d799c450b2651e"},
+    {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8102eaf27e1e448db915d08afa8b41d6c7ca7a04b7d73af6514df10a3e74bd82"},
+    {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5df2768244d19ab7f60546d0c7c63ce1581f7af8b5de3eb3004b9b6fc8a9f84b"},
+    {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a8c4917bd7ad33e8eb21e9a5bbba979b49d9a97acb3a803092cbc1133e20343c"},
+    {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e2642fe3142e4cc4af0799748233ad6da94c62a8bec3a6648bf8ee68b1c7426"},
+    {file = "cffi-1.15.1-cp37-cp37m-win32.whl", hash = "sha256:e229a521186c75c8ad9490854fd8bbdd9a0c9aa3a524326b55be83b54d4e0ad9"},
+    {file = "cffi-1.15.1-cp37-cp37m-win_amd64.whl", hash = "sha256:a0b71b1b8fbf2b96e41c4d990244165e2c9be83d54962a9a1d118fd8657d2045"},
+    {file = "cffi-1.15.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:320dab6e7cb2eacdf0e658569d2575c4dad258c0fcc794f46215e1e39f90f2c3"},
+    {file = "cffi-1.15.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1e74c6b51a9ed6589199c787bf5f9875612ca4a8a0785fb2d4a84429badaf22a"},
+    {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a5c84c68147988265e60416b57fc83425a78058853509c1b0629c180094904a5"},
+    {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3b926aa83d1edb5aa5b427b4053dc420ec295a08e40911296b9eb1b6170f6cca"},
+    {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:87c450779d0914f2861b8526e035c5e6da0a3199d8f1add1a665e1cbc6fc6d02"},
+    {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4f2c9f67e9821cad2e5f480bc8d83b8742896f1242dba247911072d4fa94c192"},
+    {file = "cffi-1.15.1-cp38-cp38-win32.whl", hash = "sha256:8b7ee99e510d7b66cdb6c593f21c043c248537a32e0bedf02e01e9553a172314"},
+    {file = "cffi-1.15.1-cp38-cp38-win_amd64.whl", hash = "sha256:00a9ed42e88df81ffae7a8ab6d9356b371399b91dbdf0c3cb1e84c03a13aceb5"},
+    {file = "cffi-1.15.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:54a2db7b78338edd780e7ef7f9f6c442500fb0d41a5a4ea24fff1c929d5af585"},
+    {file = "cffi-1.15.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:fcd131dd944808b5bdb38e6f5b53013c5aa4f334c5cad0c72742f6eba4b73db0"},
+    {file = "cffi-1.15.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7473e861101c9e72452f9bf8acb984947aa1661a7704553a9f6e4baa5ba64415"},
+    {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c9a799e985904922a4d207a94eae35c78ebae90e128f0c4e521ce339396be9d"},
+    {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3bcde07039e586f91b45c88f8583ea7cf7a0770df3a1649627bf598332cb6984"},
+    {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:33ab79603146aace82c2427da5ca6e58f2b3f2fb5da893ceac0c42218a40be35"},
+    {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d598b938678ebf3c67377cdd45e09d431369c3b1a5b331058c338e201f12b27"},
+    {file = "cffi-1.15.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:db0fbb9c62743ce59a9ff687eb5f4afbe77e5e8403d6697f7446e5f609976f76"},
+    {file = "cffi-1.15.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:98d85c6a2bef81588d9227dde12db8a7f47f639f4a17c9ae08e773aa9c697bf3"},
+    {file = "cffi-1.15.1-cp39-cp39-win32.whl", hash = "sha256:40f4774f5a9d4f5e344f31a32b5096977b5d48560c5592e2f3d2c4374bd543ee"},
+    {file = "cffi-1.15.1-cp39-cp39-win_amd64.whl", hash = "sha256:70df4e3b545a17496c9b3f41f5115e69a4f2e77e94e1d2a8e1070bc0c38c8a3c"},
+    {file = "cffi-1.15.1.tar.gz", hash = "sha256:d400bfb9a37b1351253cb402671cea7e89bdecc294e8016a707f6d1d8ac934f9"},
 ]
 charset-normalizer = [
-    {file = "charset-normalizer-2.0.12.tar.gz", hash = "sha256:2857e29ff0d34db842cd7ca3230549d1a697f96ee6d3fb071cfa6c7393832597"},
-    {file = "charset_normalizer-2.0.12-py3-none-any.whl", hash = "sha256:6881edbebdb17b39b4eaaa821b438bf6eddffb4468cf344f09f89def34a8b1df"},
+    {file = "charset-normalizer-2.1.1.tar.gz", hash = "sha256:5a3d016c7c547f69d6f81fb0db9449ce888b418b5b9952cc5e6e66843e9dd845"},
+    {file = "charset_normalizer-2.1.1-py3-none-any.whl", hash = "sha256:83e9a75d1911279afd89352c68b45348559d1fc0506b054b346651b5e7fee29f"},
 ]
 cryptography = [
     {file = "cryptography-3.4.8-cp36-abi3-macosx_10_10_x86_64.whl", hash = "sha256:a00cf305f07b26c351d8d4e1af84ad7501eca8a342dedf24a7acb0e7b7406e14"},
@@ -568,8 +583,8 @@ hetzner = [
     {file = "hetzner-0.8.3.tar.gz", hash = "sha256:9a43dbbeb4a1f3efc86c5fe1c1d7039aaa635dfdb829506ec3aa34382d3a7114"},
 ]
 idna = [
-    {file = "idna-3.3-py3-none-any.whl", hash = "sha256:84d9dd047ffa80596e0f246e2eab0b391788b0503584e8945f2368256d2735ff"},
-    {file = "idna-3.3.tar.gz", hash = "sha256:9d643ff0a55b762d5cdb124b8eaa99c66322e2157b69160bc32796e824360e6d"},
+    {file = "idna-3.4-py3-none-any.whl", hash = "sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2"},
+    {file = "idna-3.4.tar.gz", hash = "sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4"},
 ]
 jmespath = [
     {file = "jmespath-1.0.1-py3-none-any.whl", hash = "sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980"},
@@ -580,7 +595,7 @@ jsonpickle = [
     {file = "jsonpickle-2.2.0.tar.gz", hash = "sha256:7b272918b0554182e53dc340ddd62d9b7f902fec7e7b05620c04f3ccef479a0e"},
 ]
 libvirt-python = [
-    {file = "libvirt-python-8.4.0.tar.gz", hash = "sha256:6d252ad4e0f765620bbde450be8f2b844e4f85c568b207ac644f52c6a982f46c"},
+    {file = "libvirt-python-8.8.0.tar.gz", hash = "sha256:3441dd34c8936393e195a1b046bc2cab1b14d35d66772e8a51fe4d9735ec6349"},
 ]
 nixops = []
 nixops-aws = []
@@ -593,8 +608,8 @@ nixops-virtd = []
 nixopsvbox = []
 nixos-modules-contrib = []
 pluggy = [
-    {file = "pluggy-0.13.1-py2.py3-none-any.whl", hash = "sha256:966c145cd83c96502c3c3868f50408687b38434af77734af1e9ca461a4081d2d"},
-    {file = "pluggy-0.13.1.tar.gz", hash = "sha256:15b2acde666561e1298d71b523007ed7364de07029219b604cf808bfa1c765b0"},
+    {file = "pluggy-1.0.0-py2.py3-none-any.whl", hash = "sha256:74134bbf457f031a36d68416e1509f34bd5ccc019f0bcc952c7b909d06b37bd3"},
+    {file = "pluggy-1.0.0.tar.gz", hash = "sha256:4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159"},
 ]
 prettytable = [
     {file = "prettytable-0.7.2.tar.bz2", hash = "sha256:853c116513625c738dc3ce1aee148b5b5757a86727e67eff6502c7ca59d43c36"},
@@ -614,8 +629,8 @@ python-digitalocean = [
     {file = "python_digitalocean-1.17.0-py3-none-any.whl", hash = "sha256:0032168e022e85fca314eb3f8dfaabf82087f2ed40839eb28f1eeeeca5afb1fa"},
 ]
 requests = [
-    {file = "requests-2.28.0-py3-none-any.whl", hash = "sha256:bc7861137fbce630f17b03d3ad02ad0bf978c844f3536d0edda6499dafce2b6f"},
-    {file = "requests-2.28.0.tar.gz", hash = "sha256:d568723a7ebd25875d8d1eaf5dfa068cd2fc8194b2e483d7b1f7c81918dbec6b"},
+    {file = "requests-2.28.1-py3-none-any.whl", hash = "sha256:8fefa2a1a1365bf5520aac41836fbee479da67864514bdb821f31ce07ce65349"},
+    {file = "requests-2.28.1.tar.gz", hash = "sha256:7c5599b102feddaa661c826c56ab4fee28bfd17f5abca1ebbe3e7f19d7c97983"},
 ]
 s3transfer = [
     {file = "s3transfer-0.6.0-py3-none-any.whl", hash = "sha256:06176b74f3a15f61f1b4f25a1fc29a4429040b7647133a463da8fa5bd28d5ecd"},
@@ -635,6 +650,6 @@ typing-extensions = [
     {file = "typing_extensions-3.10.0.2.tar.gz", hash = "sha256:49f75d16ff11f1cd258e1b988ccff82a3ca5570217d7ad8c5f48205dd99a677e"},
 ]
 urllib3 = [
-    {file = "urllib3-1.26.9-py2.py3-none-any.whl", hash = "sha256:44ece4d53fb1706f667c9bd1c648f5469a2ec925fcf3a776667042d645472c14"},
-    {file = "urllib3-1.26.9.tar.gz", hash = "sha256:aabaf16477806a5e1dd19aa41f8c2b7950dd3c746362d7e3223dbe6de6ac448e"},
+    {file = "urllib3-1.26.12-py2.py3-none-any.whl", hash = "sha256:b930dd878d5a8afb066a637fbb35144fe7901e3b209d1cd4f524bd0e9deee997"},
+    {file = "urllib3-1.26.12.tar.gz", hash = "sha256:3fa96cf423e6987997fc326ae8df396db2a8b7c667747d47ddd8ecba91f4a74e"},
 ]
diff --git a/pkgs/applications/networking/cluster/nixops/pyproject.toml b/pkgs/applications/networking/cluster/nixops/pyproject.toml
index 1a1097649493e..2f1132a51bc9f 100644
--- a/pkgs/applications/networking/cluster/nixops/pyproject.toml
+++ b/pkgs/applications/networking/cluster/nixops/pyproject.toml
@@ -5,7 +5,7 @@ description = "NixOps 2.0"
 authors = ["Adam Hoese <adam.hose@tweag.io>"]
 
 [tool.poetry.dependencies]
-python = "^3.9"
+python = "^3.10"
 nixops = {git = "https://github.com/NixOS/nixops.git"}
 nixops-aws = {git = "https://github.com/NixOS/nixops-aws.git"}
 nixops-digitalocean = {git = "https://github.com/nix-community/nixops-digitalocean.git"}
diff --git a/pkgs/applications/networking/cluster/nixops/shell.nix b/pkgs/applications/networking/cluster/nixops/shell.nix
index a40c600691ea9..a7926d0fd5333 100644
--- a/pkgs/applications/networking/cluster/nixops/shell.nix
+++ b/pkgs/applications/networking/cluster/nixops/shell.nix
@@ -2,9 +2,10 @@
 
 pkgs.mkShell {
   packages = [
+    pkgs.python310
     pkgs.poetry2nix.cli
     pkgs.pkg-config
     pkgs.libvirt
-    pkgs.python39Packages.poetry
+    pkgs.poetry
   ];
 }
diff --git a/pkgs/applications/networking/cluster/nomad/1.2.nix b/pkgs/applications/networking/cluster/nomad/1.2.nix
index 901f464c38f40..23d71704a04b1 100644
--- a/pkgs/applications/networking/cluster/nomad/1.2.nix
+++ b/pkgs/applications/networking/cluster/nomad/1.2.nix
@@ -4,7 +4,7 @@
 
 callPackage ./generic.nix {
   inherit buildGoModule;
-  version = "1.2.12";
-  sha256 = "sha256-PdMo96/foN7rSNvMOQ16N3advy+h0GX7LYtfl23xRfs=";
-  vendorSha256 = "sha256-fmqhaM3yK2ThiD+qwQTr+d5FqhZWzkwcGTSPdXNNFTU=";
+  version = "1.2.13";
+  sha256 = "sha256-yDcvN6cKG1BlBq1ygYB58bS1YRHWqJgLXRlqI7lrW1A=";
+  vendorSha256 = "sha256-dPErDlJ4oNpER3Ij4yrN77V8sZvDUuXY7dM39u9xT4I=";
 }
diff --git a/pkgs/applications/networking/cluster/nomad/1.3.nix b/pkgs/applications/networking/cluster/nomad/1.3.nix
index 0d33c5efd0874..eb3d81064213f 100644
--- a/pkgs/applications/networking/cluster/nomad/1.3.nix
+++ b/pkgs/applications/networking/cluster/nomad/1.3.nix
@@ -4,7 +4,7 @@
 
 callPackage ./generic.nix {
   inherit buildGoModule;
-  version = "1.3.5";
-  sha256 = "sha256-WKS7EfZxysy/oyq1fa8rKvmfgHRiB7adSVhALZNFYgo=";
-  vendorSha256 = "sha256-byc6wAxpqhxlN3kyHyFQeBS9/oIjHeoz6ldYskizgaI=";
+  version = "1.3.6";
+  sha256 = "sha256-E1+QFaakAsqeXxAfY80ExWVIud7Q/q2TaUVsmADjsgo=";
+  vendorSha256 = "sha256-kgTRjPr7GsoBeE/s9wrmUWE5jv1ZmszfVDsVaRbdx14=";
 }
diff --git a/pkgs/applications/networking/cluster/nomad/1.4.nix b/pkgs/applications/networking/cluster/nomad/1.4.nix
new file mode 100644
index 0000000000000..6c912ddf755ac
--- /dev/null
+++ b/pkgs/applications/networking/cluster/nomad/1.4.nix
@@ -0,0 +1,10 @@
+{ callPackage
+, buildGoModule
+}:
+
+callPackage ./generic.nix {
+  inherit buildGoModule;
+  version = "1.4.1";
+  sha256 = "sha256-LQ/fypao6Amun9MY5FRCRasxqnywzI5gpzcO2PPJdWg=";
+  vendorSha256 = "sha256-kfT2UGC8Wl7CM9lOU75UqKc0/O1okGCoGDpmQntakbU=";
+}
diff --git a/pkgs/applications/networking/cluster/pinniped/default.nix b/pkgs/applications/networking/cluster/pinniped/default.nix
index ebc074d148a9d..32ce4d74a3d93 100644
--- a/pkgs/applications/networking/cluster/pinniped/default.nix
+++ b/pkgs/applications/networking/cluster/pinniped/default.nix
@@ -2,18 +2,18 @@
 
 buildGoModule rec{
   pname = "pinniped";
-  version = "0.19.0";
+  version = "0.20.0";
 
   src = fetchFromGitHub {
     owner = "vmware-tanzu";
     repo = "pinniped";
     rev = "v${version}";
-    sha256 = "sha256-VGvT0jj2f4+jiaPQkebL0GE+W4U8+RfSEsGr2sNBu2Q=";
+    sha256 = "sha256-JKZij9f6zlBzbYolxz03R5j95zKELVmEhX+QRTxF/cc=";
   };
 
   subPackages = "cmd/pinniped";
 
-  vendorSha256 = "sha256-7jQRUYJiRdYuAy3x+VPK4Nh5GF6ME7juloagm85oOVg=";
+  vendorSha256 = "sha256-szv/B7LG/In0j6MT6KCnuUfaCnK7RsJOLeuOtJ/ig9w=";
 
   ldflags = [ "-s" "-w" ];
 
diff --git a/pkgs/applications/networking/cluster/spark/default.nix b/pkgs/applications/networking/cluster/spark/default.nix
index 2a9046d94a0bb..e30a1214c3ae9 100644
--- a/pkgs/applications/networking/cluster/spark/default.nix
+++ b/pkgs/applications/networking/cluster/spark/default.nix
@@ -74,8 +74,8 @@ in
 {
   spark_3_2 = spark rec {
     pname = "spark";
-    version = "3.2.1";
-    sha256 = "0kxdqczwmj6pray0h8h1qhygni9m82jzznw5fbv9hrxrkq1v182d";
+    version = "3.2.2";
+    sha256 = "sha256-yKoTyD/IqvsJQs0jB67h1zqwYaLuikdoa5fYIXtvhz0=";
   };
   spark_3_1 = spark rec {
     pname = "spark";
diff --git a/pkgs/applications/networking/cluster/talosctl/default.nix b/pkgs/applications/networking/cluster/talosctl/default.nix
index 4ddde426e38ca..22d252a00baa1 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.3";
+  version = "1.2.4";
 
   src = fetchFromGitHub {
     owner = "siderolabs";
     repo = "talos";
     rev = "v${version}";
-    sha256 = "sha256-BCbbQQUk3iJJQhjkwlSAVz/SbVPvZGhGHwXSPgCPBHg=";
+    sha256 = "sha256-nAT9tn/YfivM25xBL3POgdAF87MB/J2HQfcFOeCEj2o=";
   };
 
-  vendorSha256 = "sha256-jUVPJ1mq9pMJGwS/0nBv9hsXotiqUksbKChjegF7KRk=";
+  vendorSha256 = "sha256-b9F7P6WRdJywRNQdFY+SJqYxic2W/HrIEYhvCLo3Lok=";
 
   ldflags = [ "-s" "-w" ];
 
diff --git a/pkgs/applications/networking/cluster/tanka/default.nix b/pkgs/applications/networking/cluster/tanka/default.nix
index c9a5d7c60cee7..010527121e573 100644
--- a/pkgs/applications/networking/cluster/tanka/default.nix
+++ b/pkgs/applications/networking/cluster/tanka/default.nix
@@ -2,22 +2,22 @@
 
 buildGoModule rec {
   pname = "tanka";
-  version = "0.22.1";
+  version = "0.23.1";
 
   src = fetchFromGitHub {
     owner = "grafana";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-MMQv3/Ft6/FUueGEXGqYWAYy4zc2R6LASbh2x7eJNdQ=";
+    sha256 = "sha256-exPFlcbku51Bs/YISRyjl8iwLYRVS9ltRQPpd/QpnWk=";
   };
 
-  vendorSha256 = "sha256-QwtcWzJbusa8BxtG5xmGUgqG0qCMSpkzbmes/x3lnWc=";
+  vendorSha256 = "sha256-eo4B2p5Yo1r5jro49mSetp9AFYhcTXbyy7wGuaFwbb0=";
 
   doCheck = false;
 
   subPackages = [ "cmd/tk" ];
 
-  ldflags = [ "-s" "-w" "-extldflags '-static'" "-X github.com/grafana/tanka/pkg/tanka.CURRENT_VERSION=v${version}" ];
+  ldflags = [ "-s" "-w" "-extldflags '-static'" "-X github.com/grafana/tanka/pkg/tanka.CurrentVersion=v${version}" ];
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/applications/networking/cluster/tektoncd-cli/default.nix b/pkgs/applications/networking/cluster/tektoncd-cli/default.nix
index 23914a6a9fe82..c3c6355cd0cfc 100644
--- a/pkgs/applications/networking/cluster/tektoncd-cli/default.nix
+++ b/pkgs/applications/networking/cluster/tektoncd-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "tektoncd-cli";
-  version = "0.24.0";
+  version = "0.24.1";
 
   src = fetchFromGitHub {
     owner = "tektoncd";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "sha256-mrTtg60LZpRONrEhX53EhSYpfdfGMvPK4WhTHeAKsoQ=";
+    sha256 = "sha256-8dCmORfTMFHSyc9FOpL01ywxGcH3uolzD2aOtyy191Q=";
   };
 
   vendorSha256 = null;
diff --git a/pkgs/applications/networking/cluster/terraform-providers/default.nix b/pkgs/applications/networking/cluster/terraform-providers/default.nix
index 835198c94e635..fe4e052fd5118 100644
--- a/pkgs/applications/networking/cluster/terraform-providers/default.nix
+++ b/pkgs/applications/networking/cluster/terraform-providers/default.nix
@@ -1,6 +1,6 @@
 { lib
 , stdenv
-, buildGoModule
+, buildGo119Module
 , fetchFromGitHub
 , callPackage
 , config
@@ -21,7 +21,7 @@ let
      , vendorHash ? throw "use vendorHash instead of vendorSha256" # added 2202/09
      , deleteVendor ? false
      , proxyVendor ? false
-     , mkProviderGoModule ? buildGoModule
+     , mkProviderGoModule ? buildGo119Module
        # Looks like "registry.terraform.io/vancluever/acme"
      , provider-source-address
      , ...
@@ -52,7 +52,7 @@ let
         passthru = attrs // {
           updateScript = writeShellScript "update" ''
             provider="$(basename ${provider-source-address})"
-            ./pkgs/applications/networking/cluster/terraform-providers/update-provider --no-build "$provider"
+            ./pkgs/applications/networking/cluster/terraform-providers/update-provider "$provider"
           '';
         };
       });
diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json
index b463facccbf66..cfcab22c87284 100644
--- a/pkgs/applications/networking/cluster/terraform-providers/providers.json
+++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json
@@ -11,13 +11,14 @@
     "version": "2.5.2"
   },
   "acme": {
-    "hash": "sha256-nafJJ2Gr2jA09mjh8hozdDgl67h+10D35KtqjTUPgBE=",
+    "hash": "sha256-H+1/Au/jCxNxrV+kk6tylUF85taZcs44uWed1QH1aRo=",
     "owner": "vancluever",
     "provider-source-address": "registry.terraform.io/vancluever/acme",
+    "proxyVendor": true,
     "repo": "terraform-provider-acme",
-    "rev": "v2.10.0",
-    "vendorHash": "sha256-lNI0u8DCBl4mGVecRfAqieCooyJlqK+Z4eixPFFyBuU=",
-    "version": "2.10.0"
+    "rev": "v2.11.1",
+    "vendorHash": "sha256-QGZKoxiSiT78gk2vc8uE6k1LAi/S1o5W9TZN7T/1XfA=",
+    "version": "2.11.1"
   },
   "age": {
     "hash": "sha256-bJrzjvkrCX93bNqCA+FdRibHnAw6cb61StqtwUY5ok4=",
@@ -38,22 +39,21 @@
     "version": "3.7.0"
   },
   "akamai": {
-    "hash": "sha256-XlL8UcfZI1oxGti2Hr4mgmu34qbyPG5yJJ+h8ndgo/k=",
+    "hash": "sha256-+EHXB2VH1UWYQ1y6Ou+5VhjH7elhfgLYW/imhN2t15Q=",
     "owner": "akamai",
     "provider-source-address": "registry.terraform.io/akamai/akamai",
     "repo": "terraform-provider-akamai",
-    "rev": "v2.4.1",
+    "rev": "v2.4.2",
     "vendorHash": "sha256-BRPDsb0h9YINJ4dwGM5FEuUto3UFVImRUn/i6gHAkAc=",
-    "version": "2.4.1"
+    "version": "2.4.2"
   },
   "alicloud": {
-    "deleteVendor": true,
     "hash": "sha256-lJsCXLSIbb/jLjNsvU0GFljlrKBR2TDDOGXDhBTaIKI=",
     "owner": "aliyun",
     "provider-source-address": "registry.terraform.io/aliyun/alicloud",
     "repo": "terraform-provider-alicloud",
     "rev": "v1.187.0",
-    "vendorHash": "sha256-aiybvpps/TyrMRP8vbfhBAUO+9kR7WWrgo1kOWKTj24=",
+    "vendorHash": null,
     "version": "1.187.0"
   },
   "ansible": {
@@ -75,13 +75,13 @@
     "version": "2.2.0"
   },
   "auth0": {
-    "hash": "sha256-0y7sS03/cvO49jo4IY+xyh3dYZYcHOTlbCV1JBiYZQ4=",
+    "hash": "sha256-xe9BWrkuQqmwjUy3ys7M3IWJjqZiWkox9NYmsH3VHJ8=",
     "owner": "auth0",
     "provider-source-address": "registry.terraform.io/auth0/auth0",
     "repo": "terraform-provider-auth0",
-    "rev": "v0.37.1",
-    "vendorHash": "sha256-8mGbTkAf42YQ5kKQmC0qSS8lj6Bd/KzpyX3MtS9r6Fk=",
-    "version": "0.37.1"
+    "rev": "v0.38.0",
+    "vendorHash": "sha256-e5mQ3NrWdFeyIjh38YbTd9fRVuxJB6FPmw7xNlEHzGY=",
+    "version": "0.38.0"
   },
   "avi": {
     "hash": "sha256-BQ4M1e7wWDCq2HEJIoAAqSUmq9hV66auvH47p3j2M8I=",
@@ -102,13 +102,13 @@
     "version": "2.24.1"
   },
   "aws": {
-    "hash": "sha256-btpN208sQQLCq5yj4w23AHbEG+ylX3o7GB5DHmGIrw0=",
+    "hash": "sha256-4h5VdCgzUKRAj8gYnFuDMv4fFYEguBaN6fCh4ny8pz4=",
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/aws",
     "repo": "terraform-provider-aws",
-    "rev": "v4.33.0",
-    "vendorHash": "sha256-bQrf5s/6GPOfW5iYO7gBdSoxSnKRDUEoSVIn+NPQH20=",
-    "version": "4.33.0"
+    "rev": "v4.34.0",
+    "vendorHash": "sha256-bbt8scBf7VzhCX6C9cAwHDFbZPyuumcW7F88kbQ0og4=",
+    "version": "4.34.0"
   },
   "azuread": {
     "hash": "sha256-rj/ODxmuK0Ro1KVHh4onR/evtUdKzay9BpQDgrx+eNA=",
@@ -120,13 +120,13 @@
     "version": "2.29.0"
   },
   "azurerm": {
-    "hash": "sha256-dBrmoxkQ4KlAM3gW5JRMy96nI7BJ5UH647yZkAViosk=",
+    "hash": "sha256-3dJ/nXpMYEK7sB6VAnkbUfQRoCsiqXhBkU6gCYBpmHY=",
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/azurerm",
     "repo": "terraform-provider-azurerm",
-    "rev": "v3.25.0",
+    "rev": "v3.26.0",
     "vendorHash": null,
-    "version": "3.25.0"
+    "version": "3.26.0"
   },
   "azurestack": {
     "hash": "sha256-aSwVa7y1AJ6sExx+bO/93oLBNgSBDJjuPYPY8i3C9T0=",
@@ -138,13 +138,12 @@
     "version": "1.0.0"
   },
   "baiducloud": {
-    "deleteVendor": true,
     "hash": "sha256-LaehOof8T2LGgn6Q/oo+SPcld9QRVk+MjaEJnYvNNnQ=",
     "owner": "baidubce",
     "provider-source-address": "registry.terraform.io/baidubce/baiducloud",
     "repo": "terraform-provider-baiducloud",
     "rev": "v1.15.10",
-    "vendorHash": "sha256-v07NMx8caXvY97FefNnRV7gMQbUq4k2ZmE5huqqe354=",
+    "vendorHash": null,
     "version": "1.15.10"
   },
   "bigip": {
@@ -157,13 +156,13 @@
     "version": "1.15.2"
   },
   "bitbucket": {
-    "hash": "sha256-arNkR67rsqxVV2omEV9MWQmDO95PLuoVicifLjEfBTM=",
+    "hash": "sha256-0Sts826Yt6xVVwGpqTC1ZAiNB2+7S6z9rPXDGPNpmOk=",
     "owner": "DrFaust92",
     "provider-source-address": "registry.terraform.io/DrFaust92/bitbucket",
     "repo": "terraform-provider-bitbucket",
-    "rev": "v2.21.2",
-    "vendorHash": "sha256-UQw7+qsxVff9EtWTpAaBkBm0bOQzerfCGx1SUKS9wEQ=",
-    "version": "2.21.2"
+    "rev": "v2.21.3",
+    "vendorHash": "sha256-VFh86MFKzgN7LvSYG7TooYapOZOJbDC8sntPzGVaNs8=",
+    "version": "2.21.3"
   },
   "brightbox": {
     "hash": "sha256-l4gN7gxLMTuUMjf50Hc2Els5pJ4BId1QlRAhykseK7c=",
@@ -214,22 +213,22 @@
     "version": "1.3.0"
   },
   "cloudamqp": {
-    "hash": "sha256-z0tCNZTc7Lc8zw3ueRz3JR+rTNQifEH8RW7zgKe5xhs=",
+    "hash": "sha256-RllW85iootELA7iz+UPD0s4KKP7gGRNHVwHd/CCUv0c=",
     "owner": "cloudamqp",
     "provider-source-address": "registry.terraform.io/cloudamqp/cloudamqp",
     "repo": "terraform-provider-cloudamqp",
-    "rev": "v1.19.2",
-    "vendorHash": "sha256-228hxOsa4CmJcp/AJYR5SACbcCfuO0y4Z9VzqzZ5iJQ=",
-    "version": "1.19.2"
+    "rev": "v1.19.3",
+    "vendorHash": "sha256-S8xlMpsHeJePYyydUpBSuOxW0APZw8qxcm+Ou9u1rWc=",
+    "version": "1.19.3"
   },
   "cloudflare": {
-    "hash": "sha256-J7hKWt7aHhT9lNbbz73YljcpdfDTcwNsbNE60CHflw0=",
+    "hash": "sha256-nHA9z7IziBpMgR9ooCt6pGjE1CaxjNHQMpUdxl0l3ns=",
     "owner": "cloudflare",
     "provider-source-address": "registry.terraform.io/cloudflare/cloudflare",
     "repo": "terraform-provider-cloudflare",
-    "rev": "v3.24.0",
-    "vendorHash": "sha256-s7VdZAQdXLGiA3q2+X4sQPIrI9f55sdd7HxbLQ8SdBk=",
-    "version": "3.24.0"
+    "rev": "v3.25.0",
+    "vendorHash": "sha256-9LZ8KjobPSSyZ02oYUrn1gftNYtui/zezfIYD9mkhQc=",
+    "version": "3.25.0"
   },
   "cloudfoundry": {
     "hash": "sha256-VfGB0NkT36oYT5F1fh1N/2rlZdfhk+K76AXNh0NkO50=",
@@ -305,22 +304,22 @@
     "version": "0.0.3"
   },
   "digitalocean": {
-    "hash": "sha256-FnVmkHNMuWF01eSOCMyPQescyao/cyUjXwimwYU5gqY=",
+    "hash": "sha256-iLwAkmzKRY8NfUHVGcstIHlSnZY+oi7fhCNP2kCzIxM=",
     "owner": "digitalocean",
     "provider-source-address": "registry.terraform.io/digitalocean/digitalocean",
     "repo": "terraform-provider-digitalocean",
-    "rev": "v2.22.3",
+    "rev": "v2.23.0",
     "vendorHash": null,
-    "version": "2.22.3"
+    "version": "2.23.0"
   },
   "dme": {
-    "hash": "sha256-Fz35J15S0JxxVy86xYuwHM1obOYpJVfzEhN1NqoAXbo=",
+    "hash": "sha256-QNkr+6lKlKY+os0Pf6dqlmIn9u2LtMOo6ONahDeA9mE=",
     "owner": "DNSMadeEasy",
     "provider-source-address": "registry.terraform.io/DNSMadeEasy/dme",
     "repo": "terraform-provider-dme",
-    "rev": "v1.0.5",
+    "rev": "v1.0.6",
     "vendorHash": null,
-    "version": "1.0.5"
+    "version": "1.0.6"
   },
   "dns": {
     "hash": "sha256-aH9sDqlXSq2dJi0kzGreJZ5V8A0WU0UqTpxWPKn23rM=",
@@ -350,13 +349,13 @@
     "version": "2.22.0"
   },
   "elasticsearch": {
-    "hash": "sha256-ir3bPtsghZkfJbRyh5nlK9cGPA49WGxZDb3jMtfWzms=",
+    "hash": "sha256-7sMF7LBM5tnOtERufh7LaJlfcJ5WHIynpzlTg/05u3I=",
     "owner": "phillbaker",
     "provider-source-address": "registry.terraform.io/phillbaker/elasticsearch",
     "repo": "terraform-provider-elasticsearch",
-    "rev": "v2.0.4",
+    "rev": "v2.0.5",
     "vendorHash": "sha256-oVTanZpCWs05HwyIKW2ajiBPz1HXOFzBAt5Us+EtTRw=",
-    "version": "2.0.4"
+    "version": "2.0.5"
   },
   "equinix": {
     "hash": "sha256-gvI9awkKiWWnw6O/KvskFTHZfvajGfgYu8DGsT34Siw=",
@@ -386,13 +385,13 @@
     "version": "2.2.2"
   },
   "fastly": {
-    "hash": "sha256-Ej7E/xbB8V6Pge/sAkgtQXJac1nuQ3liQDM531zOnu8=",
+    "hash": "sha256-CafrOJiDkIrRph8X+EvvBkI1T7j0qUlOnyhrylToJ7s=",
     "owner": "fastly",
     "provider-source-address": "registry.terraform.io/fastly/fastly",
     "repo": "terraform-provider-fastly",
-    "rev": "v2.3.2",
+    "rev": "v2.3.3",
     "vendorHash": null,
-    "version": "2.3.2"
+    "version": "2.3.3"
   },
   "flexibleengine": {
     "hash": "sha256-2eXNumT1Hkc33bW635qYr5jxlByX+yZ8zSKRpgKWQJo=",
@@ -405,14 +404,14 @@
   },
   "fortios": {
     "deleteVendor": true,
-    "hash": "sha256-jXaEGWt/O0Cv15ksFax571f6aoDhVpNZSbvbOFj6TZ4=",
+    "hash": "sha256-nvK5mbQdCB6lmdyhJbMS15eOER8eIAYv26mc1FCifXs=",
     "owner": "fortinetdev",
     "provider-source-address": "registry.terraform.io/fortinetdev/fortios",
     "proxyVendor": true,
     "repo": "terraform-provider-fortios",
-    "rev": "v1.15.0",
-    "vendorHash": "sha256-WkF2mVDrDlCefM4pjADoXsVwpa7E02c6kUyOgHxNFpo=",
-    "version": "1.15.0"
+    "rev": "v1.16.0",
+    "vendorHash": "sha256-ZgVA2+2tu17dnAc51Aw3k6v8k7QosNTmFjFhmeknxa8=",
+    "version": "1.16.0"
   },
   "gandi": {
     "hash": "sha256-uXZcYiNsBf5XsMjOjjQeNtGwLhTgYES1E9t63fBEI6Q=",
@@ -442,24 +441,24 @@
     "version": "3.18.0"
   },
   "google": {
-    "hash": "sha256-RveRVr5IdZrBX9uF0q0wyx/sh+cNBDp9CAv3zXOdATQ=",
+    "hash": "sha256-tjcG23chJwuaf/SRD6Kqz49fdWFKMaVygg/FGydaSR8=",
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/google",
     "proxyVendor": true,
     "repo": "terraform-provider-google",
-    "rev": "v4.38.0",
-    "vendorHash": "sha256-U5J9X51PAq3Cq/XH5ggThzsPaEy+AveHqD4D6NbK/AU=",
-    "version": "4.38.0"
+    "rev": "v4.40.0",
+    "vendorHash": "sha256-PWSok1sTU/57Xeri4Un5B9Fbwg8gBP6Quy5oIZrjxUI=",
+    "version": "4.40.0"
   },
   "google-beta": {
-    "hash": "sha256-zQ8GgmWM3frLTstcrO0GKBWk1pMQTNMqxDGH9EmlzcQ=",
+    "hash": "sha256-U27ZzjNMFP/TCpXrU0QQ0uYB0sgeWVmRrQFIzq7FAhs=",
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/google-beta",
     "proxyVendor": true,
     "repo": "terraform-provider-google-beta",
-    "rev": "v4.38.0",
-    "vendorHash": "sha256-U5J9X51PAq3Cq/XH5ggThzsPaEy+AveHqD4D6NbK/AU=",
-    "version": "4.38.0"
+    "rev": "v4.40.0",
+    "vendorHash": "sha256-PWSok1sTU/57Xeri4Un5B9Fbwg8gBP6Quy5oIZrjxUI=",
+    "version": "4.40.0"
   },
   "googleworkspace": {
     "hash": "sha256-dedYnsKHizxJZibuvJOMbJoux0W6zgKaK5fxIofKqCY=",
@@ -531,7 +530,7 @@
     "proxyVendor": true,
     "repo": "terraform-provider-htpasswd",
     "rev": "v1.0.4",
-    "vendorHash": "sha256-VlJO11t7uqAl0U26T/UY2u//+Vfq97+h4gABWt7iQwk=",
+    "vendorHash": "sha256-+D8HxLRUSh7bCN6j+NSkPZTabvqknY7uJ9F5JxefomA=",
     "version": "1.0.4"
   },
   "http": {
@@ -571,13 +570,13 @@
     "version": "0.1.2"
   },
   "ibm": {
-    "hash": "sha256-zcc7xUSTntTC0vLFBEW1PvvkSEtzD5VkKy/Jq8x5zKk=",
+    "hash": "sha256-OcOmcTZe2J0cz9glVi/oLp55QrhsOpT0sj0PS32vnow=",
     "owner": "IBM-Cloud",
     "provider-source-address": "registry.terraform.io/IBM-Cloud/ibm",
     "repo": "terraform-provider-ibm",
-    "rev": "v1.45.1",
-    "vendorHash": "sha256-FAoRQxnc/vD5KYp0hb6iWGbZiWEtLzEr6R+vdruitKc=",
-    "version": "1.45.1"
+    "rev": "v1.46.0",
+    "vendorHash": "sha256-Zhk2Q7tnL3P/uLo/61o/XiiMKBdmb2749S/Ax1ZrxAo=",
+    "version": "1.46.0"
   },
   "icinga2": {
     "hash": "sha256-Y/Oq0aTzP+oSKPhHiHY9Leal4HJJm7TNDpcdqkUsCmk=",
@@ -607,31 +606,31 @@
     "version": "0.5.1"
   },
   "kafka-connect": {
-    "hash": "sha256-boSOXVxHMSNAd0vMgy+DhvPxfjm0dfVxxZHvrgSkGp8=",
+    "hash": "sha256-PiSVfzNPEXAgONb/eaVAN4yPudn5glcHL0BLqE5PWsw=",
     "owner": "Mongey",
     "provider-source-address": "registry.terraform.io/Mongey/kafka-connect",
     "repo": "terraform-provider-kafka-connect",
-    "rev": "v0.2.4",
-    "vendorHash": "sha256-IRDWTCJubSSvaYrsLRcGeqrUuOXrBH1hf1yRqGRElCk=",
-    "version": "0.2.4"
+    "rev": "v0.3.0",
+    "vendorHash": "sha256-cLp8w0UcO9Hork/GTLOGCcSvfaYEIKl5so3/0ELm79Y=",
+    "version": "0.3.0"
   },
   "keycloak": {
-    "hash": "sha256-JDMPr2uFi+9CcHdyigmP1DM3uRx2+eFnzSaHp+es2Tg=",
+    "hash": "sha256-5IMSUSaSoe+zqwtcL6aQ7PTtLpNiWxYp/J38Zm+Hniw=",
     "owner": "mrparkers",
     "provider-source-address": "registry.terraform.io/mrparkers/keycloak",
     "repo": "terraform-provider-keycloak",
-    "rev": "v3.10.0",
-    "vendorHash": "sha256-8x0MlwAzeA2O6wXXHSk++K0ePmzE9/2lfo2ID83LzRM=",
-    "version": "3.10.0"
+    "rev": "v4.0.0",
+    "vendorHash": "sha256-nDvnLEOtXkUJFY22pKogOzkWrj4qjyQbdlJ5pa/xnK8=",
+    "version": "4.0.0"
   },
   "ksyun": {
-    "hash": "sha256-y7F6eCyiYVtiBaHCaZyUUPAE9GkKo/m/OY98EeBd8DU=",
+    "hash": "sha256-sfvmDByxAQbbdPHb9l5tIT5dyu8eA3r63i5FZJYEYTI=",
     "owner": "kingsoftcloud",
     "provider-source-address": "registry.terraform.io/kingsoftcloud/ksyun",
     "repo": "terraform-provider-ksyun",
-    "rev": "v1.3.54",
+    "rev": "v1.3.55",
     "vendorHash": "sha256-miHKAz+ONXtuC1DNukcyZbbaYReY69dz9Zk6cJdORdQ=",
-    "version": "1.3.54"
+    "version": "1.3.55"
   },
   "kubectl": {
     "hash": "sha256-UkUwWi7Z9cSMyZakD6JxMl+qdczAYfZQgwroCUjFIUM=",
@@ -643,31 +642,31 @@
     "version": "1.14.0"
   },
   "kubernetes": {
-    "hash": "sha256-2/7sSgLt/t5e9YWi9D5hOfirHDrfHnuK3w684KjKIWI=",
+    "hash": "sha256-E8ew1MwQa1DVYZH//ePjZXLQdyRN7Q0yomH0ma0neks=",
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/kubernetes",
     "repo": "terraform-provider-kubernetes",
-    "rev": "v2.13.1",
+    "rev": "v2.14.0",
     "vendorHash": null,
-    "version": "2.13.1"
+    "version": "2.14.0"
   },
   "launchdarkly": {
-    "hash": "sha256-XseHo/PVNGV+TKR+DBOmNlwYozFPWDolQR6/mE/XwVQ=",
+    "hash": "sha256-yIFR0QvSLWxCuzmq1nd55EmStpAZzf5tTxRUU6jqWvI=",
     "owner": "launchdarkly",
     "provider-source-address": "registry.terraform.io/launchdarkly/launchdarkly",
     "repo": "terraform-provider-launchdarkly",
-    "rev": "v2.9.2",
+    "rev": "v2.9.3",
     "vendorHash": "sha256-Ef07RvkqXR/7qf8gHayxczBJ/ChHDmxR6+/wzaokkzk=",
-    "version": "2.9.2"
+    "version": "2.9.3"
   },
   "libvirt": {
-    "hash": "sha256-PmaGBKAaOInLId6r6D29YOedqEA1EreVvI1oRtegPfQ=",
+    "hash": "sha256-j5EcxmkCyHwbXzvJ9lfQBRBYa3SbrKc3kbt1KZTm0gY=",
     "owner": "dmacvicar",
     "provider-source-address": "registry.terraform.io/dmacvicar/libvirt",
     "repo": "terraform-provider-libvirt",
-    "rev": "v0.6.14",
-    "vendorHash": "sha256-yrz6o2iEAVtc8+dn+KNAGaGy5TtfFMrL4I9sff7SAM8=",
-    "version": "0.6.14"
+    "rev": "v0.7.0",
+    "vendorHash": "sha256-4jAJf2FC83NdH4t1l7EA26yQ0pqteWmTIyrZDJdi7fg=",
+    "version": "0.7.0"
   },
   "linode": {
     "hash": "sha256-gysdJOGUmhwFoRpR0Yp2p/Vjb69k+fDzcWatOgA+/AQ=",
@@ -754,10 +753,9 @@
     "hash": "sha256-NVbUKSG5rGUtRlaJVND3nW+0Svc2d8R8uvxGKcQktco=",
     "owner": "mongodb",
     "provider-source-address": "registry.terraform.io/mongodb/mongodbatlas",
-    "proxyVendor": true,
     "repo": "terraform-provider-mongodbatlas",
     "rev": "v1.4.6",
-    "vendorHash": "sha256-jmT5SoJA4iQDmP9cRedQ4wTPoOXB4NL8hHClsp37ykU=",
+    "vendorHash": "sha256-OwyzkTgOcn9brsQS1bfOEaXYk9nNLyHsEwli+5PAIPE=",
     "version": "1.4.6"
   },
   "namecheap": {
@@ -779,13 +777,13 @@
     "version": "0.6.12"
   },
   "newrelic": {
-    "hash": "sha256-xh7ufhv0zHTHS1aMz15PKlKoNPSDhXOIeSxj6tvRKKo=",
+    "hash": "sha256-2JYRvlpHqEU5VPVhZlBkMYD88L7vMjELFWDY9eJYkK8=",
     "owner": "newrelic",
     "provider-source-address": "registry.terraform.io/newrelic/newrelic",
     "repo": "terraform-provider-newrelic",
-    "rev": "v3.3.0",
+    "rev": "v3.4.4",
     "vendorHash": "sha256-vtpRDE6tAhJGtYDG65NvtKx/fyt0yBqJTg5s5kXls+8=",
-    "version": "3.3.0"
+    "version": "3.4.4"
   },
   "nomad": {
     "hash": "sha256-HhocWB3ZCFdeYgmA64hv1CYwqIf4EB/Q+vNrFKVB31I=",
@@ -834,22 +832,22 @@
     "version": "1.7.1"
   },
   "oci": {
-    "hash": "sha256-x1yrAYq8UXs69QkXMUq7mZ6in8o2+GPaS0EsAjn/pXg=",
+    "hash": "sha256-PSkD2HXGmSimJYQPZKuVCGvEa0sSNc4XMRRrM5O+/QE=",
     "owner": "oracle",
     "provider-source-address": "registry.terraform.io/oracle/oci",
     "repo": "terraform-provider-oci",
-    "rev": "v4.95.0",
+    "rev": "v4.96.0",
     "vendorHash": null,
-    "version": "4.95.0"
+    "version": "4.96.0"
   },
   "okta": {
-    "hash": "sha256-rgDBZsbXBzBcDgVoaFkPD27Ezef9J23oqtBJAHqJrrE=",
+    "hash": "sha256-yUWz6JiejI36QXSzGj36Pzu8/exK4U/DXCdbToSeCrE=",
     "owner": "okta",
     "provider-source-address": "registry.terraform.io/okta/okta",
     "repo": "terraform-provider-okta",
-    "rev": "v3.36.0",
-    "vendorHash": "sha256-hjX5kVOM8idWK4F5ahuh6BgK/h5QdkJOn4dizneOkB4=",
-    "version": "3.36.0"
+    "rev": "v3.37.0",
+    "vendorHash": "sha256-qAnMwxTvvds3pOarRTWWVQqOCJKd0wSH2LZoPl4n2uA=",
+    "version": "3.37.0"
   },
   "oktaasa": {
     "hash": "sha256-2LhxgowqKvDDDOwdznusL52p2DKP+UiXALHcs9ZQd0U=",
@@ -861,13 +859,13 @@
     "version": "1.0.1"
   },
   "opennebula": {
-    "hash": "sha256-ChqOX6pEvFMUyDAKA6VnD1L9UD2vplVH7dgpMTeiUeA=",
+    "hash": "sha256-QD/JU1sk1uEdgyOxvU+vDDqlYe5uoRxHx6nB0fCi6ds=",
     "owner": "OpenNebula",
     "provider-source-address": "registry.terraform.io/OpenNebula/opennebula",
     "repo": "terraform-provider-opennebula",
-    "rev": "v1.0.0",
+    "rev": "v1.0.1",
     "vendorHash": "sha256-iT3c0CBSP+FKM4CFsTopY4W41ZCaC8E3Iz1o+THI/fQ=",
-    "version": "1.0.0"
+    "version": "1.0.1"
   },
   "openstack": {
     "hash": "sha256-I2Rl/Z6KHEkhaoslqMD+ZQ8vOnIwLDDJIP3P/3sTWcw=",
@@ -879,13 +877,13 @@
     "version": "1.48.0"
   },
   "opentelekomcloud": {
-    "hash": "sha256-X4e74tgqHbt9j5prq2Zjqbcmwvr6m1UDFp5y1xfwkEQ=",
+    "hash": "sha256-9JDRGya/2SJm4JsM6o6E7dqLQqDjfR8Gjf6BuSFEdpo=",
     "owner": "opentelekomcloud",
     "provider-source-address": "registry.terraform.io/opentelekomcloud/opentelekomcloud",
     "repo": "terraform-provider-opentelekomcloud",
-    "rev": "v1.31.4",
-    "vendorHash": "sha256-ARlkXkty4/h86cmWnmKnP1Vhzt7oTOOxSFraNGp2BWs=",
-    "version": "1.31.4"
+    "rev": "v1.31.5",
+    "vendorHash": "sha256-7iDE/DKix9AKY0hX7m6V9KgDYmCiVFrpRMmgCSsm/5c=",
+    "version": "1.31.5"
   },
   "opsgenie": {
     "hash": "sha256-hdLKa2usoDedzOlzPQrADJOqIxtANqTeTamn/DakRh4=",
@@ -897,13 +895,13 @@
     "version": "0.6.15"
   },
   "ovh": {
-    "hash": "sha256-DHk1AUxHuXLrPiRhfAtJDDNT4TYH1XsUzBqjKGvPK7c=",
+    "hash": "sha256-QaJZQU6bnjXoTCxfP1NcsPqegFyZ6JwP2QgN7zrE0z0=",
     "owner": "ovh",
     "provider-source-address": "registry.terraform.io/ovh/ovh",
     "repo": "terraform-provider-ovh",
-    "rev": "v0.21.0",
+    "rev": "v0.22.0",
     "vendorHash": null,
-    "version": "0.21.0"
+    "version": "0.22.0"
   },
   "pagerduty": {
     "hash": "sha256-Kdm6WizssVdMwsTUyV4wUAW6QelUxDE9GZDGvnehFCw=",
@@ -996,13 +994,13 @@
     "version": "0.4.3"
   },
   "scaleway": {
-    "hash": "sha256-EPbh9lUcamFe33EKj2TzzaKChOU8fQb5/uigln2ALJ8=",
+    "hash": "sha256-MRZbVEUcjJL+leDCok1S+wsLW1N2IP76P0D7M8NzvHY=",
     "owner": "scaleway",
     "provider-source-address": "registry.terraform.io/scaleway/scaleway",
     "repo": "terraform-provider-scaleway",
-    "rev": "v2.3.0",
-    "vendorHash": "sha256-C4viIkYpu9B79kDByyg8cTCsXW6fGued280kIPAYHjc=",
-    "version": "2.3.0"
+    "rev": "v2.4.0",
+    "vendorHash": "sha256-CEYDT2G/V+XeCwcQzJksNb4EVRzH0iiaWiaudhBiaLw=",
+    "version": "2.4.0"
   },
   "secret": {
     "hash": "sha256-MmAnA/4SAPqLY/gYcJSTnEttQTsDd2kEdkQjQj6Bb+A=",
@@ -1104,13 +1102,13 @@
     "version": "2.0.4"
   },
   "sumologic": {
-    "hash": "sha256-1wV+9RHgrqL6LvRE21KM1wBSpyOcoOt07tZcx2s5pGM=",
+    "hash": "sha256-DvEd1OdLmUEEmk0zl7jiTjdk/3Fp1Z/3KCpYRpxHTn4=",
     "owner": "SumoLogic",
     "provider-source-address": "registry.terraform.io/SumoLogic/sumologic",
     "repo": "terraform-provider-sumologic",
-    "rev": "v2.19.0",
+    "rev": "v2.19.1",
     "vendorHash": "sha256-W+dV6rmyOqCeQboYvpxYoNZixv2+uBd2+sc9BvTE+Ag=",
-    "version": "2.19.0"
+    "version": "2.19.1"
   },
   "tencentcloud": {
     "hash": "sha256-SoCXh0pRqEkto2K+ZfN7ncVGDVC32zDElS+rBdOfa0g=",
@@ -1177,31 +1175,32 @@
     "version": "1.9.1"
   },
   "ucloud": {
-    "hash": "sha256-lx3LLBmqUjRc+Jn+SbLk6DChJJ2jbuh720wnO05qot0=",
+    "hash": "sha256-+qbDbss4HSy0hCWiqMBgshvP8WZujJGzy6omXIkypNo=",
     "owner": "ucloud",
     "provider-source-address": "registry.terraform.io/ucloud/ucloud",
     "repo": "terraform-provider-ucloud",
-    "rev": "v1.32.2",
+    "rev": "v1.32.3",
     "vendorHash": null,
-    "version": "1.32.2"
+    "version": "1.32.3"
   },
   "utils": {
-    "hash": "sha256-FYOu48Bg8iMfNl+2EETBMxEfwg2ToO+Oexz1yPi0g38=",
+    "hash": "sha256-Mh1yj1VZ620xSs1a5j86K4uCUyjzdeCphKLANQvgTNA=",
     "owner": "cloudposse",
     "provider-source-address": "registry.terraform.io/cloudposse/utils",
     "repo": "terraform-provider-utils",
-    "rev": "1.2.0",
-    "vendorHash": "sha256-eDNA4zvOYnWvaCHhNHWOjy1VstG1nITWkCMOilu9Wxg=",
-    "version": "1.2.0"
+    "rev": "1.4.1",
+    "vendorHash": "sha256-00kcosPSk/Ll7UQhnrEGRo0USvFM2V5MLKnndfhQEQA=",
+    "version": "1.4.1"
   },
   "vault": {
-    "hash": "sha256-fEITfA3XXyUiILPse7fOmBW8M6dzEIUMg+7b3l4z2vo=",
+    "hash": "sha256-v+WhEJ9HsTdOqSVpbV/qVCEICsgY3nEqcIutYHi3aQ8=",
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/vault",
+    "proxyVendor": true,
     "repo": "terraform-provider-vault",
-    "rev": "v3.8.2",
-    "vendorHash": "sha256-x7uz6VFotS+/eLEeMfaTloKQe/zp47d8e5I63BsGvhM=",
-    "version": "3.8.2"
+    "rev": "v3.9.1",
+    "vendorHash": "sha256-/ZIGfLHkHq1Yv+AsSO7KueK5ANxnUWFKwLKyZ02q1cY=",
+    "version": "3.9.1"
   },
   "vcd": {
     "hash": "sha256-qEElcMl6tCBfOTTTpTFjVYg6E6K9iTXfgmDDozrgNVg=",
@@ -1213,13 +1212,13 @@
     "version": "3.7.0"
   },
   "venafi": {
-    "hash": "sha256-oGpIa+Up1bv6tf5ibna0DEwIxrZyAefqA8LSAy57QrE=",
+    "hash": "sha256-/5X/+BilaYwi1Vce7mIvVeHjTpVX/OuYquZ+2BGfxrs=",
     "owner": "Venafi",
     "provider-source-address": "registry.terraform.io/Venafi/venafi",
     "repo": "terraform-provider-venafi",
-    "rev": "v0.16.0",
-    "vendorHash": "sha256-F0lMZVMNJ/1SHX8e5v4waQPqZjan/Ll+db+dseZ+dsc=",
-    "version": "0.16.0"
+    "rev": "v0.16.1",
+    "vendorHash": "sha256-smeySV1kReZyF9bRCunEr89IV219f9845wcHHI1zFz8=",
+    "version": "0.16.1"
   },
   "vercel": {
     "hash": "sha256-/LHyNxal5Il/UzXdCKfVRzK/VVfSYMgoeKerWsedmho=",
diff --git a/pkgs/applications/networking/cluster/terraform/default.nix b/pkgs/applications/networking/cluster/terraform/default.nix
index edcf7a2497234..566b1112cc38e 100644
--- a/pkgs/applications/networking/cluster/terraform/default.nix
+++ b/pkgs/applications/networking/cluster/terraform/default.nix
@@ -168,8 +168,8 @@ rec {
   mkTerraform = attrs: pluggable (generic attrs);
 
   terraform_1 = mkTerraform {
-    version = "1.3.1";
-    sha256 = "sha256-ugdMpp/YTCyXaUY6NTrIa9r/+C4bYLYqQEic4cvgoVo=";
+    version = "1.3.2";
+    sha256 = "sha256-Xr6ZmKE7BoMh2gZcvcZgWwb8WuAb3Xb8vV9gZVjDZFE=";
     vendorSha256 = "sha256-+m7e49yN7OkiQQVvqimF0Tvz5wUr2M5bxs3yBU2lt7Y=";
     patches = [ ./provider-path-0_15.patch ];
     passthru = {
diff --git a/pkgs/applications/networking/cluster/terragrunt/default.nix b/pkgs/applications/networking/cluster/terragrunt/default.nix
index 98de91e3bd238..d638ddf1234bb 100644
--- a/pkgs/applications/networking/cluster/terragrunt/default.nix
+++ b/pkgs/applications/networking/cluster/terragrunt/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "terragrunt";
-  version = "0.39.0";
+  version = "0.39.1";
 
   src = fetchFromGitHub {
     owner = "gruntwork-io";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Y8t5rThkPD3FzY25L2lOIvktU5+NwBZtq9Pn3VzQQf4=";
+    sha256 = "sha256-Ino16JARoQMudZ82kI/uJE+KyNpyqPu3/Dx2c155jcQ=";
   };
 
   vendorSha256 = "sha256-CqImT90jFFLi6XR7jfzFKwhnCHK6B+aM+Ba/L+G3bEg=";
diff --git a/pkgs/applications/networking/cluster/tilt/default.nix b/pkgs/applications/networking/cluster/tilt/default.nix
index 9245a5439147e..339564f52a04f 100644
--- a/pkgs/applications/networking/cluster/tilt/default.nix
+++ b/pkgs/applications/networking/cluster/tilt/default.nix
@@ -5,13 +5,13 @@ buildGoModule rec {
   /* Do not use "dev" as a version. If you do, Tilt will consider itself
     running in development environment and try to serve assets from the
     source tree, which is not there once build completes.  */
-  version = "0.30.8";
+  version = "0.30.9";
 
   src = fetchFromGitHub {
     owner  = "tilt-dev";
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "sha256-dVaLeooTEiKYWp9CmEcSFOunLyJecB8jR9LIKRO8b9g=";
+    sha256 = "sha256-vZthFaIsgpZ2aap9kRSH//AHHnOpekPIkwpz9Tt0lI4=";
   };
   vendorSha256 = null;
 
diff --git a/pkgs/applications/networking/cluster/vcluster/default.nix b/pkgs/applications/networking/cluster/vcluster/default.nix
index 5759257c4a05c..2d24365466b79 100644
--- a/pkgs/applications/networking/cluster/vcluster/default.nix
+++ b/pkgs/applications/networking/cluster/vcluster/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "vcluster";
-  version = "0.12.1";
+  version = "0.12.2";
 
   src = fetchFromGitHub {
     owner = "loft-sh";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-KRm6+WRMGzM7L17ABj/g6Nu+eU6F3C4a9CAa0ePC6i8=";
+    sha256 = "sha256-PkayQ1sLjnA+1Xatgs0EvZTCTfWV5uoYYtnKX8OAwYQ=";
   };
 
   vendorSha256 = null;
diff --git a/pkgs/applications/networking/cluster/waypoint/default.nix b/pkgs/applications/networking/cluster/waypoint/default.nix
index d4916770879ea..7649cc5b7dfe7 100644
--- a/pkgs/applications/networking/cluster/waypoint/default.nix
+++ b/pkgs/applications/networking/cluster/waypoint/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "waypoint";
-  version = "0.10.1";
+  version = "0.10.2";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-9iqHO+idW6Rxe0osD4fjkhvO5TF122r1J8QlV/haaNw=";
+    sha256 = "sha256-4RAnGPzXrPXMclDiTd38VrOy7zqvccD/xrm3QpeFubM=";
   };
 
   vendorSha256 = "sha256-fBsRmUE72lot9Ju/hUqpdSSXvMktRGP+H4WQ0GOCxrY=";
diff --git a/pkgs/applications/networking/cluster/werf/default.nix b/pkgs/applications/networking/cluster/werf/default.nix
index 275bc98ac23df..22c0178cd8fe9 100644
--- a/pkgs/applications/networking/cluster/werf/default.nix
+++ b/pkgs/applications/networking/cluster/werf/default.nix
@@ -10,16 +10,16 @@
 
 buildGoModule rec {
   pname = "werf";
-  version = "1.2.176";
+  version = "1.2.177";
 
   src = fetchFromGitHub {
     owner = "werf";
     repo = "werf";
     rev = "v${version}";
-    hash = "sha256-E6xRnEIo6ks8E9bWjo8d+mDhYe+nsKIFdUEGS6tbgXM=";
+    hash = "sha256-hvMDQlWlAy7gRiSJMt2qAtBpYEbfhGS/DZeQK5ueHYA=";
   };
 
-  vendorHash = "sha256-NHRPl38/R7yS8Hht118mBc+OBPwfYiHOaGIwryNK8Mo=";
+  vendorHash = "sha256-4QVLxvprm27Bv/ZFgxTtqZcSAWak1e+G8s+heW1JZnA=";
 
   proxyVendor = true;
 
diff --git a/pkgs/applications/networking/flexget/default.nix b/pkgs/applications/networking/flexget/default.nix
index 79ed104def08b..110bcaa081a0b 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.3.30";
+  version = "3.3.33";
 
   # Fetch from GitHub in order to use `requirements.in`
   src = fetchFromGitHub {
     owner = "flexget";
     repo = "flexget";
     rev = "refs/tags/v${version}";
-    hash = "sha256-LwMbqweRtH0l+89pRns6VbQgWOy3j34i76IwYdOUW0M=";
+    hash = "sha256-dJdRGqHBPbdGrxqhOmQJSZmR+YacQCDKgu03WtrGqVA=";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/networking/freefilesync/default.nix b/pkgs/applications/networking/freefilesync/default.nix
new file mode 100644
index 0000000000000..48f2f2e1fe0f1
--- /dev/null
+++ b/pkgs/applications/networking/freefilesync/default.nix
@@ -0,0 +1,103 @@
+{ lib
+, gcc12Stdenv
+, fetchFromGitHub
+, fetchpatch
+, pkg-config
+, curl
+, glib
+, gtk3
+, libssh2
+, openssl
+, wxGTK32
+}:
+
+gcc12Stdenv.mkDerivation rec {
+  pname = "freefilesync";
+  version = "11.25";
+
+  src = fetchFromGitHub {
+    owner = "hkneptune";
+    repo = "FreeFileSync";
+    rev = "v${version}";
+    sha256 = "sha256-JV9qwBiF9kl+wc9+7lUufQVu6uiMQ6vojntxduNJ8MI=";
+  };
+
+  # Patches from ROSA Linux
+  patches = [
+    # Disable loading of the missing Animal.dat
+    (fetchpatch {
+      url = "https://abf.io/import/freefilesync/raw/rosa2021.1-11.25-1/ffs_devuan.patch";
+      sha256 = "sha256-o8T/tBinlhM1I82yXxm0ogZcZf+uri95vTJrca5mcqs=";
+      excludes = [ "FreeFileSync/Source/ffs_paths.cpp" ];
+      postFetch = ''
+        substituteInPlace $out --replace " for Rosa" ""
+      '';
+    })
+    # Fix build with GTK 3
+    (fetchpatch {
+      url = "https://abf.io/import/freefilesync/raw/rosa2021.1-11.25-1/ffs_devuan_gtk3.patch";
+      sha256 = "sha256-NXt/+BRTcMk8bnjR9Hipv1NzV9YqRJqy0e3RMInoWsA=";
+      postFetch = ''
+        substituteInPlace $out --replace "-isystem/usr/include/gtk-3.0" ""
+      '';
+    })
+  ];
+
+  postPatch = ''
+    substituteInPlace FreeFileSync/Source/ui/version_check.cpp \
+      --replace "openBrowserForDownload();" "openBrowserForDownload(parent);"
+  '';
+
+  nativeBuildInputs = [
+    pkg-config
+  ];
+
+  buildInputs = [
+    curl
+    glib
+    gtk3
+    libssh2
+    openssl
+    wxGTK32
+  ];
+
+  NIX_CFLAGS_COMPILE = [
+    # Undef g_object_ref on GLib 2.56+
+    "-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_54"
+    "-DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_54"
+    # Define libssh2 constants
+    "-DMAX_SFTP_READ_SIZE=30000"
+    "-DMAX_SFTP_OUTGOING_SIZE=30000"
+  ];
+
+  buildPhase = ''
+    runHook preBuild
+
+    chmod +w FreeFileSync/Build
+    cd FreeFileSync/Source
+    make -j$NIX_BUILD_CORES
+    cd RealTimeSync
+    make -j$NIX_BUILD_CORES
+    cd ../../..
+
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out
+    cp -R FreeFileSync/Build/* $out
+    mv $out/{Bin,bin}
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Open Source File Synchronization & Backup Software";
+    homepage = "https://freefilesync.org";
+    license = [ licenses.gpl3Only licenses.openssl licenses.curl licenses.libssh2 ];
+    maintainers = with maintainers; [ wegank ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/networking/gopher/geomyidae/default.nix b/pkgs/applications/networking/gopher/geomyidae/default.nix
index 197cdaca00c4d..25f99ac2075c3 100644
--- a/pkgs/applications/networking/gopher/geomyidae/default.nix
+++ b/pkgs/applications/networking/gopher/geomyidae/default.nix
@@ -12,6 +12,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ libressl ];
 
+  patches = lib.optionals stdenv.isDarwin [ ./modification-time.patch ];
+
   makeFlags = [ "PREFIX=${placeholder "out"}" ];
 
   meta = with lib; {
diff --git a/pkgs/applications/networking/gopher/geomyidae/modification-time.patch b/pkgs/applications/networking/gopher/geomyidae/modification-time.patch
new file mode 100644
index 0000000000000..145d2239b3e9d
--- /dev/null
+++ b/pkgs/applications/networking/gopher/geomyidae/modification-time.patch
@@ -0,0 +1,13 @@
+diff --git a/geomyidae-v0.51/handlr.c b/geomyidae-v0.51/handlr.c
+index 0c230d32519..9fc043fa3c9 100644
+--- a/handlr.c
++++ b/handlr.c
+@@ -71,7 +71,7 @@ handledir(int sock, char *path, char *port, char *base, char *args,
+ 					*type->type,
+ 					dirent[i]->d_name,
+ 					humansize(st.st_size),
+-					humantime(&(st.st_mtim.tv_sec)),
++					humantime(&(st.st_mtimespec.tv_sec)),
+ 					e, ohost, port);
+ 			free(file);
+ 			free(dirent[i]);
diff --git a/pkgs/applications/networking/ids/snort/default.nix b/pkgs/applications/networking/ids/snort/default.nix
index 938626806caef..46394c107dec0 100644
--- a/pkgs/applications/networking/ids/snort/default.nix
+++ b/pkgs/applications/networking/ids/snort/default.nix
@@ -12,8 +12,8 @@ stdenv.mkDerivation rec {
     sha256 = "0xrc7crchflfrk4x5dq5zx22zkmgcrbkww5r1pvkc3cyyr18cc6h";
   };
 
-  nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ pkg-config luajit openssl libpcap pcre libdnet daq zlib flex bison libtirpc ];
+  nativeBuildInputs = [ makeWrapper pkg-config ];
+  buildInputs = [ luajit openssl libpcap pcre libdnet daq zlib flex bison libtirpc ];
 
   NIX_CFLAGS_COMPILE = [ "-I${libtirpc.dev}/include/tirpc" ];
 
diff --git a/pkgs/applications/networking/instant-messengers/discord/openasar.nix b/pkgs/applications/networking/instant-messengers/discord/openasar.nix
index c6a64212b558c..516c4dcd97454 100644
--- a/pkgs/applications/networking/instant-messengers/discord/openasar.nix
+++ b/pkgs/applications/networking/instant-messengers/discord/openasar.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "openasar";
-  version = "unstable-2022-08-07";
+  version = "unstable-2022-10-02";
 
   src = fetchFromGitHub {
     owner = "GooseMod";
     repo = "OpenAsar";
-    rev = "e0870784008a584229d3094e0988f5da155c7fd7";
-    hash = "sha256-t0b2SFlDDBSQEkOCQME0jsLJ8NvoXROTxoQgnoXM9eQ=";
+    rev = "c72f1a3fc064f61cc5c5a578d7350240e26a27af";
+    hash = "sha256-6V9vLmj5ptMALFV57pMU2IGxNbFNyVcdvnrPgCEaUJ0=";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/networking/instant-messengers/element/keytar/default.nix b/pkgs/applications/networking/instant-messengers/element/keytar/default.nix
index 550d01695ca04..362d7a096bfb2 100644
--- a/pkgs/applications/networking/instant-messengers/element/keytar/default.nix
+++ b/pkgs/applications/networking/instant-messengers/element/keytar/default.nix
@@ -33,7 +33,7 @@ in stdenv.mkDerivation rec {
     chmod u+w . ./yarn.lock
     export HOME=$PWD/tmp
     mkdir -p $HOME
-    yarn config --offline set yarn-offline-mirror ${yarnOfflineCache}
+    yarn config --offline set yarn-offline-mirror $yarnOfflineCache
     ${fixup_yarn_lock}/bin/fixup_yarn_lock yarn.lock
     yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive
     patchShebangs node_modules/
diff --git a/pkgs/applications/networking/instant-messengers/element/keytar/update.sh b/pkgs/applications/networking/instant-messengers/element/keytar/update.sh
index 8ac65ea45d3eb..d18cc7d0e8bf8 100755
--- a/pkgs/applications/networking/instant-messengers/element/keytar/update.sh
+++ b/pkgs/applications/networking/instant-messengers/element/keytar/update.sh
@@ -2,7 +2,7 @@
 #!nix-shell -I nixpkgs=../../../../../../ -i bash -p wget prefetch-yarn-deps yarn
 
 if [ "$#" -gt 1 ] || [[ "$1" == -* ]]; then
-  echo "Regenerates packaging data for the seshat package."
+  echo "Regenerates packaging data for the keytar package."
   echo "Usage: $0 [git release tag]"
   exit 1
 fi
diff --git a/pkgs/applications/networking/instant-messengers/element/seshat/default.nix b/pkgs/applications/networking/instant-messengers/element/seshat/default.nix
index 97d6a7d5204a0..915e3faa3e40e 100644
--- a/pkgs/applications/networking/instant-messengers/element/seshat/default.nix
+++ b/pkgs/applications/networking/instant-messengers/element/seshat/default.nix
@@ -32,7 +32,7 @@ in rustPlatform.buildRustPackage rec {
     chmod u+w . ./yarn.lock
     export HOME=$PWD/tmp
     mkdir -p $HOME
-    yarn config --offline set yarn-offline-mirror ${yarnOfflineCache}
+    yarn config --offline set yarn-offline-mirror $yarnOfflineCache
     ${fixup_yarn_lock}/bin/fixup_yarn_lock yarn.lock
     yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive
     patchShebangs node_modules/
diff --git a/pkgs/applications/networking/instant-messengers/fluffychat/default.nix b/pkgs/applications/networking/instant-messengers/fluffychat/default.nix
index d50e7118cc18d..22bbeb212f0eb 100644
--- a/pkgs/applications/networking/instant-messengers/fluffychat/default.nix
+++ b/pkgs/applications/networking/instant-messengers/fluffychat/default.nix
@@ -1,16 +1,16 @@
 { lib
 , fetchFromGitLab
-, flutter
+, flutter2
 , olm
 , imagemagick
 , makeDesktopItem
 }:
 
-flutter.mkFlutterApp rec {
+flutter2.mkFlutterApp rec {
   pname = "fluffychat";
   version = "1.2.0";
 
-  vendorHash = "sha256-co+bnsVIyg42JpM9FimfGEjrd6A99GlBeow1Dgv7NBI=";
+  vendorHash = "sha256-1PDX023WXRmRe/b1L+6Du91BvGwYNp3YATqYSQdPrRY=";
 
   src = fetchFromGitLab {
     owner = "famedly";
diff --git a/pkgs/applications/networking/instant-messengers/fractal/default.nix b/pkgs/applications/networking/instant-messengers/fractal/default.nix
index 3b5349d65ffe7..bfc322fea6cfa 100644
--- a/pkgs/applications/networking/instant-messengers/fractal/default.nix
+++ b/pkgs/applications/networking/instant-messengers/fractal/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     owner = "GNOME";
     repo = "fractal";
     rev = version;
-    sha256 = "DSNVd9YvI7Dd3s3+M0+wE594tmL1yPNMnD1W9wLhSuw=";
+    hash = "sha256-To6lr2I+JVrxvuK++2gLWntFGnEBm+B6KTRuOvjASek=";
   };
 
   patches = [
@@ -40,14 +40,17 @@ stdenv.mkDerivation rec {
     # fractal-gtk/res/meson.build:5:0: ERROR: Function does not take positional arguments.
     (fetchpatch {
       url = "https://gitlab.gnome.org/GNOME/fractal/-/commit/6fa1a23596d65d94aa889efe725174e6cd2903f0.patch";
-      sha256 = "3OzU9XL2V1VNOkvL1j677K3HNoBqPMQudQDmiDxYfAc=";
+      hash = "sha256-3OzU9XL2V1VNOkvL1j677K3HNoBqPMQudQDmiDxYfAc=";
     })
+
+    # This is in fractal v4.4.1b1+ so can be removed when fractal is updated.
+    ./update-socket2-for-rust-1.64.diff
   ];
 
   cargoDeps = rustPlatform.fetchCargoTarball {
-    inherit src;
+    inherit src patches;
     name = "${pname}-${version}";
-    hash = "sha256-xim5sOzeXJjRXbTOg2Gk/LHU0LioiyMK5nSr1LwMPjc=";
+    hash = "sha256-d99zSaxp22YyLP3Wckgcm7wlz7nFrLJDHq2xPJmZFf0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/instant-messengers/fractal/update-socket2-for-rust-1.64.diff b/pkgs/applications/networking/instant-messengers/fractal/update-socket2-for-rust-1.64.diff
new file mode 100644
index 0000000000000..04e6f2cc1cb9b
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/fractal/update-socket2-for-rust-1.64.diff
@@ -0,0 +1,195 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index c0b5e5e2..3009f183 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1,5 +1,7 @@
+ # This file is automatically @generated by Cargo.
+ # It is not intended for manual editing.
++version = 3
++
+ [[package]]
+ name = "addr2line"
+ version = "0.13.0"
+@@ -169,7 +171,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "46254cf2fdcdf1badb5934448c1bcbe046a56537b3987d96c51a7afc5d03f293"
+ dependencies = [
+  "addr2line",
+- "cfg-if",
++ "cfg-if 0.1.10",
+  "libc",
+  "miniz_oxide",
+  "object",
+@@ -326,6 +328,12 @@ version = "0.1.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
+ 
++[[package]]
++name = "cfg-if"
++version = "1.0.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
++
+ [[package]]
+ name = "chrono"
+ version = "0.4.13"
+@@ -407,7 +415,7 @@ version = "1.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "ba125de2af0df55319f41944744ad91c71113bf74a4646efff39afe1f6842db1"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.10",
+ ]
+ 
+ [[package]]
+@@ -417,7 +425,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8"
+ dependencies = [
+  "autocfg 1.0.0",
+- "cfg-if",
++ "cfg-if 0.1.10",
+  "lazy_static",
+ ]
+ 
+@@ -455,7 +463,7 @@ version = "2.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "551a778172a450d7fc12e629ca3b0428d00f6afa9a43da1b630d54604e97371c"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.10",
+  "dirs-sys",
+ ]
+ 
+@@ -465,7 +473,7 @@ version = "2.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "13aea89a5c93364a98e9b37b2fa237effbb694d5cfe01c5b70941f7eb087d5e3"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.10",
+  "dirs-sys",
+ ]
+ 
+@@ -506,7 +514,7 @@ version = "0.8.23"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "e8ac63f94732332f44fe654443c46f6375d1939684c17b0afb6cb56b0456e171"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.10",
+ ]
+ 
+ [[package]]
+@@ -549,7 +557,7 @@ version = "1.0.16"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "68c90b0fc46cf89d227cc78b40e494ff81287a92dd07631e5af0d06fe3cf885e"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.10",
+  "crc32fast",
+  "libc",
+  "miniz_oxide",
+@@ -842,7 +850,7 @@ version = "0.1.14"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "7abc8dd8451921606d809ba32e95b6111925cd2906060d2dcc29c070220503eb"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.10",
+  "libc",
+  "wasi",
+ ]
+@@ -979,7 +987,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "ce8664a114cd6ec16bece783d5eee59496919915b1f6884400ba4a953274a163"
+ dependencies = [
+  "bitflags",
+- "cfg-if",
++ "cfg-if 0.1.10",
+  "futures-channel",
+  "futures-core",
+  "futures-util",
+@@ -1543,7 +1551,7 @@ version = "0.4.11"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "4fabed175da42fed1fa0746b0ea71f412aa9d35e76e95e59b192c64b9dc2bf8b"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.10",
+ ]
+ 
+ [[package]]
+@@ -1648,7 +1656,7 @@ version = "0.6.22"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "fce347092656428bc8eaf6201042cb551b8d67855af7374542a92a0fbfcac430"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.10",
+  "fuchsia-zircon",
+  "fuchsia-zircon-sys",
+  "iovec",
+@@ -1703,7 +1711,7 @@ version = "0.2.34"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "2ba7c918ac76704fb42afcbbb43891e72731f3dcca3bef2a19786297baf14af7"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.10",
+  "libc",
+  "winapi 0.3.9",
+ ]
+@@ -1826,7 +1834,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "8d575eff3665419f9b83678ff2815858ad9d11567e082f5ac1814baba4e2bcb4"
+ dependencies = [
+  "bitflags",
+- "cfg-if",
++ "cfg-if 0.1.10",
+  "foreign-types",
+  "lazy_static",
+  "libc",
+@@ -2523,13 +2531,12 @@ checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
+ 
+ [[package]]
+ name = "socket2"
+-version = "0.3.12"
++version = "0.3.19"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "03088793f677dce356f3ccc2edb1b314ad191ab702a5de3faf49304f7e104918"
++checksum = "122e570113d28d773067fab24266b66753f6ea915758651696b6e35e49f88d6e"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 1.0.0",
+  "libc",
+- "redox_syscall",
+  "winapi 0.3.9",
+ ]
+ 
+@@ -2678,7 +2685,7 @@ version = "3.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.10",
+  "libc",
+  "rand 0.7.3",
+  "redox_syscall",
+@@ -2818,7 +2825,7 @@ version = "0.1.18"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "f0aae59226cf195d8e74d4b34beae1859257efb4e5fed3f147d2dc2c7d372178"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.10",
+  "log",
+  "tracing-core",
+ ]
+@@ -2998,7 +3005,7 @@ version = "0.2.67"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "f0563a9a4b071746dd5aedbc3a28c6fe9be4586fb3fbadb67c400d4f53c6b16c"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.10",
+  "serde",
+  "serde_json",
+  "wasm-bindgen-macro",
+@@ -3025,7 +3032,7 @@ version = "0.4.17"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "95f8d235a77f880bcef268d379810ea6c0af2eacfa90b1ad5af731776e0c4699"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.10",
+  "js-sys",
+  "wasm-bindgen",
+  "web-sys",
diff --git a/pkgs/applications/networking/instant-messengers/gajim/default.nix b/pkgs/applications/networking/instant-messengers/gajim/default.nix
index a7c7c30206fba..6a5f898348cf2 100644
--- a/pkgs/applications/networking/instant-messengers/gajim/default.nix
+++ b/pkgs/applications/networking/instant-messengers/gajim/default.nix
@@ -22,11 +22,11 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "gajim";
-  version = "1.5.1";
+  version = "1.5.2";
 
   src = fetchurl {
     url = "https://gajim.org/downloads/${lib.versions.majorMinor version}/gajim-${version}.tar.gz";
-    sha256 = "sha256-FjRrAswoE1yuDoR42U3ppzvEvFN6K/VBdQ0w99wXPtM=";
+    sha256 = "sha256-kXpGaGp9OWdDa1q3hx7nrD1ZeKH5CKlTgZbyuNZ05/8=";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/networking/instant-messengers/linphone/default.nix b/pkgs/applications/networking/instant-messengers/linphone/default.nix
index dc94b07795200..3132faeb630d2 100644
--- a/pkgs/applications/networking/instant-messengers/linphone/default.nix
+++ b/pkgs/applications/networking/instant-messengers/linphone/default.nix
@@ -33,7 +33,7 @@
 
 mkDerivation rec {
   pname = "linphone-desktop";
-  version = "4.4.9";
+  version = "4.4.10";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -41,7 +41,7 @@ mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "sha256-xvKkFMZ7rUyEjnQK7rBkrzO8fhfHjpQ1DHQBUlizZ+o=";
+    sha256 = "sha256-V3vycO0kV6RTFZWi6uiCFSNfLq/09dBfyLk/5zw3kRA=";
   };
 
   patches = [
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/otr/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/otr/default.nix
index 52204d5c79c01..aa871df5e8af2 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/otr/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/otr/default.nix
@@ -10,7 +10,8 @@ stdenv.mkDerivation rec {
 
   postInstall = "ln -s \$out/lib/pidgin \$out/share/pidgin-otr";
 
-  buildInputs = [ libotr pidgin intltool ];
+  nativeBuildInputs = [ intltool ];
+  buildInputs = [ libotr pidgin ];
 
   meta = with lib; {
     homepage = "https://otr.cypherpunks.ca/";
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-indicator/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-indicator/default.nix
index 9afdee8cda164..70cb3a9028df2 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-indicator/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-indicator/default.nix
@@ -20,8 +20,8 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-CdA/aUu+CmCRbVBKpJGydicqFQa/rEsLWS3MBKlH2/M=";
   };
 
-  nativeBuildInputs = [ autoreconfHook ];
-  buildInputs = [ glib intltool libappindicator-gtk2 libtool pidgin ];
+  nativeBuildInputs = [ autoreconfHook intltool ];
+  buildInputs = [ glib libappindicator-gtk2 libtool pidgin ];
 
   meta = with lib; {
     description = "An AppIndicator and KStatusNotifierItem Plugin for Pidgin";
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-plugin-pack/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-plugin-pack/default.nix
index f393a17c1bc6f..7c076cb372413 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-plugin-pack/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-plugin-pack/default.nix
@@ -8,7 +8,8 @@ stdenv.mkDerivation rec {
     sha256 = "0g5hmy7fwgjq59j52h9yps28jsjjrfkd4r18gyx6hfd3g3kzbg1b";
   };
 
-  buildInputs = [ pidgin intltool python2 ];
+  nativeBuildInputs = [ intltool ];
+  buildInputs = [ pidgin python2 ];
 
   meta = with lib; {
     homepage = "https://bitbucket.org/rekkanoryo/purple-plugin-pack";
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/tox-prpl/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/tox-prpl/default.nix
index 41c6a75310a6f..eb606f796cfbc 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/tox-prpl/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/tox-prpl/default.nix
@@ -19,6 +19,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoreconfHook ];
 
   meta = with lib; {
+    broken = true; # unmaintained and not compatible with current Tox API.
     homepage = "https://github.com/jin-eld/tox-prpl";
     description = "Tox plugin for Pidgin / libpurple";
     license = licenses.gpl3;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin/default.nix b/pkgs/applications/networking/instant-messengers/pidgin/default.nix
index 84f8f327cad9a..15e830b768709 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin/default.nix
@@ -16,7 +16,7 @@ let unwrapped = stdenv.mkDerivation rec {
     sha256 = "sha256-RUsbkovGvLsYM1OvMPv95VlfIkWjQjoaRubJei3yKBA=";
   };
 
-  nativeBuildInputs = [ makeWrapper ];
+  nativeBuildInputs = [ makeWrapper intltool ];
 
   NIX_CFLAGS_COMPILE = "-I${gst_all_1.gst-plugins-base.dev}/include/gstreamer-1.0";
 
@@ -27,7 +27,7 @@ let unwrapped = stdenv.mkDerivation rec {
     gst_all_1.gstreamer gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good
     libxml2 nss nspr
     libXScrnSaver python-with-dbus
-    avahi dbus dbus-glib intltool libidn
+    avahi dbus dbus-glib libidn
     libICE libXext libSM cyrus_sasl
     libgnt ncurses # optional: build finch - the console UI
   ]
diff --git a/pkgs/applications/networking/instant-messengers/rocketchat-desktop/default.nix b/pkgs/applications/networking/instant-messengers/rocketchat-desktop/default.nix
index 9dffd2f366b5e..95bd9de69ee30 100644
--- a/pkgs/applications/networking/instant-messengers/rocketchat-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/rocketchat-desktop/default.nix
@@ -4,11 +4,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "rocketchat-desktop";
-  version = "3.8.9";
+  version = "3.8.11";
 
   src = fetchurl {
     url = "https://github.com/RocketChat/Rocket.Chat.Electron/releases/download/${version}/rocketchat-${version}-linux-amd64.deb";
-    sha256 = "sha256-IapGlEUUl+iyW1rTCZugN2YOJUpNwd5NP2QPD3FHd0s=";
+    sha256 = "sha256-gRMoLzCAXByLVtzYAZnhmbgbfsav6CkbP3ZE0NDdlMw=";
   };
 
   nativeBuildInputs = [
@@ -92,6 +92,6 @@ stdenv.mkDerivation rec {
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
     license = licenses.mit;
     maintainers = with maintainers; [ gbtb ];
-    platforms = platforms.x86_64;
+    platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/signal-cli/default.nix b/pkgs/applications/networking/instant-messengers/signal-cli/default.nix
index dd2a34a60fa4f..1ce7ed159ef35 100644
--- a/pkgs/applications/networking/instant-messengers/signal-cli/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-cli/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "signal-cli";
-  version = "0.10.11";
+  version = "0.11.3";
 
   # Building from source would be preferred, but is much more involved.
   src = fetchurl {
     url = "https://github.com/AsamK/signal-cli/releases/download/v${version}/signal-cli-${version}-Linux.tar.gz";
-    sha256 = "sha256-tBgtSYKSoyze9qFWpy6IUdwMU9KCLZGEIpOkjLdHsHM=";
+    sha256 = "sha256-2Tn/04Bbj+mUsV0gftEUXQmFYWTQyVaPNHZQVk57Avo=";
   };
 
   buildInputs = lib.optionals stdenv.isLinux [ libmatthew_java dbus dbus_java ];
diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
index a42ffc6ed8643..97a8d7d074e1b 100644
--- a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
@@ -9,7 +9,7 @@
 
 stdenv.mkDerivation rec {
   pname = "signal-desktop";
-  version = "5.61.1"; # Please backport all updates to the stable channel.
+  version = "5.62.0"; # Please backport all updates to the stable channel.
   # All releases have a limited lifetime and "expire" 90 days after the release.
   # When releases "expire" the application becomes unusable until an update is
   # applied. The expiration date for the current release can be extracted with:
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb";
-    sha256 = "sha256-iEWJ0/rzQMZaZKwume+akMgRg71tVwhlovIGC129B/8=";
+    sha256 = "sha256-ehRwGZM4lj+pgxUnBlBfcYt2JypuZ5PX3S5ymZriRWA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/instant-messengers/slack/default.nix b/pkgs/applications/networking/instant-messengers/slack/default.nix
index ec142222a98c3..8c6572224c360 100644
--- a/pkgs/applications/networking/instant-messengers/slack/default.nix
+++ b/pkgs/applications/networking/instant-messengers/slack/default.nix
@@ -194,10 +194,6 @@ let
       runHook preInstall
       mkdir -p $out/Applications/Slack.app
       cp -R . $out/Applications/Slack.app
-    '' + lib.optionalString (!stdenv.isAarch64) ''
-      # on aarch64-darwin we get: Could not write domain com.tinyspeck.slackmacgap; exiting
-      /usr/bin/defaults write com.tinyspeck.slackmacgap SlackNoAutoUpdates -Bool YES
-    '' + ''
       runHook postInstall
     '';
   };
diff --git a/pkgs/applications/networking/instant-messengers/toxic/default.nix b/pkgs/applications/networking/instant-messengers/toxic/default.nix
index a6d6cac4ac764..2f16cb78454fc 100644
--- a/pkgs/applications/networking/instant-messengers/toxic/default.nix
+++ b/pkgs/applications/networking/instant-messengers/toxic/default.nix
@@ -1,27 +1,18 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, libsodium, ncurses, curl
+{ lib, stdenv, fetchFromGitHub, libsodium, ncurses, curl
 , libtoxcore, openal, libvpx, freealut, libconfig, pkg-config, libopus
 , qrencode, gdk-pixbuf, libnotify }:
 
 stdenv.mkDerivation rec {
   pname = "toxic";
-  version = "0.11.1";
+  version = "0.11.3";
 
   src = fetchFromGitHub {
     owner  = "Tox";
     repo   = "toxic";
     rev    = "v${version}";
-    sha256 = "sha256-5jLXXI+IMrYa7ZtdMjJrah1zB5TJ3GdHfvcMd1TYE4E=";
+    sha256 = "sha256-BabRY9iu5ccEXo5POrWkWaIWAeQU4MVlMK8I+Iju6aQ=";
   };
 
-  patches = [
-    # Pending for upstream inclusion fix for ncurses-6.3 compatibility.
-    (fetchpatch {
-      name = "ncurses-6.3.patch";
-      url = "https://github.com/JFreegman/toxic/commit/41e93adbdbd56db065166af5a6676a7996e9e451.patch";
-      sha256 = "sha256-LYEseB5FmXFNifa1RZUxhkXeWlkEEMm3ASD55IoUPa0=";
-    })
-  ];
-
   makeFlags = [ "PREFIX=$(out)"];
   installFlags = [ "PREFIX=$(out)"];
 
@@ -32,10 +23,10 @@ stdenv.mkDerivation rec {
   ];
   nativeBuildInputs = [ pkg-config libconfig ];
 
-  meta = with lib; {
+  meta = with lib; src.meta // {
     description = "Reference CLI for Tox";
     license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ ehmry ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
index f1a0de7338344..3e1d4e524d3d5 100644
--- a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
+++ b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
@@ -47,23 +47,23 @@ let
   # and often with different versions.  We write them on three lines
   # like this (rather than using {}) so that the updater script can
   # find where to edit them.
-  versions.aarch64-darwin = "5.11.9.10046";
-  versions.x86_64-darwin = "5.11.9.10046";
-  versions.x86_64-linux = "5.11.10.4400";
+  versions.aarch64-darwin = "5.12.0.11129";
+  versions.x86_64-darwin = "5.12.0.11129";
+  versions.x86_64-linux = "5.12.0.4682";
 
   srcs = {
     aarch64-darwin = fetchurl {
       url = "https://zoom.us/client/${versions.aarch64-darwin}/zoomusInstallerFull.pkg?archType=arm64";
       name = "zoomusInstallerFull.pkg";
-      hash = "sha256-Z+K811azMRnhptZ1UvM+o5IgE0F4p9BrntJC9IgPU7U=";
+      hash = "sha256-0XhqJrls4X8wO9VNmmmUGexJkA9NDkwJkYRjmyV1kAU=";
     };
     x86_64-darwin = fetchurl {
       url = "https://zoom.us/client/${versions.x86_64-darwin}/zoomusInstallerFull.pkg";
-      hash = "sha256-7U7qT3xlm5LqcJByMWxhZnqs6XBzylEGhqTNUgiaXJY=";
+      hash = "sha256-E7+zMrW4y1RfsR1LrxCJRRVlA+BuhzwMI/sfzqNHObo=";
     };
     x86_64-linux = fetchurl {
       url = "https://zoom.us/client/${versions.x86_64-linux}/zoom_x86_64.pkg.tar.xz";
-      hash = "sha256-Pi1MtuCHzkQACamsNOIS6pbM03L1CmyosbpdrYVNCkQ=";
+      hash = "sha256-UNtxyR4SMCP9c1Dre/arfdSVZbAV8qoHyHlvj3ZbXIs=";
     };
   };
 
diff --git a/pkgs/applications/networking/insync/default.nix b/pkgs/applications/networking/insync/default.nix
index 5992453975d94..feeb87ab3fe2a 100644
--- a/pkgs/applications/networking/insync/default.nix
+++ b/pkgs/applications/networking/insync/default.nix
@@ -39,5 +39,7 @@ stdenv.mkDerivation rec {
 
      There is a 15-day free trial, and it is a paid application after that.
     '';
+    # download URL removed
+    broken = true;
   };
 }
diff --git a/pkgs/applications/networking/insync/v3.nix b/pkgs/applications/networking/insync/v3.nix
index 5efffab51c6cd..cc6b0d08a1031 100644
--- a/pkgs/applications/networking/insync/v3.nix
+++ b/pkgs/applications/networking/insync/v3.nix
@@ -80,5 +80,7 @@ stdenv.mkDerivation rec {
 
      There is a 15-day free trial, and it is a paid application after that.
     '';
+    # download URL removed
+    broken = true;
   };
 }
diff --git a/pkgs/applications/networking/ipfs-migrator/default.nix b/pkgs/applications/networking/ipfs-migrator/default.nix
deleted file mode 100644
index d8c5de150bb33..0000000000000
--- a/pkgs/applications/networking/ipfs-migrator/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ lib
-, buildEnv
-, makeWrapper
-, ipfs-migrator-unwrapped
-, ipfs-migrator-all-fs-repo-migrations
-}:
-
-buildEnv {
-  name = "ipfs-migrator-${ipfs-migrator-unwrapped.version}";
-
-  nativeBuildInputs = [ makeWrapper ];
-
-  paths = [ ipfs-migrator-unwrapped ];
-
-  pathsToLink = [ "/bin" ];
-
-  postBuild = ''
-    wrapProgram "$out/bin/fs-repo-migrations" \
-      --prefix PATH ':' '${lib.makeBinPath [ ipfs-migrator-all-fs-repo-migrations ]}'
-  '';
-
-  inherit (ipfs-migrator-unwrapped) meta;
-}
diff --git a/pkgs/applications/networking/irc/srain/default.nix b/pkgs/applications/networking/irc/srain/default.nix
index 20cadacb85a1a..d17fcb07a03ba 100644
--- a/pkgs/applications/networking/irc/srain/default.nix
+++ b/pkgs/applications/networking/irc/srain/default.nix
@@ -20,13 +20,13 @@
 
 stdenv.mkDerivation rec {
   pname = "srain";
-  version = "1.4.1";
+  version = "1.5.0";
 
   src = fetchFromGitHub {
     owner = "SrainApp";
     repo = "srain";
     rev = version;
-    sha256 = "sha256-zkSePzmbi/QnUYJO/henkxfhuN+BXTXtKGPW7M2QyBY=";
+    sha256 = "sha256-AJ02S5+A/n8kO6lic8EbPYqNDmHL/tKbXhIkHTrcXOM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/irc/weechat/default.nix b/pkgs/applications/networking/irc/weechat/default.nix
index 4631cef04fa13..132504a20e164 100644
--- a/pkgs/applications/networking/irc/weechat/default.nix
+++ b/pkgs/applications/networking/irc/weechat/default.nix
@@ -1,20 +1,25 @@
 { stdenv, fetchurl, lib
 , ncurses, openssl, aspell, gnutls, gettext
 , zlib, curl, pkg-config, libgcrypt
-, cmake, makeWrapper, libobjc, libresolv, libiconv
+, cmake, libobjc, libresolv, libiconv
 , asciidoctor # manpages
+, enableTests ? !stdenv.isDarwin, cpputest
 , guileSupport ? true, guile
 , luaSupport ? true, lua5
 , perlSupport ? true, perl
 , pythonSupport ? true, python3Packages
 , rubySupport ? true, ruby
 , tclSupport ? true, tcl
+, phpSupport ? !stdenv.isDarwin, php, systemd, libxml2, pcre2, libargon2
 , extraBuildInputs ? []
-, fetchpatch
 }:
 
 let
   inherit (python3Packages) python;
+  php-embed = php.override {
+    embedSupport = true;
+    apxs2Support = false;
+  };
   plugins = [
     { name = "perl"; enabled = perlSupport; cmakeFlag = "ENABLE_PERL"; buildInputs = [ perl ]; }
     { name = "tcl"; enabled = tclSupport; cmakeFlag = "ENABLE_TCL"; buildInputs = [ tcl ]; }
@@ -22,35 +27,37 @@ let
     { name = "guile"; enabled = guileSupport; cmakeFlag = "ENABLE_GUILE"; buildInputs = [ guile ]; }
     { name = "lua"; enabled = luaSupport; cmakeFlag = "ENABLE_LUA"; buildInputs = [ lua5 ]; }
     { name = "python"; enabled = pythonSupport; cmakeFlag = "ENABLE_PYTHON3"; buildInputs = [ python ]; }
+    { name = "php"; enabled = phpSupport; cmakeFlag = "ENABLE_PHP"; buildInputs = [
+      php-embed.unwrapped.dev libxml2 pcre2 libargon2
+    ] ++ lib.optional stdenv.isLinux systemd; }
   ];
   enabledPlugins = builtins.filter (p: p.enabled) plugins;
 
   in
     assert lib.all (p: p.enabled -> ! (builtins.elem null p.buildInputs)) plugins;
     stdenv.mkDerivation rec {
-      version = "3.6";
+      version = "3.7";
       pname = "weechat";
 
       hardeningEnable = [ "pie" ];
 
       src = fetchurl {
         url = "https://weechat.org/files/src/weechat-${version}.tar.bz2";
-        sha256 = "sha256-GkYN/Y4LQQr7GdSDu0ucXXM9wWPAqKD1txJXkOhJMDc=";
+        hash = "sha256-n5kvC//h85c4IvkrCVTz+F0DcCC5rdRkvj8W3fUPXI8=";
       };
 
       outputs = [ "out" "man" ] ++ map (p: p.name) enabledPlugins;
 
       cmakeFlags = with lib; [
         "-DENABLE_MAN=ON"
-        "-DENABLE_DOC=OFF"         # TODO: Documentation fails to build, was deactivated to push through security update
-        "-DENABLE_JAVASCRIPT=OFF"  # Requires v8 <= 3.24.3, https://github.com/weechat/weechat/issues/360
-        "-DENABLE_PHP=OFF"
+        "-DENABLE_DOC=OFF"         # TODO(@ncfavier): Documentation fails to build, was deactivated to push through security update
+        "-DENABLE_TESTS=${if enableTests then "ON" else "OFF"}"
       ]
         ++ optionals stdenv.isDarwin ["-DICONV_LIBRARY=${libiconv}/lib/libiconv.dylib"]
         ++ map (p: "-D${p.cmakeFlag}=" + (if p.enabled then "ON" else "OFF")) plugins
         ;
 
-      nativeBuildInputs = [ cmake pkg-config makeWrapper asciidoctor ];
+      nativeBuildInputs = [ cmake pkg-config asciidoctor ] ++ lib.optional enableTests cpputest;
       buildInputs = with lib; [
           ncurses openssl aspell gnutls gettext zlib curl
           libgcrypt ]
@@ -85,7 +92,7 @@ let
           on https://nixos.org/nixpkgs/manual/#sec-weechat .
         '';
         license = lib.licenses.gpl3;
-        maintainers = with lib.maintainers; [ lovek323 ];
+        maintainers = with lib.maintainers; [ ncfavier ];
         platforms = lib.platforms.unix;
       };
     }
diff --git a/pkgs/applications/networking/irc/weechat/wrapper.nix b/pkgs/applications/networking/irc/weechat/wrapper.nix
index 5c06bb8517a29..353b7ffd6fda4 100644
--- a/pkgs/applications/networking/irc/weechat/wrapper.nix
+++ b/pkgs/applications/networking/irc/weechat/wrapper.nix
@@ -7,7 +7,11 @@ weechat:
 let
   wrapper = {
     installManPages ? true
-  , configure ? { availablePlugins, ... }: { plugins = builtins.attrValues availablePlugins; }
+  , configure ? { availablePlugins, ... }: {
+      # Do not include PHP by default, because it bloats the closure, doesn't
+      # build on Darwin, and there are no official PHP scripts.
+      plugins = builtins.attrValues (builtins.removeAttrs availablePlugins [ "php" ]);
+    }
   }:
 
   let
@@ -21,6 +25,7 @@ let
           '';
           withPackages = pkgsFun: (python // {
             extraEnv = ''
+              ${python.extraEnv}
               export PYTHONHOME="${python3Packages.python.withPackages pkgsFun}"
             '';
           });
@@ -40,6 +45,7 @@ let
         ruby = simplePlugin "ruby";
         guile = simplePlugin "guile";
         lua = simplePlugin "lua";
+        php = simplePlugin "php";
       };
 
     config = configure { inherit availablePlugins; };
diff --git a/pkgs/applications/networking/ipfs-migrator/all-migrations.nix b/pkgs/applications/networking/kubo-migrator/all-migrations.nix
index a376e9f895b1b..a9197c9db5fbc 100644
--- a/pkgs/applications/networking/ipfs-migrator/all-migrations.nix
+++ b/pkgs/applications/networking/kubo-migrator/all-migrations.nix
@@ -2,23 +2,23 @@
 , stdenv
 , symlinkJoin
 , buildGoModule
-, ipfs-migrator-unwrapped
+, kubo-migrator-unwrapped
 }:
 
 # This package contains all the individual migrations in the bin directory.
-# This is used by fs-repo-migrations and could also be used by IPFS itself
+# This is used by fs-repo-migrations and could also be used by Kubo itself
 # when starting it like this: ipfs daemon --migrate
 
 let
   fs-repo-common = pname: version: buildGoModule {
     inherit pname version;
-    inherit (ipfs-migrator-unwrapped) src;
+    inherit (kubo-migrator-unwrapped) src;
     sourceRoot = "source/${pname}";
     vendorSha256 = null;
     doCheck = false;
-    meta = ipfs-migrator-unwrapped.meta // {
+    meta = kubo-migrator-unwrapped.meta // {
       mainProgram = pname;
-      description = "Individual migration for the filesystem repository of ipfs clients";
+      description = "Individual migration for the filesystem repository of Kubo clients";
     };
   };
 
@@ -58,6 +58,6 @@ let
 in
 
 symlinkJoin {
-  name = "ipfs-migrator-all-fs-repo-migrations-${version}";
+  name = "kubo-migrator-all-fs-repo-migrations-${version}";
   paths = all-migrations;
 }
diff --git a/pkgs/applications/networking/kubo-migrator/default.nix b/pkgs/applications/networking/kubo-migrator/default.nix
new file mode 100644
index 0000000000000..e45cbf84d5241
--- /dev/null
+++ b/pkgs/applications/networking/kubo-migrator/default.nix
@@ -0,0 +1,23 @@
+{ lib
+, buildEnv
+, makeWrapper
+, kubo-migrator-unwrapped
+, kubo-migrator-all-fs-repo-migrations
+}:
+
+buildEnv {
+  name = "kubo-migrator-${kubo-migrator-unwrapped.version}";
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  paths = [ kubo-migrator-unwrapped ];
+
+  pathsToLink = [ "/bin" ];
+
+  postBuild = ''
+    wrapProgram "$out/bin/fs-repo-migrations" \
+      --prefix PATH ':' '${lib.makeBinPath [ kubo-migrator-all-fs-repo-migrations ]}'
+  '';
+
+  inherit (kubo-migrator-unwrapped) meta;
+}
diff --git a/pkgs/applications/networking/ipfs-migrator/unwrapped.nix b/pkgs/applications/networking/kubo-migrator/unwrapped.nix
index c8ade793218f6..a99ab2b2cbb61 100644
--- a/pkgs/applications/networking/ipfs-migrator/unwrapped.nix
+++ b/pkgs/applications/networking/kubo-migrator/unwrapped.nix
@@ -4,7 +4,7 @@
 }:
 
 buildGoModule rec {
-  pname = "ipfs-migrator";
+  pname = "kubo-migrator";
   version = "2.0.2";
 
   src = fetchFromGitHub {
@@ -26,7 +26,7 @@ buildGoModule rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "Migrations for the filesystem repository of ipfs clients";
+    description = "Migrations for the filesystem repository of Kubo clients";
     homepage = "https://github.com/ipfs/fs-repo-migrations";
     license = licenses.mit;
     maintainers = with maintainers; [ Luflosi elitak ];
diff --git a/pkgs/applications/networking/ipfs/default.nix b/pkgs/applications/networking/kubo/default.nix
index 6054bca1d8adb..01a8dd9ffface 100644
--- a/pkgs/applications/networking/ipfs/default.nix
+++ b/pkgs/applications/networking/kubo/default.nix
@@ -1,24 +1,24 @@
 { lib, buildGoModule, fetchurl, nixosTests, openssl, pkg-config }:
 
 buildGoModule rec {
-  pname = "ipfs";
-  version = "0.15.0"; # When updating, also check if the repo version changed and adjust repoVersion below
+  pname = "kubo";
+  version = "0.16.0"; # When updating, also check if the repo version changed and adjust repoVersion below
   rev = "v${version}";
 
-  passthru.repoVersion = "12"; # Also update ipfs-migrator when changing the repo version
+  passthru.repoVersion = "12"; # Also update kubo-migrator when changing the repo version
 
-  # go-ipfs makes changes to it's source tarball that don't match the git source.
+  # Kubo makes changes to it's source tarball that don't match the git source.
   src = fetchurl {
     url = "https://github.com/ipfs/kubo/releases/download/${rev}/kubo-source.tar.gz";
-    hash = "sha256-GkOY1G2CKXbMbHXkw5v27HmfkJIl2nZOmjjZbzuaRWs=";
+    hash = "sha256-FS7lwQS7ybyoIKPkcUtPIe3srO1O/cZN+x1nzWUlF20=";
   };
 
   # tarball contains multiple files/directories
   postUnpack = ''
-    mkdir ipfs-src
+    mkdir kubo-src
     shopt -s extglob
-    mv !(ipfs-src) ipfs-src || true
-    cd ipfs-src
+    mv !(kubo-src) kubo-src || true
+    cd kubo-src
   '';
 
   sourceRoot = ".";
@@ -29,7 +29,7 @@ buildGoModule rec {
   nativeBuildInputs = [ pkg-config ];
   tags = [ "openssl" ];
 
-  passthru.tests.ipfs = nixosTests.ipfs;
+  passthru.tests.kubo = nixosTests.kubo;
 
   vendorSha256 = null;
 
@@ -57,6 +57,7 @@ buildGoModule rec {
     homepage = "https://ipfs.io/";
     license = licenses.mit;
     platforms = platforms.unix;
+    mainProgram = "ipfs";
     maintainers = with maintainers; [ fpletz ];
   };
 }
diff --git a/pkgs/applications/networking/mailreaders/claws-mail/default.nix b/pkgs/applications/networking/mailreaders/claws-mail/default.nix
index 5a580cf0f705e..a40e998618a15 100644
--- a/pkgs/applications/networking/mailreaders/claws-mail/default.nix
+++ b/pkgs/applications/networking/mailreaders/claws-mail/default.nix
@@ -163,6 +163,6 @@ in stdenv.mkDerivation rec {
     homepage = "https://www.claws-mail.org/";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ fpletz globin orivej oxzi ajs124 ];
+    maintainers = with maintainers; [ fpletz globin orivej oxzi ajs124 srapenne ];
   };
 }
diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix b/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
index 65fb5458fa493..be8ba9c132a3d 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.3.1";
+  version = "102.3.2";
   sources = [
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/af/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/af/thunderbird-102.3.2.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha256 = "4e9ec93b6cadc5596aa61efbaaccb377b4666e48dc73237c6119f9a91478fdc9";
+      sha256 = "be8247ed8d61d6a62958ec015e6e192b32dd897ba8fb1d1cdad00b992a65e838";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/ar/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/ar/thunderbird-102.3.2.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha256 = "ab00353e8e55395525fdb85d5b2e824a144d52117e113ef88d5b120e99ebd506";
+      sha256 = "98b8a0d748e1c3ea7f776c7a79e04d16c14eddd2a6b2bd68bea2440cda9c716e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/ast/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/ast/thunderbird-102.3.2.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha256 = "2d7fc95f771cb315791d7b5558a05cd0b897e407b456d464235c593afa8c8dd6";
+      sha256 = "cc7e318a00a4dc7ea1094f01fd876bcf38712a3cf2ff9662fdd01e7be0509d80";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/be/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/be/thunderbird-102.3.2.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha256 = "091e1da27b7590cd3a667c3a380d59723b2807e66401834a2d54dbbced4f98ea";
+      sha256 = "d2452c7a69509a8ec5043151f2ffdb3aa40ae51fafbc7343a902c56ee3da833d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/bg/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/bg/thunderbird-102.3.2.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha256 = "02cb218c8f9b0407f1c7da2b688d3ced64c4e05166e6b234d89b7ec3f35204c3";
+      sha256 = "ab50997f169d11d54f3873be2d0a75debb1d66853cbeb2a0f6716e215798d558";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/br/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/br/thunderbird-102.3.2.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha256 = "4257d1f808ff6c4559f5710e5f3ba03f28a2a6725a8d707d10baca133bc28c0a";
+      sha256 = "3959465afba39a3c77e03fa9b2c9f74e455af2122cc91fce743767430f96462f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/ca/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/ca/thunderbird-102.3.2.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha256 = "cc9deaa88c614ecf831cf7cebab21197f3f4eeae39934da474a60ce29b8e2ceb";
+      sha256 = "c055af1ef096fd5b6269b230ccd37bc165172e6a21da1330d8b4ee6c3ff583d6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/cak/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/cak/thunderbird-102.3.2.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha256 = "917854ff9d323a2c827450e3c37dc8b1b0de3d666f91b400999f290dbca00ecb";
+      sha256 = "65fbb4680513d04a12f0acb476e485cffaa8cea977e8f17abe0371c990e5aff8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/cs/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/cs/thunderbird-102.3.2.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha256 = "9d785bb167ccdf14cffa6cefd78e40da6851c328ca898c332647639c79c2217e";
+      sha256 = "0b21e350dba000535ca747207034c5b7665d9adc652905330adb3c0b2ed52025";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/cy/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/cy/thunderbird-102.3.2.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha256 = "2a7cf8397ad73f8f9beddfffc93950336d6619bacf8e5e3baca0cb6ce934927a";
+      sha256 = "a998fc9979a679220e5078945a3aadf3168ac89278f6063ae8af410fd9ba11db";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/da/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/da/thunderbird-102.3.2.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha256 = "5cd15b8266e6f27e676bc268e44dcac15f24bb385443dcda60ce6493a3a9694f";
+      sha256 = "4fdc6aadee7fb96408d39d3454e77c03f09efd2110fed03450cb4076fca0f127";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/de/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/de/thunderbird-102.3.2.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha256 = "f765a23938acd9d7a34c16bf578ed2992d81981f7425b3ae0971f8daf6567d86";
+      sha256 = "6780d62564adb5ec21c85b85535e92a2116e34829b873787003c70eef0f0fae9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/dsb/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/dsb/thunderbird-102.3.2.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha256 = "71bd0e2685b76081aaae2d30ec30f787c58d6c22d191f91c968e0e8393c1accb";
+      sha256 = "9eaaab1db1d64482693fd9fe8194aae2d0d8b84822e78ac9f5819042059a4fb0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/el/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/el/thunderbird-102.3.2.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha256 = "9c6312b6c76c388bfe85edf0c23df474224db5db804298eea2623229f82ba6c0";
+      sha256 = "9a5a7ba9c532fd91a781fca68146634987d0546e237703cad0a5d71ed33076c2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/en-CA/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/en-CA/thunderbird-102.3.2.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha256 = "cb0d81609be24e85454a7c52f05ef6f4557837e6ca63908376c6beefa4d6a7f5";
+      sha256 = "ead8deb57af6f8fdee2a1cdb6ea19132ccc2c0a1c4fb87bb25ecc1c8992995e9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/en-GB/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/en-GB/thunderbird-102.3.2.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha256 = "8fce652d0f319812e1bcb485c011087a09034a81ebefc19d8e6bff6ce74897a0";
+      sha256 = "3c7083ff11d817d7d29afb0fb144124ae33570eb1bb26a166e70d9a79f217cba";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/en-US/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/en-US/thunderbird-102.3.2.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha256 = "23c48f5d92915d1ed823c2f47f3a611bf81dd6d69b9b1a5a0aeb939a405d7466";
+      sha256 = "0cab200bb2acf7024f772a2762fcbc6b8a6d8cce4471cd95558b030e6b0547cf";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/es-AR/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/es-AR/thunderbird-102.3.2.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha256 = "ffb7f0e9d6df315f9fe18dc955d2d5394a8b2413727ae674fa81d72fae0d8a14";
+      sha256 = "973d0a573181b17461e9dfc80cd3b4d2d38b9d489caff2fea43b2ca307b24cd4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/es-ES/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/es-ES/thunderbird-102.3.2.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha256 = "a0442f1146c6c455c4934834b8b6dabe42afc29512a48f9ccdb28467de0d8800";
+      sha256 = "ea745ba8bb2db5e1b53a88b9436b0a49d0644c53cc379c84588b0db82603728d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/es-MX/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/es-MX/thunderbird-102.3.2.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha256 = "84f7b65736a7c872ec6ac7283ff53d1c0b9e36edb1469784b5094fa963b44d59";
+      sha256 = "fe408a962b117eb768a2b83da65301286331642c6fdb30def84669ea659b7cf3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/et/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/et/thunderbird-102.3.2.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha256 = "6c2985ac3473f124b842daca57d97f584a58d1d5cd0864cbcc432e1af250e83d";
+      sha256 = "419f37f72857d123594e2915571eefe91ff7a6b68c10c48b5efa7fc7d248ddd1";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/eu/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/eu/thunderbird-102.3.2.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha256 = "adafa0ecbb2f8a8ee2d4f06b38744c9bec60d1d0bee386b9840a4d5e08f28cb1";
+      sha256 = "8cfdaea3cfbdac4143becdf49166934fcc9f55a826b424282d7af2df40e35f55";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/fi/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/fi/thunderbird-102.3.2.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha256 = "ab7e814fe7e45f49bc6cb9451ad388b3d220af33d02071c8d9358ad1949937c3";
+      sha256 = "2a8d309a5eaf7c558fc2337612ff8c6aab7de9e8d1f8787b603cbc9a1cf46de3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/fr/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/fr/thunderbird-102.3.2.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha256 = "f2bc22c3a12fa32c8c13e50a3fe502d5966fa082e6b07c84d2867b043f7770fd";
+      sha256 = "7dd70ae9161f0a360febd3df1cbd0eb2b4c0ebf3f372e64abe2762e1614be6c4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/fy-NL/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/fy-NL/thunderbird-102.3.2.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha256 = "eeba9b084a5cc818dd62f0bc60de98769c2a62923a121ed77b84f9b4409e60ae";
+      sha256 = "5df8cd18f0cb1cbf8df3cc2377e9db499bab2615ef612fe6651e93b376cd03d1";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/ga-IE/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/ga-IE/thunderbird-102.3.2.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha256 = "6a86c5e24299ee5a24a573d5e598eb42686c4c5baf58798f487048bb18b9d892";
+      sha256 = "7d65ee7e12ee587357b46b4f8cdf4941607e5c8166e0e9b70bb9ae0add8c762e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/gd/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/gd/thunderbird-102.3.2.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha256 = "a53567a12afc89f3dbdc20976a098f085298414e9a2453e86608715e7500609b";
+      sha256 = "5a9b6c76571dde94dcb8e17b375d0e294bed23c4805f08628b7d7261223efb47";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/gl/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/gl/thunderbird-102.3.2.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha256 = "fc47765f922e599b18903a9697493a3c939e5660b3efb19353c511876bc1e74e";
+      sha256 = "78be935f676cfe736e0930eb5ce3fcc722ad3711bfda9b2e5d773c4407150867";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/he/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/he/thunderbird-102.3.2.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha256 = "5ea02bf7572cf7568e508b42ebfc7dd8ceacc6675b80a609d6fb2448f99d111c";
+      sha256 = "ad8ffd7c335c845826c477c59e6c830711d03a2420a1f1fe4931fe47c6673589";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/hr/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/hr/thunderbird-102.3.2.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha256 = "cc304fdd627e3eb6286ef919bdc0afa08c13c06b9586e058724a30a58e06bda5";
+      sha256 = "fff30dcff80b6bef6330287534ed4823b3e3cfcddc1c1af522c81ce498ec0084";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/hsb/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/hsb/thunderbird-102.3.2.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha256 = "5b4daf66a885260f00d6142102830abe91cc3e4ba5f44dce89f9ea405edcb725";
+      sha256 = "51e184549219cfa88f96b0d64e09aea00ffc6237fe658b899fdb17bacad52234";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/hu/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/hu/thunderbird-102.3.2.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha256 = "eff03ec8945cbe8378651d8847aeeaf395c3c5a6351f8f77586969db13cff90a";
+      sha256 = "140fbeaadf1aadab59f941a0d2bbb7bf1d26b5e3e71aaf5f600ddcd6bcfa144f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/hy-AM/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/hy-AM/thunderbird-102.3.2.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha256 = "e3e1d117ca12ab81c71ac412532691bac97488d4c4de0f2c6b3e04ad8842b8d5";
+      sha256 = "abe9b2d0c3fcefd789e169a7dcb2ead15d55d6fa7638fa0dfa942a25dccf8ce8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/id/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/id/thunderbird-102.3.2.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha256 = "31783513a34d7c254bf256fece50303d19659d555ec9be6aa65d7c927331b613";
+      sha256 = "600779207924004b413f8929337bad94749babf9881fff934fe22bad6b9653a1";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/is/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/is/thunderbird-102.3.2.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha256 = "6872d041b88b3ef63c576545f290306002af052bddf836755983f1cc04e0d88e";
+      sha256 = "a1a30d74a88331e16a9e607987702ff8c586e0c1125e53e76e3ce58b94c7066d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/it/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/it/thunderbird-102.3.2.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha256 = "62b3f417ce64feec22cad34bed2ceff9b148e1c70fa6c113a6ebdffa03176790";
+      sha256 = "48cf2fc404a1957b3e788f1744bbe09fa0c43da8a48fe2f16e620dc7897c42e5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/ja/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/ja/thunderbird-102.3.2.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha256 = "d532ffe63954e34a1fabf0c4fd82650d47b6149ed24e721ec8a982e41151656d";
+      sha256 = "92519bb0731fe2f7c4e5977153a297c8d00e59a7e74df974d5c97511cb0d24ef";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/ka/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/ka/thunderbird-102.3.2.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha256 = "34f6c534c1a1e0765beddab6f282a37a433019bf34c8f682b34bb2043ee50873";
+      sha256 = "680e31023d639d4f040b6c7c64e81169d28ed8d57b30aa9e26b6bf1a4c7d76e1";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/kab/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/kab/thunderbird-102.3.2.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha256 = "c8eb3166d1969e61092b360387cc36225a40dd6a6bd02fb1770fe9038737725f";
+      sha256 = "0011c0b32afa890108133f9c5ca56c5cac521f76e1462497facf3bd56ef80c4f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/kk/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/kk/thunderbird-102.3.2.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha256 = "1ac2a9fa3c8c4d81011bfaf7832f1b0e8e90eb5d5e6244090d72147d2e2b8fb7";
+      sha256 = "95c95f06d61ab3090908e24e58d19da58ac7f5581f8fa414796ef493a1bcdd61";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/ko/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/ko/thunderbird-102.3.2.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha256 = "cf93f79fa959c5bdf95b4c35c55db071825026d251ee877901864e875b28cc0f";
+      sha256 = "9b80bedc6791f41acbff75794d3fda188f112b3c010ad9c1cf070624a07055d4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/lt/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/lt/thunderbird-102.3.2.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha256 = "ae27c62284aa6884daf2e798f150d2d23134dc1a9f94fa6af707436af2018c13";
+      sha256 = "42aedde250458f5764b0d79c551feb0f2d06e40cf7214f83e8d61401a700ee5d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/lv/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/lv/thunderbird-102.3.2.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha256 = "1866d66a091e4b8126b70371631e5c97ce0a5868c77355b8e918678b1864e982";
+      sha256 = "a3b2cf7a102cebea1ff3bbe9eaefddddfc800a0b7a8500209be71e191ffaf62d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/ms/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/ms/thunderbird-102.3.2.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha256 = "01b3960e8316292b7e76ff1c43784120d515ce9f1dde3698db3242fb1b06edf2";
+      sha256 = "b20af066f049d1763ace7da37255a5383a2d441cb9ba9135906fdc1aa76fc479";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/nb-NO/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/nb-NO/thunderbird-102.3.2.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha256 = "98afda50d6fe63681e643d6580a773bffac167a6b074fc2523ddeaa99b34b791";
+      sha256 = "0a570b14610cde2fcb4ab0fc4db9ed5a2eb468690d5adf0518487d45b6866643";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/nl/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/nl/thunderbird-102.3.2.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha256 = "fa8e08b8ed82590db431527c75f407365b01da7a8bf445060eabd3b1cb433191";
+      sha256 = "440ecc50c0c245494e4fd8f32aa3b927744a096b4aacbe4fd11c72c6ba466e60";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/nn-NO/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/nn-NO/thunderbird-102.3.2.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha256 = "b1696f0c18425096daba4cf42000b62fb3e520b670b96c716dad159dfd87ea8d";
+      sha256 = "abe9de2a4ed8d11c5f8b5f51b39eec4814eda96ef601b4feb5236779c259d04e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/pa-IN/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/pa-IN/thunderbird-102.3.2.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha256 = "64d1d93e474178e58ecbb6a320334fcf282768a6670d7a4b61a9868028a2b872";
+      sha256 = "343689c4aa8970ab7fc6681a43b0bcc4bd69d63c900cfb4e4f62c4ccbdd93181";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/pl/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/pl/thunderbird-102.3.2.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha256 = "2944648239de42d63296117fd400f91f113f1abe43c07427d8bae171fc704178";
+      sha256 = "d24b3718ebc598191f3ae650ecc6bbd800e6fc3725fcb8b6ef7fa7f63ef9eaea";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/pt-BR/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/pt-BR/thunderbird-102.3.2.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha256 = "8a90e2f181579f2f554323c0a517f39068261157fdb9c7a3e103b7e12bdaf85a";
+      sha256 = "7cb226cbf2054aa34a27f2e9c033fd3f1fd5848d0737225da38f0fe22d2d9a01";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/pt-PT/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/pt-PT/thunderbird-102.3.2.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha256 = "daf5b99316e61405a791d4c08934135578b89046b9364f59d8ff3c96ae2aad8c";
+      sha256 = "1f65677e9e595b39962d0ae6a9cc0942b69c9fbf7b3e22c21a12830678ca8fab";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/rm/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/rm/thunderbird-102.3.2.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha256 = "21293b3675a5cf775840a197278538132ce6072fcf05c9752658d7b8c1733507";
+      sha256 = "cf07014796cd820061490c0fcd0be3c429f80a8edf9ecd712a5252420c8333f2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/ro/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/ro/thunderbird-102.3.2.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha256 = "a488e2de83e8a644dd4943ae1fb1ef7e573044d896d40174c057d85b5c572bdd";
+      sha256 = "6691874f03e8a39c570e8b1b51eb0a4ae0c9b7b7ec6e10d955a82fb86dc5628c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/ru/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/ru/thunderbird-102.3.2.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha256 = "c442169025d3af45f6f17d93b4ee6b93a19dee8dc76aa3a86d05f909c7738f01";
+      sha256 = "28cf9994e05d3ae6b6d740e73fe773486f4f80e94d9886ca356e22230a26f4a4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/sk/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/sk/thunderbird-102.3.2.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha256 = "ecdf233b3492989e4bfa8479603088bae5c01d91f803d0ef75217999727bfb96";
+      sha256 = "9d07755c8471e85514c3b06a819b4acadaba1f5e19a83d64b6f33dc0e23ed4c5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/sl/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/sl/thunderbird-102.3.2.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha256 = "4a50de5e9e4d521fe82dac6975fc0524cda87982dbb408fc49020d444fe4a517";
+      sha256 = "f7be5127b7e7f10dbf0587c1593ca7ed6c06c8ab7c6027ae6e3e02d01887f294";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/sq/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/sq/thunderbird-102.3.2.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha256 = "85374a718f1968852318320d39dee77b1377aab49e9d16457a1a92b8606f0390";
+      sha256 = "ef624dc3078b216c2364bd409b1a34aa7b7bfa85571b47c6ceff1acde0232fe9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/sr/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/sr/thunderbird-102.3.2.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha256 = "1a2799e9821b1eb49ec90e6b50fc2b306e53738e192fbb8bcccba0ddaad90cc7";
+      sha256 = "3dc3281d8395ea38c877a28e0d825a61466092b2b1206db219e14d2a7ae761f0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/sv-SE/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/sv-SE/thunderbird-102.3.2.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha256 = "3f1d06d90214103104788f2f874b0ec7b915fda8f2a2c54155706f6c8b9455c7";
+      sha256 = "2a72cfaef31debb488acc070365764e6478c8c437b76eddcd783c4c0af8764b2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/th/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/th/thunderbird-102.3.2.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha256 = "1d611eb6a2a1dfeea5e08bdc1d46a580df25f172169a9752d865b89e44bd673c";
+      sha256 = "8a668f1bb70ea4b93f18e7c8e0667605bd3f97a175d6887adbb38a1cb5247452";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/tr/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/tr/thunderbird-102.3.2.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha256 = "3c9df11854ff3a775b9bafe57feeb585afd46e853e8be06b73f9fb5a06b21595";
+      sha256 = "32dbd1790457f0224584115471366b09f1bc4a72a72467a3ec25c6cd4f1da520";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/uk/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/uk/thunderbird-102.3.2.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha256 = "fa3a01b7a86a8885aa05fe9251ca8843b08268d338d73a4f26e790b76249e429";
+      sha256 = "2f95ecb5ba9c725fed978f2a27d117cafa622eb3988ca3e0a3afd3bd38a1d529";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/uz/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/uz/thunderbird-102.3.2.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha256 = "8e87c7f295216f70d861ced167970968db3926ddfc597613b51be82724793e19";
+      sha256 = "44e1c9893960f43dd74b9fbfc2cce481538b1eac76944dd57f9e580b99027bb7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/vi/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/vi/thunderbird-102.3.2.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha256 = "c8a75c6a87e5606037da51c57a9b0ca01cce95b9a6bf51f92645902be7fe666c";
+      sha256 = "5fa13f379f064a7d070a32b4eeff8d8c80dae880ade4cea73ddd1d43bf3395df";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/zh-CN/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/zh-CN/thunderbird-102.3.2.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha256 = "679f176ab93c5afe107c9afad67216c86f3b85fd95051da8a194e3f28bbc9c24";
+      sha256 = "0636cb784ae1d4c17a2c9f34293a1bd0def3ba11ac38114d0230bc807a0b5cc6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-x86_64/zh-TW/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-x86_64/zh-TW/thunderbird-102.3.2.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha256 = "d9dac3efd9f3b6f8b3de483fb895b21079f9cda9cee4247dcf605e7d1a15ed71";
+      sha256 = "37e13e04ccf331da55467ba0aeed7ab8be837eeb48b64a46a8dd975955cb2b8b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/af/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/af/thunderbird-102.3.2.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha256 = "448bba05f7fc7982e189cd0b012b83695a16b7912050919ae15ccff23ac0e9c1";
+      sha256 = "9f63be2b52e9eeaf0d17a23287f406af72a15a3469f699f31c78c0065ddafc01";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/ar/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/ar/thunderbird-102.3.2.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha256 = "ce5d762c58ae99327e1b40bb0a2fa39e66391d620b09d156299c1240f3cd6214";
+      sha256 = "b796db3c8f75a0a20ee74e264a08c35e8f77788fa539951d184f78843f35cfcb";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/ast/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/ast/thunderbird-102.3.2.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha256 = "2bb16102cbbf2d5ecf8a4d0cf7e52abe59e0e77bab8b99955753ed2833c7c60b";
+      sha256 = "ec8ba04578e0a04d55dbfd8c59e79a7c57b0c43e577b1c675463509f6defe155";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/be/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/be/thunderbird-102.3.2.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha256 = "77480fd5f82259c02107072cfe572d8c13611279fd9a6ffb2a9203db8cf1e233";
+      sha256 = "687c2a8a79423ed5641592c09df5e93526da5b03c9f8e19fd5accd019ab31e3a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/bg/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/bg/thunderbird-102.3.2.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha256 = "317909be58eb0718ee8a38e07ba22ef78fa912a75f18b547a1a65840214c52a7";
+      sha256 = "b233d9f0a61fe08bd6781edb25da9ed272ff670ded5be133d0cb8750f478d5b2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/br/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/br/thunderbird-102.3.2.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha256 = "a6b8d5c4012c00cbcd03beedb87826fd3553497da09710517d07ab5f26347f92";
+      sha256 = "413384529739c1b4d38766e307c950a77dfb9924da394ab27dfd815cc9bf0d43";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/ca/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/ca/thunderbird-102.3.2.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha256 = "337d21f0927c21e54009d0a38744230145e7ab36710940da1180517a946bf06f";
+      sha256 = "f861c426676cf903d4ffa54b95472da384a387e0639c70692ec3b7481fbfe77b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/cak/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/cak/thunderbird-102.3.2.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha256 = "d626cc58418c56a6505087e3ce1b8387cbf371c86653e5576b24421ef1be8cff";
+      sha256 = "87679b7dcc550f1813085a7152e478eaca0e6f4a330d58d9d19281228049a054";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/cs/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/cs/thunderbird-102.3.2.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha256 = "85422320690772a867f9128c77784f16270d739561e613505894ded2d5dea8bd";
+      sha256 = "3c78f10ca1d7aa45f8267720ef3f6c6d7184f84103dd3fcf0445e05537528cba";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/cy/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/cy/thunderbird-102.3.2.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha256 = "1b01874769ddcde6a5e520034131a42418f2f7cadb07d0aa9e815ebd0c59dbda";
+      sha256 = "6505b99879b9c689f1b6c29adecb020c6dab72e13f4e8604862760d6eaf522a3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/da/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/da/thunderbird-102.3.2.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha256 = "6381065e3e8841a6113d2cfdc2ccb6d8082f68e977940040ee85af2ad59162a0";
+      sha256 = "782422e9469deec492c38f6e004828c972341650b36c86b74d86f511789838d6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/de/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/de/thunderbird-102.3.2.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha256 = "ce9525f4d3df6336f01c526d095292490a3ef8c50752140899ef01dd5a4822cf";
+      sha256 = "07077a1d02803a9c510bbba3bce2efc3d987ab1df654c6d638a9e8717e11fc79";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/dsb/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/dsb/thunderbird-102.3.2.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha256 = "5597b4565df7f09e2a5682fe252076c1f689a3c7f139a38b9415c1e1ff6d3255";
+      sha256 = "5ca4dab28f2f912a56fd0c2377d9537001bd07ae09b9ce20050afd338d0dd615";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/el/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/el/thunderbird-102.3.2.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha256 = "4b1a586b566482d4a0b333642f6a3f8d4b68c6eebb0a0620713af4e5cea97997";
+      sha256 = "12c8883d711ff39876dd481f94e078508513d4dd3ac74cbccf33c44ddb0bc0ea";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/en-CA/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/en-CA/thunderbird-102.3.2.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha256 = "d6f1602354ac05f3220f8f4dc95164d511530f3aeee50e5f24141a9807359320";
+      sha256 = "c169a179d6bfd912cf3b44bb7491d43f572bcb8044100d7f395504fb3b031c99";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/en-GB/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/en-GB/thunderbird-102.3.2.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha256 = "14432051534a87a677318885cebe3e1ecd0d8121426bdf378251da28f8c1a3a0";
+      sha256 = "a4d2a36f571537310f92bc6f15a7ced0f65f22d6c5392384ed8d7a41302832d2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/en-US/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/en-US/thunderbird-102.3.2.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha256 = "24b0bbb9eb51289daa6dd422dda05b044f1a5a791d9d5108ea6eeb711c44de76";
+      sha256 = "69f5fde05bcbfddce4e11e7e18efe535fde0f79011fa5f51d5713d4b987e3c36";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/es-AR/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/es-AR/thunderbird-102.3.2.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha256 = "b7624620c724a64b1d87f09bf685c26ce0a84d80b07ca6d9d3f784ad21967277";
+      sha256 = "839318c257e33ea00be23d985f4ae59083e406fe08cbaa70853c8df762a98629";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/es-ES/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/es-ES/thunderbird-102.3.2.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha256 = "dfecfa47b402b90456dc5d4ae623816cbeda9c80c4938f741bf151fae0793f47";
+      sha256 = "b33fd34807fcc93f6fa2d82a0a8f4043929163045d884756abb9ec1f63ac7259";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/es-MX/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/es-MX/thunderbird-102.3.2.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha256 = "8e6527ad6aad041262d85f514ecafd9d62814844a8a29d7ca1ae883e79cef50d";
+      sha256 = "d0e87997410023ab0a17b8e1787846794d8db04d39b79af909cee47ee34977ce";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/et/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/et/thunderbird-102.3.2.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha256 = "8d18b241852707454ced76b234b242b3779b8d6e1443dac325379be06e688e9c";
+      sha256 = "c1181432421d40855719720d0523dded01e9a6c5a5bcaef70ac46a101e0e322d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/eu/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/eu/thunderbird-102.3.2.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha256 = "b8aef6273a96f6e78ba194833fcfb31461fdc6bf6bba0fd6b2412fdf152ec53c";
+      sha256 = "f9de976e9bc341963b7b74963a7c910a37072a4e9b873de488b058f3c43d6399";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/fi/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/fi/thunderbird-102.3.2.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha256 = "001c89758fc323fa0adcc687d9a593a7cd37a02bff039028876cbe29cbc30c2e";
+      sha256 = "229dfceb87668c8107748095ac8675473fbee621b1b330c306d80a78832a75cc";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/fr/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/fr/thunderbird-102.3.2.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha256 = "736754863283dfb3c3a4fed93d75fca3e7c91e8b82b501569931c34fe75610a3";
+      sha256 = "c280b145e31d954ad61d65bbe18651abd82e0de916508bdaf82986bf6c5c137c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/fy-NL/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/fy-NL/thunderbird-102.3.2.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha256 = "99de0a63b7591e089fbe107c9054334dfba47a6c2b3fe5a1257dbdd6201d6ca2";
+      sha256 = "9bd48a6794b2be0396a028ecf68d3a5ae3e36d758fb5459a28129a96aaa88ac6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/ga-IE/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/ga-IE/thunderbird-102.3.2.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha256 = "b7e2fdf11b027c6ebc8854b1dc88c8bd0f9d7fd79cf8a795aaa3e915201fec80";
+      sha256 = "b9c1200b4342f03bdc3e37ef28f902310e89d200befeff2eac27c77a7a128ea5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/gd/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/gd/thunderbird-102.3.2.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha256 = "8e8c4c8fc100186085c7a6fbbf5aa051effae790a6616e0b9443dac25b635da4";
+      sha256 = "22fd8a830e0c35288ff80e26dac73fa8761bc830e3d3ecb85a9b463481d695e6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/gl/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/gl/thunderbird-102.3.2.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha256 = "6961cbf70431de590dfb00037bb78872086405f0e6b769f75ed3d053e4d12ace";
+      sha256 = "3bf4cc4bb3861ae6145930b269fc5130bb51c482ddcac32db2af366428c44a79";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/he/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/he/thunderbird-102.3.2.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha256 = "2b7c4b2fc9ef21cc303435ce65361314c9e7621259384205658ea06fa191f91a";
+      sha256 = "a46292647a3edd4f98bd7a228523d62c398ecb08cc6c589a63db8b7b59ae34ff";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/hr/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/hr/thunderbird-102.3.2.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha256 = "2e223e3830b8d7b4747633c2450f654d6c92b822d04c7c652d9c5e5431d19cca";
+      sha256 = "5fabbf58c7ffd50959e35bcb35d7ede411185c6243331410849db34544117ef1";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/hsb/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/hsb/thunderbird-102.3.2.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha256 = "b8b49ac96522c1e0a44aa0341a272bbfac68bc3022bced753baba929c276fe7e";
+      sha256 = "eb7000d604770fe4ae252a084b873bf4daa21e63ee61b8ce55b9ebbafe602e5b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/hu/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/hu/thunderbird-102.3.2.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha256 = "b3a5aefaac3a95d4dd1d809835cc024338fcf2ed6820808dac1007e74cb11c2b";
+      sha256 = "7ce1406fa995ae3970256f589bd0cb66a650c35eda023dc8ff581e6529a5743d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/hy-AM/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/hy-AM/thunderbird-102.3.2.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha256 = "adc79864747e21dd293d46d91f57dae8a502964c5d6f952c010dc0f0a1d4c656";
+      sha256 = "de6453eddbbae63e0336dba130fea7b3ea00cf7ffcafb3a24ab5ac42c5799411";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/id/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/id/thunderbird-102.3.2.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha256 = "a154337146c6a8d5a8acab2f332ca8da6572bafdc9c888ba062bc29bc7ef37fd";
+      sha256 = "d2e952ee9e4ef37d5024bbff1ea3f1b9c88c7aa0df4f9feba440101900e24390";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/is/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/is/thunderbird-102.3.2.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha256 = "5799af2df9dd50b0c6694335b12cb77783ab0f622a8415ff82fbf15aca2822ad";
+      sha256 = "2804654ca434fdc9f80d8b32c75bfcccad25747f9d67c54752d6f313ecb0ed93";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/it/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/it/thunderbird-102.3.2.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha256 = "6c2e9dc4c6a805f919840c22a75fd6acd4bb3078a82a16b3b27e5ae1a63e21d3";
+      sha256 = "0907217dcb9896d9bca6d0c7c62a557c897102b3b45c9142bc51d3c6b185cc70";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/ja/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/ja/thunderbird-102.3.2.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha256 = "9e67f40ceb46fd39f50cc0f8f5d83ea3c677bd91810dd84d225c636f6c20a290";
+      sha256 = "049b550bb8d8a1dd274ef696dfedbb84602d2811c14e893c7dbcdbb38fb367f2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/ka/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/ka/thunderbird-102.3.2.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha256 = "765c999714bb3b897dfaa0fa3e6743123ba7e3d7dc9e54eea9252dc10e5535cd";
+      sha256 = "c609dc4eed2de0e0a4537a3f9640ddff41403672c787471ee09fb02a476f9047";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/kab/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/kab/thunderbird-102.3.2.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha256 = "63380a855e8e68d5796d22c06beaf0c0021e5488cc8d408049126334e62fb70a";
+      sha256 = "be17a41bd8d3b76d7cfe1d1f099efec944e2df53ec5a89ccc397217a258539c8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/kk/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/kk/thunderbird-102.3.2.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha256 = "694dfb86d441657d7fa3a5c9fb0aee04963fca34e6062278170b7ddb828bd6f4";
+      sha256 = "289d699f0bddb51abd9df3628ec0a83990c0c15e434da471f3f3578c757a4630";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/ko/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/ko/thunderbird-102.3.2.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha256 = "533945ef9f5f4b47b8042e226a062fb0f406a70c89fd727c86360ff86ede56a8";
+      sha256 = "494aa9bdf725a911f2494d33698daac3da429e653a89c0eaa33b6f833af6e5f8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/lt/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/lt/thunderbird-102.3.2.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha256 = "f59bc567e18f0a7bf6a8309ffd41d812196a4fb7328d0485ba01154b46b4bf89";
+      sha256 = "68fe30d3246ef7de15cce1ee8c504759891dbbe70d7334ac5c30674083cdb114";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/lv/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/lv/thunderbird-102.3.2.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha256 = "48ba520948c2ca6e10e6a16bd7110538895780612fcd49eeb9485c6c77e6e43d";
+      sha256 = "1fbb6f9f68053e4c321f4711f5aa21bb9367045f9468741cce43069ec891d6f0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/ms/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/ms/thunderbird-102.3.2.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha256 = "9bdb1a669c831dc8a714d35adaaef8a25149462d7230efbee4daa1632b487425";
+      sha256 = "f78b55d0319e53e1591e1a11982f51381e45a605849743f34091bb8413de4c45";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/nb-NO/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/nb-NO/thunderbird-102.3.2.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha256 = "07016efab2eb7ed564cebcce06aa96842c2db9935e20627207ea81eb4febc583";
+      sha256 = "481a74cb75fc088ddc47ebe4feda4148ff9ed826c7b2f8838c4fd6d2e34c8c03";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/nl/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/nl/thunderbird-102.3.2.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha256 = "6da0d6ddc98213620e9d9b20a008e1d419f9c183a379ce29a03113be3f168388";
+      sha256 = "10ddf93f44666d0b7678bbbaa54b188178ad1bce7a47a804c29779f43cc0f5b8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/nn-NO/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/nn-NO/thunderbird-102.3.2.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha256 = "8ede5e5a46e972d5b08e2c5afe316ca8f789faffc2b25e235eefda361073cbc3";
+      sha256 = "d1dab28a6768aef75d0b2235b4b922ec8f6e54f03905e58a69d1ccb6c2c2c3ea";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/pa-IN/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/pa-IN/thunderbird-102.3.2.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha256 = "d7090dc233b508586d04c19b9f0a72d49207daf01f7dba009fbab6004bffa2da";
+      sha256 = "1cad44aac21295951ee0422bea1324314ebbbf266a254ba7aa0335a16a83b17c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/pl/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/pl/thunderbird-102.3.2.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha256 = "55728076e95a42ae58bd545f4a9a07d43937e3eeca432cf14cc5b990df993cb7";
+      sha256 = "66c1d6c0a2924819bd7443852f2d6c03f5e4fe666260410fbd35a5446717c440";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/pt-BR/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/pt-BR/thunderbird-102.3.2.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha256 = "4fcef15d7ff85a5dbfc8c30628ab50403715217ba90c28c10a46f6dfd54c806e";
+      sha256 = "8fce80badd70051942bb1e8a2816907fe40a64302ec2c53db601adb76ae4b046";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/pt-PT/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/pt-PT/thunderbird-102.3.2.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha256 = "3a52e1938df9e3905e628444fa39a8ec242d5035d22081b9b236f4c9530360a2";
+      sha256 = "528e4d61fc6183cbc878c50794a624fec24dae7ecd0de723b052916a38dae8d9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/rm/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/rm/thunderbird-102.3.2.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha256 = "fe1a9489fb05b630958419e9a861900f1f2208563cbfddca1535f2189fb22c9d";
+      sha256 = "20175fc24b0422f8218dd2b9fe3c7272ab16d2c42bf908cf91d426d1df52aa7c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/ro/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/ro/thunderbird-102.3.2.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha256 = "27faa3fe3ec2491bbba28719d1251b3b1708d533c7139d7ed9ae764cfff77b4f";
+      sha256 = "3419299a3df936f428fd118f5728ca2583ee8674a9110b2846bfaebdc8fcac67";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/ru/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/ru/thunderbird-102.3.2.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha256 = "25d8d95ee2310f168ba3c3b9ac382f9faa7980e2993d53170007fd8430ea81de";
+      sha256 = "c2e058b4e73579f8459364d0197b63f5fa47b159d936ef6d02fb7ddfac0dc0bb";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/sk/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/sk/thunderbird-102.3.2.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha256 = "c20d3375ecd71abc3a2e0ac02ecd3eba94a551515f3359ef1b67ba0bf6bce00e";
+      sha256 = "832bd202ba4eaedbdc1a56c240a80d01b897fa323bfde55e10d7b469ae96b04e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/sl/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/sl/thunderbird-102.3.2.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha256 = "0228e8468438a9aa8eac458e24b20bfafe6aefdb5e48b54954ed00e63706bc13";
+      sha256 = "5caa4ef84763e5fedf0ce7bdba3c18c78d8e6adb9cb9393b192981473f5e7124";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/sq/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/sq/thunderbird-102.3.2.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha256 = "5a8663228110c37300854bf27dcc7266ab7f644433b661504c45abba41aed2e8";
+      sha256 = "4ab052d9941061b1754a2abc0327a416cfd3bf2d313f2763f71cdc3f2e9f1787";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/sr/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/sr/thunderbird-102.3.2.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha256 = "9a1df52ac44477ca7686408fe0581cdd72767ca72195799026ce5140623c096b";
+      sha256 = "da52e326fa26db84cab3981dbadf1686c9657230d3a33725db07b089f310c252";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/sv-SE/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/sv-SE/thunderbird-102.3.2.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha256 = "232aa296cc744b133127baffd286521dd9f07f3236619bd052b3f279860db9ff";
+      sha256 = "a97b6001a6b4fb5b7797c745674f4d782b8b9eb6e969858aa64c7109734763c6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/th/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/th/thunderbird-102.3.2.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha256 = "184a66243f02c8387e10cccaf8a464aba3da6f3e2f20d8493a7e6e491b16a329";
+      sha256 = "aa3e07d59b55f5e691173fdf2876d75b470312823329b70b2812c39f6d70e2e7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/tr/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/tr/thunderbird-102.3.2.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha256 = "9ed55035f0d9348f5903bf80a8f4b9b25d024f42eb67c7f90e32546bbe8aad37";
+      sha256 = "685d0005a6db08a644527167f7f72758ce1441a35dee17d67ca82ab567e9796e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/uk/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/uk/thunderbird-102.3.2.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha256 = "2c8b84d9cc9db19d8bfccba149c02f2b339967e2e97b3955a3628f9cec3e26f2";
+      sha256 = "2bc50651e17ffbeebfc51ef7a91ae348da5372f2cefded4d2810e0587d6bcc3a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/uz/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/uz/thunderbird-102.3.2.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha256 = "47e31e1aaf4b8cd9506bc22f25cc1b7be23b6c6aa36dc7828f2d56f3506f7def";
+      sha256 = "a8f6901be7bae700cef8aed58341bbfee177688cc5629326446a5a00ef76fc84";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/vi/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/vi/thunderbird-102.3.2.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha256 = "d9253ed61361b5c7888429c10c2792f95c59b72dd56ab16c2707db5e4305f34b";
+      sha256 = "b39bacae6af2aa1ba4b3bbbdcb7a9bd169d25878f90c7ca83b434c7fb4cb8c8c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/zh-CN/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/zh-CN/thunderbird-102.3.2.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha256 = "f978eb65f70017c61f7e32994bbf5be19fe2f18176a58f1b1aa0e36e688dc2ef";
+      sha256 = "0f033acd591aaa1252ffa987d27bd1ca8924c12c980e6a57824d4ac2c7576304";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.1/linux-i686/zh-TW/thunderbird-102.3.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/102.3.2/linux-i686/zh-TW/thunderbird-102.3.2.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha256 = "7a337e36d45668e5c6b20e60b3617f9acdf0f0a9166ca234567a1f0e4a47181a";
+      sha256 = "acfcb269900e6e24ab41fc6e6ef313b4a4e6f605de4642e1fa9398f2817fda80";
     }
     ];
 }
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/packages.nix b/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
index aebb182dcb231..2e53260f08bd4 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.3.1";
+    version = "102.3.2";
     application = "comm/mail";
     applicationName = "Mozilla Thunderbird";
     binaryName = pname;
     src = fetchurl {
       url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
-      sha512 = "8a127958b35c1c14b8acaa3ac256f8a3a7e9bde89fc810299ae4036c80c41d0c0d45c85ed47099d6ec37e2774a6bdeefe0de6b0b4b8bceca8206c7e54c3f93c1";
+      sha512 = "e10b0322293a723c5683231e4337b1c3a214c064bbcc7f569c111c4ace42e74ddc312f2f30a260020dac48e44662f093538fab935a78ee0f6fc4a2a70488f74a";
     };
     extraPatches = [
       # The file to be patched is different from firefox's `no-buildconfig-ffx90.patch`.
diff --git a/pkgs/applications/networking/n8n/default.nix b/pkgs/applications/networking/n8n/default.nix
index 84ac952846f3c..e8b3d258c9c0a 100644
--- a/pkgs/applications/networking/n8n/default.nix
+++ b/pkgs/applications/networking/n8n/default.nix
@@ -7,16 +7,15 @@ let
   };
 in
 nodePackages.n8n.override {
-  nativeBuildInputs = with pkgs.nodePackages; [
-    node-pre-gyp
+  nativeBuildInputs = [
+    pkgs.nodePackages.node-pre-gyp
   ];
 
-  dontNpmInstall = true;
+  buildInputs = [
+    pkgs.postgresql
+  ];
 
-  postInstall = ''
-    mkdir -p $out/bin
-    ln -s $out/lib/node_modules/n8n/bin/n8n $out/bin/n8n
-  '';
+  dontNpmInstall = true;
 
   passthru = {
     updateScript = ./generate-dependencies.sh;
diff --git a/pkgs/applications/networking/n8n/node-env.nix b/pkgs/applications/networking/n8n/node-env.nix
index 2590dd267a4ef..5dad9ec63d47c 100644
--- a/pkgs/applications/networking/n8n/node-env.nix
+++ b/pkgs/applications/networking/n8n/node-env.nix
@@ -165,7 +165,11 @@ let
           if(process.argv[2] == "development") {
               replaceDependencies(packageObj.devDependencies);
           }
+          else {
+              packageObj.devDependencies = {};
+          }
           replaceDependencies(packageObj.optionalDependencies);
+          replaceDependencies(packageObj.peerDependencies);
 
           /* Write the fixed package.json file */
           fs.writeFileSync("package.json", JSON.stringify(packageObj, null, 2));
@@ -270,7 +274,7 @@ let
 
   # Reconstructs a package-lock file from the node_modules/ folder structure and package.json files with dummy sha1 hashes
   reconstructPackageLock = writeTextFile {
-    name = "addintegrityfields.js";
+    name = "reconstructpackagelock.js";
     text = ''
       var fs = require('fs');
       var path = require('path');
@@ -280,25 +284,43 @@ let
       var lockObj = {
           name: packageObj.name,
           version: packageObj.version,
-          lockfileVersion: 1,
+          lockfileVersion: 2,
           requires: true,
+          packages: {
+              "": {
+                  name: packageObj.name,
+                  version: packageObj.version,
+                  license: packageObj.license,
+                  bin: packageObj.bin,
+                  dependencies: packageObj.dependencies,
+                  engines: packageObj.engines,
+                  optionalDependencies: packageObj.optionalDependencies
+              }
+          },
           dependencies: {}
       };
 
-      function augmentPackageJSON(filePath, dependencies) {
+      function augmentPackageJSON(filePath, packages, dependencies) {
           var packageJSON = path.join(filePath, "package.json");
           if(fs.existsSync(packageJSON)) {
               var packageObj = JSON.parse(fs.readFileSync(packageJSON));
+              packages[filePath] = {
+                  version: packageObj.version,
+                  integrity: "sha1-000000000000000000000000000=",
+                  dependencies: packageObj.dependencies,
+                  engines: packageObj.engines,
+                  optionalDependencies: packageObj.optionalDependencies
+              };
               dependencies[packageObj.name] = {
                   version: packageObj.version,
                   integrity: "sha1-000000000000000000000000000=",
                   dependencies: {}
               };
-              processDependencies(path.join(filePath, "node_modules"), dependencies[packageObj.name].dependencies);
+              processDependencies(path.join(filePath, "node_modules"), packages, dependencies[packageObj.name].dependencies);
           }
       }
 
-      function processDependencies(dir, dependencies) {
+      function processDependencies(dir, packages, dependencies) {
           if(fs.existsSync(dir)) {
               var files = fs.readdirSync(dir);
 
@@ -314,23 +336,84 @@ let
                           pkgFiles.forEach(function(entry) {
                               if(stats.isDirectory()) {
                                   var pkgFilePath = path.join(filePath, entry);
-                                  augmentPackageJSON(pkgFilePath, dependencies);
+                                  augmentPackageJSON(pkgFilePath, packages, dependencies);
                               }
                           });
                       } else {
-                          augmentPackageJSON(filePath, dependencies);
+                          augmentPackageJSON(filePath, packages, dependencies);
                       }
                   }
               });
           }
       }
 
-      processDependencies("node_modules", lockObj.dependencies);
+      processDependencies("node_modules", lockObj.packages, lockObj.dependencies);
 
       fs.writeFileSync("package-lock.json", JSON.stringify(lockObj, null, 2));
     '';
   };
 
+  # Script that links bins defined in package.json to the node_modules bin directory
+  # NPM does not do this for top-level packages itself anymore as of v7
+  linkBinsScript = writeTextFile {
+    name = "linkbins.js";
+    text = ''
+      var fs = require('fs');
+      var path = require('path');
+
+      var packageObj = JSON.parse(fs.readFileSync("package.json"));
+
+      var nodeModules = Array(packageObj.name.split("/").length).fill("..").join(path.sep);
+
+      if(packageObj.bin !== undefined) {
+          fs.mkdirSync(path.join(nodeModules, ".bin"))
+
+          if(typeof packageObj.bin == "object") {
+              Object.keys(packageObj.bin).forEach(function(exe) {
+                  if(fs.existsSync(packageObj.bin[exe])) {
+                      console.log("linking bin '" + exe + "'");
+                      fs.symlinkSync(
+                          path.join("..", packageObj.name, packageObj.bin[exe]),
+                          path.join(nodeModules, ".bin", exe)
+                      );
+                  }
+                  else {
+                      console.log("skipping non-existent bin '" + exe + "'");
+                  }
+              })
+          }
+          else {
+              if(fs.existsSync(packageObj.bin)) {
+                  console.log("linking bin '" + packageObj.bin + "'");
+                  fs.symlinkSync(
+                      path.join("..", packageObj.name, packageObj.bin),
+                      path.join(nodeModules, ".bin", packageObj.name.split("/").pop())
+                  );
+              }
+              else {
+                  console.log("skipping non-existent bin '" + packageObj.bin + "'");
+              }
+          }
+      }
+      else if(packageObj.directories !== undefined && packageObj.directories.bin !== undefined) {
+          fs.mkdirSync(path.join(nodeModules, ".bin"))
+
+          fs.readdirSync(packageObj.directories.bin).forEach(function(exe) {
+              if(fs.existsSync(path.join(packageObj.directories.bin, exe))) {
+                  console.log("linking bin '" + exe + "'");
+                  fs.symlinkSync(
+                      path.join("..", packageObj.name, packageObj.directories.bin, exe),
+                      path.join(nodeModules, ".bin", exe)
+                  );
+              }
+              else {
+                  console.log("skipping non-existent bin '" + exe + "'");
+              }
+          })
+      }
+    '';
+  };
+
   prepareAndInvokeNPM = {packageName, bypassCache, reconstructLock, npmFlags, production}:
     let
       forceOfflineFlag = if bypassCache then "--offline" else "--registry http://www.example.com";
@@ -377,13 +460,18 @@ let
 
         npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${lib.optionalString production "--production"} rebuild
 
+        runHook postRebuild
+
         if [ "''${dontNpmInstall-}" != "1" ]
         then
             # NPM tries to download packages even when they already exist if npm-shrinkwrap is used.
             rm -f npm-shrinkwrap.json
 
-            npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${lib.optionalString production "--production"} install
+            npm ${forceOfflineFlag} --nodedir=${nodeSources} --no-bin-links --ignore-scripts ${npmFlags} ${lib.optionalString production "--production"} install
         fi
+
+        # Link executables defined in package.json
+        node ${linkBinsScript}
     '';
 
   # Builds and composes an NPM package including all its dependencies
diff --git a/pkgs/applications/networking/n8n/node-packages.nix b/pkgs/applications/networking/n8n/node-packages.nix
index 7feebd16a8a8a..fb578d0d05e79 100644
--- a/pkgs/applications/networking/n8n/node-packages.nix
+++ b/pkgs/applications/networking/n8n/node-packages.nix
@@ -58,13 +58,13 @@ let
         sha512 = "ZN9avruqbQ5TxopzG3ih3KRy52n8OAbitX3fnZT5go4hzu0J+KVPSzkL+Wt3hpJpdG8WIfg1sBD1tWkgUdEpBA==";
       };
     };
-    "@azure/core-lro-2.3.1" = {
+    "@azure/core-lro-2.4.0" = {
       name = "_at_azure_slash_core-lro";
       packageName = "@azure/core-lro";
-      version = "2.3.1";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.3.1.tgz";
-        sha512 = "nQ+Xnm9g1EWcmbqgxJGmkNHfOHRUmrbYIlRT4KjluzhHQooaGO55m/h6wCX0ho3Jte2ZNBzZPJRmi6yBWeb3yA==";
+        url = "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.4.0.tgz";
+        sha512 = "F65+rYkll1dpw3RGm8/SSiSj+/QkMeYDanzS/QKlM1dmuneVyXbO46C88V1MRHluLGdMP6qfD3vDRYALn0z0tQ==";
       };
     };
     "@azure/core-paging-1.3.0" = {
@@ -103,13 +103,13 @@ let
         sha512 = "I5CGMoLtX+pI17ZdiFJZgxMJApsK6jjfm85hpgp3oazCdq5Wxgh4wMr7ge/TTWW1B5WBuvIOI1fMU/FrOAMKrw==";
       };
     };
-    "@azure/core-util-1.1.0" = {
+    "@azure/core-util-1.1.1" = {
       name = "_at_azure_slash_core-util";
       packageName = "@azure/core-util";
-      version = "1.1.0";
+      version = "1.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@azure/core-util/-/core-util-1.1.0.tgz";
-        sha512 = "+i93lNJNA3Pl3KSuC6xKP2jTL4YFeDfO6VNOaYdk0cppZcLCxt811gS878VsqsCisaltdhl9lhMzK5kbxCiF4w==";
+        url = "https://registry.npmjs.org/@azure/core-util/-/core-util-1.1.1.tgz";
+        sha512 = "A4TBYVQCtHOigFb2ETiiKFDocBoI1Zk2Ui1KpI42aJSIDexF7DHQFpnjonltXAIU/ceH+1fsZAWWgvX6/AKzog==";
       };
     };
     "@azure/identity-2.1.0" = {
@@ -121,13 +121,13 @@ let
         sha512 = "BPDz1sK7Ul9t0l9YKLEa8PHqWU4iCfhGJ+ELJl6c8CP3TpJt2urNCbm0ZHsthmxRsYoMPbz2Dvzj30zXZVmAFw==";
       };
     };
-    "@azure/keyvault-keys-4.5.0" = {
+    "@azure/keyvault-keys-4.6.0" = {
       name = "_at_azure_slash_keyvault-keys";
       packageName = "@azure/keyvault-keys";
-      version = "4.5.0";
+      version = "4.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@azure/keyvault-keys/-/keyvault-keys-4.5.0.tgz";
-        sha512 = "F+0qpUrIxp1/uuQ3sFsAf4rTXErFwmuVLoXlD2e3ebrONrmYjqszwmlN4tBqAag1W9wGuZTL0jE8X8b+LB83ow==";
+        url = "https://registry.npmjs.org/@azure/keyvault-keys/-/keyvault-keys-4.6.0.tgz";
+        sha512 = "0112LegxeR03L8J4k+q6HwBVvrpd9y+oInG0FG3NaHXN7YUubVBon/eb5jFI6edGrvNigpxSR0XIsprFXdkzCQ==";
       };
     };
     "@azure/logger-1.0.3" = {
@@ -139,31 +139,58 @@ let
         sha512 = "aK4s3Xxjrx3daZr3VylxejK3vG5ExXck5WOHDJ8in/k9AqlfIyFMMT1uG7u8mNjX+QRILTIn0/Xgschfh/dQ9g==";
       };
     };
-    "@azure/msal-browser-2.28.3" = {
+    "@azure/ms-rest-azure-env-2.0.0" = {
+      name = "_at_azure_slash_ms-rest-azure-env";
+      packageName = "@azure/ms-rest-azure-env";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@azure/ms-rest-azure-env/-/ms-rest-azure-env-2.0.0.tgz";
+        sha512 = "dG76W7ElfLi+fbTjnZVGj+M9e0BIEJmRxU6fHaUQ12bZBe8EJKYb2GV50YWNaP2uJiVQ5+7nXEVj1VN1UQtaEw==";
+      };
+    };
+    "@azure/ms-rest-js-2.6.2" = {
+      name = "_at_azure_slash_ms-rest-js";
+      packageName = "@azure/ms-rest-js";
+      version = "2.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@azure/ms-rest-js/-/ms-rest-js-2.6.2.tgz";
+        sha512 = "0/8rOxAoR9M3qKUdbGOIYtHtQkm4m5jdoDNdxTU0DkOr84KwyAdJuW/RfjJinGyig4h73DNF0rdCl6XowgCYcg==";
+      };
+    };
+    "@azure/ms-rest-nodeauth-3.1.1" = {
+      name = "_at_azure_slash_ms-rest-nodeauth";
+      packageName = "@azure/ms-rest-nodeauth";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@azure/ms-rest-nodeauth/-/ms-rest-nodeauth-3.1.1.tgz";
+        sha512 = "UA/8dgLy3+ZiwJjAZHxL4MUB14fFQPkaAOZ94jsTW/Z6WmoOeny2+cLk0+dyIX/iH6qSrEWKwbStEeB970B9pA==";
+      };
+    };
+    "@azure/msal-browser-2.29.0" = {
       name = "_at_azure_slash_msal-browser";
       packageName = "@azure/msal-browser";
-      version = "2.28.3";
+      version = "2.29.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-2.28.3.tgz";
-        sha512 = "2SdyH2el3s8BzPURf9RK17BvvXvaMEGpLc3D9WilZcmjJqP4nStVH7Ogwr/SNTuGV48FUhqEkP0RxDvzuFJSIw==";
+        url = "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-2.29.0.tgz";
+        sha512 = "ezrB0qL1WsJSNgvLmAN5vKr/4pH28UYLe8JUZeHzB6Z408JU8qYXXGnHAhDPzpDg0g91eG05IdIVrLwxk/i15g==";
       };
     };
-    "@azure/msal-common-7.4.1" = {
+    "@azure/msal-common-7.5.0" = {
       name = "_at_azure_slash_msal-common";
       packageName = "@azure/msal-common";
-      version = "7.4.1";
+      version = "7.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@azure/msal-common/-/msal-common-7.4.1.tgz";
-        sha512 = "zxcxg9pRdgGTS5mrRJeQvwA8aIjD8qSGzaAiz5SeTVkyhtjB0AeFnAcvBOKHv/TkswWNfYKpERxsXOAKXkXk0w==";
+        url = "https://registry.npmjs.org/@azure/msal-common/-/msal-common-7.5.0.tgz";
+        sha512 = "W+SIsGSjkUAyDggA/6QVMKErttQ/8Bq9l/7ADr7GJwt9JFsc+XNBdQDsOsUvZ7YCVkZcSgzJw2MZJLIBqfQtQA==";
       };
     };
-    "@azure/msal-node-1.14.0" = {
+    "@azure/msal-node-1.14.1" = {
       name = "_at_azure_slash_msal-node";
       packageName = "@azure/msal-node";
-      version = "1.14.0";
+      version = "1.14.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.14.0.tgz";
-        sha512 = "3XB7FuHLhmGBjw7bxuz1LCHOXQgmNIO3J56tlbOjuJcyJtd4aBCgnYIXNKLed3uRcQNHEO0mlg24I4iGxAV/UA==";
+        url = "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.14.1.tgz";
+        sha512 = "RftjLd35xlafh5cPT17zrzpYdcsbHKJal7R/FTbThpbetSk8y8vQHUzNwWNhBM6GFFiyMS4IQ+zs+z8bgJ4sKQ==";
       };
     };
     "@azure/storage-blob-12.11.0" = {
@@ -175,22 +202,13 @@ let
         sha512 = "na+FisoARuaOWaHWpmdtk3FeuTWf2VWamdJ9/TJJzj5ZdXPLC3juoDgFs6XVuJIoK30yuBpyFBEDXVRK4pB7Tg==";
       };
     };
-    "@babel/parser-7.19.1" = {
-      name = "_at_babel_slash_parser";
-      packageName = "@babel/parser";
-      version = "7.19.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.19.1.tgz";
-        sha512 = "h7RCSorm1DdTVGJf3P2Mhj3kdnkmF/EiysUkzS2TdgAYqyjFdMQJbVuXOBej2SBJaXan/lIVtT6KkGbyyq753A==";
-      };
-    };
-    "@babel/runtime-7.19.0" = {
+    "@babel/runtime-7.19.4" = {
       name = "_at_babel_slash_runtime";
       packageName = "@babel/runtime";
-      version = "7.19.0";
+      version = "7.19.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.19.0.tgz";
-        sha512 = "eR8Lo9hnDS7tqkO7NsV+mKvCmv5boaXFSZ70DnfhcgiEne8hv9oCEd36Klw74EtizEqLsy4YnW8UWwpBVolHZA==";
+        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.19.4.tgz";
+        sha512 = "EXpLCrk55f+cYqmHsSR+yD/0gAIMxxA9QK9lnQWzhMCvt+YmoBN7Zx94s++Kv0+unHk39vxNO8t+CMA2WSS3wA==";
       };
     };
     "@colors/colors-1.5.0" = {
@@ -202,6 +220,24 @@ let
         sha512 = "ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==";
       };
     };
+    "@curlconverter/yargs-0.0.2" = {
+      name = "_at_curlconverter_slash_yargs";
+      packageName = "@curlconverter/yargs";
+      version = "0.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@curlconverter/yargs/-/yargs-0.0.2.tgz";
+        sha512 = "Q1YEebpCY61kxme4wvU0/IN/uMBfG5pZOKCo9FU+w20ElPvN+eH2qEVbK1C12t3Tee3qeYLLEU6HkiUeO1gc4A==";
+      };
+    };
+    "@curlconverter/yargs-parser-0.0.1" = {
+      name = "_at_curlconverter_slash_yargs-parser";
+      packageName = "@curlconverter/yargs-parser";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@curlconverter/yargs-parser/-/yargs-parser-0.0.1.tgz";
+        sha512 = "DbEVRYqrorzwqc63MQ3RODflut1tNla8ZCKo1h83lF7+fbntgubZsDfRDBv5Lxj3vkKuvAolysNM2ekwJev8wA==";
+      };
+    };
     "@dabh/diagnostics-2.0.3" = {
       name = "_at_dabh_slash_diagnostics";
       packageName = "@dabh/diagnostics";
@@ -211,13 +247,31 @@ let
         sha512 = "hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==";
       };
     };
-    "@fontsource/open-sans-4.5.11" = {
+    "@fontsource/open-sans-4.5.12" = {
       name = "_at_fontsource_slash_open-sans";
       packageName = "@fontsource/open-sans";
-      version = "4.5.11";
+      version = "4.5.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@fontsource/open-sans/-/open-sans-4.5.12.tgz";
+        sha512 = "WKCexsVbOECJUSOgG7GnrUxe+3ds4Sa1yhsTjSnszI+0TaJvMZnDnn5YDKwA/KwLbkZqCaV3nvMTH97jJuxWNA==";
+      };
+    };
+    "@fortawesome/fontawesome-common-types-0.2.36" = {
+      name = "_at_fortawesome_slash_fontawesome-common-types";
+      packageName = "@fortawesome/fontawesome-common-types";
+      version = "0.2.36";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-0.2.36.tgz";
+        sha512 = "a/7BiSgobHAgBWeN7N0w+lAhInrGxksn13uK7231n2m8EDPE3BMCl9NZLTGrj9ZXfCmC6LM0QLqXidIizVQ6yg==";
+      };
+    };
+    "@fortawesome/fontawesome-common-types-0.3.0" = {
+      name = "_at_fortawesome_slash_fontawesome-common-types";
+      packageName = "@fortawesome/fontawesome-common-types";
+      version = "0.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fontsource/open-sans/-/open-sans-4.5.11.tgz";
-        sha512 = "nG0gmbx4pSr8wltdG/ZdlS6OrsMK40Wt6iyuLTKHEf0TQfzKRMlWaskZHdeuWCwS6WUgqHKMf9KSwGdxPfapOg==";
+        url = "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-0.3.0.tgz";
+        sha512 = "CA3MAZBTxVsF6SkfkHXDerkhcQs0QPofy43eFdbWJJkZiq3SfiaH1msOkac59rQaqto5EqWnASboY1dBuKen5w==";
       };
     };
     "@fortawesome/fontawesome-common-types-6.2.0" = {
@@ -229,6 +283,15 @@ let
         sha512 = "rBevIsj2nclStJ7AxTdfsa3ovHb1H+qApwrxcTVo+NNdeJiB9V75hsKfrkG5AwNcRUNxrPPiScGYCNmLMoh8pg==";
       };
     };
+    "@fortawesome/fontawesome-svg-core-1.3.0" = {
+      name = "_at_fortawesome_slash_fontawesome-svg-core";
+      packageName = "@fortawesome/fontawesome-svg-core";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-1.3.0.tgz";
+        sha512 = "UIL6crBWhjTNQcONt96ExjUnKt1D68foe3xjEensLDclqQ6YagwCRYVQdrp/hW0ALRp/5Fv/VKw+MqTUWYYvPg==";
+      };
+    };
     "@fortawesome/free-regular-svg-icons-6.2.0" = {
       name = "_at_fortawesome_slash_free-regular-svg-icons";
       packageName = "@fortawesome/free-regular-svg-icons";
@@ -238,6 +301,33 @@ let
         sha512 = "M1dG+PAmkYMTL9BSUHFXY5oaHwBYfHCPhbJ8qj8JELsc9XCrUJ6eEHWip4q0tE+h9C0DVyFkwIM9t7QYyCpprQ==";
       };
     };
+    "@fortawesome/free-solid-svg-icons-5.15.4" = {
+      name = "_at_fortawesome_slash_free-solid-svg-icons";
+      packageName = "@fortawesome/free-solid-svg-icons";
+      version = "5.15.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-5.15.4.tgz";
+        sha512 = "JLmQfz6tdtwxoihXLg6lT78BorrFyCf59SAwBM6qV/0zXyVeDygJVb3fk+j5Qat+Yvcxp1buLTY5iDh1ZSAQ8w==";
+      };
+    };
+    "@fortawesome/vue-fontawesome-2.0.8" = {
+      name = "_at_fortawesome_slash_vue-fontawesome";
+      packageName = "@fortawesome/vue-fontawesome";
+      version = "2.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@fortawesome/vue-fontawesome/-/vue-fontawesome-2.0.8.tgz";
+        sha512 = "SRmP0q9Ox4zq8ydDR/hrH+23TVU1bdwYVnugLVaAIwklOHbf56gx6JUGlwES7zjuNYqzKgl8e39iYf6ph8qSQw==";
+      };
+    };
+    "@gar/promisify-1.1.3" = {
+      name = "_at_gar_slash_promisify";
+      packageName = "@gar/promisify";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz";
+        sha512 = "k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==";
+      };
+    };
     "@icetee/ftp-0.3.15" = {
       name = "_at_icetee_slash_ftp";
       packageName = "@icetee/ftp";
@@ -247,13 +337,13 @@ let
         sha512 = "RxSa9VjcDWgWCYsaLdZItdCnJj7p4LxggaEk+Y3MP0dHKoxez8ioG07DVekVbZZqccsrL+oPB/N9AzVPxj4blg==";
       };
     };
-    "@js-joda/core-5.3.1" = {
+    "@js-joda/core-5.4.1" = {
       name = "_at_js-joda_slash_core";
       packageName = "@js-joda/core";
-      version = "5.3.1";
+      version = "5.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@js-joda/core/-/core-5.3.1.tgz";
-        sha512 = "iHHyIRLEfXLqBN+BkyH8u8imMYr4ihRbFDEk8toqTwUECETVQFCTh2U59Sw2oMoRVaS3XRIb7pyCulltq2jFVA==";
+        url = "https://registry.npmjs.org/@js-joda/core/-/core-5.4.1.tgz";
+        sha512 = "+uMco2Xm9VYJ81XYWwrvgsM9xEvqs9JvLNrN4/fOg7YJKk4yeqAg+O/cpoFPTGxvfL2Zy0mUcnKlIz9UV0Cadw==";
       };
     };
     "@jsdevtools/ono-7.1.3" = {
@@ -337,58 +427,67 @@ let
         sha512 = "oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==";
       };
     };
-    "@oclif/command-1.8.16" = {
-      name = "_at_oclif_slash_command";
-      packageName = "@oclif/command";
-      version = "1.8.16";
+    "@npmcli/fs-1.1.1" = {
+      name = "_at_npmcli_slash_fs";
+      packageName = "@npmcli/fs";
+      version = "1.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@oclif/command/-/command-1.8.16.tgz";
-        sha512 = "rmVKYEsKzurfRU0xJz+iHelbi1LGlihIWZ7Qvmb/CBz1EkhL7nOkW4SVXmG2dA5Ce0si2gr88i6q4eBOMRNJ1w==";
+        url = "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz";
+        sha512 = "8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==";
       };
     };
-    "@oclif/config-1.18.2" = {
-      name = "_at_oclif_slash_config";
-      packageName = "@oclif/config";
-      version = "1.18.2";
+    "@npmcli/move-file-1.1.2" = {
+      name = "_at_npmcli_slash_move-file";
+      packageName = "@npmcli/move-file";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz";
+        sha512 = "1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==";
+      };
+    };
+    "@oclif/command-1.8.18" = {
+      name = "_at_oclif_slash_command";
+      packageName = "@oclif/command";
+      version = "1.8.18";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@oclif/config/-/config-1.18.2.tgz";
-        sha512 = "cE3qfHWv8hGRCP31j7fIS7BfCflm/BNZ2HNqHexH+fDrdF2f1D5S8VmXWLC77ffv3oDvWyvE9AZeR0RfmHCCaA==";
+        url = "https://registry.npmjs.org/@oclif/command/-/command-1.8.18.tgz";
+        sha512 = "qTad+jtiriMMbkw6ArtcUY89cwLwmwDnD4KSGT+OQiZKYtegp3NUCM9JN8lfj/aKC+0kvSitJM4ULzbgiVTKQQ==";
       };
     };
-    "@oclif/config-1.18.3" = {
+    "@oclif/config-1.18.5" = {
       name = "_at_oclif_slash_config";
       packageName = "@oclif/config";
-      version = "1.18.3";
+      version = "1.18.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@oclif/config/-/config-1.18.3.tgz";
-        sha512 = "sBpko86IrTscc39EvHUhL+c++81BVTsIZ3ETu/vG+cCdi0N6vb2DoahR67A9FI2CGnxRRHjnTfa3m6LulwNATA==";
+        url = "https://registry.npmjs.org/@oclif/config/-/config-1.18.5.tgz";
+        sha512 = "R6dBedaUVn5jtAh79aaRm7jezx4l3V7Im9NORlLmudz5BL1foMeuXEvnqm+bMiejyexVA+oi9mto6YKZPzo/5Q==";
       };
     };
-    "@oclif/core-1.16.3" = {
+    "@oclif/core-1.16.5" = {
       name = "_at_oclif_slash_core";
       packageName = "@oclif/core";
-      version = "1.16.3";
+      version = "1.16.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@oclif/core/-/core-1.16.3.tgz";
-        sha512 = "SWrU/eGgN5kLyuZ+TqtKz2z2HTSrgaNEwkawNj4B31VXDrPv7aULS3ntVCboAKRldX/6J+Af+70BV07Rr5c5oA==";
+        url = "https://registry.npmjs.org/@oclif/core/-/core-1.16.5.tgz";
+        sha512 = "Jb58K79AALkLmY0PNU1Jx4Z+/JIWtpgtRbei92PIIBx+TaAmYgVySNI1beInZFNOpGo2fhxVBp+yr3DZ38z3kQ==";
       };
     };
-    "@oclif/errors-1.3.5" = {
+    "@oclif/errors-1.3.6" = {
       name = "_at_oclif_slash_errors";
       packageName = "@oclif/errors";
-      version = "1.3.5";
+      version = "1.3.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@oclif/errors/-/errors-1.3.5.tgz";
-        sha512 = "OivucXPH/eLLlOT7FkCMoZXiaVYf8I/w1eTAM1+gKzfhALwWTusxEx7wBmW0uzvkSg/9ovWLycPaBgJbM3LOCQ==";
+        url = "https://registry.npmjs.org/@oclif/errors/-/errors-1.3.6.tgz";
+        sha512 = "fYaU4aDceETd89KXP+3cLyg9EHZsLD3RxF2IU9yxahhBpspWjkWi3Dy3bTgcwZ3V47BgxQaGapzJWDM33XIVDQ==";
       };
     };
-    "@oclif/help-1.0.1" = {
+    "@oclif/help-1.0.3" = {
       name = "_at_oclif_slash_help";
       packageName = "@oclif/help";
-      version = "1.0.1";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@oclif/help/-/help-1.0.1.tgz";
-        sha512 = "8rsl4RHL5+vBUAKBL6PFI3mj58hjPCp2VYyXD4TAa7IMStikFfOH2gtWmqLzIlxAED2EpD0dfYwo9JJxYsH7Aw==";
+        url = "https://registry.npmjs.org/@oclif/help/-/help-1.0.3.tgz";
+        sha512 = "AjjhSWFQkRb9rChEH+IRUmp0CxEacYpUbh+kQqtdCR9CDSsj2a3ibWjtMtJb4lFGAle6kVKfaal/juYe+6P5TQ==";
       };
     };
     "@oclif/linewrap-1.0.0" = {
@@ -400,13 +499,13 @@ let
         sha512 = "Ups2dShK52xXa8w6iBWLgcjPJWjais6KPJQq3gQ/88AY6BXoTX+MIGFPrWQO1KLMiQfoTpcLnUwloN4brrVUHw==";
       };
     };
-    "@oclif/parser-3.8.7" = {
+    "@oclif/parser-3.8.8" = {
       name = "_at_oclif_slash_parser";
       packageName = "@oclif/parser";
-      version = "3.8.7";
+      version = "3.8.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@oclif/parser/-/parser-3.8.7.tgz";
-        sha512 = "b11xBmIUK+LuuwVGJpFs4LwQN2xj2cBWj2c4z1FtiXGrJ85h9xV6q+k136Hw0tGg1jQoRXuvuBnqQ7es7vO9/Q==";
+        url = "https://registry.npmjs.org/@oclif/parser/-/parser-3.8.8.tgz";
+        sha512 = "OgqQAtpyq1XFJG3dvLl9aqiO+F5pubkzt7AivUDkNoa6/hNgVZ79vvTO8sqo5XAAhOm/fcTSerZ35OTnTJb1ng==";
       };
     };
     "@oclif/screen-3.0.2" = {
@@ -436,6 +535,15 @@ let
         sha512 = "kJYCXv6fRFbQrAp3hMsgRCnAa7RUBdbiGLBT9PcpQURi0VwHmD7mk3Ja7U4HDnL0EHXYJpPyx3oSonkklmPJ9Q==";
       };
     };
+    "@sap/hana-client-2.14.18" = {
+      name = "_at_sap_slash_hana-client";
+      packageName = "@sap/hana-client";
+      version = "2.14.18";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@sap/hana-client/-/hana-client-2.14.18.tgz";
+        sha512 = "9TfoDuxWZyUYIwISVVMPguX9iirZrD0cI6rI0xXg6URRaqk71GZ5U0ueomeZapSY1nni2Yf+th1ZjU+jSUw/9g==";
+      };
+    };
     "@segment/loosely-validate-event-2.0.0" = {
       name = "_at_segment_slash_loosely-validate-event";
       packageName = "@segment/loosely-validate-event";
@@ -580,6 +688,15 @@ let
         sha512 = "TyPLQaF6w8UlWdv4gj8i46B+INBVzURBNRahCozCSXfsK2VTlL1wNyTlMKw817VHygBtlcl5jfnPadlydr06Yw==";
       };
     };
+    "@types/js-nacl-1.3.0" = {
+      name = "_at_types_slash_js-nacl";
+      packageName = "@types/js-nacl";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/js-nacl/-/js-nacl-1.3.0.tgz";
+        sha512 = "juUvxo444ZfwDSwWyhssMxSN+snqTdiUoOVXZF+/ffVrGHq3rAf1fmczWn3z9TCEAuRbaTmgAcYlZ9MutyyOkQ==";
+      };
+    };
     "@types/json-schema-7.0.11" = {
       name = "_at_types_slash_json-schema";
       packageName = "@types/json-schema";
@@ -589,13 +706,13 @@ let
         sha512 = "wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==";
       };
     };
-    "@types/lodash-4.14.185" = {
+    "@types/lodash-4.14.186" = {
       name = "_at_types_slash_lodash";
       packageName = "@types/lodash";
-      version = "4.14.185";
+      version = "4.14.186";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.185.tgz";
-        sha512 = "evMDG1bC4rgQg4ku9tKpuMh5iBNEwNa3tf9zRHdP1qlv+1WUg44xat4IxCE14gIpZRGUUWAx2VhItCZc25NfMA==";
+        url = "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.186.tgz";
+        sha512 = "eHcVlLXP0c2FlMPm56ITode2AgLMSa6aJ05JTTbYbI+7EMkCEE5qk2E41d5g2lCVTqRe0GnnRFurmlCsDODrPw==";
       };
     };
     "@types/mime-3.0.1" = {
@@ -616,13 +733,22 @@ let
         sha512 = "/SNsDidUFCvqqcWDwxv2feww/yqhNeTRL5CVoL3jU4Goc4kKEL10T7Eye65ZqPNi4HRx8sAEX59pV1aEH7drNA==";
       };
     };
-    "@types/node-18.7.18" = {
+    "@types/node-12.20.55" = {
+      name = "_at_types_slash_node";
+      packageName = "@types/node";
+      version = "12.20.55";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz";
+        sha512 = "J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==";
+      };
+    };
+    "@types/node-18.8.3" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "18.7.18";
+      version = "18.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-18.7.18.tgz";
-        sha512 = "m+6nTEOadJZuTPkKR/SYK3A2d7FZrgElol9UP1Kae90VVU4a6mxnPuLiIW1m4Cq4gZ/nWb9GrdVXJCoCazDAbg==";
+        url = "https://registry.npmjs.org/@types/node/-/node-18.8.3.tgz";
+        sha512 = "0os9vz6BpGwxGe9LOhgP/ncvYN5Tx1fNcd2TM3rD/aCGBkysb+ZWpXEocG24h6ZzOi13+VB8HndAQFezsSOw1w==";
       };
     };
     "@types/node-fetch-2.6.2" = {
@@ -652,6 +778,15 @@ let
         sha512 = "EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==";
       };
     };
+    "@types/readable-stream-2.3.14" = {
+      name = "_at_types_slash_readable-stream";
+      packageName = "@types/readable-stream";
+      version = "2.3.14";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/readable-stream/-/readable-stream-2.3.14.tgz";
+        sha512 = "8jQ5Mp7bsDJEnW/69i6nAaQMoLwAVJVc7ZRAVTrdh/o6XueQsX38TEvKuYyoQj76/mg7WdlRfMrtl9pDLCJWsg==";
+      };
+    };
     "@types/serve-static-1.15.0" = {
       name = "_at_types_slash_serve-static";
       packageName = "@types/serve-static";
@@ -697,13 +832,22 @@ let
         sha512 = "FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==";
       };
     };
-    "@vue/compiler-sfc-2.7.10" = {
-      name = "_at_vue_slash_compiler-sfc";
-      packageName = "@vue/compiler-sfc";
-      version = "2.7.10";
+    "@xmldom/xmldom-0.7.5" = {
+      name = "_at_xmldom_slash_xmldom";
+      packageName = "@xmldom/xmldom";
+      version = "0.7.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.5.tgz";
+        sha512 = "V3BIhmY36fXZ1OtVcI9W+FxQqxVLsPKcNjWigIaa81dLC9IolJl5Mt4Cvhmr0flUnjSpTdrbMTSbXqYqV5dT6A==";
+      };
+    };
+    "a-sync-waterfall-1.0.1" = {
+      name = "a-sync-waterfall";
+      packageName = "a-sync-waterfall";
+      version = "1.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.10.tgz";
-        sha512 = "55Shns6WPxlYsz4WX7q9ZJBL77sKE1ZAYNYStLs6GbhIOMrNtjMvzcob6gu3cGlfpCR4bT7NXgyJ3tly2+Hx8Q==";
+        url = "https://registry.npmjs.org/a-sync-waterfall/-/a-sync-waterfall-1.0.1.tgz";
+        sha512 = "RYTOHHdWipFUliRFMCS4X2Yn2X8M87V/OpSqWzKKOGhzqyUxzyVmhHDH9sAvG+ZuQf/TAOFsLCpMw09I1ufUnA==";
       };
     };
     "abbrev-1.1.1" = {
@@ -715,6 +859,15 @@ let
         sha512 = "nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==";
       };
     };
+    "abort-controller-3.0.0" = {
+      name = "abort-controller";
+      packageName = "abort-controller";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz";
+        sha512 = "h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==";
+      };
+    };
     "accepts-1.3.8" = {
       name = "accepts";
       packageName = "accepts";
@@ -751,6 +904,15 @@ let
         sha512 = "k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==";
       };
     };
+    "adal-node-0.2.3" = {
+      name = "adal-node";
+      packageName = "adal-node";
+      version = "0.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/adal-node/-/adal-node-0.2.3.tgz";
+        sha512 = "gMKr8RuYEYvsj7jyfCv/4BfKToQThz20SP71N3AtFn3ia3yAR8Qt2T3aVQhuJzunWs2b38ZsQV0qsZPdwZr7VQ==";
+      };
+    };
     "address-1.2.1" = {
       name = "address";
       packageName = "address";
@@ -787,6 +949,24 @@ let
         sha512 = "RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==";
       };
     };
+    "agentkeepalive-4.2.1" = {
+      name = "agentkeepalive";
+      packageName = "agentkeepalive";
+      version = "4.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz";
+        sha512 = "Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==";
+      };
+    };
+    "aggregate-error-3.1.0" = {
+      name = "aggregate-error";
+      packageName = "aggregate-error";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz";
+        sha512 = "4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==";
+      };
+    };
     "ajv-6.12.6" = {
       name = "ajv";
       packageName = "ajv";
@@ -904,6 +1084,15 @@ let
         sha512 = "Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==";
       };
     };
+    "are-we-there-yet-3.0.1" = {
+      name = "are-we-there-yet";
+      packageName = "are-we-there-yet";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz";
+        sha512 = "QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==";
+      };
+    };
     "argparse-1.0.10" = {
       name = "argparse";
       packageName = "argparse";
@@ -967,6 +1156,15 @@ let
         sha512 = "WnM+AjG/DvLRLo4DDl+r+SvCzYtD2Jd9oeBYMcEaI7t3fFrHY9M53/wdLcTvmZNQ70IU6Htj0emFkZ5TS+lrdw==";
       };
     };
+    "asap-2.0.6" = {
+      name = "asap";
+      packageName = "asap";
+      version = "2.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz";
+        sha512 = "BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==";
+      };
+    };
     "asn1-0.2.6" = {
       name = "asn1";
       packageName = "asn1";
@@ -1030,6 +1228,15 @@ let
         sha512 = "x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==";
       };
     };
+    "async-2.6.4" = {
+      name = "async";
+      packageName = "async";
+      version = "2.6.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/async/-/async-2.6.4.tgz";
+        sha512 = "mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==";
+      };
+    };
     "async-3.2.4" = {
       name = "async";
       packageName = "async";
@@ -1084,22 +1291,22 @@ let
         sha512 = "DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==";
       };
     };
-    "avsc-5.7.5" = {
+    "avsc-5.7.6" = {
       name = "avsc";
       packageName = "avsc";
-      version = "5.7.5";
+      version = "5.7.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/avsc/-/avsc-5.7.5.tgz";
-        sha512 = "vkyt1+sj6qaD9oMtqqLE2pZ2IcHI66kFx8lpnVuXp55SnNPjKghfOhVfZpaDwDPpY0oVWP3Qu1uHZWxF3E856A==";
+        url = "https://registry.npmjs.org/avsc/-/avsc-5.7.6.tgz";
+        sha512 = "jyn9tfd9J3h7pgJSk4qQ/1c1Tk5qiXrvmdCDON2UjcFplqRu/KpmKmpi+Ess8ZKmmqK12U4Y3VHrfwQs1xSMZA==";
       };
     };
-    "aws-sdk-2.1218.0" = {
+    "aws-sdk-2.1231.0" = {
       name = "aws-sdk";
       packageName = "aws-sdk";
-      version = "2.1218.0";
+      version = "2.1231.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1218.0.tgz";
-        sha512 = "oreF2jKfUZ8VKnIKh8TrOOOsdSfv87jHGtWQNAHdvfeyrYK5FrnvGkHUZ3bu6g6u1gHwu5FhTPiRMbgS8Re+NA==";
+        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1231.0.tgz";
+        sha512 = "ONBuRsOxsu0zL8u/Vmz49tPWi9D4ls2pjb6szdfSx9VQef7bOnWe9gJpWoA94OTzcjOWsvjsG7UgjvQJkIuPBg==";
       };
     };
     "aws-sign2-0.7.0" = {
@@ -1219,6 +1426,15 @@ let
         sha512 = "V/Hy/X9Vt7f3BbPJEi8BdVFMByHi+jNXrYkW3huaybV/kQ0KJg0Y6PkEMbn+zeT+i+SiKZ/HMqJGIIt4LZDqNQ==";
       };
     };
+    "better-sqlite3-7.6.2" = {
+      name = "better-sqlite3";
+      packageName = "better-sqlite3";
+      version = "7.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-7.6.2.tgz";
+        sha512 = "S5zIU1Hink2AH4xPsN0W43T1/AJ5jrPh7Oy07ocuW/AKYYY02GWzz9NH0nbSMn/gw6fDZ5jZ1QsHt1BXAwJ6Lg==";
+      };
+    };
     "big-integer-1.6.51" = {
       name = "big-integer";
       packageName = "big-integer";
@@ -1255,6 +1471,15 @@ let
         sha512 = "rA2CrUl1+6yKrn+XgLs8Hdy18OER1UW146nM+ixzhQXDY+Bd3ySkyIJGwF2a4I45JwbvF1mDL/nWkqBwpOcdBA==";
       };
     };
+    "bindings-1.5.0" = {
+      name = "bindings";
+      packageName = "bindings";
+      version = "1.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz";
+        sha512 = "p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==";
+      };
+    };
     "bintrees-1.0.2" = {
       name = "bintrees";
       packageName = "bintrees";
@@ -1273,6 +1498,24 @@ let
         sha512 = "ikAdCnrloKmFOugAfxWws89/fPc+nw0OOG1IzIE72uSOg/A3cYptKCjSUhDTuj7fhsJtzkzlv7l3b8PzRHLN0Q==";
       };
     };
+    "bl-2.2.1" = {
+      name = "bl";
+      packageName = "bl";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bl/-/bl-2.2.1.tgz";
+        sha512 = "6Pesp1w0DEX1N550i/uGV/TqucVL4AM/pgThFSN/Qq9si1/DF9aIHs1BxD8V/QU0HoeHO6cQRTAuYnLPKq1e4g==";
+      };
+    };
+    "bl-3.0.1" = {
+      name = "bl";
+      packageName = "bl";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bl/-/bl-3.0.1.tgz";
+        sha512 = "jrCW5ZhfQ/Vt07WX1Ngs+yn9BDqPL/gw28S7s9H6QK/gupnizNzJAss5akW20ISgOrbLTlXOOCTJeNUQqruAWQ==";
+      };
+    };
     "bl-4.1.0" = {
       name = "bl";
       packageName = "bl";
@@ -1318,13 +1561,13 @@ let
         sha512 = "c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==";
       };
     };
-    "body-parser-1.20.0" = {
+    "body-parser-1.20.1" = {
       name = "body-parser";
       packageName = "body-parser";
-      version = "1.20.0";
+      version = "1.20.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz";
-        sha512 = "DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==";
+        url = "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz";
+        sha512 = "jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==";
       };
     };
     "body-parser-xml-2.0.3" = {
@@ -1381,6 +1624,15 @@ let
         sha512 = "YyNI4qJJ+piQG6MMEuo7J3Bzaqssufx04zpEKYfSrl/1Op59HWali9zMtBpXnkmqMcOuWJPZvudrm9wISmnCbg==";
       };
     };
+    "bson-1.1.6" = {
+      name = "bson";
+      packageName = "bson";
+      version = "1.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bson/-/bson-1.1.6.tgz";
+        sha512 = "EvVNVeGo4tHxwi8L6bPj3y3itEvStdwvvlojVxxbyYfoaxJ6keLgrTuKdyfEAszFK+H3olzBuafE0yoh0D1gdg==";
+      };
+    };
     "bson-4.7.0" = {
       name = "bson";
       packageName = "bson";
@@ -1453,6 +1705,15 @@ let
         sha512 = "a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw==";
       };
     };
+    "bufferutil-4.0.6" = {
+      name = "bufferutil";
+      packageName = "bufferutil";
+      version = "4.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.6.tgz";
+        sha512 = "jduaYOYtnio4aIAyc6UbvPCVcgq7nYpVnucyxr6eCYg/Woad9Hf/oxxBRDnGGjPfjUm6j5O/uBWhIu4iLebFaw==";
+      };
+    };
     "bull-3.29.3" = {
       name = "bull";
       packageName = "bull";
@@ -1498,6 +1759,15 @@ let
         sha512 = "/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==";
       };
     };
+    "cacache-15.3.0" = {
+      name = "cacache";
+      packageName = "cacache";
+      version = "15.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz";
+        sha512 = "VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==";
+      };
+    };
     "call-bind-1.0.2" = {
       name = "call-bind";
       packageName = "call-bind";
@@ -1642,6 +1912,24 @@ let
         sha512 = "ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==";
       };
     };
+    "chokidar-3.5.3" = {
+      name = "chokidar";
+      packageName = "chokidar";
+      version = "3.5.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz";
+        sha512 = "Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==";
+      };
+    };
+    "chownr-1.1.4" = {
+      name = "chownr";
+      packageName = "chownr";
+      version = "1.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz";
+        sha512 = "jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==";
+      };
+    };
     "chownr-2.0.0" = {
       name = "chownr";
       packageName = "chownr";
@@ -1669,6 +1957,15 @@ let
         sha512 = "yBUcQy07FPlGzUjoLuUfIOXzgynnQPPruyK1Ge2B74k9ROwnle1E+NxLWnUv5OLU8hA/qL5leAE9XnXq3byaBw==";
       };
     };
+    "clean-stack-2.2.0" = {
+      name = "clean-stack";
+      packageName = "clean-stack";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz";
+        sha512 = "4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==";
+      };
+    };
     "clean-stack-3.0.1" = {
       name = "clean-stack";
       packageName = "clean-stack";
@@ -1741,13 +2038,22 @@ let
         sha512 = "OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==";
       };
     };
-    "cluster-key-slot-1.1.0" = {
+    "clone-2.1.2" = {
+      name = "clone";
+      packageName = "clone";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz";
+        sha512 = "3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==";
+      };
+    };
+    "cluster-key-slot-1.1.1" = {
       name = "cluster-key-slot";
       packageName = "cluster-key-slot";
-      version = "1.1.0";
+      version = "1.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.0.tgz";
-        sha512 = "2Nii8p3RwAPiFwsnZvukotvow2rIHM+yQ6ZcBXGHdniadkYGZYiGmkHJIbZPIV9nfv7m/U1IPMVVcAhoWFeklw==";
+        url = "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.1.tgz";
+        sha512 = "rwHwUfXL40Chm1r08yrhU3qpUvdVlgkKNeyeGPOxnW8/SyVDvgRaed/Uz54AqWNaTCAThlj6QAs3TZcKI0xDEw==";
       };
     };
     "codepage-1.15.0" = {
@@ -1867,13 +2173,13 @@ let
         sha512 = "P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==";
       };
     };
-    "commander-9.4.0" = {
+    "commander-9.4.1" = {
       name = "commander";
       packageName = "commander";
-      version = "9.4.0";
+      version = "9.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/commander/-/commander-9.4.0.tgz";
-        sha512 = "sRPT+umqkz90UA8M1yqYfnHlZA7fF6nSphDtxeywPZ49ysjxDQybzk13CL+mXekDRG92skbcqCLVovuCusNmFw==";
+        url = "https://registry.npmjs.org/commander/-/commander-9.4.1.tgz";
+        sha512 = "5EEkTNyHNGFPD2H+c/dXXfQZYa/scCKasxWcXJaWnNJ99pnQN9Vnmqow+p+PlFPE63Q6mThaZws1T+HxfpgtPw==";
       };
     };
     "commist-1.1.0" = {
@@ -1885,6 +2191,15 @@ let
         sha512 = "rraC8NXWOEjhADbZe9QBNzLAN5Q3fsTPQtBV+fEVj6xKIgDgNiEVE6ZNfHpZOqfQ21YUzfVNUXLOEZquYvQPPg==";
       };
     };
+    "component-props-1.1.1" = {
+      name = "component-props";
+      packageName = "component-props";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/component-props/-/component-props-1.1.1.tgz";
+        sha512 = "69pIRJs9fCCHRqCz3390YF2LV1Lu6iEMZ5zuVqqUn+G20V9BNXlMs0cWawWeW9g4Ynmg29JmkG6R7/lUJoGd1Q==";
+      };
+    };
     "component-type-1.2.1" = {
       name = "component-type";
       packageName = "component-type";
@@ -1894,6 +2209,15 @@ let
         sha512 = "Kgy+2+Uwr75vAi6ChWXgHuLvd+QLD7ssgpaRq2zCvt80ptvAfMc/hijcJxXkBa2wMlEZcJvC2H8Ubo+A9ATHIg==";
       };
     };
+    "component-xor-0.0.4" = {
+      name = "component-xor";
+      packageName = "component-xor";
+      version = "0.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/component-xor/-/component-xor-0.0.4.tgz";
+        sha512 = "ZIt6sla8gfo+AFVRZoZOertcnD5LJaY2T9CKE2j13NJxQt/mUafD69Bl7/Y4AnpI2LGjiXH7cOfJDx/n2G9edA==";
+      };
+    };
     "compressible-2.0.18" = {
       name = "compressible";
       packageName = "compressible";
@@ -2047,13 +2371,13 @@ let
         sha512 = "Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==";
       };
     };
-    "core-js-3.25.2" = {
+    "core-js-3.25.5" = {
       name = "core-js";
       packageName = "core-js";
-      version = "3.25.2";
+      version = "3.25.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-js/-/core-js-3.25.2.tgz";
-        sha512 = "YB4IAT1bjEfxTJ1XYy11hJAKskO+qmhuDBM8/guIfMz4JvdsAQAqvyb97zXX7JgSrfPLG5mRGFWJwJD39ruq2A==";
+        url = "https://registry.npmjs.org/core-js/-/core-js-3.25.5.tgz";
+        sha512 = "nbm6eZSjm+ZuBQxCUPQKQCoUEfFOXjUZ8dTTyikyKaWrTYmAVbykQfwsKE5dBK88u3QCkCrzsx/PPlKfhsvgpw==";
       };
     };
     "core-util-is-1.0.2" = {
@@ -2173,13 +2497,22 @@ let
         sha512 = "FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==";
       };
     };
-    "csstype-3.1.1" = {
-      name = "csstype";
-      packageName = "csstype";
-      version = "3.1.1";
+    "curlconverter-3.21.0" = {
+      name = "curlconverter";
+      packageName = "curlconverter";
+      version = "3.21.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/curlconverter/-/curlconverter-3.21.0.tgz";
+        sha512 = "DXCnp1A/Xa69FujksUfdvWQFAnIn/C+4Wuv8t+UVdZkF/lY5bzj98GGKOGme7V/ckSHDLxE29Xp76sJ5Cpsp5A==";
+      };
+    };
+    "currency-codes-2.1.0" = {
+      name = "currency-codes";
+      packageName = "currency-codes";
+      version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz";
-        sha512 = "DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==";
+        url = "https://registry.npmjs.org/currency-codes/-/currency-codes-2.1.0.tgz";
+        sha512 = "aASwFNP8VjZ0y0PWlSW7c9N/isYTLxK6OCbm7aVuQMk7dWO2zgup9KGiFQgeL9OGL5P/ulvCHcjQizmuEeZXtw==";
       };
     };
     "dashdash-1.14.1" = {
@@ -2191,6 +2524,15 @@ let
         sha512 = "jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==";
       };
     };
+    "data-api-client-1.3.0" = {
+      name = "data-api-client";
+      packageName = "data-api-client";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/data-api-client/-/data-api-client-1.3.0.tgz";
+        sha512 = "+Q+lChhl5PBogsB7nO/VZFF3X0WJe8y93dyft50HIg2Bg+c765wM/sXkfBz5pjmGoRESkB/GLesQJLTMBbK4dQ==";
+      };
+    };
     "data-uri-to-buffer-3.0.1" = {
       name = "data-uri-to-buffer";
       packageName = "data-uri-to-buffer";
@@ -2200,6 +2542,33 @@ let
         sha512 = "WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og==";
       };
     };
+    "date-utils-1.2.21" = {
+      name = "date-utils";
+      packageName = "date-utils";
+      version = "1.2.21";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/date-utils/-/date-utils-1.2.21.tgz";
+        sha512 = "wJMBjqlwXR0Iv0wUo/lFbhSQ7MmG1hl36iuxuE91kW+5b5sWbase73manEqNH9sOLFAMG83B4ffNKq9/Iq0FVA==";
+      };
+    };
+    "dateformat-3.0.3" = {
+      name = "dateformat";
+      packageName = "dateformat";
+      version = "3.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz";
+        sha512 = "jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==";
+      };
+    };
+    "de-indent-1.0.2" = {
+      name = "de-indent";
+      packageName = "de-indent";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz";
+        sha512 = "e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==";
+      };
+    };
     "debug-2.6.9" = {
       name = "debug";
       packageName = "debug";
@@ -2209,6 +2578,15 @@ let
         sha512 = "bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==";
       };
     };
+    "debug-3.1.0" = {
+      name = "debug";
+      packageName = "debug";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz";
+        sha512 = "OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==";
+      };
+    };
     "debug-3.2.7" = {
       name = "debug";
       packageName = "debug";
@@ -2245,6 +2623,51 @@ let
         sha512 = "syBZ+rnAK3EgMsH2aYEOLUW7mZSY9Gb+0wUMCFsZvcmiz+HigA0LOcq/HoQqVuGG+EKykunc7QG2bzrponfaSw==";
       };
     };
+    "decode-uri-component-0.2.0" = {
+      name = "decode-uri-component";
+      packageName = "decode-uri-component";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz";
+        sha512 = "hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==";
+      };
+    };
+    "decompress-response-6.0.0" = {
+      name = "decompress-response";
+      packageName = "decompress-response";
+      version = "6.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz";
+        sha512 = "aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==";
+      };
+    };
+    "deep-equal-1.1.1" = {
+      name = "deep-equal";
+      packageName = "deep-equal";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz";
+        sha512 = "yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==";
+      };
+    };
+    "deep-equal-2.0.5" = {
+      name = "deep-equal";
+      packageName = "deep-equal";
+      version = "2.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deep-equal/-/deep-equal-2.0.5.tgz";
+        sha512 = "nPiRgmbAtm1a3JsnLCf6/SLfXcjyN5v8L1TXzdCmHrXJ4hx+gW/w1YCcn7z8gJtSiDArZCgYtbao3QqLm/N1Sw==";
+      };
+    };
+    "deep-extend-0.6.0" = {
+      name = "deep-extend";
+      packageName = "deep-extend";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz";
+        sha512 = "LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==";
+      };
+    };
     "deep-is-0.1.4" = {
       name = "deep-is";
       packageName = "deep-is";
@@ -2344,6 +2767,15 @@ let
         sha512 = "HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==";
       };
     };
+    "depd-1.1.2" = {
+      name = "depd";
+      packageName = "depd";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz";
+        sha512 = "7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==";
+      };
+    };
     "depd-2.0.0" = {
       name = "depd";
       packageName = "depd";
@@ -2416,6 +2848,15 @@ let
         sha512 = "c68LpLbO+7kP/b1Hr1qs8/BJ09F5khZGTxqxZuhzxpmwJKOgRFHJWIb9/KmqnqHhLdO55aOxFH/EGBvUQbL/RQ==";
       };
     };
+    "dom-iterator-1.0.0" = {
+      name = "dom-iterator";
+      packageName = "dom-iterator";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dom-iterator/-/dom-iterator-1.0.0.tgz";
+        sha512 = "7dsMOQI07EMU98gQM8NSB3GsAiIeBYIPKpnxR3c9xOvdvBjChAcOM0iJ222I3p5xyiZO9e5oggkNaCusuTdYig==";
+      };
+    };
     "dom-serializer-1.4.1" = {
       name = "dom-serializer";
       packageName = "dom-serializer";
@@ -2569,6 +3010,15 @@ let
         sha512 = "TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==";
       };
     };
+    "encoding-0.1.13" = {
+      name = "encoding";
+      packageName = "encoding";
+      version = "0.1.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz";
+        sha512 = "ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==";
+      };
+    };
     "encoding-japanese-2.0.0" = {
       name = "encoding-japanese";
       packageName = "encoding-japanese";
@@ -2596,6 +3046,15 @@ let
         sha512 = "p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==";
       };
     };
+    "env-paths-2.2.1" = {
+      name = "env-paths";
+      packageName = "env-paths";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz";
+        sha512 = "+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==";
+      };
+    };
     "env-variable-0.0.6" = {
       name = "env-variable";
       packageName = "env-variable";
@@ -2614,13 +3073,13 @@ let
         sha512 = "2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==";
       };
     };
-    "es-abstract-1.20.2" = {
+    "es-abstract-1.20.4" = {
       name = "es-abstract";
       packageName = "es-abstract";
-      version = "1.20.2";
+      version = "1.20.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.2.tgz";
-        sha512 = "XxXQuVNrySBNlEkTYJoDNFe5+s2yIOpzq80sUHEdPdQr0S5nTLz4ZPPPswNIpKseDDUS5yghX1gfLIHQZ1iNuQ==";
+        url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz";
+        sha512 = "0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==";
       };
     };
     "es-aggregate-error-1.0.8" = {
@@ -2641,6 +3100,15 @@ let
         sha512 = "wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==";
       };
     };
+    "es-get-iterator-1.1.2" = {
+      name = "es-get-iterator";
+      packageName = "es-get-iterator";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.2.tgz";
+        sha512 = "+DTO8GYwbMCwbywjimwZMHp8AuYXOS2JZFWoi2AlPOS3ebnII9w/NLpNZtA7A0YLaVDw+O7KFCeoIV7OPvM7hQ==";
+      };
+    };
     "es-to-primitive-1.2.1" = {
       name = "es-to-primitive";
       packageName = "es-to-primitive";
@@ -2713,6 +3181,15 @@ let
         sha512 = "NB/L/1Y30qyJcG5xZxCJKW/+bqyj+llbcCwo9DEz8bESIP0SLTOQ8T1DWCCFc+wJ61AMEstj4511PSScqMMfCw==";
       };
     };
+    "esprima-1.2.2" = {
+      name = "esprima";
+      packageName = "esprima";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/esprima/-/esprima-1.2.2.tgz";
+        sha512 = "+JpPZam9w5DuJ3Q67SqsMGtiHKENSMRVoxvArfJZK01/BfLEObtZ6orJa/MtoGNR/rfMgp5837T41PAmTwAv/A==";
+      };
+    };
     "esprima-4.0.1" = {
       name = "esprima";
       packageName = "esprima";
@@ -2749,6 +3226,24 @@ let
         sha512 = "aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==";
       };
     };
+    "event-target-shim-5.0.1" = {
+      name = "event-target-shim";
+      packageName = "event-target-shim";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz";
+        sha512 = "i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==";
+      };
+    };
+    "eventemitter3-4.0.7" = {
+      name = "eventemitter3";
+      packageName = "eventemitter3";
+      version = "4.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz";
+        sha512 = "8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==";
+      };
+    };
     "events-1.1.1" = {
       name = "events";
       packageName = "events";
@@ -2785,6 +3280,15 @@ let
         sha512 = "h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw==";
       };
     };
+    "expand-template-2.0.3" = {
+      name = "expand-template";
+      packageName = "expand-template";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz";
+        sha512 = "XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==";
+      };
+    };
     "expand-tilde-2.0.2" = {
       name = "expand-tilde";
       packageName = "expand-tilde";
@@ -2794,13 +3298,13 @@ let
         sha512 = "A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==";
       };
     };
-    "express-4.18.1" = {
+    "express-4.18.2" = {
       name = "express";
       packageName = "express";
-      version = "4.18.1";
+      version = "4.18.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/express/-/express-4.18.1.tgz";
-        sha512 = "zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==";
+        url = "https://registry.npmjs.org/express/-/express-4.18.2.tgz";
+        sha512 = "5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==";
       };
     };
     "express-openapi-validator-4.13.8" = {
@@ -2857,6 +3361,15 @@ let
         sha512 = "f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==";
       };
     };
+    "fast-diff-1.2.0" = {
+      name = "fast-diff";
+      packageName = "fast-diff";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz";
+        sha512 = "xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==";
+      };
+    };
     "fast-glob-3.2.12" = {
       name = "fast-glob";
       packageName = "fast-glob";
@@ -2902,13 +3415,13 @@ let
         sha512 = "OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==";
       };
     };
-    "fflate-0.7.3" = {
+    "fflate-0.7.4" = {
       name = "fflate";
       packageName = "fflate";
-      version = "0.7.3";
+      version = "0.7.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fflate/-/fflate-0.7.3.tgz";
-        sha512 = "0Zz1jOzJWERhyhsimS54VTqOteCNwRtIlh8isdL0AXLo0g7xNTfTL7oWrkmCnPhZGocKIkWHBistBrrpoNH3aw==";
+        url = "https://registry.npmjs.org/fflate/-/fflate-0.7.4.tgz";
+        sha512 = "5u2V/CDW15QM1XbbgS+0DfPxVB+jUKhWEKuuFuHncbk3tEEqzmoXL+2KyOFuKGqOnmdIy0/davWF1CkuwtibCw==";
       };
     };
     "figures-3.2.0" = {
@@ -2920,6 +3433,15 @@ let
         sha512 = "yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==";
       };
     };
+    "file-saver-2.0.5" = {
+      name = "file-saver";
+      packageName = "file-saver";
+      version = "2.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/file-saver/-/file-saver-2.0.5.tgz";
+        sha512 = "P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA==";
+      };
+    };
     "file-type-16.5.4" = {
       name = "file-type";
       packageName = "file-type";
@@ -2929,6 +3451,15 @@ let
         sha512 = "/yFHK0aGjFEgDJjEKP0pWCplsPFPhwyfwevf/pVxiN0tmE4L9LmwWxWukdJSHdoCli4VgQLehjJtwQBnqmsKcw==";
       };
     };
+    "file-uri-to-path-1.0.0" = {
+      name = "file-uri-to-path";
+      packageName = "file-uri-to-path";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz";
+        sha512 = "0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==";
+      };
+    };
     "file-uri-to-path-2.0.0" = {
       name = "file-uri-to-path";
       packageName = "file-uri-to-path";
@@ -2956,6 +3487,15 @@ let
         sha512 = "qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==";
       };
     };
+    "filter-obj-1.1.0" = {
+      name = "filter-obj";
+      packageName = "filter-obj";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/filter-obj/-/filter-obj-1.1.0.tgz";
+        sha512 = "8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==";
+      };
+    };
     "finalhandler-1.2.0" = {
       name = "finalhandler";
       packageName = "finalhandler";
@@ -2965,6 +3505,15 @@ let
         sha512 = "5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==";
       };
     };
+    "first-match-0.0.1" = {
+      name = "first-match";
+      packageName = "first-match";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/first-match/-/first-match-0.0.1.tgz";
+        sha512 = "VvKbnaxrC0polTFDC+teKPTdl2mn6B/KUW+WB3C9RzKDeNwbzfLdnUz3FxC+tnjvus6bI0jWrWicQyVIPdS37A==";
+      };
+    };
     "flatted-3.2.7" = {
       name = "flatted";
       packageName = "flatted";
@@ -3019,6 +3568,15 @@ let
         sha512 = "1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==";
       };
     };
+    "form-data-2.5.1" = {
+      name = "form-data";
+      packageName = "form-data";
+      version = "2.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz";
+        sha512 = "m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==";
+      };
+    };
     "form-data-3.0.1" = {
       name = "form-data";
       packageName = "form-data";
@@ -3082,6 +3640,15 @@ let
         sha512 = "zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==";
       };
     };
+    "fs-constants-1.0.0" = {
+      name = "fs-constants";
+      packageName = "fs-constants";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz";
+        sha512 = "y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==";
+      };
+    };
     "fs-extra-8.1.0" = {
       name = "fs-extra";
       packageName = "fs-extra";
@@ -3163,6 +3730,15 @@ let
         sha512 = "+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==";
       };
     };
+    "gauge-4.0.4" = {
+      name = "gauge";
+      packageName = "gauge";
+      version = "4.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz";
+        sha512 = "f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==";
+      };
+    };
     "generate-function-2.3.1" = {
       name = "generate-function";
       packageName = "generate-function";
@@ -3262,6 +3838,15 @@ let
         sha512 = "0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==";
       };
     };
+    "github-from-package-0.0.0" = {
+      name = "github-from-package";
+      packageName = "github-from-package";
+      version = "0.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz";
+        sha512 = "SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==";
+      };
+    };
     "glob-7.2.3" = {
       name = "glob";
       packageName = "glob";
@@ -3316,13 +3901,13 @@ let
         sha512 = "jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==";
       };
     };
-    "gm-1.24.0" = {
+    "gm-1.25.0" = {
       name = "gm";
       packageName = "gm";
-      version = "1.24.0";
+      version = "1.25.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/gm/-/gm-1.24.0.tgz";
-        sha512 = "HsB94GIi6D4KklPrcRtq85CUuQhgi292N7vOx00pBH95sKuuy9LfenL9UtqXV4XFU8AmP5EaIhYcCxYp9zjiGQ==";
+        url = "https://registry.npmjs.org/gm/-/gm-1.25.0.tgz";
+        sha512 = "4kKdWXTtgQ4biIo7hZA396HT062nDVVHPjQcurNZ3o/voYN+o5FUC5kOwuORbpExp3XbTJ3SU7iRipiIhQtovw==";
       };
     };
     "google-timezones-json-1.0.2" = {
@@ -3433,6 +4018,15 @@ let
         sha512 = "8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==";
       };
     };
+    "hdb-pool-0.1.6" = {
+      name = "hdb-pool";
+      packageName = "hdb-pool";
+      version = "0.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hdb-pool/-/hdb-pool-0.1.6.tgz";
+        sha512 = "8VZOLn1EHamm1NmTFQj2iqjVcfonYIsD7F5DU2bz2N+gF+knp6/MbAVeRXkJtya717IBkPeA5iv0/1iPuYo4ZA==";
+      };
+    };
     "he-1.2.0" = {
       name = "he";
       packageName = "he";
@@ -3505,6 +4099,15 @@ let
         sha512 = "gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==";
       };
     };
+    "http-cache-semantics-4.1.0" = {
+      name = "http-cache-semantics";
+      packageName = "http-cache-semantics";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz";
+        sha512 = "carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==";
+      };
+    };
     "http-errors-2.0.0" = {
       name = "http-errors";
       packageName = "http-errors";
@@ -3577,6 +4180,15 @@ let
         sha512 = "v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==";
       };
     };
+    "iconv-lite-0.5.2" = {
+      name = "iconv-lite";
+      packageName = "iconv-lite";
+      version = "0.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.5.2.tgz";
+        sha512 = "kERHXvpSaB4aU3eANwidg79K8FlrN77m8G9V+0vOR3HYaRifrlwMEpT7ZBJqLSEIHnEgJTHcWK82wwLwwKwtag==";
+      };
+    };
     "iconv-lite-0.6.3" = {
       name = "iconv-lite";
       packageName = "iconv-lite";
@@ -3640,6 +4252,15 @@ let
         sha512 = "SW3LtfEJFjlJKS/h2CmpX2IKpya2RXobR3ENJJW4iMQ3QYPxWxf5oeaz1K3P4eGUwfGEndkqt7uVDKnEyG9zeQ==";
       };
     };
+    "imurmurhash-0.1.4" = {
+      name = "imurmurhash";
+      packageName = "imurmurhash";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz";
+        sha512 = "JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==";
+      };
+    };
     "indent-string-4.0.0" = {
       name = "indent-string";
       packageName = "indent-string";
@@ -3649,6 +4270,15 @@ let
         sha512 = "EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==";
       };
     };
+    "infer-owner-1.0.4" = {
+      name = "infer-owner";
+      packageName = "infer-owner";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz";
+        sha512 = "IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==";
+      };
+    };
     "inflight-1.0.6" = {
       name = "inflight";
       packageName = "inflight";
@@ -3667,6 +4297,15 @@ let
         sha512 = "k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==";
       };
     };
+    "ini-1.3.8" = {
+      name = "ini";
+      packageName = "ini";
+      version = "1.3.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz";
+        sha512 = "JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==";
+      };
+    };
     "inquirer-7.3.3" = {
       name = "inquirer";
       packageName = "inquirer";
@@ -3802,13 +4441,13 @@ let
         sha512 = "NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==";
       };
     };
-    "is-callable-1.2.6" = {
+    "is-callable-1.2.7" = {
       name = "is-callable";
       packageName = "is-callable";
-      version = "1.2.6";
+      version = "1.2.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-callable/-/is-callable-1.2.6.tgz";
-        sha512 = "krO72EO2NptOGAX2KYyqbP9vYMlNAXdB53rq6f8LXY6RY7JdSR/3BD6wLUlPHSAesmY9vstNrjvqGaCiRK/91Q==";
+        url = "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz";
+        sha512 = "1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==";
       };
     };
     "is-core-module-2.10.0" = {
@@ -3892,6 +4531,24 @@ let
         sha512 = "xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==";
       };
     };
+    "is-lambda-1.0.1" = {
+      name = "is-lambda";
+      packageName = "is-lambda";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz";
+        sha512 = "z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==";
+      };
+    };
+    "is-map-2.0.2" = {
+      name = "is-map";
+      packageName = "is-map";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz";
+        sha512 = "cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==";
+      };
+    };
     "is-nan-1.3.2" = {
       name = "is-nan";
       packageName = "is-nan";
@@ -3991,6 +4648,15 @@ let
         sha512 = "XVm7LOeLpTW4jV19QSH38vkswxoLud8sQ57YwJVTPWdiaI9I8keEhGFpBlslyVsgdQy4Opg8QOLb8YRgsyZiQg==";
       };
     };
+    "is-set-2.0.2" = {
+      name = "is-set";
+      packageName = "is-set";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz";
+        sha512 = "+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==";
+      };
+    };
     "is-shared-array-buffer-1.0.2" = {
       name = "is-shared-array-buffer";
       packageName = "is-shared-array-buffer";
@@ -4054,6 +4720,15 @@ let
         sha512 = "mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==";
       };
     };
+    "is-weakmap-2.0.1" = {
+      name = "is-weakmap";
+      packageName = "is-weakmap";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz";
+        sha512 = "NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==";
+      };
+    };
     "is-weakref-1.0.2" = {
       name = "is-weakref";
       packageName = "is-weakref";
@@ -4063,6 +4738,15 @@ let
         sha512 = "qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==";
       };
     };
+    "is-weakset-2.0.2" = {
+      name = "is-weakset";
+      packageName = "is-weakset";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz";
+        sha512 = "t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==";
+      };
+    };
     "is-windows-1.0.2" = {
       name = "is-windows";
       packageName = "is-windows";
@@ -4099,13 +4783,22 @@ let
         sha512 = "VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==";
       };
     };
-    "isbot-3.5.3" = {
+    "isarray-2.0.5" = {
+      name = "isarray";
+      packageName = "isarray";
+      version = "2.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz";
+        sha512 = "xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==";
+      };
+    };
+    "isbot-3.6.1" = {
       name = "isbot";
       packageName = "isbot";
-      version = "3.5.3";
+      version = "3.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/isbot/-/isbot-3.5.3.tgz";
-        sha512 = "mMLxdBl0hB6UEDibl/nXPSmF+kjX9cOKEJw1YeiKBGr6AdZq/LQUsk7UlDfr/D3gU+PdR6hf8o72BLOxzgw6EA==";
+        url = "https://registry.npmjs.org/isbot/-/isbot-3.6.1.tgz";
+        sha512 = "e1RmjWns87x60QyiHberWWMJGutL3+Ad0nZ8cz735iDEDDS6ApPfKSFo4EMj0PmMZ0m0ntpWIM0ADdqDFvUJPQ==";
       };
     };
     "isexe-2.0.0" = {
@@ -4162,6 +4855,15 @@ let
         sha512 = "bF7vcQxbODoGK1imE2P9GS9aw4zD0Sd+Hni68IMZLj7zRnquH7dXUmMw9hDI5S/Jzt7q+IyTXN0rSg2GI0IKhQ==";
       };
     };
+    "jquery-3.6.1" = {
+      name = "jquery";
+      packageName = "jquery";
+      version = "3.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jquery/-/jquery-3.6.1.tgz";
+        sha512 = "opJeO4nCucVnsjiXOE+/PcCgYw9Gwpvs/a6B1LL/lQhwWwpbVEVYDZ1FokFr8PRc7ghYlrFPuyHuiiDNTQxmcw==";
+      };
+    };
     "js-md4-0.3.2" = {
       name = "js-md4";
       packageName = "js-md4";
@@ -4171,6 +4873,15 @@ let
         sha512 = "/GDnfQYsltsjRswQhN9fhv3EMw2sCpUdrdxyWDOUK7eyD++r3gRhzgiQgc/x4MAv2i1iuQ4lxO5mvqM3vj4bwA==";
       };
     };
+    "js-nacl-1.4.0" = {
+      name = "js-nacl";
+      packageName = "js-nacl";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/js-nacl/-/js-nacl-1.4.0.tgz";
+        sha512 = "HgYLcutGbMYBJrwgVICiHliuw1OJLy2U3tIuK6a1rZ06KC84TPl81WG1hcBRrBCiIIuBe3PSo9G4IZOMGdSg3Q==";
+      };
+    };
     "js-yaml-3.14.1" = {
       name = "js-yaml";
       packageName = "js-yaml";
@@ -4189,6 +4900,15 @@ let
         sha512 = "wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==";
       };
     };
+    "jsbi-3.2.5" = {
+      name = "jsbi";
+      packageName = "jsbi";
+      version = "3.2.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsbi/-/jsbi-3.2.5.tgz";
+        sha512 = "aBE4n43IPvjaddScbvWRA2YlTzKEynHzu7MqOyTipdHucf/VxS63ViCjxYRg86M8Rxwbt/GfzHl1kKERkt45fQ==";
+      };
+    };
     "jsbi-4.3.0" = {
       name = "jsbi";
       packageName = "jsbi";
@@ -4207,6 +4927,15 @@ let
         sha512 = "UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==";
       };
     };
+    "jsesc-3.0.2" = {
+      name = "jsesc";
+      packageName = "jsesc";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz";
+        sha512 = "xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==";
+      };
+    };
     "json-diff-0.5.5" = {
       name = "json-diff";
       packageName = "json-diff";
@@ -4279,6 +5008,15 @@ let
         sha512 = "5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==";
       };
     };
+    "jsonpath-1.1.1" = {
+      name = "jsonpath";
+      packageName = "jsonpath";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsonpath/-/jsonpath-1.1.1.tgz";
+        sha512 = "l6Cg7jRpixfbgoWgkrl77dgEj8RPvND0wMH6TwQmi9Qs4TFfS9u5cUFnbeKTwj5ga5Y3BTGGNI28k117LJ009w==";
+      };
+    };
     "jsonschema-1.4.1" = {
       name = "jsonschema";
       packageName = "jsonschema";
@@ -4297,6 +5035,15 @@ let
         sha512 = "XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w==";
       };
     };
+    "jsplumb-2.15.4" = {
+      name = "jsplumb";
+      packageName = "jsplumb";
+      version = "2.15.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsplumb/-/jsplumb-2.15.4.tgz";
+        sha512 = "QssfhXe0YRxY4V2WHPmKwsE3bPHNj4Vts9oinys66ci+4m9lJvFDcEMDygqueiSFL8Jb8CnFyQC9fvL+YHJS7g==";
+      };
+    };
     "jsprim-1.4.2" = {
       name = "jsprim";
       packageName = "jsprim";
@@ -4423,6 +5170,15 @@ let
         sha512 = "b74iyWmwb4GprAUPjPkJ11GTC7KX4Pd3onpJfKxYyY8y9Rbb4ERY47LvCMEDM09WD3thiLDMXtkfDK/AX+zT7Q==";
       };
     };
+    "libpq-1.8.12" = {
+      name = "libpq";
+      packageName = "libpq";
+      version = "1.8.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/libpq/-/libpq-1.8.12.tgz";
+        sha512 = "4lUY9BD9suz76mVS0kH4rRgRy620g/c9YZH5GYC3smfIpjtj6KiPuQ4IwQSHSZMMMhMM3tBFrYUrw8mHOOZVeg==";
+      };
+    };
     "libqp-1.1.0" = {
       name = "libqp";
       packageName = "libqp";
@@ -4477,6 +5233,15 @@ let
         sha512 = "mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==";
       };
     };
+    "lodash.camelcase-4.3.0" = {
+      name = "lodash.camelcase";
+      packageName = "lodash.camelcase";
+      version = "4.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz";
+        sha512 = "TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==";
+      };
+    };
     "lodash.clonedeep-4.5.0" = {
       name = "lodash.clonedeep";
       packageName = "lodash.clonedeep";
@@ -4486,6 +5251,15 @@ let
         sha512 = "H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==";
       };
     };
+    "lodash.debounce-4.0.8" = {
+      name = "lodash.debounce";
+      packageName = "lodash.debounce";
+      version = "4.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz";
+        sha512 = "FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==";
+      };
+    };
     "lodash.defaults-4.2.0" = {
       name = "lodash.defaults";
       packageName = "lodash.defaults";
@@ -4621,6 +5395,24 @@ let
         sha512 = "Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==";
       };
     };
+    "lodash.orderby-4.6.0" = {
+      name = "lodash.orderby";
+      packageName = "lodash.orderby";
+      version = "4.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.orderby/-/lodash.orderby-4.6.0.tgz";
+        sha512 = "T0rZxKmghOOf5YPnn8EY5iLYeWCpZq8G41FfqoVHH5QDTAFaghJRmAdLiadEDq+ztgM2q5PjA+Z1fOwGrLgmtg==";
+      };
+    };
+    "lodash.pick-4.4.0" = {
+      name = "lodash.pick";
+      packageName = "lodash.pick";
+      version = "4.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz";
+        sha512 = "hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==";
+      };
+    };
     "lodash.set-4.3.2" = {
       name = "lodash.set";
       packageName = "lodash.set";
@@ -4819,6 +5611,15 @@ let
         sha512 = "etgt+n4LlOkGSJbBTV9VROHA5R7ekIPS4vfh+bCAoJgRrJWdqJCBbpS3osRJ/HrT7R68MzMiY3L3sDJ/Fd8aBg==";
       };
     };
+    "make-fetch-happen-9.1.0" = {
+      name = "make-fetch-happen";
+      packageName = "make-fetch-happen";
+      version = "9.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz";
+        sha512 = "+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg==";
+      };
+    };
     "mappersmith-2.40.0" = {
       name = "mappersmith";
       packageName = "mappersmith";
@@ -4954,6 +5755,15 @@ let
         sha512 = "OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==";
       };
     };
+    "mimic-response-3.1.0" = {
+      name = "mimic-response";
+      packageName = "mimic-response";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz";
+        sha512 = "z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==";
+      };
+    };
     "minimalistic-assert-1.0.1" = {
       name = "minimalistic-assert";
       packageName = "minimalistic-assert";
@@ -4999,6 +5809,51 @@ let
         sha512 = "rQ/p+KfKBkeNwo04U15i+hOwoVBVmekmm/HcfTkTN2t9pbQKCMm4eN5gFeqgrrSp/kH/7BYYhTIHOxGqzbBPaA==";
       };
     };
+    "minipass-collect-1.0.2" = {
+      name = "minipass-collect";
+      packageName = "minipass-collect";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz";
+        sha512 = "6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==";
+      };
+    };
+    "minipass-fetch-1.4.1" = {
+      name = "minipass-fetch";
+      packageName = "minipass-fetch";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.4.1.tgz";
+        sha512 = "CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==";
+      };
+    };
+    "minipass-flush-1.0.5" = {
+      name = "minipass-flush";
+      packageName = "minipass-flush";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz";
+        sha512 = "JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==";
+      };
+    };
+    "minipass-pipeline-1.2.4" = {
+      name = "minipass-pipeline";
+      packageName = "minipass-pipeline";
+      version = "1.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz";
+        sha512 = "xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==";
+      };
+    };
+    "minipass-sized-1.0.3" = {
+      name = "minipass-sized";
+      packageName = "minipass-sized";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz";
+        sha512 = "MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==";
+      };
+    };
     "minizlib-2.1.2" = {
       name = "minizlib";
       packageName = "minizlib";
@@ -5026,6 +5881,15 @@ let
         sha512 = "vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==";
       };
     };
+    "mkdirp-classic-0.5.3" = {
+      name = "mkdirp-classic";
+      packageName = "mkdirp-classic";
+      version = "0.5.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz";
+        sha512 = "gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==";
+      };
+    };
     "mock-require-3.0.3" = {
       name = "mock-require";
       packageName = "mock-require";
@@ -5062,31 +5926,40 @@ let
         sha512 = "B/y4+b2O5G2gjuxIFtCE2EkM17R2NM7/3F8x0qcPsqy4V83bitJTIO4TIeZpYlzu/xy6INiY/+84BEm6+7Cmzg==";
       };
     };
-    "mongodb-4.9.1" = {
+    "mongodb-3.7.3" = {
+      name = "mongodb";
+      packageName = "mongodb";
+      version = "3.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mongodb/-/mongodb-3.7.3.tgz";
+        sha512 = "Psm+g3/wHXhjBEktkxXsFMZvd3nemI0r3IPsE0bU+4//PnvNWKkzhZcEsbPcYiWqe8XqXJJEg4Tgtr7Raw67Yw==";
+      };
+    };
+    "mongodb-4.10.0" = {
       name = "mongodb";
       packageName = "mongodb";
-      version = "4.9.1";
+      version = "4.10.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mongodb/-/mongodb-4.9.1.tgz";
-        sha512 = "ZhgI/qBf84fD7sI4waZBoLBNJYPQN5IOC++SBCiPiyhzpNKOxN/fi0tBHvH2dEC42HXtNEbFB0zmNz4+oVtorQ==";
+        url = "https://registry.npmjs.org/mongodb/-/mongodb-4.10.0.tgz";
+        sha512 = "My2QxLTw0Cc1O9gih0mz4mqo145Jq4rLAQx0Glk/Ha9iYBzYpt4I2QFNRIh35uNFNfe8KFQcdwY1/HKxXBkinw==";
       };
     };
-    "mongodb-connection-string-url-2.5.3" = {
+    "mongodb-connection-string-url-2.5.4" = {
       name = "mongodb-connection-string-url";
       packageName = "mongodb-connection-string-url";
-      version = "2.5.3";
+      version = "2.5.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.5.3.tgz";
-        sha512 = "f+/WsED+xF4B74l3k9V/XkTVj5/fxFH2o5ToKXd8Iyi5UhM+sO9u0Ape17Mvl/GkZaFtM0HQnzAG5OTmhKw+tQ==";
+        url = "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.5.4.tgz";
+        sha512 = "SeAxuWs0ez3iI3vvmLk/j2y+zHwigTDKQhtdxTgt5ZCOQQS5+HW4g45/Xw5vzzbn7oQXCNQ24Z40AkJsizEy7w==";
       };
     };
-    "moo-0.5.1" = {
+    "moo-0.5.2" = {
       name = "moo";
       packageName = "moo";
-      version = "0.5.1";
+      version = "0.5.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/moo/-/moo-0.5.1.tgz";
-        sha512 = "I1mnb5xn4fO80BH9BLcF0yLypy2UKl+Cb01Fu0hJRkJjlCRtxZMWkTdAtDd5ZqCOxtCkhmRwyI57vWT+1iZ67w==";
+        url = "https://registry.npmjs.org/moo/-/moo-0.5.2.tgz";
+        sha512 = "iSAJLHYKnX41mKcJKjqvnAN9sf0LMDTXDEvFv+ffuRR9a1MIuXLjMNL6EsnDHSkKLTWNqQQ5uo61P4EbU4NU+Q==";
       };
     };
     "mqtt-4.2.6" = {
@@ -5134,6 +6007,15 @@ let
         sha512 = "6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==";
       };
     };
+    "mssql-6.4.1" = {
+      name = "mssql";
+      packageName = "mssql";
+      version = "6.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mssql/-/mssql-6.4.1.tgz";
+        sha512 = "G1I7mM0gfxcH5TGSNoVmxq13Mve5YnQgRAlonqaMlHEjHjMn1g04bsrIQbVHFRdI6++dw/FGWlh8GoItJMoUDw==";
+      };
+    };
     "mssql-8.1.4" = {
       name = "mssql";
       packageName = "mssql";
@@ -5179,49 +6061,49 @@ let
         sha512 = "z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==";
       };
     };
-    "n8n-core-0.134.0" = {
+    "n8n-core-0.137.0" = {
       name = "n8n-core";
       packageName = "n8n-core";
-      version = "0.134.0";
+      version = "0.137.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/n8n-core/-/n8n-core-0.134.0.tgz";
-        sha512 = "9NejfRS1FvD7vHn7Oz1465mBNZNAmZ01epxF1NFTjvqx4kNWEYWmKssYE30RINegFAt6He+KJCGzj0AMdtm2iw==";
+        url = "https://registry.npmjs.org/n8n-core/-/n8n-core-0.137.0.tgz";
+        sha512 = "qNFzL20TDG7kdtW7rt46DEf6eAWi9MrYmCjmrliJqDOGp2CHtpwlQM8dsIDXuzHoLRX4vuYXDA4kEKA/8kPvlw==";
       };
     };
-    "n8n-design-system-0.34.0" = {
+    "n8n-design-system-0.37.0" = {
       name = "n8n-design-system";
       packageName = "n8n-design-system";
-      version = "0.34.0";
+      version = "0.37.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/n8n-design-system/-/n8n-design-system-0.34.0.tgz";
-        sha512 = "4baEVsmgp+9bvwK0oecuzzq9d99ymfFD7rhL4wWlSyF1sC/4Ug7BJ1aoxS3LMOAwZxAZu3eeumXArHLYT7temw==";
+        url = "https://registry.npmjs.org/n8n-design-system/-/n8n-design-system-0.37.0.tgz";
+        sha512 = "P17+YgT5NjjuaBfqLD+CyTEaLM89q3UyuSDJgmyQdTmsg0tKwaWmVXL455a6L6syLILjwMDg77lTFKKMedBhtg==";
       };
     };
-    "n8n-editor-ui-0.160.0" = {
+    "n8n-editor-ui-0.163.1" = {
       name = "n8n-editor-ui";
       packageName = "n8n-editor-ui";
-      version = "0.160.0";
+      version = "0.163.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/n8n-editor-ui/-/n8n-editor-ui-0.160.0.tgz";
-        sha512 = "ys0InljStAlGA9AHH/RutOvkmkDgnC4onkRlSDFZTy9YCSNr5k0sCmhjfQiPe+zrnJUH200kQupcsZQN06AiQA==";
+        url = "https://registry.npmjs.org/n8n-editor-ui/-/n8n-editor-ui-0.163.1.tgz";
+        sha512 = "bKn6DkK4GuFdjW9rcaBewYZE2wF5g5zfb5zamp+I4TlJXMAsR1bSHpiq8Z8BRyGg0bR76Ny35MQvmXCbvKTejQ==";
       };
     };
-    "n8n-nodes-base-0.192.0" = {
+    "n8n-nodes-base-0.195.1" = {
       name = "n8n-nodes-base";
       packageName = "n8n-nodes-base";
-      version = "0.192.0";
+      version = "0.195.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/n8n-nodes-base/-/n8n-nodes-base-0.192.0.tgz";
-        sha512 = "k+xYWdjyM1wCXYfE8ak3lHbqiJrn4NPI2XiEM9oTdYIB9qDItlOSLLnGOVsypksJ71FJfSQVxkZfwpxVzTGbyg==";
+        url = "https://registry.npmjs.org/n8n-nodes-base/-/n8n-nodes-base-0.195.1.tgz";
+        sha512 = "EfTySsb3sc1RzGe8Da/FClXVkCwUIErDfOjl6me8ikRGntjf7Sco6FXS6Ib0iLi6XGbXbyKlJ1c9+Phe9A1I4g==";
       };
     };
-    "n8n-workflow-0.116.0" = {
+    "n8n-workflow-0.119.0" = {
       name = "n8n-workflow";
       packageName = "n8n-workflow";
-      version = "0.116.0";
+      version = "0.119.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/n8n-workflow/-/n8n-workflow-0.116.0.tgz";
-        sha512 = "i+5fcN6a4m4sn9awGuKHDrsAXLNyFNrgSPffxcP4Vj5R9nRg9zjocWNse05WzcRgzBCvujCOZo7O1ispX0MLCg==";
+        url = "https://registry.npmjs.org/n8n-workflow/-/n8n-workflow-0.119.0.tgz";
+        sha512 = "BcSIBSbX1NZ9i8eFFk4Wp0k7esmzH6m8j0RDZK5KwhD4hla4mpx6z6i7kKmAOCuLWjKuY0OMQPEYFWrDEjt0fA==";
       };
     };
     "named-placeholders-1.1.2" = {
@@ -5233,6 +6115,15 @@ let
         sha512 = "wiFWqxoLL3PGVReSZpjLVxyJ1bRqe+KKJVbr4hGs1KWfTZTQyezHFBbuKj9hsizHyGV2ne7EMjHdxEGAybD5SA==";
       };
     };
+    "nan-2.16.0" = {
+      name = "nan";
+      packageName = "nan";
+      version = "2.16.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nan/-/nan-2.16.0.tgz";
+        sha512 = "UdAqHyFngu7TfQKsCBgAA6pWDkT8MAO7d0jyOecVhN5354xbLqdn8mV9Tat9gepAupm0bt2DbeaSC8vS52MuFA==";
+      };
+    };
     "nanoclone-0.2.1" = {
       name = "nanoclone";
       packageName = "nanoclone";
@@ -5251,6 +6142,15 @@ let
         sha512 = "MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==";
       };
     };
+    "napi-build-utils-1.0.2" = {
+      name = "napi-build-utils";
+      packageName = "napi-build-utils";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz";
+        sha512 = "ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==";
+      };
+    };
     "native-duplexpair-1.0.0" = {
       name = "native-duplexpair";
       packageName = "native-duplexpair";
@@ -5323,6 +6223,15 @@ let
         sha512 = "fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==";
       };
     };
+    "node-abi-3.26.0" = {
+      name = "node-abi";
+      packageName = "node-abi";
+      version = "3.26.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-abi/-/node-abi-3.26.0.tgz";
+        sha512 = "jRVtMFTChbi2i/jqo/i2iP9634KMe+7K1v35mIdj3Mn59i5q27ZYhn+sW6npISM/PQg7HrP2kwtRBMmh5Uvzdg==";
+      };
+    };
     "node-abort-controller-3.0.1" = {
       name = "node-abort-controller";
       packageName = "node-abort-controller";
@@ -5359,6 +6268,24 @@ let
         sha512 = "ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==";
       };
     };
+    "node-gyp-8.4.1" = {
+      name = "node-gyp";
+      packageName = "node-gyp";
+      version = "8.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-gyp/-/node-gyp-8.4.1.tgz";
+        sha512 = "olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w==";
+      };
+    };
+    "node-gyp-build-4.5.0" = {
+      name = "node-gyp-build";
+      packageName = "node-gyp-build";
+      version = "4.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz";
+        sha512 = "2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==";
+      };
+    };
     "node-html-markdown-1.2.0" = {
       name = "node-html-markdown";
       packageName = "node-html-markdown";
@@ -5404,13 +6331,13 @@ let
         sha512 = "KUdDsspqx89sD4UUyUKzdlUOper3hRkDVkrKh/89G+d9WKsU5ox51NWS4tB1XR5dPUdR4SP0E3molyEfOvSa3g==";
       };
     };
-    "nodemailer-6.7.8" = {
+    "nodemailer-6.8.0" = {
       name = "nodemailer";
       packageName = "nodemailer";
-      version = "6.7.8";
+      version = "6.8.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nodemailer/-/nodemailer-6.7.8.tgz";
-        sha512 = "2zaTFGqZixVmTxpJRCFC+Vk5eGRd/fYtvIR+dl5u9QXLTQWGIf48x/JXvo58g9sa0bU6To04XUv554Paykum3g==";
+        url = "https://registry.npmjs.org/nodemailer/-/nodemailer-6.8.0.tgz";
+        sha512 = "EjYvSmHzekz6VNkNd12aUqAco+bOkRe3Of5jVhltqKhEsjw/y0PYPJfp83+s9Wzh1dspYAkUW/YNQ350NATbSQ==";
       };
     };
     "nopt-5.0.0" = {
@@ -5458,6 +6385,15 @@ let
         sha512 = "AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==";
       };
     };
+    "npmlog-6.0.2" = {
+      name = "npmlog";
+      packageName = "npmlog";
+      version = "6.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz";
+        sha512 = "/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==";
+      };
+    };
     "nth-check-2.1.1" = {
       name = "nth-check";
       packageName = "nth-check";
@@ -5467,6 +6403,24 @@ let
         sha512 = "lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==";
       };
     };
+    "nub-0.0.0" = {
+      name = "nub";
+      packageName = "nub";
+      version = "0.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nub/-/nub-0.0.0.tgz";
+        sha512 = "dK0Ss9C34R/vV0FfYJXuqDAqHlaW9fvWVufq9MmGF2umCuDbd5GRfRD9fpi/LiM0l4ZXf8IBB+RYmZExqCrf0w==";
+      };
+    };
+    "nunjucks-3.2.3" = {
+      name = "nunjucks";
+      packageName = "nunjucks";
+      version = "3.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nunjucks/-/nunjucks-3.2.3.tgz";
+        sha512 = "psb6xjLj47+fE76JdZwskvwG4MYsQKXUtMsPh6U0YMvmyjRtKRFcxnlXGWglNybtNTNVmGdp94K62/+NjF5FDQ==";
+      };
+    };
     "oauth-1.0a-2.2.6" = {
       name = "oauth-1.0a";
       packageName = "oauth-1.0a";
@@ -5503,6 +6457,15 @@ let
         sha512 = "z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==";
       };
     };
+    "object-is-1.1.5" = {
+      name = "object-is";
+      packageName = "object-is";
+      version = "1.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz";
+        sha512 = "3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==";
+      };
+    };
     "object-keys-1.1.1" = {
       name = "object-keys";
       packageName = "object-keys";
@@ -5629,6 +6592,15 @@ let
         sha512 = "d/gTkTb1i1GKz5k3XE3XFV/PxQ1k45zDqGP2OA7YhgsaLoqm6qRvARAZOFer1fcXritWlGBRCu/UgeS4HAnXAA==";
       };
     };
+    "optional-require-1.1.8" = {
+      name = "optional-require";
+      packageName = "optional-require";
+      version = "1.1.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/optional-require/-/optional-require-1.1.8.tgz";
+        sha512 = "jq83qaUb0wNg9Krv1c5OQ+58EK+vHde6aBPzLvPPqJm89UQWsvSuFy9X/OSNJnFeSOKo7btE0n8Nl2+nE+z5nA==";
+      };
+    };
     "optionator-0.8.3" = {
       name = "optionator";
       packageName = "optionator";
@@ -5638,6 +6610,15 @@ let
         sha512 = "+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==";
       };
     };
+    "oracledb-5.5.0" = {
+      name = "oracledb";
+      packageName = "oracledb";
+      version = "5.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/oracledb/-/oracledb-5.5.0.tgz";
+        sha512 = "i5cPvMENpZP8nnqptB6l0pjiOyySj1IISkbM4Hr3yZEDdANo2eezarwZb9NQ8fTh5pRjmgpZdSyIbnn9N3AENw==";
+      };
+    };
     "ordered-read-streams-1.0.1" = {
       name = "ordered-read-streams";
       packageName = "ordered-read-streams";
@@ -5701,6 +6682,15 @@ let
         sha512 = "y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==";
       };
     };
+    "p-map-4.0.0" = {
+      name = "p-map";
+      packageName = "p-map";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz";
+        sha512 = "/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==";
+      };
+    };
     "p-timeout-3.2.0" = {
       name = "p-timeout";
       packageName = "p-timeout";
@@ -5746,6 +6736,15 @@ let
         sha512 = "RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==";
       };
     };
+    "parchment-2.0.0-dev.2" = {
+      name = "parchment";
+      packageName = "parchment";
+      version = "2.0.0-dev.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parchment/-/parchment-2.0.0-dev.2.tgz";
+        sha512 = "4fgRny4pPISoML08Zp7poi52Dff3E2G1ORTi2D/acJ/RiROdDAMDB6VcQNfBcmehrX5Wixp6dxh6JjLyE5yUNQ==";
+      };
+    };
     "parse-github-url-1.0.2" = {
       name = "parse-github-url";
       packageName = "parse-github-url";
@@ -6007,6 +7006,15 @@ let
         sha512 = "r5o/V/ORTA6TmUnyWZR9nCj1klXCO2CEKNRlVuJptZe85QuhFayC7WeMic7ndayT5IRIR0S0xFxFi2ousartlQ==";
       };
     };
+    "pg-cursor-2.7.4" = {
+      name = "pg-cursor";
+      packageName = "pg-cursor";
+      version = "2.7.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pg-cursor/-/pg-cursor-2.7.4.tgz";
+        sha512 = "CNWwOzTTZ9QvphoOL+Wg/7pmVr9GnAWBjPbuK2FRclrB4A/WRO/ssCJ9BlkzIGmmofK2M/LyokNHgsLSn+fMHA==";
+      };
+    };
     "pg-int8-1.0.1" = {
       name = "pg-int8";
       packageName = "pg-int8";
@@ -6025,6 +7033,15 @@ let
         sha512 = "1KdmFGGTP6jplJoI8MfvRlfvMiyBivMRP7/ffh4a11RUFJ7kC2J0ZHlipoKiH/1hz+DVgceon9U2qbaHpPeyPg==";
       };
     };
+    "pg-native-3.0.1" = {
+      name = "pg-native";
+      packageName = "pg-native";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pg-native/-/pg-native-3.0.1.tgz";
+        sha512 = "LBVNWkNh0fVx/cienARRP2y22J5OpUsKBe0TpxzAx3arEUUdIs77aLSAHS3scS7SMaqc+OkG40CEu5fN0/cjIw==";
+      };
+    };
     "pg-pool-3.5.2" = {
       name = "pg-pool";
       packageName = "pg-pool";
@@ -6052,6 +7069,24 @@ let
         sha512 = "muRttij7H8TqRNu/DxrAJQITO4Ac7RmX3Klyr/9mJEOBeIpgnF8f9jAfRz5d3XwQZl5qBjF9gLsUtMPJE0vezQ==";
       };
     };
+    "pg-query-stream-4.2.4" = {
+      name = "pg-query-stream";
+      packageName = "pg-query-stream";
+      version = "4.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pg-query-stream/-/pg-query-stream-4.2.4.tgz";
+        sha512 = "Et3gTrWn4C2rj4LVioNq1QDd7aH/3mSJcBm79jZALv3wopvx9bWENtbOYZbHQ6KM+IkfFxs0JF1ZLjMDJ9/N6Q==";
+      };
+    };
+    "pg-types-1.13.0" = {
+      name = "pg-types";
+      packageName = "pg-types";
+      version = "1.13.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pg-types/-/pg-types-1.13.0.tgz";
+        sha512 = "lfKli0Gkl/+za/+b6lzENajczwZHc7D5kiUCZfgm914jipD2kIOIvEkAhZ8GrW3/TUoP9w8FHjwpPObBye5KQQ==";
+      };
+    };
     "pg-types-2.2.0" = {
       name = "pg-types";
       packageName = "pg-types";
@@ -6151,13 +7186,22 @@ let
         sha512 = "epKaq3TTfTzXcxBxjpoKYMcTTcAX8Rykus6QZu77XNhJuRHSRxMd+JJrbX/3PFI0opFGSN0BabbAYCbGxbu0mA==";
       };
     };
-    "postcss-8.4.16" = {
+    "postcss-8.4.17" = {
       name = "postcss";
       packageName = "postcss";
-      version = "8.4.16";
+      version = "8.4.17";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss/-/postcss-8.4.17.tgz";
+        sha512 = "UNxNOLQydcOFi41yHNMcKRZ39NeXlr8AxGuZJsdub8vIb12fHzcq37DTU/QtbI6WLxNg2gF9Z+8qtRwTj1UI1Q==";
+      };
+    };
+    "postgres-array-1.0.3" = {
+      name = "postgres-array";
+      packageName = "postgres-array";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz";
-        sha512 = "ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==";
+        url = "https://registry.npmjs.org/postgres-array/-/postgres-array-1.0.3.tgz";
+        sha512 = "5wClXrAP0+78mcsNX3/ithQ5exKvCyK5lr5NEEEeGwwM6NJdQgzIJBVxLvRW+huFpX92F2QnZ5CcokH0VhK2qQ==";
       };
     };
     "postgres-array-2.0.0" = {
@@ -6205,6 +7249,15 @@ let
         sha512 = "2+VhqiY/rKIqKIXyvemBFHbeijHE25sP7eKltnqcFqAssUE6+sX6vusN9A4luzToOqHQkUZexiCKxvuGagh7JA==";
       };
     };
+    "prebuild-install-7.1.1" = {
+      name = "prebuild-install";
+      packageName = "prebuild-install";
+      version = "7.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz";
+        sha512 = "jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==";
+      };
+    };
     "prelude-ls-1.1.2" = {
       name = "prelude-ls";
       packageName = "prelude-ls";
@@ -6223,6 +7276,15 @@ let
         sha512 = "zA2SmoLaxZyArQTOPj5LXecR+RagfPSU5Kw1qP+jkWeNlrq+eJZyY2oS68SU1Z/7/myXM4lo9716laOFAVStCQ==";
       };
     };
+    "prismjs-1.29.0" = {
+      name = "prismjs";
+      packageName = "prismjs";
+      version = "1.29.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz";
+        sha512 = "Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==";
+      };
+    };
     "process-0.11.10" = {
       name = "process";
       packageName = "process";
@@ -6277,6 +7339,15 @@ let
         sha512 = "a84F/zM2Z0Ry/ht3nXfV6Ze7BISOQlWrct/YObrluJn8qy2LVeeQ+IJ7jD4bkmM0N2xfXYy5nurz4L1KEj+rJg==";
       };
     };
+    "promise-inflight-1.0.1" = {
+      name = "promise-inflight";
+      packageName = "promise-inflight";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz";
+        sha512 = "6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==";
+      };
+    };
     "promise-retry-2.0.1" = {
       name = "promise-retry";
       packageName = "promise-retry";
@@ -6403,13 +7474,13 @@ let
         sha512 = "UsI/mNvk25jRpGKYI38Nfbv84z48oiIWwG67DLVvjRhy8B/0aIK+5Ju5WOHgw/o9rnEmbAS00v4rgKFQeC332Q==";
       };
     };
-    "qs-6.10.3" = {
+    "qs-6.11.0" = {
       name = "qs";
       packageName = "qs";
-      version = "6.10.3";
+      version = "6.11.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz";
-        sha512 = "wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==";
+        url = "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz";
+        sha512 = "MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==";
       };
     };
     "qs-6.5.3" = {
@@ -6421,6 +7492,15 @@ let
         sha512 = "qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==";
       };
     };
+    "query-string-7.1.1" = {
+      name = "query-string";
+      packageName = "query-string";
+      version = "7.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/query-string/-/query-string-7.1.1.tgz";
+        sha512 = "MplouLRDHBZSG9z7fpuAAcI7aAYjDLhtsiVZsevsfaHWDS2IDdORKbSd1kWUA+V4zyva/HZoSfpwnYMMQDhb0w==";
+      };
+    };
     "querystring-0.2.0" = {
       name = "querystring";
       packageName = "querystring";
@@ -6448,6 +7528,33 @@ let
         sha512 = "NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==";
       };
     };
+    "quill-2.0.0-dev.4" = {
+      name = "quill";
+      packageName = "quill";
+      version = "2.0.0-dev.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/quill/-/quill-2.0.0-dev.4.tgz";
+        sha512 = "9WmMVCEIhf3lDdhzl+i+GBDeDl0BFi65waC4Im8Y4HudEJ9kEEb1lciAz9A8pcDmLMjiMbvz84lNt/U5OBS8Vg==";
+      };
+    };
+    "quill-autoformat-0.1.2" = {
+      name = "quill-autoformat";
+      packageName = "quill-autoformat";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/quill-autoformat/-/quill-autoformat-0.1.2.tgz";
+        sha512 = "kRe2rTSmcBDg/oCxhzbjmXXOpQUl0Gak6ZCQshxek/RLvdR8o715qC0WcBRUozqaYbR6PJ+0Z/piINqlYStxWw==";
+      };
+    };
+    "quill-delta-4.2.1" = {
+      name = "quill-delta";
+      packageName = "quill-delta";
+      version = "4.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/quill-delta/-/quill-delta-4.2.1.tgz";
+        sha512 = "Y2nksOj6Q+4hizre8n0dml76vLNGK4/y86EoI1d7rv6EL1bx7DPDYRmqQMPu1UqFQO/uQuVHQ3fOmm4ZSzWrfA==";
+      };
+    };
     "quoted-printable-1.0.1" = {
       name = "quoted-printable";
       packageName = "quoted-printable";
@@ -6511,6 +7618,24 @@ let
         sha512 = "qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==";
       };
     };
+    "rc-1.2.8" = {
+      name = "rc";
+      packageName = "rc";
+      version = "1.2.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz";
+        sha512 = "y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==";
+      };
+    };
+    "readable-stream-1.0.31" = {
+      name = "readable-stream";
+      packageName = "readable-stream";
+      version = "1.0.31";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.31.tgz";
+        sha512 = "tco/Dwv1f/sgIgN6CWdj/restacPKNskK6yps1981ivH2ZmLYcs5o5rVzL3qaO/cSkhN8hYOMWs7+glzOLSgRg==";
+      };
+    };
     "readable-stream-1.1.14" = {
       name = "readable-stream";
       packageName = "readable-stream";
@@ -6700,6 +7825,15 @@ let
         sha512 = "wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==";
       };
     };
+    "require-at-1.0.6" = {
+      name = "require-at";
+      packageName = "require-at";
+      version = "1.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/require-at/-/require-at-1.0.6.tgz";
+        sha512 = "7i1auJbMUrXEAZCOQ0VNJgmcT2VOKPRl2YGJwgpHpC9CE91Mv4/4UYIUm4chGJaI381ZDq1JUicFii64Hapd8g==";
+      };
+    };
     "require-directory-2.1.1" = {
       name = "require-directory";
       packageName = "require-directory";
@@ -6862,6 +7996,15 @@ let
         sha512 = "rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==";
       };
     };
+    "safe-regex-test-1.0.0" = {
+      name = "safe-regex-test";
+      packageName = "safe-regex-test";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz";
+        sha512 = "JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==";
+      };
+    };
     "safe-stable-stringify-2.4.0" = {
       name = "safe-stable-stringify";
       packageName = "safe-stable-stringify";
@@ -6961,13 +8104,13 @@ let
         sha512 = "b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==";
       };
     };
-    "semver-7.3.7" = {
+    "semver-7.3.8" = {
       name = "semver";
       packageName = "semver";
-      version = "7.3.7";
+      version = "7.3.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz";
-        sha512 = "QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==";
+        url = "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz";
+        sha512 = "NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==";
       };
     };
     "send-0.18.0" = {
@@ -7123,6 +8266,24 @@ let
         sha512 = "wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==";
       };
     };
+    "simple-concat-1.0.1" = {
+      name = "simple-concat";
+      packageName = "simple-concat";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz";
+        sha512 = "cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==";
+      };
+    };
+    "simple-get-4.0.1" = {
+      name = "simple-get";
+      packageName = "simple-get";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz";
+        sha512 = "brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==";
+      };
+    };
     "simple-git-3.14.1" = {
       name = "simple-git";
       packageName = "simple-git";
@@ -7177,22 +8338,22 @@ let
         sha512 = "LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==";
       };
     };
-    "snowflake-sdk-1.6.13" = {
+    "snowflake-sdk-1.6.14" = {
       name = "snowflake-sdk";
       packageName = "snowflake-sdk";
-      version = "1.6.13";
+      version = "1.6.14";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snowflake-sdk/-/snowflake-sdk-1.6.13.tgz";
-        sha512 = "X/eiT4v/yw6+aLdEJK85te4lvkB45lkTzad2CtJdofzxWqtfi1CB2hafTJTfXoDKKJTxLTyYVo+zIYhvhcEarA==";
+        url = "https://registry.npmjs.org/snowflake-sdk/-/snowflake-sdk-1.6.14.tgz";
+        sha512 = "sKg17Yz1/aydKxlA4unlprH+uw9ZsvRezdUmamLjNlvsXQsw+pok4PoMeCKtWs2OSVFnX0VO3eSacCPglQrAQA==";
       };
     };
-    "socks-2.7.0" = {
+    "socks-2.7.1" = {
       name = "socks";
       packageName = "socks";
-      version = "2.7.0";
+      version = "2.7.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/socks/-/socks-2.7.0.tgz";
-        sha512 = "scnOe9y4VuiNUULJN72GrM26BNOjVsfPXI+j+98PkyEfsIXroa5ofyjT+FzGvn/xHs73U2JtoBYAVx9Hl4quSA==";
+        url = "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz";
+        sha512 = "7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==";
       };
     };
     "socks-proxy-agent-5.0.1" = {
@@ -7204,6 +8365,15 @@ let
         sha512 = "vZdmnjb9a2Tz6WEQVIurybSwElwPxMZaIc7PzqbJTrezcKNznv6giT7J7tZDZ1BojVaa1jvO/UiUdhDVB0ACoQ==";
       };
     };
+    "socks-proxy-agent-6.2.1" = {
+      name = "socks-proxy-agent";
+      packageName = "socks-proxy-agent";
+      version = "6.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.2.1.tgz";
+        sha512 = "a6KW9G+6B3nWZ1yB8G7pJwL3ggLy1uTzKAgCb7ttblwqdz9fMGJUuTy3uFzEP48FAs9FLILlmzDlE2JJhVQaXQ==";
+      };
+    };
     "source-map-0.6.1" = {
       name = "source-map";
       packageName = "source-map";
@@ -7231,6 +8401,15 @@ let
         sha512 = "9srjJM7NaymrpwMHvSmpDeIK5GoRMX/Tq0E8aOlDPS54dDnDUIp30DrP9SphMPEETDLzEM9+4qo+KipmbtPecg==";
       };
     };
+    "split-on-first-1.1.0" = {
+      name = "split-on-first";
+      packageName = "split-on-first";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz";
+        sha512 = "43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==";
+      };
+    };
     "split2-3.2.2" = {
       name = "split2";
       packageName = "split2";
@@ -7267,13 +8446,22 @@ let
         sha512 = "VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==";
       };
     };
-    "sqlite3-5.1.1" = {
+    "sql.js-1.8.0" = {
+      name = "sql.js";
+      packageName = "sql.js";
+      version = "1.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sql.js/-/sql.js-1.8.0.tgz";
+        sha512 = "3HD8pSkZL+5YvYUI8nlvNILs61ALqq34xgmF+BHpqxe68yZIJ1H+sIVIODvni25+CcxHUxDyrTJUL0lE/m7afw==";
+      };
+    };
+    "sqlite3-5.1.2" = {
       name = "sqlite3";
       packageName = "sqlite3";
-      version = "5.1.1";
+      version = "5.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sqlite3/-/sqlite3-5.1.1.tgz";
-        sha512 = "mMinkrQr/LKJqFiFF+AF7imPSzRCCpTCreusZO3D/ssJHVjZOrbu2Caz+zPH5KTmGGXBxXMGSRDssL+44CLxvg==";
+        url = "https://registry.npmjs.org/sqlite3/-/sqlite3-5.1.2.tgz";
+        sha512 = "D0Reg6pRWAFXFUnZKsszCI67tthFD8fGPewRddDCX6w4cYwz3MbvuwRICbL+YQjBAh9zbw+lJ/V9oC8nG5j6eg==";
       };
     };
     "sqlstring-2.3.3" = {
@@ -7330,6 +8518,15 @@ let
         sha512 = "/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==";
       };
     };
+    "ssri-8.0.1" = {
+      name = "ssri";
+      packageName = "ssri";
+      version = "8.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz";
+        sha512 = "97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==";
+      };
+    };
     "stack-trace-0.0.10" = {
       name = "stack-trace";
       packageName = "stack-trace";
@@ -7348,6 +8545,15 @@ let
         sha512 = "qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A==";
       };
     };
+    "static-eval-2.0.2" = {
+      name = "static-eval";
+      packageName = "static-eval";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/static-eval/-/static-eval-2.0.2.tgz";
+        sha512 = "N/D219Hcr2bPjLxPiV+TQE++Tsmrady7TqAJugLy7Xk1EumfDWS/f5dtBbkRCGE7wKKXuYockQoj8Rm2/pVKyg==";
+      };
+    };
     "statuses-1.5.0" = {
       name = "statuses";
       packageName = "statuses";
@@ -7402,6 +8608,15 @@ let
         sha512 = "Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==";
       };
     };
+    "strict-uri-encode-2.0.0" = {
+      name = "strict-uri-encode";
+      packageName = "strict-uri-encode";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz";
+        sha512 = "QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ==";
+      };
+    };
     "string-similarity-4.0.4" = {
       name = "string-similarity";
       packageName = "string-similarity";
@@ -7420,6 +8635,15 @@ let
         sha512 = "wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==";
       };
     };
+    "string.prototype.startswith-1.0.0" = {
+      name = "string.prototype.startswith";
+      packageName = "string.prototype.startswith";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string.prototype.startswith/-/string.prototype.startswith-1.0.0.tgz";
+        sha512 = "VHhsDkuf8gsw4JNRK9cIZjYe6r7PsVUutVohaBhqYAoPaRADoQH+mMgUg7Cs/TgQeDGEvI+PzPEMOdvdsCMvpg==";
+      };
+    };
     "string.prototype.trimend-1.0.5" = {
       name = "string.prototype.trimend";
       packageName = "string.prototype.trimend";
@@ -7465,6 +8689,15 @@ let
         sha512 = "Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==";
       };
     };
+    "strip-json-comments-2.0.1" = {
+      name = "strip-json-comments";
+      packageName = "strip-json-comments";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz";
+        sha512 = "4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==";
+      };
+    };
     "strtok3-6.3.0" = {
       name = "strtok3";
       packageName = "strtok3";
@@ -7510,13 +8743,13 @@ let
         sha512 = "ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==";
       };
     };
-    "swagger-ui-dist-4.14.0" = {
+    "swagger-ui-dist-4.14.2" = {
       name = "swagger-ui-dist";
       packageName = "swagger-ui-dist";
-      version = "4.14.0";
+      version = "4.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/swagger-ui-dist/-/swagger-ui-dist-4.14.0.tgz";
-        sha512 = "TBzhheU15s+o54Cgk9qxuYcZMiqSm/SkvKnapoGHOF66kz0Y5aGjpzj5BT/vpBbn6rTPJ9tUYXQxuDWfsjiGMw==";
+        url = "https://registry.npmjs.org/swagger-ui-dist/-/swagger-ui-dist-4.14.2.tgz";
+        sha512 = "kOIU7Ts3TrXDLb3/c9jRe4qGp8O3bRT19FFJA8wJfrRFkcK/4atPn3krhtBVJ57ZkNNofworXHxuYwmaisXBdg==";
       };
     };
     "swagger-ui-express-4.5.0" = {
@@ -7537,6 +8770,33 @@ let
         sha512 = "an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==";
       };
     };
+    "tar-fs-2.1.1" = {
+      name = "tar-fs";
+      packageName = "tar-fs";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz";
+        sha512 = "V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==";
+      };
+    };
+    "tar-stream-2.2.0" = {
+      name = "tar-stream";
+      packageName = "tar-stream";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz";
+        sha512 = "ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==";
+      };
+    };
+    "tarn-1.1.5" = {
+      name = "tarn";
+      packageName = "tarn";
+      version = "1.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tarn/-/tarn-1.1.5.tgz";
+        sha512 = "PMtJ3HCLAZeedWjJPgGnCvcphbCOMbtZpjKgLq3qM5Qq9aQud+XHrL0WlrlgnTyS8U+jrjGbEXprFcQrxPy52g==";
+      };
+    };
     "tarn-3.0.2" = {
       name = "tarn";
       packageName = "tarn";
@@ -7564,6 +8824,15 @@ let
         sha512 = "d3qlmZcvZyt7akyPHiOdR+knfzObWZH3mW+gouQTSb7YTSwtpHuYHcvsQabfbY7oOvgbs51xRb7CwOahWK/t9w==";
       };
     };
+    "tedious-6.7.1" = {
+      name = "tedious";
+      packageName = "tedious";
+      version = "6.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tedious/-/tedious-6.7.1.tgz";
+        sha512 = "61eg/mvUa5vIqZcRizcqw/82dY65kR2uTll1TaUFh0aJ45XOrgbc8axiVR48dva8BahIAlJByaHNfAJ/KmPV0g==";
+      };
+    };
     "test-console-2.0.0" = {
       name = "test-console";
       packageName = "test-console";
@@ -7906,6 +9175,15 @@ let
         sha512 = "c0rCO8VMJ3ER7JQ73xfk0zDnVv0WDjpsP6Q1m6CVKul7DB9iVdWLRjPzc8v2eaeBuomsbZ2+gTaYr8k1gm3bYA==";
       };
     };
+    "typeorm-aurora-data-api-driver-2.4.4" = {
+      name = "typeorm-aurora-data-api-driver";
+      packageName = "typeorm-aurora-data-api-driver";
+      version = "2.4.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typeorm-aurora-data-api-driver/-/typeorm-aurora-data-api-driver-2.4.4.tgz";
+        sha512 = "EqrdoXr0FbUrAMmkNQQuPwlhUGM7SJnpwUlWTWNlK2mOhOUyM+33fhm1f1hz3nnJJV8fTxzS3kTDq6pkVASLAw==";
+      };
+    };
     "uc.micro-1.0.6" = {
       name = "uc.micro";
       packageName = "uc.micro";
@@ -7942,6 +9220,15 @@ let
         sha512 = "eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==";
       };
     };
+    "underscore-1.12.1" = {
+      name = "underscore";
+      packageName = "underscore";
+      version = "1.12.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/underscore/-/underscore-1.12.1.tgz";
+        sha512 = "hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw==";
+      };
+    };
     "unescape-1.0.1" = {
       name = "unescape";
       packageName = "unescape";
@@ -7951,6 +9238,24 @@ let
         sha512 = "O0+af1Gs50lyH1nUu3ZyYS1cRh01Q/kUKatTOkSs7jukXE6/NebucDVxyiDsA9AQ4JC1V1jUH9EO8JX2nMDgGQ==";
       };
     };
+    "unique-filename-1.1.1" = {
+      name = "unique-filename";
+      packageName = "unique-filename";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz";
+        sha512 = "Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==";
+      };
+    };
+    "unique-slug-2.0.2" = {
+      name = "unique-slug";
+      packageName = "unique-slug";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz";
+        sha512 = "zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==";
+      };
+    };
     "unique-stream-2.3.1" = {
       name = "unique-stream";
       packageName = "unique-stream";
@@ -8041,13 +9346,22 @@ let
         sha512 = "WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==";
       };
     };
-    "urllib-2.38.1" = {
+    "urllib-2.39.1" = {
       name = "urllib";
       packageName = "urllib";
-      version = "2.38.1";
+      version = "2.39.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/urllib/-/urllib-2.39.1.tgz";
+        sha512 = "c3sLtY8uhc/WoyJt/nNcEwO4fFC9sFYMQmU5NKoUz9OqUYrPSbYFPflocZCA5oCTavky9weK+YA2EHjsva9AwQ==";
+      };
+    };
+    "utf-8-validate-5.0.9" = {
+      name = "utf-8-validate";
+      packageName = "utf-8-validate";
+      version = "5.0.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/urllib/-/urllib-2.38.1.tgz";
-        sha512 = "1tvjdL74oT9aV4X+SIjE1BXyes5PbfhHKhK4IlhoKhKqk4nD5/lXE90v10WZ02kELWIPI4w7ADneEQ4i7dPjiQ==";
+        url = "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.9.tgz";
+        sha512 = "Yek7dAy0v3Kl0orwMlvi7TPtiCNrdfHNd7Gcc/pLq4BLXqfAmd0J7OWMizUQnTTJsyjKn02mU7anqwfmUP4J8Q==";
       };
     };
     "utf7-1.0.2" = {
@@ -8203,13 +9517,22 @@ let
         sha512 = "PFG8iJRSjvvBdisowQ7iVF580DXb1uCIiGaXgm7tynMR1uTBlv7UJlB1zdv5KJ+Tmq1f0Upnj3fayoEOPpCBKg==";
       };
     };
-    "vue-2.7.10" = {
+    "vue-2.6.14" = {
       name = "vue";
       packageName = "vue";
-      version = "2.7.10";
+      version = "2.6.14";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vue/-/vue-2.6.14.tgz";
+        sha512 = "x2284lgYvjOMj3Za7kqzRcUSxBboHqtgRE2zlos1qWaOye5yUmHn42LB1250NJBLRwEcdrB0JRwyPTEPhfQjiQ==";
+      };
+    };
+    "vue-agile-2.0.0" = {
+      name = "vue-agile";
+      packageName = "vue-agile";
+      version = "2.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vue/-/vue-2.7.10.tgz";
-        sha512 = "HmFC70qarSHPXcKtW8U8fgIkF6JGvjEmDiVInTkKZP0gIlEPhlVlcJJLkdGIDiNkIeA2zJPQTWJUI4iWe+AVfg==";
+        url = "https://registry.npmjs.org/vue-agile/-/vue-agile-2.0.0.tgz";
+        sha512 = "5xkSLJQNRdQ7qpEnXj5FgLg33XKRHaTZKGP5qkvteOc/uGJX89MYCjPSgdNqJ1GYFGfdGAp0jvhihW8OMuXS3g==";
       };
     };
     "vue-color-2.8.1" = {
@@ -8239,6 +9562,51 @@ let
         sha512 = "QVzn7u2WVH8F7eSKIM00lujC7x1mnuGPaTnDTmB01Hd709jDtB9kYtBqM+MWmp5AJRx3gnqAdZbee9MelqwFBg==";
       };
     };
+    "vue-json-pretty-1.9.2" = {
+      name = "vue-json-pretty";
+      packageName = "vue-json-pretty";
+      version = "1.9.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vue-json-pretty/-/vue-json-pretty-1.9.2.tgz";
+        sha512 = "FHAYmZAazhVC6Wi+Zi9DVYha+oZb9uylJPGkl/yTYLxlqLMxmnaVC2R8ZwaYzt6TBGvkLe3Y2D2vgyJCDBJy1w==";
+      };
+    };
+    "vue-prism-editor-0.3.0" = {
+      name = "vue-prism-editor";
+      packageName = "vue-prism-editor";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vue-prism-editor/-/vue-prism-editor-0.3.0.tgz";
+        sha512 = "yNSuwql/xHMJrWghn/OhZ5WPBKdhx7FkvFjgq2uDm99jHSJhuGwhcgPyuoGzpm6w8DRDzi85lgerKCu8DTDWWg==";
+      };
+    };
+    "vue-router-3.6.5" = {
+      name = "vue-router";
+      packageName = "vue-router";
+      version = "3.6.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vue-router/-/vue-router-3.6.5.tgz";
+        sha512 = "VYXZQLtjuvKxxcshuRAwjHnciqZVoXAjTjcqBTz4rKc8qih9g9pI3hbDjmqXaHdgL3v8pV6P8Z335XvHzESxLQ==";
+      };
+    };
+    "vue-template-compiler-2.6.14" = {
+      name = "vue-template-compiler";
+      packageName = "vue-template-compiler";
+      version = "2.6.14";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.6.14.tgz";
+        sha512 = "ODQS1SyMbjKoO1JBJZojSw6FE4qnh9rIpUZn2EUT86FKizx9uH5z6uXiIrm4/Nb/gwxTi/o17ZDEGWAXHvtC7g==";
+      };
+    };
+    "vue-typed-mixins-0.2.0" = {
+      name = "vue-typed-mixins";
+      packageName = "vue-typed-mixins";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vue-typed-mixins/-/vue-typed-mixins-0.2.0.tgz";
+        sha512 = "0OxuinandPWv3nm5k/reYkuKtX3jjPZ40Sy9roJz0ih8PUzmI7zSRiXFEJ62LsyRegw9Tqy+qMkajk7ipKP8Vg==";
+      };
+    };
     "vue2-boring-avatars-0.3.4" = {
       name = "vue2-boring-avatars";
       packageName = "vue2-boring-avatars";
@@ -8257,6 +9625,24 @@ let
         sha512 = "hbY/Q0x8qXGFxo6h4KU4YYesUcN+uUjliqqC0PoNSgpcbS2QRb3qXi+7XMTgLYs0a8i7o1H6Mu43UV4Vbgkhgw==";
       };
     };
+    "vue2-touch-events-3.2.2" = {
+      name = "vue2-touch-events";
+      packageName = "vue2-touch-events";
+      version = "3.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vue2-touch-events/-/vue2-touch-events-3.2.2.tgz";
+        sha512 = "rGV8jxgOQEJYkJCp7uOBe3hjvmG1arThrq1wGtJHwJTgi65+P2a+0l4CYcQO/U1ZFqTq2/TT2+oTE6H7Y+6Eog==";
+      };
+    };
+    "vuex-3.6.2" = {
+      name = "vuex";
+      packageName = "vuex";
+      version = "3.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vuex/-/vuex-3.6.2.tgz";
+        sha512 = "ETW44IqCgBpVomy520DT5jf8n0zoCac+sxWnn+hMe/CzaSejb/eVw2YToiXYX+Ex/AuHHia28vWTq4goAexFbw==";
+      };
+    };
     "webidl-conversions-3.0.1" = {
       name = "webidl-conversions";
       packageName = "webidl-conversions";
@@ -8302,6 +9688,15 @@ let
         sha512 = "HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==";
       };
     };
+    "which-2.0.2" = {
+      name = "which";
+      packageName = "which";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/which/-/which-2.0.2.tgz";
+        sha512 = "BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==";
+      };
+    };
     "which-boxed-primitive-1.0.2" = {
       name = "which-boxed-primitive";
       packageName = "which-boxed-primitive";
@@ -8311,6 +9706,15 @@ let
         sha512 = "bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==";
       };
     };
+    "which-collection-1.0.1" = {
+      name = "which-collection";
+      packageName = "which-collection";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz";
+        sha512 = "W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==";
+      };
+    };
     "which-typed-array-1.1.8" = {
       name = "which-typed-array";
       packageName = "which-typed-array";
@@ -8482,6 +9886,15 @@ let
         sha512 = "7YXTQc3P2l9+0rjaUbLwMKRhtmwg1M1eDf6nag7urC7pIPYLD9W/jmzQ4ptRSUbodw5S0jfoGTflLemQibSpeQ==";
       };
     };
+    "xpath.js-1.1.0" = {
+      name = "xpath.js";
+      packageName = "xpath.js";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xpath.js/-/xpath.js-1.1.0.tgz";
+        sha512 = "jg+qkfS4K8E7965sqaUl8mRngXiKb3WZGfONgE18pr03FUQiuSV6G+Ej4tS55B+rIQSFEIw3phdVAQ4pPqNWfQ==";
+      };
+    };
     "xregexp-2.0.0" = {
       name = "xregexp";
       packageName = "xregexp";
@@ -8614,10 +10027,10 @@ in
   n8n = nodeEnv.buildNodePackage {
     name = "n8n";
     packageName = "n8n";
-    version = "0.194.0";
+    version = "0.197.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/n8n/-/n8n-0.194.0.tgz";
-      sha512 = "xbOMzq5AuP7EbvFJQ8VNE3mQYySH1yRS/Eb2ZyBe4ae33FQyZokLEwxGXFLzV2Caf+lX7xv/7d+6cU/m1jliSQ==";
+      url = "https://registry.npmjs.org/n8n/-/n8n-0.197.1.tgz";
+      sha512 = "uswTJAfyDqMSBT0HZrNFFVKQ/s/FiaQl97+Pdl/MdrC74scPNSTBUrS/L2X08LR0UADO6ByPpB7uOrj+w29pdg==";
     };
     dependencies = [
       (sources."@apidevtools/json-schema-ref-parser-9.0.9" // {
@@ -8650,7 +10063,7 @@ in
         ];
       })
       sources."@azure/core-http-compat-1.3.0"
-      (sources."@azure/core-lro-2.3.1" // {
+      (sources."@azure/core-lro-2.4.0" // {
         dependencies = [
           sources."tslib-2.4.0"
         ];
@@ -8672,7 +10085,7 @@ in
           sources."tslib-2.4.0"
         ];
       })
-      (sources."@azure/core-util-1.1.0" // {
+      (sources."@azure/core-util-1.1.1" // {
         dependencies = [
           sources."tslib-2.4.0"
         ];
@@ -8685,7 +10098,7 @@ in
           sources."tslib-2.4.0"
         ];
       })
-      (sources."@azure/keyvault-keys-4.5.0" // {
+      (sources."@azure/keyvault-keys-4.6.0" // {
         dependencies = [
           sources."tslib-2.4.0"
         ];
@@ -8695,27 +10108,47 @@ in
           sources."tslib-2.4.0"
         ];
       })
-      sources."@azure/msal-browser-2.28.3"
-      sources."@azure/msal-common-7.4.1"
-      sources."@azure/msal-node-1.14.0"
+      sources."@azure/ms-rest-azure-env-2.0.0"
+      (sources."@azure/ms-rest-js-2.6.2" // {
+        dependencies = [
+          sources."form-data-2.5.1"
+        ];
+      })
+      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" // {
         dependencies = [
           sources."@azure/core-tracing-1.0.0-preview.13"
           sources."tslib-2.4.0"
         ];
       })
-      sources."@babel/parser-7.19.1"
-      sources."@babel/runtime-7.19.0"
+      sources."@babel/runtime-7.19.4"
       sources."@colors/colors-1.5.0"
+      sources."@curlconverter/yargs-0.0.2"
+      sources."@curlconverter/yargs-parser-0.0.1"
       (sources."@dabh/diagnostics-2.0.3" // {
         dependencies = [
           sources."enabled-2.0.0"
           sources."kuler-2.0.0"
         ];
       })
-      sources."@fontsource/open-sans-4.5.11"
-      sources."@fortawesome/fontawesome-common-types-6.2.0"
-      sources."@fortawesome/free-regular-svg-icons-6.2.0"
+      sources."@fontsource/open-sans-4.5.12"
+      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" // {
+        dependencies = [
+          sources."@fortawesome/fontawesome-common-types-6.2.0"
+        ];
+      })
+      (sources."@fortawesome/free-solid-svg-icons-5.15.4" // {
+        dependencies = [
+          sources."@fortawesome/fontawesome-common-types-0.2.36"
+        ];
+      })
+      sources."@fortawesome/vue-fontawesome-2.0.8"
+      sources."@gar/promisify-1.1.3"
       (sources."@icetee/ftp-0.3.15" // {
         dependencies = [
           sources."isarray-0.0.1"
@@ -8723,7 +10156,7 @@ in
           sources."string_decoder-0.10.31"
         ];
       })
-      sources."@js-joda/core-5.3.1"
+      sources."@js-joda/core-5.4.1"
       sources."@jsdevtools/ono-7.1.3"
       sources."@kafkajs/confluent-schema-registry-1.0.6"
       sources."@kwsites/file-exists-1.1.1"
@@ -8733,20 +10166,26 @@ in
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
-      sources."@oclif/command-1.8.16"
-      (sources."@oclif/config-1.18.3" // {
+      sources."@npmcli/fs-1.1.1"
+      (sources."@npmcli/move-file-1.1.2" // {
+        dependencies = [
+          sources."mkdirp-1.0.4"
+        ];
+      })
+      sources."@oclif/command-1.8.18"
+      (sources."@oclif/config-1.18.5" // {
         dependencies = [
           sources."tslib-2.4.0"
         ];
       })
-      (sources."@oclif/core-1.16.3" // {
+      (sources."@oclif/core-1.16.5" // {
         dependencies = [
           sources."supports-color-8.1.1"
           sources."tslib-2.4.0"
           sources."wrap-ansi-7.0.0"
         ];
       })
-      (sources."@oclif/errors-1.3.5" // {
+      (sources."@oclif/errors-1.3.6" // {
         dependencies = [
           sources."fs-extra-8.1.0"
           sources."jsonfile-4.0.0"
@@ -8754,14 +10193,9 @@ in
           sources."wrap-ansi-7.0.0"
         ];
       })
-      (sources."@oclif/help-1.0.1" // {
-        dependencies = [
-          sources."@oclif/config-1.18.2"
-          sources."tslib-2.4.0"
-        ];
-      })
+      sources."@oclif/help-1.0.3"
       sources."@oclif/linewrap-1.0.0"
-      (sources."@oclif/parser-3.8.7" // {
+      (sources."@oclif/parser-3.8.8" // {
         dependencies = [
           sources."tslib-2.4.0"
         ];
@@ -8769,6 +10203,12 @@ 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" // {
+        dependencies = [
+          sources."debug-3.1.0"
+          sources."ms-2.0.0"
+        ];
+      })
       sources."@segment/loosely-validate-event-2.0.0"
       sources."@selderee/plugin-htmlparser2-0.6.0"
       sources."@servie/events-1.0.0"
@@ -8784,11 +10224,12 @@ in
       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/json-schema-7.0.11"
-      sources."@types/lodash-4.14.185"
+      sources."@types/lodash-4.14.186"
       sources."@types/mime-3.0.1"
       sources."@types/multer-1.4.7"
-      sources."@types/node-18.7.18"
+      sources."@types/node-18.8.3"
       (sources."@types/node-fetch-2.6.2" // {
         dependencies = [
           sources."form-data-3.0.1"
@@ -8796,20 +10237,39 @@ in
       })
       sources."@types/qs-6.9.7"
       sources."@types/range-parser-1.2.4"
+      sources."@types/readable-stream-2.3.14"
       sources."@types/serve-static-1.15.0"
       sources."@types/tough-cookie-2.3.8"
       sources."@types/tunnel-0.0.3"
       sources."@types/webidl-conversions-7.0.0"
       sources."@types/whatwg-url-8.2.2"
-      sources."@vue/compiler-sfc-2.7.10"
+      sources."@xmldom/xmldom-0.7.5"
+      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-walk-8.2.0"
+      (sources."adal-node-0.2.3" // {
+        dependencies = [
+          sources."async-2.6.4"
+          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" // {
+        dependencies = [
+          sources."depd-1.1.2"
+        ];
+      })
+      (sources."aggregate-error-3.1.0" // {
+        dependencies = [
+          sources."clean-stack-2.2.0"
+        ];
+      })
       sources."ajv-6.12.6"
       (sources."amqplib-0.8.0" // {
         dependencies = [
@@ -8838,6 +10298,7 @@ in
       sources."array-series-0.1.5"
       sources."array-union-2.1.0"
       sources."array.prototype.reduce-1.0.4"
+      sources."asap-2.0.6"
       sources."asn1-0.2.6"
       sources."asn1.js-5.4.1"
       sources."asn1.js-rfc2560-5.0.1"
@@ -8859,8 +10320,8 @@ in
         ];
       })
       sources."available-typed-arrays-1.0.5"
-      sources."avsc-5.7.5"
-      (sources."aws-sdk-2.1218.0" // {
+      sources."avsc-5.7.6"
+      (sources."aws-sdk-2.1231.0" // {
         dependencies = [
           sources."buffer-4.9.2"
           sources."events-1.1.1"
@@ -8891,10 +10352,16 @@ in
       })
       sources."bcrypt-pbkdf-1.0.2"
       sources."bcryptjs-2.4.3"
+      sources."better-sqlite3-7.6.2"
       sources."big-integer-1.6.51"
       sources."bignumber.js-2.4.0"
       sources."binary-extensions-2.2.0"
       sources."binascii-0.0.2"
+      (sources."bindings-1.5.0" // {
+        dependencies = [
+          sources."file-uri-to-path-1.0.0"
+        ];
+      })
       sources."bintrees-1.0.2"
       (sources."bitsyntax-0.1.0" // {
         dependencies = [
@@ -8910,9 +10377,10 @@ in
       })
       sources."bluebird-3.7.2"
       sources."bn.js-4.12.0"
-      (sources."body-parser-1.20.0" // {
+      (sources."body-parser-1.20.1" // {
         dependencies = [
           sources."debug-2.6.9"
+          sources."iconv-lite-0.4.24"
           sources."ms-2.0.0"
         ];
       })
@@ -8927,10 +10395,17 @@ 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."bull-3.29.3"
       sources."busboy-1.6.0"
       sources."byte-length-1.0.2"
       sources."bytes-3.1.2"
+      (sources."cacache-15.3.0" // {
+        dependencies = [
+          sources."mkdirp-1.0.4"
+          sources."p-map-4.0.0"
+        ];
+      })
       sources."call-bind-1.0.2"
       sources."call-me-maybe-1.0.1"
       sources."callback-stream-1.1.0"
@@ -8962,7 +10437,7 @@ in
       sources."charenc-0.0.2"
       sources."cheerio-1.0.0-rc.6"
       sources."cheerio-select-1.6.0"
-      sources."chokidar-3.5.2"
+      sources."chokidar-3.5.3"
       sources."chownr-2.0.0"
       sources."clamp-1.0.1"
       sources."class-validator-0.13.2"
@@ -8983,7 +10458,8 @@ in
           sources."wrap-ansi-7.0.0"
         ];
       })
-      sources."cluster-key-slot-1.1.0"
+      sources."clone-2.1.2"
+      sources."cluster-key-slot-1.1.1"
       sources."codepage-1.15.0"
       (sources."color-3.2.1" // {
         dependencies = [
@@ -9000,7 +10476,9 @@ in
       sources."combined-stream-1.0.8"
       sources."commander-5.1.0"
       sources."commist-1.1.0"
+      sources."component-props-1.1.1"
       sources."component-type-1.2.1"
+      sources."component-xor-0.0.4"
       sources."compressible-2.0.18"
       (sources."compression-1.7.4" // {
         dependencies = [
@@ -9026,7 +10504,7 @@ in
       sources."cookie-parser-1.4.6"
       sources."cookie-signature-1.0.6"
       sources."copy-to-2.0.1"
-      sources."core-js-3.25.2"
+      sources."core-js-3.25.5"
       sources."core-util-is-1.0.3"
       sources."crc-32-1.2.2"
       sources."cron-1.7.2"
@@ -9042,11 +10520,24 @@ 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"
+      sources."data-api-client-1.3.0"
       sources."data-uri-to-buffer-3.0.1"
+      sources."date-utils-1.2.21"
+      sources."dateformat-3.0.3"
+      sources."de-indent-1.0.2"
       sources."debug-4.3.4"
       sources."debuglog-1.0.1"
+      sources."decode-uri-component-0.2.0"
+      sources."decompress-response-6.0.0"
+      (sources."deep-equal-2.0.5" // {
+        dependencies = [
+          sources."isarray-2.0.5"
+        ];
+      })
+      sources."deep-extend-0.6.0"
       sources."deep-is-0.1.4"
       sources."deepmerge-1.5.2"
       sources."default-user-agent-1.0.0"
@@ -9068,6 +10559,7 @@ in
       })
       sources."dir-glob-3.0.1"
       sources."discontinuous-range-1.0.0"
+      sources."dom-iterator-1.0.0"
       sources."dom-serializer-1.4.1"
       sources."domelementtype-2.3.0"
       sources."domhandler-4.3.1"
@@ -9088,14 +10580,21 @@ in
       sources."emoji-regex-8.0.0"
       sources."enabled-1.0.2"
       sources."encodeurl-1.0.2"
+      sources."encoding-0.1.13"
       sources."encoding-japanese-2.0.0"
       sources."end-of-stream-1.4.4"
       sources."entities-2.2.0"
+      sources."env-paths-2.2.1"
       sources."env-variable-0.0.6"
       sources."err-code-2.0.3"
-      sources."es-abstract-1.20.2"
+      sources."es-abstract-1.20.4"
       sources."es-aggregate-error-1.0.8"
       sources."es-array-method-boxes-properly-1.0.0"
+      (sources."es-get-iterator-1.1.2" // {
+        dependencies = [
+          sources."isarray-2.0.5"
+        ];
+      })
       sources."es-to-primitive-1.2.1"
       sources."es5-ext-0.8.2"
       sources."escalade-3.1.1"
@@ -9107,11 +10606,14 @@ in
       sources."estraverse-4.3.0"
       sources."esutils-2.0.3"
       sources."etag-1.8.1"
+      sources."event-target-shim-5.0.1"
+      sources."eventemitter3-4.0.7"
       sources."events-3.3.0"
       sources."eventsource-2.0.2"
       sources."exit-on-epipe-1.0.1"
+      sources."expand-template-2.0.3"
       sources."expand-tilde-2.0.2"
-      (sources."express-4.18.1" // {
+      (sources."express-4.18.2" // {
         dependencies = [
           sources."cookie-0.5.0"
           sources."debug-2.6.9"
@@ -9126,20 +10628,26 @@ in
       })
       sources."extend-3.0.2"
       sources."extend-shallow-2.0.1"
-      sources."external-editor-3.1.0"
+      (sources."external-editor-3.1.0" // {
+        dependencies = [
+          sources."iconv-lite-0.4.24"
+        ];
+      })
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-3.1.3"
+      sources."fast-diff-1.2.0"
       sources."fast-glob-3.2.12"
       sources."fast-json-stable-stringify-2.1.0"
       sources."fast-levenshtein-2.0.6"
       sources."fastq-1.13.0"
       sources."fecha-4.2.3"
-      sources."fflate-0.7.3"
+      sources."fflate-0.7.4"
       (sources."figures-3.2.0" // {
         dependencies = [
           sources."escape-string-regexp-1.0.5"
         ];
       })
+      sources."file-saver-2.0.5"
       sources."file-type-16.5.4"
       sources."file-uri-to-path-2.0.0"
       (sources."filelist-1.0.4" // {
@@ -9148,12 +10656,14 @@ in
         ];
       })
       sources."fill-range-7.0.1"
+      sources."filter-obj-1.1.0"
       (sources."finalhandler-1.2.0" // {
         dependencies = [
           sources."debug-2.6.9"
           sources."ms-2.0.0"
         ];
       })
+      sources."first-match-0.0.1"
       sources."flatted-3.2.7"
       sources."fn.name-1.1.0"
       sources."follow-redirects-1.15.2"
@@ -9169,6 +10679,7 @@ in
       sources."forwarded-0.2.0"
       sources."frac-1.1.2"
       sources."fresh-0.5.2"
+      sources."fs-constants-1.0.0"
       sources."fs-extra-9.1.0"
       sources."fs-minipass-2.1.0"
       sources."fs.realpath-1.0.0"
@@ -9199,6 +10710,7 @@ in
         ];
       })
       sources."getpass-0.1.7"
+      sources."github-from-package-0.0.0"
       sources."glob-7.2.3"
       sources."glob-parent-5.1.2"
       (sources."glob-stream-6.1.0" // {
@@ -9209,7 +10721,7 @@ in
       })
       sources."globalthis-1.0.3"
       sources."globby-11.1.0"
-      (sources."gm-1.24.0" // {
+      (sources."gm-1.25.0" // {
         dependencies = [
           sources."cross-spawn-4.0.2"
           sources."debug-3.2.7"
@@ -9229,6 +10741,7 @@ in
       sources."has-symbols-1.0.3"
       sources."has-tostringtag-1.0.0"
       sources."has-unicode-2.0.1"
+      sources."hdb-pool-0.1.6"
       sources."he-1.2.0"
       (sources."header-case-2.0.4" // {
         dependencies = [
@@ -9245,13 +10758,14 @@ in
         ];
       })
       sources."htmlparser2-6.1.0"
+      sources."http-cache-semantics-4.1.0"
       sources."http-errors-2.0.0"
       sources."http-proxy-agent-4.0.1"
       sources."http-signature-1.2.0"
       sources."https-proxy-agent-5.0.1"
       sources."humanize-ms-1.2.1"
       sources."hyperlinker-1.0.0"
-      sources."iconv-lite-0.4.24"
+      sources."iconv-lite-0.6.3"
       sources."ics-2.40.0"
       sources."ieee754-1.2.1"
       sources."ignore-5.2.0"
@@ -9262,10 +10776,17 @@ in
           sources."string_decoder-0.10.31"
         ];
       })
-      sources."imap-simple-4.3.0"
+      (sources."imap-simple-4.3.0" // {
+        dependencies = [
+          sources."iconv-lite-0.4.24"
+        ];
+      })
+      sources."imurmurhash-0.1.4"
       sources."indent-string-4.0.0"
+      sources."infer-owner-1.0.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
+      sources."ini-1.3.8"
       sources."inquirer-7.3.3"
       sources."internal-slot-1.0.3"
       sources."interpret-1.4.0"
@@ -9280,7 +10801,7 @@ in
       sources."is-binary-path-2.1.0"
       sources."is-boolean-object-1.1.2"
       sources."is-buffer-1.1.6"
-      sources."is-callable-1.2.6"
+      sources."is-callable-1.2.7"
       sources."is-core-module-2.10.0"
       sources."is-date-object-1.0.5"
       sources."is-docker-2.2.1"
@@ -9289,6 +10810,8 @@ in
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-generator-function-1.0.10"
       sources."is-glob-4.0.3"
+      sources."is-lambda-1.0.1"
+      sources."is-map-2.0.2"
       sources."is-nan-1.3.2"
       sources."is-negated-glob-1.0.0"
       sources."is-negative-zero-2.0.2"
@@ -9300,6 +10823,7 @@ in
       sources."is-regex-1.1.4"
       sources."is-relative-1.0.0"
       sources."is-retry-allowed-2.2.0"
+      sources."is-set-2.0.2"
       sources."is-shared-array-buffer-1.0.2"
       sources."is-stream-2.0.1"
       sources."is-string-1.0.7"
@@ -9307,21 +10831,26 @@ in
       sources."is-typed-array-1.1.9"
       sources."is-typedarray-1.0.0"
       sources."is-unc-path-1.0.0"
+      sources."is-weakmap-2.0.1"
       sources."is-weakref-1.0.2"
+      sources."is-weakset-2.0.2"
       sources."is-windows-1.0.2"
       sources."is-wsl-2.2.0"
       sources."isarray-1.0.0"
-      sources."isbot-3.5.3"
+      sources."isbot-3.6.1"
       sources."isexe-2.0.0"
       sources."iso-639-1-2.1.15"
       sources."isstream-0.1.2"
       sources."jake-10.8.5"
       sources."jmespath-0.16.0"
       sources."join-component-1.1.0"
+      sources."jquery-3.6.1"
       sources."js-md4-0.3.2"
+      sources."js-nacl-1.4.0"
       sources."js-yaml-3.14.1"
       sources."jsbi-4.3.0"
       sources."jsbn-0.1.1"
+      sources."jsesc-3.0.2"
       sources."json-diff-0.5.5"
       sources."json-schema-0.4.0"
       sources."json-schema-ref-parser-9.0.9"
@@ -9329,12 +10858,18 @@ in
       sources."json-stable-stringify-without-jsonify-1.0.1"
       sources."json-stringify-safe-5.0.1"
       sources."jsonfile-6.1.0"
+      (sources."jsonpath-1.1.1" // {
+        dependencies = [
+          sources."esprima-1.2.2"
+        ];
+      })
       sources."jsonschema-1.4.1"
       (sources."jsonwebtoken-8.5.1" // {
         dependencies = [
           sources."semver-5.7.1"
         ];
       })
+      sources."jsplumb-2.15.4"
       sources."jsprim-1.4.2"
       sources."jwa-1.4.1"
       sources."jwks-rsa-1.12.3"
@@ -9344,12 +10879,9 @@ in
       sources."leven-2.1.0"
       sources."levn-0.3.0"
       sources."libbase64-1.2.1"
-      (sources."libmime-5.1.0" // {
-        dependencies = [
-          sources."iconv-lite-0.6.3"
-        ];
-      })
+      sources."libmime-5.1.0"
       sources."libphonenumber-js-1.10.13"
+      sources."libpq-1.8.12"
       sources."libqp-1.1.0"
       sources."limiter-1.1.5"
       sources."linkify-it-4.0.0"
@@ -9360,7 +10892,9 @@ in
       })
       sources."lodash-4.17.21"
       sources."lodash-es-4.17.21"
+      sources."lodash.camelcase-4.3.0"
       sources."lodash.clonedeep-4.5.0"
+      sources."lodash.debounce-4.0.8"
       sources."lodash.defaults-4.2.0"
       sources."lodash.flatten-4.4.0"
       sources."lodash.get-4.4.2"
@@ -9376,6 +10910,8 @@ in
       sources."lodash.merge-4.6.2"
       sources."lodash.omit-4.5.0"
       sources."lodash.once-4.1.1"
+      sources."lodash.orderby-4.6.0"
+      sources."lodash.pick-4.4.0"
       sources."lodash.set-4.3.2"
       sources."lodash.split-4.4.2"
       sources."lodash.throttle-4.1.1"
@@ -9401,7 +10937,6 @@ in
       sources."luxon-2.5.0"
       (sources."mailparser-3.5.0" // {
         dependencies = [
-          sources."iconv-lite-0.6.3"
           sources."nodemailer-6.7.3"
         ];
       })
@@ -9413,6 +10948,11 @@ in
       })
       sources."make-error-1.3.6"
       sources."make-error-cause-2.3.0"
+      (sources."make-fetch-happen-9.1.0" // {
+        dependencies = [
+          sources."socks-proxy-agent-6.2.1"
+        ];
+      })
       sources."mappersmith-2.40.0"
       sources."material-colors-1.2.6"
       sources."md5-2.3.0"
@@ -9426,6 +10966,7 @@ in
       sources."mime-db-1.52.0"
       sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
+      sources."mimic-response-3.1.0"
       sources."minimalistic-assert-1.0.1"
       (sources."minimatch-3.1.2" // {
         dependencies = [
@@ -9434,8 +10975,14 @@ in
       })
       sources."minimist-1.2.6"
       sources."minipass-3.3.5"
+      sources."minipass-collect-1.0.2"
+      sources."minipass-fetch-1.4.1"
+      sources."minipass-flush-1.0.5"
+      sources."minipass-pipeline-1.2.4"
+      sources."minipass-sized-1.0.3"
       sources."minizlib-2.1.2"
       sources."mkdirp-0.5.6"
+      sources."mkdirp-classic-0.5.3"
       (sources."mock-require-3.0.3" // {
         dependencies = [
           sources."get-caller-file-1.0.3"
@@ -9445,19 +10992,19 @@ in
       sources."moment-2.29.4"
       sources."moment-timezone-0.5.37"
       sources."monaco-editor-0.30.1"
-      (sources."mongodb-4.9.1" // {
+      (sources."mongodb-4.10.0" // {
         dependencies = [
           sources."denque-2.1.0"
         ];
       })
-      (sources."mongodb-connection-string-url-2.5.3" // {
+      (sources."mongodb-connection-string-url-2.5.4" // {
         dependencies = [
           sources."tr46-3.0.0"
           sources."webidl-conversions-7.0.0"
           sources."whatwg-url-11.0.0"
         ];
       })
-      sources."moo-0.5.1"
+      sources."moo-0.5.2"
       (sources."mqtt-4.2.6" // {
         dependencies = [
           sources."concat-stream-2.0.0"
@@ -9468,7 +11015,7 @@ in
       sources."ms-2.1.2"
       (sources."mssql-8.1.4" // {
         dependencies = [
-          sources."commander-9.4.0"
+          sources."commander-9.4.1"
         ];
       })
       sources."multer-1.4.5-lts.1"
@@ -9476,27 +11023,28 @@ in
       (sources."mysql2-2.3.3" // {
         dependencies = [
           sources."denque-2.1.0"
-          sources."iconv-lite-0.6.3"
         ];
       })
       sources."mz-2.7.0"
-      sources."n8n-core-0.134.0"
-      sources."n8n-design-system-0.34.0"
-      sources."n8n-editor-ui-0.160.0"
-      (sources."n8n-nodes-base-0.192.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" // {
         dependencies = [
-          sources."iconv-lite-0.6.3"
+          sources."chokidar-3.5.2"
         ];
       })
-      sources."n8n-workflow-0.116.0"
+      sources."n8n-workflow-0.119.0"
       (sources."named-placeholders-1.1.2" // {
         dependencies = [
           sources."lru-cache-4.1.5"
           sources."yallist-2.1.2"
         ];
       })
+      sources."nan-2.16.0"
       sources."nanoclone-0.2.1"
       sources."nanoid-3.3.4"
+      sources."napi-build-utils-1.0.2"
       sources."native-duplexpair-1.0.0"
       sources."natural-orderby-2.0.3"
       (sources."nearley-2.20.1" // {
@@ -9513,24 +11061,38 @@ in
           sources."tslib-2.4.0"
         ];
       })
+      sources."node-abi-3.26.0"
       sources."node-abort-controller-3.0.1"
       sources."node-addon-api-4.3.0"
       sources."node-ensure-0.0.0"
       sources."node-fetch-2.6.7"
+      (sources."node-gyp-8.4.1" // {
+        dependencies = [
+          sources."are-we-there-yet-3.0.1"
+          sources."gauge-4.0.4"
+          sources."npmlog-6.0.2"
+          sources."readable-stream-3.6.0"
+          sources."which-2.0.2"
+        ];
+      })
+      sources."node-gyp-build-4.5.0"
       sources."node-html-markdown-1.2.0"
       sources."node-html-parser-5.4.2"
       sources."node-ssh-12.0.5"
       sources."nodeify-1.0.1"
-      sources."nodemailer-6.7.8"
+      sources."nodemailer-6.8.0"
       sources."nopt-5.0.0"
       sources."normalize-path-3.0.0"
       sources."normalize-wheel-1.0.1"
       sources."npmlog-5.0.1"
       sources."nth-check-2.1.1"
+      sources."nub-0.0.0"
+      sources."nunjucks-3.2.3"
       sources."oauth-1.0a-2.2.6"
       sources."oauth-sign-0.9.0"
       sources."object-assign-4.1.1"
       sources."object-inspect-1.12.2"
+      sources."object-is-1.1.5"
       sources."object-keys-1.1.1"
       sources."object-treeify-1.1.33"
       sources."object.assign-4.1.4"
@@ -9544,7 +11106,9 @@ in
       sources."open-7.4.2"
       sources."openapi-types-10.0.0"
       sources."openurl-1.1.1"
+      sources."optional-require-1.1.8"
       sources."optionator-0.8.3"
+      sources."oracledb-5.5.0"
       sources."ordered-read-streams-1.0.1"
       sources."os-name-1.0.3"
       sources."os-tmpdir-1.0.2"
@@ -9565,6 +11129,7 @@ in
           sources."tslib-2.4.0"
         ];
       })
+      sources."parchment-2.0.0-dev.2"
       sources."parse-github-url-1.0.2"
       sources."parse-passwd-1.0.0"
       sources."parse-srcset-1.0.2"
@@ -9608,11 +11173,22 @@ in
       sources."performance-now-2.1.0"
       sources."pg-8.8.0"
       sources."pg-connection-string-2.5.0"
+      sources."pg-cursor-2.7.4"
       sources."pg-int8-1.0.1"
       sources."pg-minify-1.6.2"
+      (sources."pg-native-3.0.1" // {
+        dependencies = [
+          sources."isarray-0.0.1"
+          sources."pg-types-1.13.0"
+          sources."postgres-array-1.0.3"
+          sources."readable-stream-1.0.31"
+          sources."string_decoder-0.10.31"
+        ];
+      })
       sources."pg-pool-3.5.2"
       sources."pg-promise-10.12.0"
       sources."pg-protocol-1.5.0"
+      sources."pg-query-stream-4.2.4"
       sources."pg-types-2.2.0"
       (sources."pgpass-1.0.5" // {
         dependencies = [
@@ -9628,7 +11204,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.16"
+      sources."postcss-8.4.17"
       sources."postgres-array-2.0.0"
       sources."postgres-bytea-1.0.0"
       sources."postgres-date-1.0.7"
@@ -9639,8 +11215,10 @@ in
           sources."ms-2.1.3"
         ];
       })
+      sources."prebuild-install-7.1.1"
       sources."prelude-ls-1.1.2"
       sources."printj-1.1.2"
+      sources."prismjs-1.29.0"
       sources."process-0.11.10"
       sources."process-nextick-args-2.0.1"
       sources."prom-client-13.2.0"
@@ -9651,6 +11229,7 @@ in
         ];
       })
       sources."promise-ftp-common-1.1.5"
+      sources."promise-inflight-1.0.1"
       sources."promise-retry-2.0.1"
       sources."promise.prototype.finally-3.1.3"
       sources."property-expr-2.0.5"
@@ -9672,17 +11251,30 @@ in
       })
       sources."punycode-2.1.1"
       sources."python-struct-1.1.3"
-      sources."qs-6.10.3"
+      sources."qs-6.11.0"
+      sources."query-string-7.1.1"
       sources."querystring-0.2.0"
       sources."querystringify-2.2.0"
       sources."queue-microtask-1.2.3"
+      sources."quill-2.0.0-dev.4"
+      sources."quill-autoformat-0.1.2"
+      (sources."quill-delta-4.2.1" // {
+        dependencies = [
+          sources."deep-equal-1.1.1"
+        ];
+      })
       sources."quoted-printable-1.0.1"
       sources."railroad-diagrams-1.0.0"
       sources."randexp-0.4.6"
       sources."random-bytes-1.0.0"
       sources."randombytes-2.1.0"
       sources."range-parser-1.2.1"
-      sources."raw-body-2.5.1"
+      (sources."raw-body-2.5.1" // {
+        dependencies = [
+          sources."iconv-lite-0.4.24"
+        ];
+      })
+      sources."rc-1.2.8"
       (sources."readable-stream-2.3.7" // {
         dependencies = [
           sources."safe-buffer-5.1.2"
@@ -9720,6 +11312,7 @@ in
           sources."tough-cookie-2.5.0"
         ];
       })
+      sources."require-at-1.0.6"
       sources."require-directory-2.1.1"
       sources."requires-port-1.0.0"
       sources."resize-observer-polyfill-1.5.1"
@@ -9741,6 +11334,7 @@ in
       sources."run-parallel-1.2.0"
       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."safer-buffer-2.1.2"
       (sources."sanitize-html-2.7.0" // {
@@ -9752,7 +11346,7 @@ in
       sources."sb-promise-queue-2.1.0"
       sources."sb-scandir-3.1.0"
       sources."selderee-0.6.0"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       (sources."send-0.18.0" // {
         dependencies = [
           (sources."debug-2.6.9" // {
@@ -9782,11 +11376,13 @@ in
       sources."shelljs-0.8.5"
       (sources."showdown-2.1.0" // {
         dependencies = [
-          sources."commander-9.4.0"
+          sources."commander-9.4.1"
         ];
       })
       sources."side-channel-1.0.4"
       sources."signal-exit-3.0.7"
+      sources."simple-concat-1.0.1"
+      sources."simple-get-4.0.1"
       sources."simple-git-3.14.1"
       sources."simple-lru-cache-0.0.2"
       sources."simple-swizzle-0.2.2"
@@ -9797,7 +11393,7 @@ in
           sources."tslib-2.4.0"
         ];
       })
-      (sources."snowflake-sdk-1.6.13" // {
+      (sources."snowflake-sdk-1.6.14" // {
         dependencies = [
           sources."axios-0.27.2"
           sources."debug-3.2.7"
@@ -9806,18 +11402,20 @@ in
           sources."uuid-3.4.0"
         ];
       })
-      sources."socks-2.7.0"
+      sources."socks-2.7.1"
       sources."socks-proxy-agent-5.0.1"
       sources."source-map-0.6.1"
       sources."source-map-js-1.0.2"
       sources."spex-3.2.0"
+      sources."split-on-first-1.1.0"
       (sources."split2-3.2.2" // {
         dependencies = [
           sources."readable-stream-3.6.0"
         ];
       })
       sources."sprintf-js-1.0.3"
-      sources."sqlite3-5.1.1"
+      sources."sql.js-1.8.0"
+      sources."sqlite3-5.1.2"
       sources."sqlstring-2.3.3"
       sources."sse-channel-3.1.1"
       sources."ssf-0.11.2"
@@ -9829,15 +11427,19 @@ in
         ];
       })
       sources."sshpk-1.17.0"
+      sources."ssri-8.0.1"
       sources."stack-trace-0.0.10"
       sources."standard-as-callback-2.1.0"
+      sources."static-eval-2.0.2"
       sources."statuses-2.0.1"
       sources."stealthy-require-1.1.1"
       sources."stoppable-1.1.0"
       sources."stream-shift-1.0.1"
       sources."streamsearch-1.1.0"
+      sources."strict-uri-encode-2.0.0"
       sources."string-similarity-4.0.4"
       sources."string-width-4.2.3"
+      sources."string.prototype.startswith-1.0.0"
       sources."string.prototype.trimend-1.0.5"
       sources."string.prototype.trimstart-1.0.5"
       (sources."string_decoder-1.1.1" // {
@@ -9846,24 +11448,34 @@ in
         ];
       })
       sources."strip-ansi-6.0.1"
+      sources."strip-json-comments-2.0.1"
       sources."strtok3-6.3.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.0"
+      sources."swagger-ui-dist-4.14.2"
       sources."swagger-ui-express-4.5.0"
       (sources."tar-6.1.11" // {
         dependencies = [
           sources."mkdirp-1.0.4"
         ];
       })
+      (sources."tar-fs-2.1.1" // {
+        dependencies = [
+          sources."chownr-1.1.4"
+        ];
+      })
+      (sources."tar-stream-2.2.0" // {
+        dependencies = [
+          sources."readable-stream-3.6.0"
+        ];
+      })
       sources."tarn-3.0.2"
       sources."tdigest-0.1.2"
       (sources."tedious-14.7.0" // {
         dependencies = [
           sources."bl-5.0.0"
           sources."buffer-6.0.3"
-          sources."iconv-lite-0.6.3"
           sources."readable-stream-3.6.0"
           sources."sprintf-js-1.1.2"
         ];
@@ -9906,18 +11518,37 @@ in
       sources."typedarray-0.0.6"
       (sources."typeorm-0.2.45" // {
         dependencies = [
+          sources."@types/node-12.20.55"
           sources."argparse-2.0.1"
+          sources."bl-2.2.1"
+          sources."bson-1.1.6"
           sources."buffer-6.0.3"
+          sources."iconv-lite-0.5.2"
           sources."js-yaml-4.1.0"
+          sources."jsbi-3.2.5"
           sources."mkdirp-1.0.4"
+          sources."mongodb-3.7.3"
+          sources."mssql-6.4.1"
+          sources."readable-stream-3.6.0"
+          sources."sprintf-js-1.1.2"
+          sources."tarn-1.1.5"
+          (sources."tedious-6.7.1" // {
+            dependencies = [
+              sources."bl-3.0.1"
+            ];
+          })
           sources."tslib-2.4.0"
         ];
       })
+      sources."typeorm-aurora-data-api-driver-2.4.4"
       sources."uc.micro-1.0.6"
       sources."uid-safe-2.1.5"
       sources."unbox-primitive-1.0.2"
       sources."unc-path-regex-0.1.2"
+      sources."underscore-1.12.1"
       sources."unescape-1.0.1"
+      sources."unique-filename-1.1.1"
+      sources."unique-slug-2.0.2"
       sources."unique-stream-2.3.1"
       sources."universalify-2.0.0"
       sources."unpipe-1.0.0"
@@ -9938,14 +11569,16 @@ in
         ];
       })
       sources."url-parse-1.5.10"
-      (sources."urllib-2.38.1" // {
+      (sources."urllib-2.39.1" // {
         dependencies = [
           sources."debug-2.6.9"
+          sources."iconv-lite-0.4.24"
           sources."ip-1.1.8"
           sources."ms-2.0.0"
           sources."statuses-1.5.0"
         ];
       })
+      sources."utf-8-validate-5.0.9"
       (sources."utf7-1.0.2" // {
         dependencies = [
           sources."semver-5.3.0"
@@ -9968,16 +11601,25 @@ in
         ];
       })
       sources."vm2-3.9.11"
-      sources."vue-2.7.10"
+      sources."vue-2.6.14"
+      sources."vue-agile-2.0.0"
       sources."vue-color-2.8.1"
       sources."vue-fragment-1.5.1"
       sources."vue-i18n-8.27.2"
+      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-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."webidl-conversions-3.0.1"
       sources."whatwg-url-5.0.0"
       sources."which-1.3.1"
       sources."which-boxed-primitive-1.0.2"
+      sources."which-collection-1.0.1"
       sources."which-typed-array-1.1.8"
       sources."wide-align-1.1.5"
       sources."widest-line-3.1.0"
@@ -10006,6 +11648,7 @@ in
       sources."xlsx-0.17.5"
       sources."xml2js-0.4.23"
       sources."xmlbuilder-11.0.1"
+      sources."xpath.js-1.1.0"
       sources."xregexp-2.0.0"
       (sources."xss-1.0.14" // {
         dependencies = [
diff --git a/pkgs/applications/networking/onionshare/default.nix b/pkgs/applications/networking/onionshare/default.nix
index 8452d3c26f651..2d23ece5e45c0 100644
--- a/pkgs/applications/networking/onionshare/default.nix
+++ b/pkgs/applications/networking/onionshare/default.nix
@@ -26,12 +26,12 @@
 }:
 
 let
-  version = "2.5";
+  version = "2.6";
   src = fetchFromGitHub {
     owner = "onionshare";
     repo = "onionshare";
     rev = "v${version}";
-    sha256 = "xCAM+tjjyDg/gqAXr4YNPhM8R3n9r895jktisAGlpZo=";
+    sha256 = "sha256-LA7XlzoCXUiG/9subTddAd22336wO9sOHCIBlQK4Ga4=";
   };
   meta = with lib; {
     description = "Securely and anonymously send and receive files";
diff --git a/pkgs/applications/networking/onionshare/fix-paths-gui.patch b/pkgs/applications/networking/onionshare/fix-paths-gui.patch
index 4eb611c860db6..63bc3f68d3b18 100644
--- a/pkgs/applications/networking/onionshare/fix-paths-gui.patch
+++ b/pkgs/applications/networking/onionshare/fix-paths-gui.patch
@@ -1,6 +1,6 @@
 --- a/onionshare/gui_common.py
 +++ b/onionshare/gui_common.py
-@@ -410,52 +410,12 @@ class GuiCommon:
+@@ -482,52 +482,12 @@ class GuiCommon:
          }
  
      def get_tor_paths(self):
@@ -29,12 +29,12 @@
 -
 -        if self.common.platform == "Windows":
 -            base_path = self.get_resource_path("tor")
--            tor_path = os.path.join(base_path, "Tor", "tor.exe")
--            obfs4proxy_file_path = os.path.join(base_path, "Tor", "obfs4proxy.exe")
--            snowflake_file_path = os.path.join(base_path, "Tor", "snowflake-client.exe")
--            meek_client_file_path = os.path.join(base_path, "Tor", "meek-client.exe")
--            tor_geo_ip_file_path = os.path.join(base_path, "Data", "Tor", "geoip")
--            tor_geo_ipv6_file_path = os.path.join(base_path, "Data", "Tor", "geoip6")
+-            tor_path = os.path.join(base_path, "tor.exe")
+-            obfs4proxy_file_path = os.path.join(base_path, "obfs4proxy.exe")
+-            snowflake_file_path = os.path.join(base_path, "snowflake-client.exe")
+-            meek_client_file_path = os.path.join(base_path, "meek-client.exe")
+-            tor_geo_ip_file_path = os.path.join(base_path, "geoip")
+-            tor_geo_ipv6_file_path = os.path.join(base_path, "geoip6")
 -        elif self.common.platform == "Darwin":
 -            base_path = self.get_resource_path("tor")
 -            tor_path = os.path.join(base_path, "tor")
diff --git a/pkgs/applications/networking/onionshare/fix-paths.patch b/pkgs/applications/networking/onionshare/fix-paths.patch
index fec4b4e0395b4..62e69f927b564 100644
--- a/pkgs/applications/networking/onionshare/fix-paths.patch
+++ b/pkgs/applications/networking/onionshare/fix-paths.patch
@@ -1,6 +1,6 @@
 --- a/onionshare_cli/common.py
 +++ b/onionshare_cli/common.py
-@@ -318,67 +318,12 @@ class Common:
+@@ -318,73 +318,12 @@ class Common:
          return path
  
      def get_tor_paths(self):
@@ -18,21 +18,27 @@
 -            # In Windows, the Tor binaries are in the onionshare package, not the onionshare_cli package
 -            base_path = self.get_resource_path("tor")
 -            base_path = base_path.replace("onionshare_cli", "onionshare")
--            tor_path = os.path.join(base_path, "Tor", "tor.exe")
+-            tor_path = os.path.join(base_path, "tor.exe")
 -
 -            # If tor.exe isn't there, mayber we're running from the source tree
 -            if not os.path.exists(tor_path):
+-                self.log(
+-                    "Common", "get_tor_paths", f"Cannot find tor.exe at {tor_path}"
+-                )
 -                base_path = os.path.join(os.getcwd(), "onionshare", "resources", "tor")
 -
--                tor_path = os.path.join(base_path, "Tor", "tor.exe")
+-                tor_path = os.path.join(base_path, "tor.exe")
 -                if not os.path.exists(tor_path):
+-                    self.log(
+-                        "Common", "get_tor_paths", f"Cannot find tor.exe at {tor_path}"
+-                    )
 -                    raise CannotFindTor()
 -
--            obfs4proxy_file_path = os.path.join(base_path, "Tor", "obfs4proxy.exe")
--            snowflake_file_path = os.path.join(base_path, "Tor", "snowflake-client.exe")
--            meek_client_file_path = os.path.join(base_path, "Tor", "meek-client.exe")
--            tor_geo_ip_file_path = os.path.join(base_path, "Data", "Tor", "geoip")
--            tor_geo_ipv6_file_path = os.path.join(base_path, "Data", "Tor", "geoip6")
+-            obfs4proxy_file_path = os.path.join(base_path, "obfs4proxy.exe")
+-            snowflake_file_path = os.path.join(base_path, "snowflake-client.exe")
+-            meek_client_file_path = os.path.join(base_path, "meek-client.exe")
+-            tor_geo_ip_file_path = os.path.join(base_path, "geoip")
+-            tor_geo_ipv6_file_path = os.path.join(base_path, "geoip6")
 -
 -        elif self.platform == "Darwin":
 -            # Let's see if we have tor binaries in the onionshare GUI package
diff --git a/pkgs/applications/networking/p2p/qbittorrent/default.nix b/pkgs/applications/networking/p2p/qbittorrent/default.nix
index 47fe3e97c1d35..1b4f12874dbda 100644
--- a/pkgs/applications/networking/p2p/qbittorrent/default.nix
+++ b/pkgs/applications/networking/p2p/qbittorrent/default.nix
@@ -12,13 +12,13 @@ assert trackerSearch -> (python3 != null);
 with lib;
 mkDerivation rec {
   pname = "qbittorrent";
-  version = "4.4.3.1";
+  version = "4.4.5";
 
   src = fetchFromGitHub {
     owner = "qbittorrent";
     repo = "qBittorrent";
     rev = "release-${version}";
-    sha256 = "sha256-byA6bzGdigmVptUFdgBjyg6Oimn5L6l1DDOuuBjwO0s=";
+    sha256 = "sha256-EgRDNOJ4szdZA5ipOuGy2R0oVdjWcuqPU3ecU3ZNK3g=";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/networking/protonvpn-cli/default.nix b/pkgs/applications/networking/protonvpn-cli/default.nix
index f247b5d148249..e480ab5f67b1c 100644
--- a/pkgs/applications/networking/protonvpn-cli/default.nix
+++ b/pkgs/applications/networking/protonvpn-cli/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonApplication rec {
   pname = "protonvpn-cli";
-  version = "3.12.0";
+  version = "3.13.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.5";
@@ -17,8 +17,8 @@ buildPythonApplication rec {
   src = fetchFromGitHub {
     owner = "protonvpn";
     repo = "linux-cli";
-    rev = version;
-    sha256 = "sha256-z0ewAqf8hjyExqBN8KBsDwJ+SA/pIBYZhKtXF9M65HE=";
+    rev = "refs/tags/${version}";
+    sha256 = "sha256-KhfogC23i7THe6YZJ6Sy1+q83vZupHsS69NurHCeo8I=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/applications/networking/protonvpn-gui/default.nix b/pkgs/applications/networking/protonvpn-gui/default.nix
index ef128932f7c0a..13f6e0186f689 100644
--- a/pkgs/applications/networking/protonvpn-gui/default.nix
+++ b/pkgs/applications/networking/protonvpn-gui/default.nix
@@ -18,13 +18,13 @@
 
 buildPythonApplication rec {
   pname = "protonvpn-gui";
-  version = "1.10.0";
+  version = "1.11.0";
 
   src = fetchFromGitHub {
     owner = "ProtonVPN";
     repo = "linux-app";
     rev = "refs/tags/${version}";
-    sha256 = "sha256-6IRkJKtdQQ9Yixb9CkT3tGNY0MYFZyvz1/6buZo5eYU=";
+    sha256 = "sha256-aov7Mkb3bGlS3q9zIWkeuWbrvfP1Gm2DhaeTprQNbeI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/seahub/default.nix b/pkgs/applications/networking/seahub/default.nix
index bf236e179ccd7..70cb96ed1364f 100644
--- a/pkgs/applications/networking/seahub/default.nix
+++ b/pkgs/applications/networking/seahub/default.nix
@@ -21,6 +21,7 @@ in
 python.pkgs.buildPythonApplication rec {
   pname = "seahub";
   version = "9.0.6";
+  format = "other";
 
   src = fetchFromGitHub {
     owner = "haiwen";
diff --git a/pkgs/applications/networking/sync/lsyncd/default.nix b/pkgs/applications/networking/sync/lsyncd/default.nix
index 7690bf6ee5403..3e52d664d5265 100644
--- a/pkgs/applications/networking/sync/lsyncd/default.nix
+++ b/pkgs/applications/networking/sync/lsyncd/default.nix
@@ -31,10 +31,10 @@ stdenv.mkDerivation rec {
 
   dontUseCmakeBuildDir = true;
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake pkg-config ];
   buildInputs = [
     rsync
-    lua pkg-config
+    lua
     asciidoc libxml2 docbook_xml_dtd_45 docbook_xsl libxslt
   ];
 
diff --git a/pkgs/applications/networking/syncthing/default.nix b/pkgs/applications/networking/syncthing/default.nix
index e668b35d482f4..8ceca271f11af 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.21.0";
+      version = "1.22.0";
 
       src = fetchFromGitHub {
         owner = "syncthing";
         repo = "syncthing";
         rev = "v${version}";
-        hash = "sha256-Qgp9fo3yZabxsCFhn7U9B2AcVSUb9GCzm7B81HrI1jY=";
+        hash = "sha256-jAXxgSm0eEdFylukYGhIGtA0KniMiln1BIfuGZoboSM=";
       };
 
-      vendorSha256 = "sha256-rde7oyEZA8uGmkvz078Cu+aFrn9TuLTv0i7SW0ytyxU=";
+      vendorSha256 = "sha256-yabX1A4Q/0ZQFMCrvO5oCI5y0o/dqQy3IplxZ6SsHuw=";
 
       doCheck = false;
 
diff --git a/pkgs/applications/office/beamerpresenter/default.nix b/pkgs/applications/office/beamerpresenter/default.nix
index 2e4959ce0a520..be794c529ac3b 100644
--- a/pkgs/applications/office/beamerpresenter/default.nix
+++ b/pkgs/applications/office/beamerpresenter/default.nix
@@ -27,13 +27,13 @@
 
 stdenv.mkDerivation rec {
   pname = "beamerpresenter";
-  version = "0.2.3";
+  version = "0.2.3-1";
 
   src = fetchFromGitHub {
     owner = "stiglers-eponym";
     repo = "BeamerPresenter";
-    rev = "v${version}";
-    sha256 = "1n9d0i0j67ymnghn8zkqf52c88zby6rqin8aicbw8cpn35fqf5a6";
+    rev = "dd41a00b3c6c8b881fa62945165c965634df66f0";
+    sha256 = "11yj1zl8hdnqbynkbyzg8kwyx1jl8c87x8f8qyllpk0s6cg304d0";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/office/gnucash/default.nix b/pkgs/applications/office/gnucash/default.nix
index 251c77951321e..9e5294c4b00d0 100644
--- a/pkgs/applications/office/gnucash/default.nix
+++ b/pkgs/applications/office/gnucash/default.nix
@@ -39,6 +39,7 @@ stdenv.mkDerivation rec {
     gettext
     makeWrapper
     wrapGAppsHook
+    pkg-config
   ];
 
   buildInputs = [
@@ -55,7 +56,6 @@ stdenv.mkDerivation rec {
     libofx
     libxml2
     libxslt
-    pkg-config
     swig
     webkitgtk
   ]
diff --git a/pkgs/applications/office/grisbi/default.nix b/pkgs/applications/office/grisbi/default.nix
index ff0d75711cf0d..81f97b116b051 100644
--- a/pkgs/applications/office/grisbi/default.nix
+++ b/pkgs/applications/office/grisbi/default.nix
@@ -19,12 +19,11 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-vTrbq/xLTfwF7/YtKzZFiiSw8A0HzzWin2ry8gPHej8=";
   };
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook intltool ];
   buildInputs = [
     gtk
     libgsf
     libofx
-    intltool
     libsoup
     gnome.adwaita-icon-theme
   ];
diff --git a/pkgs/applications/office/homebank/default.nix b/pkgs/applications/office/homebank/default.nix
index 2a00811a449b6..17a9cbb592448 100644
--- a/pkgs/applications/office/homebank/default.nix
+++ b/pkgs/applications/office/homebank/default.nix
@@ -9,8 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-Rg6OjHLkwVIDnXqzqPXA8DxqSdrh2T6V/gLBND8vx9o=";
   };
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
-  buildInputs = [ gtk libofx intltool libsoup gnome.adwaita-icon-theme ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook intltool ];
+  buildInputs = [ gtk libofx libsoup gnome.adwaita-icon-theme ];
 
   meta = with lib; {
     description = "Free, easy, personal accounting for everyone";
diff --git a/pkgs/applications/office/libreoffice/default.nix b/pkgs/applications/office/libreoffice/default.nix
index c4435ca626985..43a1571b46ebd 100644
--- a/pkgs/applications/office/libreoffice/default.nix
+++ b/pkgs/applications/office/libreoffice/default.nix
@@ -555,7 +555,6 @@ in
     openssl
     pam
     perl
-    pkg-config
     poppler
     python3
     sane-backends
diff --git a/pkgs/applications/office/portfolio/default.nix b/pkgs/applications/office/portfolio/default.nix
index a7d68da37ea58..fb1b0b57ebadf 100644
--- a/pkgs/applications/office/portfolio/default.nix
+++ b/pkgs/applications/office/portfolio/default.nix
@@ -26,11 +26,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "PortfolioPerformance";
-  version = "0.59.1";
+  version = "0.59.2";
 
   src = fetchurl {
     url = "https://github.com/buchen/portfolio/releases/download/${version}/PortfolioPerformance-${version}-linux.gtk.x86_64.tar.gz";
-    sha256 = "sha256-isa9hVs7bTWP0CDLLKKek7hUe4b5OuEkA5m9UARZZ30=";
+    sha256 = "sha256-qfetuy1Pa4kWu4ykuELVIE0iC9eAr6qAwVZkEbqqFi0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/office/timedoctor/default.nix b/pkgs/applications/office/timedoctor/default.nix
deleted file mode 100644
index ab2f8df704791..0000000000000
--- a/pkgs/applications/office/timedoctor/default.nix
+++ /dev/null
@@ -1,125 +0,0 @@
-{ appimageTools
-, fetchurl
-, lib
-}:
-
-# You can debug this package with: $ ELECTRON_ENABLE_LOGGING=true timedoctor
-let
-  version = "3.12.12";
-  sha256 = "01j149c6lacgysll3sajxlb43m1al08kdcwc6zyzw80nrp4iagf6";
-in
-appimageTools.wrapType2 {
-  name = "timedoctor-${version}";
-  src = fetchurl {
-    inherit sha256;
-    url = "https://repo2.timedoctor.com/td-desktop-hybrid/prod/v${version}/timedoctor-desktop_${version}_linux-x86_64.AppImage";
-  };
-  multiPkgs = _: with _; [
-    alsa-lib
-    atk
-    at-spi2-atk
-    at-spi2-core
-    cairo
-    coreutils
-    cups
-    dbus
-    dbus.lib
-    desktop-file-utils
-    expat
-    expat.dev
-    file
-    freetype
-    gcc
-    gcc-unwrapped.lib
-    gdb
-    gdk-pixbuf
-    git
-    glib
-    glibc
-    gdk-pixbuf
-    gtk3
-    gtk3.dev
-    gnome.zenity
-    gnome2.GConf
-    gnumake
-    gnutar
-    gpsd
-    gtk3
-    gtk3.dev
-    gtk3-x11
-    gtk3-x11.dev
-    plasma5Packages.kdialog
-    libappindicator-gtk2.out
-    libexif
-    (libjpeg.override { enableJpeg8 = true; }).out
-    libnotify
-    libpng
-    libxml2
-    libxslt
-    netcat
-    nettools
-    nodePackages.asar
-    nspr
-    nss
-    openjdk
-    pango
-    patchelf
-    python38
-    strace
-    sqlite
-    sqlite.dev
-    udev
-    unzip
-    util-linux
-    watch
-    wget
-    which
-    wrapGAppsHook
-    xdg-utils
-    xorg.libX11
-    xorg.libXau
-    xorg.libXaw
-    xorg.libXaw3d
-    xorg.libxcb
-    xorg.libXcomposite
-    xorg.libXcursor
-    xorg.libXdamage
-    xorg.libXdmcp
-    xorg.libXext
-    xorg.libXfixes
-    xorg.libXfont
-    xorg.libXfont2
-    xorg.libXft
-    xorg.libXi
-    xorg.libXinerama
-    xorg.libXmu
-    xorg.libXp
-    xorg.libXpm
-    xorg.libXpresent
-    xorg.libXrandr
-    xorg.libXrender
-    xorg.libXres
-    xorg.libXScrnSaver
-    xorg.libXt
-    xorg.libXTrap
-    xorg.libXtst
-    xorg.libXv
-    xorg.libXvMC
-    xorg.libXxf86dga
-    xorg.libXxf86misc
-    xorg.libXxf86vm
-    xorg.xcbutilkeysyms
-    zip
-    zlib
-    zsh
-  ];
-  meta = with lib; {
-    description = "Employee time tracking software";
-    homepage = "https://www.timedoctor.com";
-    license = licenses.unfree;
-    maintainers = with maintainers; [ dsalaza4 ];
-    platforms = [ "x86_64-linux" ];
-    # gpgme for i686-linux failed to build.
-    broken = true;
-  };
-}
diff --git a/pkgs/applications/office/treesheets/default.nix b/pkgs/applications/office/treesheets/default.nix
index e39d7b5954c28..7b1fd1ae73a8a 100644
--- a/pkgs/applications/office/treesheets/default.nix
+++ b/pkgs/applications/office/treesheets/default.nix
@@ -1,10 +1,12 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, wxGTK
 , cmake
 , ninja
 , wrapGAppsHook
+, makeWrapper
+, wxGTK
+, Cocoa
 , unstableGitUpdater
 }:
 
@@ -23,14 +25,25 @@ stdenv.mkDerivation rec {
     cmake
     ninja
     wrapGAppsHook
+    makeWrapper
   ];
 
   buildInputs = [
     wxGTK
+  ] ++ lib.optionals stdenv.isDarwin [
+    Cocoa
   ];
 
   NIX_CFLAGS_COMPILE = "-DPACKAGE_VERSION=\"${builtins.replaceStrings [ "unstable-" ] [ "" ] version}\"";
 
+  postInstall = lib.optionalString stdenv.isDarwin ''
+    shopt -s extglob
+    mkdir -p $out/{share/treesheets,bin}
+    mv $out/!(share) $out/share/treesheets
+    makeWrapper $out/{share/treesheets,bin}/treesheets \
+      --chdir $out/share/treesheets
+  '';
+
   passthru = {
     updateScript = unstableGitUpdater { };
   };
@@ -49,7 +62,7 @@ stdenv.mkDerivation rec {
 
     homepage = "https://strlen.com/treesheets/";
     maintainers = with maintainers; [ obadz avery ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     license = licenses.zlib;
   };
 }
diff --git a/pkgs/applications/radio/flex-ncat/default.nix b/pkgs/applications/radio/flex-ncat/default.nix
index 24c2e08f5525f..e06b241905d3a 100644
--- a/pkgs/applications/radio/flex-ncat/default.nix
+++ b/pkgs/applications/radio/flex-ncat/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "flex-ncat";
-  version = "0.1-20220505.0";
+  version = "0.1-20221007.1";
 
   src = fetchFromGitHub {
     owner = "kc2g-flex-tools";
     repo = "nCAT";
     rev = "v${version}";
-    hash = "sha256-Jqoqy+W5sKfg7U/F2OpK1jAVM8rm1Tbr4RHG/mMVE0g=";
+    hash = "sha256-9rxI3wsqjhaH7DD1Go/8s0r6jXaE15Z9PPtbsnsfrM0=";
   };
 
-  vendorSha256 = "sha256-mWZRaPbmSPBUhTCWSkU33zOOq79ylEbnjPG3gLkWeQY=";
+  vendorSha256 = "sha256-lnJtFixgv4ke4Knavb+XKFPzHCiAPhNtfZS3SRVvY2g=";
 
   meta = with lib; {
     homepage = "https://github.com/kc2g-flex-tools/nCAT";
diff --git a/pkgs/applications/radio/flex-ndax/default.nix b/pkgs/applications/radio/flex-ndax/default.nix
index 6900e1eb4ed25..477953ab26fde 100644
--- a/pkgs/applications/radio/flex-ndax/default.nix
+++ b/pkgs/applications/radio/flex-ndax/default.nix
@@ -2,18 +2,18 @@
 
 buildGoModule rec {
   pname = "flex-ndax";
-  version = "0.2-20220427";
+  version = "0.2-20221007.1";
 
   src = fetchFromGitHub {
     owner = "kc2g-flex-tools";
     repo = "nDAX";
     rev = "v${version}";
-    hash = "sha256-KmvTLfGC6xzXcWYAzmBYiYSF65lqMdsdMQjUEk3siqc=";
+    hash = "sha256-QldbiJnCjWrlXEPvyAqV5Xwz9YvsnVobVy/E/OB0A1k=";
   };
 
   buildInputs = [ libpulseaudio ];
 
-  vendorSha256 = "sha256-u/5LiVo/ZOefprEKr/L1+3+OfYb0a4wq+CWoUjYNvzg=";
+  vendorSha256 = "sha256-eHy8oFYicVONQr31LQQ9b5auzeBoIzbszw2buKaBQbQ=";
 
   meta = with lib; {
     broken = stdenv.isDarwin;
diff --git a/pkgs/applications/radio/freedv/default.nix b/pkgs/applications/radio/freedv/default.nix
index 9e400a11bee5f..ba86468854822 100644
--- a/pkgs/applications/radio/freedv/default.nix
+++ b/pkgs/applications/radio/freedv/default.nix
@@ -11,7 +11,7 @@
 , portaudio
 , speexdsp
 , hamlib
-, wxGTK31-gtk3
+, wxGTK32
 , pulseSupport ? config.pulseaudio or stdenv.isLinux
 , AppKit
 , AVFoundation
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
     lpcnetfreedv
     speexdsp
     hamlib
-    wxGTK31-gtk3
+    wxGTK32
   ] ++ (if pulseSupport then [ libpulseaudio ] else [ portaudio ])
   ++ lib.optionals stdenv.isDarwin [
     AppKit
@@ -60,6 +60,10 @@ stdenv.mkDerivation rec {
     "-DUSE_STATIC_DEPS:BOOL=FALSE"
   ] ++ lib.optionals pulseSupport [ "-DUSE_PULSEAUDIO:BOOL=TRUE" ];
 
+  NIX_CFLAGS_COMPILE = lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [
+    "-DAPPLE_OLD_XCODE"
+  ];
+
   meta = with lib; {
     homepage = "https://freedv.org/";
     description = "Digital voice for HF radio";
diff --git a/pkgs/applications/radio/limesuite/default.nix b/pkgs/applications/radio/limesuite/default.nix
index 072d2d15b7ef3..f98eb7639c1ac 100644
--- a/pkgs/applications/radio/limesuite/default.nix
+++ b/pkgs/applications/radio/limesuite/default.nix
@@ -1,6 +1,7 @@
 { lib, stdenv, fetchFromGitHub, cmake
-, sqlite, wxGTK30-gtk3, libusb1, soapysdr
+, sqlite, wxGTK32, libusb1, soapysdr
 , mesa_glu, libX11, gnuplot, fltk
+, GLUT
 } :
 
 stdenv.mkDerivation rec {
@@ -23,13 +24,15 @@ stdenv.mkDerivation rec {
   buildInputs = [
     libusb1
     sqlite
-    wxGTK30-gtk3
+    wxGTK32
     fltk
     gnuplot
     libusb1
     soapysdr
     mesa_glu
     libX11
+  ] ++ lib.optionals stdenv.isDarwin [
+    GLUT
   ];
 
   postInstall = ''
@@ -42,7 +45,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/myriadrf/LimeSuite";
     license = licenses.asl20;
     maintainers = with maintainers; [ markuskowa ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
 
diff --git a/pkgs/applications/radio/rtl-ais/default.nix b/pkgs/applications/radio/rtl-ais/default.nix
index c244868f65d89..407c18c1a0adc 100644
--- a/pkgs/applications/radio/rtl-ais/default.nix
+++ b/pkgs/applications/radio/rtl-ais/default.nix
@@ -3,7 +3,8 @@
 stdenv.mkDerivation {
   pname = "rtl-ais";
   version = "0.8.1";
-  buildInputs = [ pkg-config rtl-sdr libusb1 ];
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ rtl-sdr libusb1 ];
 
   src = fetchFromGitHub {
     owner = "dgiardini";
diff --git a/pkgs/applications/radio/sigdigger/default.nix b/pkgs/applications/radio/sigdigger/default.nix
new file mode 100644
index 0000000000000..4273d148ce280
--- /dev/null
+++ b/pkgs/applications/radio/sigdigger/default.nix
@@ -0,0 +1,59 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, qmake
+, qtbase
+, pkg-config
+, sigutils
+, fftwSinglePrec
+, suwidgets
+, wrapQtAppsHook
+, suscan
+, libsndfile
+, soapysdr-with-plugins
+, libxml2
+, volk
+}:
+
+stdenv.mkDerivation rec {
+  pname = "sigdigger";
+  version = "0.3.0";
+
+  src = fetchFromGitHub {
+    owner = "BatchDrake";
+    repo = "SigDigger";
+    rev = "v${version}";
+    sha256 = "sha256-dS+Fc0iQz7GIlGaR556Ur/EQh3Uzhqm9uBW42IuEqoE=";
+  };
+
+  nativeBuildInputs = [
+    qmake
+    pkg-config
+    wrapQtAppsHook
+  ];
+
+  buildInputs = [
+    qtbase
+    sigutils
+    fftwSinglePrec
+    suwidgets
+    suscan
+    libsndfile
+    libxml2
+    volk
+    soapysdr-with-plugins
+  ];
+
+  qmakeFlags = [
+    "SUWIDGETS_PREFIX=${suwidgets}"
+    "SigDigger.pro"
+  ];
+
+  meta = with lib; {
+    description = "Qt-based digital signal analyzer, using Suscan core and Sigutils DSP library";
+    homepage = "https://github.com/BatchDrake/SigDigger";
+    license = licenses.gpl3;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ polygon oxapentane ];
+  };
+}
diff --git a/pkgs/applications/radio/sigutils/default.nix b/pkgs/applications/radio/sigutils/default.nix
new file mode 100644
index 0000000000000..8b384af02270d
--- /dev/null
+++ b/pkgs/applications/radio/sigutils/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, pkg-config
+, fftwSinglePrec
+, libsndfile
+, volk
+}:
+
+stdenv.mkDerivation rec {
+  pname = "sigutils";
+  version = "unstable-2022-07-05";
+
+  src = fetchFromGitHub {
+    owner = "BatchDrake";
+    repo = "sigutils";
+    rev = "1d7559d427aadd253dd825eef26bf15e54860c5f";
+    sha256 = "sha256-wvd6sixwGmR9R4x+swLVqXre4Dqnj10jZIXUfaJcmBw=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+  ];
+
+  buildInputs = [
+    fftwSinglePrec
+    libsndfile
+    volk
+  ];
+
+  meta = with lib; {
+    description = "Small signal processing utility library";
+    homepage = "https://github.com/BatchDrake/sigutils";
+    license = licenses.gpl3;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ polygon oxapentane ];
+  };
+}
diff --git a/pkgs/applications/radio/soapyairspy/default.nix b/pkgs/applications/radio/soapyairspy/default.nix
index 7e8a09d67b987..289a20d281ccb 100644
--- a/pkgs/applications/radio/soapyairspy/default.nix
+++ b/pkgs/applications/radio/soapyairspy/default.nix
@@ -1,5 +1,6 @@
 { lib, stdenv, fetchFromGitHub, cmake
 , airspy, soapysdr
+, libobjc, IOKit, Security
 } :
 
 stdenv.mkDerivation rec {
@@ -14,7 +15,8 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ airspy soapysdr ];
+  buildInputs = [ airspy soapysdr ]
+    ++ lib.optionals stdenv.isDarwin [ libobjc IOKit Security ];
 
   cmakeFlags = [ "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/" ];
 
@@ -23,6 +25,6 @@ stdenv.mkDerivation rec {
     description = "SoapySDR plugin for Airspy devices";
     license = licenses.mit;
     maintainers = with maintainers; [ markuskowa ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/radio/soapyaudio/default.nix b/pkgs/applications/radio/soapyaudio/default.nix
index 74924de241d32..7434791b69f0b 100644
--- a/pkgs/applications/radio/soapyaudio/default.nix
+++ b/pkgs/applications/radio/soapyaudio/default.nix
@@ -1,5 +1,6 @@
 { lib, stdenv, fetchFromGitHub, cmake, pkg-config
 , hamlib, rtaudio, alsa-lib, libpulseaudio, libjack2, libusb1, soapysdr
+, Accelerate, CoreAudio
 } :
 
 stdenv.mkDerivation rec {
@@ -14,7 +15,9 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
-  buildInputs = [ hamlib rtaudio alsa-lib libpulseaudio libjack2 libusb1 soapysdr ];
+  buildInputs = [ hamlib rtaudio libjack2 libusb1 soapysdr ]
+    ++ lib.optionals stdenv.isLinux [ alsa-lib libpulseaudio ]
+    ++ lib.optionals stdenv.isDarwin [ Accelerate CoreAudio ];
 
   cmakeFlags = [
     "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/"
@@ -26,6 +29,6 @@ stdenv.mkDerivation rec {
     description = "SoapySDR plugin for amateur radio and audio devices";
     license = licenses.mit;
     maintainers = with maintainers; [ numinit ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/radio/soapybladerf/default.nix b/pkgs/applications/radio/soapybladerf/default.nix
index dca5b7702c31d..0f2b445b960e5 100644
--- a/pkgs/applications/radio/soapybladerf/default.nix
+++ b/pkgs/applications/radio/soapybladerf/default.nix
@@ -1,5 +1,6 @@
 { lib, stdenv, fetchFromGitHub, cmake, pkg-config
 , libbladeRF, soapysdr
+, libobjc, IOKit, Security
 } :
 
 let
@@ -17,7 +18,8 @@ in stdenv.mkDerivation {
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
-  buildInputs = [ libbladeRF soapysdr ];
+  buildInputs = [ libbladeRF soapysdr ]
+    ++ lib.optionals stdenv.isDarwin [ libobjc IOKit Security ];
 
   cmakeFlags = [ "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/" ];
 
@@ -27,6 +29,6 @@ in stdenv.mkDerivation {
     description = "SoapySDR plugin for BladeRF devices";
     license = licenses.lgpl21Only;
     maintainers = with maintainers; [ markuskowa ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/radio/soapyhackrf/default.nix b/pkgs/applications/radio/soapyhackrf/default.nix
index 1d2aaca9362bb..be621c0d3135e 100644
--- a/pkgs/applications/radio/soapyhackrf/default.nix
+++ b/pkgs/applications/radio/soapyhackrf/default.nix
@@ -1,5 +1,6 @@
 { lib, stdenv, fetchFromGitHub, cmake, pkg-config
 , hackrf, soapysdr
+, libobjc, IOKit, Security
 } :
 
 let
@@ -17,7 +18,8 @@ in stdenv.mkDerivation {
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
-  buildInputs = [ hackrf soapysdr ];
+  buildInputs = [ hackrf soapysdr ]
+    ++ lib.optionals stdenv.isDarwin [ libobjc IOKit Security ];
 
   cmakeFlags = [ "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/" ];
 
@@ -26,6 +28,6 @@ in stdenv.mkDerivation {
     description = "SoapySDR plugin for HackRF devices";
     license = licenses.mit;
     maintainers = with maintainers; [ markuskowa ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/radio/soapyremote/default.nix b/pkgs/applications/radio/soapyremote/default.nix
index 1433b1e9abba8..95f429aef43e0 100644
--- a/pkgs/applications/radio/soapyremote/default.nix
+++ b/pkgs/applications/radio/soapyremote/default.nix
@@ -19,11 +19,13 @@ in stdenv.mkDerivation {
 
   cmakeFlags = [ "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/" ];
 
+  NIX_CFLAGS_COMPILE = lib.optionals stdenv.isDarwin [ "-include sys/select.h" ];
+
   meta = with lib; {
     homepage = "https://github.com/pothosware/SoapyRemote";
     description = "SoapySDR plugin for remote access to SDRs";
     license = licenses.boost;
     maintainers = with maintainers; [ markuskowa ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/radio/soapyuhd/default.nix b/pkgs/applications/radio/soapyuhd/default.nix
index 864ceff4e1ddb..9220df3f5f946 100644
--- a/pkgs/applications/radio/soapyuhd/default.nix
+++ b/pkgs/applications/radio/soapyuhd/default.nix
@@ -1,5 +1,6 @@
 { lib, stdenv, fetchFromGitHub, cmake, pkg-config
 , uhd, boost, soapysdr
+, libobjc, IOKit, Security
 } :
 
 stdenv.mkDerivation rec {
@@ -14,7 +15,8 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
-  buildInputs = [ uhd boost soapysdr ];
+  buildInputs = [ uhd boost soapysdr ]
+    ++ lib.optionals stdenv.isDarwin [ libobjc IOKit Security ];
 
   cmakeFlags = [ "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/" ];
 
@@ -27,6 +29,6 @@ stdenv.mkDerivation rec {
     description = "SoapySDR plugin for UHD devices";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ markuskowa ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/radio/suscan/default.nix b/pkgs/applications/radio/suscan/default.nix
new file mode 100644
index 0000000000000..d2b13784a72cf
--- /dev/null
+++ b/pkgs/applications/radio/suscan/default.nix
@@ -0,0 +1,50 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, pkg-config
+, fftwSinglePrec
+, libsndfile
+, sigutils
+, soapysdr-with-plugins
+, libxml2
+, volk
+}:
+
+stdenv.mkDerivation rec {
+  pname = "suscan";
+  version = "unstable-2022-07-05";
+
+  src = fetchFromGitHub {
+    owner = "BatchDrake";
+    repo = "suscan";
+    rev = "37dad542b97aff24654f0bb80fb8e85af7cb84ab";
+    sha256 = "sha256-h1ogtYjkqiHb1/NAJfJ0HQIvGnZM2K/PSP5nqLXUf9M=";
+  };
+
+  postPatch = ''
+    sed -i 's/fftw3 >= 3.0/fftw3f >= 3.0/' suscan.pc.in
+  '';
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+  ];
+
+  buildInputs = [
+    fftwSinglePrec
+    libsndfile
+    sigutils
+    soapysdr-with-plugins
+    libxml2
+    volk
+  ];
+
+  meta = with lib; {
+    description = "Channel scanner based on sigutils library";
+    homepage = "https://github.com/BatchDrake/suscan";
+    license = licenses.gpl3;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ polygon oxapentane ];
+  };
+}
diff --git a/pkgs/applications/radio/suwidgets/default.nix b/pkgs/applications/radio/suwidgets/default.nix
new file mode 100644
index 0000000000000..05f6cf12d6cdc
--- /dev/null
+++ b/pkgs/applications/radio/suwidgets/default.nix
@@ -0,0 +1,51 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, qmake
+, qtbase
+, pkg-config
+, sigutils
+, fftwSinglePrec
+}:
+
+stdenv.mkDerivation rec {
+  pname = "suwidgets";
+  version = "unstable-2022-04-03";
+
+  src = fetchFromGitHub {
+    owner = "BatchDrake";
+    repo = "SuWidgets";
+    rev = "826b3eeae5b682dc063f53b427caa9c7c48131ea";
+    sha256 = "sha256-cyFLsP+8GbALdlgEnVX4201Qq/KAxb/Vv+sJqbFpvUk=";
+  };
+
+  dontWrapQtApps = true;
+
+  postPatch = ''
+    substituteInPlace SuWidgets.pri \
+      --replace "PKGCONFIG += sigutils fftw3" "PKGCONFIG += sigutils fftw3f"
+  '';
+
+  nativeBuildInputs = [
+    qmake
+    pkg-config
+  ];
+
+  buildInputs = [
+    qtbase
+    sigutils
+    fftwSinglePrec
+  ];
+
+  qmakeFlags = [
+    "SuWidgetsLib.pro"
+  ];
+
+  meta = with lib; {
+    description = "Sigutils-related widgets";
+    homepage = "https://github.com/BatchDrake/SuWidgets";
+    license = licenses.gpl3;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ polygon oxapentane ];
+  };
+}
diff --git a/pkgs/applications/radio/unixcw/default.nix b/pkgs/applications/radio/unixcw/default.nix
index 0d352609cf0dd..3fd066ec7b7bb 100644
--- a/pkgs/applications/radio/unixcw/default.nix
+++ b/pkgs/applications/radio/unixcw/default.nix
@@ -10,7 +10,8 @@ mkDerivation rec {
   patches = [
     ./remove-use-of-dlopen.patch
   ];
-  buildInputs = [ libpulseaudio alsa-lib pkg-config qtbase ];
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ libpulseaudio alsa-lib qtbase ];
   CFLAGS   ="-lasound -lpulse-simple";
 
   meta = with lib; {
diff --git a/pkgs/applications/radio/xlog/default.nix b/pkgs/applications/radio/xlog/default.nix
index 59af9a94d96b4..d47bd418f513d 100644
--- a/pkgs/applications/radio/xlog/default.nix
+++ b/pkgs/applications/radio/xlog/default.nix
@@ -11,7 +11,8 @@ stdenv.mkDerivation rec {
   # glib-2.62 deprecations
   NIX_CFLAGS_COMPILE = "-DGLIB_DISABLE_DEPRECATION_WARNINGS";
 
-  buildInputs = [ glib pkg-config gtk2 hamlib ];
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ glib gtk2 hamlib ];
 
   meta = with lib; {
     description = "An amateur radio logging program";
diff --git a/pkgs/applications/science/biology/gatk/default.nix b/pkgs/applications/science/biology/gatk/default.nix
index c0818b8336dfa..9853b0322c01b 100644
--- a/pkgs/applications/science/biology/gatk/default.nix
+++ b/pkgs/applications/science/biology/gatk/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchzip }:
+{ lib, stdenv, fetchzip, jre, makeWrapper, python3 }:
 
 stdenv.mkDerivation rec {
   pname = "gatk";
@@ -8,10 +8,19 @@ stdenv.mkDerivation rec {
     sha256 = "0hjlsl7fxf3ankyjidqhwxc70gjh6z4lnjzw6b5fldzb0qvgfvy8";
   };
 
+  nativeBuildInputs = [ makeWrapper ];
+  buildInputs = [ python3 ];
+
+  dontUnpack = true;
+
   installPhase = ''
     mkdir -p $out/bin
-    install -m755 -D $src/gatk $out/bin/
     install -m755 -D $src/gatk-package-${version}-local.jar $out/bin/
+    install -m755 -D $src/gatk-package-${version}-spark.jar $out/bin/
+    install -m755 -D $src/gatk $out/bin/
+  '';
+  postFixup = ''
+    wrapProgram $out/bin/gatk --prefix PATH : ${lib.makeBinPath [ jre ]}
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/science/biology/vcftools/default.nix b/pkgs/applications/science/biology/vcftools/default.nix
index 9f88079627e04..a4ec84d4d5060 100755
--- a/pkgs/applications/science/biology/vcftools/default.nix
+++ b/pkgs/applications/science/biology/vcftools/default.nix
@@ -11,7 +11,8 @@ stdenv.mkDerivation rec {
     sha256 = "0msb09d2cnm8rlpg8bsc1lhjddvp3kf3i9dsj1qs4qgsdlzhxkyx";
   };
 
-  buildInputs = [ autoreconfHook pkg-config zlib perl ];
+  nativeBuildInputs = [ pkg-config autoreconfHook ];
+  buildInputs = [ zlib perl ];
 
   meta = with lib; {
     description = "A set of tools written in Perl and C++ for working with VCF files, such as those generated by the 1000 Genomes Project";
diff --git a/pkgs/applications/science/chemistry/avogadro2/default.nix b/pkgs/applications/science/chemistry/avogadro2/default.nix
index 6931c8621c96f..2ff0cab1847a9 100644
--- a/pkgs/applications/science/chemistry/avogadro2/default.nix
+++ b/pkgs/applications/science/chemistry/avogadro2/default.nix
@@ -12,13 +12,13 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "avogadro2";
-  version = "1.95.1";
+  version = "1.97.0";
 
   src = fetchFromGitHub {
     owner = "OpenChemistry";
     repo = "avogadroapp";
     rev = version;
-    sha256 = "9GnsxQsMuik6CPDmJbJPF0/+LXbZHf/JLevpSsMEoP0=";
+    hash = "sha256-gZpMgFSPz70QNfd8gH5Jb9RTxQfQalWx33LkgXLEqOQ=";
   };
 
   postUnpack = ''
diff --git a/pkgs/applications/science/chemistry/cp2k/default.nix b/pkgs/applications/science/chemistry/cp2k/default.nix
index 26cf411cb78aa..01fbfb1ccf9c0 100644
--- a/pkgs/applications/science/chemistry/cp2k/default.nix
+++ b/pkgs/applications/science/chemistry/cp2k/default.nix
@@ -11,13 +11,13 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "cp2k";
-  version = "9.1.0";
+  version = "2022.2";
 
   src = fetchFromGitHub {
     owner = "cp2k";
     repo = "cp2k";
     rev = "v${version}";
-    hash = "sha256-P9RwZmrE1E0UTQVasQxWAqa3LBLyJNGeJo8T6u5WWcw=";
+    hash = "sha256-zDIsgPcLnA0ATJEN1vQClpkToqvIyW7KuXhyGiXJXDw=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/applications/science/chemistry/jmol/default.nix b/pkgs/applications/science/chemistry/jmol/default.nix
index ea0eba2249e96..c72a4ace2480a 100644
--- a/pkgs/applications/science/chemistry/jmol/default.nix
+++ b/pkgs/applications/science/chemistry/jmol/default.nix
@@ -25,14 +25,14 @@ let
   };
 in
 stdenv.mkDerivation rec {
-  version = "14.32.75";
+  version = "14.32.76";
   pname = "jmol";
 
   src = let
     baseVersion = "${lib.versions.major version}.${lib.versions.minor version}";
   in fetchurl {
     url = "mirror://sourceforge/jmol/Jmol/Version%20${baseVersion}/Jmol%20${version}/Jmol-${version}-binary.tar.gz";
-    sha256 = "sha256-2D2WBrBmmA84RVLsICFMeQKLvv5nIekbS/EGlmlvtYQ=";
+    sha256 = "sha256-KdQZKiAJFKE2PW0/DdZGIOC8QQ1icQR+TY4hoXCQdxg=";
   };
 
   patchPhase = ''
diff --git a/pkgs/applications/science/chemistry/octopus/default.nix b/pkgs/applications/science/chemistry/octopus/default.nix
index 25749b8947c4a..df9b35a244662 100644
--- a/pkgs/applications/science/chemistry/octopus/default.nix
+++ b/pkgs/applications/science/chemistry/octopus/default.nix
@@ -11,13 +11,13 @@ assert (!blas.isILP64) && (!lapack.isILP64);
 
 stdenv.mkDerivation rec {
   pname = "octopus";
-  version = "11.4";
+  version = "12.0";
 
   src = fetchFromGitLab {
     owner = "octopus-code";
     repo = "octopus";
     rev = version;
-    sha256 = "1z423sjpc4ajjy3s7623z3rfwmp2hgis7iiiy8gb5apw73k33dyv";
+    sha256 = "sha256-OF6zcyxtWXxMUIAB8YxQ3453JAmw6Q3RnNMjr4HgTmE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/science/chemistry/pymol/default.nix b/pkgs/applications/science/chemistry/pymol/default.nix
index c281f63b3bf87..4ad0380ef1e31 100644
--- a/pkgs/applications/science/chemistry/pymol/default.nix
+++ b/pkgs/applications/science/chemistry/pymol/default.nix
@@ -7,12 +7,11 @@
 , netcdf
 , glew
 , glm
-, freeglut
 , libpng
 , libxml2
-, tk
 , freetype
 , msgpack
+, qt5
 }:
 let
   pname = "pymol";
@@ -47,12 +46,11 @@ python3Packages.buildPythonApplication rec {
     sha256 = "sha256-JdsgcVF1w1xFPZxVcyS+GcWg4a1Bd4SvxFOuSdlz9SM=";
   };
 
-  buildInputs = [ python3Packages.numpy glew glm freeglut libpng libxml2 tk freetype msgpack netcdf ];
+  nativeBuildInputs = [ qt5.wrapQtAppsHook ];
+  buildInputs = [ python3Packages.numpy python3Packages.pyqt5 glew glm libpng libxml2 freetype msgpack netcdf ];
   NIX_CFLAGS_COMPILE = "-I ${libxml2.dev}/include/libxml2";
   hardeningDisable = [ "format" ];
 
-  setupPyBuildFlags = [ "--glut" ];
-
   installPhase = ''
     python setup.py install --home="$out"
     runHook postInstall
@@ -60,13 +58,17 @@ python3Packages.buildPythonApplication rec {
 
   postInstall = with python3Packages; ''
     wrapProgram $out/bin/pymol \
-      --prefix PYTHONPATH : ${lib.makeSearchPathOutput "lib" python3.sitePackages [ Pmw tkinter ]}
+      --prefix PYTHONPATH : ${lib.makeSearchPathOutput "lib" python3.sitePackages [ pyqt5 pyqt5.pyqt5_sip ]}
 
     mkdir -p "$out/share/icons/"
     ln -s ../../lib/python/pymol/pymol_path/data/pymol/icons/icon2.svg "$out/share/icons/pymol.svg"
     cp -r "${desktopItem}/share/applications/" "$out/share/"
   '';
 
+  preFixup = ''
+    wrapQtApp "$out/bin/pymol"
+  '';
+
   meta = with lib; {
     broken = stdenv.isDarwin;
     inherit description;
diff --git a/pkgs/applications/science/electronics/librepcb/default.nix b/pkgs/applications/science/electronics/librepcb/default.nix
index 15b64938b2565..bd824ac288891 100644
--- a/pkgs/applications/science/electronics/librepcb/default.nix
+++ b/pkgs/applications/science/electronics/librepcb/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "librepcb";
-  version = "0.1.6";
+  version = "0.1.7";
 
   src = fetchFromGitHub {
     owner  = pname;
     repo   = pname;
     rev    = version;
-    sha256 = "0gzf3asdgdicpikb412134ybqnbbark948yrfhvba2w4i9cwbk2r";
+    sha256 = "sha256-zqvvc3CHqdRWVUFt4BkH5Vq50/FKNvMNW2NvGyfWwFM=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/applications/science/electronics/pcb/default.nix b/pkgs/applications/science/electronics/pcb/default.nix
index d28f1d1812159..f8623d9a7bf7b 100644
--- a/pkgs/applications/science/electronics/pcb/default.nix
+++ b/pkgs/applications/science/electronics/pcb/default.nix
@@ -8,7 +8,8 @@
 , netpbm
 , imagemagick
 , dbus
-, xlibsWrapper
+, freetype
+, fontconfig
 , libGLU
 , libGL
 , shared-mime-info
@@ -40,7 +41,9 @@ stdenv.mkDerivation rec {
   buildInputs = [
     gtk2
     dbus
-    xlibsWrapper
+    xorg.libXrender
+    freetype
+    fontconfig
     libGLU
     libGL
     tcl
diff --git a/pkgs/applications/science/electronics/verilator/default.nix b/pkgs/applications/science/electronics/verilator/default.nix
index ee84c15a22cf6..b9cc2274a3d68 100644
--- a/pkgs/applications/science/electronics/verilator/default.nix
+++ b/pkgs/applications/science/electronics/verilator/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "verilator";
-  version = "4.224";
+  version = "4.226";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Kn44yWkNcOLkc79HLDTxx5zQn/vqft+hhbvsoUAKR7I=";
+    sha256 = "sha256-X6Kwpcm+ugu+4gVkWfsqdCPFTESHzJ1jjCPnGqE3/vo=";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/science/geometry/drgeo/default.nix b/pkgs/applications/science/geometry/drgeo/default.nix
index 59d7315ef4132..0cc8bcb0fb386 100644
--- a/pkgs/applications/science/geometry/drgeo/default.nix
+++ b/pkgs/applications/science/geometry/drgeo/default.nix
@@ -13,8 +13,9 @@ stdenv.mkDerivation rec {
   };
   patches = [ ./struct.patch ];
 
+  nativeBuildInputs = [ pkg-config intltool ];
   buildInputs = [libglade gtk2 guile libxml2
-    perl intltool libtool pkg-config];
+    perl libtool ];
 
   prebuild = ''
     cp drgeo.desktop.in drgeo.desktop
diff --git a/pkgs/applications/science/math/R/default.nix b/pkgs/applications/science/math/R/default.nix
index 74f27fa534e21..1c8c565528e9f 100644
--- a/pkgs/applications/science/math/R/default.nix
+++ b/pkgs/applications/science/math/R/default.nix
@@ -23,10 +23,11 @@ stdenv.mkDerivation rec {
 
   dontUseImakeConfigure = true;
 
+  nativeBuildInputs = [ pkg-config ];
   buildInputs = [
     bzip2 gfortran libX11 libXmu libXt libXt libjpeg libpng libtiff ncurses
     pango pcre2 perl readline texLive xz zlib less texinfo graphviz icu
-    pkg-config bison imake which blas lapack curl tcl tk jdk
+    bison imake which blas lapack curl tcl tk jdk
   ] ++ lib.optionals stdenv.isDarwin [ Cocoa Foundation libobjc libcxx ];
 
   patches = [
diff --git a/pkgs/applications/science/math/readstat/default.nix b/pkgs/applications/science/math/readstat/default.nix
new file mode 100644
index 0000000000000..51ee824b6ff14
--- /dev/null
+++ b/pkgs/applications/science/math/readstat/default.nix
@@ -0,0 +1,22 @@
+{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config }:
+
+stdenv.mkDerivation rec {
+  name = "readstat";
+  version = "1.1.8";
+
+  src = fetchFromGitHub {
+    owner = "WizardMac";
+    repo = "ReadStat";
+    rev = "v${version}";
+    sha256 = "1r04lq45h1yn34v1mgfiqjfzyaqv4axqlby0nkandamcsqyhc7y4";
+  };
+
+  nativeBuildInputs = [ pkg-config autoreconfHook ];
+
+  meta = {
+    homepage = "https://github.com/WizardMac/ReadStat";
+    description = "Command-line tool (+ C library) for converting SAS, Stata, and SPSS files";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ swflint ];
+  };
+}
diff --git a/pkgs/applications/science/math/sage/sage-with-env.nix b/pkgs/applications/science/math/sage/sage-with-env.nix
index 23069f335b8fe..7632b851773c2 100644
--- a/pkgs/applications/science/math/sage/sage-with-env.nix
+++ b/pkgs/applications/science/math/sage/sage-with-env.nix
@@ -28,9 +28,9 @@ assert (!blas.isILP64) && (!lapack.isILP64);
 # executable sage. No tests are run yet and no documentation is built.
 
 let
+  nativeBuildInputs = [ pkg-config ];
   buildInputs = [
     pythonEnv # for patchShebangs
-    pkg-config
     blas lapack
     singular
     three
@@ -72,7 +72,7 @@ let
       []
     );
 
-  allInputs = lib.remove null (buildInputs ++ pythonEnv.extraLibs ++ [ makeWrapper ]);
+  allInputs = lib.remove null (nativeBuildInputs ++ buildInputs ++ pythonEnv.extraLibs ++ [ makeWrapper ]);
   transitiveDeps = lib.unique (builtins.concatLists (map transitiveClosure allInputs ));
   # fix differences between spkg and sage names
   # (could patch sage instead, but this is more lightweight and also works for packages depending on sage)
@@ -91,7 +91,7 @@ stdenv.mkDerivation rec {
   pname = "sage-with-env";
   src = sage-env.lib.src;
 
-  inherit buildInputs;
+  inherit nativeBuildInputs buildInputs;
 
   configurePhase = "#do nothing";
 
diff --git a/pkgs/applications/science/misc/simgrid/default.nix b/pkgs/applications/science/misc/simgrid/default.nix
index 8db9245ed33ed..31aee617c44dc 100644
--- a/pkgs/applications/science/misc/simgrid/default.nix
+++ b/pkgs/applications/science/misc/simgrid/default.nix
@@ -20,14 +20,14 @@ in
 
 stdenv.mkDerivation rec {
   pname = "simgrid";
-  version = "3.31";
+  version = "3.32";
 
   src = fetchFromGitLab {
     domain = "framagit.org";
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-K6YkkCMxc2lqxHIwyuLiwcp3m49sqbEtOlwZh4L1YJg=";
+    sha256 = "sha256-o25wOROkUm07JPdNTJQcJw6apeoysnjd+YBMHlPpAYI=";
   };
 
   propagatedBuildInputs = [ boost ];
diff --git a/pkgs/applications/science/physics/crystfel/default.nix b/pkgs/applications/science/physics/crystfel/default.nix
index 85b18eb82fd76..81c1fdd6b0549 100644
--- a/pkgs/applications/science/physics/crystfel/default.nix
+++ b/pkgs/applications/science/physics/crystfel/default.nix
@@ -166,7 +166,7 @@ stdenv.mkDerivation rec {
     url = "https://www.desy.de/~twhite/${pname}/${pname}-${version}.tar.gz";
     sha256 = "0i9d5ggalic7alj97dxjdys7010kxhm2cb4lwakvigl023j8ms79";
   };
-  nativeBuildInputs = [ meson pkg-config ninja flex bison doxygen opencl-headers ]
+  nativeBuildInputs = [ meson pkg-config ninja flex bison doxygen opencl-headers makeWrapper ]
     ++ lib.optionals withGui [ wrapGAppsHook ];
   buildInputs = [
     hdf5
diff --git a/pkgs/applications/terminal-emulators/kitty/default.nix b/pkgs/applications/terminal-emulators/kitty/default.nix
index 28dad82fe1626..b6a6ca7780fb6 100644
--- a/pkgs/applications/terminal-emulators/kitty/default.nix
+++ b/pkgs/applications/terminal-emulators/kitty/default.nix
@@ -4,6 +4,7 @@
 , libxkbcommon, libXi, libXext, wayland-protocols, wayland
 , lcms2
 , librsync
+, openssl
 , installShellFiles
 , dbus
 , darwin
@@ -27,14 +28,14 @@
 with python3Packages;
 buildPythonApplication rec {
   pname = "kitty";
-  version = "0.25.2";
+  version = "0.26.2";
   format = "other";
 
   src = fetchFromGitHub {
     owner = "kovidgoyal";
     repo = "kitty";
     rev = "v${version}";
-    sha256 = "sha256-o/vVz1lPfsgkzbYjYhIrScCAROmVdiPsNwjW/m5n7Us=";
+    sha256 = "sha256-IqXRkKzOfqWolH/534nmM2R/69olhFOk6wbbF4ifRd0=";
   };
 
   buildInputs = [
@@ -42,6 +43,7 @@ buildPythonApplication rec {
     ncurses
     lcms2
     librsync
+    openssl.dev
   ] ++ lib.optionals stdenv.isDarwin [
     Cocoa
     CoreGraphics
@@ -77,6 +79,9 @@ buildPythonApplication rec {
   outputs = [ "out" "terminfo" "shell_integration" ];
 
   patches = [
+    # Gets `test_ssh_env_vars` to pass when `bzip2` is in the output of `env`.
+    ./fix-test_ssh_env_vars.patch
+
     # Needed on darwin
 
     # Gets `test_ssh_shell_integration` to pass for `zsh` when `compinit` complains about
@@ -98,14 +103,18 @@ buildPythonApplication rec {
       --update-check-interval=0 \
       --shell-integration=enabled\ no-rc
     '';
+    darwinOptions = ''
+      --disable-link-time-optimization \
+      ${commonOptions}
+    '';
   in ''
     runHook preBuild
     ${if stdenv.isDarwin then ''
-      ${python.interpreter} setup.py kitty.app \
-      --disable-link-time-optimization \
-      ${commonOptions}
-      make man
+      ${python.interpreter} setup.py build ${darwinOptions}
+      make docs
+      ${python.interpreter} setup.py kitty.app ${darwinOptions}
     '' else ''
+      ${python.interpreter} setup.py build-launcher
       ${python.interpreter} setup.py linux-package \
       --egl-library='${lib.getLib libGL}/lib/libEGL.so.1' \
       --startup-notification-library='${libstartup_notification}/lib/libstartup-notification-1.so' \
@@ -126,7 +135,7 @@ buildPythonApplication rec {
   ];
 
   # skip failing tests due to darwin sandbox
-  preCheck = if stdenv.isDarwin then ''
+  preCheck = lib.optionalString stdenv.isDarwin ''
     substituteInPlace kitty_tests/file_transmission.py \
       --replace test_file_get dont_test_file_get \
       --replace test_path_mapping_receive dont_test_path_mapping_receive
@@ -138,15 +147,9 @@ buildPythonApplication rec {
       --replace test_ssh_connection_data dont_test_ssh_connection_data
     substituteInPlace kitty_tests/fonts.py \
       --replace 'class Rendering(BaseTest)' 'class Rendering'
-  '' else "";
+  '';
 
-  checkPhase =
-    let buildBinPath =
-      if stdenv.isDarwin
-        then "kitty.app/Contents/MacOS"
-        else "linux-package/bin";
-    in
-    ''
+  checkPhase = ''
       runHook preCheck
 
       # Fontconfig error: Cannot load default config file: No such file: (null)
@@ -155,7 +158,8 @@ buildPythonApplication rec {
       # Required for `test_ssh_shell_integration` to pass.
       export TERM=kitty
 
-      env PATH="${buildBinPath}:$PATH" ${python.interpreter} test.py
+      make test
+      runHook postCheck
     '';
 
   installPhase = ''
diff --git a/pkgs/applications/terminal-emulators/kitty/fix-test_ssh_env_vars.patch b/pkgs/applications/terminal-emulators/kitty/fix-test_ssh_env_vars.patch
new file mode 100644
index 0000000000000..719b38b48159d
--- /dev/null
+++ b/pkgs/applications/terminal-emulators/kitty/fix-test_ssh_env_vars.patch
@@ -0,0 +1,13 @@
+diff --git a/kitty_tests/ssh.py b/kitty_tests/ssh.py
+index 7b3bdbeb..710aeceb 100644
+--- a/kitty_tests/ssh.py
++++ b/kitty_tests/ssh.py
+@@ -272,8 +272,6 @@ def check_bootstrap(self, sh, home_dir, login_shell='', SHELL_INTEGRATION_VALUE=
+ 
+             def check_untar_or_fail():
+                 q = pty.screen_contents()
+-                if 'bzip2' in q:
+-                    raise ValueError('Untarring failed with screen contents:\n' + q)
+                 return 'UNTAR_DONE' in q
+             pty.wait_till(check_untar_or_fail)
+             self.assertTrue(os.path.exists(os.path.join(home_dir, '.terminfo/kitty.terminfo')))
diff --git a/pkgs/applications/terminal-emulators/mrxvt/default.nix b/pkgs/applications/terminal-emulators/mrxvt/default.nix
index 006616bd944cd..b05872b11e4de 100644
--- a/pkgs/applications/terminal-emulators/mrxvt/default.nix
+++ b/pkgs/applications/terminal-emulators/mrxvt/default.nix
@@ -22,7 +22,8 @@ stdenv.mkDerivation rec {
     sha256 = "1mqhmnlz32lvld9rc6c1hyz7gjw4anwf39yhbsjkikcgj1das0zl";
   };
 
-  buildInputs = [ libX11 libXft libXi xorgproto libSM libICE freetype pkg-config which ];
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ libX11 libXft libXi xorgproto libSM libICE freetype which ];
 
   configureFlags = [
     "--with-x"
diff --git a/pkgs/applications/terminal-emulators/rxvt-unicode/default.nix b/pkgs/applications/terminal-emulators/rxvt-unicode/default.nix
index 0eccceb5a4f68..ede0638e7a042 100644
--- a/pkgs/applications/terminal-emulators/rxvt-unicode/default.nix
+++ b/pkgs/applications/terminal-emulators/rxvt-unicode/default.nix
@@ -44,9 +44,10 @@ stdenv.mkDerivation {
     sha256 = "0badnkjsn3zps24r5iggj8k5v4f00npc77wqg92pcn1q5z8r677y";
   };
 
+  nativeBuildInputs = [ pkg-config ];
   buildInputs =
     [ libX11 libXt libXft ncurses  # required to build the terminfo file
-      fontconfig freetype pkg-config libXrender
+      fontconfig freetype libXrender
       libptytty
     ] ++ optional perlSupport perl
       ++ optional gdkPixbufSupport gdk-pixbuf;
diff --git a/pkgs/applications/terminal-emulators/tym/default.nix b/pkgs/applications/terminal-emulators/tym/default.nix
new file mode 100644
index 0000000000000..b85133e7aecb1
--- /dev/null
+++ b/pkgs/applications/terminal-emulators/tym/default.nix
@@ -0,0 +1,33 @@
+{ lib, stdenv, fetchFromGitHub, pkg-config, autoreconfHook, gtk3, vte, lua5_3, pcre2 }:
+
+stdenv.mkDerivation rec {
+  pname = "tym";
+  version = "3.3.0";
+
+  src = fetchFromGitHub {
+    owner = "endaaman";
+    repo = "${pname}";
+    rev = "${version}";
+    sha256 = "sha256-ufIYJgbHmSJJbnx4hyDx0DmIjaGCxKXtiekcXcyka14=";
+  };
+
+  nativeBuildInputs = [
+    pkg-config
+    autoreconfHook
+  ];
+
+  buildInputs = [
+    gtk3
+    vte
+    lua5_3
+    pcre2
+  ];
+
+  meta = with lib; {
+    description = "Lua-configurable terminal emulator";
+    homepage = "https://github.com/endaaman/tym";
+    license = licenses.mit;
+    maintainers = [ maintainers.wesleyjrz ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/terminal-emulators/xterm/default.nix b/pkgs/applications/terminal-emulators/xterm/default.nix
index 278332ca6a36d..40bab79b89718 100644
--- a/pkgs/applications/terminal-emulators/xterm/default.nix
+++ b/pkgs/applications/terminal-emulators/xterm/default.nix
@@ -4,14 +4,14 @@
 
 stdenv.mkDerivation rec {
   pname = "xterm";
-  version = "372";
+  version = "373";
 
   src = fetchurl {
     urls = [
       "ftp://ftp.invisible-island.net/xterm/${pname}-${version}.tgz"
       "https://invisible-mirror.net/archives/xterm/${pname}-${version}.tgz"
     ];
-    sha256 = "xtCBJ8skCcOgS8rlWbcCUZbtdwu3vyZjCry0XZX2CrE=";
+    sha256 = "sha256-3rCYlHOmOQi1qNRN/uqDAchxD2zgH7V86MMAAjdXRrY=";
   };
 
   strictDeps = true;
diff --git a/pkgs/applications/version-management/dvc/default.nix b/pkgs/applications/version-management/dvc/default.nix
index b8361d8bd7035..6f1c4fe185773 100644
--- a/pkgs/applications/version-management/dvc/default.nix
+++ b/pkgs/applications/version-management/dvc/default.nix
@@ -23,7 +23,8 @@ python3.pkgs.buildPythonApplication rec {
   postPatch = ''
     substituteInPlace setup.cfg \
       --replace "grandalf==0.6" "grandalf" \
-      --replace "scmrepo==0.0.25" "scmrepo"
+      --replace "scmrepo==0.0.25" "scmrepo" \
+      --replace "pathspec>=0.9.0,<0.10.0" "pathspec"
     substituteInPlace dvc/daemon.py \
       --subst-var-by dvc "$out/bin/dcv"
   '';
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 60e0d9d28d056..4a4367bfdf7e5 100644
--- a/pkgs/applications/version-management/git-and-tools/gh/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/gh/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "gh";
-  version = "2.16.1";
+  version = "2.17.0";
 
   src = fetchFromGitHub {
     owner = "cli";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "sha256-I8/vO7SfZr4JVbFNBgIaP7CwHn7q6CMIZMjLBsTLY2Q=";
+    sha256 = "sha256-2GDhDmk7AVb2DGxibIQM0b7hj2iGvjeLJ4+vAZggxtk=";
   };
 
   vendorSha256 = "sha256-TVMFOit2pi+ZVcppzs0iKNXluDW9ZQDH2d7cPSzg+ak=";
diff --git a/pkgs/applications/version-management/git-and-tools/git-branchless/default.nix b/pkgs/applications/version-management/git-and-tools/git-branchless/default.nix
index c6cd7079191d4..640be8547c02a 100644
--- a/pkgs/applications/version-management/git-and-tools/git-branchless/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-branchless/default.nix
@@ -1,6 +1,5 @@
 { lib
 , fetchFromGitHub
-, fetchpatch
 , git
 , libiconv
 , ncurses
@@ -15,24 +14,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "git-branchless";
-  version = "0.5.0";
+  version = "0.5.1";
 
   src = fetchFromGitHub {
     owner = "arxanas";
     repo = "git-branchless";
     rev = "v${version}";
-    sha256 = "sha256-jAc17poNTld3eptN1Vd1MOKS5iloMWkq3oZgpWBkGTY=";
+    sha256 = "sha256-xh+G9bKEL2ho1YrNVTLbCTxSWZtjEuEWutvYEFr2G/g=";
   };
 
-  cargoPatches = [
-    (fetchpatch {
-      name = "build-run-cargo-update";
-      url = "https://github.com/arxanas/git-branchless/commit/0ac3f325520f79d15368aa9d14893ebc17313ab6.patch";
-      sha256 = "sha256-S1kazUzvz3FzFpphSRhWiv/l2b/+zC9HtAl7ndq5aJA=";
-    })
-  ];
-
-  cargoSha256 = "sha256-Lo/Q6OSIzWrRNiTGsOWRX+6FEcj4fk1kn7V9tw67UVo=";
+  cargoSha256 = "sha256-Zz1RQ/mhdIbPiw2StGtTiORXiJ2nVLyZakt1072ha6U=";
 
   nativeBuildInputs = [ pkg-config ];
 
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 95327f31ddcde..9b2c755b1091a 100644
--- a/pkgs/applications/version-management/git-and-tools/git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git/default.nix
@@ -74,7 +74,7 @@ stdenv.mkDerivation (finalAttrs: {
     done
   '';
 
-  nativeBuildInputs = [ gettext perlPackages.perl makeWrapper ]
+  nativeBuildInputs = [ gettext perlPackages.perl makeWrapper pkg-config ]
     ++ lib.optionals withManual [ asciidoc texinfo xmlto docbook2x
          docbook_xsl docbook_xml_dtd_45 libxslt ];
   buildInputs = [ curl openssl zlib expat cpio libiconv bash ]
@@ -82,7 +82,7 @@ stdenv.mkDerivation (finalAttrs: {
     ++ lib.optionals guiSupport [tcl tk]
     ++ lib.optionals withpcre2 [ pcre2 ]
     ++ lib.optionals stdenv.isDarwin [ Security CoreServices ]
-    ++ lib.optionals withLibsecret [ pkg-config glib libsecret ];
+    ++ lib.optionals withLibsecret [ glib libsecret ];
 
   # required to support pthread_cancel()
   NIX_LDFLAGS = lib.optionalString (stdenv.cc.isGNU && stdenv.hostPlatform.libc == "glibc") "-lgcc_s"
@@ -252,7 +252,7 @@ stdenv.mkDerivation (finalAttrs: {
       '')
 
    + lib.optionalString withManual ''# Install man pages
-       make -j $NIX_BUILD_CORES -l $NIX_BUILD_CORES PERL_PATH="${buildPackages.perl}/bin/perl" cmd-list.made install install-html \
+       make -j $NIX_BUILD_CORES PERL_PATH="${buildPackages.perl}/bin/perl" cmd-list.made install install-html \
          -C Documentation ''
 
    + (if guiSupport then ''
diff --git a/pkgs/applications/version-management/git-and-tools/tig/default.nix b/pkgs/applications/version-management/git-and-tools/tig/default.nix
index f4416dcc13408..344a10cf2ec56 100644
--- a/pkgs/applications/version-management/git-and-tools/tig/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/tig/default.nix
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://jonas.github.io/tig/";
     description = "Text-mode interface for git";
-    maintainers = with maintainers; [ bjornfor domenkozar qknight globin ma27 ];
+    maintainers = with maintainers; [ bjornfor domenkozar qknight globin ma27 srapenne ];
     license = licenses.gpl2Plus;
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/version-management/gitlab/default.nix b/pkgs/applications/version-management/gitlab/default.nix
index aee4ee3df1b62..47ca0f4f48d3c 100644
--- a/pkgs/applications/version-management/gitlab/default.nix
+++ b/pkgs/applications/version-management/gitlab/default.nix
@@ -50,15 +50,15 @@ let
     extraConfigPaths = lib.forEach data.vendored_gems (gem: "${src}/vendor/gems/${gem}");
   };
 
-  yarnOfflineCache = fetchYarnDeps {
-    yarnLock = src + "/yarn.lock";
-    sha256 = data.yarn_hash;
-  };
-
   assets = stdenv.mkDerivation {
     pname = "gitlab-assets";
     inherit version src;
 
+    yarnOfflineCache = fetchYarnDeps {
+      yarnLock = src + "/yarn.lock";
+      sha256 = data.yarn_hash;
+    };
+
     nativeBuildInputs = [ rubyEnv.wrappedRuby rubyEnv.bundler nodejs yarn git cacert ];
 
     patches = [
@@ -91,7 +91,7 @@ let
       export HOME=$NIX_BUILD_TOP/fake_home
 
       # Make yarn install packages from our offline cache, not the registry
-      yarn config --offline set yarn-offline-mirror ${yarnOfflineCache}
+      yarn config --offline set yarn-offline-mirror $yarnOfflineCache
 
       # Fixup "resolved"-entries in yarn.lock to match our offline cache
       ${fixup_yarn_lock}/bin/fixup_yarn_lock yarn.lock
diff --git a/pkgs/applications/version-management/mercurial/default.nix b/pkgs/applications/version-management/mercurial/default.nix
index 261368272b3f3..a5c6dc8c27466 100644
--- a/pkgs/applications/version-management/mercurial/default.nix
+++ b/pkgs/applications/version-management/mercurial/default.nix
@@ -21,11 +21,11 @@ let
 
   self = python3Packages.buildPythonApplication rec {
     pname = "mercurial${lib.optionalString fullBuild "-full"}";
-    version = "6.2.2";
+    version = "6.2.3";
 
     src = fetchurl {
       url = "https://mercurial-scm.org/release/mercurial-${version}.tar.gz";
-      sha256 = "sha256-nvqdpfSXqHUKycSPpDHEq3IgnxNgGAxdSSDRMRsEIN8=";
+      sha256 = "sha256-mNGuAC9orfU9ZcWUf+i3o3n5jPBdm46h9Ad9LKXc6ds=";
     };
 
     format = "other";
@@ -35,7 +35,7 @@ let
     cargoDeps = if rustSupport then rustPlatform.fetchCargoTarball {
       inherit src;
       name = "mercurial-${version}";
-      sha256 = "sha256-hvjp45Iv+fjs8R5Q+k96chY5j0S2Vs6+VrXzMuc2Cwg=";
+      sha256 = "sha256-UWYXVPdEMITLNdBjnoo8IuLOGZiwUJL+dqSl26nf5qs=";
       sourceRoot = "mercurial-${version}/rust";
     } else null;
     cargoRoot = if rustSupport then "rust" else null;
diff --git a/pkgs/applications/version-management/p4/default.nix b/pkgs/applications/version-management/p4/default.nix
index 4f61be6669aa1..8a54d4eb77bf2 100644
--- a/pkgs/applications/version-management/p4/default.nix
+++ b/pkgs/applications/version-management/p4/default.nix
@@ -1,31 +1,115 @@
-{ stdenv, fetchurl, lib, autoPatchelfHook }:
+{ stdenv
+, fetchurl
+, fetchzip
+, lib
+, emptyDirectory
+, linkFarm
+, symlinkJoin
+, jam
+, libcxx
+, libcxxabi
+, openssl
+, xcbuild
+, CoreServices
+, Foundation
+, Security
+}:
 
+let
+  opensslStatic = openssl.override {
+    static = true;
+  };
+  androidZlibContrib =
+    let
+      src = fetchzip {
+        url = "https://android.googlesource.com/platform/external/zlib/+archive/61174f4fd262c6075f88768465f308aae95a2f04.tar.gz";
+        sha256 = "sha256-EMzKAHcEWOUugcHKH2Fj3ZaIHC9UlgO4ULKe3RvgxvI=";
+        stripRoot = false;
+      };
+    in
+    linkFarm "android-zlib-contrib" [
+      # We only want to keep the contrib directory as the other files conflict
+      # with p4's own zlib files. (For the same reason, we can't use the
+      # cone-based Git sparse checkout, either.)
+      { name = "contrib"; path = "${src}/contrib"; }
+    ];
+  libcxxUnified = symlinkJoin {
+    inherit (libcxx) name;
+    paths = [ libcxx libcxxabi ];
+  };
+in
 stdenv.mkDerivation rec {
   pname = "p4";
-  version = "2021.2.2201121";
+  version = "2022.1.2305383";
 
   src = fetchurl {
-    # actually  https://cdist2.perforce.com/perforce/r21.2/bin.linux26x86_64/helix-core-server.tgz but upstream deletes releases
-    url = "https://web.archive.org/web/20211118024943/https://cdist2.perforce.com/perforce/r21.2/bin.linux26x86_64/helix-core-server.tgz";
-    sha256 = "sha256-SrfI2ZD7KDyttCd8+fo8g4UZKljYYO/SbzqrS9tAcC8=";
+    # Upstream replaces minor versions, so use archived URL.
+    url = "https://web.archive.org/web/20220901184735id_/https://ftp.perforce.com/perforce/r22.1/bin.tools/p4source.tgz";
+    sha256 = "27ab3ddd7b178b05cf0b710e941650dac0688d294110ebafda9027732c0944c6";
   };
 
-  sourceRoot = ".";
+  nativeBuildInputs = [ jam ];
+
+  buildInputs = lib.optionals stdenv.isDarwin [ CoreServices Foundation Security ];
+
+  outputs = [ "out" "bin" "dev" ];
 
-  dontBuild = true;
+  hardeningDisable = lib.optionals stdenv.isDarwin [ "strictoverflow" ];
 
-  nativeBuildInputs = [ autoPatchelfHook ];
+  jamFlags =
+    [
+      "-sEXEC=bin.unix"
+      "-sCROSS_COMPILE=${stdenv.cc.targetPrefix}"
+      "-sMALLOC_OVERRIDE=no"
+      "-sSSLINCDIR=${lib.getDev opensslStatic}/include"
+      "-sSSLLIBDIR=${lib.getLib opensslStatic}/lib"
+    ]
+    ++ lib.optionals stdenv.cc.isClang [ "-sOSCOMP=clang" "-sCLANGVER=${stdenv.cc.cc.version}" ]
+    ++ lib.optionals stdenv.cc.isGNU [ "-sOSCOMP=gcc" "-sGCCVER=${stdenv.cc.cc.version}" ]
+    ++ lib.optionals stdenv.isLinux [ "-sOSVER=26" ]
+    ++ lib.optionals stdenv.isDarwin [
+      "-sOSVER=1013"
+      "-sMACOSX_SDK=${emptyDirectory}"
+      "-sLIBC++DIR=${libcxxUnified}/lib"
+    ];
+
+  CCFLAGS =
+    # The file contrib/optimizations/slide_hash_neon.h is missing from the
+    # upstream distribution. It comes from the Android/Chromium sources.
+    lib.optionals stdenv.isAarch64 [ "-I${androidZlibContrib}" ];
+
+  "C++FLAGS" =
+    # Avoid a compilation error that only occurs for 4-byte longs.
+    lib.optionals stdenv.isi686 [ "-Wno-narrowing" ]
+    # See the "Header dependency changes" section of
+    # https://www.gnu.org/software/gcc/gcc-11/porting_to.html for more
+    # information on why we need to include these.
+    ++ lib.optionals
+      (stdenv.cc.isClang || (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.cc.version "11.0.0"))
+      [ "-include" "limits" "-include" "thread" ];
+
+  buildPhase = ''
+    runHook preBuild
+    jam $jamFlags -j$NIX_BUILD_CORES p4
+    jam $jamFlags -j$NIX_BUILD_CORES -sPRODUCTION=yes p4api.tar
+    runHook postBuild
+  '';
 
   installPhase = ''
-    install -D --target $out/bin p4 p4broker p4d p4p
+    runHook preInstall
+    mkdir -p $bin/bin $dev $out
+    cp bin.unix/p4 $bin/bin
+    cp -r bin.unix/p4api-${version}/include $dev
+    cp -r bin.unix/p4api-${version}/lib $out
+    runHook postInstall
   '';
 
-  meta = {
-    description = "Perforce Command-Line Client";
+  meta = with lib; {
+    description = "Perforce Helix Core command-line client and APIs";
     homepage = "https://www.perforce.com";
-    sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
-    license = lib.licenses.unfree;
-    platforms = [ "x86_64-linux" ];
-    maintainers = with lib.maintainers; [ corngood ];
+    license = licenses.bsd2;
+    mainProgram = "p4";
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ corngood impl ];
   };
 }
diff --git a/pkgs/applications/version-management/p4d/default.nix b/pkgs/applications/version-management/p4d/default.nix
index 5b98131303d3b..e2cf8e1013c3d 100644
--- a/pkgs/applications/version-management/p4d/default.nix
+++ b/pkgs/applications/version-management/p4d/default.nix
@@ -47,6 +47,6 @@ stdenv.mkDerivation {
     license = licenses.unfree;
     mainProgram = "p4d";
     platforms = builtins.attrNames srcs;
-    maintainers = with maintainers; [ impl ];
+    maintainers = with maintainers; [ corngood impl ];
   };
 }
diff --git a/pkgs/applications/version-management/redmine/Gemfile b/pkgs/applications/version-management/redmine/Gemfile
index 3b22a9d50743f..7e5cf752bc884 100644
--- a/pkgs/applications/version-management/redmine/Gemfile
+++ b/pkgs/applications/version-management/redmine/Gemfile
@@ -3,7 +3,7 @@ source 'https://rubygems.org'
 ruby '>= 2.4.0', '< 2.8.0'
 gem 'bundler', '>= 1.12.0'
 
-gem 'rails', '5.2.8'
+gem 'rails', '5.2.8.1'
 gem 'sprockets', '~> 3.7.2' if RUBY_VERSION < '2.5'
 gem 'globalid', '~> 0.4.2' if Gem.ruby_version < Gem::Version.new('2.6.0')
 gem 'rouge', '~> 3.26.0'
@@ -25,6 +25,7 @@ gem 'i18n', '~> 1.8.2'
 gem "rbpdf", "~> 1.20.0"
 gem 'addressable'
 gem 'rubyzip', '~> 2.3.0'
+gem 'psych', '~> 3.1' if Gem.ruby_version < Gem::Version.new('2.6.0')
 
 # Windows does not include zoneinfo files, so bundle the tzinfo-data gem
 gem 'tzinfo-data', platforms: [:mingw, :x64_mingw, :mswin]
diff --git a/pkgs/applications/version-management/redmine/Gemfile.lock b/pkgs/applications/version-management/redmine/Gemfile.lock
index 5ad1b80d3c776..c57844b49a28c 100644
--- a/pkgs/applications/version-management/redmine/Gemfile.lock
+++ b/pkgs/applications/version-management/redmine/Gemfile.lock
@@ -1,19 +1,19 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    actioncable (5.2.8)
-      actionpack (= 5.2.8)
+    actioncable (5.2.8.1)
+      actionpack (= 5.2.8.1)
       nio4r (~> 2.0)
       websocket-driver (>= 0.6.1)
-    actionmailer (5.2.8)
-      actionpack (= 5.2.8)
-      actionview (= 5.2.8)
-      activejob (= 5.2.8)
+    actionmailer (5.2.8.1)
+      actionpack (= 5.2.8.1)
+      actionview (= 5.2.8.1)
+      activejob (= 5.2.8.1)
       mail (~> 2.5, >= 2.5.4)
       rails-dom-testing (~> 2.0)
-    actionpack (5.2.8)
-      actionview (= 5.2.8)
-      activesupport (= 5.2.8)
+    actionpack (5.2.8.1)
+      actionview (= 5.2.8.1)
+      activesupport (= 5.2.8.1)
       rack (~> 2.0, >= 2.0.8)
       rack-test (>= 0.6.3)
       rails-dom-testing (~> 2.0)
@@ -21,26 +21,26 @@ GEM
     actionpack-xml_parser (2.0.1)
       actionpack (>= 5.0)
       railties (>= 5.0)
-    actionview (5.2.8)
-      activesupport (= 5.2.8)
+    actionview (5.2.8.1)
+      activesupport (= 5.2.8.1)
       builder (~> 3.1)
       erubi (~> 1.4)
       rails-dom-testing (~> 2.0)
       rails-html-sanitizer (~> 1.0, >= 1.0.3)
-    activejob (5.2.8)
-      activesupport (= 5.2.8)
+    activejob (5.2.8.1)
+      activesupport (= 5.2.8.1)
       globalid (>= 0.3.6)
-    activemodel (5.2.8)
-      activesupport (= 5.2.8)
-    activerecord (5.2.8)
-      activemodel (= 5.2.8)
-      activesupport (= 5.2.8)
+    activemodel (5.2.8.1)
+      activesupport (= 5.2.8.1)
+    activerecord (5.2.8.1)
+      activemodel (= 5.2.8.1)
+      activesupport (= 5.2.8.1)
       arel (>= 9.0)
-    activestorage (5.2.8)
-      actionpack (= 5.2.8)
-      activerecord (= 5.2.8)
+    activestorage (5.2.8.1)
+      actionpack (= 5.2.8.1)
+      activerecord (= 5.2.8.1)
       marcel (~> 1.0.0)
-    activesupport (5.2.8)
+    activesupport (5.2.8.1)
       concurrent-ruby (~> 1.0, >= 1.0.2)
       i18n (>= 0.7, < 2)
       minitest (~> 5.1)
@@ -62,7 +62,7 @@ GEM
     chunky_png (1.4.0)
     concurrent-ruby (1.1.10)
     crass (1.0.6)
-    css_parser (1.11.0)
+    css_parser (1.12.0)
       addressable
     csv (3.1.9)
     docile (1.4.0)
@@ -72,7 +72,7 @@ GEM
     htmlentities (4.3.4)
     i18n (1.8.11)
       concurrent-ruby (~> 1.0)
-    loofah (2.18.0)
+    loofah (2.19.0)
       crass (~> 1.0.2)
       nokogiri (>= 1.5.9)
     mail (2.7.1)
@@ -83,15 +83,13 @@ GEM
     mini_mime (1.0.3)
     mini_portile2 (2.8.0)
     minitest (5.16.3)
-    mocha (1.14.0)
+    mocha (1.15.0)
     mysql2 (0.5.4)
     net-ldap (0.17.1)
     nio4r (2.5.8)
     nokogiri (1.13.8)
       mini_portile2 (~> 2.8.0)
       racc (~> 1.4)
-    nokogiri (1.13.8-x86_64-linux)
-      racc (~> 1.4)
     parallel (1.22.1)
     parser (3.1.2.1)
       ast (~> 2.4.1)
@@ -106,27 +104,27 @@ GEM
       ruby-openid (>= 2.1.8)
     rack-test (2.0.2)
       rack (>= 1.3)
-    rails (5.2.8)
-      actioncable (= 5.2.8)
-      actionmailer (= 5.2.8)
-      actionpack (= 5.2.8)
-      actionview (= 5.2.8)
-      activejob (= 5.2.8)
-      activemodel (= 5.2.8)
-      activerecord (= 5.2.8)
-      activestorage (= 5.2.8)
-      activesupport (= 5.2.8)
+    rails (5.2.8.1)
+      actioncable (= 5.2.8.1)
+      actionmailer (= 5.2.8.1)
+      actionpack (= 5.2.8.1)
+      actionview (= 5.2.8.1)
+      activejob (= 5.2.8.1)
+      activemodel (= 5.2.8.1)
+      activerecord (= 5.2.8.1)
+      activestorage (= 5.2.8.1)
+      activesupport (= 5.2.8.1)
       bundler (>= 1.3.0)
-      railties (= 5.2.8)
+      railties (= 5.2.8.1)
       sprockets-rails (>= 2.0.0)
     rails-dom-testing (2.0.3)
       activesupport (>= 4.2.0)
       nokogiri (>= 1.6)
     rails-html-sanitizer (1.4.3)
       loofah (~> 2.3)
-    railties (5.2.8)
-      actionpack (= 5.2.8)
-      activesupport (= 5.2.8)
+    railties (5.2.8.1)
+      actionpack (= 5.2.8.1)
+      activesupport (= 5.2.8.1)
       method_source
       rake (>= 0.8.7)
       thor (>= 0.19.0, < 2.0)
@@ -174,7 +172,7 @@ GEM
     ruby-openid (2.9.2)
     ruby-progressbar (1.11.0)
     rubyzip (2.3.2)
-    selenium-webdriver (4.4.0)
+    selenium-webdriver (4.5.0)
       childprocess (>= 0.5, < 5.0)
       rexml (~> 3.2, >= 3.2.5)
       rubyzip (>= 1.2.2, < 3.0)
@@ -194,7 +192,7 @@ GEM
     thread_safe (0.3.6)
     tzinfo (1.2.10)
       thread_safe (~> 0.1)
-    unicode-display_width (2.2.0)
+    unicode-display_width (2.3.0)
     webdrivers (4.7.0)
       nokogiri (~> 1.6)
       rubyzip (>= 1.3.0)
@@ -231,7 +229,7 @@ DEPENDENCIES
   pg (~> 1.2.2)
   puma
   rack-openid
-  rails (= 5.2.8)
+  rails (= 5.2.8.1)
   rails-dom-testing
   rbpdf (~> 1.20.0)
   redcarpet (~> 3.5.1)
@@ -255,4 +253,4 @@ RUBY VERSION
    ruby 2.7.6p219
 
 BUNDLED WITH
-   2.3.20
+   2.3.9
diff --git a/pkgs/applications/version-management/redmine/default.nix b/pkgs/applications/version-management/redmine/default.nix
index a518a9cec2e88..9da39ba4b1c93 100644
--- a/pkgs/applications/version-management/redmine/default.nix
+++ b/pkgs/applications/version-management/redmine/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchurl, bundlerEnv, ruby, makeWrapper, nixosTests }:
 
 let
-  version = "4.2.7";
+  version = "4.2.8";
   rubyEnv = bundlerEnv {
     name = "redmine-env-${version}";
 
@@ -16,7 +16,7 @@ in
 
     src = fetchurl {
       url = "https://www.redmine.org/releases/${pname}-${version}.tar.gz";
-      sha256 = "sha256-7UvgO1q2PCZBqH24l4c53Zl8D2Rr+hAQrJ5SEMNDck4=";
+      sha256 = "sha256-C0McBS2P02uTIB2vrzYVzbjQNGDvzyQA59MmYrKrYnI=";
     };
 
     nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/version-management/redmine/gemset.nix b/pkgs/applications/version-management/redmine/gemset.nix
index a478796ca2264..5248ff369830d 100644
--- a/pkgs/applications/version-management/redmine/gemset.nix
+++ b/pkgs/applications/version-management/redmine/gemset.nix
@@ -5,10 +5,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "123nrlrh5kikl314l4gjbc8ljw3h2ppzhpmm7cilisqvn71s5ysd";
+      sha256 = "1v5bihkn3cdf7s1cv04wqpk3l5snjgyav0jz9x5vhzzdqyknvndr";
       type = "gem";
     };
-    version = "5.2.8";
+    version = "5.2.8.1";
   };
   actionmailer = {
     dependencies = ["actionpack" "actionview" "activejob" "mail" "rails-dom-testing"];
@@ -16,10 +16,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "18vrdwdwfmrnpj8k30qhvdx23km233ffnhhzpbmx8m6spavwvli2";
+      sha256 = "1x0qjs8v5z5wzk7vlg7pdr71hsm154d8d0gwhya573xpxfjzmjpx";
       type = "gem";
     };
-    version = "5.2.8";
+    version = "5.2.8.1";
   };
   actionpack = {
     dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"];
@@ -27,10 +27,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1knnka6n292f4hhbjfchpa4sbjj79wys5y8bcggm8ah894051kzk";
+      sha256 = "0mqvz5dsg9zis34y8m4d2ackr3zs7h27mv6zx5yx00a58fifhyv3";
       type = "gem";
     };
-    version = "5.2.8";
+    version = "5.2.8.1";
   };
   actionpack-xml_parser = {
     dependencies = ["actionpack" "railties"];
@@ -49,10 +49,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0zndg7ax4bckayjw558p9hz92ic6x3r5acfbd5vnad0xh7hfdrmx";
+      sha256 = "06bk0hyv2sq386qc7r96qbhskg91apdj3mrdpzhry6p6nby2afml";
       type = "gem";
     };
-    version = "5.2.8";
+    version = "5.2.8.1";
   };
   activejob = {
     dependencies = ["activesupport" "globalid"];
@@ -60,10 +60,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0kzb5y4lflmvi3vxz2zrj55k6xyys2h5bdqp2ki69rcyd4ay5qrg";
+      sha256 = "12y07kvq9y30ycl4i45g9c2c9jv5a9vlxvrjaqfl79iim6gk1klz";
       type = "gem";
     };
-    version = "5.2.8";
+    version = "5.2.8.1";
   };
   activemodel = {
     dependencies = ["activesupport"];
@@ -71,10 +71,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1b6pskl8x4c1hcsf4xh4cl9qlh814s91bjv3yy94cdc4xpl76vr6";
+      sha256 = "0vsyxbjpl47grlkzgh2rm0i9yksfwk11lsdi11jmqszc6lkj1b9g";
       type = "gem";
     };
-    version = "5.2.8";
+    version = "5.2.8.1";
   };
   activerecord = {
     dependencies = ["activemodel" "activesupport" "arel"];
@@ -82,10 +82,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "078iiv5g02n1ivrgpkbw5bxkbihi85msvn88p5q37vbfr14ynk0a";
+      sha256 = "0jk8qwdvq465nklxr7z0qzpiacxcqd72y6frimlalchhigl8ya0a";
       type = "gem";
     };
-    version = "5.2.8";
+    version = "5.2.8.1";
   };
   activestorage = {
     dependencies = ["actionpack" "activerecord" "marcel"];
@@ -93,10 +93,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1xnxgg9j4nr6yw8g3l0jdr9m985k3wrvjql9j5qr5lfcsn9zwz4w";
+      sha256 = "0qklddvw3v13dh79c7vljad8m25frlhnwcnw9xk510d676j3lr8a";
       type = "gem";
     };
-    version = "5.2.8";
+    version = "5.2.8.1";
   };
   activesupport = {
     dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo"];
@@ -104,10 +104,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0anvhpxjgic1cv1h66lmz6x5nd7g0bbnwl0rgxnbdr3w76fa8w02";
+      sha256 = "0r15sbhl4nrkh2g5ccbhmn3c2ngri71j0yfnarxkq90vdrhqqjgh";
       type = "gem";
     };
-    version = "5.2.8";
+    version = "5.2.8.1";
   };
   addressable = {
     dependencies = ["public_suffix"];
@@ -207,10 +207,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1qbdgp36dhcyljhmfxrvbgp1ha9yqxhxgyg3sdm48y9m371jd2an";
+      sha256 = "1107j3frhmcd95wcsz0rypchynnzhnjiyyxxcl6dlmr2lfy08z4b";
       type = "gem";
     };
-    version = "1.11.0";
+    version = "1.12.0";
   };
   csv = {
     groups = ["default"];
@@ -280,10 +280,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "18ymp6l3bv7abz07k6qbbi9c9vsiahq30d2smh4qzsvag8j5m5v1";
+      sha256 = "1fpyk1965py77al7iadkn5dibwgvybknkr7r8bii2dj73wvr29rh";
       type = "gem";
     };
-    version = "2.18.0";
+    version = "2.19.0";
   };
   mail = {
     dependencies = ["mini_mime"];
@@ -361,10 +361,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0ffd7zn24lwhp3xp747jfg4zxgqbm04ar7shhjy2iv5xg1pz01lr";
+      sha256 = "0z2nzk106b6af6n0d9xqf2sphaff4gpjgxvwqcmvy6k719hqhkh9";
       type = "gem";
     };
-    version = "1.14.0";
+    version = "1.15.0";
   };
   mysql2 = {
     groups = ["default"];
@@ -523,10 +523,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0884z2ilm4by47qk7my856dr42vzy12ghj241rymp13flaf54449";
+      sha256 = "1jy4jfkq0xpqp0d3ii9xhj69kacx8l4q3pincncw2g30bqd7a66g";
       type = "gem";
     };
-    version = "5.2.8";
+    version = "5.2.8.1";
   };
   rails-dom-testing = {
     dependencies = ["activesupport" "nokogiri"];
@@ -556,10 +556,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "157mmm2jhvq2g08xhq0780i3r4i679h14m68jj7265ik26gbchhc";
+      sha256 = "0w9hm85jgbyar748z9nppsz8mgwywa2v9qqlbkzhpgirxhblifv2";
       type = "gem";
     };
-    version = "5.2.8";
+    version = "5.2.8.1";
   };
   rainbow = {
     groups = ["default" "test"];
@@ -786,10 +786,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1vy0baak61wr652a7qf249n85sqq5k5mi51ws5ccyyirlsymz2gv";
+      sha256 = "0fp7h5bnlqp649imgpnshgf3mxl8zwnpsl1ak1giii81r0cd6in3";
       type = "gem";
     };
-    version = "4.4.0";
+    version = "4.5.0";
   };
   simplecov = {
     dependencies = ["docile" "simplecov-html"];
@@ -870,10 +870,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1nlfck6z986fngp0r74maswmyb1rcksc8xc3mfpw9cj23c3s8zwn";
+      sha256 = "0ra70s8prfacpqwj5v2mqn1rbfz6xds3n9nsr9cwzs3z2c0wm5j7";
       type = "gem";
     };
-    version = "2.2.0";
+    version = "2.3.0";
   };
   webdrivers = {
     dependencies = ["nokogiri" "rubyzip" "selenium-webdriver"];
diff --git a/pkgs/applications/video/aegisub/default.nix b/pkgs/applications/video/aegisub/default.nix
index f83cbf69edb11..e77fe067670f8 100644
--- a/pkgs/applications/video/aegisub/default.nix
+++ b/pkgs/applications/video/aegisub/default.nix
@@ -130,6 +130,12 @@ stdenv.mkDerivation rec {
     ./remove-bundled-luajit.patch
   ];
 
+  # error: unknown type name 'NSUInteger'
+  postPatch = ''
+    substituteInPlace src/dialog_colorpicker.cpp \
+      --replace "NSUInteger" "size_t"
+  '';
+
   NIX_CFLAGS_COMPILE = "-I${luajit52}/include";
   NIX_CFLAGS_LINK = "-L${luajit52}/lib";
 
@@ -153,7 +159,7 @@ stdenv.mkDerivation rec {
     # The Aegisub sources are itself BSD/ISC, but they are linked against GPL'd
     # softwares - so the resulting program will be GPL
     license = licenses.bsd3;
-    maintainers = [ maintainers.AndersonTorres ];
+    maintainers = with maintainers; [ AndersonTorres wegank ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/video/byzanz/default.nix b/pkgs/applications/video/byzanz/default.nix
index 5e60bb7fd9086..d7ad9846306a5 100644
--- a/pkgs/applications/video/byzanz/default.nix
+++ b/pkgs/applications/video/byzanz/default.nix
@@ -34,12 +34,11 @@ stdenv.mkDerivation {
     "-Wno-error=incompatible-pointer-types"
   ];
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [ pkg-config intltool ];
   buildInputs = [
     which
     gnome.gnome-common
     glib
-    intltool
     libtool
     cairo
     gtk3
diff --git a/pkgs/applications/video/epgstation/default.nix b/pkgs/applications/video/epgstation/default.nix
index 0d058106a7c1a..5fab39fd396a0 100644
--- a/pkgs/applications/video/epgstation/default.nix
+++ b/pkgs/applications/video/epgstation/default.nix
@@ -1,14 +1,11 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, gitUpdater
-, writers
 , makeWrapper
 , bash
 , nodejs
 , gzip
-, jq
-, yq
+, callPackage
 }:
 
 let
@@ -33,7 +30,8 @@ let
   });
 
   server = nodejs.pkgs.epgstation.override (drv: {
-    inherit src;
+    # NOTE: updateScript relies on version matching the src.
+    inherit version src;
 
     # This is set to false to keep devDependencies at build time. Build time
     # dependencies are pruned afterwards.
@@ -108,17 +106,7 @@ let
 
     # NOTE: this may take a while since it has to update all packages in
     # nixpkgs.nodePackages
-    passthru.updateScript = import ./update.nix {
-      inherit lib;
-      inherit (src.meta) homepage;
-      inherit
-        pname
-        version
-        gitUpdater
-        writers
-        jq
-        yq;
-    };
+    passthru.updateScript = callPackage ./update.nix { };
 
     # nodePackages.epgstation is a stub package to fetch npm dependencies and
     # its meta.platforms is made empty to prevent users from installing it
diff --git a/pkgs/applications/video/epgstation/update.nix b/pkgs/applications/video/epgstation/update.nix
index 405dcf53837e2..41b7b9ab1e17b 100644
--- a/pkgs/applications/video/epgstation/update.nix
+++ b/pkgs/applications/video/epgstation/update.nix
@@ -1,67 +1,62 @@
-{ pname
-, version
-, homepage
-, lib
-, gitUpdater
+{ gitUpdater
 , writers
 , jq
 , yq
 , gnused
+, _experimental-update-script-combinators
 }:
 
 let
-  updater = gitUpdater {
-    inherit pname version;
-    attrPath = lib.toLower pname;
+  updateSource = gitUpdater {
     rev-prefix = "v";
   };
-  updateScript = builtins.elemAt updater.command 0;
-  updateArgs = map (lib.escapeShellArg) (builtins.tail updater.command);
-in writers.writeBash "update-epgstation" ''
-  set -euxo pipefail
-
-  # bump the version
-  ${updateScript} ${lib.concatStringsSep " " updateArgs}
-
-  cd "${toString ./.}"
-
-  # Get the path to the latest source. Note that we can't just pass the value
-  # of epgstation.src directly because it'd be evaluated before we can run
-  # updateScript.
-  SRC="$(nix-build ../../../.. --no-out-link -A epgstation.src)"
-  if [[ "${version}" == "$(${jq}/bin/jq -r .version "$SRC/package.json")" ]]; then
-    echo "[INFO] Already using the latest version of ${pname}" >&2
-    exit
-  fi
-
-  # Regenerate package.json from the latest source.
-  ${jq}/bin/jq '. + {
-      dependencies: (.dependencies + .devDependencies),
-    } | del(.devDependencies, .main, .scripts)' \
-    "$SRC/package.json" \
-    > package.json
-  ${jq}/bin/jq '. + {
-      dependencies: (.dependencies + .devDependencies),
-    } | del(.devDependencies, .main, .scripts)' \
-    "$SRC/client/package.json" \
-    > client/package.json
-
-  # Fix issue with old sqlite3 version pinned that depends on very old node-gyp 3.x
-  ${gnused}/bin/sed -i -e 's/"sqlite3":\s*"5.0.[0-9]\+"/"sqlite3": "5.0.11"/' package.json
-
-  # Regenerate node packages to update the pre-overriden epgstation derivation.
-  # This must come *after* package.json has been regenerated.
-  pushd ../../../development/node-packages
-  ./generate.sh
-  popd
-
-  # Generate default streaming settings for the nixos module.
-  pushd ../../../../nixos/modules/services/video/epgstation
-  ${yq}/bin/yq -j '{ urlscheme , stream }' \
-    "$SRC/config/config.yml.template" \
-    > streaming.json
-
-  # Fix generated output for EditorConfig compliance
-  printf '\n' >> streaming.json  # rule: insert_final_newline
-  popd
-''
+  updateLocks = writers.writeBash "update-epgstation" ''
+    set -euxo pipefail
+
+    cd "$1"
+
+    # Get the path to the latest source. Note that we can't just pass the value
+    # of epgstation.src directly because it'd be evaluated before we can run
+    # updateScript.
+    SRC="$(nix-build ../../../.. --no-out-link -A epgstation.src)"
+    if [[ "$UPDATE_NIX_OLD_VERSION" == "$(${jq}/bin/jq -r .version "$SRC/package.json")" ]]; then
+      echo "[INFO] Already using the latest version of $UPDATE_NIX_PNAME" >&2
+      exit
+    fi
+
+    # Regenerate package.json from the latest source.
+    ${jq}/bin/jq '. + {
+        dependencies: (.dependencies + .devDependencies),
+      } | del(.devDependencies, .main, .scripts)' \
+      "$SRC/package.json" \
+      > package.json
+    ${jq}/bin/jq '. + {
+        dependencies: (.dependencies + .devDependencies),
+      } | del(.devDependencies, .main, .scripts)' \
+      "$SRC/client/package.json" \
+      > client/package.json
+
+    # Fix issue with old sqlite3 version pinned that depends on very old node-gyp 3.x
+    ${gnused}/bin/sed -i -e 's/"sqlite3":\s*"5.0.[0-9]\+"/"sqlite3": "5.0.11"/' package.json
+
+    # Regenerate node packages to update the pre-overriden epgstation derivation.
+    # This must come *after* package.json has been regenerated.
+    pushd ../../../development/node-packages
+    ./generate.sh
+    popd
+
+    # Generate default streaming settings for the nixos module.
+    pushd ../../../../nixos/modules/services/video/epgstation
+    ${yq}/bin/yq -j '{ urlscheme , stream }' \
+      "$SRC/config/config.yml.template" \
+      > streaming.json
+
+    # Fix generated output for EditorConfig compliance
+    printf '\n' >> streaming.json  # rule: insert_final_newline
+    popd
+  '';
+in
+_experimental-update-script-combinators.sequence [
+  updateSource
+  [updateLocks ./.]
+]
diff --git a/pkgs/applications/video/kodi/addons/visualization-waveform/default.nix b/pkgs/applications/video/kodi/addons/visualization-waveform/default.nix
new file mode 100644
index 0000000000000..851289bc06d46
--- /dev/null
+++ b/pkgs/applications/video/kodi/addons/visualization-waveform/default.nix
@@ -0,0 +1,25 @@
+{ lib, rel, buildKodiBinaryAddon, fetchFromGitHub, pkg-config, glm, libGL }:
+
+buildKodiBinaryAddon rec {
+  pname = "visualization-waveform";
+  namespace = "visualization.waveform";
+  version = "19.0.2";
+
+  src = fetchFromGitHub {
+    owner = "xbmc";
+    repo = namespace;
+    rev = "${version}-${rel}";
+    hash = "sha256-IQLW4CDNtt/ptE679hnoXbharq61Ru9S2m7QbJLtNSI=";
+  };
+
+  extraBuildInputs = [ pkg-config libGL ];
+
+  propagatedBuildInputs = [ glm ];
+  meta = with lib; {
+    homepage = "https://github.com/xbmc/visualization.waveform";
+    description = "Waveform visualization for kodi";
+    platforms = platforms.all;
+    license = licenses.gpl2Only;
+    maintainers = teams.kodi.members;
+  };
+}
diff --git a/pkgs/applications/video/kooha/default.nix b/pkgs/applications/video/kooha/default.nix
index 66cac403727a4..37644b10252bd 100644
--- a/pkgs/applications/video/kooha/default.nix
+++ b/pkgs/applications/video/kooha/default.nix
@@ -4,8 +4,8 @@
 , appstream-glib
 , desktop-file-utils
 , glib
-, gobject-introspection
 , gst_all_1
+, pipewire
 , gtk4
 , libadwaita
 , libpulseaudio
@@ -13,27 +13,26 @@
 , meson
 , ninja
 , pkg-config
-, python3
 , rustPlatform
 , wayland
-, wrapGAppsHook
+, wrapGAppsHook4
 }:
 
 stdenv.mkDerivation rec {
   pname = "kooha";
-  version = "2.0.1";
+  version = "2.2.2";
 
   src = fetchFromGitHub {
     owner = "SeaDve";
     repo = "Kooha";
     rev = "v${version}";
-    sha256 = "05ynpwjdpl7zp9f17zhhvb59rbz3gd7hc0amla1g85ldgfxbgl00";
+    hash = "sha256-HgouIMbwpmR/K1hPU7QDzeEtyi5hC66huvInkJFLS2w=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
-    hash = "sha256:16zf6vb001z7xdv2g4kpmb2vqsmaql2cpsx1rl9zrfhpl2z6frs9";
+    hash = "sha256-rdxD9pys11QcUtufcZ/zCrviytyc8hIXJfsXg2JoaKE=";
   };
 
   nativeBuildInputs = [
@@ -41,18 +40,15 @@ stdenv.mkDerivation rec {
     desktop-file-utils
     meson
     ninja
-    python3
     pkg-config
     rustPlatform.cargoSetupHook
     rustPlatform.rust.cargo
     rustPlatform.rust.rustc
-    wayland
-    wrapGAppsHook
+    wrapGAppsHook4
   ];
 
   buildInputs = [
     glib
-    gobject-introspection
     gst_all_1.gstreamer
     gst_all_1.gst-plugins-base
     gst_all_1.gst-plugins-ugly
@@ -60,18 +56,10 @@ stdenv.mkDerivation rec {
     libadwaita
     libpulseaudio
     librsvg
+    wayland
+    pipewire
   ];
 
-  propagatedBuildInputs = [ python3.pkgs.pygobject3 ];
-
-  strictDeps = false;
-
-  # Fixes https://github.com/NixOS/nixpkgs/issues/31168
-  postPatch = ''
-    patchShebangs build-aux/meson_post_install.py
-    substituteInPlace meson.build --replace '>= 1.0.0-alpha.1' '>= 1.0.0'
-  '';
-
   installCheckPhase = ''
     $out/bin/kooha --help
   '';
diff --git a/pkgs/applications/video/mediathekview/default.nix b/pkgs/applications/video/mediathekview/default.nix
index 5ad81bc0a7680..6187584940114 100644
--- a/pkgs/applications/video/mediathekview/default.nix
+++ b/pkgs/applications/video/mediathekview/default.nix
@@ -1,33 +1,38 @@
-{ lib, stdenv, fetchurl, makeWrapper, jre, zip }:
+{ lib, stdenv, fetchurl, makeWrapper, libglvnd, libnotify, jre, zip }:
 
 stdenv.mkDerivation rec {
-  version = "13.8.0";
+  version = "13.9.1";
   pname = "mediathekview";
   src = fetchurl {
     url = "https://download.mediathekview.de/stabil/MediathekView-${version}-linux.tar.gz";
-    sha256 = "0zfkwz5psv7m0881ykgqrxwjhadg39c55aj2wpy7m1jdara86c5q";
+    sha256 = "4BYKkYhl1YjiAZyfNRdV5KQL+dVkL058uhTG892mXUM=";
   };
 
+
   nativeBuildInputs = [ makeWrapper zip ];
 
-  installPhase = ''
+  installPhase =
+  let
+    libraryPath = lib.strings.makeLibraryPath [ libglvnd libnotify ];
+  in
+  ''
     runHook preInstall
 
     mkdir -p $out/{bin,lib}
 
-    # log4j mitigation, see https://logging.apache.org/log4j/2.x/security.html
-    zip -d MediathekView.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
-
     install -m644 MediathekView.jar $out/lib
 
     makeWrapper ${jre}/bin/java $out/bin/mediathek \
-      --add-flags "-jar $out/lib/MediathekView.jar"
+      --add-flags "-jar $out/lib/MediathekView.jar" \
+      --suffix LD_LIBRARY_PATH : "${libraryPath}"
 
     makeWrapper ${jre}/bin/java $out/bin/MediathekView \
-      --add-flags "-jar $out/lib/MediathekView.jar"
+      --add-flags "-jar $out/lib/MediathekView.jar" \
+      --suffix LD_LIBRARY_PATH : "${libraryPath}"
 
     makeWrapper ${jre}/bin/java $out/bin/MediathekView_ipv4 \
-      --add-flags "-Djava.net.preferIPv4Stack=true -jar $out/lib/MediathekView.jar"
+      --add-flags "-Djava.net.preferIPv4Stack=true -jar $out/lib/MediathekView.jar" \
+      --suffix LD_LIBRARY_PATH : "${libraryPath}"
 
     runHook postInstall
   '';
diff --git a/pkgs/applications/video/mkvtoolnix/default.nix b/pkgs/applications/video/mkvtoolnix/default.nix
index 32c1e4a9f637a..4ad3a6603deac 100644
--- a/pkgs/applications/video/mkvtoolnix/default.nix
+++ b/pkgs/applications/video/mkvtoolnix/default.nix
@@ -127,6 +127,7 @@ stdenv.mkDerivation rec {
     description = "Cross-platform tools for Matroska";
     homepage = "https://mkvtoolnix.download/";
     license = licenses.gpl2Only;
+    mainProgram = if withGUI then "mkvtoolnix-gui" else "mkvtoolnix";
     maintainers = with maintainers; [ codyopel rnhmjoj ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/video/mpv/scripts/mpv-playlistmanager.nix b/pkgs/applications/video/mpv/scripts/mpv-playlistmanager.nix
index a1179ef7aa3af..b59f9de387141 100644
--- a/pkgs/applications/video/mpv/scripts/mpv-playlistmanager.nix
+++ b/pkgs/applications/video/mpv/scripts/mpv-playlistmanager.nix
@@ -1,27 +1,26 @@
-{ lib, stdenvNoCC, fetchFromGitHub, youtube-dl }:
+{ lib, stdenvNoCC, fetchFromGitHub, yt-dlp }:
 
 stdenvNoCC.mkDerivation rec {
   pname = "mpv-playlistmanager";
-  version = "unstable-2021-09-27";
+  version = "unstable-2022-08-26";
 
   src = fetchFromGitHub {
     owner = "jonniek";
     repo = "mpv-playlistmanager";
-    rev = "9a759b300c92b55e82be5824fe058e263975741a";
-    sha256 = "qMzDJlouBptwyNdw2ag4VKEtmkQNUlos0USPerBAV/s=";
+    rev = "07393162f7f78f8188e976f616f1b89813cec741";
+    sha256 = "sha256-Vgh5F6c90ijp5LVrP2cdAOXo+QtJ9aXI9G/3C2HGqd4=";
   };
 
   postPatch = ''
     substituteInPlace playlistmanager.lua \
-    --replace "'youtube-dl'" "'${youtube-dl}/bin/youtube-dl'" \
+      --replace "youtube-dl" "${lib.getBin yt-dlp}/bin/yt-dlp"
   '';
 
   dontBuild = true;
 
   installPhase = ''
     runHook preInstall
-    mkdir -p $out/share/mpv/scripts
-    cp playlistmanager.lua $out/share/mpv/scripts
+    install -D -t $out/share/mpv/scripts playlistmanager.lua
     runHook postInstall
   '';
 
diff --git a/pkgs/applications/video/showmethekey/default.nix b/pkgs/applications/video/showmethekey/default.nix
index 219010eeb393f..d50b7ababfa77 100644
--- a/pkgs/applications/video/showmethekey/default.nix
+++ b/pkgs/applications/video/showmethekey/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchFromGitHub
+, fetchpatch
 , glib
 , meson
 , ninja
@@ -10,10 +11,11 @@
 , pango
 , libinput
 , gtk4
-, wrapGAppsHook
+, wrapGAppsHook4
 , libxkbcommon
 , pkg-config
 }:
+
 stdenv.mkDerivation rec {
   pname = "showmethekey";
   version = "1.7.3";
@@ -25,6 +27,14 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-hq4X4dG25YauMjsNXC6Flco9pEpVj3EM2JiFWbRrPaA=";
   };
 
+  patches = [
+    (fetchpatch {
+      name = "use-gtk4-update-icon-cache.patch";
+      url = "https://github.com/alynxzhou/showmethekey/commit/c73102dc2825d00cbaf323fcfc96736381dc67ae.patch";
+      sha256 = "sha256-6QDY5eQ9A8q3LZeD7v6WI/4vYXc/XXVY/WENA1nvIKo=";
+    })
+  ];
+
   nativeBuildInputs = [
     glib
     meson
@@ -36,7 +46,7 @@ stdenv.mkDerivation rec {
     libevdev
     libinput
     libxkbcommon
-    wrapGAppsHook
+    wrapGAppsHook4
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/video/streamlink/default.nix b/pkgs/applications/video/streamlink/default.nix
index 415790b4c11cb..9f2487734f024 100644
--- a/pkgs/applications/video/streamlink/default.nix
+++ b/pkgs/applications/video/streamlink/default.nix
@@ -6,11 +6,12 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "streamlink";
-  version = "3.2.0";
+  version = "5.0.1";
+  format = "pyproject";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "sha256-l3DS2DhExTeKc+FBMNy3YKvIVlZsqgpB/FuXoN7V2SY=";
+    hash = "sha256-PKRioPBhTV6i3ckQgcKuhQFmpBvUQE4o3FLej8qx4mM=";
   };
 
   checkInputs = with python3Packages; [
@@ -20,6 +21,10 @@ python3Packages.buildPythonApplication rec {
     freezegun
   ];
 
+  nativeBuildInputs = with python3Packages; [
+    versioningit
+  ];
+
   propagatedBuildInputs = (with python3Packages; [
     isodate
     lxml
diff --git a/pkgs/applications/video/vdr/default.nix b/pkgs/applications/video/vdr/default.nix
index 5584e63ab4466..68750ac918cba 100644
--- a/pkgs/applications/video/vdr/default.nix
+++ b/pkgs/applications/video/vdr/default.nix
@@ -50,7 +50,7 @@
     homepage = "http://www.tvdr.de/";
     description = "Video Disc Recorder";
     maintainers = [ maintainers.ck3d ];
-    platforms = [ "i686-linux" "x86_64-linux" ];
+    platforms = platforms.linux;
     license = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/applications/video/vdr/plugins.nix b/pkgs/applications/video/vdr/plugins.nix
index 6719b0412b827..28528318c162f 100644
--- a/pkgs/applications/video/vdr/plugins.nix
+++ b/pkgs/applications/video/vdr/plugins.nix
@@ -32,9 +32,11 @@ in {
 
     buildInputs = [ vdr ];
 
-    src = fetchurl {
-      url = "http://www.saunalahti.fi/~rahrenbe/vdr/femon/files/${pname}-${version}.tgz";
-      sha256 = "1hra1xslj8s68zbyr8zdqp8yap0aj1p6rxyc6cwy1j122kwcnapp";
+    src = fetchFromGitHub {
+      repo = "vdr-plugin-femon";
+      owner = "rofafor";
+      sha256 = "sha256-0qBMYgNKk7N9Bj8fAoOokUo+G9gfj16N5e7dhoKRBqs=";
+      rev = "v${version}";
     };
 
     postPatch = "substituteInPlace Makefile --replace /bin/true true";
@@ -42,23 +44,23 @@ in {
     makeFlags = [ "DESTDIR=$(out)" ];
 
     meta = with lib; {
-      homepage = "http://www.saunalahti.fi/~rahrenbe/vdr/femon/";
+      inherit (src.meta) homepage;
       description = "DVB Frontend Status Monitor plugin for VDR";
       maintainers = [ maintainers.ck3d ];
       license = licenses.gpl2;
-      platforms = [ "i686-linux" "x86_64-linux" ];
+      inherit (vdr.meta) platforms;
     };
 
   };
 
   markad = stdenv.mkDerivation rec {
     pname = "vdr-markad";
-    version = "3.0.25";
+    version = "3.0.26";
 
     src = fetchFromGitHub {
       repo = "vdr-plugin-markad";
       owner = "kfb77";
-      sha256 = "sha256-m7cUAxwXj62spelHYH6uTIoViSavSR0d4psr7+KLJg8=";
+      sha256 = "sha256-0J6XeLgr9IZSWsheQZWVNRLIxp8iyCvR9Y0z/yrbTnI=";
       rev = "v${version}";
     };
 
@@ -88,11 +90,11 @@ in {
     installFlags = buildFlags;
 
     meta = with lib; {
-      homepage = "https://github.com/kfb77/vdr-plugin-markad";
+      inherit (src.meta) homepage;
       description = "MarkAd marks advertisements in VDR recordings.";
       maintainers = [ maintainers.ck3d ];
       license = licenses.gpl2;
-      platforms = [ "i686-linux" "x86_64-linux" ];
+      inherit (vdr.meta) platforms;
     };
 
   };
@@ -101,8 +103,9 @@ in {
     pname = "vdr-epgsearch";
     version = "2.4.1";
 
-    src = fetchgit {
-      url = "git://projects.vdr-developer.org/vdr-plugin-epgsearch.git";
+    src = fetchFromGitHub {
+      repo = "vdr-plugin-epgsearch";
+      owner = "vdr-projects";
       sha256 = "sha256-UlbPCkUFN0Gyxjw9xq2STFTDZRVcPPNjadSQd4o2o9U=";
       rev = "v${version}";
     };
@@ -136,18 +139,18 @@ in {
     outputs = [ "out" "man" ];
 
     meta = with lib; {
-      homepage = "http://winni.vdr-developer.org/epgsearch";
+      inherit (src.meta) homepage;
       description = "Searchtimer and replacement of the VDR program menu";
       maintainers = [ maintainers.ck3d ];
       license = licenses.gpl2;
-      platforms = [ "i686-linux" "x86_64-linux" ];
+      inherit (vdr.meta) platforms;
     };
 
   };
 
   vnsiserver = stdenv.mkDerivation rec {
     pname = "vdr-vnsiserver";
-    version = "1.8.0";
+    version = "1.8.1";
 
     buildInputs = [ vdr ];
 
@@ -155,17 +158,17 @@ in {
 
     src = fetchFromGitHub {
       repo = "vdr-plugin-vnsiserver";
-      owner = "FernetMenta";
-      rev = "v${version}";
-      sha256 = "0n7idpxqx7ayd63scl6xwdx828ik4kb2mwz0c30cfjnmnxxd45lw";
+      owner = "vdr-projects";
+      rev = version;
+      sha256 = "sha256-1C0Z7NoU+FNch4BhrAcbJdzVvGuH1YDaxJ+9PflR78E=";
     };
 
     meta = with lib; {
-      homepage = "https://github.com/FernetMenta/vdr-plugin-vnsiserver";
+      inherit (src.meta) homepage;
       description = "VDR plugin to handle KODI clients.";
       maintainers = [ maintainers.ck3d ];
       license = licenses.gpl2;
-      platforms = [ "i686-linux" "x86_64-linux" ];
+      inherit (vdr.meta) platforms;
     };
 
   };
@@ -201,7 +204,7 @@ in {
       description = "VDR Text2Skin Plugin";
       maintainers = [ maintainers.ck3d ];
       license = licenses.gpl2;
-      platforms = [ "i686-linux" "x86_64-linux" ];
+      inherit (vdr.meta) platforms;
     };
   };
 
@@ -222,11 +225,11 @@ in {
     installFlags = [ "DESTDIR=$(out)" ];
 
     meta = with lib; {
-      homepage = "https://github.com/jowi24/vdr-fritz";
+      inherit (src.meta) homepage;
       description = "A plugin for VDR to access AVMs Fritz Box routers";
       maintainers = [ maintainers.ck3d ];
       license = licenses.gpl2;
-      platforms = [ "i686-linux" "x86_64-linux" ];
+      inherit (vdr.meta) platforms;
     };
   };
 }
diff --git a/pkgs/applications/video/vdr/softhddevice/default.nix b/pkgs/applications/video/vdr/softhddevice/default.nix
index 1b7f4128ca61d..187a493b2502e 100644
--- a/pkgs/applications/video/vdr/softhddevice/default.nix
+++ b/pkgs/applications/video/vdr/softhddevice/default.nix
@@ -12,12 +12,12 @@
 }:
 stdenv.mkDerivation rec {
   pname = "vdr-softhddevice";
-  version = "1.9.0";
+  version = "1.9.2";
 
   src = fetchFromGitHub {
     owner = "ua0lnj";
     repo = "vdr-plugin-softhddevice";
-    sha256 = "sha256-IqG1Jr+fV4MMyTTOUGY34HNqS8qvAH+CSi2IEyVGVFo=";
+    sha256 = "sha256-2kh8qMxaAjekvgjMVRmm1nPzlN2wjY/6qYjFyo6CLlg=";
     rev = "v${version}";
   };
 
@@ -40,11 +40,11 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    homepage = "https://github.com/ua0lnj/vdr-plugin-softhddevice";
+    inherit (src.meta) homepage;
     description = "VDR SoftHDDevice Plug-in";
     maintainers = [ maintainers.ck3d ];
     license = licenses.gpl2;
-    platforms = [ "i686-linux" "x86_64-linux" ];
+    inherit (vdr.meta) platforms;
   };
 
 }
diff --git a/pkgs/applications/video/vdr/streamdev/default.nix b/pkgs/applications/video/vdr/streamdev/default.nix
index 6ef00deab0960..de45b31d86904 100644
--- a/pkgs/applications/video/vdr/streamdev/default.nix
+++ b/pkgs/applications/video/vdr/streamdev/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with lib;{
-    homepage = "https://github.com/vdr-projects/vdr-plugin-streamdev";
+    inherit (src.meta) homepage;
     description = "This PlugIn is a VDR implementation of the VTP (Video Transfer Protocol) Version 0.0.3 (see file PROTOCOL) and a basic HTTP Streaming Protocol.";
     maintainers = [ maintainers.ck3d ];
     license = licenses.gpl2;
diff --git a/pkgs/applications/video/vlc/default.nix b/pkgs/applications/video/vlc/default.nix
index e870b8572d8de..f3d3bf38b634e 100644
--- a/pkgs/applications/video/vlc/default.nix
+++ b/pkgs/applications/video/vlc/default.nix
@@ -64,6 +64,7 @@
 , systemd
 , taglib
 , unzip
+, xlibsWrapper
 , xorg
 , zlib
 , chromecastSupport ? true, libmicrodns, protobuf
@@ -149,6 +150,7 @@ stdenv.mkDerivation rec {
     srt
     systemd
     taglib
+    xlibsWrapper
     zlib
   ]
   ++ (with xorg; [
@@ -156,7 +158,6 @@ stdenv.mkDerivation rec {
     libXv
     libXvMC
     xcbutilkeysyms
-    xlibsWrapper
   ])
   ++ optional (!stdenv.hostPlatform.isAarch && !onlyLibVLC) live555
   ++ optional jackSupport libjack2
diff --git a/pkgs/applications/video/xine-ui/default.nix b/pkgs/applications/video/xine-ui/default.nix
index b4f610c7a91d3..d88172a592bd0 100644
--- a/pkgs/applications/video/xine-ui/default.nix
+++ b/pkgs/applications/video/xine-ui/default.nix
@@ -12,6 +12,7 @@
 , readline
 , shared-mime-info
 , xine-lib
+, xlibsWrapper
 , xorg
 }:
 
@@ -46,6 +47,7 @@ stdenv.mkDerivation rec {
     ncurses
     readline
     xine-lib
+    xlibsWrapper
   ] ++ (with xorg; [
     libXext
     libXft
@@ -54,7 +56,6 @@ stdenv.mkDerivation rec {
     libXtst
     libXv
     libXxf86vm
-    xlibsWrapper
     xorgproto
   ]);
 
diff --git a/pkgs/applications/virtualization/buildkit-nix/default.nix b/pkgs/applications/virtualization/buildkit-nix/default.nix
index 1a7a8c9330462..940a1d7bb7f4a 100644
--- a/pkgs/applications/virtualization/buildkit-nix/default.nix
+++ b/pkgs/applications/virtualization/buildkit-nix/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "buildkit-nix";
-  version = "0.0.2";
+  version = "0.0.3";
 
   src = fetchFromGitHub {
     owner = "AkihiroSuda";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-k9YO4KFIDebfszhKG6RYDFlVfbUPFHRsHRQXXlJ6SoU=";
+    sha256 = "sha256-hrrvDby+UDwY0wvq/HIP9lYVEa/flr/1gtGXHMN8Mug=";
   };
 
-  vendorSha256 = "sha256-c+VHt2uTaEQIXsmJ9TA7X5lfMxGL9yKbbnnXn4drCLU=";
+  vendorSha256 = "sha256-1H5oWgcaamf+hocABWWnzJUjWiqwk1ZZtbBjF6EKzzU=";
 
   CGO_ENABLED = 0;
 
diff --git a/pkgs/applications/virtualization/colima/default.nix b/pkgs/applications/virtualization/colima/default.nix
index cec54e0b2ed18..d19a764e4eb1d 100644
--- a/pkgs/applications/virtualization/colima/default.nix
+++ b/pkgs/applications/virtualization/colima/default.nix
@@ -11,13 +11,13 @@
 
 buildGoModule rec {
   pname = "colima";
-  version = "0.4.5";
+  version = "0.4.6";
 
   src = fetchFromGitHub {
     owner = "abiosoft";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-hoxEf62EPD/WFXW6qbPCvEwViwmme3pSBfjeKOLsGjc=";
+    sha256 = "sha256-mVEp/4iL23rrw6HSl/7qMGK4YCJ6I+9gcSIhyPsAWzc=";
     # We need the git revision
     leaveDotGit = true;
     postFetch = ''
diff --git a/pkgs/applications/virtualization/cri-o/default.nix b/pkgs/applications/virtualization/cri-o/default.nix
index 43c94682e0427..4f54b4044cd0e 100644
--- a/pkgs/applications/virtualization/cri-o/default.nix
+++ b/pkgs/applications/virtualization/cri-o/default.nix
@@ -15,13 +15,13 @@
 
 buildGoModule rec {
   pname = "cri-o";
-  version = "1.25.0";
+  version = "1.25.1";
 
   src = fetchFromGitHub {
     owner = "cri-o";
     repo = "cri-o";
     rev = "v${version}";
-    sha256 = "sha256-3J/fiaJL828P0L0vgwcR3DbMASt3fcwnLBu33SFDlx0=";
+    sha256 = "sha256-MFqCRHsIpc8ianyNW+PsDINQavbTZs2rZ2k6q/6wTkY=";
   };
   vendorSha256 = null;
 
diff --git a/pkgs/applications/virtualization/ecs-agent/default.nix b/pkgs/applications/virtualization/ecs-agent/default.nix
index da77aaca0f256..0b8706e326733 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.63.1";
+  version = "1.64.0";
 
   goPackagePath = "github.com/aws/${pname}";
   subPackages   = [ "agent" ];
@@ -11,7 +11,7 @@ buildGoPackage rec {
     rev    = "v${version}";
     owner  = "aws";
     repo   = pname;
-    sha256 = "sha256-wnDwLpCDeIC2D2X/pzC6ZsudJz58xLo1PQB+K6WNxBE=";
+    sha256 = "sha256-n7iq9CcTjbFc5on5DPVjjS7FY4Bnf/KDdOoHHzDkL30=";
   };
 
   meta = with lib; {
diff --git a/pkgs/applications/virtualization/podman-tui/default.nix b/pkgs/applications/virtualization/podman-tui/default.nix
index 78da45fd854ac..88ae7318c5067 100644
--- a/pkgs/applications/virtualization/podman-tui/default.nix
+++ b/pkgs/applications/virtualization/podman-tui/default.nix
@@ -2,7 +2,6 @@
 , stdenv
 , pkg-config
 , fetchFromGitHub
-, fetchpatch
 , buildGoModule
 , btrfs-progs
 , gpgme
@@ -13,23 +12,15 @@
 }:
 buildGoModule rec {
   pname = "podman-tui";
-  version = "0.5.0";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = "podman-tui";
     rev = "v${version}";
-    sha256 = "sha256-XLC1DqOME9xMF4z+cOPe5H60JnxU9gGaSOQQIofdtj8=";
+    sha256 = "sha256-9ZFyrRf4yMik4+TQYN+75fWuKHuI8hkaKJ6o5qWYb7E=";
   };
 
-  patches = [
-    # Fix flaky tests. See https://github.com/containers/podman-tui/pull/129.
-    (fetchpatch {
-      url = "https://github.com/containers/podman-tui/commit/7fff27e95a3891163da79d86bbc796f29b523f80.patch";
-      sha256 = "sha256-mETDXoMLq7vb8Qhpz/CmNG1LmY2DTaogI10Qav/qN9Q=";
-    })
-  ];
-
   vendorSha256 = null;
 
   nativeBuildInputs = [ pkg-config ];
@@ -39,9 +30,16 @@ buildGoModule rec {
 
   ldflags = [ "-s" "-w" ];
 
-  preCheck = ''
-    export HOME=/home/$(whoami)
-  '';
+  preCheck =
+    let skippedTests = [
+      "TestNetdialogs"
+    ]; in
+    ''
+      export HOME=/home/$(whoami)
+
+      # Disable flaky tests
+      buildFlagsArray+=("-run" "[^(${builtins.concatStringsSep "|" skippedTests})]")
+    '';
 
   passthru.tests.version = testers.testVersion {
     package = podman-tui;
diff --git a/pkgs/applications/virtualization/pods/default.nix b/pkgs/applications/virtualization/pods/default.nix
index 5d811b59066b0..cb4cea09ec2c0 100644
--- a/pkgs/applications/virtualization/pods/default.nix
+++ b/pkgs/applications/virtualization/pods/default.nix
@@ -8,26 +8,26 @@
 , ninja
 , pkg-config
 , rustPlatform
-, wrapGAppsHook
+, wrapGAppsHook4
 , gtksourceview5
 , libadwaita
 }:
 
 stdenv.mkDerivation rec {
   pname = "pods";
-  version = "1.0.0-beta.4";
+  version = "1.0.0-beta.5";
 
   src = fetchFromGitHub {
     owner = "marhkb";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1j5rz43860n17qcxmc5dj8sll3y593jj9zz1sfvnx4g0694sp0cl";
+    sha256 = "sha256-Bp/ILQY5Xa8wrq7v9O9QohWzlevdN3MwMjjnlimt6HM=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
-    sha256 = "sha256-tj0ROO8HmFWyQLYDrdywOneHz6X43dRZJFTB+aw+m7o=";
+    sha256 = "sha256-iToznqaNXArVrSdDXGPJol3OeFdM3J8VgYSs+mjM0SE=";
   };
 
   nativeBuildInputs = [
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
     rustPlatform.cargoSetupHook
     rustPlatform.rust.cargo
     rustPlatform.rust.rustc
-    wrapGAppsHook
+    wrapGAppsHook4
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/virtualization/qemu/canokey-qemu.nix b/pkgs/applications/virtualization/qemu/canokey-qemu.nix
new file mode 100644
index 0000000000000..9536b91ba5403
--- /dev/null
+++ b/pkgs/applications/virtualization/qemu/canokey-qemu.nix
@@ -0,0 +1,35 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  cmake,
+}:
+stdenv.mkDerivation rec {
+  pname = "canokey-qemu";
+  version = "unstable-2022-06-23";
+  rev = "b70af31229f1858089c3366f71b8d771de4a1e84";
+
+  src = fetchFromGitHub {
+    owner = "canokeys";
+    repo = "canokey-qemu";
+    inherit rev;
+    fetchSubmodules = true;
+    hash = "sha256-VJb59K/skx+DhoJs5qGUu070hAjQZC2Z6hAMXuX0bMw=";
+  };
+
+  postPatch = ''
+    substituteInPlace canokey-core/CMakeLists.txt \
+      --replace "COMMAND git describe --always --tags --long --abbrev=8 --dirty >>" "COMMAND echo '$rev' >>"
+  '';
+
+  outputs = [ "out" "dev" ];
+
+  nativeBuildInputs = [ cmake ];
+
+  meta = with lib; {
+    homepage = "https://github.com/canokeys/canokey-qemu";
+    description = "CanoKey QEMU Virt Card";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ oxalica ];
+  };
+}
diff --git a/pkgs/applications/virtualization/qemu/default.nix b/pkgs/applications/virtualization/qemu/default.nix
index 8e7a683ed33e7..4f55b48bc540c 100644
--- a/pkgs/applications/virtualization/qemu/default.nix
+++ b/pkgs/applications/virtualization/qemu/default.nix
@@ -26,6 +26,7 @@
 , smbdSupport ? false, samba
 , tpmSupport ? true
 , uringSupport ? stdenv.isLinux, liburing
+, canokeySupport ? false, canokey-qemu
 , hostCpuOnly ? false
 , hostCpuTargets ? (if hostCpuOnly
                     then (lib.optional stdenv.isx86_64 "i386-softmmu"
@@ -79,7 +80,8 @@ stdenv.mkDerivation rec {
     ++ lib.optionals virglSupport [ virglrenderer ]
     ++ lib.optionals libiscsiSupport [ libiscsi ]
     ++ lib.optionals smbdSupport [ samba ]
-    ++ lib.optionals uringSupport [ liburing ];
+    ++ lib.optionals uringSupport [ liburing ]
+    ++ lib.optionals canokeySupport [ canokey-qemu ];
 
   dontUseMesonConfigure = true; # meson's configurePhase isn't compatible with qemu build
 
@@ -161,7 +163,8 @@ stdenv.mkDerivation rec {
     ++ lib.optional tpmSupport "--enable-tpm"
     ++ lib.optional libiscsiSupport "--enable-libiscsi"
     ++ lib.optional smbdSupport "--smbd=${samba}/bin/smbd"
-    ++ lib.optional uringSupport "--enable-linux-io-uring";
+    ++ lib.optional uringSupport "--enable-linux-io-uring"
+    ++ lib.optional canokeySupport "--enable-canokey";
 
   dontWrapGApps = true;
 
diff --git a/pkgs/applications/virtualization/xen/generic.nix b/pkgs/applications/virtualization/xen/generic.nix
index cde71d2b87fa4..234d72e468287 100644
--- a/pkgs/applications/virtualization/xen/generic.nix
+++ b/pkgs/applications/virtualization/xen/generic.nix
@@ -66,9 +66,9 @@ stdenv.mkDerivation (rec {
 
   hardeningDisable = [ "stackprotector" "fortify" "pic" ];
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [ pkg-config cmake ];
   buildInputs = [
-    cmake which
+    which
 
     # Xen
     bison bzip2 checkpolicy dev86 figlet flex gettext glib acpica-tools libaio
diff --git a/pkgs/applications/window-managers/dwm/default.nix b/pkgs/applications/window-managers/dwm/default.nix
index 68e1467c5a8cd..a097900707727 100644
--- a/pkgs/applications/window-managers/dwm/default.nix
+++ b/pkgs/applications/window-managers/dwm/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "dwm";
-  version = "6.3";
+  version = "6.4";
 
   src = fetchurl {
     url = "https://dl.suckless.org/dwm/${pname}-${version}.tar.gz";
-    sha256 = "utqgKFKbH7of1/moTztk8xGQRmyFgBG1Pi97cMajB40=";
+    sha256 = "sha256-+pwNaaWESFB2z8GICf1wXlwggNr7E9XnKaNkbKdwOm4=";
   };
 
   buildInputs = [ libX11 libXinerama libXft ];
diff --git a/pkgs/applications/window-managers/fbpanel/default.nix b/pkgs/applications/window-managers/fbpanel/default.nix
index 33a313eb8eec5..6dc22a664d3dc 100644
--- a/pkgs/applications/window-managers/fbpanel/default.nix
+++ b/pkgs/applications/window-managers/fbpanel/default.nix
@@ -9,8 +9,9 @@ stdenv.mkDerivation rec {
     url = "mirror://sourceforge/fbpanel/${pname}-${version}.tbz2";
     sha256 = "e14542cc81ea06e64dd4708546f5fd3f5e01884c3e4617885c7ef22af8cf3965";
   };
+  nativeBuildInputs = [ pkg-config ];
   buildInputs =
-    [ pkg-config libX11 libXmu libXpm gtk2 libpng libjpeg libtiff librsvg gdk-pixbuf gdk-pixbuf-xlib.dev ];
+    [ libX11 libXmu libXpm gtk2 libpng libjpeg libtiff librsvg gdk-pixbuf gdk-pixbuf-xlib.dev ];
 
   preConfigure = "patchShebangs .";
 
diff --git a/pkgs/applications/window-managers/icewm/default.nix b/pkgs/applications/window-managers/icewm/default.nix
index 2bff603cbd99d..d9a103035668c 100644
--- a/pkgs/applications/window-managers/icewm/default.nix
+++ b/pkgs/applications/window-managers/icewm/default.nix
@@ -39,13 +39,13 @@
 
 stdenv.mkDerivation rec {
   pname = "icewm";
-  version = "2.9.9";
+  version = "3.0.1";
 
   src = fetchFromGitHub {
     owner = "ice-wm";
     repo = pname;
     rev = version;
-    hash = "sha256-55xi4GsP41FXJ/B/zEnjru72FhZQhXnpEdHcN0WF9Kk=";
+    hash = "sha256-0mnhH/7Y4VXpNUU++ln2//9/vuTxq9sa2D933Cf7Ifw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/window-managers/leftwm/default.nix b/pkgs/applications/window-managers/leftwm/default.nix
index 2374d23c1d640..fe3e46f7b47a6 100644
--- a/pkgs/applications/window-managers/leftwm/default.nix
+++ b/pkgs/applications/window-managers/leftwm/default.nix
@@ -6,16 +6,16 @@ in
 
 rustPlatform.buildRustPackage rec {
   pname = "leftwm";
-  version = "0.3.0";
+  version = "0.4.0";
 
   src = fetchFromGitHub {
     owner = "leftwm";
     repo = "leftwm";
     rev = version;
-    sha256 = "sha256-AfE36u5xSfivkg+hmJ6ASh6zXmTnLOv5RFigkGzySng=";
+    sha256 = "sha256-4f9YOVkOXn7+TzTUZS2Lultgj9WhiOPUa/fHUeyLBUU=";
   };
 
-  cargoSha256 = "sha256-MmxF1jt5VUZGbkEe858HBjAuHhgDY23MJJxpYQ4ckhs=";
+  cargoSha256 = "sha256-D00IFTELRlqeKQ7zheJKTvu5FBgYQXsZ+OnPnVzweC4=";
 
   buildInputs = rpathLibs;
 
diff --git a/pkgs/applications/window-managers/sway/wsr.nix b/pkgs/applications/window-managers/sway/wsr.nix
index 64d9fd7d7db3e..23a82bd2df08d 100644
--- a/pkgs/applications/window-managers/sway/wsr.nix
+++ b/pkgs/applications/window-managers/sway/wsr.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "swaywsr";
-  version = "1.1.0";
+  version = "1.1.1";
 
   src = fetchFromGitHub {
     owner = "pedroscaff";
     repo = pname;
-    rev = "6c4671c702f647395d983aaf607286db1c692db6";
-    sha256 = "0bmpbhyvgnbi5baj6v0wdxpdh9cnlzvcc44vh3vihmzsp6i5q05a";
+    rev = "0276b43824af5c40085248c1275feaa372c412a5";
+    sha256 = "sha256-KCMsn9uevmmjHkP4zwfaWSUI10JgT3M91iqmXI9Cv2Y=";
   };
 
-  cargoSha256 = "1pmkyw60ggn5filb47nyf97g1arrw7nfa4yjndnx35zw12mkj61d";
+  cargoSha256 = "sha256-j/9p28ezy8m5NXReOmG1oryWd+GcY/fNW6i7OrEvjSc=";
 
   nativeBuildInputs = [ python3 ];
   buildInputs = [ libxcb ];
diff --git a/pkgs/applications/window-managers/weston/default.nix b/pkgs/applications/window-managers/weston/default.nix
index f383e3c85aeb5..177e185d82734 100644
--- a/pkgs/applications/window-managers/weston/default.nix
+++ b/pkgs/applications/window-managers/weston/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchurl
 , meson, ninja, pkg-config, python3, wayland-scanner
 , cairo, colord, dbus, lcms2, libGL, libXcursor, libdrm, libevdev, libinput
-, libjpeg, libseat, libxcb, libxkbcommon, mesa, mtdev, pam, udev, wayland
+, libjpeg, seatd, libxcb, libxkbcommon, mesa, mtdev, pam, udev, wayland
 , wayland-protocols, xlibsWrapper
 , pipewire ? null, pango ? null, libunwind ? null, freerdp ? null, vaapi ? null
 , libva ? null, libwebp ? null, xwayland ? null
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ meson ninja pkg-config python3 wayland-scanner ];
   buildInputs = [
     cairo colord dbus freerdp lcms2 libGL libXcursor libdrm libevdev libinput
-    libjpeg libseat libunwind libva libwebp libxcb libxkbcommon mesa mtdev pam
+    libjpeg seatd libunwind libva libwebp libxcb libxkbcommon mesa mtdev pam
     pango pipewire udev vaapi wayland wayland-protocols xlibsWrapper
   ];
 
diff --git a/pkgs/applications/window-managers/xmonad/xmonadctl.nix b/pkgs/applications/window-managers/xmonad/xmonadctl.nix
index da1e414d84168..e0c4523404562 100644
--- a/pkgs/applications/window-managers/xmonad/xmonadctl.nix
+++ b/pkgs/applications/window-managers/xmonad/xmonadctl.nix
@@ -1,16 +1,10 @@
-{ stdenv, lib, fetchFromGitHub, ghcWithPackages, ... }:
+{ stdenv, lib, fetchFromGitHub, ghcWithPackages, haskellPackages, ... }:
 
 let xmonadctlEnv = ghcWithPackages (self: [ self.xmonad-contrib self.X11 ]);
 in stdenv.mkDerivation rec {
   pname = "xmonadctl";
-  version = "0.17.0";
 
-  src = fetchFromGitHub {
-    owner = "xmonad";
-    repo = "xmonad-contrib";
-    rev = "v${version}";
-    sha256 = "142ycg7dammq98drimv6xbih8dla9qindxds9fgkspmrrils3sar";
-  };
+  inherit (haskellPackages.xmonad-contrib) src version;
 
   installPhase = ''
     runHook preInstall
diff --git a/pkgs/build-support/cc-wrapper/cc-wrapper.sh b/pkgs/build-support/cc-wrapper/cc-wrapper.sh
index 83b6817798f26..78759f2cfbbc4 100644
--- a/pkgs/build-support/cc-wrapper/cc-wrapper.sh
+++ b/pkgs/build-support/cc-wrapper/cc-wrapper.sh
@@ -122,6 +122,31 @@ fi
 
 if [[ "$isCxx" = 1 ]]; then
     if [[ "$cxxInclude" = 1 ]]; then
+        #
+        # The motivation for this comment is to explain the reason for appending
+        # the C++ stdlib to NIX_CFLAGS_COMPILE, which I initially thought should
+        # change and later realized it shouldn't in:
+        #
+        #   https://github.com/NixOS/nixpkgs/pull/185569#issuecomment-1234959249
+        #
+        # NIX_CFLAGS_COMPILE contains dependencies added using "-isystem", and
+        # NIX_CXXSTDLIB_COMPILE adds the C++ stdlib using "-isystem". Appending
+        # NIX_CXXSTDLIB_COMPILE to NIX_CLAGS_COMPILE emulates this part of the
+        # include lookup order from GCC/Clang:
+        #
+        # > 4. Directories specified with -isystem options are scanned in
+        # >    left-to-right order.
+        # > 5. Standard system directories are scanned.
+        # > 6. Directories specified with -idirafter options are scanned
+        # >    in left-to-right order.
+        #
+        # NIX_CXX_STDLIB_COMPILE acts as the "standard system directories" that
+        # are otherwise missing from CC in nixpkgs, so should be added last.
+        #
+        # This means that the C standard library should never be present inside
+        # NIX_CFLAGS_COMPILE, because it MUST come after the C++ stdlib. It is
+        # added automatically by cc-wrapper later using "-idirafter".
+        #
         NIX_CFLAGS_COMPILE_@suffixSalt@+=" $NIX_CXXSTDLIB_COMPILE_@suffixSalt@"
     fi
     if [[ "$cxxLibrary" = 1 ]]; then
diff --git a/pkgs/build-support/coq/default.nix b/pkgs/build-support/coq/default.nix
index 0dc5c999ea357..e0ba7b3e08c8c 100644
--- a/pkgs/build-support/coq/default.nix
+++ b/pkgs/build-support/coq/default.nix
@@ -30,8 +30,8 @@ in
   dropAttrs ? [],
   keepAttrs ? [],
   dropDerivationAttrs ? [],
-  useDune2ifVersion ? (x: false),
-  useDune2 ? false,
+  useDuneifVersion ? (x: false),
+  useDune ? false,
   opam-name ? (concatStringsSep "-" (namePrefix ++ [ pname ])),
   ...
 }@args:
@@ -44,7 +44,7 @@ let
     "extraBuildInputs" "extraNativeBuildInputs"
     "overrideBuildInputs" "overrideNativeBuildInputs"
     "namePrefix"
-    "meta" "useDune2ifVersion" "useDune2" "opam-name"
+    "meta" "useDuneifVersion" "useDune" "opam-name"
     "extraInstallFlags" "setCOQBIN" "mlPlugin"
     "dropAttrs" "dropDerivationAttrs" "keepAttrs" ] ++ dropAttrs) keepAttrs;
   fetch = import ../coq/meta-fetch/default.nix
@@ -65,7 +65,7 @@ let
     ] "") + optionalString (v == null) "-broken";
   append-version = p: n: p + display-pkg n "" coqPackages.${n}.version + "-";
   prefix-name = foldl append-version "" namePrefix;
-  useDune2 = args.useDune2 or (useDune2ifVersion fetched.version);
+  useDune = args.useDune or (useDuneifVersion fetched.version);
   coqlib-flags = switch coq.coq-version [
     { case = v: versions.isLe "8.6" v && v != "dev" ;
       out = [ "COQLIB=$(out)/lib/coq/${coq.coq-version}/" ]; }
@@ -85,8 +85,8 @@ stdenv.mkDerivation (removeAttrs ({
 
   nativeBuildInputs = args.overrideNativeBuildInputs
     or ([ which coq.ocamlPackages.findlib ]
-        ++ optional useDune2 coq.ocamlPackages.dune_2
-        ++ optional (useDune2 || mlPlugin) coq.ocamlPackages.ocaml
+        ++ optional useDune coq.ocamlPackages.dune_3
+        ++ optional (useDune || mlPlugin) coq.ocamlPackages.ocaml
         ++ (args.nativeBuildInputs or []) ++ extraNativeBuildInputs);
   buildInputs = args.overrideBuildInputs
     or ([ coq ] ++ (args.buildInputs or []) ++ extraBuildInputs);
@@ -107,7 +107,7 @@ stdenv.mkDerivation (removeAttrs ({
     coqlib-flags ++ docdir-flags ++
     extraInstallFlags;
 })
-// (optionalAttrs useDune2 {
+// (optionalAttrs useDune {
   buildPhase = ''
     runHook preBuild
     dune build -p ${opam-name} ''${enableParallelBuilding:+-j $NIX_BUILD_CORES}
diff --git a/pkgs/build-support/dotnet/build-dotnet-module/default.nix b/pkgs/build-support/dotnet/build-dotnet-module/default.nix
index b65aecd7e05c2..5a465b48c1d7e 100644
--- a/pkgs/build-support/dotnet/build-dotnet-module/default.nix
+++ b/pkgs/build-support/dotnet/build-dotnet-module/default.nix
@@ -83,6 +83,11 @@
 } @ args:
 
 let
+  platforms =
+    if args ? meta.platforms
+    then lib.intersectLists args.meta.platforms dotnet-sdk.meta.platforms
+    else dotnet-sdk.meta.platforms;
+
   inherit (callPackage ./hooks {
     inherit dotnet-sdk dotnet-test-sdk disabledTests nuget-source dotnet-runtime runtimeDeps buildType;
   }) dotnetConfigureHook dotnetBuildHook dotnetCheckHook dotnetInstallHook dotnetFixupHook;
@@ -152,9 +157,6 @@ stdenvNoCC.mkDerivation (args // {
 
     fetch-deps =
       let
-        # Because this list is rather long its put in its own store path to maintain readability of the generated script
-        exclusions = writeText "nuget-package-exclusions" (lib.concatStringsSep "\n" (dotnet-sdk.passthru.packages { fetchNuGet = attrs: attrs.pname; }));
-
         # Derivations may set flags such as `--runtime <rid>` based on the host platform to avoid restoring/building nuget dependencies they dont have or dont need.
         # This introduces an issue; In this script we loop over all platforms from `meta` and add the RID flag for it, as to fetch all required dependencies.
         # The script would inherit the RID flag from the derivation based on the platform building the script, and set the flag for any iteration we do over the RIDs.
@@ -165,12 +167,12 @@ stdenvNoCC.mkDerivation (args // {
           in
           builtins.filter (flag: !(hasRid flag)) (dotnetFlags ++ dotnetRestoreFlags);
 
-        runtimeIds = map (system: dotnet-sdk.systemToDotnetRid system) (args.meta.platforms or dotnet-sdk.meta.platforms);
+        runtimeIds = map (system: dotnet-sdk.systemToDotnetRid system) platforms;
       in
       writeShellScript "fetch-${pname}-deps" ''
         set -euo pipefail
 
-        export PATH="${lib.makeBinPath [ coreutils dotnet-sdk nuget-to-nix ]}"
+        export PATH="${lib.makeBinPath [ coreutils dotnet-sdk (nuget-to-nix.override { inherit dotnet-sdk; }) ]}"
 
         for arg in "$@"; do
             case "$arg" in
@@ -179,7 +181,7 @@ stdenvNoCC.mkDerivation (args // {
                     shift
                     ;;
                 --help|-h)
-                    echo "usage: $0 <output path> [--keep-sources] [--help]"
+                    echo "usage: $0 [--keep-sources] [--help] <output path>"
                     echo "    <output path>   The path to write the lockfile to. A temporary file is used if this is not set"
                     echo "    --keep-sources  Dont remove temporary directories upon exit, useful for debugging"
                     echo "    --help          Show this help message"
@@ -188,14 +190,17 @@ stdenvNoCC.mkDerivation (args // {
             esac
         done
 
+        export tmp=$(mktemp -td "${pname}-tmp-XXXXXX")
+        HOME=$tmp/home
+
         exitTrap() {
             test -n "''${ranTrap-}" && return
             ranTrap=1
 
             if test -n "''${keepSources-}"; then
-                echo -e "Path to the source: $src\nPath to the fake home: $HOME"
+                echo -e "Path to the source: $tmp/src\nPath to the fake home: $tmp/home"
             else
-                rm -rf "$src" "$HOME"
+                rm -rf "$tmp"
             fi
 
             # Since mktemp is used this will be empty if the script didnt succesfully complete
@@ -211,8 +216,10 @@ stdenvNoCC.mkDerivation (args // {
             dotnet restore ''${project-} \
                 -p:ContinuousIntegrationBuild=true \
                 -p:Deterministic=true \
-                --packages "$HOME/nuget_pkgs" \
+                --packages "$tmp/nuget_pkgs" \
                 --runtime "$rid" \
+                --no-cache \
+                --force \
                 ${lib.optionalString (!enableParallelBuilding) "--disable-parallel"} \
                 ${lib.optionalString (flags != []) (toString flags)}
         }
@@ -220,15 +227,14 @@ stdenvNoCC.mkDerivation (args // {
         declare -a projectFiles=( ${toString (lib.toList projectFile)} )
         declare -a testProjectFiles=( ${toString (lib.toList testProjectFile)} )
 
-        export HOME=$(mktemp -td "${pname}-home-XXXXXX")
         export DOTNET_NOLOGO=1
         export DOTNET_CLI_TELEMETRY_OPTOUT=1
 
-        depsFile="$(realpath "''${1:-$(mktemp -t "${pname}-deps-XXXXXX.nix")}")"
-        mkdir -p "$HOME/nuget_pkgs"
+        depsFile=$(realpath "''${1:-$(mktemp -t "${pname}-deps-XXXXXX.nix")}")
+        mkdir -p "$tmp/nuget_pkgs"
 
         storeSrc="${srcOnly args}"
-        src="$(mktemp -td "${pname}-src-XXXXXX")"
+        src=$tmp/src
         cp -rT "$storeSrc" "$src"
         chmod -R +w "$src"
 
@@ -247,12 +253,10 @@ stdenvNoCC.mkDerivation (args // {
 
         echo "Writing lockfile..."
         echo -e "# This file was automatically generated by passthru.fetch-deps.\n# Please dont edit it manually, your changes might get overwritten!\n" > "$depsFile"
-        nuget-to-nix "$HOME/nuget_pkgs" "${exclusions}" >> "$depsFile"
+        nuget-to-nix "$tmp/nuget_pkgs" "${sdkDeps}" >> "$depsFile"
         echo "Succesfully wrote lockfile to $depsFile"
       '';
   } // args.passthru or { };
 
-  meta = {
-    platforms = dotnet-sdk.meta.platforms;
-  } // args.meta or { };
+  meta = (args.meta or { }) // { inherit platforms; };
 })
diff --git a/pkgs/build-support/dotnet/nuget-to-nix/default.nix b/pkgs/build-support/dotnet/nuget-to-nix/default.nix
index e3a3e45ac20cf..3fdda4ac68d33 100644
--- a/pkgs/build-support/dotnet/nuget-to-nix/default.nix
+++ b/pkgs/build-support/dotnet/nuget-to-nix/default.nix
@@ -4,11 +4,12 @@
 , substituteAll
 , nix
 , coreutils
-, findutils
-, gnused
 , jq
+, yq
 , curl
 , gnugrep
+, gawk
+, dotnet-sdk
 }:
 
 runCommandLocal "nuget-to-nix" {
@@ -19,11 +20,12 @@ runCommandLocal "nuget-to-nix" {
     binPath = lib.makeBinPath [
       nix
       coreutils
-      findutils
-      gnused
       jq
+      yq
       curl
       gnugrep
+      gawk
+      dotnet-sdk
     ];
   };
 
diff --git a/pkgs/build-support/dotnet/nuget-to-nix/nuget-to-nix.sh b/pkgs/build-support/dotnet/nuget-to-nix/nuget-to-nix.sh
index 5685b0f62bd92..760350ab05178 100755
--- a/pkgs/build-support/dotnet/nuget-to-nix/nuget-to-nix.sh
+++ b/pkgs/build-support/dotnet/nuget-to-nix/nuget-to-nix.sh
@@ -3,44 +3,82 @@
 set -euo pipefail
 
 export PATH="@binPath@"
+# used for glob ordering of package names
+export LC_ALL=C
 
 if [ $# -eq 0 ]; then
-  >&2 echo "Usage: $0 <packages directory> [path to file with a list of excluded packages] > deps.nix"
+  >&2 echo "Usage: $0 <packages directory> [path to excluded package source] > deps.nix"
   exit 1
 fi
 
 pkgs=$1
-exclusions="${2:-/dev/null}"
-tmpfile=$(mktemp /tmp/nuget-to-nix.XXXXXX)
-trap "rm -f ${tmpfile}" EXIT
+tmp=$(realpath "$(mktemp -td nuget-to-nix.XXXXXX)")
+trap 'rm -r "$tmp"' EXIT
+excluded_source=$(realpath "${2:-$tmp/empty}")
 
-declare -A nuget_sources_cache
+export DOTNET_NOLOGO=1
+export DOTNET_CLI_TELEMETRY_OPTOUT=1
 
-echo "{ fetchNuGet }: ["
+mapfile -t sources < <(dotnet nuget list source --format short | awk '/^E / { print $2 }')
+
+declare -A base_addresses
 
-while read pkg_spec; do
-  { read pkg_name; read pkg_version; } < <(
-    # Build version part should be ignored: `3.0.0-beta2.20059.3+77df2220` -> `3.0.0-beta2.20059.3`
-    sed -nE 's/.*<id>([^<]*).*/\1/p; s/.*<version>([^<+]*).*/\1/p' "$pkg_spec")
+for index in "${sources[@]}"; do
+  base_addresses[$index]=$(
+    curl --compressed --netrc -fsL "$index" | \
+      jq -r '.resources[] | select(."@type" == "PackageBaseAddress/3.0.0")."@id"')
+done
 
-  if grep "$pkg_name" "$exclusions" > /dev/null; then
-    continue
-  fi
+echo "{ fetchNuGet }: ["
 
-  pkg_sha256="$(nix-hash --type sha256 --flat --base32 "$(dirname "$pkg_spec")"/*.nupkg)"
+cd "$pkgs"
+for package in *; do
+  cd "$package"
+  for version in *; do
+    id=$(xq -r .package.metadata.id "$version/$package".nuspec)
 
-  pkg_src="$(jq --raw-output '.source' "$(dirname "$pkg_spec")/.nupkg.metadata")"
-  if [[ -d $pkg_src ]]; then
+    if [[ -e "$excluded_source/$id.$version".nupkg ]]; then
       continue
-  elif [[ $pkg_src != https://api.nuget.org/* ]]; then
-    pkg_source_url="${nuget_sources_cache[$pkg_src]:=$(curl -n --fail "$pkg_src" | jq --raw-output '.resources[] | select(."@type" == "PackageBaseAddress/3.0.0")."@id"')}"
-    pkg_url="$pkg_source_url${pkg_name,,}/${pkg_version,,}/${pkg_name,,}.${pkg_version,,}.nupkg"
-    echo "  (fetchNuGet { pname = \"$pkg_name\"; version = \"$pkg_version\"; sha256 = \"$pkg_sha256\"; url = \"$pkg_url\"; })" >> ${tmpfile}
-  else
-    echo "  (fetchNuGet { pname = \"$pkg_name\"; version = \"$pkg_version\"; sha256 = \"$pkg_sha256\"; })" >> ${tmpfile}
-  fi
-done < <(find $1 -name '*.nuspec')
-
-LC_ALL=C sort --ignore-case ${tmpfile}
-
-echo "]"
+    fi
+
+    used_source="$(jq -r '.source' "$version"/.nupkg.metadata)"
+    for source in "${sources[@]}"; do
+      url="${base_addresses[$source]}$package/$version/$package.$version.nupkg"
+      if [[ "$source" == "$used_source" ]]; then
+        sha256="$(nix-hash --type sha256 --flat --base32 "$version/$package.$version".nupkg)"
+        found=true
+        break
+      else
+        if sha256=$(nix-prefetch-url "$url" 2>"$tmp"/error); then
+          # If multiple remote sources are enabled, nuget will try them all
+          # concurrently and use the one that responds first. We always use the
+          # first source that has the package.
+          echo "$package $version is available on $url, but was downloaded from ${base_addresses[$used_source]}$package/$version/$package.$version.nupkg" 1>&2
+          found=true
+          break
+        else
+          if ! grep -q 'HTTP error 404' "$tmp/error"; then
+            cat "$tmp/error" 1>&2
+            exit 1
+          fi
+        fi
+      fi
+    done
+
+    if ! ${found-false}; then
+      echo "couldn't find $package $version" >&2
+      exit 1
+    fi
+
+    if [[ "$source" != https://api.nuget.org/v3/index.json ]]; then
+      echo "  (fetchNuGet { pname = \"$id\"; version = \"$version\"; sha256 = \"$sha256\"; url = \"$url\"; })"
+    else
+      echo "  (fetchNuGet { pname = \"$id\"; version = \"$version\"; sha256 = \"$sha256\"; })"
+    fi
+  done
+  cd ..
+done
+
+cat << EOL
+]
+EOL
diff --git a/pkgs/build-support/emacs/generic.nix b/pkgs/build-support/emacs/generic.nix
index 1b81dbcf9ed7e..e3d1505dde879 100644
--- a/pkgs/build-support/emacs/generic.nix
+++ b/pkgs/build-support/emacs/generic.nix
@@ -85,7 +85,7 @@ stdenv.mkDerivation ({
     addEmacsVars "$out"
 
     find $out/share/emacs -type f -name '*.el' -print0 \
-      | xargs -0 -n 1 -I {} -P $NIX_BUILD_CORES sh -c \
+      | xargs -0 -I {} -n 1 -P $NIX_BUILD_CORES sh -c \
           "emacs --batch --eval '(setq large-file-warning-threshold nil)' -f batch-native-compile {} || true"
   '';
 }
diff --git a/pkgs/build-support/fetchurl/default.nix b/pkgs/build-support/fetchurl/default.nix
index a85d53adb8292..28d2519f4232c 100644
--- a/pkgs/build-support/fetchurl/default.nix
+++ b/pkgs/build-support/fetchurl/default.nix
@@ -57,6 +57,10 @@ in
   # first element of `urls').
   name ? ""
 
+  # for versioned downloads optionally take pname + version.
+, pname ? ""
+, version ? ""
+
 , # SRI hash.
   hash ? ""
 
@@ -130,12 +134,16 @@ let
     else throw "fetchurl requires a hash for fixed-output derivation: ${lib.concatStringsSep ", " urls_}";
 in
 
-stdenvNoCC.mkDerivation {
-  name =
-    if showURLs then "urls"
-    else if name != "" then name
-    else baseNameOf (toString (builtins.head urls_));
-
+stdenvNoCC.mkDerivation ((
+  if (pname != "" && version != "") then
+    { inherit pname version; }
+  else
+    { name =
+      if showURLs then "urls"
+      else if name != "" then name
+      else baseNameOf (toString (builtins.head urls_));
+    }
+) // {
   builder = ./builder.sh;
 
   nativeBuildInputs = [ curl ] ++ nativeBuildInputs;
@@ -177,4 +185,4 @@ stdenvNoCC.mkDerivation {
 
   inherit meta;
   passthru = { inherit url; } // passthru;
-}
+})
diff --git a/pkgs/build-support/fetchzip/default.nix b/pkgs/build-support/fetchzip/default.nix
index 10142134792f5..9c08276cdb9b5 100644
--- a/pkgs/build-support/fetchzip/default.nix
+++ b/pkgs/build-support/fetchzip/default.nix
@@ -14,6 +14,8 @@
 , extraPostFetch ? ""
 , postFetch ? ""
 , name ? "source"
+, pname ? ""
+, version ? ""
 , nativeBuildInputs ? [ ]
 , # Allows to set the extension for the intermediate downloaded
   # file. This can be used as a hint for the unpackCmdHooks to select
@@ -23,14 +25,23 @@
 
 
 lib.warnIf (extraPostFetch != "") "use 'postFetch' instead of 'extraPostFetch' with 'fetchzip' and 'fetchFromGitHub'."
-(fetchurl (let
+
+(let
   tmpFilename =
     if extension != null
     then "download.${extension}"
     else baseNameOf (if url != "" then url else builtins.head urls);
-in {
-  inherit name;
+in
 
+fetchurl ((
+  if (pname != "" && version != "") then
+    {
+      name = "${name}-${version}";
+      inherit pname version;
+    }
+  else
+    { inherit name; }
+) // {
   recursiveHash = true;
 
   downloadToTemp = true;
diff --git a/pkgs/build-support/node/fetch-yarn-deps/default.nix b/pkgs/build-support/node/fetch-yarn-deps/default.nix
index 6d67b87915ac2..4cf2507706ae7 100644
--- a/pkgs/build-support/node/fetch-yarn-deps/default.nix
+++ b/pkgs/build-support/node/fetch-yarn-deps/default.nix
@@ -42,31 +42,36 @@ in {
   fetchYarnDeps = let
     f = {
       name ? "offline",
-      yarnLock,
+      src ? null,
       hash ? "",
       sha256 ? "",
-    }: let
+      ...
+    }@args: let
       hash_ =
         if hash != "" then { outputHashAlgo = null; outputHash = hash; }
         else if sha256 != "" then { outputHashAlgo = "sha256"; outputHash = sha256; }
         else { outputHashAlgo = "sha256"; outputHash = lib.fakeSha256; };
-    in stdenv.mkDerivation {
+    in stdenv.mkDerivation ({
       inherit name;
 
-      dontUnpack = true;
+      dontUnpack = src == null;
       dontInstall = true;
 
       nativeBuildInputs = [ prefetch-yarn-deps ];
       GIT_SSL_CAINFO = "${cacert}/etc/ssl/certs/ca-bundle.crt";
 
       buildPhase = ''
+        runHook preBuild
+
+        yarnLock=''${yarnLock:=$PWD/yarn.lock}
         mkdir -p $out
-        (cd $out; prefetch-yarn-deps --verbose --builder ${yarnLock})
+        (cd $out; prefetch-yarn-deps --verbose --builder $yarnLock)
+
+        runHook postBuild
       '';
 
       outputHashMode = "recursive";
-      inherit (hash_) outputHashAlgo outputHash;
-    };
+    } // hash_ // (removeAttrs args ["src" "name" "hash" "sha256"]));
 
   in lib.setFunctionArgs f (lib.functionArgs f) // {
     tests = callPackage ./tests {};
diff --git a/pkgs/build-support/rust/build-rust-package/default.nix b/pkgs/build-support/rust/build-rust-package/default.nix
index 84700ff29af09..812831c2959cc 100644
--- a/pkgs/build-support/rust/build-rust-package/default.nix
+++ b/pkgs/build-support/rust/build-rust-package/default.nix
@@ -124,7 +124,6 @@ stdenv.mkDerivation ((removeAttrs args [ "depsExtraArgs" "cargoUpdateHook" "carg
   ];
 
   buildInputs = buildInputs
-    ++ lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ]
     ++ lib.optionals stdenv.hostPlatform.isMinGW [ windows.pthreads ];
 
   patches = cargoPatches ++ patches;
diff --git a/pkgs/build-support/rust/hooks/cargo-setup-hook.sh b/pkgs/build-support/rust/hooks/cargo-setup-hook.sh
index 842e66b5170e5..b85796e2a41b8 100644
--- a/pkgs/build-support/rust/hooks/cargo-setup-hook.sh
+++ b/pkgs/build-support/rust/hooks/cargo-setup-hook.sh
@@ -7,23 +7,23 @@ cargoSetupPostUnpackHook() {
     # this for us automatically.
     if [ -z $cargoVendorDir ]; then
         unpackFile "$cargoDeps"
-        export cargoDepsCopy=$(stripHash $cargoDeps)
+        export cargoDepsCopy="$(realpath "$(stripHash $cargoDeps)")"
     else
-      cargoDepsCopy="$sourceRoot/${cargoRoot:+$cargoRoot/}${cargoVendorDir}"
+        cargoDepsCopy="$(realpath "$(pwd)/$sourceRoot/${cargoRoot:+$cargoRoot/}${cargoVendorDir}")"
     fi
 
     if [ ! -d .cargo ]; then
         mkdir .cargo
     fi
 
-    config="$(pwd)/$cargoDepsCopy/.cargo/config";
+    config="$cargoDepsCopy/.cargo/config";
     if [[ ! -e $config ]]; then
       config=@defaultConfig@
     fi;
 
     tmp_config=$(mktemp)
     substitute $config $tmp_config \
-      --subst-var-by vendor "$(pwd)/$cargoDepsCopy"
+      --subst-var-by vendor "$cargoDepsCopy"
     cat ${tmp_config} >> .cargo/config
 
     cat >> .cargo/config <<'EOF'
@@ -39,8 +39,8 @@ EOF
 cargoSetupPostPatchHook() {
     echo "Executing cargoSetupPostPatchHook"
 
-    cargoDepsLockfile="$NIX_BUILD_TOP/$cargoDepsCopy/Cargo.lock"
-    srcLockfile="$NIX_BUILD_TOP/$sourceRoot/${cargoRoot:+$cargoRoot/}/Cargo.lock"
+    cargoDepsLockfile="$cargoDepsCopy/Cargo.lock"
+    srcLockfile="$(pwd)/${cargoRoot:+$cargoRoot/}Cargo.lock"
 
     echo "Validating consistency between $srcLockfile and $cargoDepsLockfile"
     if ! @diff@ $srcLockfile $cargoDepsLockfile; then
diff --git a/pkgs/build-support/rust/lib/default.nix b/pkgs/build-support/rust/lib/default.nix
index 2be0c25678798..5eac208cc31ca 100644
--- a/pkgs/build-support/rust/lib/default.nix
+++ b/pkgs/build-support/rust/lib/default.nix
@@ -38,4 +38,9 @@ rec {
     if platform ? rustc.platform
     then builtins.toFile (toRustTarget platform + ".json") (builtins.toJSON platform.rustc.platform)
     else toRustTarget platform;
+
+  # Returns true if the target is no_std
+  # https://github.com/rust-lang/rust/blob/2e44c17c12cec45b6a682b1e53a04ac5b5fcc9d2/src/bootstrap/config.rs#L415-L421
+  IsNoStdTarget = platform: let rustTarget = toRustTarget platform; in
+    builtins.any (t: lib.hasInfix t rustTarget) ["-none" "nvptx" "switch" "-uefi"];
 }
diff --git a/pkgs/build-support/setup-hooks/make-binary-wrapper/default.nix b/pkgs/build-support/setup-hooks/make-binary-wrapper/default.nix
index 9f52a05f61cac..c9b03b75cd037 100644
--- a/pkgs/build-support/setup-hooks/make-binary-wrapper/default.nix
+++ b/pkgs/build-support/setup-hooks/make-binary-wrapper/default.nix
@@ -16,12 +16,14 @@ makeSetupHook {
 
   substitutions = {
     cc = "${cc}/bin/${cc.targetPrefix}cc ${lib.escapeShellArgs (map (s: "-fsanitize=${s}") sanitizers)}";
+  };
 
+  passthru = {
     # Extract the function call used to create a binary wrapper from its embedded docstring
-    passthru.extractCmd = writeShellScript "extract-binary-wrapper-cmd" ''
+    extractCmd = writeShellScript "extract-binary-wrapper-cmd" ''
       strings -dw "$1" | sed -n '/^makeCWrapper/,/^$/ p'
     '';
 
-    passthru.tests = tests.makeBinaryWrapper;
+    tests = tests.makeBinaryWrapper;
   };
 } ./make-binary-wrapper.sh
diff --git a/pkgs/build-support/setup-hooks/postgresql-test-hook/default.nix b/pkgs/build-support/setup-hooks/postgresql-test-hook/default.nix
index d0031c93c10cb..e9e77b0bbe6f8 100644
--- a/pkgs/build-support/setup-hooks/postgresql-test-hook/default.nix
+++ b/pkgs/build-support/setup-hooks/postgresql-test-hook/default.nix
@@ -1,9 +1,8 @@
 { callPackage, makeSetupHook }:
 
-(makeSetupHook {
+makeSetupHook {
   name = "postgresql-test-hook";
-} ./postgresql-test-hook.sh).overrideAttrs (o: {
   passthru.tests = {
     simple = callPackage ./test.nix { };
   };
-})
+} ./postgresql-test-hook.sh
diff --git a/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix b/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix
index d7699b2557fc4..5ef6138388562 100644
--- a/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix
+++ b/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix
@@ -13,6 +13,7 @@
 }:
 
 makeSetupHook {
+  name = "wrap-gapps-hook";
   deps = lib.optionals (!stdenv.isDarwin) [
     # It is highly probable that a program will use GSettings,
     # at minimum through GTK file chooser dialogue.
@@ -36,8 +37,8 @@ makeSetupHook {
     # We use the wrapProgram function.
     makeWrapper
   ];
-  substitutions = {
-    passthru.tests = let
+  passthru = {
+    tests = let
       sample-project = ./tests/sample-project;
 
       testLib = callPackage ./tests/lib.nix { };
diff --git a/pkgs/build-support/trivial-builders.nix b/pkgs/build-support/trivial-builders.nix
index e73cb9c5decb8..a8c291b823240 100644
--- a/pkgs/build-support/trivial-builders.nix
+++ b/pkgs/build-support/trivial-builders.nix
@@ -1,5 +1,12 @@
 { lib, stdenv, stdenvNoCC, lndir, runtimeShell, shellcheck }:
 
+let
+  inherit (lib)
+    optionalAttrs
+    warn
+    ;
+in
+
 rec {
 
   /* Run the shell command `buildCommand' to produce a store path named
@@ -525,12 +532,25 @@ rec {
    *                 substitutions = { bash = "${pkgs.bash}/bin/bash"; };
    *                 meta.platforms = lib.platforms.linux;
    *               } ./myscript.sh;
+   *
+   * # setup hook with a package test
+   * myhellohookTested = makeSetupHook {
+   *                 deps = [ hello ];
+   *                 substitutions = { bash = "${pkgs.bash}/bin/bash"; };
+   *                 meta.platforms = lib.platforms.linux;
+   *                 passthru.tests.greeting = callPackage ./test { };
+   *               } ./myscript.sh;
    */
-  makeSetupHook = { name ? "hook", deps ? [], substitutions ? {}, meta ? {} }: script:
+  makeSetupHook = { name ? "hook", deps ? [], substitutions ? {}, meta ? {}, passthru ? {} }: script:
     runCommand name
       (substitutions // {
         inherit meta;
         strictDeps = true;
+        # TODO 2023-01, no backport: simplify to inherit passthru;
+        passthru = passthru
+          // optionalAttrs (substitutions?passthru)
+            (warn "makeSetupHook (name = ${lib.strings.escapeNixString name}): `substitutions.passthru` is deprecated. Please set `passthru` directly."
+              substitutions.passthru);
       })
       (''
         mkdir -p $out/nix-support
diff --git a/pkgs/build-support/writers/default.nix b/pkgs/build-support/writers/default.nix
index 9fbc571daab40..167df5635c919 100644
--- a/pkgs/build-support/writers/default.nix
+++ b/pkgs/build-support/writers/default.nix
@@ -119,6 +119,21 @@ let
   writeDashBin = name:
     writeDash "/bin/${name}";
 
+  # Like writeScript but the first line is a shebang to fish
+  #
+  # Example:
+  #   writeFish "example" ''
+  #     echo hello world
+  #   ''
+  writeFish = makeScriptWriter {
+    interpreter = "${pkgs.fish}/bin/fish --no-config";
+    check = "${pkgs.fish}/bin/fish --no-config --no-execute";  # syntax check only
+  };
+
+  # Like writeScriptBin but the first line is a shebang to fish
+  writeFishBin = name:
+    writeFish "/bin/${name}";
+
   # writeHaskell takes a name, an attrset with libraries and haskell version (both optional)
   # and some haskell source code and returns an executable.
   #
diff --git a/pkgs/build-support/writers/test.nix b/pkgs/build-support/writers/test.nix
index d2e5cef83aad4..561c3e4ab0021 100644
--- a/pkgs/build-support/writers/test.nix
+++ b/pkgs/build-support/writers/test.nix
@@ -22,6 +22,12 @@ let
      test '~' = '~' && echo 'success'
     '';
 
+    fish = writeFishBin "test-writers-fish-bin" ''
+      if test "test" = "test"
+        echo "success"
+      end
+    '';
+
     rust = writeRustBin "test-writers-rust-bin" {} ''
       fn main(){
         println!("success")
@@ -94,6 +100,12 @@ let
      test '~' = '~' && echo 'success'
     '';
 
+    fish = writeFish "test-writers-fish" ''
+      if test "test" = "test"
+        echo "success"
+      end
+    '';
+
     haskell = writeHaskell "test-writers-haskell" { libraries = [ haskellPackages.acme-default ]; } ''
       import Data.Default
 
diff --git a/pkgs/common-updater/directory-listing-updater.nix b/pkgs/common-updater/directory-listing-updater.nix
new file mode 100644
index 0000000000000..fb7491ab879ac
--- /dev/null
+++ b/pkgs/common-updater/directory-listing-updater.nix
@@ -0,0 +1,19 @@
+{ lib
+, genericUpdater
+, common-updater-scripts
+}:
+
+{ pname ? null
+, version ? null
+, attrPath ? null
+, ignoredVersions ? ""
+, rev-prefix ? ""
+, odd-unstable ? false
+, patchlevel-unstable ? false
+, url ? null
+}:
+
+genericUpdater {
+  inherit pname version attrPath ignoredVersions rev-prefix odd-unstable patchlevel-unstable;
+  versionLister = "${common-updater-scripts}/bin/list-directory-versions ${lib.optionalString (url != null) "--url=${lib.escapeShellArg url}"}";
+}
diff --git a/pkgs/common-updater/generic-updater.nix b/pkgs/common-updater/generic-updater.nix
index 04adcf563814d..e75a6dd7ab05a 100644
--- a/pkgs/common-updater/generic-updater.nix
+++ b/pkgs/common-updater/generic-updater.nix
@@ -62,7 +62,7 @@ let
       return 1
     }
 
-    tags=$($version_lister --pname=$pname --attr-path=$attr_path --file="${fileForGitCommands}") || exit 1
+    tags=$(sh -c "$version_lister --pname=$pname --attr-path=$attr_path --file=\"${fileForGitCommands}\"") || exit 1
 
     # print available tags
     for tag in $tags; do
diff --git a/pkgs/common-updater/http-two-levels-updater.nix b/pkgs/common-updater/http-two-levels-updater.nix
index 8ece1161015c4..4656163c18a3f 100644
--- a/pkgs/common-updater/http-two-levels-updater.nix
+++ b/pkgs/common-updater/http-two-levels-updater.nix
@@ -15,5 +15,5 @@
 
 genericUpdater {
   inherit pname version attrPath ignoredVersions rev-prefix odd-unstable patchlevel-unstable;
-  versionLister = "${common-updater-scripts}/bin/list-archive-two-levels-versions ${lib.optionalString (url != null) "--url=${url}"}";
+  versionLister = "${common-updater-scripts}/bin/list-archive-two-levels-versions ${lib.optionalString (url != null) "--url=${lib.escapeShellArg url}"}";
 }
diff --git a/pkgs/common-updater/scripts.nix b/pkgs/common-updater/scripts.nix
index 26c77e8763622..d5ee3b58c504b 100644
--- a/pkgs/common-updater/scripts.nix
+++ b/pkgs/common-updater/scripts.nix
@@ -1,9 +1,28 @@
-{ lib, stdenv, makeWrapper, coreutils, gnused, gnugrep, diffutils, nix, git, jq }:
+{ lib
+, stdenv
+, makeWrapper
+, coreutils
+, diffutils
+, git
+, gnugrep
+, gnused
+, jq
+, nix
+, python3Packages
+}:
 
 stdenv.mkDerivation {
   name = "common-updater-scripts";
 
-  nativeBuildInputs = [ makeWrapper ];
+  nativeBuildInputs = [
+    makeWrapper
+    python3Packages.wrapPython
+  ];
+
+  pythonPath = [
+    python3Packages.beautifulsoup4
+    python3Packages.requests
+  ];
 
   dontUnpack = true;
 
@@ -11,8 +30,15 @@ stdenv.mkDerivation {
     mkdir -p $out/bin
     cp ${./scripts}/* $out/bin
 
+    # wrap non python scripts
     for f in $out/bin/*; do
-      wrapProgram $f --prefix PATH : ${lib.makeBinPath [ coreutils gnused gnugrep nix diffutils git jq ]}
+      if ! (head -n1 "$f" | grep -q '#!.*/env.*\(python\|pypy\)'); then
+        wrapProgram $f --prefix PATH : ${lib.makeBinPath [ coreutils diffutils git gnugrep gnused jq nix ]}
+      fi
     done
+
+    # wrap python scripts
+    makeWrapperArgs+=( --prefix PATH : "${lib.makeBinPath [ nix ]}" )
+    wrapPythonPrograms
   '';
 }
diff --git a/pkgs/common-updater/scripts/list-archive-two-levels-versions b/pkgs/common-updater/scripts/list-archive-two-levels-versions
index 11db08ad07b8f..e7c02ed90b06e 100755
--- a/pkgs/common-updater/scripts/list-archive-two-levels-versions
+++ b/pkgs/common-updater/scripts/list-archive-two-levels-versions
@@ -4,7 +4,7 @@
 
 pname=""  # package name
 attr_path=""  # package attribute path
-url=""  # directory list url
+url=""  # directory listing url
 file=""  # file for writing debugging information
 
 while (( $# > 0 )); do
@@ -31,7 +31,7 @@ while (( $# > 0 )); do
 done
 
 if [[ -z "$pname" ]]; then
-    pname="$UPDATE_NIX_NAME"
+    pname="$UPDATE_NIX_PNAME"
 fi
 
 if [[ -z "$attr_path" ]]; then
diff --git a/pkgs/common-updater/scripts/list-directory-versions b/pkgs/common-updater/scripts/list-directory-versions
new file mode 100755
index 0000000000000..46c9e9d30a5d1
--- /dev/null
+++ b/pkgs/common-updater/scripts/list-directory-versions
@@ -0,0 +1,65 @@
+#!/usr/bin/env python
+
+import argparse
+import requests
+import os
+import subprocess
+import json
+import re
+from bs4 import BeautifulSoup
+
+parser = argparse.ArgumentParser(
+    description="Get all available versions listed for a package in a site."
+)
+
+parser.add_argument(
+    "--pname",
+    default=os.environ.get("UPDATE_NIX_PNAME"),
+    required="UPDATE_NIX_PNAME" not in os.environ,
+    help="name of the package",
+)
+parser.add_argument(
+    "--attr-path",
+    default=os.environ.get("UPDATE_NIX_ATTR_PATH"),
+    help="attribute path of the package",
+)
+parser.add_argument("--url", help="url of the page that lists the package versions")
+parser.add_argument("--file", help="file name for writing debugging information")
+
+
+if __name__ == "__main__":
+    args = parser.parse_args()
+
+    pname = args.pname
+
+    attr_path = args.attr_path or pname
+
+    url = args.url or json.loads(
+        subprocess.check_output(
+            [
+                "nix-instantiate",
+                "--json",
+                "--eval",
+                "-E",
+                f"with import ./. {{}}; dirOf (lib.head {attr_path}.src.urls)",
+            ],
+            text=True,
+        )
+    )
+
+    # print a debugging message
+    if args.file:
+        with open(args.file, "a") as f:
+            f.write(f"# Listing versions for {pname} from {url}\n")
+
+    page = requests.get(url)
+    soup = BeautifulSoup(page.content, "html.parser")
+    links = soup.find_all("a")
+    for link in links:
+        link_url = link.get("href", None)
+        if link_url is not None:
+            match = re.fullmatch(
+                rf"{args.pname}-([\d.]+?(-[\d\w.-]+?)?)(\.tar)?(\.[^.]*)", link_url
+            )
+            if match:
+                print(match.group(1))
diff --git a/pkgs/common-updater/scripts/list-git-tags b/pkgs/common-updater/scripts/list-git-tags
index 186dfd5ea6d4a..703e71438a71e 100755
--- a/pkgs/common-updater/scripts/list-git-tags
+++ b/pkgs/common-updater/scripts/list-git-tags
@@ -31,7 +31,7 @@ while (( $# > 0 )); do
 done
 
 if [[ -z "$pname" ]]; then
-    pname="$UPDATE_NIX_NAME"
+    pname="$UPDATE_NIX_PNAME"
 fi
 
 if [[ -z "$attr_path" ]]; then
diff --git a/pkgs/data/fonts/cooper-hewitt/default.nix b/pkgs/data/fonts/cooper-hewitt/default.nix
index 19c68973a2528..48c7bc8734283 100644
--- a/pkgs/data/fonts/cooper-hewitt/default.nix
+++ b/pkgs/data/fonts/cooper-hewitt/default.nix
@@ -1,21 +1,19 @@
-{ lib, stdenv, fetchzip }:
+{ lib, fetchzip }:
 
-stdenv.mkDerivation {
+fetchzip rec {
   pname = "cooper-hewitt";
   version = "unstable-2014-06-09";
 
-  src = fetchzip {
-    url = "https://www.cooperhewitt.org/wp-content/uploads/fonts/CooperHewitt-OTF-public.zip";
-    hash = "sha256-bTlEXQeYNNspvnNdvQhJn6CNBrcSKYWuNWF/N6+3Vb0=";
-  };
-
-  dontConfigure = true;
-  dontBuild = true;
+  url = "https://web.archive.org/web/20221004145117/https://www.cooperhewitt.org/wp-content/uploads/fonts/CooperHewitt-OTF-public.zip";
 
-  installPhase = ''
-    install -D -m 644 -t "$out/share/fonts/opentype" *.otf
+  postFetch = ''
+    mkdir -p $out/share/fonts/opentype
+    mv $out/*.otf $out/share/fonts/opentype
+    find $out -maxdepth 1 ! -type d -exec rm {} +
   '';
 
+  sha256 = "01iwqmjvqkc6fmc2r0486vk06s6f51n9wxzl1pf9z48n0igj4gqd";
+
   meta = with lib; {
     homepage = "https://www.cooperhewitt.org/open-source-at-cooper-hewitt/cooper-hewitt-the-typeface-by-chester-jenkins/";
     description = "A contemporary sans serif, with characters composed of modified-geometric curves and arches";
diff --git a/pkgs/data/fonts/freefont-ttf/default.nix b/pkgs/data/fonts/freefont-ttf/default.nix
index 5934ec3589ac3..9d8c28681a9f1 100644
--- a/pkgs/data/fonts/freefont-ttf/default.nix
+++ b/pkgs/data/fonts/freefont-ttf/default.nix
@@ -1,16 +1,18 @@
 { lib, fetchzip }:
 
 fetchzip rec {
-  name = "freefont-ttf-20120503";
+  pname = "freefont-ttf";
+  version = "20120503";
 
-  url = "mirror://gnu/freefont/${name}.zip";
+  url = "mirror://gnu/freefont/freefont-ttf-${version}.zip";
 
   postFetch = ''
-    mkdir -p $out/share/fonts
-    unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype
+    mkdir -p $out/share/fonts/truetype
+    mv $out/*.ttf $out/share/fonts/truetype
+    find $out -maxdepth 1 ! -type d -exec rm {} +
   '';
 
-  sha256 = "0h0x2hhr7kvjiycf7fv800xxwa6hcpiz54bqx06wsqc7z61iklvd";
+  sha256 = "sha256-bdMZg/mHYc0N6HiR8uNl0CjeOwBou+OYj3LPkyEUHUA=";
 
   meta = {
     description = "GNU Free UCS Outline Fonts";
diff --git a/pkgs/data/fonts/libertine/default.nix b/pkgs/data/fonts/libertine/default.nix
index b3c8fd048b527..e24096e74f4ef 100644
--- a/pkgs/data/fonts/libertine/default.nix
+++ b/pkgs/data/fonts/libertine/default.nix
@@ -1,18 +1,22 @@
 { lib, stdenv, fetchurl, fontforge }:
 
 stdenv.mkDerivation {
-  name = "linux-libertine-5.3.0";
+  pname = "linux-libertine";
+  version = "5.3.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/linuxlibertine/5.3.0/LinLibertineSRC_5.3.0_2012_07_02.tgz";
-    sha256 = "0x7cz6hvhpil1rh03rax9zsfzm54bh7r4bbrq8rz673gl9h47v0v";
+    hash = "sha256-G+xDYKJvHPMzwnktkg9cpNTv9E9d5QFgDjReuKH57HQ=";
   };
 
   sourceRoot = ".";
 
   nativeBuildInputs = [ fontforge ];
 
+  dontConfigure = true;
+
   buildPhase = ''
+    runHook preBuild
     for i in *.sfd; do
       fontforge -lang=ff -c \
         'Open($1);
@@ -28,20 +32,23 @@ stdenv.mkDerivation {
         Generate($1:r + ".enc");
         ' $i;
     done
+    runHook postBuild
   '';
 
   installPhase = ''
+    runHook preInstall
     install -m444 -Dt $out/share/fonts/opentype/public *.otf
     install -m444 -Dt $out/share/fonts/truetype/public *.ttf
     install -m444 -Dt $out/share/fonts/type1/public    *.pfb
     install -m444 -Dt $out/share/texmf/fonts/enc       *.enc
     install -m444 -Dt $out/share/texmf/fonts/map       *.map
+    runHook postInstall
   '';
 
   meta = with lib; {
     description = "Linux Libertine Fonts";
     homepage = "http://linuxlibertine.sf.net";
-    maintainers = [ ];
+    maintainers = with maintainers; [ erdnaxe ];
     license = licenses.ofl;
   };
 }
diff --git a/pkgs/data/fonts/noto-fonts/default.nix b/pkgs/data/fonts/noto-fonts/default.nix
index 45366a8e50540..019ed1f371c01 100644
--- a/pkgs/data/fonts/noto-fonts/default.nix
+++ b/pkgs/data/fonts/noto-fonts/default.nix
@@ -128,7 +128,7 @@ in
   };
 
   noto-fonts-emoji = let
-    version = "2.034";
+    version = "2.038";
     emojiPythonEnv =
       buildPackages.python3.withPackages (p: with p; [ fonttools nototools ]);
   in stdenvNoCC.mkDerivation {
@@ -139,7 +139,7 @@ in
       owner = "googlefonts";
       repo = "noto-emoji";
       rev = "v${version}";
-      sha256 = "1d6zzk0ii43iqfnjbldwp8sasyx99lbjp1nfgqjla7ixld6yp98l";
+      sha256 = "1rgmcc6nqq805iqr8kvxxlk5cf50q714xaxk3ld6rjrd69kb8ix9";
     };
 
     depsBuildBuild = [
@@ -171,8 +171,10 @@ in
     enableParallelBuilding = true;
 
     installPhase = ''
+      runHook preInstall
       mkdir -p $out/share/fonts/noto
-      cp NotoColorEmoji.ttf fonts/NotoEmoji-Regular.ttf $out/share/fonts/noto
+      cp NotoColorEmoji.ttf $out/share/fonts/noto
+      runHook postInstall
     '';
 
     meta = with lib; {
diff --git a/pkgs/data/fonts/noto-fonts/tools.nix b/pkgs/data/fonts/noto-fonts/tools.nix
index e829e98bee0b1..82b56b9effff0 100644
--- a/pkgs/data/fonts/noto-fonts/tools.nix
+++ b/pkgs/data/fonts/noto-fonts/tools.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "nototools";
-  version = "0.2.16";
+  version = "0.2.17";
 
   disabled = pythonOlder "3.6";
 
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     owner = "googlefonts";
     repo = "nototools";
     rev = "v${version}";
-    sha256 = "14rrdamkmhrykff8ln07fq9cm8zwj3k113lzwjcy0lgz23g51jyl";
+    sha256 = "0jxydivqzggirc31jv7b4mrsjkg646zmra5m4h0pk4amgy65rvyp";
   };
 
   postPatch = ''
diff --git a/pkgs/data/fonts/proggyfonts/default.nix b/pkgs/data/fonts/proggyfonts/default.nix
index 81ecb73540957..e8881fce3674c 100644
--- a/pkgs/data/fonts/proggyfonts/default.nix
+++ b/pkgs/data/fonts/proggyfonts/default.nix
@@ -1,38 +1,41 @@
 { lib, stdenv, fetchurl, mkfontscale }:
 
-stdenv.mkDerivation {
-  name = "proggyfonts-0.1";
+stdenv.mkDerivation rec {
+  pname = "proggyfonts";
+  version = "0.1";
 
   src = fetchurl {
-    url = "https://web.archive.org/web/20150801042353/http://kaictl.net/software/proggyfonts-0.1.tar.gz";
-    sha256 = "1plcm1sjpa3hdqhhin48fq6zmz3ndm4md72916hd8ff0w6596q0n";
+    url = "https://web.archive.org/web/20150801042353/http://kaictl.net/software/proggyfonts-${version}.tar.gz";
+    hash = "sha256-SsLzZdR5icVJNbr5rcCPbagPPtWghbqs2Jxmrtufsa4=";
   };
 
   nativeBuildInputs = [ mkfontscale ];
 
-  installPhase =
-    ''
-      # compress pcf fonts
-      mkdir -p $out/share/fonts/misc
-      rm Speedy.pcf # duplicated as Speedy11.pcf
-      for f in *.pcf; do
-        gzip -n -9 -c "$f" > $out/share/fonts/misc/"$f".gz
-      done
+  dontConfigure = true;
+  dontBuild = true;
 
-      install -D -m 644 *.bdf -t "$out/share/fonts/misc"
-      install -D -m 644 *.ttf -t "$out/share/fonts/truetype"
-      install -D -m 644 Licence.txt -t "$out/share/doc/$name"
+  installPhase = ''
+    runHook preInstall
 
-      mkfontscale "$out/share/fonts/truetype"
-      mkfontdir   "$out/share/fonts/misc"
-    '';
+    # compress pcf fonts
+    mkdir -p $out/share/fonts/misc
+    rm Speedy.pcf # duplicated as Speedy11.pcf
+    for f in *.pcf; do
+      gzip -n -9 -c "$f" > $out/share/fonts/misc/"$f".gz
+    done
 
-  outputHashAlgo = "sha256";
-  outputHashMode = "recursive";
-  outputHash = "1x196rp3wqjd7m57bgp5kfy5jmj97qncxi1vwibs925ji7dqzfgf";
+    install -D -m 644 *.bdf -t "$out/share/fonts/misc"
+    install -D -m 644 *.ttf -t "$out/share/fonts/truetype"
+    install -D -m 644 Licence.txt -t "$out/share/doc/$name"
+
+    mkfontscale "$out/share/fonts/truetype"
+    mkfontdir   "$out/share/fonts/misc"
+
+    runHook postInstall
+  '';
 
   meta = with lib; {
-    homepage = "http://upperbounds.net";
+    homepage = "http://www.upperbounds.net";
     description = "A set of fixed-width screen fonts that are designed for code listings";
     license = licenses.mit;
     platforms = platforms.all;
diff --git a/pkgs/data/fonts/sarasa-gothic/default.nix b/pkgs/data/fonts/sarasa-gothic/default.nix
index ce52b181d7046..24ebfe40d58b7 100644
--- a/pkgs/data/fonts/sarasa-gothic/default.nix
+++ b/pkgs/data/fonts/sarasa-gothic/default.nix
@@ -1,14 +1,14 @@
 { lib, fetchurl, libarchive }:
 
 let
-  version = "0.37.0";
+  version = "0.37.4";
 in fetchurl {
   name = "sarasa-gothic-${version}";
 
   # Use the 'ttc' files here for a smaller closure size.
   # (Using 'ttf' files gives a closure size about 15x larger, as of November 2021.)
   url = "https://github.com/be5invis/Sarasa-Gothic/releases/download/v${version}/sarasa-gothic-ttc-${version}.7z";
-  sha256 = "sha256-R1vU17PSfOe2w9PutA7zYrNsa4mejbXqWlWQVV5KXqs=";
+  sha256 = "sha256-fbZN4+SHb2Qelnp122M2I0enbcEl+Qh1oSMiDLAYwSs=";
 
   recursiveHash = true;
   downloadToTemp = true;
diff --git a/pkgs/data/fonts/ubuntu-font-family/default.nix b/pkgs/data/fonts/ubuntu-font-family/default.nix
index 0f1d5b5a4cc03..0458abf91d4f9 100644
--- a/pkgs/data/fonts/ubuntu-font-family/default.nix
+++ b/pkgs/data/fonts/ubuntu-font-family/default.nix
@@ -1,26 +1,28 @@
 { lib, fetchzip }:
 
-fetchzip {
-  name = "ubuntu-font-family-0.83";
+fetchzip rec {
+  pname = "ubuntu-font-family";
+  version = "0.83";
 
-  url = "https://assets.ubuntu.com/v1/fad7939b-ubuntu-font-family-0.83.zip";
+  url = "https://assets.ubuntu.com/v1/fad7939b-ubuntu-font-family-${version}.zip";
 
   postFetch = ''
-    mkdir -p $out/share/fonts
-    unzip -j $downloadedFile \*.ttf -d $out/share/fonts/ubuntu
+    mkdir -p $out/share/fonts/ubuntu
+    mv $out/*.ttf $out/share/fonts/ubuntu
+    find $out -maxdepth 1 ! -type d -exec rm {} +
   '';
 
   sha256 = "090y665h4kf2bi623532l6wiwkwnpd0xds0jr7560xwfwys1hiqh";
 
-  meta = {
+  meta = with lib; {
     description = "Ubuntu Font Family";
     longDescription = "The Ubuntu typeface has been specially
     created to complement the Ubuntu tone of voice. It has a
     contemporary style and contains characteristics unique to
     the Ubuntu brand that convey a precise, reliable and free attitude.";
     homepage = "http://font.ubuntu.com/";
-    license = lib.licenses.free;
-    platforms = lib.platforms.all;
-    maintainers = [ lib.maintainers.antono ];
+    license = licenses.free;
+    platforms = platforms.all;
+    maintainers = [ maintainers.antono ];
   };
 }
diff --git a/pkgs/data/icons/nordzy-icon-theme/default.nix b/pkgs/data/icons/nordzy-icon-theme/default.nix
index 28da45f4c3476..23bb6564d4514 100644
--- a/pkgs/data/icons/nordzy-icon-theme/default.nix
+++ b/pkgs/data/icons/nordzy-icon-theme/default.nix
@@ -8,13 +8,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "nordzy-icon-theme";
-  version = "1.6";
+  version = "1.7";
 
   src = fetchFromGitHub {
     owner = "alvatip";
     repo = "Nordzy-icon";
     rev = version;
-    sha256 = "sha256-syiJL5i7JJXiSedUtaaoCnAv/6NgRtB3um7A5Sp+Pek=";
+    sha256 = "sha256-pyWEHP7tqg7Cca38a7cGTCx/PCQ+OqG2koxQB6PSzkA=";
   };
 
   # In the post patch phase we should first make sure to patch shebangs.
diff --git a/pkgs/data/icons/numix-icon-theme-circle/default.nix b/pkgs/data/icons/numix-icon-theme-circle/default.nix
index 74af2c541923d..be667047120b2 100644
--- a/pkgs/data/icons/numix-icon-theme-circle/default.nix
+++ b/pkgs/data/icons/numix-icon-theme-circle/default.nix
@@ -2,13 +2,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "numix-icon-theme-circle";
-  version = "22.09.24";
+  version = "22.10.05";
 
   src = fetchFromGitHub {
     owner = "numixproject";
     repo = pname;
     rev = version;
-    sha256 = "sha256-HHJkhQ8icKaPslGIh0gGKHXeTZKWpWcdwkdvQocW9jU=";
+    sha256 = "sha256-fQSAyVf3IwsTTUxzvYRvu5uUEyaPPdbuK2tQ3o16zDA=";
   };
 
   nativeBuildInputs = [ gtk3 ];
diff --git a/pkgs/data/icons/numix-icon-theme-square/default.nix b/pkgs/data/icons/numix-icon-theme-square/default.nix
index 7f1e353af2935..2c27fa8ebf966 100644
--- a/pkgs/data/icons/numix-icon-theme-square/default.nix
+++ b/pkgs/data/icons/numix-icon-theme-square/default.nix
@@ -2,13 +2,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "numix-icon-theme-square";
-  version = "22.09.24";
+  version = "22.10.05";
 
   src = fetchFromGitHub {
     owner = "numixproject";
     repo = pname;
     rev = version;
-    sha256 = "sha256-LoEG/wTx2EYhuln7TYgcJrd4YkrX2ZJrl8ztVJ0xSyk=";
+    sha256 = "sha256-uOS6oWcB+2A26u9NTT+xhLHWqaKy5WMSR6WddKS6gEw=";
   };
 
   nativeBuildInputs = [ gtk3 ];
diff --git a/pkgs/data/icons/pop-icon-theme/default.nix b/pkgs/data/icons/pop-icon-theme/default.nix
index ddf3d1afe6d5f..2a27122da5db7 100644
--- a/pkgs/data/icons/pop-icon-theme/default.nix
+++ b/pkgs/data/icons/pop-icon-theme/default.nix
@@ -10,13 +10,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "pop-icon-theme";
-  version = "2021-11-17";
+  version = "3.3.0";
 
   src = fetchFromGitHub {
     owner = "pop-os";
     repo = "icon-theme";
-    rev = "9998b20b78f3ff65ecbf2253bb863d1e669abe74";
-    sha256 = "0lwdmaxs9xj4bm21ldh64bzyb6iz5d5k1256iwvyjp725l7686cl";
+    rev = "v${version}";
+    sha256 = "sha256-7cDXEkqtPNQsyZvuYZhBSgAYshkDlP8o8umWGbNLtjw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/data/icons/qogir-icon-theme/default.nix b/pkgs/data/icons/qogir-icon-theme/default.nix
index 98000a42b4002..69a4ea664ea50 100644
--- a/pkgs/data/icons/qogir-icon-theme/default.nix
+++ b/pkgs/data/icons/qogir-icon-theme/default.nix
@@ -13,18 +13,18 @@ let
   pname = "qogir-icon-theme";
 
 in
-lib.checkListOfEnum "${pname}: color variants" [ "default" "dark" "all" ] colorVariants
+lib.checkListOfEnum "${pname}: color variants" [ "standard" "dark" "all" ] colorVariants
 lib.checkListOfEnum "${pname}: theme variants" [ "default" "manjaro" "ubuntu" "all" ] themeVariants
 
 stdenvNoCC.mkDerivation rec {
   inherit pname;
-  version = "2022-07-20";
+  version = "2022-10-08";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
     rev = version;
-    sha256 = "sha256-I+eojCTR3fXcp7v5Bdie9vstmJja9HB71aQSF5jLDD4=";
+    sha256 = "sha256-BZhZyPnmiS5mxJp4/QnE7bTynB/cZ0QsUKFMhyd/Ox4=";
   };
 
   nativeBuildInputs = [ gtk3 jdupes ];
diff --git a/pkgs/data/icons/tango-icon-theme/default.nix b/pkgs/data/icons/tango-icon-theme/default.nix
index 9e6b0666a1189..18676018eff46 100644
--- a/pkgs/data/icons/tango-icon-theme/default.nix
+++ b/pkgs/data/icons/tango-icon-theme/default.nix
@@ -13,8 +13,8 @@ stdenv.mkDerivation rec {
 
   patches = [ ./rsvg-convert.patch ];
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ intltool iconnamingutils imagemagick librsvg ];
+  nativeBuildInputs = [ pkg-config intltool ];
+  buildInputs = [ iconnamingutils imagemagick librsvg ];
   propagatedBuildInputs = [ gnome-icon-theme hicolor-icon-theme ];
   # still missing parent icon themes: cristalsvg
 
diff --git a/pkgs/data/misc/cacert/default.nix b/pkgs/data/misc/cacert/default.nix
index 0ed4f95f8cf0b..a4739edea12fb 100644
--- a/pkgs/data/misc/cacert/default.nix
+++ b/pkgs/data/misc/cacert/default.nix
@@ -20,7 +20,7 @@ let
   blocklist = writeText "cacert-blocklist.txt" (lib.concatStringsSep "\n" blacklist);
   extraCertificatesBundle = writeText "cacert-extra-certificates-bundle.crt" (lib.concatStringsSep "\n\n" extraCertificateStrings);
 
-  srcVersion = "3.80";
+  srcVersion = "3.83";
   version = if nssOverride != null then nssOverride.version else srcVersion;
   meta = with lib; {
     homepage = "https://curl.haxx.se/docs/caextract.html";
@@ -35,7 +35,7 @@ let
 
     src = if nssOverride != null then nssOverride.src else fetchurl {
       url = "mirror://mozilla/security/nss/releases/NSS_${lib.replaceStrings ["."] ["_"] version}_RTM/src/nss-${version}.tar.gz";
-      sha256 = "sha256-wL8f0sfimmsCswliK6r8RD7skMiTS7FV2ku5iYh4S2o=";
+      sha256 = "sha256-qyPqZ/lkCQuLc8gKZ0CCVxw25fTrqSBXrGSMnB3vASg=";
     };
 
     dontBuild = true;
diff --git a/pkgs/data/misc/ddccontrol-db/default.nix b/pkgs/data/misc/ddccontrol-db/default.nix
index efec5c73ba2ef..3d91a4e7e727f 100644
--- a/pkgs/data/misc/ddccontrol-db/default.nix
+++ b/pkgs/data/misc/ddccontrol-db/default.nix
@@ -21,11 +21,10 @@ stdenv.mkDerivation rec {
     ./autogen.sh
   '';
 
-  nativeBuildInputs = [ autoconf automake ];
+  nativeBuildInputs = [ autoconf automake intltool ];
   buildInputs =
     [
       libtool
-      intltool
     ];
 
   meta = with lib; {
diff --git a/pkgs/data/misc/hackage/pin.json b/pkgs/data/misc/hackage/pin.json
index 1a4a0811ab7e5..02f113dd1c435 100644
--- a/pkgs/data/misc/hackage/pin.json
+++ b/pkgs/data/misc/hackage/pin.json
@@ -1,6 +1,6 @@
 {
-  "commit": "7cabb43eb4c2b1e025cae32532e7c4a9dcc6b349",
-  "url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/7cabb43eb4c2b1e025cae32532e7c4a9dcc6b349.tar.gz",
-  "sha256": "0zlqb1s7cyrnl2dmasv2h8lbjxmb27vzlac2adkcnd9r0zfgxl1p",
-  "msg": "Update from Hackage at 2022-09-28T11:00:39Z"
+  "commit": "3f8bc936ca1b36ede05f3cec8166c6ae6c61808d",
+  "url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/3f8bc936ca1b36ede05f3cec8166c6ae6c61808d.tar.gz",
+  "sha256": "0bjd6znvwipc8gd0s4bryjbcj29h1lryxc2cqy0xgy07b7dpz245",
+  "msg": "Update from Hackage at 2022-10-01T15:28:21Z"
 }
diff --git a/pkgs/data/misc/iana-etc/default.nix b/pkgs/data/misc/iana-etc/default.nix
index 6f90669b81921..19331f458def2 100644
--- a/pkgs/data/misc/iana-etc/default.nix
+++ b/pkgs/data/misc/iana-etc/default.nix
@@ -2,10 +2,11 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "iana-etc";
-  version = "20220520";
+  version = "20220915";
+
   src = fetchzip {
     url = "https://github.com/Mic92/iana-etc/releases/download/${version}/iana-etc-${version}.tar.gz";
-    sha256 = "sha256-LSrfNb4fUJEGSPJ+StlAbTE9LbOPDrRJLKTDSkuyoZQ=";
+    sha256 = "sha256-gBaM5YEK2XA42S7ELwjQChie/wYgo6n8dt2WEg3Pdns=";
   };
 
   installPhase = ''
diff --git a/pkgs/data/misc/media-player-info/default.nix b/pkgs/data/misc/media-player-info/default.nix
index 56e4ace41f4de..652298d1656dd 100644
--- a/pkgs/data/misc/media-player-info/default.nix
+++ b/pkgs/data/misc/media-player-info/default.nix
@@ -1,31 +1,28 @@
 { lib, stdenv, fetchurl, pkg-config, python3, udev, systemd }:
 
-let
-  name = "media-player-info-24";
-in
+stdenv.mkDerivation rec {
+  pname = "media-player-info";
+  version = "24";
 
-  stdenv.mkDerivation {
-    inherit name;
+  src = fetchurl {
+    url = "https://www.freedesktop.org/software/media-player-info/${pname}-${version}.tar.gz";
+    sha256 = "0d0i7av8v369hzvlynwlrbickv1brlzsmiky80lrjgjh1gdldkz6";
+  };
 
-    src = fetchurl {
-      url = "https://www.freedesktop.org/software/media-player-info/${name}.tar.gz";
-      sha256 = "0d0i7av8v369hzvlynwlrbickv1brlzsmiky80lrjgjh1gdldkz6";
-    };
+  buildInputs = [ udev systemd ];
+  nativeBuildInputs = [ pkg-config python3 ];
 
-    buildInputs = [ udev systemd ];
-    nativeBuildInputs = [ pkg-config python3 ];
+  postPatch = ''
+    patchShebangs ./tools
+  '';
 
-    postPatch = ''
-      patchShebangs ./tools
-    '';
+  configureFlags = [ "--with-udevdir=${placeholder "out"}/lib/udev" ];
 
-    configureFlags = [ "--with-udevdir=${placeholder "out"}/lib/udev" ];
-
-    meta = with lib; {
-      description = "A repository of data files describing media player capabilities";
-      homepage = "https://www.freedesktop.org/wiki/Software/media-player-info/";
-      license = licenses.bsd3;
-      maintainers = with maintainers; [ ttuegel ];
-      platforms = with platforms; linux;
-    };
-  }
+  meta = with lib; {
+    description = "A repository of data files describing media player capabilities";
+    homepage = "https://www.freedesktop.org/wiki/Software/media-player-info/";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ ttuegel ];
+    platforms = with platforms; linux;
+  };
+}
diff --git a/pkgs/data/misc/tzdata/default.nix b/pkgs/data/misc/tzdata/default.nix
index 1a6cba44ef875..41004243a5571 100644
--- a/pkgs/data/misc/tzdata/default.nix
+++ b/pkgs/data/misc/tzdata/default.nix
@@ -2,16 +2,16 @@
 
 stdenv.mkDerivation rec {
   pname = "tzdata";
-  version = "2022c";
+  version = "2022d";
 
   srcs = [
     (fetchurl {
       url = "https://data.iana.org/time-zones/releases/tzdata${version}.tar.gz";
-      hash = "sha256-aXT040i/IyMnS1bf+edQAkfjFZ6qS0hd+gzWbnXBS/4=";
+      hash = "sha256-bs2+4n+kPc+knz1P2Lsd/vVMkNoavNgsmrzy3E8yHeA=";
     })
     (fetchurl {
       url = "https://data.iana.org/time-zones/releases/tzcode${version}.tar.gz";
-      hash = "sha256-Pnzh82IMwEgZB8fgdNaZEHkyhb/+DKMx7xptGuPqkMw=";
+      hash = "sha256-1kS6D5OImTdOqMtVTjX7SvoPe9e3FsYXd80AUAuHWeA=";
     })
   ];
 
diff --git a/pkgs/data/misc/v2ray-geoip/default.nix b/pkgs/data/misc/v2ray-geoip/default.nix
index e298c54d565e7..b276e6fc49e6f 100644
--- a/pkgs/data/misc/v2ray-geoip/default.nix
+++ b/pkgs/data/misc/v2ray-geoip/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "v2ray-geoip";
-  version = "202209290111";
+  version = "202210060105";
 
   src = fetchFromGitHub {
     owner = "v2fly";
     repo = "geoip";
-    rev = "1aa11a6dd94b708175a81b12037486459fa090a8";
-    sha256 = "sha256-CVze/QyoBKZmd+U8bfjxr+u8W95W+fs9+mAdPgyIpg4=";
+    rev = "0bb2420d643555aa19b21f3c06b517a7c14826b6";
+    sha256 = "sha256-5vr7iO2vny9yalJblBVgNwupEQ9w3LZXM+VKb4xSVD0=";
   };
 
   installPhase = ''
diff --git a/pkgs/data/themes/adw-gtk3/default.nix b/pkgs/data/themes/adw-gtk3/default.nix
index f88c11388c790..a22a7beac51d6 100644
--- a/pkgs/data/themes/adw-gtk3/default.nix
+++ b/pkgs/data/themes/adw-gtk3/default.nix
@@ -9,13 +9,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "adw-gtk3";
-  version = "3.7";
+  version = "4.0";
 
   src = fetchFromGitHub {
     owner = "lassekongo83";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-hHmNRPUJOXa//aKgAYhGBVX6usRsObWbzcfOa1uwbqM=";
+    sha256 = "sha256-PR0MmTOXGrMicRLXqIOUpCVSu68HeCaG2z/o+lbHnjk=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/data/themes/obsidian2/default.nix b/pkgs/data/themes/obsidian2/default.nix
index 251dde481fd26..6e5dc5f35a182 100644
--- a/pkgs/data/themes/obsidian2/default.nix
+++ b/pkgs/data/themes/obsidian2/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "theme-obsidian2";
-  version = "2.20";
+  version = "2.21";
 
   src = fetchurl {
     url = "https://github.com/madmaxms/theme-obsidian-2/releases/download/v${version}/obsidian-2-theme.tar.xz";
-    sha256 = "0bbw8far4fjz7fiy205wnzp9ibnvqspfcjkinhjj8l0s272h7wjp";
+    sha256 = "sha256-ptiJeb4ebfnH6HpTN1NsPAYbkLlPcZtn2aBKO0zW2Tw=";
   };
 
   sourceRoot = ".";
diff --git a/pkgs/desktops/cinnamon/cinnamon-common/default.nix b/pkgs/desktops/cinnamon/cinnamon-common/default.nix
index d477b01226140..7ddcada83b510 100644
--- a/pkgs/desktops/cinnamon/cinnamon-common/default.nix
+++ b/pkgs/desktops/cinnamon/cinnamon-common/default.nix
@@ -102,7 +102,6 @@ stdenv.mkDerivation rec {
     libXdamage
     muffin
     networkmanager
-    pkg-config
     polkit
     libxml2
     libgnomekbd
@@ -134,6 +133,7 @@ stdenv.mkDerivation rec {
     gtk-doc
     perl
     python3.pkgs.wrapPython
+    pkg-config
   ];
 
   # use locales from cinnamon-translations (not using --localedir because datadir is used)
@@ -153,6 +153,10 @@ stdenv.mkDerivation rec {
     sed "s|\"upload-system-info\"|\"${xapp}/bin/upload-system-info\"|g" -i ./files/usr/share/cinnamon/cinnamon-settings/modules/cs_info.py
 
     sed "s|/usr/bin/cinnamon-control-center|${cinnamon-control-center}/bin/cinnamon-control-center|g" -i ./files/usr/bin/cinnamon-settings
+
+    sed "s|/usr/bin/cinnamon-screensaver-command|/run/current-system/sw/bin/cinnamon-screensaver-command|g" \
+      -i ./files/usr/share/cinnamon/applets/menu@cinnamon.org/applet.js -i ./files/usr/share/cinnamon/applets/user@cinnamon.org/applet.js
+
     # this one really IS optional
     sed "s|/usr/bin/gnome-control-center|/run/current-system/sw/bin/gnome-control-center|g" -i ./files/usr/bin/cinnamon-settings
 
diff --git a/pkgs/desktops/cinnamon/cinnamon-gsettings-overrides/default.nix b/pkgs/desktops/cinnamon/cinnamon-gsettings-overrides/default.nix
index a3456755045f7..a8d46d578996c 100644
--- a/pkgs/desktops/cinnamon/cinnamon-gsettings-overrides/default.nix
+++ b/pkgs/desktops/cinnamon/cinnamon-gsettings-overrides/default.nix
@@ -20,6 +20,8 @@
 
 let
 
+  inherit (lib) concatMapStringsSep;
+
   gsettingsOverridePackages = [
     # from
     mint-artwork
@@ -38,22 +40,21 @@ let
 
 in
 
-with lib;
-
 # TODO: Having https://github.com/NixOS/nixpkgs/issues/54150 would supersede this
-runCommand "cinnamon-gsettings-overrides" { }
+runCommand "cinnamon-gsettings-overrides" { preferLocalBuild = true; }
   ''
-    schema_dir=$out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas
+    data_dir="$out/share/gsettings-schemas/nixos-gsettings-overrides"
+    schema_dir="$data_dir/glib-2.0/schemas"
 
-    mkdir -p $schema_dir
+    mkdir -p "$schema_dir"
 
-    ${concatMapStrings (pkg: "cp -rf ${glib.getSchemaPath pkg}/*.xml ${glib.getSchemaPath pkg}/*.gschema.override $schema_dir\n") gsettingsOverridePackages}
+    ${concatMapStringsSep "\n" (pkg: "cp -rf \"${glib.getSchemaPath pkg}\"/*.xml \"${glib.getSchemaPath pkg}\"/*.gschema.override \"$schema_dir\"") gsettingsOverridePackages}
 
-    chmod -R a+w $out/share/gsettings-schemas/nixos-gsettings-overrides
+    chmod -R a+w "$data_dir"
 
-    cat - > $schema_dir/nixos-defaults.gschema.override <<- EOF
+    cat - > "$schema_dir/nixos-defaults.gschema.override" <<- EOF
     ${extraGSettingsOverrides}
     EOF
 
-    ${glib.dev}/bin/glib-compile-schemas $schema_dir
+    ${glib.dev}/bin/glib-compile-schemas --strict "$schema_dir"
   ''
diff --git a/pkgs/desktops/enlightenment/enlightenment/default.nix b/pkgs/desktops/enlightenment/enlightenment/default.nix
index 52c4a0719d03e..7818df245f693 100644
--- a/pkgs/desktops/enlightenment/enlightenment/default.nix
+++ b/pkgs/desktops/enlightenment/enlightenment/default.nix
@@ -14,10 +14,10 @@
 , pam
 , xkeyboard_config
 , udisks2
-
 , waylandSupport ? false, wayland-protocols, xwayland
 , bluetoothSupport ? true, bluez5
 , pulseSupport ? !stdenv.isDarwin, libpulseaudio
+, directoryListingUpdater
 }:
 
 stdenv.mkDerivation rec {
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   version = "0.25.4";
 
   src = fetchurl {
-    url = "http://download.enlightenment.org/rel/apps/${pname}/${pname}-${version}.tar.xz";
+    url = "https://download.enlightenment.org/rel/apps/${pname}/${pname}-${version}.tar.xz";
     sha256 = "sha256-VttdIGuCG5qIMdJucT5BCscLIlWm9D/N98Ae794jt6I=";
   };
 
@@ -71,6 +71,8 @@ stdenv.mkDerivation rec {
 
   passthru.providedSessions = [ "enlightenment" ];
 
+  passthru.updateScript = directoryListingUpdater { };
+
   meta = with lib; {
     description = "The Compositing Window Manager and Desktop Shell";
     homepage = "https://www.enlightenment.org";
diff --git a/pkgs/desktops/gnome-2/desktop/gtksourceview/default.nix b/pkgs/desktops/gnome-2/desktop/gtksourceview/default.nix
index 34dfaa85b2f39..df63449c2f61f 100644
--- a/pkgs/desktops/gnome-2/desktop/gtksourceview/default.nix
+++ b/pkgs/desktops/gnome-2/desktop/gtksourceview/default.nix
@@ -26,13 +26,13 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [ pkg-config intltool ] ++ lib.optionals stdenv.isDarwin [ autoreconfHook ];
   buildInputs = [
     atk cairo glib gtk2
-    pango libxml2Python perl intltool
+    pango libxml2Python perl
     gettext
   ] ++ optionals stdenv.isDarwin [
-    autoreconfHook gnome-common gtk-mac-integration-gtk2
+    gnome-common gtk-mac-integration-gtk2
   ];
 
   preConfigure = optionalString stdenv.isDarwin ''
diff --git a/pkgs/desktops/gnome-2/platform/gtkhtml/4.x.nix b/pkgs/desktops/gnome-2/platform/gtkhtml/4.x.nix
index 580d0a8cc8296..72422cf41c35a 100644
--- a/pkgs/desktops/gnome-2/platform/gtkhtml/4.x.nix
+++ b/pkgs/desktops/gnome-2/platform/gtkhtml/4.x.nix
@@ -25,6 +25,6 @@ stdenv.mkDerivation rec {
   ];
 
   propagatedBuildInputs = [ gsettings-desktop-schemas gtk3 gnome-icon-theme GConf ];
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ intltool enchant isocodes autoreconfHook ];
+  nativeBuildInputs = [ pkg-config autoreconfHook intltool ];
+  buildInputs = [ enchant isocodes ];
 }
diff --git a/pkgs/desktops/gnome-2/platform/gtkhtml/default.nix b/pkgs/desktops/gnome-2/platform/gtkhtml/default.nix
index 4f4e0503f819b..206494e70224b 100644
--- a/pkgs/desktops/gnome-2/platform/gtkhtml/default.nix
+++ b/pkgs/desktops/gnome-2/platform/gtkhtml/default.nix
@@ -14,8 +14,8 @@ stdenv.mkDerivation rec {
   #http://www.mail-archive.com/debian-bugs-rc@lists.debian.org/msg250091.html
   patches = [ ./01_remove-disable-deprecated.patch ];
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ gtk2 intltool GConf enchant isocodes gnome-icon-theme ];
+  nativeBuildInputs = [ pkg-config intltool ];
+  buildInputs = [ gtk2 GConf enchant isocodes gnome-icon-theme ];
 
   NIX_LDFLAGS = "-lgthread-2.0";
 }
diff --git a/pkgs/desktops/gnome-2/platform/libgnome/default.nix b/pkgs/desktops/gnome-2/platform/libgnome/default.nix
index 2c70338a9005a..56145980a5d26 100644
--- a/pkgs/desktops/gnome-2/platform/libgnome/default.nix
+++ b/pkgs/desktops/gnome-2/platform/libgnome/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "dev" ];
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ popt zlib intltool GConf gnome_vfs libcanberra-gtk2 libtool ];
+  nativeBuildInputs = [ pkg-config intltool ];
+  buildInputs = [ popt zlib GConf gnome_vfs libcanberra-gtk2 libtool ];
   propagatedBuildInputs = [ glib libbonobo libogg ];
 }
diff --git a/pkgs/desktops/gnome-2/platform/libgnomecups/default.nix b/pkgs/desktops/gnome-2/platform/libgnomecups/default.nix
index 42de8c2471a3b..8d6bcce60205c 100644
--- a/pkgs/desktops/gnome-2/platform/libgnomecups/default.nix
+++ b/pkgs/desktops/gnome-2/platform/libgnomecups/default.nix
@@ -13,8 +13,8 @@ stdenv.mkDerivation rec {
 
   patches = [ ./glib.patch ./cups_1.6.patch ];
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ gtk2 gettext intltool libart_lgpl ];
+  nativeBuildInputs = [ pkg-config intltool ];
+  buildInputs = [ gtk2 gettext libart_lgpl ];
 
   propagatedBuildInputs = [ libxml2 ];
 }
diff --git a/pkgs/desktops/gnome-2/platform/libgnomeprint/default.nix b/pkgs/desktops/gnome-2/platform/libgnomeprint/default.nix
index bb2e435f422d0..5f7a254c8fbdd 100644
--- a/pkgs/desktops/gnome-2/platform/libgnomeprint/default.nix
+++ b/pkgs/desktops/gnome-2/platform/libgnomeprint/default.nix
@@ -19,8 +19,8 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ gtk2 gettext intltool libart_lgpl libgnomecups bison flex ];
+  nativeBuildInputs = [ pkg-config intltool ];
+  buildInputs = [ gtk2 gettext libart_lgpl libgnomecups bison flex ];
 
   propagatedBuildInputs = [ libxml2 ];
 
diff --git a/pkgs/desktops/gnome-2/platform/libgnomeprintui/default.nix b/pkgs/desktops/gnome-2/platform/libgnomeprintui/default.nix
index a95ee70bca107..f8a647a5b5a5f 100644
--- a/pkgs/desktops/gnome-2/platform/libgnomeprintui/default.nix
+++ b/pkgs/desktops/gnome-2/platform/libgnomeprintui/default.nix
@@ -9,6 +9,6 @@ stdenv.mkDerivation rec {
     sha256 = "0spl8vinb5n6n1krnfnr61dwaxidg67h8j94z9p59k2xdsvfashm";
   };
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ gtk2 gettext intltool libgnomecanvas libgnomeprint gnome-icon-theme];
+  nativeBuildInputs = [ pkg-config intltool ];
+  buildInputs = [ gtk2 gettext libgnomecanvas libgnomeprint gnome-icon-theme];
 }
diff --git a/pkgs/desktops/gnome-2/platform/libgnomeui/default.nix b/pkgs/desktops/gnome-2/platform/libgnomeui/default.nix
index 0a84e0ea3ec58..f59bee32929bc 100644
--- a/pkgs/desktops/gnome-2/platform/libgnomeui/default.nix
+++ b/pkgs/desktops/gnome-2/platform/libgnomeui/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, fetchpatch, pkg-config, libxml2, xorg, glib, pango
+{ lib, stdenv, fetchurl, fetchpatch, pkg-config, libxml2, xlibsWrapper, glib, pango
 , intltool, libgnome, libgnomecanvas, libbonoboui, GConf, libtool
 , gnome_vfs, libgnome-keyring, libglade }:
 
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkg-config intltool ];
   buildInputs =
-    [ xorg.xlibsWrapper libxml2 GConf pango glib libgnome-keyring libglade libtool ];
+    [ xlibsWrapper libxml2 GConf pango glib libgnome-keyring libglade libtool ];
 
   propagatedBuildInputs = [ libgnome libbonoboui libgnomecanvas gnome_vfs ];
 }
diff --git a/pkgs/desktops/gnome/default.nix b/pkgs/desktops/gnome/default.nix
index a0561ca00300b..1169bae6d67e4 100644
--- a/pkgs/desktops/gnome/default.nix
+++ b/pkgs/desktops/gnome/default.nix
@@ -123,6 +123,8 @@ lib.makeScope pkgs.newScope (self: with self; {
     withGnome = true;
   };
 
+  nixos-gsettings-overrides = callPackage ./nixos/gsettings-overrides { };
+
   rygel = callPackage ./core/rygel { };
 
   simple-scan = callPackage ./core/simple-scan { };
diff --git a/pkgs/desktops/gnome/devtools/gnome-devel-docs/default.nix b/pkgs/desktops/gnome/devtools/gnome-devel-docs/default.nix
index ca9b8f7fb81a5..e2f556c486941 100644
--- a/pkgs/desktops/gnome/devtools/gnome-devel-docs/default.nix
+++ b/pkgs/desktops/gnome/devtools/gnome-devel-docs/default.nix
@@ -13,7 +13,8 @@ stdenv.mkDerivation rec {
     updateScript = gnome.updateScript { packageName = "gnome-devel-docs"; attrPath = "gnome.gnome-devel-docs"; };
   };
 
-  buildInputs = [ intltool itstool libxml2 ];
+  nativeBuildInputs = [ intltool ];
+  buildInputs = [ itstool libxml2 ];
 
   meta = with lib; {
     homepage = "https://github.com/GNOME/gnome-devel-docs";
diff --git a/pkgs/desktops/gnome/extensions/extensions.json b/pkgs/desktops/gnome/extensions/extensions.json
index 1ea6b93ea840a..9ba5565f4a641 100644
--- a/pkgs/desktops/gnome/extensions/extensions.json
+++ b/pkgs/desktops/gnome/extensions/extensions.json
@@ -11,7 +11,7 @@
 , {"uuid": "user-theme@gnome-shell-extensions.gcampax.github.com", "name": "User Themes", "pname": "user-themes", "description": "Load shell themes from user directory.", "link": "https://extensions.gnome.org/extension/19/user-themes/", "shell_version_map": {"38": {"version": "42", "sha256": "0jykwcd8pmvr03dm2vala6nzzhi9i83c11svgx8wymfvxr5qrya8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvYWQgc2hlbGwgdGhlbWVzIGZyb20gdXNlciBkaXJlY3RvcnkuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJVc2VyIFRoZW1lcyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiam9obi5zdG93ZXJzQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudXNlci10aGVtZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogInVzZXItdGhlbWVAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDIKfQ=="}, "40": {"version": "46", "sha256": "07gbzvbnxah5bws5vc6sivw43j0rgm23n6vsp4a64z7s8s2ay7sm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvYWQgc2hlbGwgdGhlbWVzIGZyb20gdXNlciBkaXJlY3RvcnkuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJVc2VyIFRoZW1lcyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiam9obi5zdG93ZXJzQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudXNlci10aGVtZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJ1c2VyLXRoZW1lQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ2Cn0="}, "41": {"version": "48", "sha256": "0bbm4vbyrp9n3mmqwbhpb6f7dmlx23x1avnp8pilw4p1wr03p7h8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvYWQgc2hlbGwgdGhlbWVzIGZyb20gdXNlciBkaXJlY3RvcnkuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tdXNlci10aGVtZSIsCiAgIm5hbWUiOiAiVXNlciBUaGVtZXMiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImpvaG4uc3Rvd2Vyc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVzZXItdGhlbWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAidXNlci10aGVtZUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0OAp9"}, "42": {"version": "49", "sha256": "0ykaw2602iixn87fc65h6vwxzlcjidpp9hpcsmf66r0f6xibgpah", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvYWQgc2hlbGwgdGhlbWVzIGZyb20gdXNlciBkaXJlY3RvcnkuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tdXNlci10aGVtZSIsCiAgIm5hbWUiOiAiVXNlciBUaGVtZXMiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImpvaG4uc3Rvd2Vyc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVzZXItdGhlbWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAidXNlci10aGVtZUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0OQp9"}, "43": {"version": "50", "sha256": "0jyd2rn2nlvcmx8xn2azhbaqf5k0kgyx8ciy6bj1iq35s7k5sp7h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvYWQgc2hlbGwgdGhlbWVzIGZyb20gdXNlciBkaXJlY3RvcnkuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tdXNlci10aGVtZSIsCiAgIm5hbWUiOiAiVXNlciBUaGVtZXMiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImpvaG4uc3Rvd2Vyc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVzZXItdGhlbWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAidXNlci10aGVtZUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1MAp9"}}}
 , {"uuid": "workspace-indicator@gnome-shell-extensions.gcampax.github.com", "name": "Workspace Indicator", "pname": "workspace-indicator", "description": "Put an indicator on the panel signaling in which workspace you are, and give you the possibility of switching to another one.", "link": "https://extensions.gnome.org/extension/21/workspace-indicator/", "shell_version_map": {"38": {"version": "45", "sha256": "16y7zhlsj0qjwwj78fvcr81m7081i2y30gwjm35qahr3j0gfrk16", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBhbiBpbmRpY2F0b3Igb24gdGhlIHBhbmVsIHNpZ25hbGluZyBpbiB3aGljaCB3b3Jrc3BhY2UgeW91IGFyZSwgYW5kIGdpdmUgeW91IHRoZSBwb3NzaWJpbGl0eSBvZiBzd2l0Y2hpbmcgdG8gYW5vdGhlciBvbmUuIiwKICAiZXh0ZW5zaW9uLWlkIjogIndvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJXb3Jrc3BhY2UgSW5kaWNhdG9yIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJlcmljay5yZWRAZ21haWwuY29tIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid29ya3NwYWNlLWluZGljYXRvckBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0NQp9"}, "40": {"version": "49", "sha256": "0483k1scq0lwfpg3i3yww7kfzv0qwlp6aqyikkacivh0nkq6v2iy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBhbiBpbmRpY2F0b3Igb24gdGhlIHBhbmVsIHNpZ25hbGluZyBpbiB3aGljaCB3b3Jrc3BhY2UgeW91IGFyZSwgYW5kIGdpdmUgeW91IHRoZSBwb3NzaWJpbGl0eSBvZiBzd2l0Y2hpbmcgdG8gYW5vdGhlciBvbmUuIiwKICAiZXh0ZW5zaW9uLWlkIjogIndvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJXb3Jrc3BhY2UgSW5kaWNhdG9yIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJlcmljay5yZWRAZ21haWwuY29tIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogIndvcmtzcGFjZS1pbmRpY2F0b3JAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDkKfQ=="}, "41": {"version": "51", "sha256": "1s2mkk41vq9nrlsw26317zh592l59y7cldfmkd3f0d4j2mdiy8bw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBhbiBpbmRpY2F0b3Igb24gdGhlIHBhbmVsIHNpZ25hbGluZyBpbiB3aGljaCB3b3Jrc3BhY2UgeW91IGFyZSwgYW5kIGdpdmUgeW91IHRoZSBwb3NzaWJpbGl0eSBvZiBzd2l0Y2hpbmcgdG8gYW5vdGhlciBvbmUuIiwKICAiZXh0ZW5zaW9uLWlkIjogIndvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24td29ya3NwYWNlLWluZGljYXRvciIsCiAgIm5hbWUiOiAiV29ya3NwYWNlIEluZGljYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiZXJpY2sucmVkQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud29ya3NwYWNlLWluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJ3b3Jrc3BhY2UtaW5kaWNhdG9yQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDUxCn0="}, "42": {"version": "52", "sha256": "1i0jm0k3rjk97283p0iv0nx2cclij0kx7dqb35a7kd2pxh89jn8w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBhbiBpbmRpY2F0b3Igb24gdGhlIHBhbmVsIHNpZ25hbGluZyBpbiB3aGljaCB3b3Jrc3BhY2UgeW91IGFyZSwgYW5kIGdpdmUgeW91IHRoZSBwb3NzaWJpbGl0eSBvZiBzd2l0Y2hpbmcgdG8gYW5vdGhlciBvbmUuIiwKICAiZXh0ZW5zaW9uLWlkIjogIndvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24td29ya3NwYWNlLWluZGljYXRvciIsCiAgIm5hbWUiOiAiV29ya3NwYWNlIEluZGljYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiZXJpY2sucmVkQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud29ya3NwYWNlLWluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJ3b3Jrc3BhY2UtaW5kaWNhdG9yQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDUyCn0="}, "43": {"version": "53", "sha256": "0idl8n6205ymh1z3w15sxv98940q8qch2pp5wk9gzd594i2aya2p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBhbiBpbmRpY2F0b3Igb24gdGhlIHBhbmVsIHNpZ25hbGluZyBpbiB3aGljaCB3b3Jrc3BhY2UgeW91IGFyZSwgYW5kIGdpdmUgeW91IHRoZSBwb3NzaWJpbGl0eSBvZiBzd2l0Y2hpbmcgdG8gYW5vdGhlciBvbmUuIiwKICAiZXh0ZW5zaW9uLWlkIjogIndvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24td29ya3NwYWNlLWluZGljYXRvciIsCiAgIm5hbWUiOiAiV29ya3NwYWNlIEluZGljYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiZXJpY2sucmVkQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud29ya3NwYWNlLWluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJ3b3Jrc3BhY2UtaW5kaWNhdG9yQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDUzCn0="}}}
 , {"uuid": "gTile@vibou", "name": "gTile", "pname": "gtile", "description": "Tile windows on a grid.", "link": "https://extensions.gnome.org/extension/28/gtile/", "shell_version_map": {"38": {"version": "50", "sha256": "0g029vq3sv9vglh0q7idhf69xkcbka0gidad3nipniwx9m0bnfig", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyBvbiBhIGdyaWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RpbGVAdmlib3UiLAogICJuYW1lIjogImdUaWxlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0aWxlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ1RpbGUvZ1RpbGUiLAogICJ1dWlkIjogImdUaWxlQHZpYm91IiwKICAidmVyc2lvbiI6IDUwCn0="}, "40": {"version": "50", "sha256": "0g029vq3sv9vglh0q7idhf69xkcbka0gidad3nipniwx9m0bnfig", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyBvbiBhIGdyaWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RpbGVAdmlib3UiLAogICJuYW1lIjogImdUaWxlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0aWxlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ1RpbGUvZ1RpbGUiLAogICJ1dWlkIjogImdUaWxlQHZpYm91IiwKICAidmVyc2lvbiI6IDUwCn0="}, "41": {"version": "50", "sha256": "0g029vq3sv9vglh0q7idhf69xkcbka0gidad3nipniwx9m0bnfig", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyBvbiBhIGdyaWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RpbGVAdmlib3UiLAogICJuYW1lIjogImdUaWxlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0aWxlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ1RpbGUvZ1RpbGUiLAogICJ1dWlkIjogImdUaWxlQHZpYm91IiwKICAidmVyc2lvbiI6IDUwCn0="}, "42": {"version": "50", "sha256": "0g029vq3sv9vglh0q7idhf69xkcbka0gidad3nipniwx9m0bnfig", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyBvbiBhIGdyaWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RpbGVAdmlib3UiLAogICJuYW1lIjogImdUaWxlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0aWxlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ1RpbGUvZ1RpbGUiLAogICJ1dWlkIjogImdUaWxlQHZpYm91IiwKICAidmVyc2lvbiI6IDUwCn0="}}}
-, {"uuid": "lockkeys@vaina.lt", "name": "Lock Keys", "pname": "lock-keys", "description": "Numlock & Capslock status on the panel. Gnome version 3.30 and earlier users please install 44 version of the extension https://extensions.gnome.org/download-extension/lockkeys%40vaina.lt.shell-extension.zip?version_tag=26229 ", "link": "https://extensions.gnome.org/extension/36/lock-keys/", "shell_version_map": {"38": {"version": "47", "sha256": "1lsnmf6lsp92g1clxl190hx30p03a11w4hs3m9v0pav12cq8agfi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsLiBHbm9tZSB2ZXJzaW9uIDMuMzAgYW5kIGVhcmxpZXIgdXNlcnMgcGxlYXNlIGluc3RhbGwgNDQgdmVyc2lvbiBvZiB0aGUgZXh0ZW5zaW9uIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZG93bmxvYWQtZXh0ZW5zaW9uL2xvY2trZXlzJTQwdmFpbmEubHQuc2hlbGwtZXh0ZW5zaW9uLnppcD92ZXJzaW9uX3RhZz0yNjIyOSAiLAogICJuYW1lIjogIkxvY2sgS2V5cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSwgUmFwaGFcdTAwZWJsIFJvY2hldCwgTHVpeiBOaWNrZWwsIEplc3NlLCBEdVx1MDE2MWFuIEthemlrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2F6eXNtYXN0ZXIvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxvY2trZXlzIiwKICAidXVpZCI6ICJsb2Nra2V5c0B2YWluYS5sdCIsCiAgInZlcnNpb24iOiA0Nwp9"}, "40": {"version": "47", "sha256": "1lsnmf6lsp92g1clxl190hx30p03a11w4hs3m9v0pav12cq8agfi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsLiBHbm9tZSB2ZXJzaW9uIDMuMzAgYW5kIGVhcmxpZXIgdXNlcnMgcGxlYXNlIGluc3RhbGwgNDQgdmVyc2lvbiBvZiB0aGUgZXh0ZW5zaW9uIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZG93bmxvYWQtZXh0ZW5zaW9uL2xvY2trZXlzJTQwdmFpbmEubHQuc2hlbGwtZXh0ZW5zaW9uLnppcD92ZXJzaW9uX3RhZz0yNjIyOSAiLAogICJuYW1lIjogIkxvY2sgS2V5cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSwgUmFwaGFcdTAwZWJsIFJvY2hldCwgTHVpeiBOaWNrZWwsIEplc3NlLCBEdVx1MDE2MWFuIEthemlrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2F6eXNtYXN0ZXIvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxvY2trZXlzIiwKICAidXVpZCI6ICJsb2Nra2V5c0B2YWluYS5sdCIsCiAgInZlcnNpb24iOiA0Nwp9"}, "41": {"version": "47", "sha256": "1lsnmf6lsp92g1clxl190hx30p03a11w4hs3m9v0pav12cq8agfi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsLiBHbm9tZSB2ZXJzaW9uIDMuMzAgYW5kIGVhcmxpZXIgdXNlcnMgcGxlYXNlIGluc3RhbGwgNDQgdmVyc2lvbiBvZiB0aGUgZXh0ZW5zaW9uIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZG93bmxvYWQtZXh0ZW5zaW9uL2xvY2trZXlzJTQwdmFpbmEubHQuc2hlbGwtZXh0ZW5zaW9uLnppcD92ZXJzaW9uX3RhZz0yNjIyOSAiLAogICJuYW1lIjogIkxvY2sgS2V5cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSwgUmFwaGFcdTAwZWJsIFJvY2hldCwgTHVpeiBOaWNrZWwsIEplc3NlLCBEdVx1MDE2MWFuIEthemlrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2F6eXNtYXN0ZXIvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxvY2trZXlzIiwKICAidXVpZCI6ICJsb2Nra2V5c0B2YWluYS5sdCIsCiAgInZlcnNpb24iOiA0Nwp9"}, "42": {"version": "47", "sha256": "1lsnmf6lsp92g1clxl190hx30p03a11w4hs3m9v0pav12cq8agfi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsLiBHbm9tZSB2ZXJzaW9uIDMuMzAgYW5kIGVhcmxpZXIgdXNlcnMgcGxlYXNlIGluc3RhbGwgNDQgdmVyc2lvbiBvZiB0aGUgZXh0ZW5zaW9uIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZG93bmxvYWQtZXh0ZW5zaW9uL2xvY2trZXlzJTQwdmFpbmEubHQuc2hlbGwtZXh0ZW5zaW9uLnppcD92ZXJzaW9uX3RhZz0yNjIyOSAiLAogICJuYW1lIjogIkxvY2sgS2V5cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSwgUmFwaGFcdTAwZWJsIFJvY2hldCwgTHVpeiBOaWNrZWwsIEplc3NlLCBEdVx1MDE2MWFuIEthemlrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2F6eXNtYXN0ZXIvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxvY2trZXlzIiwKICAidXVpZCI6ICJsb2Nra2V5c0B2YWluYS5sdCIsCiAgInZlcnNpb24iOiA0Nwp9"}}}
+, {"uuid": "lockkeys@vaina.lt", "name": "Lock Keys", "pname": "lock-keys", "description": "Numlock & Capslock status on the panel. Gnome version 3.30 and earlier users please install 44 version of the extension https://extensions.gnome.org/download-extension/lockkeys%40vaina.lt.shell-extension.zip?version_tag=26229 ", "link": "https://extensions.gnome.org/extension/36/lock-keys/", "shell_version_map": {"38": {"version": "48", "sha256": "16lvhl6d9ygmmcjyi633aacd9gsp8pmvpliawfihm23nl1w3pzp0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsLiBHbm9tZSB2ZXJzaW9uIDMuMzAgYW5kIGVhcmxpZXIgdXNlcnMgcGxlYXNlIGluc3RhbGwgNDQgdmVyc2lvbiBvZiB0aGUgZXh0ZW5zaW9uIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZG93bmxvYWQtZXh0ZW5zaW9uL2xvY2trZXlzJTQwdmFpbmEubHQuc2hlbGwtZXh0ZW5zaW9uLnppcD92ZXJzaW9uX3RhZz0yNjIyOSAiLAogICJuYW1lIjogIkxvY2sgS2V5cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSwgUmFwaGFcdTAwZWJsIFJvY2hldCwgTHVpeiBOaWNrZWwsIEplc3NlLCBEdVx1MDE2MWFuIEthemlrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2thenlzbWFzdGVyL2dub21lLXNoZWxsLWV4dGVuc2lvbi1sb2Nra2V5cyIsCiAgInV1aWQiOiAibG9ja2tleXNAdmFpbmEubHQiLAogICJ2ZXJzaW9uIjogNDgKfQ=="}, "40": {"version": "48", "sha256": "16lvhl6d9ygmmcjyi633aacd9gsp8pmvpliawfihm23nl1w3pzp0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsLiBHbm9tZSB2ZXJzaW9uIDMuMzAgYW5kIGVhcmxpZXIgdXNlcnMgcGxlYXNlIGluc3RhbGwgNDQgdmVyc2lvbiBvZiB0aGUgZXh0ZW5zaW9uIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZG93bmxvYWQtZXh0ZW5zaW9uL2xvY2trZXlzJTQwdmFpbmEubHQuc2hlbGwtZXh0ZW5zaW9uLnppcD92ZXJzaW9uX3RhZz0yNjIyOSAiLAogICJuYW1lIjogIkxvY2sgS2V5cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSwgUmFwaGFcdTAwZWJsIFJvY2hldCwgTHVpeiBOaWNrZWwsIEplc3NlLCBEdVx1MDE2MWFuIEthemlrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2thenlzbWFzdGVyL2dub21lLXNoZWxsLWV4dGVuc2lvbi1sb2Nra2V5cyIsCiAgInV1aWQiOiAibG9ja2tleXNAdmFpbmEubHQiLAogICJ2ZXJzaW9uIjogNDgKfQ=="}, "41": {"version": "48", "sha256": "16lvhl6d9ygmmcjyi633aacd9gsp8pmvpliawfihm23nl1w3pzp0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsLiBHbm9tZSB2ZXJzaW9uIDMuMzAgYW5kIGVhcmxpZXIgdXNlcnMgcGxlYXNlIGluc3RhbGwgNDQgdmVyc2lvbiBvZiB0aGUgZXh0ZW5zaW9uIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZG93bmxvYWQtZXh0ZW5zaW9uL2xvY2trZXlzJTQwdmFpbmEubHQuc2hlbGwtZXh0ZW5zaW9uLnppcD92ZXJzaW9uX3RhZz0yNjIyOSAiLAogICJuYW1lIjogIkxvY2sgS2V5cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSwgUmFwaGFcdTAwZWJsIFJvY2hldCwgTHVpeiBOaWNrZWwsIEplc3NlLCBEdVx1MDE2MWFuIEthemlrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2thenlzbWFzdGVyL2dub21lLXNoZWxsLWV4dGVuc2lvbi1sb2Nra2V5cyIsCiAgInV1aWQiOiAibG9ja2tleXNAdmFpbmEubHQiLAogICJ2ZXJzaW9uIjogNDgKfQ=="}, "42": {"version": "48", "sha256": "16lvhl6d9ygmmcjyi633aacd9gsp8pmvpliawfihm23nl1w3pzp0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsLiBHbm9tZSB2ZXJzaW9uIDMuMzAgYW5kIGVhcmxpZXIgdXNlcnMgcGxlYXNlIGluc3RhbGwgNDQgdmVyc2lvbiBvZiB0aGUgZXh0ZW5zaW9uIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZG93bmxvYWQtZXh0ZW5zaW9uL2xvY2trZXlzJTQwdmFpbmEubHQuc2hlbGwtZXh0ZW5zaW9uLnppcD92ZXJzaW9uX3RhZz0yNjIyOSAiLAogICJuYW1lIjogIkxvY2sgS2V5cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSwgUmFwaGFcdTAwZWJsIFJvY2hldCwgTHVpeiBOaWNrZWwsIEplc3NlLCBEdVx1MDE2MWFuIEthemlrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2thenlzbWFzdGVyL2dub21lLXNoZWxsLWV4dGVuc2lvbi1sb2Nra2V5cyIsCiAgInV1aWQiOiAibG9ja2tleXNAdmFpbmEubHQiLAogICJ2ZXJzaW9uIjogNDgKfQ=="}, "43": {"version": "48", "sha256": "16lvhl6d9ygmmcjyi633aacd9gsp8pmvpliawfihm23nl1w3pzp0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsLiBHbm9tZSB2ZXJzaW9uIDMuMzAgYW5kIGVhcmxpZXIgdXNlcnMgcGxlYXNlIGluc3RhbGwgNDQgdmVyc2lvbiBvZiB0aGUgZXh0ZW5zaW9uIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZG93bmxvYWQtZXh0ZW5zaW9uL2xvY2trZXlzJTQwdmFpbmEubHQuc2hlbGwtZXh0ZW5zaW9uLnppcD92ZXJzaW9uX3RhZz0yNjIyOSAiLAogICJuYW1lIjogIkxvY2sgS2V5cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSwgUmFwaGFcdTAwZWJsIFJvY2hldCwgTHVpeiBOaWNrZWwsIEplc3NlLCBEdVx1MDE2MWFuIEthemlrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2thenlzbWFzdGVyL2dub21lLXNoZWxsLWV4dGVuc2lvbi1sb2Nra2V5cyIsCiAgInV1aWQiOiAibG9ja2tleXNAdmFpbmEubHQiLAogICJ2ZXJzaW9uIjogNDgKfQ=="}}}
 , {"uuid": "putWindow@clemens.lab21.org", "name": "Put Windows", "pname": "put-windows", "description": "Fully customizable replacement for the old compiz put plugin. \n * Move windows to left/right side, bottom/top, center or corner \n * Move window to other screen \n * Select focused window using the keyboard \n * Application based window placement \n\n Please check github if your gnome-shell version is not supported", "link": "https://extensions.gnome.org/extension/39/put-windows/", "shell_version_map": {"38": {"version": "32", "sha256": "1n4hk2sqdbcn25lxk02vljc9xxbidragimvc4b6dj2m72625lx67", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZ1bGx5IGN1c3RvbWl6YWJsZSByZXBsYWNlbWVudCBmb3IgdGhlIG9sZCBjb21waXogcHV0IHBsdWdpbi4gXG4gKiBNb3ZlIHdpbmRvd3MgdG8gbGVmdC9yaWdodCBzaWRlLCBib3R0b20vdG9wLCBjZW50ZXIgb3IgY29ybmVyIFxuICogTW92ZSB3aW5kb3cgdG8gb3RoZXIgc2NyZWVuIFxuICogU2VsZWN0IGZvY3VzZWQgd2luZG93IHVzaW5nIHRoZSBrZXlib2FyZCBcbiAqIEFwcGxpY2F0aW9uIGJhc2VkIHdpbmRvdyBwbGFjZW1lbnQgXG5cbiBQbGVhc2UgY2hlY2sgZ2l0aHViIGlmIHlvdXIgZ25vbWUtc2hlbGwgdmVyc2lvbiBpcyBub3Qgc3VwcG9ydGVkIiwKICAiZ2V0dGV4dC1kb21haW4iOiAicHV0V2luZG93IiwKICAibmFtZSI6ICJQdXQgV2luZG93cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5vcmctbGFiMjEtcHV0d2luZG93IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmVnZXN0aS9nbm9tZS1zaGVsbC1leHRlbnNpb25zLW5lZ2VzdGkiLAogICJ1dWlkIjogInB1dFdpbmRvd0BjbGVtZW5zLmxhYjIxLm9yZyIsCiAgInZlcnNpb24iOiAzMgp9"}}}
 , {"uuid": "permanent-notifications@bonzini.gnu.org", "name": "Permanent notifications", "pname": "permanent-notifications", "description": "Keep notifications on the message tray until clicked", "link": "https://extensions.gnome.org/extension/41/permanent-notifications/", "shell_version_map": {"40": {"version": "8", "sha256": "13s0h7b9216xi7p6lsnipsm0lrxzr2dc94nm87fn580m43gx24lk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktlZXAgbm90aWZpY2F0aW9ucyBvbiB0aGUgbWVzc2FnZSB0cmF5IHVudGlsIGNsaWNrZWQiLAogICJsb2NhbGVkaXIiOiAiL3Vzci9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlBlcm1hbmVudCBub3RpZmljYXRpb25zIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJib256aW5pQGdudS5vcmciCiAgXSwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIiLAogICAgIjMuMi4xIiwKICAgICIzLjQiLAogICAgIjMuMy45MCIsCiAgICAiMy4zLjkxIiwKICAgICIzLjMuOTIiLAogICAgIjMuNiIsCiAgICAiMy40LjEiLAogICAgIjMuMy45MyIsCiAgICAiMy4zLjk0IiwKICAgICIzLjgiLAogICAgIjMuMTAiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ib256aW5pL2dub21lLXNoZWxsLXBlcm1hbmVudC1ub3RpZmljYXRpb25zIiwKICAidXVpZCI6ICJwZXJtYW5lbnQtbm90aWZpY2F0aW9uc0Bib256aW5pLmdudS5vcmciLAogICJ2ZXJzaW9uIjogOAp9"}, "41": {"version": "8", "sha256": "13s0h7b9216xi7p6lsnipsm0lrxzr2dc94nm87fn580m43gx24lk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktlZXAgbm90aWZpY2F0aW9ucyBvbiB0aGUgbWVzc2FnZSB0cmF5IHVudGlsIGNsaWNrZWQiLAogICJsb2NhbGVkaXIiOiAiL3Vzci9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlBlcm1hbmVudCBub3RpZmljYXRpb25zIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJib256aW5pQGdudS5vcmciCiAgXSwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIiLAogICAgIjMuMi4xIiwKICAgICIzLjQiLAogICAgIjMuMy45MCIsCiAgICAiMy4zLjkxIiwKICAgICIzLjMuOTIiLAogICAgIjMuNiIsCiAgICAiMy40LjEiLAogICAgIjMuMy45MyIsCiAgICAiMy4zLjk0IiwKICAgICIzLjgiLAogICAgIjMuMTAiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ib256aW5pL2dub21lLXNoZWxsLXBlcm1hbmVudC1ub3RpZmljYXRpb25zIiwKICAidXVpZCI6ICJwZXJtYW5lbnQtbm90aWZpY2F0aW9uc0Bib256aW5pLmdudS5vcmciLAogICJ2ZXJzaW9uIjogOAp9"}, "42": {"version": "8", "sha256": "13s0h7b9216xi7p6lsnipsm0lrxzr2dc94nm87fn580m43gx24lk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktlZXAgbm90aWZpY2F0aW9ucyBvbiB0aGUgbWVzc2FnZSB0cmF5IHVudGlsIGNsaWNrZWQiLAogICJsb2NhbGVkaXIiOiAiL3Vzci9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlBlcm1hbmVudCBub3RpZmljYXRpb25zIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJib256aW5pQGdudS5vcmciCiAgXSwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIiLAogICAgIjMuMi4xIiwKICAgICIzLjQiLAogICAgIjMuMy45MCIsCiAgICAiMy4zLjkxIiwKICAgICIzLjMuOTIiLAogICAgIjMuNiIsCiAgICAiMy40LjEiLAogICAgIjMuMy45MyIsCiAgICAiMy4zLjk0IiwKICAgICIzLjgiLAogICAgIjMuMTAiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ib256aW5pL2dub21lLXNoZWxsLXBlcm1hbmVudC1ub3RpZmljYXRpb25zIiwKICAidXVpZCI6ICJwZXJtYW5lbnQtbm90aWZpY2F0aW9uc0Bib256aW5pLmdudS5vcmciLAogICJ2ZXJzaW9uIjogOAp9"}}}
 , {"uuid": "gnome-shell-trash-extension", "name": "Trash", "pname": "trash", "description": "A Trash button for the GNOME shell panel", "link": "https://extensions.gnome.org/extension/48/trash/", "shell_version_map": {"38": {"version": "21", "sha256": "0k4ldxnsqbb6lxps06bqp60wrf91dwd6kcmmjgfg8cfcg3giji6w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgVHJhc2ggYnV0dG9uIGZvciB0aGUgR05PTUUgc2hlbGwgcGFuZWwiLAogICJsb2NhbGVkaXIiOiAibG9jYWxlIiwKICAibmFtZSI6ICJUcmFzaCIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiQXhlbCB2b24gQmVydG9sZGkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2JlcnRvbGRpYS9nbm9tZS1zaGVsbC10cmFzaC1leHRlbnNpb24iLAogICJ1dWlkIjogImdub21lLXNoZWxsLXRyYXNoLWV4dGVuc2lvbiIsCiAgInZlcnNpb24iOiAyMQp9"}, "41": {"version": "21", "sha256": "0k4ldxnsqbb6lxps06bqp60wrf91dwd6kcmmjgfg8cfcg3giji6w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgVHJhc2ggYnV0dG9uIGZvciB0aGUgR05PTUUgc2hlbGwgcGFuZWwiLAogICJsb2NhbGVkaXIiOiAibG9jYWxlIiwKICAibmFtZSI6ICJUcmFzaCIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiQXhlbCB2b24gQmVydG9sZGkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2JlcnRvbGRpYS9nbm9tZS1zaGVsbC10cmFzaC1leHRlbnNpb24iLAogICJ1dWlkIjogImdub21lLXNoZWxsLXRyYXNoLWV4dGVuc2lvbiIsCiAgInZlcnNpb24iOiAyMQp9"}, "42": {"version": "21", "sha256": "0k4ldxnsqbb6lxps06bqp60wrf91dwd6kcmmjgfg8cfcg3giji6w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgVHJhc2ggYnV0dG9uIGZvciB0aGUgR05PTUUgc2hlbGwgcGFuZWwiLAogICJsb2NhbGVkaXIiOiAibG9jYWxlIiwKICAibmFtZSI6ICJUcmFzaCIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiQXhlbCB2b24gQmVydG9sZGkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2JlcnRvbGRpYS9nbm9tZS1zaGVsbC10cmFzaC1leHRlbnNpb24iLAogICJ1dWlkIjogImdub21lLXNoZWxsLXRyYXNoLWV4dGVuc2lvbiIsCiAgInZlcnNpb24iOiAyMQp9"}}}
@@ -40,9 +40,9 @@
 , {"uuid": "historymanager-prefix-search@sustmidown.centrum.cz", "name": "HistoryManager Prefix Search", "pname": "historymanager-prefix-search", "description": "Use PageUp and PageDown to move in HistoryManager (eg. RunCommand, Looking Glass) according to prefix", "link": "https://extensions.gnome.org/extension/544/historymanager-prefix-search/", "shell_version_map": {"40": {"version": "14", "sha256": "1n6gac80xrk6lhlj29zb03h62ia0a66va0i9pmjgqbg3bs74yds0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVzZSBQYWdlVXAgYW5kIFBhZ2VEb3duIHRvIG1vdmUgaW4gSGlzdG9yeU1hbmFnZXIgKGVnLiBSdW5Db21tYW5kLCBMb29raW5nIEdsYXNzKSBhY2NvcmRpbmcgdG8gcHJlZml4IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaGlzdG9yeW1hbmFnZXItcHJlZml4LXNlYXJjaCIsCiAgIm5hbWUiOiAiSGlzdG9yeU1hbmFnZXIgUHJlZml4IFNlYXJjaCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5oaXN0b3J5bWFuYWdlci1wcmVmaXgtc2VhcmNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjYiLAogICAgIjMuOCIsCiAgICAiMy43LjMiLAogICAgIjMuMTAiLAogICAgIjMuMTIiLAogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3VzdG1pL2dub21lLXNoZWxsLWV4dGVuc2lvbi1oaXN0b3J5bWFuYWdlci1wcmVmaXgtc2VhcmNoIiwKICAidXVpZCI6ICJoaXN0b3J5bWFuYWdlci1wcmVmaXgtc2VhcmNoQHN1c3RtaWRvd24uY2VudHJ1bS5jeiIsCiAgInZlcnNpb24iOiAxNAp9"}}}
 , {"uuid": "hidetopbar@mathieu.bidon.ca", "name": "Hide Top Bar", "pname": "hide-top-bar", "description": "Hides the top bar, except in overview. However, there is an option to show the panel whenever the mouse pointer approaches the edge of the screen. And if \"intellihide\" is enabled, the panel only hides when a window takes the space.\n\n- Press backspace to remove keyboard shortcut.\n- Log off and on again when there is an error after upgrading.", "link": "https://extensions.gnome.org/extension/545/hide-top-bar/", "shell_version_map": {"38": {"version": "109", "sha256": "1zbgbrsp8wrwl2slgh52qaqmalzzk2bzlzcdjdya24wgjc1bf0ps", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSB0b3AgYmFyLCBleGNlcHQgaW4gb3ZlcnZpZXcuIEhvd2V2ZXIsIHRoZXJlIGlzIGFuIG9wdGlvbiB0byBzaG93IHRoZSBwYW5lbCB3aGVuZXZlciB0aGUgbW91c2UgcG9pbnRlciBhcHByb2FjaGVzIHRoZSBlZGdlIG9mIHRoZSBzY3JlZW4uIEFuZCBpZiBcImludGVsbGloaWRlXCIgaXMgZW5hYmxlZCwgdGhlIHBhbmVsIG9ubHkgaGlkZXMgd2hlbiBhIHdpbmRvdyB0YWtlcyB0aGUgc3BhY2UuXG5cbi0gUHJlc3MgYmFja3NwYWNlIHRvIHJlbW92ZSBrZXlib2FyZCBzaG9ydGN1dC5cbi0gTG9nIG9mZiBhbmQgb24gYWdhaW4gd2hlbiB0aGVyZSBpcyBhbiBlcnJvciBhZnRlciB1cGdyYWRpbmcuIiwKICAibmFtZSI6ICJIaWRlIFRvcCBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaGlkZXRvcGJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dXhvcjEzMzcvaGlkZXRvcGJhciIsCiAgInV1aWQiOiAiaGlkZXRvcGJhckBtYXRoaWV1LmJpZG9uLmNhIiwKICAidmVyc2lvbiI6IDEwOQp9"}, "40": {"version": "109", "sha256": "1zbgbrsp8wrwl2slgh52qaqmalzzk2bzlzcdjdya24wgjc1bf0ps", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSB0b3AgYmFyLCBleGNlcHQgaW4gb3ZlcnZpZXcuIEhvd2V2ZXIsIHRoZXJlIGlzIGFuIG9wdGlvbiB0byBzaG93IHRoZSBwYW5lbCB3aGVuZXZlciB0aGUgbW91c2UgcG9pbnRlciBhcHByb2FjaGVzIHRoZSBlZGdlIG9mIHRoZSBzY3JlZW4uIEFuZCBpZiBcImludGVsbGloaWRlXCIgaXMgZW5hYmxlZCwgdGhlIHBhbmVsIG9ubHkgaGlkZXMgd2hlbiBhIHdpbmRvdyB0YWtlcyB0aGUgc3BhY2UuXG5cbi0gUHJlc3MgYmFja3NwYWNlIHRvIHJlbW92ZSBrZXlib2FyZCBzaG9ydGN1dC5cbi0gTG9nIG9mZiBhbmQgb24gYWdhaW4gd2hlbiB0aGVyZSBpcyBhbiBlcnJvciBhZnRlciB1cGdyYWRpbmcuIiwKICAibmFtZSI6ICJIaWRlIFRvcCBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaGlkZXRvcGJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dXhvcjEzMzcvaGlkZXRvcGJhciIsCiAgInV1aWQiOiAiaGlkZXRvcGJhckBtYXRoaWV1LmJpZG9uLmNhIiwKICAidmVyc2lvbiI6IDEwOQp9"}, "41": {"version": "109", "sha256": "1zbgbrsp8wrwl2slgh52qaqmalzzk2bzlzcdjdya24wgjc1bf0ps", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSB0b3AgYmFyLCBleGNlcHQgaW4gb3ZlcnZpZXcuIEhvd2V2ZXIsIHRoZXJlIGlzIGFuIG9wdGlvbiB0byBzaG93IHRoZSBwYW5lbCB3aGVuZXZlciB0aGUgbW91c2UgcG9pbnRlciBhcHByb2FjaGVzIHRoZSBlZGdlIG9mIHRoZSBzY3JlZW4uIEFuZCBpZiBcImludGVsbGloaWRlXCIgaXMgZW5hYmxlZCwgdGhlIHBhbmVsIG9ubHkgaGlkZXMgd2hlbiBhIHdpbmRvdyB0YWtlcyB0aGUgc3BhY2UuXG5cbi0gUHJlc3MgYmFja3NwYWNlIHRvIHJlbW92ZSBrZXlib2FyZCBzaG9ydGN1dC5cbi0gTG9nIG9mZiBhbmQgb24gYWdhaW4gd2hlbiB0aGVyZSBpcyBhbiBlcnJvciBhZnRlciB1cGdyYWRpbmcuIiwKICAibmFtZSI6ICJIaWRlIFRvcCBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaGlkZXRvcGJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dXhvcjEzMzcvaGlkZXRvcGJhciIsCiAgInV1aWQiOiAiaGlkZXRvcGJhckBtYXRoaWV1LmJpZG9uLmNhIiwKICAidmVyc2lvbiI6IDEwOQp9"}, "42": {"version": "109", "sha256": "1zbgbrsp8wrwl2slgh52qaqmalzzk2bzlzcdjdya24wgjc1bf0ps", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSB0b3AgYmFyLCBleGNlcHQgaW4gb3ZlcnZpZXcuIEhvd2V2ZXIsIHRoZXJlIGlzIGFuIG9wdGlvbiB0byBzaG93IHRoZSBwYW5lbCB3aGVuZXZlciB0aGUgbW91c2UgcG9pbnRlciBhcHByb2FjaGVzIHRoZSBlZGdlIG9mIHRoZSBzY3JlZW4uIEFuZCBpZiBcImludGVsbGloaWRlXCIgaXMgZW5hYmxlZCwgdGhlIHBhbmVsIG9ubHkgaGlkZXMgd2hlbiBhIHdpbmRvdyB0YWtlcyB0aGUgc3BhY2UuXG5cbi0gUHJlc3MgYmFja3NwYWNlIHRvIHJlbW92ZSBrZXlib2FyZCBzaG9ydGN1dC5cbi0gTG9nIG9mZiBhbmQgb24gYWdhaW4gd2hlbiB0aGVyZSBpcyBhbiBlcnJvciBhZnRlciB1cGdyYWRpbmcuIiwKICAibmFtZSI6ICJIaWRlIFRvcCBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaGlkZXRvcGJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dXhvcjEzMzcvaGlkZXRvcGJhciIsCiAgInV1aWQiOiAiaGlkZXRvcGJhckBtYXRoaWV1LmJpZG9uLmNhIiwKICAidmVyc2lvbiI6IDEwOQp9"}, "43": {"version": "109", "sha256": "1zbgbrsp8wrwl2slgh52qaqmalzzk2bzlzcdjdya24wgjc1bf0ps", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSB0b3AgYmFyLCBleGNlcHQgaW4gb3ZlcnZpZXcuIEhvd2V2ZXIsIHRoZXJlIGlzIGFuIG9wdGlvbiB0byBzaG93IHRoZSBwYW5lbCB3aGVuZXZlciB0aGUgbW91c2UgcG9pbnRlciBhcHByb2FjaGVzIHRoZSBlZGdlIG9mIHRoZSBzY3JlZW4uIEFuZCBpZiBcImludGVsbGloaWRlXCIgaXMgZW5hYmxlZCwgdGhlIHBhbmVsIG9ubHkgaGlkZXMgd2hlbiBhIHdpbmRvdyB0YWtlcyB0aGUgc3BhY2UuXG5cbi0gUHJlc3MgYmFja3NwYWNlIHRvIHJlbW92ZSBrZXlib2FyZCBzaG9ydGN1dC5cbi0gTG9nIG9mZiBhbmQgb24gYWdhaW4gd2hlbiB0aGVyZSBpcyBhbiBlcnJvciBhZnRlciB1cGdyYWRpbmcuIiwKICAibmFtZSI6ICJIaWRlIFRvcCBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaGlkZXRvcGJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dXhvcjEzMzcvaGlkZXRvcGJhciIsCiAgInV1aWQiOiAiaGlkZXRvcGJhckBtYXRoaWV1LmJpZG9uLmNhIiwKICAidmVyc2lvbiI6IDEwOQp9"}}}
 , {"uuid": "hdate@hatul.info", "name": "Gnome HDate", "pname": "gnome-hdate", "description": "Show Hebrew Date in the Panel.\nRequires libhdate-glib", "link": "https://extensions.gnome.org/extension/554/gnome-hdate/", "shell_version_map": {"40": {"version": "23", "sha256": "14n41x3808gp35wkd89cwprxgmh9w5sqfi5jx7i8rpa0cb1jzw34", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgSGVicmV3IERhdGUgaW4gdGhlIFBhbmVsLlxuUmVxdWlyZXMgbGliaGRhdGUtZ2xpYiIsCiAgIm5hbWUiOiAiR25vbWUgSERhdGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMiIsCiAgICAiMy40IiwKICAgICIzLjYiLAogICAgIjMuOCIsCiAgICAiMy4xMCIsCiAgICAiMy4xMiIsCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FtaWFkL2dub21lLWhkYXRlIiwKICAidXVpZCI6ICJoZGF0ZUBoYXR1bC5pbmZvIiwKICAidmVyc2lvbiI6IDIzCn0="}, "41": {"version": "23", "sha256": "14n41x3808gp35wkd89cwprxgmh9w5sqfi5jx7i8rpa0cb1jzw34", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgSGVicmV3IERhdGUgaW4gdGhlIFBhbmVsLlxuUmVxdWlyZXMgbGliaGRhdGUtZ2xpYiIsCiAgIm5hbWUiOiAiR25vbWUgSERhdGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMiIsCiAgICAiMy40IiwKICAgICIzLjYiLAogICAgIjMuOCIsCiAgICAiMy4xMCIsCiAgICAiMy4xMiIsCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FtaWFkL2dub21lLWhkYXRlIiwKICAidXVpZCI6ICJoZGF0ZUBoYXR1bC5pbmZvIiwKICAidmVyc2lvbiI6IDIzCn0="}, "42": {"version": "23", "sha256": "14n41x3808gp35wkd89cwprxgmh9w5sqfi5jx7i8rpa0cb1jzw34", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgSGVicmV3IERhdGUgaW4gdGhlIFBhbmVsLlxuUmVxdWlyZXMgbGliaGRhdGUtZ2xpYiIsCiAgIm5hbWUiOiAiR25vbWUgSERhdGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMiIsCiAgICAiMy40IiwKICAgICIzLjYiLAogICAgIjMuOCIsCiAgICAiMy4xMCIsCiAgICAiMy4xMiIsCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FtaWFkL2dub21lLWhkYXRlIiwKICAidXVpZCI6ICJoZGF0ZUBoYXR1bC5pbmZvIiwKICAidmVyc2lvbiI6IDIzCn0="}}}
-, {"uuid": "todo.txt@bart.libert.gmail.com", "name": "Todo.txt", "pname": "todotxt", "description": "A Gnome shell interface for todo.txt. \n\nTodo.txt is a future-proof syntax for tasks (not made by me), for more info: http://todotxt.com/\n\nSome examples:\nTask: Basic task\n(A) Task: High priority task\nTask @project +context: Task is part of project and has a certain context\nx 2013-08-22 Task: Task was completed on the 22nd of August\n\nFor more info about the syntax: https://github.com/ginatrapani/todo.txt-cli/wiki/The-Todo.txt-Format\n\nQuick start:\nWhen you first enable the extension, chances are high you'll see a [X] in your top panel. If you click the [X], you will be able to choose between creating the necessary files automatically or selecting your own existing files to be used with the extension.\n\nPlease use the issue tracker on the homepage to report bugs and/or file feature requests, this makes tracking easier for me. Thanks!\n\nSee the included CHANGELOG.md for info about changes between different versions, or see it online: https://gitlab.com/todo.txt-gnome-shell-extension/todo-txt-gnome-shell-extension/raw/master/CHANGELOG.md", "link": "https://extensions.gnome.org/extension/570/todotxt/", "shell_version_map": {"38": {"version": "33", "sha256": "0vk73vygk6p46f6axsyl9k33jmk2hhvrrynix3rq113nl5qwmy2j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgaW50ZXJmYWNlIGZvciB0b2RvLnR4dC4gXG5cblRvZG8udHh0IGlzIGEgZnV0dXJlLXByb29mIHN5bnRheCBmb3IgdGFza3MgKG5vdCBtYWRlIGJ5IG1lKSwgZm9yIG1vcmUgaW5mbzogaHR0cDovL3RvZG90eHQuY29tL1xuXG5Tb21lIGV4YW1wbGVzOlxuVGFzazogQmFzaWMgdGFza1xuKEEpIFRhc2s6IEhpZ2ggcHJpb3JpdHkgdGFza1xuVGFzayBAcHJvamVjdCArY29udGV4dDogVGFzayBpcyBwYXJ0IG9mIHByb2plY3QgYW5kIGhhcyBhIGNlcnRhaW4gY29udGV4dFxueCAyMDEzLTA4LTIyIFRhc2s6IFRhc2sgd2FzIGNvbXBsZXRlZCBvbiB0aGUgMjJuZCBvZiBBdWd1c3RcblxuRm9yIG1vcmUgaW5mbyBhYm91dCB0aGUgc3ludGF4OiBodHRwczovL2dpdGh1Yi5jb20vZ2luYXRyYXBhbmkvdG9kby50eHQtY2xpL3dpa2kvVGhlLVRvZG8udHh0LUZvcm1hdFxuXG5RdWljayBzdGFydDpcbldoZW4geW91IGZpcnN0IGVuYWJsZSB0aGUgZXh0ZW5zaW9uLCBjaGFuY2VzIGFyZSBoaWdoIHlvdSdsbCBzZWUgYSBbWF0gaW4geW91ciB0b3AgcGFuZWwuIElmIHlvdSBjbGljayB0aGUgW1hdLCB5b3Ugd2lsbCBiZSBhYmxlIHRvIGNob29zZSBiZXR3ZWVuIGNyZWF0aW5nIHRoZSBuZWNlc3NhcnkgZmlsZXMgYXV0b21hdGljYWxseSBvciBzZWxlY3RpbmcgeW91ciBvd24gZXhpc3RpbmcgZmlsZXMgdG8gYmUgdXNlZCB3aXRoIHRoZSBleHRlbnNpb24uXG5cblBsZWFzZSB1c2UgdGhlIGlzc3VlIHRyYWNrZXIgb24gdGhlIGhvbWVwYWdlIHRvIHJlcG9ydCBidWdzIGFuZC9vciBmaWxlIGZlYXR1cmUgcmVxdWVzdHMsIHRoaXMgbWFrZXMgdHJhY2tpbmcgZWFzaWVyIGZvciBtZS4gVGhhbmtzIVxuXG5TZWUgdGhlIGluY2x1ZGVkIENIQU5HRUxPRy5tZCBmb3IgaW5mbyBhYm91dCBjaGFuZ2VzIGJldHdlZW4gZGlmZmVyZW50IHZlcnNpb25zLCBvciBzZWUgaXQgb25saW5lOiBodHRwczovL2dpdGxhYi5jb20vdG9kby50eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3RvZG8tdHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbi9yYXcvbWFzdGVyL0NIQU5HRUxPRy5tZCIsCiAgIm5hbWUiOiAiVG9kby50eHQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS90b2RvLnR4dC1nbm9tZS1zaGVsbC1leHRlbnNpb24vdG9kby10eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJ0b2RvLnR4dEBiYXJ0LmxpYmVydC5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzMKfQ=="}, "40": {"version": "35", "sha256": "0wh8wlic0qhfvyfvngm1vh7qhrs4709npn231q8vljgxav088p5k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgaW50ZXJmYWNlIGZvciB0b2RvLnR4dC4gXG5cblRvZG8udHh0IGlzIGEgZnV0dXJlLXByb29mIHN5bnRheCBmb3IgdGFza3MgKG5vdCBtYWRlIGJ5IG1lKSwgZm9yIG1vcmUgaW5mbzogaHR0cDovL3RvZG90eHQuY29tL1xuXG5Tb21lIGV4YW1wbGVzOlxuVGFzazogQmFzaWMgdGFza1xuKEEpIFRhc2s6IEhpZ2ggcHJpb3JpdHkgdGFza1xuVGFzayBAcHJvamVjdCArY29udGV4dDogVGFzayBpcyBwYXJ0IG9mIHByb2plY3QgYW5kIGhhcyBhIGNlcnRhaW4gY29udGV4dFxueCAyMDEzLTA4LTIyIFRhc2s6IFRhc2sgd2FzIGNvbXBsZXRlZCBvbiB0aGUgMjJuZCBvZiBBdWd1c3RcblxuRm9yIG1vcmUgaW5mbyBhYm91dCB0aGUgc3ludGF4OiBodHRwczovL2dpdGh1Yi5jb20vZ2luYXRyYXBhbmkvdG9kby50eHQtY2xpL3dpa2kvVGhlLVRvZG8udHh0LUZvcm1hdFxuXG5RdWljayBzdGFydDpcbldoZW4geW91IGZpcnN0IGVuYWJsZSB0aGUgZXh0ZW5zaW9uLCBjaGFuY2VzIGFyZSBoaWdoIHlvdSdsbCBzZWUgYSBbWF0gaW4geW91ciB0b3AgcGFuZWwuIElmIHlvdSBjbGljayB0aGUgW1hdLCB5b3Ugd2lsbCBiZSBhYmxlIHRvIGNob29zZSBiZXR3ZWVuIGNyZWF0aW5nIHRoZSBuZWNlc3NhcnkgZmlsZXMgYXV0b21hdGljYWxseSBvciBzZWxlY3RpbmcgeW91ciBvd24gZXhpc3RpbmcgZmlsZXMgdG8gYmUgdXNlZCB3aXRoIHRoZSBleHRlbnNpb24uXG5cblBsZWFzZSB1c2UgdGhlIGlzc3VlIHRyYWNrZXIgb24gdGhlIGhvbWVwYWdlIHRvIHJlcG9ydCBidWdzIGFuZC9vciBmaWxlIGZlYXR1cmUgcmVxdWVzdHMsIHRoaXMgbWFrZXMgdHJhY2tpbmcgZWFzaWVyIGZvciBtZS4gVGhhbmtzIVxuXG5TZWUgdGhlIGluY2x1ZGVkIENIQU5HRUxPRy5tZCBmb3IgaW5mbyBhYm91dCBjaGFuZ2VzIGJldHdlZW4gZGlmZmVyZW50IHZlcnNpb25zLCBvciBzZWUgaXQgb25saW5lOiBodHRwczovL2dpdGxhYi5jb20vdG9kby50eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3RvZG8tdHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbi9yYXcvbWFzdGVyL0NIQU5HRUxPRy5tZCIsCiAgIm5hbWUiOiAiVG9kby50eHQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vdG9kby50eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3RvZG8tdHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAidG9kby50eHRAYmFydC5saWJlcnQuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDM1Cn0="}, "41": {"version": "37", "sha256": "0zmvkzak62akb95wkk0794cqr4zrzi78amljlfawnjw25i0sc8hd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgaW50ZXJmYWNlIGZvciB0b2RvLnR4dC4gXG5cblRvZG8udHh0IGlzIGEgZnV0dXJlLXByb29mIHN5bnRheCBmb3IgdGFza3MgKG5vdCBtYWRlIGJ5IG1lKSwgZm9yIG1vcmUgaW5mbzogaHR0cDovL3RvZG90eHQuY29tL1xuXG5Tb21lIGV4YW1wbGVzOlxuVGFzazogQmFzaWMgdGFza1xuKEEpIFRhc2s6IEhpZ2ggcHJpb3JpdHkgdGFza1xuVGFzayBAcHJvamVjdCArY29udGV4dDogVGFzayBpcyBwYXJ0IG9mIHByb2plY3QgYW5kIGhhcyBhIGNlcnRhaW4gY29udGV4dFxueCAyMDEzLTA4LTIyIFRhc2s6IFRhc2sgd2FzIGNvbXBsZXRlZCBvbiB0aGUgMjJuZCBvZiBBdWd1c3RcblxuRm9yIG1vcmUgaW5mbyBhYm91dCB0aGUgc3ludGF4OiBodHRwczovL2dpdGh1Yi5jb20vZ2luYXRyYXBhbmkvdG9kby50eHQtY2xpL3dpa2kvVGhlLVRvZG8udHh0LUZvcm1hdFxuXG5RdWljayBzdGFydDpcbldoZW4geW91IGZpcnN0IGVuYWJsZSB0aGUgZXh0ZW5zaW9uLCBjaGFuY2VzIGFyZSBoaWdoIHlvdSdsbCBzZWUgYSBbWF0gaW4geW91ciB0b3AgcGFuZWwuIElmIHlvdSBjbGljayB0aGUgW1hdLCB5b3Ugd2lsbCBiZSBhYmxlIHRvIGNob29zZSBiZXR3ZWVuIGNyZWF0aW5nIHRoZSBuZWNlc3NhcnkgZmlsZXMgYXV0b21hdGljYWxseSBvciBzZWxlY3RpbmcgeW91ciBvd24gZXhpc3RpbmcgZmlsZXMgdG8gYmUgdXNlZCB3aXRoIHRoZSBleHRlbnNpb24uXG5cblBsZWFzZSB1c2UgdGhlIGlzc3VlIHRyYWNrZXIgb24gdGhlIGhvbWVwYWdlIHRvIHJlcG9ydCBidWdzIGFuZC9vciBmaWxlIGZlYXR1cmUgcmVxdWVzdHMsIHRoaXMgbWFrZXMgdHJhY2tpbmcgZWFzaWVyIGZvciBtZS4gVGhhbmtzIVxuXG5TZWUgdGhlIGluY2x1ZGVkIENIQU5HRUxPRy5tZCBmb3IgaW5mbyBhYm91dCBjaGFuZ2VzIGJldHdlZW4gZGlmZmVyZW50IHZlcnNpb25zLCBvciBzZWUgaXQgb25saW5lOiBodHRwczovL2dpdGxhYi5jb20vdG9kby50eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3RvZG8tdHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbi9yYXcvbWFzdGVyL0NIQU5HRUxPRy5tZCIsCiAgIm5hbWUiOiAiVG9kby50eHQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3RvZG8udHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbi90b2RvLXR4dC1nbm9tZS1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogInRvZG8udHh0QGJhcnQubGliZXJ0LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzNwp9"}, "42": {"version": "37", "sha256": "0zmvkzak62akb95wkk0794cqr4zrzi78amljlfawnjw25i0sc8hd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgaW50ZXJmYWNlIGZvciB0b2RvLnR4dC4gXG5cblRvZG8udHh0IGlzIGEgZnV0dXJlLXByb29mIHN5bnRheCBmb3IgdGFza3MgKG5vdCBtYWRlIGJ5IG1lKSwgZm9yIG1vcmUgaW5mbzogaHR0cDovL3RvZG90eHQuY29tL1xuXG5Tb21lIGV4YW1wbGVzOlxuVGFzazogQmFzaWMgdGFza1xuKEEpIFRhc2s6IEhpZ2ggcHJpb3JpdHkgdGFza1xuVGFzayBAcHJvamVjdCArY29udGV4dDogVGFzayBpcyBwYXJ0IG9mIHByb2plY3QgYW5kIGhhcyBhIGNlcnRhaW4gY29udGV4dFxueCAyMDEzLTA4LTIyIFRhc2s6IFRhc2sgd2FzIGNvbXBsZXRlZCBvbiB0aGUgMjJuZCBvZiBBdWd1c3RcblxuRm9yIG1vcmUgaW5mbyBhYm91dCB0aGUgc3ludGF4OiBodHRwczovL2dpdGh1Yi5jb20vZ2luYXRyYXBhbmkvdG9kby50eHQtY2xpL3dpa2kvVGhlLVRvZG8udHh0LUZvcm1hdFxuXG5RdWljayBzdGFydDpcbldoZW4geW91IGZpcnN0IGVuYWJsZSB0aGUgZXh0ZW5zaW9uLCBjaGFuY2VzIGFyZSBoaWdoIHlvdSdsbCBzZWUgYSBbWF0gaW4geW91ciB0b3AgcGFuZWwuIElmIHlvdSBjbGljayB0aGUgW1hdLCB5b3Ugd2lsbCBiZSBhYmxlIHRvIGNob29zZSBiZXR3ZWVuIGNyZWF0aW5nIHRoZSBuZWNlc3NhcnkgZmlsZXMgYXV0b21hdGljYWxseSBvciBzZWxlY3RpbmcgeW91ciBvd24gZXhpc3RpbmcgZmlsZXMgdG8gYmUgdXNlZCB3aXRoIHRoZSBleHRlbnNpb24uXG5cblBsZWFzZSB1c2UgdGhlIGlzc3VlIHRyYWNrZXIgb24gdGhlIGhvbWVwYWdlIHRvIHJlcG9ydCBidWdzIGFuZC9vciBmaWxlIGZlYXR1cmUgcmVxdWVzdHMsIHRoaXMgbWFrZXMgdHJhY2tpbmcgZWFzaWVyIGZvciBtZS4gVGhhbmtzIVxuXG5TZWUgdGhlIGluY2x1ZGVkIENIQU5HRUxPRy5tZCBmb3IgaW5mbyBhYm91dCBjaGFuZ2VzIGJldHdlZW4gZGlmZmVyZW50IHZlcnNpb25zLCBvciBzZWUgaXQgb25saW5lOiBodHRwczovL2dpdGxhYi5jb20vdG9kby50eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3RvZG8tdHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbi9yYXcvbWFzdGVyL0NIQU5HRUxPRy5tZCIsCiAgIm5hbWUiOiAiVG9kby50eHQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3RvZG8udHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbi90b2RvLXR4dC1nbm9tZS1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogInRvZG8udHh0QGJhcnQubGliZXJ0LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzNwp9"}}}
+, {"uuid": "todo.txt@bart.libert.gmail.com", "name": "Todo.txt", "pname": "todotxt", "description": "A Gnome shell interface for todo.txt. \n\nTodo.txt is a future-proof syntax for tasks (not made by me), for more info: http://todotxt.com/\n\nSome examples:\nTask: Basic task\n(A) Task: High priority task\nTask @project +context: Task is part of project and has a certain context\nx 2013-08-22 Task: Task was completed on the 22nd of August\n\nFor more info about the syntax: https://github.com/ginatrapani/todo.txt-cli/wiki/The-Todo.txt-Format\n\nQuick start:\nWhen you first enable the extension, chances are high you'll see a [X] in your top panel. If you click the [X], you will be able to choose between creating the necessary files automatically or selecting your own existing files to be used with the extension.\n\nPlease use the issue tracker on the homepage to report bugs and/or file feature requests, this makes tracking easier for me. Thanks!\n\nSee the included CHANGELOG.md for info about changes between different versions, or see it online: https://gitlab.com/todo.txt-gnome-shell-extension/todo-txt-gnome-shell-extension/-/blob/master/CHANGELOG.md", "link": "https://extensions.gnome.org/extension/570/todotxt/", "shell_version_map": {"38": {"version": "33", "sha256": "1b0482ibbsvi4bhkl6a8gr0kv63cnbgaim02ysi0plqg4bcirxk2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgaW50ZXJmYWNlIGZvciB0b2RvLnR4dC4gXG5cblRvZG8udHh0IGlzIGEgZnV0dXJlLXByb29mIHN5bnRheCBmb3IgdGFza3MgKG5vdCBtYWRlIGJ5IG1lKSwgZm9yIG1vcmUgaW5mbzogaHR0cDovL3RvZG90eHQuY29tL1xuXG5Tb21lIGV4YW1wbGVzOlxuVGFzazogQmFzaWMgdGFza1xuKEEpIFRhc2s6IEhpZ2ggcHJpb3JpdHkgdGFza1xuVGFzayBAcHJvamVjdCArY29udGV4dDogVGFzayBpcyBwYXJ0IG9mIHByb2plY3QgYW5kIGhhcyBhIGNlcnRhaW4gY29udGV4dFxueCAyMDEzLTA4LTIyIFRhc2s6IFRhc2sgd2FzIGNvbXBsZXRlZCBvbiB0aGUgMjJuZCBvZiBBdWd1c3RcblxuRm9yIG1vcmUgaW5mbyBhYm91dCB0aGUgc3ludGF4OiBodHRwczovL2dpdGh1Yi5jb20vZ2luYXRyYXBhbmkvdG9kby50eHQtY2xpL3dpa2kvVGhlLVRvZG8udHh0LUZvcm1hdFxuXG5RdWljayBzdGFydDpcbldoZW4geW91IGZpcnN0IGVuYWJsZSB0aGUgZXh0ZW5zaW9uLCBjaGFuY2VzIGFyZSBoaWdoIHlvdSdsbCBzZWUgYSBbWF0gaW4geW91ciB0b3AgcGFuZWwuIElmIHlvdSBjbGljayB0aGUgW1hdLCB5b3Ugd2lsbCBiZSBhYmxlIHRvIGNob29zZSBiZXR3ZWVuIGNyZWF0aW5nIHRoZSBuZWNlc3NhcnkgZmlsZXMgYXV0b21hdGljYWxseSBvciBzZWxlY3RpbmcgeW91ciBvd24gZXhpc3RpbmcgZmlsZXMgdG8gYmUgdXNlZCB3aXRoIHRoZSBleHRlbnNpb24uXG5cblBsZWFzZSB1c2UgdGhlIGlzc3VlIHRyYWNrZXIgb24gdGhlIGhvbWVwYWdlIHRvIHJlcG9ydCBidWdzIGFuZC9vciBmaWxlIGZlYXR1cmUgcmVxdWVzdHMsIHRoaXMgbWFrZXMgdHJhY2tpbmcgZWFzaWVyIGZvciBtZS4gVGhhbmtzIVxuXG5TZWUgdGhlIGluY2x1ZGVkIENIQU5HRUxPRy5tZCBmb3IgaW5mbyBhYm91dCBjaGFuZ2VzIGJldHdlZW4gZGlmZmVyZW50IHZlcnNpb25zLCBvciBzZWUgaXQgb25saW5lOiBodHRwczovL2dpdGxhYi5jb20vdG9kby50eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3RvZG8tdHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbi8tL2Jsb2IvbWFzdGVyL0NIQU5HRUxPRy5tZCIsCiAgIm5hbWUiOiAiVG9kby50eHQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS90b2RvLnR4dC1nbm9tZS1zaGVsbC1leHRlbnNpb24vdG9kby10eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJ0b2RvLnR4dEBiYXJ0LmxpYmVydC5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzMKfQ=="}, "40": {"version": "35", "sha256": "1f6gbsh6gs1kv0clgw9is7wg9cb8dr960ll7mk07s9jd2gxymsdq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgaW50ZXJmYWNlIGZvciB0b2RvLnR4dC4gXG5cblRvZG8udHh0IGlzIGEgZnV0dXJlLXByb29mIHN5bnRheCBmb3IgdGFza3MgKG5vdCBtYWRlIGJ5IG1lKSwgZm9yIG1vcmUgaW5mbzogaHR0cDovL3RvZG90eHQuY29tL1xuXG5Tb21lIGV4YW1wbGVzOlxuVGFzazogQmFzaWMgdGFza1xuKEEpIFRhc2s6IEhpZ2ggcHJpb3JpdHkgdGFza1xuVGFzayBAcHJvamVjdCArY29udGV4dDogVGFzayBpcyBwYXJ0IG9mIHByb2plY3QgYW5kIGhhcyBhIGNlcnRhaW4gY29udGV4dFxueCAyMDEzLTA4LTIyIFRhc2s6IFRhc2sgd2FzIGNvbXBsZXRlZCBvbiB0aGUgMjJuZCBvZiBBdWd1c3RcblxuRm9yIG1vcmUgaW5mbyBhYm91dCB0aGUgc3ludGF4OiBodHRwczovL2dpdGh1Yi5jb20vZ2luYXRyYXBhbmkvdG9kby50eHQtY2xpL3dpa2kvVGhlLVRvZG8udHh0LUZvcm1hdFxuXG5RdWljayBzdGFydDpcbldoZW4geW91IGZpcnN0IGVuYWJsZSB0aGUgZXh0ZW5zaW9uLCBjaGFuY2VzIGFyZSBoaWdoIHlvdSdsbCBzZWUgYSBbWF0gaW4geW91ciB0b3AgcGFuZWwuIElmIHlvdSBjbGljayB0aGUgW1hdLCB5b3Ugd2lsbCBiZSBhYmxlIHRvIGNob29zZSBiZXR3ZWVuIGNyZWF0aW5nIHRoZSBuZWNlc3NhcnkgZmlsZXMgYXV0b21hdGljYWxseSBvciBzZWxlY3RpbmcgeW91ciBvd24gZXhpc3RpbmcgZmlsZXMgdG8gYmUgdXNlZCB3aXRoIHRoZSBleHRlbnNpb24uXG5cblBsZWFzZSB1c2UgdGhlIGlzc3VlIHRyYWNrZXIgb24gdGhlIGhvbWVwYWdlIHRvIHJlcG9ydCBidWdzIGFuZC9vciBmaWxlIGZlYXR1cmUgcmVxdWVzdHMsIHRoaXMgbWFrZXMgdHJhY2tpbmcgZWFzaWVyIGZvciBtZS4gVGhhbmtzIVxuXG5TZWUgdGhlIGluY2x1ZGVkIENIQU5HRUxPRy5tZCBmb3IgaW5mbyBhYm91dCBjaGFuZ2VzIGJldHdlZW4gZGlmZmVyZW50IHZlcnNpb25zLCBvciBzZWUgaXQgb25saW5lOiBodHRwczovL2dpdGxhYi5jb20vdG9kby50eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3RvZG8tdHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbi8tL2Jsb2IvbWFzdGVyL0NIQU5HRUxPRy5tZCIsCiAgIm5hbWUiOiAiVG9kby50eHQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vdG9kby50eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3RvZG8tdHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAidG9kby50eHRAYmFydC5saWJlcnQuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDM1Cn0="}, "41": {"version": "37", "sha256": "19n83bachj4b6lvfsp6j4gpgm9wahxlz1is2954hw4d45m5yzfbn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgaW50ZXJmYWNlIGZvciB0b2RvLnR4dC4gXG5cblRvZG8udHh0IGlzIGEgZnV0dXJlLXByb29mIHN5bnRheCBmb3IgdGFza3MgKG5vdCBtYWRlIGJ5IG1lKSwgZm9yIG1vcmUgaW5mbzogaHR0cDovL3RvZG90eHQuY29tL1xuXG5Tb21lIGV4YW1wbGVzOlxuVGFzazogQmFzaWMgdGFza1xuKEEpIFRhc2s6IEhpZ2ggcHJpb3JpdHkgdGFza1xuVGFzayBAcHJvamVjdCArY29udGV4dDogVGFzayBpcyBwYXJ0IG9mIHByb2plY3QgYW5kIGhhcyBhIGNlcnRhaW4gY29udGV4dFxueCAyMDEzLTA4LTIyIFRhc2s6IFRhc2sgd2FzIGNvbXBsZXRlZCBvbiB0aGUgMjJuZCBvZiBBdWd1c3RcblxuRm9yIG1vcmUgaW5mbyBhYm91dCB0aGUgc3ludGF4OiBodHRwczovL2dpdGh1Yi5jb20vZ2luYXRyYXBhbmkvdG9kby50eHQtY2xpL3dpa2kvVGhlLVRvZG8udHh0LUZvcm1hdFxuXG5RdWljayBzdGFydDpcbldoZW4geW91IGZpcnN0IGVuYWJsZSB0aGUgZXh0ZW5zaW9uLCBjaGFuY2VzIGFyZSBoaWdoIHlvdSdsbCBzZWUgYSBbWF0gaW4geW91ciB0b3AgcGFuZWwuIElmIHlvdSBjbGljayB0aGUgW1hdLCB5b3Ugd2lsbCBiZSBhYmxlIHRvIGNob29zZSBiZXR3ZWVuIGNyZWF0aW5nIHRoZSBuZWNlc3NhcnkgZmlsZXMgYXV0b21hdGljYWxseSBvciBzZWxlY3RpbmcgeW91ciBvd24gZXhpc3RpbmcgZmlsZXMgdG8gYmUgdXNlZCB3aXRoIHRoZSBleHRlbnNpb24uXG5cblBsZWFzZSB1c2UgdGhlIGlzc3VlIHRyYWNrZXIgb24gdGhlIGhvbWVwYWdlIHRvIHJlcG9ydCBidWdzIGFuZC9vciBmaWxlIGZlYXR1cmUgcmVxdWVzdHMsIHRoaXMgbWFrZXMgdHJhY2tpbmcgZWFzaWVyIGZvciBtZS4gVGhhbmtzIVxuXG5TZWUgdGhlIGluY2x1ZGVkIENIQU5HRUxPRy5tZCBmb3IgaW5mbyBhYm91dCBjaGFuZ2VzIGJldHdlZW4gZGlmZmVyZW50IHZlcnNpb25zLCBvciBzZWUgaXQgb25saW5lOiBodHRwczovL2dpdGxhYi5jb20vdG9kby50eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3RvZG8tdHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbi8tL2Jsb2IvbWFzdGVyL0NIQU5HRUxPRy5tZCIsCiAgIm5hbWUiOiAiVG9kby50eHQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3RvZG8udHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbi90b2RvLXR4dC1nbm9tZS1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogInRvZG8udHh0QGJhcnQubGliZXJ0LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzNwp9"}, "42": {"version": "37", "sha256": "19n83bachj4b6lvfsp6j4gpgm9wahxlz1is2954hw4d45m5yzfbn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgaW50ZXJmYWNlIGZvciB0b2RvLnR4dC4gXG5cblRvZG8udHh0IGlzIGEgZnV0dXJlLXByb29mIHN5bnRheCBmb3IgdGFza3MgKG5vdCBtYWRlIGJ5IG1lKSwgZm9yIG1vcmUgaW5mbzogaHR0cDovL3RvZG90eHQuY29tL1xuXG5Tb21lIGV4YW1wbGVzOlxuVGFzazogQmFzaWMgdGFza1xuKEEpIFRhc2s6IEhpZ2ggcHJpb3JpdHkgdGFza1xuVGFzayBAcHJvamVjdCArY29udGV4dDogVGFzayBpcyBwYXJ0IG9mIHByb2plY3QgYW5kIGhhcyBhIGNlcnRhaW4gY29udGV4dFxueCAyMDEzLTA4LTIyIFRhc2s6IFRhc2sgd2FzIGNvbXBsZXRlZCBvbiB0aGUgMjJuZCBvZiBBdWd1c3RcblxuRm9yIG1vcmUgaW5mbyBhYm91dCB0aGUgc3ludGF4OiBodHRwczovL2dpdGh1Yi5jb20vZ2luYXRyYXBhbmkvdG9kby50eHQtY2xpL3dpa2kvVGhlLVRvZG8udHh0LUZvcm1hdFxuXG5RdWljayBzdGFydDpcbldoZW4geW91IGZpcnN0IGVuYWJsZSB0aGUgZXh0ZW5zaW9uLCBjaGFuY2VzIGFyZSBoaWdoIHlvdSdsbCBzZWUgYSBbWF0gaW4geW91ciB0b3AgcGFuZWwuIElmIHlvdSBjbGljayB0aGUgW1hdLCB5b3Ugd2lsbCBiZSBhYmxlIHRvIGNob29zZSBiZXR3ZWVuIGNyZWF0aW5nIHRoZSBuZWNlc3NhcnkgZmlsZXMgYXV0b21hdGljYWxseSBvciBzZWxlY3RpbmcgeW91ciBvd24gZXhpc3RpbmcgZmlsZXMgdG8gYmUgdXNlZCB3aXRoIHRoZSBleHRlbnNpb24uXG5cblBsZWFzZSB1c2UgdGhlIGlzc3VlIHRyYWNrZXIgb24gdGhlIGhvbWVwYWdlIHRvIHJlcG9ydCBidWdzIGFuZC9vciBmaWxlIGZlYXR1cmUgcmVxdWVzdHMsIHRoaXMgbWFrZXMgdHJhY2tpbmcgZWFzaWVyIGZvciBtZS4gVGhhbmtzIVxuXG5TZWUgdGhlIGluY2x1ZGVkIENIQU5HRUxPRy5tZCBmb3IgaW5mbyBhYm91dCBjaGFuZ2VzIGJldHdlZW4gZGlmZmVyZW50IHZlcnNpb25zLCBvciBzZWUgaXQgb25saW5lOiBodHRwczovL2dpdGxhYi5jb20vdG9kby50eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3RvZG8tdHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbi8tL2Jsb2IvbWFzdGVyL0NIQU5HRUxPRy5tZCIsCiAgIm5hbWUiOiAiVG9kby50eHQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3RvZG8udHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbi90b2RvLXR4dC1nbm9tZS1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogInRvZG8udHh0QGJhcnQubGliZXJ0LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzNwp9"}, "43": {"version": "38", "sha256": "1wm73prlixvy835985rnjaclvdc3v9lcy70pnr3l6cm0mx10d36h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgaW50ZXJmYWNlIGZvciB0b2RvLnR4dC4gXG5cblRvZG8udHh0IGlzIGEgZnV0dXJlLXByb29mIHN5bnRheCBmb3IgdGFza3MgKG5vdCBtYWRlIGJ5IG1lKSwgZm9yIG1vcmUgaW5mbzogaHR0cDovL3RvZG90eHQuY29tL1xuXG5Tb21lIGV4YW1wbGVzOlxuVGFzazogQmFzaWMgdGFza1xuKEEpIFRhc2s6IEhpZ2ggcHJpb3JpdHkgdGFza1xuVGFzayBAcHJvamVjdCArY29udGV4dDogVGFzayBpcyBwYXJ0IG9mIHByb2plY3QgYW5kIGhhcyBhIGNlcnRhaW4gY29udGV4dFxueCAyMDEzLTA4LTIyIFRhc2s6IFRhc2sgd2FzIGNvbXBsZXRlZCBvbiB0aGUgMjJuZCBvZiBBdWd1c3RcblxuRm9yIG1vcmUgaW5mbyBhYm91dCB0aGUgc3ludGF4OiBodHRwczovL2dpdGh1Yi5jb20vZ2luYXRyYXBhbmkvdG9kby50eHQtY2xpL3dpa2kvVGhlLVRvZG8udHh0LUZvcm1hdFxuXG5RdWljayBzdGFydDpcbldoZW4geW91IGZpcnN0IGVuYWJsZSB0aGUgZXh0ZW5zaW9uLCBjaGFuY2VzIGFyZSBoaWdoIHlvdSdsbCBzZWUgYSBbWF0gaW4geW91ciB0b3AgcGFuZWwuIElmIHlvdSBjbGljayB0aGUgW1hdLCB5b3Ugd2lsbCBiZSBhYmxlIHRvIGNob29zZSBiZXR3ZWVuIGNyZWF0aW5nIHRoZSBuZWNlc3NhcnkgZmlsZXMgYXV0b21hdGljYWxseSBvciBzZWxlY3RpbmcgeW91ciBvd24gZXhpc3RpbmcgZmlsZXMgdG8gYmUgdXNlZCB3aXRoIHRoZSBleHRlbnNpb24uXG5cblBsZWFzZSB1c2UgdGhlIGlzc3VlIHRyYWNrZXIgb24gdGhlIGhvbWVwYWdlIHRvIHJlcG9ydCBidWdzIGFuZC9vciBmaWxlIGZlYXR1cmUgcmVxdWVzdHMsIHRoaXMgbWFrZXMgdHJhY2tpbmcgZWFzaWVyIGZvciBtZS4gVGhhbmtzIVxuXG5TZWUgdGhlIGluY2x1ZGVkIENIQU5HRUxPRy5tZCBmb3IgaW5mbyBhYm91dCBjaGFuZ2VzIGJldHdlZW4gZGlmZmVyZW50IHZlcnNpb25zLCBvciBzZWUgaXQgb25saW5lOiBodHRwczovL2dpdGxhYi5jb20vdG9kby50eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3RvZG8tdHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbi8tL2Jsb2IvbWFzdGVyL0NIQU5HRUxPRy5tZCIsCiAgImdldHRleHQtZG9tYWluIjogInRvZG90eHQiLAogICJuYW1lIjogIlRvZG8udHh0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3RvZG8udHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbi90b2RvLXR4dC1nbm9tZS1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogInRvZG8udHh0QGJhcnQubGliZXJ0LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzOAp9"}}}
 , {"uuid": "text_translator@awamper.gmail.com", "name": "Text Translator", "pname": "text-translator", "description": "** Needs the package translate-shell **\nTranslation of the text by different translators (currently Google.Translate, Yandex.Translate).\nShortcuts:\nSuper+T - open translator dialog.\nSuper+Shift+T - open translator dialog and translate text from clipboard.\nSuper+Alt+T - open translator dialog and translate from primary selection.\nCtrl+Enter+ - Translate text.\nCtrl+Shift+C - copy translated text to clipboard.\nCtrl+S - swap languages.\nCtrl+D - reset languages to default\nTab+ - toggle transliteration of result text.", "link": "https://extensions.gnome.org/extension/593/text-translator/", "shell_version_map": {"38": {"version": "36", "sha256": "1idzgg4vb791k5dryjvznr6mfwfx59vlgabw2n3spysbwvjv2a48", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIioqIE5lZWRzIHRoZSBwYWNrYWdlIHRyYW5zbGF0ZS1zaGVsbCAqKlxuVHJhbnNsYXRpb24gb2YgdGhlIHRleHQgYnkgZGlmZmVyZW50IHRyYW5zbGF0b3JzIChjdXJyZW50bHkgR29vZ2xlLlRyYW5zbGF0ZSwgWWFuZGV4LlRyYW5zbGF0ZSkuXG5TaG9ydGN1dHM6XG5TdXBlcitUIC0gb3BlbiB0cmFuc2xhdG9yIGRpYWxvZy5cblN1cGVyK1NoaWZ0K1QgLSBvcGVuIHRyYW5zbGF0b3IgZGlhbG9nIGFuZCB0cmFuc2xhdGUgdGV4dCBmcm9tIGNsaXBib2FyZC5cblN1cGVyK0FsdCtUIC0gb3BlbiB0cmFuc2xhdG9yIGRpYWxvZyBhbmQgdHJhbnNsYXRlIGZyb20gcHJpbWFyeSBzZWxlY3Rpb24uXG5DdHJsK0VudGVyKyAtIFRyYW5zbGF0ZSB0ZXh0LlxuQ3RybCtTaGlmdCtDIC0gY29weSB0cmFuc2xhdGVkIHRleHQgdG8gY2xpcGJvYXJkLlxuQ3RybCtTIC0gc3dhcCBsYW5ndWFnZXMuXG5DdHJsK0QgLSByZXNldCBsYW5ndWFnZXMgdG8gZGVmYXVsdFxuVGFiKyAtIHRvZ2dsZSB0cmFuc2xpdGVyYXRpb24gb2YgcmVzdWx0IHRleHQuIiwKICAibmFtZSI6ICJUZXh0IFRyYW5zbGF0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGV4dC10cmFuc2xhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ3Vmb2UvdGV4dC10cmFuc2xhdG9yIiwKICAidXVpZCI6ICJ0ZXh0X3RyYW5zbGF0b3JAYXdhbXBlci5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzYKfQ=="}}}
-, {"uuid": "autohide-battery@sitnik.ru", "name": "Autohide Battery", "pname": "autohide-battery", "description": "Hide battery icon in top panel, if battery is fully charged and AC is connected", "link": "https://extensions.gnome.org/extension/595/autohide-battery/", "shell_version_map": {"40": {"version": "31", "sha256": "05cy6rrsbwgb5015hnrd5ihf4pmgv5faqa15wf176x1f7pclw22p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgYmF0dGVyeSBpY29uIGluIHRvcCBwYW5lbCwgaWYgYmF0dGVyeSBpcyBmdWxseSBjaGFyZ2VkIGFuZCBBQyBpcyBjb25uZWN0ZWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhdXRvaGlkZS1iYXR0ZXJ5IiwKICAibmFtZSI6ICJBdXRvaGlkZSBCYXR0ZXJ5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FpL2F1dG9oaWRlLWJhdHRlcnkiLAogICJ1dWlkIjogImF1dG9oaWRlLWJhdHRlcnlAc2l0bmlrLnJ1IiwKICAidmVyc2lvbiI6IDMxCn0="}, "41": {"version": "31", "sha256": "05cy6rrsbwgb5015hnrd5ihf4pmgv5faqa15wf176x1f7pclw22p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgYmF0dGVyeSBpY29uIGluIHRvcCBwYW5lbCwgaWYgYmF0dGVyeSBpcyBmdWxseSBjaGFyZ2VkIGFuZCBBQyBpcyBjb25uZWN0ZWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhdXRvaGlkZS1iYXR0ZXJ5IiwKICAibmFtZSI6ICJBdXRvaGlkZSBCYXR0ZXJ5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FpL2F1dG9oaWRlLWJhdHRlcnkiLAogICJ1dWlkIjogImF1dG9oaWRlLWJhdHRlcnlAc2l0bmlrLnJ1IiwKICAidmVyc2lvbiI6IDMxCn0="}, "42": {"version": "31", "sha256": "05cy6rrsbwgb5015hnrd5ihf4pmgv5faqa15wf176x1f7pclw22p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgYmF0dGVyeSBpY29uIGluIHRvcCBwYW5lbCwgaWYgYmF0dGVyeSBpcyBmdWxseSBjaGFyZ2VkIGFuZCBBQyBpcyBjb25uZWN0ZWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhdXRvaGlkZS1iYXR0ZXJ5IiwKICAibmFtZSI6ICJBdXRvaGlkZSBCYXR0ZXJ5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FpL2F1dG9oaWRlLWJhdHRlcnkiLAogICJ1dWlkIjogImF1dG9oaWRlLWJhdHRlcnlAc2l0bmlrLnJ1IiwKICAidmVyc2lvbiI6IDMxCn0="}, "43": {"version": "31", "sha256": "05cy6rrsbwgb5015hnrd5ihf4pmgv5faqa15wf176x1f7pclw22p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgYmF0dGVyeSBpY29uIGluIHRvcCBwYW5lbCwgaWYgYmF0dGVyeSBpcyBmdWxseSBjaGFyZ2VkIGFuZCBBQyBpcyBjb25uZWN0ZWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhdXRvaGlkZS1iYXR0ZXJ5IiwKICAibmFtZSI6ICJBdXRvaGlkZSBCYXR0ZXJ5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FpL2F1dG9oaWRlLWJhdHRlcnkiLAogICJ1dWlkIjogImF1dG9oaWRlLWJhdHRlcnlAc2l0bmlrLnJ1IiwKICAidmVyc2lvbiI6IDMxCn0="}}}
+, {"uuid": "autohide-battery@sitnik.ru", "name": "Autohide Battery", "pname": "autohide-battery", "description": "Hide battery icon in top panel, if battery is fully charged and AC is connected", "link": "https://extensions.gnome.org/extension/595/autohide-battery/", "shell_version_map": {"40": {"version": "32", "sha256": "1m4f4im3n5w0zpw8wm9rhqdly20b6nq13lfgikjnh0cx2jqr1qkx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgYmF0dGVyeSBpY29uIGluIHRvcCBwYW5lbCwgaWYgYmF0dGVyeSBpcyBmdWxseSBjaGFyZ2VkIGFuZCBBQyBpcyBjb25uZWN0ZWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhdXRvaGlkZS1iYXR0ZXJ5IiwKICAibmFtZSI6ICJBdXRvaGlkZSBCYXR0ZXJ5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FpL2F1dG9oaWRlLWJhdHRlcnkiLAogICJ1dWlkIjogImF1dG9oaWRlLWJhdHRlcnlAc2l0bmlrLnJ1IiwKICAidmVyc2lvbiI6IDMyCn0="}, "41": {"version": "32", "sha256": "1m4f4im3n5w0zpw8wm9rhqdly20b6nq13lfgikjnh0cx2jqr1qkx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgYmF0dGVyeSBpY29uIGluIHRvcCBwYW5lbCwgaWYgYmF0dGVyeSBpcyBmdWxseSBjaGFyZ2VkIGFuZCBBQyBpcyBjb25uZWN0ZWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhdXRvaGlkZS1iYXR0ZXJ5IiwKICAibmFtZSI6ICJBdXRvaGlkZSBCYXR0ZXJ5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FpL2F1dG9oaWRlLWJhdHRlcnkiLAogICJ1dWlkIjogImF1dG9oaWRlLWJhdHRlcnlAc2l0bmlrLnJ1IiwKICAidmVyc2lvbiI6IDMyCn0="}, "42": {"version": "32", "sha256": "1m4f4im3n5w0zpw8wm9rhqdly20b6nq13lfgikjnh0cx2jqr1qkx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgYmF0dGVyeSBpY29uIGluIHRvcCBwYW5lbCwgaWYgYmF0dGVyeSBpcyBmdWxseSBjaGFyZ2VkIGFuZCBBQyBpcyBjb25uZWN0ZWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhdXRvaGlkZS1iYXR0ZXJ5IiwKICAibmFtZSI6ICJBdXRvaGlkZSBCYXR0ZXJ5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FpL2F1dG9oaWRlLWJhdHRlcnkiLAogICJ1dWlkIjogImF1dG9oaWRlLWJhdHRlcnlAc2l0bmlrLnJ1IiwKICAidmVyc2lvbiI6IDMyCn0="}, "43": {"version": "32", "sha256": "1m4f4im3n5w0zpw8wm9rhqdly20b6nq13lfgikjnh0cx2jqr1qkx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgYmF0dGVyeSBpY29uIGluIHRvcCBwYW5lbCwgaWYgYmF0dGVyeSBpcyBmdWxseSBjaGFyZ2VkIGFuZCBBQyBpcyBjb25uZWN0ZWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhdXRvaGlkZS1iYXR0ZXJ5IiwKICAibmFtZSI6ICJBdXRvaGlkZSBCYXR0ZXJ5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FpL2F1dG9oaWRlLWJhdHRlcnkiLAogICJ1dWlkIjogImF1dG9oaWRlLWJhdHRlcnlAc2l0bmlrLnJ1IiwKICAidmVyc2lvbiI6IDMyCn0="}}}
 , {"uuid": "launch-new-instance@gnome-shell-extensions.gcampax.github.com", "name": "Launch new instance", "pname": "launch-new-instance", "description": "Always launch a new instance when clicking in the dash or the application view.\nThis extension is part of Classic Mode and is officially supported by GNOME. Please do not report bugs using the form below, use GNOME's GitLab instance instead.", "link": "https://extensions.gnome.org/extension/600/launch-new-instance/", "shell_version_map": {"38": {"version": "29", "sha256": "0qb1ajjwm076zxsd314n7f5vl72ih7j4h9y84bqwb9cxa53mp4g4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBsYXVuY2ggYSBuZXcgaW5zdGFuY2Ugd2hlbiBjbGlja2luZyBpbiB0aGUgZGFzaCBvciB0aGUgYXBwbGljYXRpb24gdmlldy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJMYXVuY2ggbmV3IGluc3RhbmNlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJsYXVuY2gtbmV3LWluc3RhbmNlQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDI5Cn0="}, "40": {"version": "31", "sha256": "0c667wdrpfd8bh2wygglzk1bp63z6xvknhj2rhw8v3vlmhpn8994", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBsYXVuY2ggYSBuZXcgaW5zdGFuY2Ugd2hlbiBjbGlja2luZyBpbiB0aGUgZGFzaCBvciB0aGUgYXBwbGljYXRpb24gdmlldy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJMYXVuY2ggbmV3IGluc3RhbmNlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAibGF1bmNoLW5ldy1pbnN0YW5jZUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAzMQp9"}, "41": {"version": "33", "sha256": "1z2kjrqaziw5v5sig92kng302w3pdkkkcl7dlhwjqlgfhkhpdxlm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBsYXVuY2ggYSBuZXcgaW5zdGFuY2Ugd2hlbiBjbGlja2luZyBpbiB0aGUgZGFzaCBvciB0aGUgYXBwbGljYXRpb24gdmlldy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tbGF1bmNoLW5ldy1pbnN0YW5jZSIsCiAgIm5hbWUiOiAiTGF1bmNoIG5ldyBpbnN0YW5jZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5sYXVuY2gtbmV3LWluc3RhbmNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2VAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMzMKfQ=="}, "42": {"version": "34", "sha256": "1vx1dbb8sq5ss3ilqah92nja6ivqnijywj2wkg29akz8ijbss19f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBsYXVuY2ggYSBuZXcgaW5zdGFuY2Ugd2hlbiBjbGlja2luZyBpbiB0aGUgZGFzaCBvciB0aGUgYXBwbGljYXRpb24gdmlldy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tbGF1bmNoLW5ldy1pbnN0YW5jZSIsCiAgIm5hbWUiOiAiTGF1bmNoIG5ldyBpbnN0YW5jZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5sYXVuY2gtbmV3LWluc3RhbmNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2VAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMzQKfQ=="}, "43": {"version": "35", "sha256": "1i96p4jzi3yfkccbzv7r7x059xr834wispzg1n2888im51zz6x4h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBsYXVuY2ggYSBuZXcgaW5zdGFuY2Ugd2hlbiBjbGlja2luZyBpbiB0aGUgZGFzaCBvciB0aGUgYXBwbGljYXRpb24gdmlldy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tbGF1bmNoLW5ldy1pbnN0YW5jZSIsCiAgIm5hbWUiOiAiTGF1bmNoIG5ldyBpbnN0YW5jZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5sYXVuY2gtbmV3LWluc3RhbmNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2VAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMzUKfQ=="}}}
 , {"uuid": "window-list@gnome-shell-extensions.gcampax.github.com", "name": "Window List", "pname": "window-list", "description": "Display a window list at the bottom of the screen.\nThis extension is part of Classic Mode and is officially supported by GNOME. Please do not report bugs using the form below, use GNOME's GitLab instance instead.", "link": "https://extensions.gnome.org/extension/602/window-list/", "shell_version_map": {"38": {"version": "34", "sha256": "06jww5sv3a32plbvnl1xch10y19q807dx6zn6z5gwpvq8n0nvnx3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgYSB3aW5kb3cgbGlzdCBhdCB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uXG5UaGlzIGV4dGVuc2lvbiBpcyBwYXJ0IG9mIENsYXNzaWMgTW9kZSBhbmQgaXMgb2ZmaWNpYWxseSBzdXBwb3J0ZWQgYnkgR05PTUUuIFBsZWFzZSBkbyBub3QgcmVwb3J0IGJ1Z3MgdXNpbmcgdGhlIGZvcm0gYmVsb3csIHVzZSBHTk9NRSdzIEdpdExhYiBpbnN0YW5jZSBpbnN0ZWFkLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3ctbGlzdCIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIldpbmRvdyBMaXN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndpbmRvdy1saXN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid2luZG93LWxpc3RAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMzQKfQ=="}, "40": {"version": "41", "sha256": "16vf0b3wqr5s6fqxqlz3ly28nkvsv3ygvfk1sqxgrpqnw823x8bl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgYSB3aW5kb3cgbGlzdCBhdCB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uXG5UaGlzIGV4dGVuc2lvbiBpcyBwYXJ0IG9mIENsYXNzaWMgTW9kZSBhbmQgaXMgb2ZmaWNpYWxseSBzdXBwb3J0ZWQgYnkgR05PTUUuIFBsZWFzZSBkbyBub3QgcmVwb3J0IGJ1Z3MgdXNpbmcgdGhlIGZvcm0gYmVsb3csIHVzZSBHTk9NRSdzIEdpdExhYiBpbnN0YW5jZSBpbnN0ZWFkLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3ctbGlzdCIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi13aW5kb3ctbGlzdCIsCiAgIm5hbWUiOiAiV2luZG93IExpc3QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2luZG93LWxpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid2luZG93LWxpc3RAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDEKfQ=="}, "41": {"version": "42", "sha256": "1jhgnzlrpnbhqx4rkr9nf7yrwdbc9h6n46aindfpp7kdgv2spymi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgYSB3aW5kb3cgbGlzdCBhdCB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uXG5UaGlzIGV4dGVuc2lvbiBpcyBwYXJ0IG9mIENsYXNzaWMgTW9kZSBhbmQgaXMgb2ZmaWNpYWxseSBzdXBwb3J0ZWQgYnkgR05PTUUuIFBsZWFzZSBkbyBub3QgcmVwb3J0IGJ1Z3MgdXNpbmcgdGhlIGZvcm0gYmVsb3csIHVzZSBHTk9NRSdzIEdpdExhYiBpbnN0YW5jZSBpbnN0ZWFkLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3ctbGlzdCIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi13aW5kb3ctbGlzdCIsCiAgIm5hbWUiOiAiV2luZG93IExpc3QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2luZG93LWxpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid2luZG93LWxpc3RAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDIKfQ=="}, "42": {"version": "46", "sha256": "12h8601f1hl4cfr3gh9pykibb9lh7l0v01s80cjz0lc72c64j9qz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgYSB3aW5kb3cgbGlzdCBhdCB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uXG5UaGlzIGV4dGVuc2lvbiBpcyBwYXJ0IG9mIENsYXNzaWMgTW9kZSBhbmQgaXMgb2ZmaWNpYWxseSBzdXBwb3J0ZWQgYnkgR05PTUUuIFBsZWFzZSBkbyBub3QgcmVwb3J0IGJ1Z3MgdXNpbmcgdGhlIGZvcm0gYmVsb3csIHVzZSBHTk9NRSdzIEdpdExhYiBpbnN0YW5jZSBpbnN0ZWFkLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3ctbGlzdCIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi13aW5kb3ctbGlzdCIsCiAgIm5hbWUiOiAiV2luZG93IExpc3QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2luZG93LWxpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid2luZG93LWxpc3RAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDYKfQ=="}, "43": {"version": "47", "sha256": "1nzdl0zb8i7wipsnnrixkpj6rrsv3vz4c1snqspb23h494232wmz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgYSB3aW5kb3cgbGlzdCBhdCB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uXG5UaGlzIGV4dGVuc2lvbiBpcyBwYXJ0IG9mIENsYXNzaWMgTW9kZSBhbmQgaXMgb2ZmaWNpYWxseSBzdXBwb3J0ZWQgYnkgR05PTUUuIFBsZWFzZSBkbyBub3QgcmVwb3J0IGJ1Z3MgdXNpbmcgdGhlIGZvcm0gYmVsb3csIHVzZSBHTk9NRSdzIEdpdExhYiBpbnN0YW5jZSBpbnN0ZWFkLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3ctbGlzdCIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi13aW5kb3ctbGlzdCIsCiAgIm5hbWUiOiAiV2luZG93IExpc3QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2luZG93LWxpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid2luZG93LWxpc3RAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDcKfQ=="}}}
 , {"uuid": "MultiClock@mibus.org", "name": "MultiClock", "pname": "multiclock", "description": "A clock for showing a second timezone in the panel.", "link": "https://extensions.gnome.org/extension/605/multiclock/", "shell_version_map": {"40": {"version": "8", "sha256": "1pp1cnmpix668mrywpv6mkyb45lw7f6cwibjl6bc7cgb01hkzd53", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgY2xvY2sgZm9yIHNob3dpbmcgYSBzZWNvbmQgdGltZXpvbmUgaW4gdGhlIHBhbmVsLiIsCiAgIm5hbWUiOiAiTXVsdGlDbG9jayIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5taWJ1c011bHRpQ2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9taWJ1cy9NdWx0aUNsb2NrIiwKICAidXVpZCI6ICJNdWx0aUNsb2NrQG1pYnVzLm9yZyIsCiAgInZlcnNpb24iOiA4Cn0="}}}
@@ -60,7 +60,7 @@
 , {"uuid": "openweather-extension@jenslody.de", "name": "OpenWeather", "pname": "openweather", "description": "Display weather information for any location on Earth in the GNOME Shell\n\nIf you get an ERROR after update:\n- Restart the GNOME shell (log out)\n- or Reboot completely", "link": "https://extensions.gnome.org/extension/750/openweather/", "shell_version_map": {"38": {"version": "105", "sha256": "197a7gr16x40kfq02zv1csc84kbah2z1183cs5qj4a4czgw6nmh3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgd2VhdGhlciBpbmZvcm1hdGlvbiBmb3IgYW55IGxvY2F0aW9uIG9uIEVhcnRoIGluIHRoZSBHTk9NRSBTaGVsbFxuXG5JZiB5b3UgZ2V0IGFuIEVSUk9SIGFmdGVyIHVwZGF0ZTpcbi0gUmVzdGFydCB0aGUgR05PTUUgc2hlbGwgKGxvZyBvdXQpXG4tIG9yIFJlYm9vdCBjb21wbGV0ZWx5IiwKICAibG9jYWxlZGlyIjogIi91c3IvbG9jYWwvc2hhcmUvbG9jYWxlIiwKICAibmFtZSI6ICJPcGVuV2VhdGhlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3NrcmV3YmFsbC9vcGVud2VhdGhlciIsCiAgInV1aWQiOiAib3BlbndlYXRoZXItZXh0ZW5zaW9uQGplbnNsb2R5LmRlIiwKICAidmVyc2lvbiI6IDEwNQp9"}, "40": {"version": "114", "sha256": "01w84n4sg4knlnbbzzz3xf4f5ap4jabnzp21xdk3krkjvaabl7id", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgd2VhdGhlciBpbmZvcm1hdGlvbiBmb3IgYW55IGxvY2F0aW9uIG9uIEVhcnRoIGluIHRoZSBHTk9NRSBTaGVsbFxuXG5JZiB5b3UgZ2V0IGFuIEVSUk9SIGFmdGVyIHVwZGF0ZTpcbi0gUmVzdGFydCB0aGUgR05PTUUgc2hlbGwgKGxvZyBvdXQpXG4tIG9yIFJlYm9vdCBjb21wbGV0ZWx5IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW9wZW53ZWF0aGVyIiwKICAibmFtZSI6ICJPcGVuV2VhdGhlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5vcGVud2VhdGhlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3NrcmV3YmFsbC9vcGVud2VhdGhlciIsCiAgInV1aWQiOiAib3BlbndlYXRoZXItZXh0ZW5zaW9uQGplbnNsb2R5LmRlIiwKICAidmVyc2lvbiI6IDExNAp9"}, "41": {"version": "114", "sha256": "01w84n4sg4knlnbbzzz3xf4f5ap4jabnzp21xdk3krkjvaabl7id", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgd2VhdGhlciBpbmZvcm1hdGlvbiBmb3IgYW55IGxvY2F0aW9uIG9uIEVhcnRoIGluIHRoZSBHTk9NRSBTaGVsbFxuXG5JZiB5b3UgZ2V0IGFuIEVSUk9SIGFmdGVyIHVwZGF0ZTpcbi0gUmVzdGFydCB0aGUgR05PTUUgc2hlbGwgKGxvZyBvdXQpXG4tIG9yIFJlYm9vdCBjb21wbGV0ZWx5IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW9wZW53ZWF0aGVyIiwKICAibmFtZSI6ICJPcGVuV2VhdGhlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5vcGVud2VhdGhlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3NrcmV3YmFsbC9vcGVud2VhdGhlciIsCiAgInV1aWQiOiAib3BlbndlYXRoZXItZXh0ZW5zaW9uQGplbnNsb2R5LmRlIiwKICAidmVyc2lvbiI6IDExNAp9"}, "42": {"version": "118", "sha256": "0c39iq30sb6y1z6c0n8n2qsj8ww7ww9pnaqg900f0pv06nzfmjpz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgd2VhdGhlciBpbmZvcm1hdGlvbiBmb3IgYW55IGxvY2F0aW9uIG9uIEVhcnRoIGluIHRoZSBHTk9NRSBTaGVsbFxuXG5JZiB5b3UgZ2V0IGFuIEVSUk9SIGFmdGVyIHVwZGF0ZTpcbi0gUmVzdGFydCB0aGUgR05PTUUgc2hlbGwgKGxvZyBvdXQpXG4tIG9yIFJlYm9vdCBjb21wbGV0ZWx5IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW9wZW53ZWF0aGVyIiwKICAibmFtZSI6ICJPcGVuV2VhdGhlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5vcGVud2VhdGhlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9za3Jld2JhbGwvb3BlbndlYXRoZXIiLAogICJ1dWlkIjogIm9wZW53ZWF0aGVyLWV4dGVuc2lvbkBqZW5zbG9keS5kZSIsCiAgInZlcnNpb24iOiAxMTgKfQ=="}, "43": {"version": "119", "sha256": "0xk3r149w2qicbvi3ljxw8av44si004fn4qifdynyqfbfr72hi0n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgd2VhdGhlciBpbmZvcm1hdGlvbiBmb3IgYW55IGxvY2F0aW9uIG9uIEVhcnRoIGluIHRoZSBHTk9NRSBTaGVsbFxuXG5JZiB5b3UgZ2V0IGFuIEVSUk9SIGFmdGVyIHVwZGF0ZTpcbi0gUmVzdGFydCB0aGUgR05PTUUgc2hlbGwgKGxvZyBvdXQpXG4tIG9yIFJlYm9vdCBjb21wbGV0ZWx5IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW9wZW53ZWF0aGVyIiwKICAibmFtZSI6ICJPcGVuV2VhdGhlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5vcGVud2VhdGhlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9za3Jld2JhbGwvb3BlbndlYXRoZXIiLAogICJ1dWlkIjogIm9wZW53ZWF0aGVyLWV4dGVuc2lvbkBqZW5zbG9keS5kZSIsCiAgInZlcnNpb24iOiAxMTkKfQ=="}}}
 , {"uuid": "audio-output-switcher@anduchs", "name": "Audio Output Switcher", "pname": "audio-output-switcher", "description": "Adds a switch for choosing audio output to the system menu.", "link": "https://extensions.gnome.org/extension/751/audio-output-switcher/", "shell_version_map": {"38": {"version": "19", "sha256": "02z1smlc0k308sr462l9pwf2gsldqdzjalbc364i4b7286qyakxc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBzd2l0Y2ggZm9yIGNob29zaW5nIGF1ZGlvIG91dHB1dCB0byB0aGUgc3lzdGVtIG1lbnUuIiwKICAibmFtZSI6ICJBdWRpbyBPdXRwdXQgU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHA6Ly9naXRodWIuY29tL2FkYXhpL2F1ZGlvLW91dHB1dC1zd2l0Y2hlciIsCiAgInV1aWQiOiAiYXVkaW8tb3V0cHV0LXN3aXRjaGVyQGFuZHVjaHMiLAogICJ2ZXJzaW9uIjogMTkKfQ=="}, "40": {"version": "19", "sha256": "02z1smlc0k308sr462l9pwf2gsldqdzjalbc364i4b7286qyakxc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBzd2l0Y2ggZm9yIGNob29zaW5nIGF1ZGlvIG91dHB1dCB0byB0aGUgc3lzdGVtIG1lbnUuIiwKICAibmFtZSI6ICJBdWRpbyBPdXRwdXQgU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHA6Ly9naXRodWIuY29tL2FkYXhpL2F1ZGlvLW91dHB1dC1zd2l0Y2hlciIsCiAgInV1aWQiOiAiYXVkaW8tb3V0cHV0LXN3aXRjaGVyQGFuZHVjaHMiLAogICJ2ZXJzaW9uIjogMTkKfQ=="}, "41": {"version": "19", "sha256": "02z1smlc0k308sr462l9pwf2gsldqdzjalbc364i4b7286qyakxc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBzd2l0Y2ggZm9yIGNob29zaW5nIGF1ZGlvIG91dHB1dCB0byB0aGUgc3lzdGVtIG1lbnUuIiwKICAibmFtZSI6ICJBdWRpbyBPdXRwdXQgU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHA6Ly9naXRodWIuY29tL2FkYXhpL2F1ZGlvLW91dHB1dC1zd2l0Y2hlciIsCiAgInV1aWQiOiAiYXVkaW8tb3V0cHV0LXN3aXRjaGVyQGFuZHVjaHMiLAogICJ2ZXJzaW9uIjogMTkKfQ=="}, "42": {"version": "19", "sha256": "02z1smlc0k308sr462l9pwf2gsldqdzjalbc364i4b7286qyakxc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBzd2l0Y2ggZm9yIGNob29zaW5nIGF1ZGlvIG91dHB1dCB0byB0aGUgc3lzdGVtIG1lbnUuIiwKICAibmFtZSI6ICJBdWRpbyBPdXRwdXQgU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHA6Ly9naXRodWIuY29tL2FkYXhpL2F1ZGlvLW91dHB1dC1zd2l0Y2hlciIsCiAgInV1aWQiOiAiYXVkaW8tb3V0cHV0LXN3aXRjaGVyQGFuZHVjaHMiLAogICJ2ZXJzaW9uIjogMTkKfQ=="}}}
 , {"uuid": "hibernate-status@dromi", "name": "Hibernate Status Button", "pname": "hibernate-status-button", "description": "Adds a Hibernate button in Status menu. Using Alt modifier, you can also select Hybrid Sleep instead.", "link": "https://extensions.gnome.org/extension/755/hibernate-status-button/", "shell_version_map": {"38": {"version": "27", "sha256": "0yqzg2nz040vsv0ilwkjkza03qxns18gq4055gq0c3k051jy6d4v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBIaWJlcm5hdGUgYnV0dG9uIGluIFN0YXR1cyBtZW51LiBVc2luZyBBbHQgbW9kaWZpZXIsIHlvdSBjYW4gYWxzbyBzZWxlY3QgSHlicmlkIFNsZWVwIGluc3RlYWQuIiwKICAibmFtZSI6ICJIaWJlcm5hdGUgU3RhdHVzIEJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FyZWxhbmdlL2dub21lLXNoZWxsLWV4dGVuc2lvbi1oaWJlcm5hdGUtc3RhdHVzIiwKICAidXVpZCI6ICJoaWJlcm5hdGUtc3RhdHVzQGRyb21pIiwKICAidmVyc2lvbiI6IDI3Cn0="}, "40": {"version": "33", "sha256": "181j95bhmrkvxvpam8ysrxzsaznfkgnn92xxfkg86lavvyl1alv5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBIaWJlcm5hdGUgYnV0dG9uIGluIFN0YXR1cyBtZW51LiBVc2luZyBBbHQgbW9kaWZpZXIsIHlvdSBjYW4gYWxzbyBzZWxlY3QgSHlicmlkIFNsZWVwIGluc3RlYWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaGliZXJuYXRlLXN0YXR1cy1idXR0b24iLAogICJuYW1lIjogIkhpYmVybmF0ZSBTdGF0dXMgQnV0dG9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXJlbGFuZ2UvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWhpYmVybmF0ZS1zdGF0dXMiLAogICJ1dWlkIjogImhpYmVybmF0ZS1zdGF0dXNAZHJvbWkiLAogICJ2ZXJzaW9uIjogMzMKfQ=="}, "41": {"version": "33", "sha256": "181j95bhmrkvxvpam8ysrxzsaznfkgnn92xxfkg86lavvyl1alv5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBIaWJlcm5hdGUgYnV0dG9uIGluIFN0YXR1cyBtZW51LiBVc2luZyBBbHQgbW9kaWZpZXIsIHlvdSBjYW4gYWxzbyBzZWxlY3QgSHlicmlkIFNsZWVwIGluc3RlYWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaGliZXJuYXRlLXN0YXR1cy1idXR0b24iLAogICJuYW1lIjogIkhpYmVybmF0ZSBTdGF0dXMgQnV0dG9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXJlbGFuZ2UvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWhpYmVybmF0ZS1zdGF0dXMiLAogICJ1dWlkIjogImhpYmVybmF0ZS1zdGF0dXNAZHJvbWkiLAogICJ2ZXJzaW9uIjogMzMKfQ=="}, "42": {"version": "33", "sha256": "181j95bhmrkvxvpam8ysrxzsaznfkgnn92xxfkg86lavvyl1alv5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBIaWJlcm5hdGUgYnV0dG9uIGluIFN0YXR1cyBtZW51LiBVc2luZyBBbHQgbW9kaWZpZXIsIHlvdSBjYW4gYWxzbyBzZWxlY3QgSHlicmlkIFNsZWVwIGluc3RlYWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaGliZXJuYXRlLXN0YXR1cy1idXR0b24iLAogICJuYW1lIjogIkhpYmVybmF0ZSBTdGF0dXMgQnV0dG9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXJlbGFuZ2UvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWhpYmVybmF0ZS1zdGF0dXMiLAogICJ1dWlkIjogImhpYmVybmF0ZS1zdGF0dXNAZHJvbWkiLAogICJ2ZXJzaW9uIjogMzMKfQ=="}}}
-, {"uuid": "minimizeall@scharlessantos.org", "name": "Minimize All", "pname": "minimize-all", "description": "Minimize all windows in current workspace", "link": "https://extensions.gnome.org/extension/760/minimize-all/", "shell_version_map": {"38": {"version": "20", "sha256": "15v6h4wcznrylip57spjdkz0jk6y7hcp47607pj0yx5dmxjaws86", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplIGFsbCB3aW5kb3dzIGluIGN1cnJlbnQgd29ya3NwYWNlIiwKICAibmFtZSI6ICJNaW5pbWl6ZSBBbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vc2NoYXJsZXNzYW50b3MvbWluaW1pemVhbGwiLAogICJ1dWlkIjogIm1pbmltaXplYWxsQHNjaGFybGVzc2FudG9zLm9yZyIsCiAgInZlcnNpb24iOiAyMAp9"}, "40": {"version": "20", "sha256": "15v6h4wcznrylip57spjdkz0jk6y7hcp47607pj0yx5dmxjaws86", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplIGFsbCB3aW5kb3dzIGluIGN1cnJlbnQgd29ya3NwYWNlIiwKICAibmFtZSI6ICJNaW5pbWl6ZSBBbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vc2NoYXJsZXNzYW50b3MvbWluaW1pemVhbGwiLAogICJ1dWlkIjogIm1pbmltaXplYWxsQHNjaGFybGVzc2FudG9zLm9yZyIsCiAgInZlcnNpb24iOiAyMAp9"}}}
+, {"uuid": "minimizeall@scharlessantos.org", "name": "Minimize All", "pname": "minimize-all", "description": "Minimize all windows in current workspace", "link": "https://extensions.gnome.org/extension/760/minimize-all/", "shell_version_map": {"38": {"version": "22", "sha256": "0z5s46l4gjkxicszyrhqslq3q5d3qbrxihxwnmxkcws7zarz2z5r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplIGFsbCB3aW5kb3dzIGluIGN1cnJlbnQgd29ya3NwYWNlIiwKICAibmFtZSI6ICJNaW5pbWl6ZSBBbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vc2NoYXJsZXNzYW50b3MvbWluaW1pemVhbGwiLAogICJ1dWlkIjogIm1pbmltaXplYWxsQHNjaGFybGVzc2FudG9zLm9yZyIsCiAgInZlcnNpb24iOiAyMgp9"}, "40": {"version": "22", "sha256": "0z5s46l4gjkxicszyrhqslq3q5d3qbrxihxwnmxkcws7zarz2z5r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplIGFsbCB3aW5kb3dzIGluIGN1cnJlbnQgd29ya3NwYWNlIiwKICAibmFtZSI6ICJNaW5pbWl6ZSBBbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vc2NoYXJsZXNzYW50b3MvbWluaW1pemVhbGwiLAogICJ1dWlkIjogIm1pbmltaXplYWxsQHNjaGFybGVzc2FudG9zLm9yZyIsCiAgInZlcnNpb24iOiAyMgp9"}, "41": {"version": "22", "sha256": "0z5s46l4gjkxicszyrhqslq3q5d3qbrxihxwnmxkcws7zarz2z5r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplIGFsbCB3aW5kb3dzIGluIGN1cnJlbnQgd29ya3NwYWNlIiwKICAibmFtZSI6ICJNaW5pbWl6ZSBBbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vc2NoYXJsZXNzYW50b3MvbWluaW1pemVhbGwiLAogICJ1dWlkIjogIm1pbmltaXplYWxsQHNjaGFybGVzc2FudG9zLm9yZyIsCiAgInZlcnNpb24iOiAyMgp9"}, "42": {"version": "22", "sha256": "0z5s46l4gjkxicszyrhqslq3q5d3qbrxihxwnmxkcws7zarz2z5r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplIGFsbCB3aW5kb3dzIGluIGN1cnJlbnQgd29ya3NwYWNlIiwKICAibmFtZSI6ICJNaW5pbWl6ZSBBbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vc2NoYXJsZXNzYW50b3MvbWluaW1pemVhbGwiLAogICJ1dWlkIjogIm1pbmltaXplYWxsQHNjaGFybGVzc2FudG9zLm9yZyIsCiAgInZlcnNpb24iOiAyMgp9"}, "43": {"version": "22", "sha256": "0z5s46l4gjkxicszyrhqslq3q5d3qbrxihxwnmxkcws7zarz2z5r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplIGFsbCB3aW5kb3dzIGluIGN1cnJlbnQgd29ya3NwYWNlIiwKICAibmFtZSI6ICJNaW5pbWl6ZSBBbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vc2NoYXJsZXNzYW50b3MvbWluaW1pemVhbGwiLAogICJ1dWlkIjogIm1pbmltaXplYWxsQHNjaGFybGVzc2FudG9zLm9yZyIsCiAgInZlcnNpb24iOiAyMgp9"}}}
 , {"uuid": "fq@megh", "name": "Force Quit", "pname": "force-quit", "description": "Adds a force quit button.\nOn accidental click, right click or press [ESC] to undo.\nCustomize position by tweaking line 50 of extension.js", "link": "https://extensions.gnome.org/extension/770/force-quit/", "shell_version_map": {"38": {"version": "18", "sha256": "0xanpg1j01c8sngadxqavbi28187gnpzg32fwwdd091b1ijd235w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBmb3JjZSBxdWl0IGJ1dHRvbi5cbk9uIGFjY2lkZW50YWwgY2xpY2ssIHJpZ2h0IGNsaWNrIG9yIHByZXNzIFtFU0NdIHRvIHVuZG8uXG5DdXN0b21pemUgcG9zaXRpb24gYnkgdHdlYWtpbmcgbGluZSA1MCBvZiBleHRlbnNpb24uanMiLAogICJuYW1lIjogIkZvcmNlIFF1aXQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWVnaHBya2gvZm9yY2UtcXVpdC8iLAogICJ1dWlkIjogImZxQG1lZ2giLAogICJ2ZXJzaW9uIjogMTgKfQ=="}, "40": {"version": "26", "sha256": "0sg0jsyzqabc9qcxp93vj0w52nhca2mlrr8faw9qcrg7a8qpi11v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBmb3JjZSBxdWl0IGJ1dHRvbi5cbk9uIGFjY2lkZW50YWwgY2xpY2ssIHJpZ2h0IGNsaWNrIG9yIHByZXNzIFtFU0NdIHRvIHVuZG8uXG5DdXN0b21pemUgcG9zaXRpb24gYnkgdHdlYWtpbmcgbGluZSA1MCBvZiBleHRlbnNpb24uanMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmcUBtZWdoIiwKICAibmFtZSI6ICJGb3JjZSBRdWl0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWVnaHBya2gvZm9yY2UtcXVpdC8iLAogICJ1dWlkIjogImZxQG1lZ2giLAogICJ2ZXJzaW9uIjogMjYKfQ=="}, "41": {"version": "26", "sha256": "0sg0jsyzqabc9qcxp93vj0w52nhca2mlrr8faw9qcrg7a8qpi11v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBmb3JjZSBxdWl0IGJ1dHRvbi5cbk9uIGFjY2lkZW50YWwgY2xpY2ssIHJpZ2h0IGNsaWNrIG9yIHByZXNzIFtFU0NdIHRvIHVuZG8uXG5DdXN0b21pemUgcG9zaXRpb24gYnkgdHdlYWtpbmcgbGluZSA1MCBvZiBleHRlbnNpb24uanMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmcUBtZWdoIiwKICAibmFtZSI6ICJGb3JjZSBRdWl0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWVnaHBya2gvZm9yY2UtcXVpdC8iLAogICJ1dWlkIjogImZxQG1lZ2giLAogICJ2ZXJzaW9uIjogMjYKfQ=="}, "42": {"version": "26", "sha256": "0sg0jsyzqabc9qcxp93vj0w52nhca2mlrr8faw9qcrg7a8qpi11v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBmb3JjZSBxdWl0IGJ1dHRvbi5cbk9uIGFjY2lkZW50YWwgY2xpY2ssIHJpZ2h0IGNsaWNrIG9yIHByZXNzIFtFU0NdIHRvIHVuZG8uXG5DdXN0b21pemUgcG9zaXRpb24gYnkgdHdlYWtpbmcgbGluZSA1MCBvZiBleHRlbnNpb24uanMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmcUBtZWdoIiwKICAibmFtZSI6ICJGb3JjZSBRdWl0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWVnaHBya2gvZm9yY2UtcXVpdC8iLAogICJ1dWlkIjogImZxQG1lZ2giLAogICJ2ZXJzaW9uIjogMjYKfQ=="}}}
 , {"uuid": "ProxySwitcher@flannaghan.com", "name": "Proxy Switcher", "pname": "proxy-switcher", "description": "Switches between the system proxy settings profiles defined in Network Settings.", "link": "https://extensions.gnome.org/extension/771/proxy-switcher/", "shell_version_map": {"38": {"version": "17", "sha256": "0ap55mxnhwzxzv95jfc4l3bz9v6z04yn53yf233vbjsdpx55vh38", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaGVzIGJldHdlZW4gdGhlIHN5c3RlbSBwcm94eSBzZXR0aW5ncyBwcm9maWxlcyBkZWZpbmVkIGluIE5ldHdvcmsgU2V0dGluZ3MuIiwKICAibmFtZSI6ICJQcm94eSBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RvbWZsYW5uYWdoYW4vcHJveHktc3dpdGNoZXIiLAogICJ1dWlkIjogIlByb3h5U3dpdGNoZXJAZmxhbm5hZ2hhbi5jb20iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "40": {"version": "17", "sha256": "0ap55mxnhwzxzv95jfc4l3bz9v6z04yn53yf233vbjsdpx55vh38", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaGVzIGJldHdlZW4gdGhlIHN5c3RlbSBwcm94eSBzZXR0aW5ncyBwcm9maWxlcyBkZWZpbmVkIGluIE5ldHdvcmsgU2V0dGluZ3MuIiwKICAibmFtZSI6ICJQcm94eSBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RvbWZsYW5uYWdoYW4vcHJveHktc3dpdGNoZXIiLAogICJ1dWlkIjogIlByb3h5U3dpdGNoZXJAZmxhbm5hZ2hhbi5jb20iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "41": {"version": "17", "sha256": "0ap55mxnhwzxzv95jfc4l3bz9v6z04yn53yf233vbjsdpx55vh38", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaGVzIGJldHdlZW4gdGhlIHN5c3RlbSBwcm94eSBzZXR0aW5ncyBwcm9maWxlcyBkZWZpbmVkIGluIE5ldHdvcmsgU2V0dGluZ3MuIiwKICAibmFtZSI6ICJQcm94eSBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RvbWZsYW5uYWdoYW4vcHJveHktc3dpdGNoZXIiLAogICJ1dWlkIjogIlByb3h5U3dpdGNoZXJAZmxhbm5hZ2hhbi5jb20iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "42": {"version": "17", "sha256": "0ap55mxnhwzxzv95jfc4l3bz9v6z04yn53yf233vbjsdpx55vh38", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaGVzIGJldHdlZW4gdGhlIHN5c3RlbSBwcm94eSBzZXR0aW5ncyBwcm9maWxlcyBkZWZpbmVkIGluIE5ldHdvcmsgU2V0dGluZ3MuIiwKICAibmFtZSI6ICJQcm94eSBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RvbWZsYW5uYWdoYW4vcHJveHktc3dpdGNoZXIiLAogICJ1dWlkIjogIlByb3h5U3dpdGNoZXJAZmxhbm5hZ2hhbi5jb20iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}}}
 , {"uuid": "clipboard-indicator@tudmotu.com", "name": "Clipboard Indicator", "pname": "clipboard-indicator", "description": "Clipboard Manager extension for Gnome-Shell - Adds a clipboard indicator to the top panel, and caches clipboard history.\n\nSee contributors here:\nhttps://github.com/Tudmotu/gnome-shell-extension-clipboard-indicator/graphs/contributors", "link": "https://extensions.gnome.org/extension/779/clipboard-indicator/", "shell_version_map": {"38": {"version": "37", "sha256": "1a9b5h4i17m3lmgs6qpmr30v2hjffsiad9rx0lgwcv7915a68pxp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsaXBib2FyZCBNYW5hZ2VyIGV4dGVuc2lvbiBmb3IgR25vbWUtU2hlbGwgLSBBZGRzIGEgY2xpcGJvYXJkIGluZGljYXRvciB0byB0aGUgdG9wIHBhbmVsLCBhbmQgY2FjaGVzIGNsaXBib2FyZCBoaXN0b3J5LlxuXG5TZWUgY29udHJpYnV0b3JzIGhlcmU6XG5odHRwczovL2dpdGh1Yi5jb20vVHVkbW90dS9nbm9tZS1zaGVsbC1leHRlbnNpb24tY2xpcGJvYXJkLWluZGljYXRvci9ncmFwaHMvY29udHJpYnV0b3JzIiwKICAibmFtZSI6ICJDbGlwYm9hcmQgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vVHVkbW90dS9nbm9tZS1zaGVsbC1leHRlbnNpb24tY2xpcGJvYXJkLWluZGljYXRvciIsCiAgInV1aWQiOiAiY2xpcGJvYXJkLWluZGljYXRvckB0dWRtb3R1LmNvbSIsCiAgInZlcnNpb24iOiAzNwp9"}, "40": {"version": "38", "sha256": "1vd51yczzs2yhfql8n0hqnphfw05nkqkqrwnz4wcp1xqslrryi6g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsaXBib2FyZCBNYW5hZ2VyIGV4dGVuc2lvbiBmb3IgR25vbWUtU2hlbGwgLSBBZGRzIGEgY2xpcGJvYXJkIGluZGljYXRvciB0byB0aGUgdG9wIHBhbmVsLCBhbmQgY2FjaGVzIGNsaXBib2FyZCBoaXN0b3J5LlxuXG5TZWUgY29udHJpYnV0b3JzIGhlcmU6XG5odHRwczovL2dpdGh1Yi5jb20vVHVkbW90dS9nbm9tZS1zaGVsbC1leHRlbnNpb24tY2xpcGJvYXJkLWluZGljYXRvci9ncmFwaHMvY29udHJpYnV0b3JzIiwKICAibmFtZSI6ICJDbGlwYm9hcmQgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1R1ZG1vdHUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWNsaXBib2FyZC1pbmRpY2F0b3IiLAogICJ1dWlkIjogImNsaXBib2FyZC1pbmRpY2F0b3JAdHVkbW90dS5jb20iLAogICJ2ZXJzaW9uIjogMzgKfQ=="}, "42": {"version": "42", "sha256": "1sgssg61z5dbqdcwychaxv0sv9g8392qa271iyn75p78l8lg03x9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsaXBib2FyZCBNYW5hZ2VyIGV4dGVuc2lvbiBmb3IgR25vbWUtU2hlbGwgLSBBZGRzIGEgY2xpcGJvYXJkIGluZGljYXRvciB0byB0aGUgdG9wIHBhbmVsLCBhbmQgY2FjaGVzIGNsaXBib2FyZCBoaXN0b3J5LlxuXG5TZWUgY29udHJpYnV0b3JzIGhlcmU6XG5odHRwczovL2dpdGh1Yi5jb20vVHVkbW90dS9nbm9tZS1zaGVsbC1leHRlbnNpb24tY2xpcGJvYXJkLWluZGljYXRvci9ncmFwaHMvY29udHJpYnV0b3JzIiwKICAibmFtZSI6ICJDbGlwYm9hcmQgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1R1ZG1vdHUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWNsaXBib2FyZC1pbmRpY2F0b3IiLAogICJ1dWlkIjogImNsaXBib2FyZC1pbmRpY2F0b3JAdHVkbW90dS5jb20iLAogICJ2ZXJzaW9uIjogNDIKfQ=="}}}
@@ -107,7 +107,7 @@
 , {"uuid": "icinga-checker@sosulski.net", "name": "Icinga checker", "pname": "icinga-checker", "description": "Icinga/Nagios checker", "link": "https://extensions.gnome.org/extension/1029/icinga-checker/", "shell_version_map": {"38": {"version": "14", "sha256": "1avd9ggqa6zv5r61kj49cfal223iz68yijyzzr6p483031xxpc4r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkljaW5nYS9OYWdpb3MgY2hlY2tlciIsCiAgImV4dGVuc2lvbi1pZCI6ICJpY2luZ2EtY2hlY2tlciIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkljaW5nYSBjaGVja2VyIiwKICAib3JpZ2luYWwtYXV0aG9yIjogInBhd2VsQHNvc3Vsc2tpLm5ldCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5pY2luZ2EtY2hlY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJpY2luZ2EtY2hlY2tlckBzb3N1bHNraS5uZXQiLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "40": {"version": "14", "sha256": "1avd9ggqa6zv5r61kj49cfal223iz68yijyzzr6p483031xxpc4r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkljaW5nYS9OYWdpb3MgY2hlY2tlciIsCiAgImV4dGVuc2lvbi1pZCI6ICJpY2luZ2EtY2hlY2tlciIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkljaW5nYSBjaGVja2VyIiwKICAib3JpZ2luYWwtYXV0aG9yIjogInBhd2VsQHNvc3Vsc2tpLm5ldCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5pY2luZ2EtY2hlY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJpY2luZ2EtY2hlY2tlckBzb3N1bHNraS5uZXQiLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "41": {"version": "14", "sha256": "1avd9ggqa6zv5r61kj49cfal223iz68yijyzzr6p483031xxpc4r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkljaW5nYS9OYWdpb3MgY2hlY2tlciIsCiAgImV4dGVuc2lvbi1pZCI6ICJpY2luZ2EtY2hlY2tlciIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkljaW5nYSBjaGVja2VyIiwKICAib3JpZ2luYWwtYXV0aG9yIjogInBhd2VsQHNvc3Vsc2tpLm5ldCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5pY2luZ2EtY2hlY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJpY2luZ2EtY2hlY2tlckBzb3N1bHNraS5uZXQiLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "42": {"version": "14", "sha256": "1avd9ggqa6zv5r61kj49cfal223iz68yijyzzr6p483031xxpc4r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkljaW5nYS9OYWdpb3MgY2hlY2tlciIsCiAgImV4dGVuc2lvbi1pZCI6ICJpY2luZ2EtY2hlY2tlciIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkljaW5nYSBjaGVja2VyIiwKICAib3JpZ2luYWwtYXV0aG9yIjogInBhd2VsQHNvc3Vsc2tpLm5ldCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5pY2luZ2EtY2hlY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJpY2luZ2EtY2hlY2tlckBzb3N1bHNraS5uZXQiLAogICJ2ZXJzaW9uIjogMTQKfQ=="}}}
 , {"uuid": "taskwhisperer-extension@infinicode.de", "name": "TaskWhisperer", "pname": "taskwhisperer", "description": "Taskwhisperer is a extension for TaskWarrior Application https://taskwarrior.org. It is to display upcoming tasks and task details as well as to create and modify them.\n", "link": "https://extensions.gnome.org/extension/1039/taskwhisperer/", "shell_version_map": {"38": {"version": "20", "sha256": "067z3j2px4rz5yspfjx2s6p5j4l1svxllclahnf3zmv1nlbhzq8a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2t3aGlzcGVyZXIgaXMgYSBleHRlbnNpb24gZm9yIFRhc2tXYXJyaW9yIEFwcGxpY2F0aW9uIGh0dHBzOi8vdGFza3dhcnJpb3Iub3JnLiBJdCBpcyB0byBkaXNwbGF5IHVwY29taW5nIHRhc2tzIGFuZCB0YXNrIGRldGFpbHMgYXMgd2VsbCBhcyB0byBjcmVhdGUgYW5kIG1vZGlmeSB0aGVtLlxuIiwKICAibG9jYWxlZGlyIjogIi91c3IvbG9jYWwvc2hhcmUvbG9jYWxlIiwKICAibmFtZSI6ICJUYXNrV2hpc3BlcmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NpbmF0aWMvdGFza3doaXNwZXJlciIsCiAgInV1aWQiOiAidGFza3doaXNwZXJlci1leHRlbnNpb25AaW5maW5pY29kZS5kZSIsCiAgInZlcnNpb24iOiAyMAp9"}, "40": {"version": "23", "sha256": "1mcw358833mwsb09g3ycs1yjibg0dx0333cd0imz1mg0clngprm5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2t3aGlzcGVyZXIgaXMgYSBleHRlbnNpb24gZm9yIFRhc2tXYXJyaW9yIEFwcGxpY2F0aW9uIGh0dHBzOi8vdGFza3dhcnJpb3Iub3JnLiBJdCBpcyB0byBkaXNwbGF5IHVwY29taW5nIHRhc2tzIGFuZCB0YXNrIGRldGFpbHMgYXMgd2VsbCBhcyB0byBjcmVhdGUgYW5kIG1vZGlmeSB0aGVtLlxuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2t3aGlzcGVyZXIiLAogICJsb2NhbGVkaXIiOiAiL3Vzci9sb2NhbC9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlRhc2tXaGlzcGVyZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFza3doaXNwZXJlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NpbmF0aWMvdGFza3doaXNwZXJlciIsCiAgInV1aWQiOiAidGFza3doaXNwZXJlci1leHRlbnNpb25AaW5maW5pY29kZS5kZSIsCiAgInZlcnNpb24iOiAyMwp9"}, "41": {"version": "23", "sha256": "1mcw358833mwsb09g3ycs1yjibg0dx0333cd0imz1mg0clngprm5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2t3aGlzcGVyZXIgaXMgYSBleHRlbnNpb24gZm9yIFRhc2tXYXJyaW9yIEFwcGxpY2F0aW9uIGh0dHBzOi8vdGFza3dhcnJpb3Iub3JnLiBJdCBpcyB0byBkaXNwbGF5IHVwY29taW5nIHRhc2tzIGFuZCB0YXNrIGRldGFpbHMgYXMgd2VsbCBhcyB0byBjcmVhdGUgYW5kIG1vZGlmeSB0aGVtLlxuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2t3aGlzcGVyZXIiLAogICJsb2NhbGVkaXIiOiAiL3Vzci9sb2NhbC9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlRhc2tXaGlzcGVyZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFza3doaXNwZXJlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NpbmF0aWMvdGFza3doaXNwZXJlciIsCiAgInV1aWQiOiAidGFza3doaXNwZXJlci1leHRlbnNpb25AaW5maW5pY29kZS5kZSIsCiAgInZlcnNpb24iOiAyMwp9"}, "42": {"version": "23", "sha256": "1mcw358833mwsb09g3ycs1yjibg0dx0333cd0imz1mg0clngprm5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2t3aGlzcGVyZXIgaXMgYSBleHRlbnNpb24gZm9yIFRhc2tXYXJyaW9yIEFwcGxpY2F0aW9uIGh0dHBzOi8vdGFza3dhcnJpb3Iub3JnLiBJdCBpcyB0byBkaXNwbGF5IHVwY29taW5nIHRhc2tzIGFuZCB0YXNrIGRldGFpbHMgYXMgd2VsbCBhcyB0byBjcmVhdGUgYW5kIG1vZGlmeSB0aGVtLlxuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2t3aGlzcGVyZXIiLAogICJsb2NhbGVkaXIiOiAiL3Vzci9sb2NhbC9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlRhc2tXaGlzcGVyZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFza3doaXNwZXJlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NpbmF0aWMvdGFza3doaXNwZXJlciIsCiAgInV1aWQiOiAidGFza3doaXNwZXJlci1leHRlbnNpb25AaW5maW5pY29kZS5kZSIsCiAgInZlcnNpb24iOiAyMwp9"}}}
 , {"uuid": "randomwallpaper@iflow.space", "name": "Random Wallpaper", "pname": "random-wallpaper", "description": "Fetch a random wallpaper from an online source and set it as a desktop background. \nThe desktop background can be updated periodically or manually.\n\nFeatures:\nMany different online sources with filters:\n        - Unsplash (https://unsplash.com/)\n        - Wallhaven (https://wallhaven.cc/)\n        - Reddit (https://reddit.com)\n        - Basically any JSON API/File (see Examples on GitHub)\nHistory of previous images\nSet lock screen image\nAutomatic renewal (Auto-Fetching)", "link": "https://extensions.gnome.org/extension/1040/random-wallpaper/", "shell_version_map": {"38": {"version": "22", "sha256": "1mnc7k1816r0q8c95y36ryzl9cni6zms5xm587wmdmy4xi92i8ic", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZldGNoIGEgcmFuZG9tIHdhbGxwYXBlciBmcm9tIGFuIG9ubGluZSBzb3VyY2UgYW5kIHNldCBpdCBhcyBhIGRlc2t0b3AgYmFja2dyb3VuZC4gXG5UaGUgZGVza3RvcCBiYWNrZ3JvdW5kIGNhbiBiZSB1cGRhdGVkIHBlcmlvZGljYWxseSBvciBtYW51YWxseS5cblxuRmVhdHVyZXM6XG5NYW55IGRpZmZlcmVudCBvbmxpbmUgc291cmNlcyB3aXRoIGZpbHRlcnM6XG4gICAgICAgIC0gVW5zcGxhc2ggKGh0dHBzOi8vdW5zcGxhc2guY29tLylcbiAgICAgICAgLSBXYWxsaGF2ZW4gKGh0dHBzOi8vd2FsbGhhdmVuLmNjLylcbiAgICAgICAgLSBSZWRkaXQgKGh0dHBzOi8vcmVkZGl0LmNvbSlcbiAgICAgICAgLSBCYXNpY2FsbHkgYW55IEpTT04gQVBJL0ZpbGUgKHNlZSBFeGFtcGxlcyBvbiBHaXRIdWIpXG5IaXN0b3J5IG9mIHByZXZpb3VzIGltYWdlc1xuU2V0IGxvY2sgc2NyZWVuIGltYWdlXG5BdXRvbWF0aWMgcmVuZXdhbCAoQXV0by1GZXRjaGluZykiLAogICJuYW1lIjogIlJhbmRvbSBXYWxscGFwZXIiLAogICJzZW1hbnRpYy12ZXJzaW9uIjogIjIuNC41IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNwYWNlLmlmbG93LnJhbmRvbXdhbGxwYXBlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2lmbDB3L1JhbmRvbVdhbGxwYXBlckdub21lMyIsCiAgInV1aWQiOiAicmFuZG9td2FsbHBhcGVyQGlmbG93LnNwYWNlIiwKICAidmVyc2lvbiI6IDIyCn0="}, "40": {"version": "28", "sha256": "1j6hvpfqzf2js0hq23j1vyff3pfrwxxd8r2zxcsk2s7wk1vbqjg7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZldGNoIGEgcmFuZG9tIHdhbGxwYXBlciBmcm9tIGFuIG9ubGluZSBzb3VyY2UgYW5kIHNldCBpdCBhcyBhIGRlc2t0b3AgYmFja2dyb3VuZC4gXG5UaGUgZGVza3RvcCBiYWNrZ3JvdW5kIGNhbiBiZSB1cGRhdGVkIHBlcmlvZGljYWxseSBvciBtYW51YWxseS5cblxuRmVhdHVyZXM6XG5NYW55IGRpZmZlcmVudCBvbmxpbmUgc291cmNlcyB3aXRoIGZpbHRlcnM6XG4gICAgICAgIC0gVW5zcGxhc2ggKGh0dHBzOi8vdW5zcGxhc2guY29tLylcbiAgICAgICAgLSBXYWxsaGF2ZW4gKGh0dHBzOi8vd2FsbGhhdmVuLmNjLylcbiAgICAgICAgLSBSZWRkaXQgKGh0dHBzOi8vcmVkZGl0LmNvbSlcbiAgICAgICAgLSBCYXNpY2FsbHkgYW55IEpTT04gQVBJL0ZpbGUgKHNlZSBFeGFtcGxlcyBvbiBHaXRIdWIpXG5IaXN0b3J5IG9mIHByZXZpb3VzIGltYWdlc1xuU2V0IGxvY2sgc2NyZWVuIGltYWdlXG5BdXRvbWF0aWMgcmVuZXdhbCAoQXV0by1GZXRjaGluZykiLAogICJuYW1lIjogIlJhbmRvbSBXYWxscGFwZXIiLAogICJzZW1hbnRpYy12ZXJzaW9uIjogIjIuNy4xIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNwYWNlLmlmbG93LnJhbmRvbXdhbGxwYXBlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuMCIsCiAgICAiNDAuMSIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaWZsMHcvUmFuZG9tV2FsbHBhcGVyR25vbWUzIiwKICAidXVpZCI6ICJyYW5kb213YWxscGFwZXJAaWZsb3cuc3BhY2UiLAogICJ2ZXJzaW9uIjogMjgKfQ=="}, "41": {"version": "28", "sha256": "1j6hvpfqzf2js0hq23j1vyff3pfrwxxd8r2zxcsk2s7wk1vbqjg7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZldGNoIGEgcmFuZG9tIHdhbGxwYXBlciBmcm9tIGFuIG9ubGluZSBzb3VyY2UgYW5kIHNldCBpdCBhcyBhIGRlc2t0b3AgYmFja2dyb3VuZC4gXG5UaGUgZGVza3RvcCBiYWNrZ3JvdW5kIGNhbiBiZSB1cGRhdGVkIHBlcmlvZGljYWxseSBvciBtYW51YWxseS5cblxuRmVhdHVyZXM6XG5NYW55IGRpZmZlcmVudCBvbmxpbmUgc291cmNlcyB3aXRoIGZpbHRlcnM6XG4gICAgICAgIC0gVW5zcGxhc2ggKGh0dHBzOi8vdW5zcGxhc2guY29tLylcbiAgICAgICAgLSBXYWxsaGF2ZW4gKGh0dHBzOi8vd2FsbGhhdmVuLmNjLylcbiAgICAgICAgLSBSZWRkaXQgKGh0dHBzOi8vcmVkZGl0LmNvbSlcbiAgICAgICAgLSBCYXNpY2FsbHkgYW55IEpTT04gQVBJL0ZpbGUgKHNlZSBFeGFtcGxlcyBvbiBHaXRIdWIpXG5IaXN0b3J5IG9mIHByZXZpb3VzIGltYWdlc1xuU2V0IGxvY2sgc2NyZWVuIGltYWdlXG5BdXRvbWF0aWMgcmVuZXdhbCAoQXV0by1GZXRjaGluZykiLAogICJuYW1lIjogIlJhbmRvbSBXYWxscGFwZXIiLAogICJzZW1hbnRpYy12ZXJzaW9uIjogIjIuNy4xIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNwYWNlLmlmbG93LnJhbmRvbXdhbGxwYXBlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuMCIsCiAgICAiNDAuMSIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaWZsMHcvUmFuZG9tV2FsbHBhcGVyR25vbWUzIiwKICAidXVpZCI6ICJyYW5kb213YWxscGFwZXJAaWZsb3cuc3BhY2UiLAogICJ2ZXJzaW9uIjogMjgKfQ=="}}}
-, {"uuid": "gse-haguichi-indicator@ztefn.github.com", "name": "Haguichi Indicator", "pname": "haguichi-indicator", "description": "Lets you control Haguichi directly from the system status area in GNOME Shell.", "link": "https://extensions.gnome.org/extension/1045/haguichi-indicator/", "shell_version_map": {"38": {"version": "18", "sha256": "1vknvsrn92g0dq890pnrxsqq2kva5d6pzd7dx3q7ssgclqwfv81r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxldHMgeW91IGNvbnRyb2wgSGFndWljaGkgZGlyZWN0bHkgZnJvbSB0aGUgc3lzdGVtIHN0YXR1cyBhcmVhIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiSGFndWljaGkgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20venRlZm4vZ3NlLWhhZ3VpY2hpLWluZGljYXRvciIsCiAgInV1aWQiOiAiZ3NlLWhhZ3VpY2hpLWluZGljYXRvckB6dGVmbi5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE4Cn0="}, "40": {"version": "18", "sha256": "1vknvsrn92g0dq890pnrxsqq2kva5d6pzd7dx3q7ssgclqwfv81r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxldHMgeW91IGNvbnRyb2wgSGFndWljaGkgZGlyZWN0bHkgZnJvbSB0aGUgc3lzdGVtIHN0YXR1cyBhcmVhIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiSGFndWljaGkgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20venRlZm4vZ3NlLWhhZ3VpY2hpLWluZGljYXRvciIsCiAgInV1aWQiOiAiZ3NlLWhhZ3VpY2hpLWluZGljYXRvckB6dGVmbi5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE4Cn0="}, "41": {"version": "18", "sha256": "1vknvsrn92g0dq890pnrxsqq2kva5d6pzd7dx3q7ssgclqwfv81r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxldHMgeW91IGNvbnRyb2wgSGFndWljaGkgZGlyZWN0bHkgZnJvbSB0aGUgc3lzdGVtIHN0YXR1cyBhcmVhIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiSGFndWljaGkgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20venRlZm4vZ3NlLWhhZ3VpY2hpLWluZGljYXRvciIsCiAgInV1aWQiOiAiZ3NlLWhhZ3VpY2hpLWluZGljYXRvckB6dGVmbi5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE4Cn0="}, "42": {"version": "18", "sha256": "1vknvsrn92g0dq890pnrxsqq2kva5d6pzd7dx3q7ssgclqwfv81r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxldHMgeW91IGNvbnRyb2wgSGFndWljaGkgZGlyZWN0bHkgZnJvbSB0aGUgc3lzdGVtIHN0YXR1cyBhcmVhIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiSGFndWljaGkgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20venRlZm4vZ3NlLWhhZ3VpY2hpLWluZGljYXRvciIsCiAgInV1aWQiOiAiZ3NlLWhhZ3VpY2hpLWluZGljYXRvckB6dGVmbi5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE4Cn0="}}}
+, {"uuid": "gse-haguichi-indicator@ztefn.github.com", "name": "Haguichi Indicator", "pname": "haguichi-indicator", "description": "Lets you control Haguichi directly from the system status area in GNOME Shell.", "link": "https://extensions.gnome.org/extension/1045/haguichi-indicator/", "shell_version_map": {"38": {"version": "19", "sha256": "0yph8cgi4jqb9br2pb009a01i5lg6r6r18kxrh963bymravv7nvb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxldHMgeW91IGNvbnRyb2wgSGFndWljaGkgZGlyZWN0bHkgZnJvbSB0aGUgc3lzdGVtIHN0YXR1cyBhcmVhIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiSGFndWljaGkgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3p0ZWZuL2dzZS1oYWd1aWNoaS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImdzZS1oYWd1aWNoaS1pbmRpY2F0b3JAenRlZm4uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxOQp9"}, "40": {"version": "19", "sha256": "0yph8cgi4jqb9br2pb009a01i5lg6r6r18kxrh963bymravv7nvb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxldHMgeW91IGNvbnRyb2wgSGFndWljaGkgZGlyZWN0bHkgZnJvbSB0aGUgc3lzdGVtIHN0YXR1cyBhcmVhIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiSGFndWljaGkgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3p0ZWZuL2dzZS1oYWd1aWNoaS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImdzZS1oYWd1aWNoaS1pbmRpY2F0b3JAenRlZm4uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxOQp9"}, "41": {"version": "19", "sha256": "0yph8cgi4jqb9br2pb009a01i5lg6r6r18kxrh963bymravv7nvb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxldHMgeW91IGNvbnRyb2wgSGFndWljaGkgZGlyZWN0bHkgZnJvbSB0aGUgc3lzdGVtIHN0YXR1cyBhcmVhIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiSGFndWljaGkgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3p0ZWZuL2dzZS1oYWd1aWNoaS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImdzZS1oYWd1aWNoaS1pbmRpY2F0b3JAenRlZm4uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxOQp9"}, "42": {"version": "19", "sha256": "0yph8cgi4jqb9br2pb009a01i5lg6r6r18kxrh963bymravv7nvb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxldHMgeW91IGNvbnRyb2wgSGFndWljaGkgZGlyZWN0bHkgZnJvbSB0aGUgc3lzdGVtIHN0YXR1cyBhcmVhIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiSGFndWljaGkgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3p0ZWZuL2dzZS1oYWd1aWNoaS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImdzZS1oYWd1aWNoaS1pbmRpY2F0b3JAenRlZm4uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxOQp9"}, "43": {"version": "19", "sha256": "0yph8cgi4jqb9br2pb009a01i5lg6r6r18kxrh963bymravv7nvb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxldHMgeW91IGNvbnRyb2wgSGFndWljaGkgZGlyZWN0bHkgZnJvbSB0aGUgc3lzdGVtIHN0YXR1cyBhcmVhIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiSGFndWljaGkgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3p0ZWZuL2dzZS1oYWd1aWNoaS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImdzZS1oYWd1aWNoaS1pbmRpY2F0b3JAenRlZm4uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxOQp9"}}}
 , {"uuid": "gnome-shutdown-button@kirby_33@hotmail.fr", "name": "Gnome-Shutdown Button", "pname": "gnome-shutdown-button", "description": "Add a power off button to easily turn off your computer.\nThis button replaces the power off icon in the system area of the Gnome panel.\nYou no longer need to open the system menu to turn off your computer.", "link": "https://extensions.gnome.org/extension/1056/gnome-shutdown-button/", "shell_version_map": {"40": {"version": "6", "sha256": "118p8avf2nfxpp3f7l1675s6glcjk0by9fvzrrdv2bqvi0mxnj15", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHBvd2VyIG9mZiBidXR0b24gdG8gZWFzaWx5IHR1cm4gb2ZmIHlvdXIgY29tcHV0ZXIuXG5UaGlzIGJ1dHRvbiByZXBsYWNlcyB0aGUgcG93ZXIgb2ZmIGljb24gaW4gdGhlIHN5c3RlbSBhcmVhIG9mIHRoZSBHbm9tZSBwYW5lbC5cbllvdSBubyBsb25nZXIgbmVlZCB0byBvcGVuIHRoZSBzeXN0ZW0gbWVudSB0byB0dXJuIG9mZiB5b3VyIGNvbXB1dGVyLiIsCiAgIm5hbWUiOiAiR25vbWUtU2h1dGRvd24gQnV0dG9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjEyIiwKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjM2IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcva2lyYnlfMzMvZ25vbWUtc2h1dGRvd24tYnV0dG9uLyIsCiAgInV1aWQiOiAiZ25vbWUtc2h1dGRvd24tYnV0dG9uQGtpcmJ5XzMzQGhvdG1haWwuZnIiLAogICJ2ZXJzaW9uIjogNgp9"}, "41": {"version": "6", "sha256": "118p8avf2nfxpp3f7l1675s6glcjk0by9fvzrrdv2bqvi0mxnj15", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHBvd2VyIG9mZiBidXR0b24gdG8gZWFzaWx5IHR1cm4gb2ZmIHlvdXIgY29tcHV0ZXIuXG5UaGlzIGJ1dHRvbiByZXBsYWNlcyB0aGUgcG93ZXIgb2ZmIGljb24gaW4gdGhlIHN5c3RlbSBhcmVhIG9mIHRoZSBHbm9tZSBwYW5lbC5cbllvdSBubyBsb25nZXIgbmVlZCB0byBvcGVuIHRoZSBzeXN0ZW0gbWVudSB0byB0dXJuIG9mZiB5b3VyIGNvbXB1dGVyLiIsCiAgIm5hbWUiOiAiR25vbWUtU2h1dGRvd24gQnV0dG9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjEyIiwKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjM2IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcva2lyYnlfMzMvZ25vbWUtc2h1dGRvd24tYnV0dG9uLyIsCiAgInV1aWQiOiAiZ25vbWUtc2h1dGRvd24tYnV0dG9uQGtpcmJ5XzMzQGhvdG1haWwuZnIiLAogICJ2ZXJzaW9uIjogNgp9"}, "42": {"version": "6", "sha256": "118p8avf2nfxpp3f7l1675s6glcjk0by9fvzrrdv2bqvi0mxnj15", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHBvd2VyIG9mZiBidXR0b24gdG8gZWFzaWx5IHR1cm4gb2ZmIHlvdXIgY29tcHV0ZXIuXG5UaGlzIGJ1dHRvbiByZXBsYWNlcyB0aGUgcG93ZXIgb2ZmIGljb24gaW4gdGhlIHN5c3RlbSBhcmVhIG9mIHRoZSBHbm9tZSBwYW5lbC5cbllvdSBubyBsb25nZXIgbmVlZCB0byBvcGVuIHRoZSBzeXN0ZW0gbWVudSB0byB0dXJuIG9mZiB5b3VyIGNvbXB1dGVyLiIsCiAgIm5hbWUiOiAiR25vbWUtU2h1dGRvd24gQnV0dG9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjEyIiwKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjM2IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcva2lyYnlfMzMvZ25vbWUtc2h1dGRvd24tYnV0dG9uLyIsCiAgInV1aWQiOiAiZ25vbWUtc2h1dGRvd24tYnV0dG9uQGtpcmJ5XzMzQGhvdG1haWwuZnIiLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "timezone@jwendell", "name": "Timezone", "pname": "timezone", "description": "See people with their timezones from the Shell", "link": "https://extensions.gnome.org/extension/1060/timezone/", "shell_version_map": {"40": {"version": "18", "sha256": "1ksb8pm2y4lxjcwn2l0yj6piz5cqgmzx6k4rygx1mbh5y76mwdji", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlZSBwZW9wbGUgd2l0aCB0aGVpciB0aW1lem9uZXMgZnJvbSB0aGUgU2hlbGwiLAogICJuYW1lIjogIlRpbWV6b25lIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRpbWV6b25lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMyIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2p3ZW5kZWxsL2dub21lLXNoZWxsLWV4dGVuc2lvbi10aW1lem9uZSIsCiAgInV1aWQiOiAidGltZXpvbmVAandlbmRlbGwiLAogICJ2ZXJzaW9uIjogMTgKfQ=="}, "41": {"version": "20", "sha256": "11a29drrlgaah5zk5ik9p67ir5k44byzmyz3hj4c86gz38v0aja9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlZSBwZW9wbGUgd2l0aCB0aGVpciB0aW1lem9uZXMgZnJvbSB0aGUgU2hlbGwiLAogICJuYW1lIjogIlRpbWV6b25lIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRpbWV6b25lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMyIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qd2VuZGVsbC9nbm9tZS1zaGVsbC1leHRlbnNpb24tdGltZXpvbmUiLAogICJ1dWlkIjogInRpbWV6b25lQGp3ZW5kZWxsIiwKICAidmVyc2lvbiI6IDIwCn0="}, "42": {"version": "20", "sha256": "11a29drrlgaah5zk5ik9p67ir5k44byzmyz3hj4c86gz38v0aja9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlZSBwZW9wbGUgd2l0aCB0aGVpciB0aW1lem9uZXMgZnJvbSB0aGUgU2hlbGwiLAogICJuYW1lIjogIlRpbWV6b25lIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRpbWV6b25lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMyIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qd2VuZGVsbC9nbm9tZS1zaGVsbC1leHRlbnNpb24tdGltZXpvbmUiLAogICJ1dWlkIjogInRpbWV6b25lQGp3ZW5kZWxsIiwKICAidmVyc2lvbiI6IDIwCn0="}}}
 , {"uuid": "On_Screen_Keyboard_Button@bradan.eu", "name": "On Screen Keyboard Button", "pname": "on-screen-keyboard-button", "description": "Shows or hides the OSK via top bar button. It works with X, not with wayland. Wayland has it's own technique: swipe the keyboard up from the bottom display edge.\n\nSource code: https://github.com/Bradan/Gnome-On-Screen-Keyboard-Button", "link": "https://extensions.gnome.org/extension/1061/on-screen-keyboard-button/", "shell_version_map": {"38": {"version": "5", "sha256": "0z3jcv5gzv1pwfla9ghp5kjljc5n80fcab0d2c2i2pw7y7kvpabr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIG9yIGhpZGVzIHRoZSBPU0sgdmlhIHRvcCBiYXIgYnV0dG9uLiBJdCB3b3JrcyB3aXRoIFgsIG5vdCB3aXRoIHdheWxhbmQuIFdheWxhbmQgaGFzIGl0J3Mgb3duIHRlY2huaXF1ZTogc3dpcGUgdGhlIGtleWJvYXJkIHVwIGZyb20gdGhlIGJvdHRvbSBkaXNwbGF5IGVkZ2UuXG5cblNvdXJjZSBjb2RlOiBodHRwczovL2dpdGh1Yi5jb20vQnJhZGFuL0dub21lLU9uLVNjcmVlbi1LZXlib2FyZC1CdXR0b24iLAogICJuYW1lIjogIk9uIFNjcmVlbiBLZXlib2FyZCBCdXR0b24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjgiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiT25fU2NyZWVuX0tleWJvYXJkX0J1dHRvbkBicmFkYW4uZXUiLAogICJ2ZXJzaW9uIjogNQp9"}}}
@@ -170,7 +170,7 @@
 , {"uuid": "disableworkspaceanim@owilliams.mixxx.org", "name": "Disable Workspace Switch Animation", "pname": "disable-workspace-switch-animation", "description": "Makes switching between workspaces instant without disabling other animations", "link": "https://extensions.gnome.org/extension/1328/disable-workspace-switch-animation/", "shell_version_map": {"38": {"version": "4", "sha256": "0yy5yddzaswfl5yv19layls3g2nwfj47x5zg131f43y7abgp7z4l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIHN3aXRjaGluZyBiZXR3ZWVuIHdvcmtzcGFjZXMgaW5zdGFudCB3aXRob3V0IGRpc2FibGluZyBvdGhlciBhbmltYXRpb25zIiwKICAibmFtZSI6ICJEaXNhYmxlIFdvcmtzcGFjZSBTd2l0Y2ggQW5pbWF0aW9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImRpc2FibGV3b3Jrc3BhY2VhbmltQG93aWxsaWFtcy5taXh4eC5vcmciLAogICJ2ZXJzaW9uIjogNAp9"}, "40": {"version": "5", "sha256": "1w7gxcgz5729vwfw3ih2ha4y3r07cgqh1kykqfnrhraqrjd4zvfc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIHN3aXRjaGluZyBiZXR3ZWVuIHdvcmtzcGFjZXMgaW5zdGFudCB3aXRob3V0IGRpc2FibGluZyBvdGhlciBhbmltYXRpb25zIiwKICAibmFtZSI6ICJEaXNhYmxlIFdvcmtzcGFjZSBTd2l0Y2ggQW5pbWF0aW9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiZGlzYWJsZXdvcmtzcGFjZWFuaW1Ab3dpbGxpYW1zLm1peHh4Lm9yZyIsCiAgInZlcnNpb24iOiA1Cn0="}, "41": {"version": "5", "sha256": "1w7gxcgz5729vwfw3ih2ha4y3r07cgqh1kykqfnrhraqrjd4zvfc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIHN3aXRjaGluZyBiZXR3ZWVuIHdvcmtzcGFjZXMgaW5zdGFudCB3aXRob3V0IGRpc2FibGluZyBvdGhlciBhbmltYXRpb25zIiwKICAibmFtZSI6ICJEaXNhYmxlIFdvcmtzcGFjZSBTd2l0Y2ggQW5pbWF0aW9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiZGlzYWJsZXdvcmtzcGFjZWFuaW1Ab3dpbGxpYW1zLm1peHh4Lm9yZyIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"uuid": "app-switcher_current_workspace_first@fawtytoo", "name": "App-Switcher Current Workspace First", "pname": "app-switcher-current-workspace-first", "description": "App-Switcher modification that sorts applications by current workspace first. It separates apps into 2 separate icons if the app also has windows on other workspaces.\n\nNOTE: The App Switcher is invoked by a keyboard shortcut which you can set in Gnome Settings > Navigation > Switch applications", "link": "https://extensions.gnome.org/extension/1329/app-switcher-current-workspace-first/", "shell_version_map": {"38": {"version": "13", "sha256": "0wjjk3fr5j3hkr4zk6wxhhilpylcz6jb830halyddf6b52ssjhyh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcC1Td2l0Y2hlciBtb2RpZmljYXRpb24gdGhhdCBzb3J0cyBhcHBsaWNhdGlvbnMgYnkgY3VycmVudCB3b3Jrc3BhY2UgZmlyc3QuIEl0IHNlcGFyYXRlcyBhcHBzIGludG8gMiBzZXBhcmF0ZSBpY29ucyBpZiB0aGUgYXBwIGFsc28gaGFzIHdpbmRvd3Mgb24gb3RoZXIgd29ya3NwYWNlcy5cblxuTk9URTogVGhlIEFwcCBTd2l0Y2hlciBpcyBpbnZva2VkIGJ5IGEga2V5Ym9hcmQgc2hvcnRjdXQgd2hpY2ggeW91IGNhbiBzZXQgaW4gR25vbWUgU2V0dGluZ3MgPiBOYXZpZ2F0aW9uID4gU3dpdGNoIGFwcGxpY2F0aW9ucyIsCiAgIm5hbWUiOiAiQXBwLVN3aXRjaGVyIEN1cnJlbnQgV29ya3NwYWNlIEZpcnN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZmF3dHl0b28vQXBwLVN3aXRjaGVyLUN1cnJlbnQtV29ya3NwYWNlLUZpcnN0IiwKICAidXVpZCI6ICJhcHAtc3dpdGNoZXJfY3VycmVudF93b3Jrc3BhY2VfZmlyc3RAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "40": {"version": "13", "sha256": "0wjjk3fr5j3hkr4zk6wxhhilpylcz6jb830halyddf6b52ssjhyh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcC1Td2l0Y2hlciBtb2RpZmljYXRpb24gdGhhdCBzb3J0cyBhcHBsaWNhdGlvbnMgYnkgY3VycmVudCB3b3Jrc3BhY2UgZmlyc3QuIEl0IHNlcGFyYXRlcyBhcHBzIGludG8gMiBzZXBhcmF0ZSBpY29ucyBpZiB0aGUgYXBwIGFsc28gaGFzIHdpbmRvd3Mgb24gb3RoZXIgd29ya3NwYWNlcy5cblxuTk9URTogVGhlIEFwcCBTd2l0Y2hlciBpcyBpbnZva2VkIGJ5IGEga2V5Ym9hcmQgc2hvcnRjdXQgd2hpY2ggeW91IGNhbiBzZXQgaW4gR25vbWUgU2V0dGluZ3MgPiBOYXZpZ2F0aW9uID4gU3dpdGNoIGFwcGxpY2F0aW9ucyIsCiAgIm5hbWUiOiAiQXBwLVN3aXRjaGVyIEN1cnJlbnQgV29ya3NwYWNlIEZpcnN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZmF3dHl0b28vQXBwLVN3aXRjaGVyLUN1cnJlbnQtV29ya3NwYWNlLUZpcnN0IiwKICAidXVpZCI6ICJhcHAtc3dpdGNoZXJfY3VycmVudF93b3Jrc3BhY2VfZmlyc3RAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "41": {"version": "13", "sha256": "0wjjk3fr5j3hkr4zk6wxhhilpylcz6jb830halyddf6b52ssjhyh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcC1Td2l0Y2hlciBtb2RpZmljYXRpb24gdGhhdCBzb3J0cyBhcHBsaWNhdGlvbnMgYnkgY3VycmVudCB3b3Jrc3BhY2UgZmlyc3QuIEl0IHNlcGFyYXRlcyBhcHBzIGludG8gMiBzZXBhcmF0ZSBpY29ucyBpZiB0aGUgYXBwIGFsc28gaGFzIHdpbmRvd3Mgb24gb3RoZXIgd29ya3NwYWNlcy5cblxuTk9URTogVGhlIEFwcCBTd2l0Y2hlciBpcyBpbnZva2VkIGJ5IGEga2V5Ym9hcmQgc2hvcnRjdXQgd2hpY2ggeW91IGNhbiBzZXQgaW4gR25vbWUgU2V0dGluZ3MgPiBOYXZpZ2F0aW9uID4gU3dpdGNoIGFwcGxpY2F0aW9ucyIsCiAgIm5hbWUiOiAiQXBwLVN3aXRjaGVyIEN1cnJlbnQgV29ya3NwYWNlIEZpcnN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZmF3dHl0b28vQXBwLVN3aXRjaGVyLUN1cnJlbnQtV29ya3NwYWNlLUZpcnN0IiwKICAidXVpZCI6ICJhcHAtc3dpdGNoZXJfY3VycmVudF93b3Jrc3BhY2VfZmlyc3RAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "42": {"version": "13", "sha256": "0wjjk3fr5j3hkr4zk6wxhhilpylcz6jb830halyddf6b52ssjhyh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcC1Td2l0Y2hlciBtb2RpZmljYXRpb24gdGhhdCBzb3J0cyBhcHBsaWNhdGlvbnMgYnkgY3VycmVudCB3b3Jrc3BhY2UgZmlyc3QuIEl0IHNlcGFyYXRlcyBhcHBzIGludG8gMiBzZXBhcmF0ZSBpY29ucyBpZiB0aGUgYXBwIGFsc28gaGFzIHdpbmRvd3Mgb24gb3RoZXIgd29ya3NwYWNlcy5cblxuTk9URTogVGhlIEFwcCBTd2l0Y2hlciBpcyBpbnZva2VkIGJ5IGEga2V5Ym9hcmQgc2hvcnRjdXQgd2hpY2ggeW91IGNhbiBzZXQgaW4gR25vbWUgU2V0dGluZ3MgPiBOYXZpZ2F0aW9uID4gU3dpdGNoIGFwcGxpY2F0aW9ucyIsCiAgIm5hbWUiOiAiQXBwLVN3aXRjaGVyIEN1cnJlbnQgV29ya3NwYWNlIEZpcnN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZmF3dHl0b28vQXBwLVN3aXRjaGVyLUN1cnJlbnQtV29ya3NwYWNlLUZpcnN0IiwKICAidXVpZCI6ICJhcHAtc3dpdGNoZXJfY3VycmVudF93b3Jrc3BhY2VfZmlyc3RAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}}}
 , {"uuid": "window-switcher_current_workspace_first@fawtytoo", "name": "Window-Switcher Current Workspace First", "pname": "window-switcher-current-workspace-first", "description": "Window-Switcher modification that sorts windows by current workspace first. The other windows are added according to their workspace.\n\nNOTE: The Window Switcher is invoked by a keyboard shortcut which you can set in Gnome Settings > Navigation > Switch windows", "link": "https://extensions.gnome.org/extension/1330/window-switcher-current-workspace-first/", "shell_version_map": {"38": {"version": "15", "sha256": "1fblvd5g8bsn4qmbnl2dyinh8l1v0p6yrc64ii9z3njy7ja79d7p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldpbmRvdy1Td2l0Y2hlciBtb2RpZmljYXRpb24gdGhhdCBzb3J0cyB3aW5kb3dzIGJ5IGN1cnJlbnQgd29ya3NwYWNlIGZpcnN0LiBUaGUgb3RoZXIgd2luZG93cyBhcmUgYWRkZWQgYWNjb3JkaW5nIHRvIHRoZWlyIHdvcmtzcGFjZS5cblxuTk9URTogVGhlIFdpbmRvdyBTd2l0Y2hlciBpcyBpbnZva2VkIGJ5IGEga2V5Ym9hcmQgc2hvcnRjdXQgd2hpY2ggeW91IGNhbiBzZXQgaW4gR25vbWUgU2V0dGluZ3MgPiBOYXZpZ2F0aW9uID4gU3dpdGNoIHdpbmRvd3MiLAogICJuYW1lIjogIldpbmRvdy1Td2l0Y2hlciBDdXJyZW50IFdvcmtzcGFjZSBGaXJzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Zhd3R5dG9vL1dpbmRvdy1Td2l0Y2hlci1DdXJyZW50LVdvcmtzcGFjZS1GaXJzdCIsCiAgInV1aWQiOiAid2luZG93LXN3aXRjaGVyX2N1cnJlbnRfd29ya3NwYWNlX2ZpcnN0QGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDE1Cn0="}, "40": {"version": "15", "sha256": "1fblvd5g8bsn4qmbnl2dyinh8l1v0p6yrc64ii9z3njy7ja79d7p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldpbmRvdy1Td2l0Y2hlciBtb2RpZmljYXRpb24gdGhhdCBzb3J0cyB3aW5kb3dzIGJ5IGN1cnJlbnQgd29ya3NwYWNlIGZpcnN0LiBUaGUgb3RoZXIgd2luZG93cyBhcmUgYWRkZWQgYWNjb3JkaW5nIHRvIHRoZWlyIHdvcmtzcGFjZS5cblxuTk9URTogVGhlIFdpbmRvdyBTd2l0Y2hlciBpcyBpbnZva2VkIGJ5IGEga2V5Ym9hcmQgc2hvcnRjdXQgd2hpY2ggeW91IGNhbiBzZXQgaW4gR25vbWUgU2V0dGluZ3MgPiBOYXZpZ2F0aW9uID4gU3dpdGNoIHdpbmRvd3MiLAogICJuYW1lIjogIldpbmRvdy1Td2l0Y2hlciBDdXJyZW50IFdvcmtzcGFjZSBGaXJzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Zhd3R5dG9vL1dpbmRvdy1Td2l0Y2hlci1DdXJyZW50LVdvcmtzcGFjZS1GaXJzdCIsCiAgInV1aWQiOiAid2luZG93LXN3aXRjaGVyX2N1cnJlbnRfd29ya3NwYWNlX2ZpcnN0QGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDE1Cn0="}, "41": {"version": "15", "sha256": "1fblvd5g8bsn4qmbnl2dyinh8l1v0p6yrc64ii9z3njy7ja79d7p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldpbmRvdy1Td2l0Y2hlciBtb2RpZmljYXRpb24gdGhhdCBzb3J0cyB3aW5kb3dzIGJ5IGN1cnJlbnQgd29ya3NwYWNlIGZpcnN0LiBUaGUgb3RoZXIgd2luZG93cyBhcmUgYWRkZWQgYWNjb3JkaW5nIHRvIHRoZWlyIHdvcmtzcGFjZS5cblxuTk9URTogVGhlIFdpbmRvdyBTd2l0Y2hlciBpcyBpbnZva2VkIGJ5IGEga2V5Ym9hcmQgc2hvcnRjdXQgd2hpY2ggeW91IGNhbiBzZXQgaW4gR25vbWUgU2V0dGluZ3MgPiBOYXZpZ2F0aW9uID4gU3dpdGNoIHdpbmRvd3MiLAogICJuYW1lIjogIldpbmRvdy1Td2l0Y2hlciBDdXJyZW50IFdvcmtzcGFjZSBGaXJzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Zhd3R5dG9vL1dpbmRvdy1Td2l0Y2hlci1DdXJyZW50LVdvcmtzcGFjZS1GaXJzdCIsCiAgInV1aWQiOiAid2luZG93LXN3aXRjaGVyX2N1cnJlbnRfd29ya3NwYWNlX2ZpcnN0QGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDE1Cn0="}, "42": {"version": "15", "sha256": "1fblvd5g8bsn4qmbnl2dyinh8l1v0p6yrc64ii9z3njy7ja79d7p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldpbmRvdy1Td2l0Y2hlciBtb2RpZmljYXRpb24gdGhhdCBzb3J0cyB3aW5kb3dzIGJ5IGN1cnJlbnQgd29ya3NwYWNlIGZpcnN0LiBUaGUgb3RoZXIgd2luZG93cyBhcmUgYWRkZWQgYWNjb3JkaW5nIHRvIHRoZWlyIHdvcmtzcGFjZS5cblxuTk9URTogVGhlIFdpbmRvdyBTd2l0Y2hlciBpcyBpbnZva2VkIGJ5IGEga2V5Ym9hcmQgc2hvcnRjdXQgd2hpY2ggeW91IGNhbiBzZXQgaW4gR25vbWUgU2V0dGluZ3MgPiBOYXZpZ2F0aW9uID4gU3dpdGNoIHdpbmRvd3MiLAogICJuYW1lIjogIldpbmRvdy1Td2l0Y2hlciBDdXJyZW50IFdvcmtzcGFjZSBGaXJzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Zhd3R5dG9vL1dpbmRvdy1Td2l0Y2hlci1DdXJyZW50LVdvcmtzcGFjZS1GaXJzdCIsCiAgInV1aWQiOiAid2luZG93LXN3aXRjaGVyX2N1cnJlbnRfd29ya3NwYWNlX2ZpcnN0QGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDE1Cn0="}}}
-, {"uuid": "run-or-raise@edvard.cz", "name": "Run or raise", "pname": "run-or-raise", "description": "Launch or focus the window or define custom shortcuts in a text file", "link": "https://extensions.gnome.org/extension/1336/run-or-raise/", "shell_version_map": {"38": {"version": "17", "sha256": "0gy12njkdz697zc8mnwj453r6806rq11c300wv47xxaqd5mhiz9j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxhdW5jaCBvciBmb2N1cyB0aGUgd2luZG93IG9yIGRlZmluZSBjdXN0b20gc2hvcnRjdXRzIGluIGEgdGV4dCBmaWxlIiwKICAiZGlzYWJsZS1leHRlbnNpb24tdmVyc2lvbi12YWxpZGF0aW9uIjogdHJ1ZSwKICAibmFtZSI6ICJSdW4gb3IgcmFpc2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucnVuLW9yLXJhaXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMyIiwKICAgICIzLjMyLjEiLAogICAgIjMuMzYiLAogICAgIjMuMzguMSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0NaLU5JQy9ydW4tb3ItcmFpc2UiLAogICJ1dWlkIjogInJ1bi1vci1yYWlzZUBlZHZhcmQuY3oiLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "40": {"version": "25", "sha256": "1r4jh72ypd34wn59fjd3v9p6mgfdis20rk1nc513rarf3n3zvnnf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxhdW5jaCBvciBmb2N1cyB0aGUgd2luZG93IG9yIGRlZmluZSBjdXN0b20gc2hvcnRjdXRzIGluIGEgdGV4dCBmaWxlIiwKICAiZGlzYWJsZS1leHRlbnNpb24tdmVyc2lvbi12YWxpZGF0aW9uIjogdHJ1ZSwKICAibmFtZSI6ICJSdW4gb3IgcmFpc2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucnVuLW9yLXJhaXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQ1otTklDL3J1bi1vci1yYWlzZSIsCiAgInV1aWQiOiAicnVuLW9yLXJhaXNlQGVkdmFyZC5jeiIsCiAgInZlcnNpb24iOiAyNQp9"}, "41": {"version": "25", "sha256": "1r4jh72ypd34wn59fjd3v9p6mgfdis20rk1nc513rarf3n3zvnnf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxhdW5jaCBvciBmb2N1cyB0aGUgd2luZG93IG9yIGRlZmluZSBjdXN0b20gc2hvcnRjdXRzIGluIGEgdGV4dCBmaWxlIiwKICAiZGlzYWJsZS1leHRlbnNpb24tdmVyc2lvbi12YWxpZGF0aW9uIjogdHJ1ZSwKICAibmFtZSI6ICJSdW4gb3IgcmFpc2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucnVuLW9yLXJhaXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQ1otTklDL3J1bi1vci1yYWlzZSIsCiAgInV1aWQiOiAicnVuLW9yLXJhaXNlQGVkdmFyZC5jeiIsCiAgInZlcnNpb24iOiAyNQp9"}, "42": {"version": "25", "sha256": "1r4jh72ypd34wn59fjd3v9p6mgfdis20rk1nc513rarf3n3zvnnf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxhdW5jaCBvciBmb2N1cyB0aGUgd2luZG93IG9yIGRlZmluZSBjdXN0b20gc2hvcnRjdXRzIGluIGEgdGV4dCBmaWxlIiwKICAiZGlzYWJsZS1leHRlbnNpb24tdmVyc2lvbi12YWxpZGF0aW9uIjogdHJ1ZSwKICAibmFtZSI6ICJSdW4gb3IgcmFpc2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucnVuLW9yLXJhaXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQ1otTklDL3J1bi1vci1yYWlzZSIsCiAgInV1aWQiOiAicnVuLW9yLXJhaXNlQGVkdmFyZC5jeiIsCiAgInZlcnNpb24iOiAyNQp9"}}}
+, {"uuid": "run-or-raise@edvard.cz", "name": "Run or raise", "pname": "run-or-raise", "description": "Launch or focus the window or define custom shortcuts in a text file", "link": "https://extensions.gnome.org/extension/1336/run-or-raise/", "shell_version_map": {"38": {"version": "17", "sha256": "0gy12njkdz697zc8mnwj453r6806rq11c300wv47xxaqd5mhiz9j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxhdW5jaCBvciBmb2N1cyB0aGUgd2luZG93IG9yIGRlZmluZSBjdXN0b20gc2hvcnRjdXRzIGluIGEgdGV4dCBmaWxlIiwKICAiZGlzYWJsZS1leHRlbnNpb24tdmVyc2lvbi12YWxpZGF0aW9uIjogdHJ1ZSwKICAibmFtZSI6ICJSdW4gb3IgcmFpc2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucnVuLW9yLXJhaXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMyIiwKICAgICIzLjMyLjEiLAogICAgIjMuMzYiLAogICAgIjMuMzguMSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0NaLU5JQy9ydW4tb3ItcmFpc2UiLAogICJ1dWlkIjogInJ1bi1vci1yYWlzZUBlZHZhcmQuY3oiLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "40": {"version": "27", "sha256": "1v8ij7y3z3j22x6g6p3py0bx1z89k6hlzbchrgvrknpxh4r9fbz4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxhdW5jaCBvciBmb2N1cyB0aGUgd2luZG93IG9yIGRlZmluZSBjdXN0b20gc2hvcnRjdXRzIGluIGEgdGV4dCBmaWxlIiwKICAiZGlzYWJsZS1leHRlbnNpb24tdmVyc2lvbi12YWxpZGF0aW9uIjogdHJ1ZSwKICAibmFtZSI6ICJSdW4gb3IgcmFpc2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucnVuLW9yLXJhaXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0NaLU5JQy9ydW4tb3ItcmFpc2UiLAogICJ1dWlkIjogInJ1bi1vci1yYWlzZUBlZHZhcmQuY3oiLAogICJ2ZXJzaW9uIjogMjcKfQ=="}, "41": {"version": "27", "sha256": "1v8ij7y3z3j22x6g6p3py0bx1z89k6hlzbchrgvrknpxh4r9fbz4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxhdW5jaCBvciBmb2N1cyB0aGUgd2luZG93IG9yIGRlZmluZSBjdXN0b20gc2hvcnRjdXRzIGluIGEgdGV4dCBmaWxlIiwKICAiZGlzYWJsZS1leHRlbnNpb24tdmVyc2lvbi12YWxpZGF0aW9uIjogdHJ1ZSwKICAibmFtZSI6ICJSdW4gb3IgcmFpc2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucnVuLW9yLXJhaXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0NaLU5JQy9ydW4tb3ItcmFpc2UiLAogICJ1dWlkIjogInJ1bi1vci1yYWlzZUBlZHZhcmQuY3oiLAogICJ2ZXJzaW9uIjogMjcKfQ=="}, "42": {"version": "27", "sha256": "1v8ij7y3z3j22x6g6p3py0bx1z89k6hlzbchrgvrknpxh4r9fbz4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxhdW5jaCBvciBmb2N1cyB0aGUgd2luZG93IG9yIGRlZmluZSBjdXN0b20gc2hvcnRjdXRzIGluIGEgdGV4dCBmaWxlIiwKICAiZGlzYWJsZS1leHRlbnNpb24tdmVyc2lvbi12YWxpZGF0aW9uIjogdHJ1ZSwKICAibmFtZSI6ICJSdW4gb3IgcmFpc2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucnVuLW9yLXJhaXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0NaLU5JQy9ydW4tb3ItcmFpc2UiLAogICJ1dWlkIjogInJ1bi1vci1yYWlzZUBlZHZhcmQuY3oiLAogICJ2ZXJzaW9uIjogMjcKfQ=="}, "43": {"version": "27", "sha256": "1v8ij7y3z3j22x6g6p3py0bx1z89k6hlzbchrgvrknpxh4r9fbz4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxhdW5jaCBvciBmb2N1cyB0aGUgd2luZG93IG9yIGRlZmluZSBjdXN0b20gc2hvcnRjdXRzIGluIGEgdGV4dCBmaWxlIiwKICAiZGlzYWJsZS1leHRlbnNpb24tdmVyc2lvbi12YWxpZGF0aW9uIjogdHJ1ZSwKICAibmFtZSI6ICJSdW4gb3IgcmFpc2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucnVuLW9yLXJhaXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0NaLU5JQy9ydW4tb3ItcmFpc2UiLAogICJ1dWlkIjogInJ1bi1vci1yYWlzZUBlZHZhcmQuY3oiLAogICJ2ZXJzaW9uIjogMjcKfQ=="}}}
 , {"uuid": "show_applications_instead_of_overview@fawtytoo", "name": "Show Applications Instead Of Workspaces", "pname": "show-applications-instead-of-overview", "description": "The Overview will show Applications instead of Workspaces when invoked.", "link": "https://extensions.gnome.org/extension/1337/show-applications-instead-of-overview/", "shell_version_map": {"38": {"version": "8", "sha256": "0dj704fq6g8jfl13gkfljyq360s6in77vd61w8ds8azysarmaww3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBPdmVydmlldyB3aWxsIHNob3cgQXBwbGljYXRpb25zIGluc3RlYWQgb2YgV29ya3NwYWNlcyB3aGVuIGludm9rZWQuIiwKICAibmFtZSI6ICJTaG93IEFwcGxpY2F0aW9ucyBJbnN0ZWFkIE9mIFdvcmtzcGFjZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic2hvd19hcHBsaWNhdGlvbnNfaW5zdGVhZF9vZl9vdmVydmlld0BmYXd0eXRvbyIsCiAgInZlcnNpb24iOiA4Cn0="}, "40": {"version": "8", "sha256": "0dj704fq6g8jfl13gkfljyq360s6in77vd61w8ds8azysarmaww3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBPdmVydmlldyB3aWxsIHNob3cgQXBwbGljYXRpb25zIGluc3RlYWQgb2YgV29ya3NwYWNlcyB3aGVuIGludm9rZWQuIiwKICAibmFtZSI6ICJTaG93IEFwcGxpY2F0aW9ucyBJbnN0ZWFkIE9mIFdvcmtzcGFjZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic2hvd19hcHBsaWNhdGlvbnNfaW5zdGVhZF9vZl9vdmVydmlld0BmYXd0eXRvbyIsCiAgInZlcnNpb24iOiA4Cn0="}, "41": {"version": "8", "sha256": "0dj704fq6g8jfl13gkfljyq360s6in77vd61w8ds8azysarmaww3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBPdmVydmlldyB3aWxsIHNob3cgQXBwbGljYXRpb25zIGluc3RlYWQgb2YgV29ya3NwYWNlcyB3aGVuIGludm9rZWQuIiwKICAibmFtZSI6ICJTaG93IEFwcGxpY2F0aW9ucyBJbnN0ZWFkIE9mIFdvcmtzcGFjZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic2hvd19hcHBsaWNhdGlvbnNfaW5zdGVhZF9vZl9vdmVydmlld0BmYXd0eXRvbyIsCiAgInZlcnNpb24iOiA4Cn0="}, "42": {"version": "8", "sha256": "0dj704fq6g8jfl13gkfljyq360s6in77vd61w8ds8azysarmaww3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBPdmVydmlldyB3aWxsIHNob3cgQXBwbGljYXRpb25zIGluc3RlYWQgb2YgV29ya3NwYWNlcyB3aGVuIGludm9rZWQuIiwKICAibmFtZSI6ICJTaG93IEFwcGxpY2F0aW9ucyBJbnN0ZWFkIE9mIFdvcmtzcGFjZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic2hvd19hcHBsaWNhdGlvbnNfaW5zdGVhZF9vZl9vdmVydmlld0BmYXd0eXRvbyIsCiAgInZlcnNpb24iOiA4Cn0="}}}
 , {"uuid": "hplip-menu@grizzlysmit.smit.id.au", "name": "Alternate Menu for Hplip", "pname": "hplip-menu", "description": "control your hp printers by calling the device manager hp-toolbox, also some useful links\nMotivation: the hp-systray doesn't work reliably under gnome shell\nyou need to have installed hplip in order to use this\nChoice of using a printer icon or a hp_logo.png if it's installed in the same place as mine on Ubuntu\nyou could use symbolic links to fake the path.", "link": "https://extensions.gnome.org/extension/1339/hplip-menu/", "shell_version_map": {"38": {"version": "11", "sha256": "1754xb6mn0jbkizm79kyjwbhyf1yld0jw8blddia9fn4s223j2rs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImNvbnRyb2wgeW91ciBocCBwcmludGVycyBieSBjYWxsaW5nIHRoZSBkZXZpY2UgbWFuYWdlciBocC10b29sYm94LCBhbHNvIHNvbWUgdXNlZnVsIGxpbmtzXG5Nb3RpdmF0aW9uOiB0aGUgaHAtc3lzdHJheSBkb2Vzbid0IHdvcmsgcmVsaWFibHkgdW5kZXIgZ25vbWUgc2hlbGxcbnlvdSBuZWVkIHRvIGhhdmUgaW5zdGFsbGVkIGhwbGlwIGluIG9yZGVyIHRvIHVzZSB0aGlzXG5DaG9pY2Ugb2YgdXNpbmcgYSBwcmludGVyIGljb24gb3IgYSBocF9sb2dvLnBuZyBpZiBpdCdzIGluc3RhbGxlZCBpbiB0aGUgc2FtZSBwbGFjZSBhcyBtaW5lIG9uIFVidW50dVxueW91IGNvdWxkIHVzZSBzeW1ib2xpYyBsaW5rcyB0byBmYWtlIHRoZSBwYXRoLiIsCiAgIm5hbWUiOiAiQWx0ZXJuYXRlIE1lbnUgZm9yIEhwbGlwIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmhwbGlwLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzguMSIsCiAgICAiMy4zOC4yIiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImhwbGlwLW1lbnVAZ3JpenpseXNtaXQuc21pdC5pZC5hdSIsCiAgInZlcnNpb24iOiAxMQp9"}, "40": {"version": "11", "sha256": "1754xb6mn0jbkizm79kyjwbhyf1yld0jw8blddia9fn4s223j2rs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImNvbnRyb2wgeW91ciBocCBwcmludGVycyBieSBjYWxsaW5nIHRoZSBkZXZpY2UgbWFuYWdlciBocC10b29sYm94LCBhbHNvIHNvbWUgdXNlZnVsIGxpbmtzXG5Nb3RpdmF0aW9uOiB0aGUgaHAtc3lzdHJheSBkb2Vzbid0IHdvcmsgcmVsaWFibHkgdW5kZXIgZ25vbWUgc2hlbGxcbnlvdSBuZWVkIHRvIGhhdmUgaW5zdGFsbGVkIGhwbGlwIGluIG9yZGVyIHRvIHVzZSB0aGlzXG5DaG9pY2Ugb2YgdXNpbmcgYSBwcmludGVyIGljb24gb3IgYSBocF9sb2dvLnBuZyBpZiBpdCdzIGluc3RhbGxlZCBpbiB0aGUgc2FtZSBwbGFjZSBhcyBtaW5lIG9uIFVidW50dVxueW91IGNvdWxkIHVzZSBzeW1ib2xpYyBsaW5rcyB0byBmYWtlIHRoZSBwYXRoLiIsCiAgIm5hbWUiOiAiQWx0ZXJuYXRlIE1lbnUgZm9yIEhwbGlwIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmhwbGlwLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzguMSIsCiAgICAiMy4zOC4yIiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImhwbGlwLW1lbnVAZ3JpenpseXNtaXQuc21pdC5pZC5hdSIsCiAgInZlcnNpb24iOiAxMQp9"}}}
 , {"uuid": "notes@maestroschan.fr", "name": "Notes", "pname": "notes", "description": "Sticky notes for the GNOME Shell desktop.", "link": "https://extensions.gnome.org/extension/1357/notes/", "shell_version_map": {"38": {"version": "22", "sha256": "0svx60711cphswiigd1sswczk17cjxr7gr3davk4krkhya04llp1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN0aWNreSBub3RlcyBmb3IgdGhlIEdOT01FIFNoZWxsIGRlc2t0b3AuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibm90ZXMtZXh0ZW5zaW9uIiwKICAibmFtZSI6ICJOb3RlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ub3Rlcy1leHRlbnNpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tYW9zY2hhbnovbm90ZXMtZXh0ZW5zaW9uLWdub21lIiwKICAidXVpZCI6ICJub3Rlc0BtYWVzdHJvc2NoYW4uZnIiLAogICJ2ZXJzaW9uIjogMjIKfQ=="}, "40": {"version": "23", "sha256": "0sffysgh58p6yk6pa4ggzzz4nj2m2zfl7mb3fdn9i9cp35iamprh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN0aWNreSBub3RlcyBmb3IgdGhlIEdOT01FIFNoZWxsIGRlc2t0b3AuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibm90ZXMtZXh0ZW5zaW9uIiwKICAibmFtZSI6ICJOb3RlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ub3Rlcy1leHRlbnNpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tYW9zY2hhbnovbm90ZXMtZXh0ZW5zaW9uLWdub21lIiwKICAidXVpZCI6ICJub3Rlc0BtYWVzdHJvc2NoYW4uZnIiLAogICJ2ZXJzaW9uIjogMjMKfQ=="}, "41": {"version": "23", "sha256": "0sffysgh58p6yk6pa4ggzzz4nj2m2zfl7mb3fdn9i9cp35iamprh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN0aWNreSBub3RlcyBmb3IgdGhlIEdOT01FIFNoZWxsIGRlc2t0b3AuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibm90ZXMtZXh0ZW5zaW9uIiwKICAibmFtZSI6ICJOb3RlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ub3Rlcy1leHRlbnNpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tYW9zY2hhbnovbm90ZXMtZXh0ZW5zaW9uLWdub21lIiwKICAidXVpZCI6ICJub3Rlc0BtYWVzdHJvc2NoYW4uZnIiLAogICJ2ZXJzaW9uIjogMjMKfQ=="}, "42": {"version": "23", "sha256": "0sffysgh58p6yk6pa4ggzzz4nj2m2zfl7mb3fdn9i9cp35iamprh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN0aWNreSBub3RlcyBmb3IgdGhlIEdOT01FIFNoZWxsIGRlc2t0b3AuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibm90ZXMtZXh0ZW5zaW9uIiwKICAibmFtZSI6ICJOb3RlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ub3Rlcy1leHRlbnNpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tYW9zY2hhbnovbm90ZXMtZXh0ZW5zaW9uLWdub21lIiwKICAidXVpZCI6ICJub3Rlc0BtYWVzdHJvc2NoYW4uZnIiLAogICJ2ZXJzaW9uIjogMjMKfQ=="}}}
@@ -183,11 +183,11 @@
 , {"uuid": "you2ber@konkor", "name": "you2ber", "pname": "you2ber", "description": "Gnome Youtube Downloader\n\n Simple helper for youtube-dl project. It allows you to save locally desired media content without any browser extensions. Just copy URL address of a media content to the clipboard and select desired quality profile or custom format for the item in the extension menu to store it.\n * Required the installation of ffmpeg (youtube-dl dependency for media manipulation)\n\nFor more information and how-to see README.md", "link": "https://extensions.gnome.org/extension/1392/you2ber/", "shell_version_map": {"40": {"version": "10", "sha256": "0dx5x22imwagx2j07xnayvd7zgsk7cyby7gh4jl935ndxmdp05fc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdub21lIFlvdXR1YmUgRG93bmxvYWRlclxuXG4gU2ltcGxlIGhlbHBlciBmb3IgeW91dHViZS1kbCBwcm9qZWN0LiBJdCBhbGxvd3MgeW91IHRvIHNhdmUgbG9jYWxseSBkZXNpcmVkIG1lZGlhIGNvbnRlbnQgd2l0aG91dCBhbnkgYnJvd3NlciBleHRlbnNpb25zLiBKdXN0IGNvcHkgVVJMIGFkZHJlc3Mgb2YgYSBtZWRpYSBjb250ZW50IHRvIHRoZSBjbGlwYm9hcmQgYW5kIHNlbGVjdCBkZXNpcmVkIHF1YWxpdHkgcHJvZmlsZSBvciBjdXN0b20gZm9ybWF0IGZvciB0aGUgaXRlbSBpbiB0aGUgZXh0ZW5zaW9uIG1lbnUgdG8gc3RvcmUgaXQuXG4gKiBSZXF1aXJlZCB0aGUgaW5zdGFsbGF0aW9uIG9mIGZmbXBlZyAoeW91dHViZS1kbCBkZXBlbmRlbmN5IGZvciBtZWRpYSBtYW5pcHVsYXRpb24pXG5cbkZvciBtb3JlIGluZm9ybWF0aW9uIGFuZCBob3ctdG8gc2VlIFJFQURNRS5tZCIsCiAgIm5hbWUiOiAieW91MmJlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcua29ua29yLnlvdTJiZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzIiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va29ua29yL3lvdTJiZXIiLAogICJ1dWlkIjogInlvdTJiZXJAa29ua29yIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
 , {"uuid": "files-view@argonauta.framagit.org", "name": "Files View", "pname": "files-view", "description": "", "link": "https://extensions.gnome.org/extension/1395/files-view/", "shell_version_map": {"38": {"version": "11", "sha256": "0367kzrpzbx1b2l1m68n2pmazlsy4207a1anvyr2n1a4xpq3vwb0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiIsCiAgImdldHRleHQtZG9tYWluIjogImZpbGVzLXZpZXciLAogICJuYW1lIjogIkZpbGVzIFZpZXciLAogICJyZWNlbnRseS1vcGVuLXBlcnNpc3RlbnQtZmlsZW5hbWUiOiAicmVjZW50bHktb3Blbi1mb2xkZXJzLWZpbGVzLXZpZXctZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLmpzb24iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZmlsZXMtdmlldyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJmaWxlcy12aWV3QGFyZ29uYXV0YS5mcmFtYWdpdC5vcmciLAogICJ2ZXJzaW9uIjogMTEKfQ=="}}}
 , {"uuid": "bluetooth-quick-connect@bjarosze.gmail.com", "name": "Bluetooth Quick Connect", "pname": "bluetooth-quick-connect", "description": "Allow to connect to paired devices from gnome control panel.\n", "link": "https://extensions.gnome.org/extension/1401/bluetooth-quick-connect/", "shell_version_map": {"38": {"version": "16", "sha256": "1fkx12xx1m8pchyfvq0vmyd21m79s9s0jw4ackqg1nqcpwyqd1c3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHRvIGNvbm5lY3QgdG8gcGFpcmVkIGRldmljZXMgZnJvbSBnbm9tZSBjb250cm9sIHBhbmVsLlxuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmx1ZXRvb3RoLXF1aWNrLWNvbm5lY3QiLAogICJuYW1lIjogIkJsdWV0b290aCBRdWljayBDb25uZWN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdWV0b290aC1xdWljay1jb25uZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYmphcm9zemUvZ25vbWUtYmx1ZXRvb3RoLXF1aWNrLWNvbm5lY3QiLAogICJ1dWlkIjogImJsdWV0b290aC1xdWljay1jb25uZWN0QGJqYXJvc3plLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxNgp9"}, "40": {"version": "30", "sha256": "1sirfmi5dny4lcim6psib5ik5ynvhmms1r7rd5lndx8spv3wgh3i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHRvIGNvbm5lY3QgdG8gcGFpcmVkIGRldmljZXMgZnJvbSBnbm9tZSBjb250cm9sIHBhbmVsLlxuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmx1ZXRvb3RoLXF1aWNrLWNvbm5lY3QiLAogICJuYW1lIjogIkJsdWV0b290aCBRdWljayBDb25uZWN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdWV0b290aC1xdWljay1jb25uZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JqYXJvc3plL2dub21lLWJsdWV0b290aC1xdWljay1jb25uZWN0IiwKICAidXVpZCI6ICJibHVldG9vdGgtcXVpY2stY29ubmVjdEBiamFyb3N6ZS5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzAKfQ=="}, "41": {"version": "30", "sha256": "1sirfmi5dny4lcim6psib5ik5ynvhmms1r7rd5lndx8spv3wgh3i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHRvIGNvbm5lY3QgdG8gcGFpcmVkIGRldmljZXMgZnJvbSBnbm9tZSBjb250cm9sIHBhbmVsLlxuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmx1ZXRvb3RoLXF1aWNrLWNvbm5lY3QiLAogICJuYW1lIjogIkJsdWV0b290aCBRdWljayBDb25uZWN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdWV0b290aC1xdWljay1jb25uZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JqYXJvc3plL2dub21lLWJsdWV0b290aC1xdWljay1jb25uZWN0IiwKICAidXVpZCI6ICJibHVldG9vdGgtcXVpY2stY29ubmVjdEBiamFyb3N6ZS5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzAKfQ=="}, "42": {"version": "30", "sha256": "1sirfmi5dny4lcim6psib5ik5ynvhmms1r7rd5lndx8spv3wgh3i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHRvIGNvbm5lY3QgdG8gcGFpcmVkIGRldmljZXMgZnJvbSBnbm9tZSBjb250cm9sIHBhbmVsLlxuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmx1ZXRvb3RoLXF1aWNrLWNvbm5lY3QiLAogICJuYW1lIjogIkJsdWV0b290aCBRdWljayBDb25uZWN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdWV0b290aC1xdWljay1jb25uZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JqYXJvc3plL2dub21lLWJsdWV0b290aC1xdWljay1jb25uZWN0IiwKICAidXVpZCI6ICJibHVldG9vdGgtcXVpY2stY29ubmVjdEBiamFyb3N6ZS5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzAKfQ=="}, "43": {"version": "30", "sha256": "1sirfmi5dny4lcim6psib5ik5ynvhmms1r7rd5lndx8spv3wgh3i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHRvIGNvbm5lY3QgdG8gcGFpcmVkIGRldmljZXMgZnJvbSBnbm9tZSBjb250cm9sIHBhbmVsLlxuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmx1ZXRvb3RoLXF1aWNrLWNvbm5lY3QiLAogICJuYW1lIjogIkJsdWV0b290aCBRdWljayBDb25uZWN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdWV0b290aC1xdWljay1jb25uZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JqYXJvc3plL2dub21lLWJsdWV0b290aC1xdWljay1jb25uZWN0IiwKICAidXVpZCI6ICJibHVldG9vdGgtcXVpY2stY29ubmVjdEBiamFyb3N6ZS5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzAKfQ=="}}}
-, {"uuid": "syspeek-gs@gs.eros2.info", "name": "SysPeek-GS", "pname": "syspeek-gs", "description": "Minimalistic CPU load monitor widget inspired by SysPeek indicator", "link": "https://extensions.gnome.org/extension/1409/syspeek-gs/", "shell_version_map": {"38": {"version": "10", "sha256": "1hv65wfhd24i773pngr4s5if9n0ailb1lmn9dk01b93nhcxdbynf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltYWxpc3RpYyBDUFUgbG9hZCBtb25pdG9yIHdpZGdldCBpbnNwaXJlZCBieSBTeXNQZWVrIGluZGljYXRvciIsCiAgIm5hbWUiOiAiU3lzUGVlay1HUyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vc3lzcGVlay1ncyIsCiAgInV1aWQiOiAic3lzcGVlay1nc0Bncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDEwCn0="}, "40": {"version": "10", "sha256": "1hv65wfhd24i773pngr4s5if9n0ailb1lmn9dk01b93nhcxdbynf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltYWxpc3RpYyBDUFUgbG9hZCBtb25pdG9yIHdpZGdldCBpbnNwaXJlZCBieSBTeXNQZWVrIGluZGljYXRvciIsCiAgIm5hbWUiOiAiU3lzUGVlay1HUyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vc3lzcGVlay1ncyIsCiAgInV1aWQiOiAic3lzcGVlay1nc0Bncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDEwCn0="}, "41": {"version": "10", "sha256": "1hv65wfhd24i773pngr4s5if9n0ailb1lmn9dk01b93nhcxdbynf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltYWxpc3RpYyBDUFUgbG9hZCBtb25pdG9yIHdpZGdldCBpbnNwaXJlZCBieSBTeXNQZWVrIGluZGljYXRvciIsCiAgIm5hbWUiOiAiU3lzUGVlay1HUyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vc3lzcGVlay1ncyIsCiAgInV1aWQiOiAic3lzcGVlay1nc0Bncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDEwCn0="}, "42": {"version": "10", "sha256": "1hv65wfhd24i773pngr4s5if9n0ailb1lmn9dk01b93nhcxdbynf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltYWxpc3RpYyBDUFUgbG9hZCBtb25pdG9yIHdpZGdldCBpbnNwaXJlZCBieSBTeXNQZWVrIGluZGljYXRvciIsCiAgIm5hbWUiOiAiU3lzUGVlay1HUyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vc3lzcGVlay1ncyIsCiAgInV1aWQiOiAic3lzcGVlay1nc0Bncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
+, {"uuid": "syspeek-gs@gs.eros2.info", "name": "SysPeek-GS", "pname": "syspeek-gs", "description": "Minimalistic CPU load monitor widget inspired by SysPeek indicator", "link": "https://extensions.gnome.org/extension/1409/syspeek-gs/", "shell_version_map": {"38": {"version": "11", "sha256": "1bbx2rqxyc73kmc1l7p8pk70yf72cq1dw6m6fslq89kxxvyk9bh0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltYWxpc3RpYyBDUFUgbG9hZCBtb25pdG9yIHdpZGdldCBpbnNwaXJlZCBieSBTeXNQZWVrIGluZGljYXRvciIsCiAgIm5hbWUiOiAiU3lzUGVlay1HUyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ldWdlbmUtcm9tL3N5c3BlZWstZ3MiLAogICJ1dWlkIjogInN5c3BlZWstZ3NAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiAxMQp9"}, "40": {"version": "11", "sha256": "1bbx2rqxyc73kmc1l7p8pk70yf72cq1dw6m6fslq89kxxvyk9bh0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltYWxpc3RpYyBDUFUgbG9hZCBtb25pdG9yIHdpZGdldCBpbnNwaXJlZCBieSBTeXNQZWVrIGluZGljYXRvciIsCiAgIm5hbWUiOiAiU3lzUGVlay1HUyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ldWdlbmUtcm9tL3N5c3BlZWstZ3MiLAogICJ1dWlkIjogInN5c3BlZWstZ3NAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiAxMQp9"}, "41": {"version": "11", "sha256": "1bbx2rqxyc73kmc1l7p8pk70yf72cq1dw6m6fslq89kxxvyk9bh0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltYWxpc3RpYyBDUFUgbG9hZCBtb25pdG9yIHdpZGdldCBpbnNwaXJlZCBieSBTeXNQZWVrIGluZGljYXRvciIsCiAgIm5hbWUiOiAiU3lzUGVlay1HUyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ldWdlbmUtcm9tL3N5c3BlZWstZ3MiLAogICJ1dWlkIjogInN5c3BlZWstZ3NAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiAxMQp9"}, "42": {"version": "11", "sha256": "1bbx2rqxyc73kmc1l7p8pk70yf72cq1dw6m6fslq89kxxvyk9bh0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltYWxpc3RpYyBDUFUgbG9hZCBtb25pdG9yIHdpZGdldCBpbnNwaXJlZCBieSBTeXNQZWVrIGluZGljYXRvciIsCiAgIm5hbWUiOiAiU3lzUGVlay1HUyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ldWdlbmUtcm9tL3N5c3BlZWstZ3MiLAogICJ1dWlkIjogInN5c3BlZWstZ3NAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiAxMQp9"}, "43": {"version": "11", "sha256": "1bbx2rqxyc73kmc1l7p8pk70yf72cq1dw6m6fslq89kxxvyk9bh0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltYWxpc3RpYyBDUFUgbG9hZCBtb25pdG9yIHdpZGdldCBpbnNwaXJlZCBieSBTeXNQZWVrIGluZGljYXRvciIsCiAgIm5hbWUiOiAiU3lzUGVlay1HUyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ldWdlbmUtcm9tL3N5c3BlZWstZ3MiLAogICJ1dWlkIjogInN5c3BlZWstZ3NAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiAxMQp9"}}}
 , {"uuid": "discrete-brightness@gs.eros2.info", "name": "Discrete brightness", "pname": "discrete-brightness", "description": "Discrete brightness indicator changes brightness in discrete steps, unlike default smooth brightness bar in Gnome Shell. Extension for notebooks/tablets only, default brightness bar must be present in Gnome Shell.", "link": "https://extensions.gnome.org/extension/1410/discrete-brightness/", "shell_version_map": {"38": {"version": "7", "sha256": "0p9ljikhp0l7m2yq0rdr9xkamyrrc4jdcnicbq8qli2zfj5n97g2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2NyZXRlIGJyaWdodG5lc3MgaW5kaWNhdG9yIGNoYW5nZXMgYnJpZ2h0bmVzcyBpbiBkaXNjcmV0ZSBzdGVwcywgdW5saWtlIGRlZmF1bHQgc21vb3RoIGJyaWdodG5lc3MgYmFyIGluIEdub21lIFNoZWxsLiBFeHRlbnNpb24gZm9yIG5vdGVib29rcy90YWJsZXRzIG9ubHksIGRlZmF1bHQgYnJpZ2h0bmVzcyBiYXIgbXVzdCBiZSBwcmVzZW50IGluIEdub21lIFNoZWxsLiIsCiAgIm5hbWUiOiAiRGlzY3JldGUgYnJpZ2h0bmVzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vZGlzY3JldGUtYnJpZ2h0bmVzcyIsCiAgInV1aWQiOiAiZGlzY3JldGUtYnJpZ2h0bmVzc0Bncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "0p9ljikhp0l7m2yq0rdr9xkamyrrc4jdcnicbq8qli2zfj5n97g2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2NyZXRlIGJyaWdodG5lc3MgaW5kaWNhdG9yIGNoYW5nZXMgYnJpZ2h0bmVzcyBpbiBkaXNjcmV0ZSBzdGVwcywgdW5saWtlIGRlZmF1bHQgc21vb3RoIGJyaWdodG5lc3MgYmFyIGluIEdub21lIFNoZWxsLiBFeHRlbnNpb24gZm9yIG5vdGVib29rcy90YWJsZXRzIG9ubHksIGRlZmF1bHQgYnJpZ2h0bmVzcyBiYXIgbXVzdCBiZSBwcmVzZW50IGluIEdub21lIFNoZWxsLiIsCiAgIm5hbWUiOiAiRGlzY3JldGUgYnJpZ2h0bmVzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vZGlzY3JldGUtYnJpZ2h0bmVzcyIsCiAgInV1aWQiOiAiZGlzY3JldGUtYnJpZ2h0bmVzc0Bncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "41": {"version": "7", "sha256": "0p9ljikhp0l7m2yq0rdr9xkamyrrc4jdcnicbq8qli2zfj5n97g2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2NyZXRlIGJyaWdodG5lc3MgaW5kaWNhdG9yIGNoYW5nZXMgYnJpZ2h0bmVzcyBpbiBkaXNjcmV0ZSBzdGVwcywgdW5saWtlIGRlZmF1bHQgc21vb3RoIGJyaWdodG5lc3MgYmFyIGluIEdub21lIFNoZWxsLiBFeHRlbnNpb24gZm9yIG5vdGVib29rcy90YWJsZXRzIG9ubHksIGRlZmF1bHQgYnJpZ2h0bmVzcyBiYXIgbXVzdCBiZSBwcmVzZW50IGluIEdub21lIFNoZWxsLiIsCiAgIm5hbWUiOiAiRGlzY3JldGUgYnJpZ2h0bmVzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vZGlzY3JldGUtYnJpZ2h0bmVzcyIsCiAgInV1aWQiOiAiZGlzY3JldGUtYnJpZ2h0bmVzc0Bncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "42": {"version": "7", "sha256": "0p9ljikhp0l7m2yq0rdr9xkamyrrc4jdcnicbq8qli2zfj5n97g2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2NyZXRlIGJyaWdodG5lc3MgaW5kaWNhdG9yIGNoYW5nZXMgYnJpZ2h0bmVzcyBpbiBkaXNjcmV0ZSBzdGVwcywgdW5saWtlIGRlZmF1bHQgc21vb3RoIGJyaWdodG5lc3MgYmFyIGluIEdub21lIFNoZWxsLiBFeHRlbnNpb24gZm9yIG5vdGVib29rcy90YWJsZXRzIG9ubHksIGRlZmF1bHQgYnJpZ2h0bmVzcyBiYXIgbXVzdCBiZSBwcmVzZW50IGluIEdub21lIFNoZWxsLiIsCiAgIm5hbWUiOiAiRGlzY3JldGUgYnJpZ2h0bmVzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vZGlzY3JldGUtYnJpZ2h0bmVzcyIsCiAgInV1aWQiOiAiZGlzY3JldGUtYnJpZ2h0bmVzc0Bncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
 , {"uuid": "quake-mode@repsac-by.github.com", "name": "quake-mode", "pname": "quake-mode", "description": "Drop-down mode for any application", "link": "https://extensions.gnome.org/extension/1411/quake-mode/", "shell_version_map": {"38": {"version": "3", "sha256": "17498v2jw85fhrsldvgnj3x01h00wqarsp9zqp6ym4h7syzbjxrw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRyb3AtZG93biBtb2RlIGZvciBhbnkgYXBwbGljYXRpb24iLAogICJuYW1lIjogInF1YWtlLW1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yZXBzYWMtYnkvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXF1YWtlLW1vZGUiLAogICJ1dWlkIjogInF1YWtlLW1vZGVAcmVwc2FjLWJ5LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "7", "sha256": "04crfzkw1dl52v899axpx7igkhdk0v1b0jrhagd9hvqbcxz9zgiy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRyb3AtZG93biBtb2RlIGZvciBhbnkgYXBwbGljYXRpb24iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJxdWFrZS1tb2RlQHJlcHNhYy1ieS5naXRodWIuY29tIiwKICAibmFtZSI6ICJxdWFrZS1tb2RlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogImNvbS5naXRodWIucmVwc2FjLWJ5LnF1YWtlLW1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yZXBzYWMtYnkvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXF1YWtlLW1vZGUiLAogICJ1dWlkIjogInF1YWtlLW1vZGVAcmVwc2FjLWJ5LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}, "41": {"version": "7", "sha256": "04crfzkw1dl52v899axpx7igkhdk0v1b0jrhagd9hvqbcxz9zgiy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRyb3AtZG93biBtb2RlIGZvciBhbnkgYXBwbGljYXRpb24iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJxdWFrZS1tb2RlQHJlcHNhYy1ieS5naXRodWIuY29tIiwKICAibmFtZSI6ICJxdWFrZS1tb2RlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogImNvbS5naXRodWIucmVwc2FjLWJ5LnF1YWtlLW1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yZXBzYWMtYnkvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXF1YWtlLW1vZGUiLAogICJ1dWlkIjogInF1YWtlLW1vZGVAcmVwc2FjLWJ5LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}, "42": {"version": "7", "sha256": "04crfzkw1dl52v899axpx7igkhdk0v1b0jrhagd9hvqbcxz9zgiy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRyb3AtZG93biBtb2RlIGZvciBhbnkgYXBwbGljYXRpb24iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJxdWFrZS1tb2RlQHJlcHNhYy1ieS5naXRodWIuY29tIiwKICAibmFtZSI6ICJxdWFrZS1tb2RlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogImNvbS5naXRodWIucmVwc2FjLWJ5LnF1YWtlLW1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yZXBzYWMtYnkvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXF1YWtlLW1vZGUiLAogICJ1dWlkIjogInF1YWtlLW1vZGVAcmVwc2FjLWJ5LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}}}
 , {"uuid": "unblank@sun.wxg@gmail.com", "name": "Unblank lock screen", "pname": "unblank", "description": "Unblank lock screen.", "link": "https://extensions.gnome.org/extension/1414/unblank/", "shell_version_map": {"38": {"version": "20", "sha256": "0fb2vbjgl93a0maw9wxw1x47ndfg40gf087rmfk7lgxr8b6vp9si", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuYmxhbmsgbG9jayBzY3JlZW4uIiwKICAibmFtZSI6ICJVbmJsYW5rIGxvY2sgc2NyZWVuIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdW5ibGFuayIsCiAgInV1aWQiOiAidW5ibGFua0BzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyMAp9"}, "40": {"version": "22", "sha256": "1kb7l1q7dvz5z5xrmhgm48jabblh81n8cm34ck711psy4rv1ljy2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuYmxhbmsgbG9jayBzY3JlZW4uIiwKICAibmFtZSI6ICJVbmJsYW5rIGxvY2sgc2NyZWVuIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdW53eGcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXVuYmxhbmsiLAogICJ1dWlkIjogInVuYmxhbmtAc3VuLnd4Z0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjIKfQ=="}, "41": {"version": "28", "sha256": "1b5711g0amd1v1fdbw473zls4xxrqwqnphz829d0whgxmv3dda0n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuYmxhbmsgbG9jayBzY3JlZW4uIiwKICAibmFtZSI6ICJVbmJsYW5rIGxvY2sgc2NyZWVuIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdW5ibGFuayIsCiAgInV1aWQiOiAidW5ibGFua0BzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyOAp9"}, "42": {"version": "28", "sha256": "1b5711g0amd1v1fdbw473zls4xxrqwqnphz829d0whgxmv3dda0n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuYmxhbmsgbG9jayBzY3JlZW4uIiwKICAibmFtZSI6ICJVbmJsYW5rIGxvY2sgc2NyZWVuIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdW5ibGFuayIsCiAgInV1aWQiOiAidW5ibGFua0BzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyOAp9"}, "43": {"version": "28", "sha256": "1b5711g0amd1v1fdbw473zls4xxrqwqnphz829d0whgxmv3dda0n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuYmxhbmsgbG9jayBzY3JlZW4uIiwKICAibmFtZSI6ICJVbmJsYW5rIGxvY2sgc2NyZWVuIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdW5ibGFuayIsCiAgInV1aWQiOiAidW5ibGFua0BzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyOAp9"}}}
-, {"uuid": "vbox-applet@gs.eros2.info", "name": "VirtualBox applet", "pname": "virtualbox-applet", "description": "Provide menu to run VirtualBox machines and switch between running VMs", "link": "https://extensions.gnome.org/extension/1415/virtualbox-applet/", "shell_version_map": {"38": {"version": "11", "sha256": "0sw84xiz1r2i0iza76ybywd9mcw0npgls08hzms4kl4fpbd1g3ym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgbWVudSB0byBydW4gVmlydHVhbEJveCBtYWNoaW5lcyBhbmQgc3dpdGNoIGJldHdlZW4gcnVubmluZyBWTXMiLAogICJuYW1lIjogIlZpcnR1YWxCb3ggYXBwbGV0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnZib3gtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZXVnZW5lLXJvbS92Ym94LWFwcGxldCIsCiAgInV1aWQiOiAidmJveC1hcHBsZXRAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiAxMQp9"}, "40": {"version": "11", "sha256": "0sw84xiz1r2i0iza76ybywd9mcw0npgls08hzms4kl4fpbd1g3ym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgbWVudSB0byBydW4gVmlydHVhbEJveCBtYWNoaW5lcyBhbmQgc3dpdGNoIGJldHdlZW4gcnVubmluZyBWTXMiLAogICJuYW1lIjogIlZpcnR1YWxCb3ggYXBwbGV0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnZib3gtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZXVnZW5lLXJvbS92Ym94LWFwcGxldCIsCiAgInV1aWQiOiAidmJveC1hcHBsZXRAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiAxMQp9"}, "41": {"version": "11", "sha256": "0sw84xiz1r2i0iza76ybywd9mcw0npgls08hzms4kl4fpbd1g3ym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgbWVudSB0byBydW4gVmlydHVhbEJveCBtYWNoaW5lcyBhbmQgc3dpdGNoIGJldHdlZW4gcnVubmluZyBWTXMiLAogICJuYW1lIjogIlZpcnR1YWxCb3ggYXBwbGV0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnZib3gtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZXVnZW5lLXJvbS92Ym94LWFwcGxldCIsCiAgInV1aWQiOiAidmJveC1hcHBsZXRAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiAxMQp9"}, "42": {"version": "11", "sha256": "0sw84xiz1r2i0iza76ybywd9mcw0npgls08hzms4kl4fpbd1g3ym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgbWVudSB0byBydW4gVmlydHVhbEJveCBtYWNoaW5lcyBhbmQgc3dpdGNoIGJldHdlZW4gcnVubmluZyBWTXMiLAogICJuYW1lIjogIlZpcnR1YWxCb3ggYXBwbGV0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnZib3gtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZXVnZW5lLXJvbS92Ym94LWFwcGxldCIsCiAgInV1aWQiOiAidmJveC1hcHBsZXRAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiAxMQp9"}}}
+, {"uuid": "vbox-applet@gs.eros2.info", "name": "VirtualBox applet", "pname": "virtualbox-applet", "description": "Provide menu to run VirtualBox machines and switch between running VMs", "link": "https://extensions.gnome.org/extension/1415/virtualbox-applet/", "shell_version_map": {"38": {"version": "12", "sha256": "0wif2rich05glghx1d7c1hj5pxyf7bv95mfzkfxrv0zw8d5g6nvb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgbWVudSB0byBydW4gVmlydHVhbEJveCBtYWNoaW5lcyBhbmQgc3dpdGNoIGJldHdlZW4gcnVubmluZyBWTXMiLAogICJuYW1lIjogIlZpcnR1YWxCb3ggYXBwbGV0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnZib3gtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vdmJveC1hcHBsZXQiLAogICJ1dWlkIjogInZib3gtYXBwbGV0QGdzLmVyb3MyLmluZm8iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "40": {"version": "12", "sha256": "0wif2rich05glghx1d7c1hj5pxyf7bv95mfzkfxrv0zw8d5g6nvb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgbWVudSB0byBydW4gVmlydHVhbEJveCBtYWNoaW5lcyBhbmQgc3dpdGNoIGJldHdlZW4gcnVubmluZyBWTXMiLAogICJuYW1lIjogIlZpcnR1YWxCb3ggYXBwbGV0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnZib3gtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vdmJveC1hcHBsZXQiLAogICJ1dWlkIjogInZib3gtYXBwbGV0QGdzLmVyb3MyLmluZm8iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "41": {"version": "12", "sha256": "0wif2rich05glghx1d7c1hj5pxyf7bv95mfzkfxrv0zw8d5g6nvb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgbWVudSB0byBydW4gVmlydHVhbEJveCBtYWNoaW5lcyBhbmQgc3dpdGNoIGJldHdlZW4gcnVubmluZyBWTXMiLAogICJuYW1lIjogIlZpcnR1YWxCb3ggYXBwbGV0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnZib3gtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vdmJveC1hcHBsZXQiLAogICJ1dWlkIjogInZib3gtYXBwbGV0QGdzLmVyb3MyLmluZm8iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "42": {"version": "12", "sha256": "0wif2rich05glghx1d7c1hj5pxyf7bv95mfzkfxrv0zw8d5g6nvb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgbWVudSB0byBydW4gVmlydHVhbEJveCBtYWNoaW5lcyBhbmQgc3dpdGNoIGJldHdlZW4gcnVubmluZyBWTXMiLAogICJuYW1lIjogIlZpcnR1YWxCb3ggYXBwbGV0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnZib3gtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vdmJveC1hcHBsZXQiLAogICJ1dWlkIjogInZib3gtYXBwbGV0QGdzLmVyb3MyLmluZm8iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "43": {"version": "12", "sha256": "0wif2rich05glghx1d7c1hj5pxyf7bv95mfzkfxrv0zw8d5g6nvb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgbWVudSB0byBydW4gVmlydHVhbEJveCBtYWNoaW5lcyBhbmQgc3dpdGNoIGJldHdlZW4gcnVubmluZyBWTXMiLAogICJuYW1lIjogIlZpcnR1YWxCb3ggYXBwbGV0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnZib3gtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vdmJveC1hcHBsZXQiLAogICJ1dWlkIjogInZib3gtYXBwbGV0QGdzLmVyb3MyLmluZm8iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}}}
 , {"uuid": "stocks@infinicode.de", "name": "Stocks Extension", "pname": "stocks-extension", "description": "Stocks Extension brings stock quotes to your GNOME Shell Panel", "link": "https://extensions.gnome.org/extension/1422/stocks-extension/", "shell_version_map": {"38": {"version": "19", "sha256": "1414cksayqpv0w0q632yi33ifqlwyfggwf684aci6qj81fs644y2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN0b2NrcyBFeHRlbnNpb24gYnJpbmdzIHN0b2NrIHF1b3RlcyB0byB5b3VyIEdOT01FIFNoZWxsIFBhbmVsIiwKICAibG9jYWxlZGlyIjogIi91c3IvbG9jYWwvc2hhcmUvbG9jYWxlIiwKICAibmFtZSI6ICJTdG9ja3MgRXh0ZW5zaW9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NpbmF0aWMvc3RvY2tzLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAic3RvY2tzQGluZmluaWNvZGUuZGUiLAogICJ2ZXJzaW9uIjogMTkKfQ=="}, "40": {"version": "19", "sha256": "1414cksayqpv0w0q632yi33ifqlwyfggwf684aci6qj81fs644y2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN0b2NrcyBFeHRlbnNpb24gYnJpbmdzIHN0b2NrIHF1b3RlcyB0byB5b3VyIEdOT01FIFNoZWxsIFBhbmVsIiwKICAibG9jYWxlZGlyIjogIi91c3IvbG9jYWwvc2hhcmUvbG9jYWxlIiwKICAibmFtZSI6ICJTdG9ja3MgRXh0ZW5zaW9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NpbmF0aWMvc3RvY2tzLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAic3RvY2tzQGluZmluaWNvZGUuZGUiLAogICJ2ZXJzaW9uIjogMTkKfQ=="}, "42": {"version": "24", "sha256": "18d34l47mf4v04kd0vx8ljyfwlrr9jjygi5hl526v1bddyz8xy5r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN0b2NrcyBFeHRlbnNpb24gYnJpbmdzIHN0b2NrIHF1b3RlcyB0byB5b3VyIEdOT01FIFNoZWxsIFBhbmVsIiwKICAiZ2V0dGV4dC1kb21haW4iOiAic3RvY2tzQGluZmluaWNvZGUuZGUiLAogICJsb2NhbGVkaXIiOiAiL3Vzci9sb2NhbC9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlN0b2NrcyBFeHRlbnNpb24iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3RvY2tzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NpbmF0aWMvc3RvY2tzLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAic3RvY2tzQGluZmluaWNvZGUuZGUiLAogICJ2ZXJzaW9uIjogMjQKfQ=="}}}
 , {"uuid": "showtime@xenlism.github.io", "name": "Showtime  - Desktop Widget", "pname": "showtime", "description": "Date &amp;amp;amp;amp;amp;amp;amp; Clock Desktop Widget\n\nMove Widget by Press Super + Drag Widget\nhttps://github.com/xenlism/showtime", "link": "https://extensions.gnome.org/extension/1429/showtime/", "shell_version_map": {"38": {"version": "4", "sha256": "12k6spjhg2ykgh5x3mily0dps450pyj9vyv1bay5w919y9swplaf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRhdGUgJmFtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDsgQ2xvY2sgRGVza3RvcCBXaWRnZXRcblxuTW92ZSBXaWRnZXQgYnkgUHJlc3MgU3VwZXIgKyBEcmFnIFdpZGdldFxuaHR0cHM6Ly9naXRodWIuY29tL3hlbmxpc20vc2hvd3RpbWUiLAogICJuYW1lIjogIlNob3d0aW1lICAtIERlc2t0b3AgV2lkZ2V0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNob3d0aW1lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20veGVubGlzbS9zaG93dGltZSIsCiAgInV1aWQiOiAic2hvd3RpbWVAeGVubGlzbS5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNAp9"}, "40": {"version": "5", "sha256": "0p10as2k6lkh3vj5860hvmj98by18ih8r2k7y36iqrxqpl3s8fd4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRhdGUgJmFtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDsgQ2xvY2sgRGVza3RvcCBXaWRnZXRcblxuTW92ZSBXaWRnZXQgYnkgUHJlc3MgU3VwZXIgKyBEcmFnIFdpZGdldFxuaHR0cHM6Ly9naXRodWIuY29tL3hlbmxpc20vc2hvd3RpbWUiLAogICJuYW1lIjogIlNob3d0aW1lICAtIERlc2t0b3AgV2lkZ2V0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNob3d0aW1lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3hlbmxpc20vc2hvd3RpbWUiLAogICJ1dWlkIjogInNob3d0aW1lQHhlbmxpc20uZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
 , {"uuid": "Current_screen_only_for_Alternate_Tab@bourcereau.fr", "name": "Current screen only on window switcher", "pname": "current-screen-only-for-alternate-tab", "description": "Limits the windows shown on the switcher to those of the current monitor", "link": "https://extensions.gnome.org/extension/1437/current-screen-only-for-alternate-tab/", "shell_version_map": {"40": {"version": "9", "sha256": "1808015iaci5pknzdcgh0icakxd2wmina10winii7hf644gxjcdd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpbWl0cyB0aGUgd2luZG93cyBzaG93biBvbiB0aGUgc3dpdGNoZXIgdG8gdGhvc2Ugb2YgdGhlIGN1cnJlbnQgbW9uaXRvciIsCiAgIm5hbWUiOiAiQ3VycmVudCBzY3JlZW4gb25seSBvbiB3aW5kb3cgc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzIiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tbWFpL0N1cnJlbnRfc2NyZWVuX29ubHlfb25fd2luZG93X3N3aXRjaGVyIiwKICAidXVpZCI6ICJDdXJyZW50X3NjcmVlbl9vbmx5X2Zvcl9BbHRlcm5hdGVfVGFiQGJvdXJjZXJlYXUuZnIiLAogICJ2ZXJzaW9uIjogOQp9"}, "41": {"version": "9", "sha256": "1808015iaci5pknzdcgh0icakxd2wmina10winii7hf644gxjcdd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpbWl0cyB0aGUgd2luZG93cyBzaG93biBvbiB0aGUgc3dpdGNoZXIgdG8gdGhvc2Ugb2YgdGhlIGN1cnJlbnQgbW9uaXRvciIsCiAgIm5hbWUiOiAiQ3VycmVudCBzY3JlZW4gb25seSBvbiB3aW5kb3cgc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzIiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tbWFpL0N1cnJlbnRfc2NyZWVuX29ubHlfb25fd2luZG93X3N3aXRjaGVyIiwKICAidXVpZCI6ICJDdXJyZW50X3NjcmVlbl9vbmx5X2Zvcl9BbHRlcm5hdGVfVGFiQGJvdXJjZXJlYXUuZnIiLAogICJ2ZXJzaW9uIjogOQp9"}, "42": {"version": "9", "sha256": "1808015iaci5pknzdcgh0icakxd2wmina10winii7hf644gxjcdd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpbWl0cyB0aGUgd2luZG93cyBzaG93biBvbiB0aGUgc3dpdGNoZXIgdG8gdGhvc2Ugb2YgdGhlIGN1cnJlbnQgbW9uaXRvciIsCiAgIm5hbWUiOiAiQ3VycmVudCBzY3JlZW4gb25seSBvbiB3aW5kb3cgc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzIiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tbWFpL0N1cnJlbnRfc2NyZWVuX29ubHlfb25fd2luZG93X3N3aXRjaGVyIiwKICAidXVpZCI6ICJDdXJyZW50X3NjcmVlbl9vbmx5X2Zvcl9BbHRlcm5hdGVfVGFiQGJvdXJjZXJlYXUuZnIiLAogICJ2ZXJzaW9uIjogOQp9"}}}
@@ -197,7 +197,7 @@
 , {"uuid": "transparent-window@pbxqdown.github.com", "name": "Transparent Window", "pname": "transparent-window", "description": "Change the opacity of windows by compiz-style shortcut Alt+scroll.\nYou can customize hotkey in Preference page if Alt key doesn't work.", "link": "https://extensions.gnome.org/extension/1454/transparent-window/", "shell_version_map": {"38": {"version": "11", "sha256": "07qn7hwpv8pzwbgw60mr87ww10mwcz8x8w3d4gq4zszgynw63nbq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB0aGUgb3BhY2l0eSBvZiB3aW5kb3dzIGJ5IGNvbXBpei1zdHlsZSBzaG9ydGN1dCBBbHQrc2Nyb2xsLlxuWW91IGNhbiBjdXN0b21pemUgaG90a2V5IGluIFByZWZlcmVuY2UgcGFnZSBpZiBBbHQga2V5IGRvZXNuJ3Qgd29yay4iLAogICJuYW1lIjogIlRyYW5zcGFyZW50IFdpbmRvdyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5UcmFuc3BhcmVudFdpbmRvdyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOC4xIiwKICAgICIzLjM2LjEiLAogICAgIjMuMzguMSIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiMy4zOC40IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcGJ4cWRvd24vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRyYW5zcGFyZW50LXdpbmRvdyIsCiAgInV1aWQiOiAidHJhbnNwYXJlbnQtd2luZG93QHBieHFkb3duLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "40": {"version": "11", "sha256": "07qn7hwpv8pzwbgw60mr87ww10mwcz8x8w3d4gq4zszgynw63nbq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB0aGUgb3BhY2l0eSBvZiB3aW5kb3dzIGJ5IGNvbXBpei1zdHlsZSBzaG9ydGN1dCBBbHQrc2Nyb2xsLlxuWW91IGNhbiBjdXN0b21pemUgaG90a2V5IGluIFByZWZlcmVuY2UgcGFnZSBpZiBBbHQga2V5IGRvZXNuJ3Qgd29yay4iLAogICJuYW1lIjogIlRyYW5zcGFyZW50IFdpbmRvdyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5UcmFuc3BhcmVudFdpbmRvdyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOC4xIiwKICAgICIzLjM2LjEiLAogICAgIjMuMzguMSIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiMy4zOC40IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcGJ4cWRvd24vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRyYW5zcGFyZW50LXdpbmRvdyIsCiAgInV1aWQiOiAidHJhbnNwYXJlbnQtd2luZG93QHBieHFkb3duLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "41": {"version": "11", "sha256": "07qn7hwpv8pzwbgw60mr87ww10mwcz8x8w3d4gq4zszgynw63nbq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB0aGUgb3BhY2l0eSBvZiB3aW5kb3dzIGJ5IGNvbXBpei1zdHlsZSBzaG9ydGN1dCBBbHQrc2Nyb2xsLlxuWW91IGNhbiBjdXN0b21pemUgaG90a2V5IGluIFByZWZlcmVuY2UgcGFnZSBpZiBBbHQga2V5IGRvZXNuJ3Qgd29yay4iLAogICJuYW1lIjogIlRyYW5zcGFyZW50IFdpbmRvdyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5UcmFuc3BhcmVudFdpbmRvdyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOC4xIiwKICAgICIzLjM2LjEiLAogICAgIjMuMzguMSIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiMy4zOC40IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcGJ4cWRvd24vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRyYW5zcGFyZW50LXdpbmRvdyIsCiAgInV1aWQiOiAidHJhbnNwYXJlbnQtd2luZG93QHBieHFkb3duLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "42": {"version": "11", "sha256": "07qn7hwpv8pzwbgw60mr87ww10mwcz8x8w3d4gq4zszgynw63nbq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB0aGUgb3BhY2l0eSBvZiB3aW5kb3dzIGJ5IGNvbXBpei1zdHlsZSBzaG9ydGN1dCBBbHQrc2Nyb2xsLlxuWW91IGNhbiBjdXN0b21pemUgaG90a2V5IGluIFByZWZlcmVuY2UgcGFnZSBpZiBBbHQga2V5IGRvZXNuJ3Qgd29yay4iLAogICJuYW1lIjogIlRyYW5zcGFyZW50IFdpbmRvdyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5UcmFuc3BhcmVudFdpbmRvdyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOC4xIiwKICAgICIzLjM2LjEiLAogICAgIjMuMzguMSIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiMy4zOC40IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcGJ4cWRvd24vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRyYW5zcGFyZW50LXdpbmRvdyIsCiAgInV1aWQiOiAidHJhbnNwYXJlbnQtd2luZG93QHBieHFkb3duLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}}}
 , {"uuid": "miniview@thesecretaryofwar.com", "name": "Miniview", "pname": "miniview", "description": "Mini preview of another window (like picture-in-picture on a TV)\n- Left-mouse drag: move preview window\n- Right-mouse drag (or ctrl + left mouse drag): resize preview window\n- Scroll wheel (or shift + click): change target window\n- Double click: raise target window\n- Shift + F12: toggle preview window (this can be changed or disabled in preferences)\n- Ctrl + scroll wheel: adjust opacity", "link": "https://extensions.gnome.org/extension/1459/miniview/", "shell_version_map": {"38": {"version": "13", "sha256": "135mg4d49cm6ba72z9174kv31y49wpvlfddh04pmbj2cy95wai46", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmkgcHJldmlldyBvZiBhbm90aGVyIHdpbmRvdyAobGlrZSBwaWN0dXJlLWluLXBpY3R1cmUgb24gYSBUVilcbi0gTGVmdC1tb3VzZSBkcmFnOiBtb3ZlIHByZXZpZXcgd2luZG93XG4tIFJpZ2h0LW1vdXNlIGRyYWcgKG9yIGN0cmwgKyBsZWZ0IG1vdXNlIGRyYWcpOiByZXNpemUgcHJldmlldyB3aW5kb3dcbi0gU2Nyb2xsIHdoZWVsIChvciBzaGlmdCArIGNsaWNrKTogY2hhbmdlIHRhcmdldCB3aW5kb3dcbi0gRG91YmxlIGNsaWNrOiByYWlzZSB0YXJnZXQgd2luZG93XG4tIFNoaWZ0ICsgRjEyOiB0b2dnbGUgcHJldmlldyB3aW5kb3cgKHRoaXMgY2FuIGJlIGNoYW5nZWQgb3IgZGlzYWJsZWQgaW4gcHJlZmVyZW5jZXMpXG4tIEN0cmwgKyBzY3JvbGwgd2hlZWw6IGFkanVzdCBvcGFjaXR5IiwKICAiZXh0ZW5zaW9uLWlkIjogIm1pbml2aWV3IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiTWluaXZpZXciLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgInRoZXNlY3JldGFyeW9md2FyQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubWluaXZpZXciLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pYW1sZW1lYy9taW5pdmlldyIsCiAgInV1aWQiOiAibWluaXZpZXdAdGhlc2VjcmV0YXJ5b2Z3YXIuY29tIiwKICAidmVyc2lvbiI6IDEzCn0="}, "40": {"version": "14", "sha256": "0ylnjpwvdzxsdh68k197rk5dhv1211vcrjhc5w9k39hd2mdhw4ch", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmkgcHJldmlldyBvZiBhbm90aGVyIHdpbmRvdyAobGlrZSBwaWN0dXJlLWluLXBpY3R1cmUgb24gYSBUVilcbi0gTGVmdC1tb3VzZSBkcmFnOiBtb3ZlIHByZXZpZXcgd2luZG93XG4tIFJpZ2h0LW1vdXNlIGRyYWcgKG9yIGN0cmwgKyBsZWZ0IG1vdXNlIGRyYWcpOiByZXNpemUgcHJldmlldyB3aW5kb3dcbi0gU2Nyb2xsIHdoZWVsIChvciBzaGlmdCArIGNsaWNrKTogY2hhbmdlIHRhcmdldCB3aW5kb3dcbi0gRG91YmxlIGNsaWNrOiByYWlzZSB0YXJnZXQgd2luZG93XG4tIFNoaWZ0ICsgRjEyOiB0b2dnbGUgcHJldmlldyB3aW5kb3cgKHRoaXMgY2FuIGJlIGNoYW5nZWQgb3IgZGlzYWJsZWQgaW4gcHJlZmVyZW5jZXMpXG4tIEN0cmwgKyBzY3JvbGwgd2hlZWw6IGFkanVzdCBvcGFjaXR5IiwKICAiZXh0ZW5zaW9uLWlkIjogIm1pbml2aWV3IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiTWluaXZpZXciLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgInRoZXNlY3JldGFyeW9md2FyQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubWluaXZpZXciLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pYW1sZW1lYy9taW5pdmlldyIsCiAgInV1aWQiOiAibWluaXZpZXdAdGhlc2VjcmV0YXJ5b2Z3YXIuY29tIiwKICAidmVyc2lvbiI6IDE0Cn0="}, "41": {"version": "14", "sha256": "0ylnjpwvdzxsdh68k197rk5dhv1211vcrjhc5w9k39hd2mdhw4ch", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmkgcHJldmlldyBvZiBhbm90aGVyIHdpbmRvdyAobGlrZSBwaWN0dXJlLWluLXBpY3R1cmUgb24gYSBUVilcbi0gTGVmdC1tb3VzZSBkcmFnOiBtb3ZlIHByZXZpZXcgd2luZG93XG4tIFJpZ2h0LW1vdXNlIGRyYWcgKG9yIGN0cmwgKyBsZWZ0IG1vdXNlIGRyYWcpOiByZXNpemUgcHJldmlldyB3aW5kb3dcbi0gU2Nyb2xsIHdoZWVsIChvciBzaGlmdCArIGNsaWNrKTogY2hhbmdlIHRhcmdldCB3aW5kb3dcbi0gRG91YmxlIGNsaWNrOiByYWlzZSB0YXJnZXQgd2luZG93XG4tIFNoaWZ0ICsgRjEyOiB0b2dnbGUgcHJldmlldyB3aW5kb3cgKHRoaXMgY2FuIGJlIGNoYW5nZWQgb3IgZGlzYWJsZWQgaW4gcHJlZmVyZW5jZXMpXG4tIEN0cmwgKyBzY3JvbGwgd2hlZWw6IGFkanVzdCBvcGFjaXR5IiwKICAiZXh0ZW5zaW9uLWlkIjogIm1pbml2aWV3IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiTWluaXZpZXciLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgInRoZXNlY3JldGFyeW9md2FyQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubWluaXZpZXciLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pYW1sZW1lYy9taW5pdmlldyIsCiAgInV1aWQiOiAibWluaXZpZXdAdGhlc2VjcmV0YXJ5b2Z3YXIuY29tIiwKICAidmVyc2lvbiI6IDE0Cn0="}, "42": {"version": "14", "sha256": "0ylnjpwvdzxsdh68k197rk5dhv1211vcrjhc5w9k39hd2mdhw4ch", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmkgcHJldmlldyBvZiBhbm90aGVyIHdpbmRvdyAobGlrZSBwaWN0dXJlLWluLXBpY3R1cmUgb24gYSBUVilcbi0gTGVmdC1tb3VzZSBkcmFnOiBtb3ZlIHByZXZpZXcgd2luZG93XG4tIFJpZ2h0LW1vdXNlIGRyYWcgKG9yIGN0cmwgKyBsZWZ0IG1vdXNlIGRyYWcpOiByZXNpemUgcHJldmlldyB3aW5kb3dcbi0gU2Nyb2xsIHdoZWVsIChvciBzaGlmdCArIGNsaWNrKTogY2hhbmdlIHRhcmdldCB3aW5kb3dcbi0gRG91YmxlIGNsaWNrOiByYWlzZSB0YXJnZXQgd2luZG93XG4tIFNoaWZ0ICsgRjEyOiB0b2dnbGUgcHJldmlldyB3aW5kb3cgKHRoaXMgY2FuIGJlIGNoYW5nZWQgb3IgZGlzYWJsZWQgaW4gcHJlZmVyZW5jZXMpXG4tIEN0cmwgKyBzY3JvbGwgd2hlZWw6IGFkanVzdCBvcGFjaXR5IiwKICAiZXh0ZW5zaW9uLWlkIjogIm1pbml2aWV3IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiTWluaXZpZXciLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgInRoZXNlY3JldGFyeW9md2FyQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubWluaXZpZXciLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pYW1sZW1lYy9taW5pdmlldyIsCiAgInV1aWQiOiAibWluaXZpZXdAdGhlc2VjcmV0YXJ5b2Z3YXIuY29tIiwKICAidmVyc2lvbiI6IDE0Cn0="}}}
 , {"uuid": "Vitals@CoreCoding.com", "name": "Vitals", "pname": "vitals", "description": "A glimpse into your computer's temperature, voltage, fan speed, memory usage, processor load, system resources, network speed and storage stats. This is a one stop shop to monitor all of your vital sensors. Uses asynchronous polling to provide a smooth user experience. Feature requests or bugs? Please use GitHub.", "link": "https://extensions.gnome.org/extension/1460/vitals/", "shell_version_map": {"38": {"version": "57", "sha256": "1q6h9pc1d31993v5knnb7c4224h6f7x1jida2xnwi0047nz5b8zn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ2xpbXBzZSBpbnRvIHlvdXIgY29tcHV0ZXIncyB0ZW1wZXJhdHVyZSwgdm9sdGFnZSwgZmFuIHNwZWVkLCBtZW1vcnkgdXNhZ2UsIHByb2Nlc3NvciBsb2FkLCBzeXN0ZW0gcmVzb3VyY2VzLCBuZXR3b3JrIHNwZWVkIGFuZCBzdG9yYWdlIHN0YXRzLiBUaGlzIGlzIGEgb25lIHN0b3Agc2hvcCB0byBtb25pdG9yIGFsbCBvZiB5b3VyIHZpdGFsIHNlbnNvcnMuIFVzZXMgYXN5bmNocm9ub3VzIHBvbGxpbmcgdG8gcHJvdmlkZSBhIHNtb290aCB1c2VyIGV4cGVyaWVuY2UuIEZlYXR1cmUgcmVxdWVzdHMgb3IgYnVncz8gUGxlYXNlIHVzZSBHaXRIdWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidml0YWxzIiwKICAibmFtZSI6ICJWaXRhbHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudml0YWxzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NvcmVjb2RpbmcvVml0YWxzIiwKICAidXVpZCI6ICJWaXRhbHNAQ29yZUNvZGluZy5jb20iLAogICJ2ZXJzaW9uIjogNTcKfQ=="}, "40": {"version": "57", "sha256": "1q6h9pc1d31993v5knnb7c4224h6f7x1jida2xnwi0047nz5b8zn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ2xpbXBzZSBpbnRvIHlvdXIgY29tcHV0ZXIncyB0ZW1wZXJhdHVyZSwgdm9sdGFnZSwgZmFuIHNwZWVkLCBtZW1vcnkgdXNhZ2UsIHByb2Nlc3NvciBsb2FkLCBzeXN0ZW0gcmVzb3VyY2VzLCBuZXR3b3JrIHNwZWVkIGFuZCBzdG9yYWdlIHN0YXRzLiBUaGlzIGlzIGEgb25lIHN0b3Agc2hvcCB0byBtb25pdG9yIGFsbCBvZiB5b3VyIHZpdGFsIHNlbnNvcnMuIFVzZXMgYXN5bmNocm9ub3VzIHBvbGxpbmcgdG8gcHJvdmlkZSBhIHNtb290aCB1c2VyIGV4cGVyaWVuY2UuIEZlYXR1cmUgcmVxdWVzdHMgb3IgYnVncz8gUGxlYXNlIHVzZSBHaXRIdWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidml0YWxzIiwKICAibmFtZSI6ICJWaXRhbHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudml0YWxzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NvcmVjb2RpbmcvVml0YWxzIiwKICAidXVpZCI6ICJWaXRhbHNAQ29yZUNvZGluZy5jb20iLAogICJ2ZXJzaW9uIjogNTcKfQ=="}, "41": {"version": "57", "sha256": "1q6h9pc1d31993v5knnb7c4224h6f7x1jida2xnwi0047nz5b8zn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ2xpbXBzZSBpbnRvIHlvdXIgY29tcHV0ZXIncyB0ZW1wZXJhdHVyZSwgdm9sdGFnZSwgZmFuIHNwZWVkLCBtZW1vcnkgdXNhZ2UsIHByb2Nlc3NvciBsb2FkLCBzeXN0ZW0gcmVzb3VyY2VzLCBuZXR3b3JrIHNwZWVkIGFuZCBzdG9yYWdlIHN0YXRzLiBUaGlzIGlzIGEgb25lIHN0b3Agc2hvcCB0byBtb25pdG9yIGFsbCBvZiB5b3VyIHZpdGFsIHNlbnNvcnMuIFVzZXMgYXN5bmNocm9ub3VzIHBvbGxpbmcgdG8gcHJvdmlkZSBhIHNtb290aCB1c2VyIGV4cGVyaWVuY2UuIEZlYXR1cmUgcmVxdWVzdHMgb3IgYnVncz8gUGxlYXNlIHVzZSBHaXRIdWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidml0YWxzIiwKICAibmFtZSI6ICJWaXRhbHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudml0YWxzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NvcmVjb2RpbmcvVml0YWxzIiwKICAidXVpZCI6ICJWaXRhbHNAQ29yZUNvZGluZy5jb20iLAogICJ2ZXJzaW9uIjogNTcKfQ=="}, "42": {"version": "57", "sha256": "1q6h9pc1d31993v5knnb7c4224h6f7x1jida2xnwi0047nz5b8zn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ2xpbXBzZSBpbnRvIHlvdXIgY29tcHV0ZXIncyB0ZW1wZXJhdHVyZSwgdm9sdGFnZSwgZmFuIHNwZWVkLCBtZW1vcnkgdXNhZ2UsIHByb2Nlc3NvciBsb2FkLCBzeXN0ZW0gcmVzb3VyY2VzLCBuZXR3b3JrIHNwZWVkIGFuZCBzdG9yYWdlIHN0YXRzLiBUaGlzIGlzIGEgb25lIHN0b3Agc2hvcCB0byBtb25pdG9yIGFsbCBvZiB5b3VyIHZpdGFsIHNlbnNvcnMuIFVzZXMgYXN5bmNocm9ub3VzIHBvbGxpbmcgdG8gcHJvdmlkZSBhIHNtb290aCB1c2VyIGV4cGVyaWVuY2UuIEZlYXR1cmUgcmVxdWVzdHMgb3IgYnVncz8gUGxlYXNlIHVzZSBHaXRIdWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidml0YWxzIiwKICAibmFtZSI6ICJWaXRhbHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudml0YWxzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NvcmVjb2RpbmcvVml0YWxzIiwKICAidXVpZCI6ICJWaXRhbHNAQ29yZUNvZGluZy5jb20iLAogICJ2ZXJzaW9uIjogNTcKfQ=="}, "43": {"version": "57", "sha256": "1q6h9pc1d31993v5knnb7c4224h6f7x1jida2xnwi0047nz5b8zn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ2xpbXBzZSBpbnRvIHlvdXIgY29tcHV0ZXIncyB0ZW1wZXJhdHVyZSwgdm9sdGFnZSwgZmFuIHNwZWVkLCBtZW1vcnkgdXNhZ2UsIHByb2Nlc3NvciBsb2FkLCBzeXN0ZW0gcmVzb3VyY2VzLCBuZXR3b3JrIHNwZWVkIGFuZCBzdG9yYWdlIHN0YXRzLiBUaGlzIGlzIGEgb25lIHN0b3Agc2hvcCB0byBtb25pdG9yIGFsbCBvZiB5b3VyIHZpdGFsIHNlbnNvcnMuIFVzZXMgYXN5bmNocm9ub3VzIHBvbGxpbmcgdG8gcHJvdmlkZSBhIHNtb290aCB1c2VyIGV4cGVyaWVuY2UuIEZlYXR1cmUgcmVxdWVzdHMgb3IgYnVncz8gUGxlYXNlIHVzZSBHaXRIdWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidml0YWxzIiwKICAibmFtZSI6ICJWaXRhbHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudml0YWxzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NvcmVjb2RpbmcvVml0YWxzIiwKICAidXVpZCI6ICJWaXRhbHNAQ29yZUNvZGluZy5jb20iLAogICJ2ZXJzaW9uIjogNTcKfQ=="}}}
-, {"uuid": "panel-date-format@keiii.github.com", "name": "Panel Date Format", "pname": "panel-date-format", "description": "Allows to customize the date format on the panel.", "link": "https://extensions.gnome.org/extension/1462/panel-date-format/", "shell_version_map": {"40": {"version": "8", "sha256": "0jj6r7q6g2b1k1xmgi1jrkcfzmvaf48kqm2cxp2avw8wqb6wsgm4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyB0byBjdXN0b21pemUgdGhlIGRhdGUgZm9ybWF0IG9uIHRoZSBwYW5lbC4iLAogICJuYW1lIjogIlBhbmVsIERhdGUgRm9ybWF0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWRhdGUtZm9ybWF0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vS0VJSUkvZ25vbWUtc2hlbGwtcGFuZWwtZGF0ZS1mb3JtYXQiLAogICJ1dWlkIjogInBhbmVsLWRhdGUtZm9ybWF0QGtlaWlpLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}, "41": {"version": "8", "sha256": "0jj6r7q6g2b1k1xmgi1jrkcfzmvaf48kqm2cxp2avw8wqb6wsgm4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyB0byBjdXN0b21pemUgdGhlIGRhdGUgZm9ybWF0IG9uIHRoZSBwYW5lbC4iLAogICJuYW1lIjogIlBhbmVsIERhdGUgRm9ybWF0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWRhdGUtZm9ybWF0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vS0VJSUkvZ25vbWUtc2hlbGwtcGFuZWwtZGF0ZS1mb3JtYXQiLAogICJ1dWlkIjogInBhbmVsLWRhdGUtZm9ybWF0QGtlaWlpLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}, "42": {"version": "8", "sha256": "0jj6r7q6g2b1k1xmgi1jrkcfzmvaf48kqm2cxp2avw8wqb6wsgm4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyB0byBjdXN0b21pemUgdGhlIGRhdGUgZm9ybWF0IG9uIHRoZSBwYW5lbC4iLAogICJuYW1lIjogIlBhbmVsIERhdGUgRm9ybWF0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWRhdGUtZm9ybWF0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vS0VJSUkvZ25vbWUtc2hlbGwtcGFuZWwtZGF0ZS1mb3JtYXQiLAogICJ1dWlkIjogInBhbmVsLWRhdGUtZm9ybWF0QGtlaWlpLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}}}
+, {"uuid": "panel-date-format@keiii.github.com", "name": "Panel Date Format", "pname": "panel-date-format", "description": "Allows to customize the date format on the panel.", "link": "https://extensions.gnome.org/extension/1462/panel-date-format/", "shell_version_map": {"40": {"version": "9", "sha256": "1g6jfb8pq1k88k5fvwavhb77nkkn8kgxy9y8f3kc26hyjwbfpn11", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyB0byBjdXN0b21pemUgdGhlIGRhdGUgZm9ybWF0IG9uIHRoZSBwYW5lbC4iLAogICJuYW1lIjogIlBhbmVsIERhdGUgRm9ybWF0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWRhdGUtZm9ybWF0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0tFSUlJL2dub21lLXNoZWxsLXBhbmVsLWRhdGUtZm9ybWF0IiwKICAidXVpZCI6ICJwYW5lbC1kYXRlLWZvcm1hdEBrZWlpaS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "41": {"version": "9", "sha256": "1g6jfb8pq1k88k5fvwavhb77nkkn8kgxy9y8f3kc26hyjwbfpn11", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyB0byBjdXN0b21pemUgdGhlIGRhdGUgZm9ybWF0IG9uIHRoZSBwYW5lbC4iLAogICJuYW1lIjogIlBhbmVsIERhdGUgRm9ybWF0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWRhdGUtZm9ybWF0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0tFSUlJL2dub21lLXNoZWxsLXBhbmVsLWRhdGUtZm9ybWF0IiwKICAidXVpZCI6ICJwYW5lbC1kYXRlLWZvcm1hdEBrZWlpaS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "42": {"version": "9", "sha256": "1g6jfb8pq1k88k5fvwavhb77nkkn8kgxy9y8f3kc26hyjwbfpn11", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyB0byBjdXN0b21pemUgdGhlIGRhdGUgZm9ybWF0IG9uIHRoZSBwYW5lbC4iLAogICJuYW1lIjogIlBhbmVsIERhdGUgRm9ybWF0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWRhdGUtZm9ybWF0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0tFSUlJL2dub21lLXNoZWxsLXBhbmVsLWRhdGUtZm9ybWF0IiwKICAidXVpZCI6ICJwYW5lbC1kYXRlLWZvcm1hdEBrZWlpaS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "43": {"version": "9", "sha256": "1g6jfb8pq1k88k5fvwavhb77nkkn8kgxy9y8f3kc26hyjwbfpn11", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyB0byBjdXN0b21pemUgdGhlIGRhdGUgZm9ybWF0IG9uIHRoZSBwYW5lbC4iLAogICJuYW1lIjogIlBhbmVsIERhdGUgRm9ybWF0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWRhdGUtZm9ybWF0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0tFSUlJL2dub21lLXNoZWxsLXBhbmVsLWRhdGUtZm9ybWF0IiwKICAidXVpZCI6ICJwYW5lbC1kYXRlLWZvcm1hdEBrZWlpaS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
 , {"uuid": "desktop-icons@csoriano", "name": "Desktop Icons", "pname": "desktop-icons", "description": "Add icons to the desktop", "link": "https://extensions.gnome.org/extension/1465/desktop-icons/", "shell_version_map": {"38": {"version": "19", "sha256": "01qdh1kigl3ck1mzgha1a9218lpam5b54ai72mpvr64gkaax2mcv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBpY29ucyB0byB0aGUgZGVza3RvcCIsCiAgIm5hbWUiOiAiRGVza3RvcCBJY29ucyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvV29ybGQvU2hlbGxFeHRlbnNpb25zL2Rlc2t0b3AtaWNvbnMiLAogICJ1dWlkIjogImRlc2t0b3AtaWNvbnNAY3Nvcmlhbm8iLAogICJ2ZXJzaW9uIjogMTkKfQ=="}}}
 , {"uuid": "fullbattery@categulario.tk", "name": "Full Battery indicator", "pname": "full-battery-indicator", "description": "Notifies when battery is full", "link": "https://extensions.gnome.org/extension/1466/full-battery-indicator/", "shell_version_map": {"38": {"version": "4", "sha256": "167d84phf68fi5bg9fvm4l7l8jq7k86a80adm0l56ngqygxqsyy8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vdGlmaWVzIHdoZW4gYmF0dGVyeSBpcyBmdWxsIiwKICAibmFtZSI6ICJGdWxsIEJhdHRlcnkgaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjMyIiwKICAgICIzLjI4LjMiLAogICAgIjMuMzQuNCIsCiAgICAiMy4zNi4wIiwKICAgICIzLjM4IiwKICAgICI0MC4zIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY2F0ZWd1bGFyaW8vZnVsbC1iYXR0ZXJ5LWdub21lLXNoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiZnVsbGJhdHRlcnlAY2F0ZWd1bGFyaW8udGsiLAogICJ2ZXJzaW9uIjogNAp9"}, "40": {"version": "4", "sha256": "167d84phf68fi5bg9fvm4l7l8jq7k86a80adm0l56ngqygxqsyy8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vdGlmaWVzIHdoZW4gYmF0dGVyeSBpcyBmdWxsIiwKICAibmFtZSI6ICJGdWxsIEJhdHRlcnkgaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjMyIiwKICAgICIzLjI4LjMiLAogICAgIjMuMzQuNCIsCiAgICAiMy4zNi4wIiwKICAgICIzLjM4IiwKICAgICI0MC4zIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY2F0ZWd1bGFyaW8vZnVsbC1iYXR0ZXJ5LWdub21lLXNoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiZnVsbGJhdHRlcnlAY2F0ZWd1bGFyaW8udGsiLAogICJ2ZXJzaW9uIjogNAp9"}}}
 , {"uuid": "rdesktop-menu@bastien.git.geekwu.org", "name": "Rdesktop launcher", "pname": "rdesktop-launcher", "description": "Add a servers status menu for quickly running rdesktop", "link": "https://extensions.gnome.org/extension/1467/rdesktop-launcher/", "shell_version_map": {"38": {"version": "16", "sha256": "1ya12yywcqbqqj3x6sl5xf0lncmgnwr3f8lwhvs5dhpi3ps6mic2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHNlcnZlcnMgc3RhdHVzIG1lbnUgZm9yIHF1aWNrbHkgcnVubmluZyByZGVza3RvcCIsCiAgImV4dGVuc2lvbi1pZCI6ICJyZGVza3RvcC1tZW51IiwKICAibmFtZSI6ICJSZGVza3RvcCBsYXVuY2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXQuZ2Vla3d1Lm9yZy9iYXN0aWVuL3JkZXNrdG9wLW1lbnUiLAogICJ1dWlkIjogInJkZXNrdG9wLW1lbnVAYmFzdGllbi5naXQuZ2Vla3d1Lm9yZyIsCiAgInZlcnNpb24iOiAxNgp9"}, "40": {"version": "16", "sha256": "1ya12yywcqbqqj3x6sl5xf0lncmgnwr3f8lwhvs5dhpi3ps6mic2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHNlcnZlcnMgc3RhdHVzIG1lbnUgZm9yIHF1aWNrbHkgcnVubmluZyByZGVza3RvcCIsCiAgImV4dGVuc2lvbi1pZCI6ICJyZGVza3RvcC1tZW51IiwKICAibmFtZSI6ICJSZGVza3RvcCBsYXVuY2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXQuZ2Vla3d1Lm9yZy9iYXN0aWVuL3JkZXNrdG9wLW1lbnUiLAogICJ1dWlkIjogInJkZXNrdG9wLW1lbnVAYmFzdGllbi5naXQuZ2Vla3d1Lm9yZyIsCiAgInZlcnNpb24iOiAxNgp9"}, "41": {"version": "16", "sha256": "1ya12yywcqbqqj3x6sl5xf0lncmgnwr3f8lwhvs5dhpi3ps6mic2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHNlcnZlcnMgc3RhdHVzIG1lbnUgZm9yIHF1aWNrbHkgcnVubmluZyByZGVza3RvcCIsCiAgImV4dGVuc2lvbi1pZCI6ICJyZGVza3RvcC1tZW51IiwKICAibmFtZSI6ICJSZGVza3RvcCBsYXVuY2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXQuZ2Vla3d1Lm9yZy9iYXN0aWVuL3JkZXNrdG9wLW1lbnUiLAogICJ1dWlkIjogInJkZXNrdG9wLW1lbnVAYmFzdGllbi5naXQuZ2Vla3d1Lm9yZyIsCiAgInZlcnNpb24iOiAxNgp9"}, "42": {"version": "16", "sha256": "1ya12yywcqbqqj3x6sl5xf0lncmgnwr3f8lwhvs5dhpi3ps6mic2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHNlcnZlcnMgc3RhdHVzIG1lbnUgZm9yIHF1aWNrbHkgcnVubmluZyByZGVza3RvcCIsCiAgImV4dGVuc2lvbi1pZCI6ICJyZGVza3RvcC1tZW51IiwKICAibmFtZSI6ICJSZGVza3RvcCBsYXVuY2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXQuZ2Vla3d1Lm9yZy9iYXN0aWVuL3JkZXNrdG9wLW1lbnUiLAogICJ1dWlkIjogInJkZXNrdG9wLW1lbnVAYmFzdGllbi5naXQuZ2Vla3d1Lm9yZyIsCiAgInZlcnNpb24iOiAxNgp9"}}}
@@ -206,22 +206,22 @@
 , {"uuid": "unlockDialogBackground@sun.wxg@gmail.com", "name": "Lock screen background", "pname": "unlock-dialog-background", "description": "Change lock screen background.\nIf you use Ubuntu, install package gir1.2-clutter-1.0 first.", "link": "https://extensions.gnome.org/extension/1476/unlock-dialog-background/", "shell_version_map": {"38": {"version": "18", "sha256": "1j9m4qkd0i6l4nxwpxjwvp3nh0zifpzvp0xwp4cqqlr2flb6lwps", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSBsb2NrIHNjcmVlbiBiYWNrZ3JvdW5kLlxuSWYgeW91IHVzZSBVYnVudHUsIGluc3RhbGwgcGFja2FnZSBnaXIxLjItY2x1dHRlci0xLjAgZmlyc3QuIiwKICAibmFtZSI6ICJMb2NrIHNjcmVlbiBiYWNrZ3JvdW5kIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiMy4zNi40IiwKICAgICIzLjM2LjUiLAogICAgIjMuMzYuNiIsCiAgICAiMy4zNi43IiwKICAgICIzLjM2LjgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdW53eGcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXVubG9ja0RpYWxvZ0JhY2tncm91bmQiLAogICJ1dWlkIjogInVubG9ja0RpYWxvZ0JhY2tncm91bmRAc3VuLnd4Z0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTgKfQ=="}, "40": {"version": "20", "sha256": "1gin7mpafmx8h177alhhlrjqpq5354napc0jqaj4l4f7ynzn4843", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSBsb2NrIHNjcmVlbiBiYWNrZ3JvdW5kLlxuSWYgeW91IHVzZSBVYnVudHUsIGluc3RhbGwgcGFja2FnZSBnaXIxLjItY2x1dHRlci0xLjAgZmlyc3QuIiwKICAibmFtZSI6ICJMb2NrIHNjcmVlbiBiYWNrZ3JvdW5kIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdW53eGcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXVubG9ja0RpYWxvZ0JhY2tncm91bmQiLAogICJ1dWlkIjogInVubG9ja0RpYWxvZ0JhY2tncm91bmRAc3VuLnd4Z0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjAKfQ=="}, "41": {"version": "23", "sha256": "0j4mhrdmkwwsf52lcqbl0ln7rl3s64nb24862gahs26y4kpbaiv3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSBsb2NrIHNjcmVlbiBiYWNrZ3JvdW5kLlxuSWYgeW91IHVzZSBVYnVudHUsIGluc3RhbGwgcGFja2FnZSBnaXIxLjItY2x1dHRlci0xLjAgZmlyc3QuIiwKICAibmFtZSI6ICJMb2NrIHNjcmVlbiBiYWNrZ3JvdW5kIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdW53eGcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXVubG9ja0RpYWxvZ0JhY2tncm91bmQiLAogICJ1dWlkIjogInVubG9ja0RpYWxvZ0JhY2tncm91bmRAc3VuLnd4Z0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjMKfQ=="}, "42": {"version": "27", "sha256": "1kzrm6n8cj9lpxdz4nkdi2g014rbalv1rdwvqpdf7z8wjgf69q7v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSBsb2NrIHNjcmVlbiBiYWNrZ3JvdW5kLlxuSWYgeW91IHVzZSBVYnVudHUsIGluc3RhbGwgcGFja2FnZSBnaXIxLjItY2x1dHRlci0xLjAgZmlyc3QuIiwKICAibmFtZSI6ICJMb2NrIHNjcmVlbiBiYWNrZ3JvdW5kIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3Vud3hnL2dub21lLXNoZWxsLWV4dGVuc2lvbi11bmxvY2tEaWFsb2dCYWNrZ3JvdW5kIiwKICAidXVpZCI6ICJ1bmxvY2tEaWFsb2dCYWNrZ3JvdW5kQHN1bi53eGdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDI3Cn0="}, "43": {"version": "27", "sha256": "1kzrm6n8cj9lpxdz4nkdi2g014rbalv1rdwvqpdf7z8wjgf69q7v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSBsb2NrIHNjcmVlbiBiYWNrZ3JvdW5kLlxuSWYgeW91IHVzZSBVYnVudHUsIGluc3RhbGwgcGFja2FnZSBnaXIxLjItY2x1dHRlci0xLjAgZmlyc3QuIiwKICAibmFtZSI6ICJMb2NrIHNjcmVlbiBiYWNrZ3JvdW5kIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3Vud3hnL2dub21lLXNoZWxsLWV4dGVuc2lvbi11bmxvY2tEaWFsb2dCYWNrZ3JvdW5kIiwKICAidXVpZCI6ICJ1bmxvY2tEaWFsb2dCYWNrZ3JvdW5kQHN1bi53eGdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDI3Cn0="}}}
 , {"uuid": "wsmatrix@martin.zurowietz.de", "name": "Workspace Matrix", "pname": "workspace-matrix", "description": "Arrange workspaces in a two dimensional grid with workspace thumbnails.", "link": "https://extensions.gnome.org/extension/1485/workspace-matrix/", "shell_version_map": {"38": {"version": "27", "sha256": "0b76x0li5a8x42l67ykbw34k4cfmbxqvz36zighhfw4qmxsc36cr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd29ya3NwYWNlcyBpbiBhIHR3byBkaW1lbnNpb25hbCBncmlkIHdpdGggd29ya3NwYWNlIHRodW1ibmFpbHMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid3NtYXRyaXgiLAogICJrZXliaW5kaW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud3NtYXRyaXgta2V5YmluZGluZ3MiLAogICJuYW1lIjogIldvcmtzcGFjZSBNYXRyaXgiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud3NtYXRyaXgtc2V0dGluZ3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tenVyL2dub21lLXNoZWxsLXdzbWF0cml4IiwKICAidXVpZCI6ICJ3c21hdHJpeEBtYXJ0aW4uenVyb3dpZXR6LmRlIiwKICAidmVyc2lvbiI6IDI3Cn0="}, "40": {"version": "33", "sha256": "1pfq2sgz3h97xyqnxjzzjij3abd6132xjibhl2y3423ylwqg5xf8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd29ya3NwYWNlcyBpbiBhIHR3byBkaW1lbnNpb25hbCBncmlkIHdpdGggd29ya3NwYWNlIHRodW1ibmFpbHMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid3NtYXRyaXgiLAogICJrZXliaW5kaW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud3NtYXRyaXgta2V5YmluZGluZ3MiLAogICJuYW1lIjogIldvcmtzcGFjZSBNYXRyaXgiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud3NtYXRyaXgtc2V0dGluZ3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL216dXIvZ25vbWUtc2hlbGwtd3NtYXRyaXgiLAogICJ1dWlkIjogIndzbWF0cml4QG1hcnRpbi56dXJvd2lldHouZGUiLAogICJ2ZXJzaW9uIjogMzMKfQ=="}, "41": {"version": "33", "sha256": "1pfq2sgz3h97xyqnxjzzjij3abd6132xjibhl2y3423ylwqg5xf8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd29ya3NwYWNlcyBpbiBhIHR3byBkaW1lbnNpb25hbCBncmlkIHdpdGggd29ya3NwYWNlIHRodW1ibmFpbHMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid3NtYXRyaXgiLAogICJrZXliaW5kaW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud3NtYXRyaXgta2V5YmluZGluZ3MiLAogICJuYW1lIjogIldvcmtzcGFjZSBNYXRyaXgiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud3NtYXRyaXgtc2V0dGluZ3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL216dXIvZ25vbWUtc2hlbGwtd3NtYXRyaXgiLAogICJ1dWlkIjogIndzbWF0cml4QG1hcnRpbi56dXJvd2lldHouZGUiLAogICJ2ZXJzaW9uIjogMzMKfQ=="}, "42": {"version": "36", "sha256": "1fbhqjam8r7y7g9zxk606qzp19nzrrprrwf76bzq7j9yvhng7m3j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd29ya3NwYWNlcyBpbiBhIHR3byBkaW1lbnNpb25hbCBncmlkIHdpdGggd29ya3NwYWNlIHRodW1ibmFpbHMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid3NtYXRyaXgiLAogICJrZXliaW5kaW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud3NtYXRyaXgta2V5YmluZGluZ3MiLAogICJuYW1lIjogIldvcmtzcGFjZSBNYXRyaXgiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud3NtYXRyaXgtc2V0dGluZ3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL216dXIvZ25vbWUtc2hlbGwtd3NtYXRyaXgiLAogICJ1dWlkIjogIndzbWF0cml4QG1hcnRpbi56dXJvd2lldHouZGUiLAogICJ2ZXJzaW9uIjogMzYKfQ=="}, "43": {"version": "36", "sha256": "1fbhqjam8r7y7g9zxk606qzp19nzrrprrwf76bzq7j9yvhng7m3j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd29ya3NwYWNlcyBpbiBhIHR3byBkaW1lbnNpb25hbCBncmlkIHdpdGggd29ya3NwYWNlIHRodW1ibmFpbHMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid3NtYXRyaXgiLAogICJrZXliaW5kaW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud3NtYXRyaXgta2V5YmluZGluZ3MiLAogICJuYW1lIjogIldvcmtzcGFjZSBNYXRyaXgiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud3NtYXRyaXgtc2V0dGluZ3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL216dXIvZ25vbWUtc2hlbGwtd3NtYXRyaXgiLAogICJ1dWlkIjogIndzbWF0cml4QG1hcnRpbi56dXJvd2lldHouZGUiLAogICJ2ZXJzaW9uIjogMzYKfQ=="}}}
 , {"uuid": "extensions-sync@elhan.io", "name": "Extensions Sync", "pname": "extensions-sync", "description": "Syncs gnome-shell keybindings, tweaks settings and extensions with their configuration across all gnome installations", "link": "https://extensions.gnome.org/extension/1486/extensions-sync/", "shell_version_map": {"38": {"version": "12", "sha256": "1gxjbxbfk2xkbpfc5yv38najmixxsz34g5p6y3rmi6ly5kgca798", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5bmNzIGdub21lLXNoZWxsIGtleWJpbmRpbmdzLCB0d2Vha3Mgc2V0dGluZ3MgYW5kIGV4dGVuc2lvbnMgd2l0aCB0aGVpciBjb25maWd1cmF0aW9uIGFjcm9zcyBhbGwgZ25vbWUgaW5zdGFsbGF0aW9ucyIsCiAgIm5hbWUiOiAiRXh0ZW5zaW9ucyBTeW5jIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmV4dGVuc2lvbnMtc3luYyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL29hZS9nbm9tZS1zaGVsbC1leHRlbnNpb25zLXN5bmMiLAogICJ1dWlkIjogImV4dGVuc2lvbnMtc3luY0BlbGhhbi5pbyIsCiAgInZlcnNpb24iOiAxMgp9"}, "40": {"version": "17", "sha256": "112qqwa5smms0k2ki8d3qwpzf17y6sw2lgpz4ibi57zja0y3plgn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5bmNzIGdub21lLXNoZWxsIGtleWJpbmRpbmdzLCB0d2Vha3Mgc2V0dGluZ3MgYW5kIGV4dGVuc2lvbnMgd2l0aCB0aGVpciBjb25maWd1cmF0aW9uIGFjcm9zcyBhbGwgZ25vbWUgaW5zdGFsbGF0aW9ucyIsCiAgIm5hbWUiOiAiRXh0ZW5zaW9ucyBTeW5jIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmV4dGVuc2lvbnMtc3luYyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL29hZS9nbm9tZS1zaGVsbC1leHRlbnNpb25zLXN5bmMiLAogICJ1dWlkIjogImV4dGVuc2lvbnMtc3luY0BlbGhhbi5pbyIsCiAgInZlcnNpb24iOiAxNwp9"}, "41": {"version": "17", "sha256": "112qqwa5smms0k2ki8d3qwpzf17y6sw2lgpz4ibi57zja0y3plgn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5bmNzIGdub21lLXNoZWxsIGtleWJpbmRpbmdzLCB0d2Vha3Mgc2V0dGluZ3MgYW5kIGV4dGVuc2lvbnMgd2l0aCB0aGVpciBjb25maWd1cmF0aW9uIGFjcm9zcyBhbGwgZ25vbWUgaW5zdGFsbGF0aW9ucyIsCiAgIm5hbWUiOiAiRXh0ZW5zaW9ucyBTeW5jIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmV4dGVuc2lvbnMtc3luYyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL29hZS9nbm9tZS1zaGVsbC1leHRlbnNpb25zLXN5bmMiLAogICJ1dWlkIjogImV4dGVuc2lvbnMtc3luY0BlbGhhbi5pbyIsCiAgInZlcnNpb24iOiAxNwp9"}, "42": {"version": "18", "sha256": "1ira1azgc5glm45j0f7jbzj0iyvrkfxymihfcqimr9047mzv79va", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5bmNzIGdub21lLXNoZWxsIGtleWJpbmRpbmdzLCB0d2Vha3Mgc2V0dGluZ3MgYW5kIGV4dGVuc2lvbnMgd2l0aCB0aGVpciBjb25maWd1cmF0aW9uIGFjcm9zcyBhbGwgZ25vbWUgaW5zdGFsbGF0aW9ucyIsCiAgIm5hbWUiOiAiRXh0ZW5zaW9ucyBTeW5jIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmV4dGVuc2lvbnMtc3luYyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vb2FlL2dub21lLXNoZWxsLWV4dGVuc2lvbnMtc3luYyIsCiAgInV1aWQiOiAiZXh0ZW5zaW9ucy1zeW5jQGVsaGFuLmlvIiwKICAidmVyc2lvbiI6IDE4Cn0="}, "43": {"version": "18", "sha256": "1ira1azgc5glm45j0f7jbzj0iyvrkfxymihfcqimr9047mzv79va", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5bmNzIGdub21lLXNoZWxsIGtleWJpbmRpbmdzLCB0d2Vha3Mgc2V0dGluZ3MgYW5kIGV4dGVuc2lvbnMgd2l0aCB0aGVpciBjb25maWd1cmF0aW9uIGFjcm9zcyBhbGwgZ25vbWUgaW5zdGFsbGF0aW9ucyIsCiAgIm5hbWUiOiAiRXh0ZW5zaW9ucyBTeW5jIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmV4dGVuc2lvbnMtc3luYyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vb2FlL2dub21lLXNoZWxsLWV4dGVuc2lvbnMtc3luYyIsCiAgInV1aWQiOiAiZXh0ZW5zaW9ucy1zeW5jQGVsaGFuLmlvIiwKICAidmVyc2lvbiI6IDE4Cn0="}}}
-, {"uuid": "containers@royg", "name": "Containers", "pname": "containers", "description": "Manage podman containers through a gnome-shell menu", "link": "https://extensions.gnome.org/extension/1500/containers/", "shell_version_map": {"40": {"version": "22", "sha256": "0z7hf8jm528z63hxh1hkb2p13b99c45yda7riwa3jwg07c2nkq42", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBwb2RtYW4gY29udGFpbmVycyB0aHJvdWdoIGEgZ25vbWUtc2hlbGwgbWVudSIsCiAgIm5hbWUiOiAiQ29udGFpbmVycyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3Jnb2xhbmdoL2dub21lLXNoZWxsLWV4dGVuc2lvbi1jb250YWluZXJzIiwKICAidXVpZCI6ICJjb250YWluZXJzQHJveWciLAogICJ2ZXJzaW9uIjogMjIKfQ=="}, "41": {"version": "22", "sha256": "0z7hf8jm528z63hxh1hkb2p13b99c45yda7riwa3jwg07c2nkq42", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBwb2RtYW4gY29udGFpbmVycyB0aHJvdWdoIGEgZ25vbWUtc2hlbGwgbWVudSIsCiAgIm5hbWUiOiAiQ29udGFpbmVycyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3Jnb2xhbmdoL2dub21lLXNoZWxsLWV4dGVuc2lvbi1jb250YWluZXJzIiwKICAidXVpZCI6ICJjb250YWluZXJzQHJveWciLAogICJ2ZXJzaW9uIjogMjIKfQ=="}, "42": {"version": "22", "sha256": "0z7hf8jm528z63hxh1hkb2p13b99c45yda7riwa3jwg07c2nkq42", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBwb2RtYW4gY29udGFpbmVycyB0aHJvdWdoIGEgZ25vbWUtc2hlbGwgbWVudSIsCiAgIm5hbWUiOiAiQ29udGFpbmVycyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3Jnb2xhbmdoL2dub21lLXNoZWxsLWV4dGVuc2lvbi1jb250YWluZXJzIiwKICAidXVpZCI6ICJjb250YWluZXJzQHJveWciLAogICJ2ZXJzaW9uIjogMjIKfQ=="}}}
+, {"uuid": "containers@royg", "name": "Containers", "pname": "containers", "description": "Manage podman containers through a gnome-shell menu", "link": "https://extensions.gnome.org/extension/1500/containers/", "shell_version_map": {"40": {"version": "23", "sha256": "18pkmrba13mw02p6cmm9carn0y84hqji18qzrpw410s9v0vv83l2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBwb2RtYW4gY29udGFpbmVycyB0aHJvdWdoIGEgZ25vbWUtc2hlbGwgbWVudSIsCiAgIm5hbWUiOiAiQ29udGFpbmVycyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yZ29sYW5naC9nbm9tZS1zaGVsbC1leHRlbnNpb24tY29udGFpbmVycyIsCiAgInV1aWQiOiAiY29udGFpbmVyc0Byb3lnIiwKICAidmVyc2lvbiI6IDIzCn0="}, "41": {"version": "23", "sha256": "18pkmrba13mw02p6cmm9carn0y84hqji18qzrpw410s9v0vv83l2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBwb2RtYW4gY29udGFpbmVycyB0aHJvdWdoIGEgZ25vbWUtc2hlbGwgbWVudSIsCiAgIm5hbWUiOiAiQ29udGFpbmVycyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yZ29sYW5naC9nbm9tZS1zaGVsbC1leHRlbnNpb24tY29udGFpbmVycyIsCiAgInV1aWQiOiAiY29udGFpbmVyc0Byb3lnIiwKICAidmVyc2lvbiI6IDIzCn0="}, "42": {"version": "23", "sha256": "18pkmrba13mw02p6cmm9carn0y84hqji18qzrpw410s9v0vv83l2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBwb2RtYW4gY29udGFpbmVycyB0aHJvdWdoIGEgZ25vbWUtc2hlbGwgbWVudSIsCiAgIm5hbWUiOiAiQ29udGFpbmVycyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yZ29sYW5naC9nbm9tZS1zaGVsbC1leHRlbnNpb24tY29udGFpbmVycyIsCiAgInV1aWQiOiAiY29udGFpbmVyc0Byb3lnIiwKICAidmVyc2lvbiI6IDIzCn0="}, "43": {"version": "23", "sha256": "18pkmrba13mw02p6cmm9carn0y84hqji18qzrpw410s9v0vv83l2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBwb2RtYW4gY29udGFpbmVycyB0aHJvdWdoIGEgZ25vbWUtc2hlbGwgbWVudSIsCiAgIm5hbWUiOiAiQ29udGFpbmVycyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yZ29sYW5naC9nbm9tZS1zaGVsbC1leHRlbnNpb24tY29udGFpbmVycyIsCiAgInV1aWQiOiAiY29udGFpbmVyc0Byb3lnIiwKICAidmVyc2lvbiI6IDIzCn0="}}}
 , {"uuid": "fullscreenworkspace@satran.in", "name": "Fullscreen On New Workspace", "pname": "fullscreen-on-new-workspace", "description": "Move window to a new workspace when you maximize or make it fullscreen.", "link": "https://extensions.gnome.org/extension/1502/fullscreen-on-new-workspace/", "shell_version_map": {"38": {"version": "8", "sha256": "0csx7mqgbjjvf3cwk492bk9b92l2270qw2c2badckwsyl6qwahj4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgd2luZG93IHRvIGEgbmV3IHdvcmtzcGFjZSB3aGVuIHlvdSBtYXhpbWl6ZSBvciBtYWtlIGl0IGZ1bGxzY3JlZW4uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZnVsbHNjcmVlbndvcmtzcGFjZSIsCiAgIm5hbWUiOiAiRnVsbHNjcmVlbiBPbiBOZXcgV29ya3NwYWNlIiwKICAic2NoZW1hLWlkIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZ1bGxzY3JlZW53b3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zYXRyYW4vZnVsbHNjcmVlbndvcmtzcGFjZS1zYXRyYW4uaW4iLAogICJ1dWlkIjogImZ1bGxzY3JlZW53b3Jrc3BhY2VAc2F0cmFuLmluIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "40": {"version": "8", "sha256": "0csx7mqgbjjvf3cwk492bk9b92l2270qw2c2badckwsyl6qwahj4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgd2luZG93IHRvIGEgbmV3IHdvcmtzcGFjZSB3aGVuIHlvdSBtYXhpbWl6ZSBvciBtYWtlIGl0IGZ1bGxzY3JlZW4uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZnVsbHNjcmVlbndvcmtzcGFjZSIsCiAgIm5hbWUiOiAiRnVsbHNjcmVlbiBPbiBOZXcgV29ya3NwYWNlIiwKICAic2NoZW1hLWlkIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZ1bGxzY3JlZW53b3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zYXRyYW4vZnVsbHNjcmVlbndvcmtzcGFjZS1zYXRyYW4uaW4iLAogICJ1dWlkIjogImZ1bGxzY3JlZW53b3Jrc3BhY2VAc2F0cmFuLmluIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "41": {"version": "8", "sha256": "0csx7mqgbjjvf3cwk492bk9b92l2270qw2c2badckwsyl6qwahj4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgd2luZG93IHRvIGEgbmV3IHdvcmtzcGFjZSB3aGVuIHlvdSBtYXhpbWl6ZSBvciBtYWtlIGl0IGZ1bGxzY3JlZW4uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZnVsbHNjcmVlbndvcmtzcGFjZSIsCiAgIm5hbWUiOiAiRnVsbHNjcmVlbiBPbiBOZXcgV29ya3NwYWNlIiwKICAic2NoZW1hLWlkIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZ1bGxzY3JlZW53b3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zYXRyYW4vZnVsbHNjcmVlbndvcmtzcGFjZS1zYXRyYW4uaW4iLAogICJ1dWlkIjogImZ1bGxzY3JlZW53b3Jrc3BhY2VAc2F0cmFuLmluIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "42": {"version": "8", "sha256": "0csx7mqgbjjvf3cwk492bk9b92l2270qw2c2badckwsyl6qwahj4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgd2luZG93IHRvIGEgbmV3IHdvcmtzcGFjZSB3aGVuIHlvdSBtYXhpbWl6ZSBvciBtYWtlIGl0IGZ1bGxzY3JlZW4uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZnVsbHNjcmVlbndvcmtzcGFjZSIsCiAgIm5hbWUiOiAiRnVsbHNjcmVlbiBPbiBOZXcgV29ya3NwYWNlIiwKICAic2NoZW1hLWlkIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZ1bGxzY3JlZW53b3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zYXRyYW4vZnVsbHNjcmVlbndvcmtzcGFjZS1zYXRyYW4uaW4iLAogICJ1dWlkIjogImZ1bGxzY3JlZW53b3Jrc3BhY2VAc2F0cmFuLmluIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
 , {"uuid": "tray-icons@zhangkaizhao.com", "name": "Tray Icons", "pname": "tray-icons", "description": "Tray icons", "link": "https://extensions.gnome.org/extension/1503/tray-icons/", "shell_version_map": {"38": {"version": "6", "sha256": "0q5kk8yp7cg61d4hcimrxrghsq7v8qaxjbmzvkj5apbg4cmz3s7v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYXkgaWNvbnMiLAogICJuYW1lIjogIlRyYXkgSWNvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIuMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3poYW5na2Fpemhhby9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJheS1pY29ucyIsCiAgInV1aWQiOiAidHJheS1pY29uc0B6aGFuZ2thaXpoYW8uY29tIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "40": {"version": "6", "sha256": "0q5kk8yp7cg61d4hcimrxrghsq7v8qaxjbmzvkj5apbg4cmz3s7v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYXkgaWNvbnMiLAogICJuYW1lIjogIlRyYXkgSWNvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIuMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3poYW5na2Fpemhhby9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJheS1pY29ucyIsCiAgInV1aWQiOiAidHJheS1pY29uc0B6aGFuZ2thaXpoYW8uY29tIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
 , {"uuid": "new-mail-indicator@fthx", "name": "New Mail Indicator", "pname": "new-mail-indicator", "description": "An icon beside the date in the topbar to show if there are unread emails when running your default email client.\n\n It checks the notifications in the message tray related to a new mail, no extra configuration needed, very light extension. Click on the icon does toggle your email client window.*** Do not disable the notifications of your default email client! *** It is not a standalone mail checker, you need your email client to be running. *** Please check that the xdg-utils package is installed.\n\n Email clients verified at the moment are: Thunderbird, Evolution, Geary, Mailspring. Please ask to add the client, including special packaging (snap/flatpak), that you need. If you report an error, please provide at least the distribution and the email client you use through the GitHub link.\n\n For persistent notifications only, see: https://extensions.gnome.org/extension/3951/persistent-email-notifications .", "link": "https://extensions.gnome.org/extension/1505/new-mail-indicator/", "shell_version_map": {"38": {"version": "33", "sha256": "1azppcny8f70ish2p1gzmyf0dy4ycj5x8ccwb1c73m452ac561vm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGljb24gYmVzaWRlIHRoZSBkYXRlIGluIHRoZSB0b3BiYXIgdG8gc2hvdyBpZiB0aGVyZSBhcmUgdW5yZWFkIGVtYWlscyB3aGVuIHJ1bm5pbmcgeW91ciBkZWZhdWx0IGVtYWlsIGNsaWVudC5cblxuIEl0IGNoZWNrcyB0aGUgbm90aWZpY2F0aW9ucyBpbiB0aGUgbWVzc2FnZSB0cmF5IHJlbGF0ZWQgdG8gYSBuZXcgbWFpbCwgbm8gZXh0cmEgY29uZmlndXJhdGlvbiBuZWVkZWQsIHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBDbGljayBvbiB0aGUgaWNvbiBkb2VzIHRvZ2dsZSB5b3VyIGVtYWlsIGNsaWVudCB3aW5kb3cuKioqIERvIG5vdCBkaXNhYmxlIHRoZSBub3RpZmljYXRpb25zIG9mIHlvdXIgZGVmYXVsdCBlbWFpbCBjbGllbnQhICoqKiBJdCBpcyBub3QgYSBzdGFuZGFsb25lIG1haWwgY2hlY2tlciwgeW91IG5lZWQgeW91ciBlbWFpbCBjbGllbnQgdG8gYmUgcnVubmluZy4gKioqIFBsZWFzZSBjaGVjayB0aGF0IHRoZSB4ZGctdXRpbHMgcGFja2FnZSBpcyBpbnN0YWxsZWQuXG5cbiBFbWFpbCBjbGllbnRzIHZlcmlmaWVkIGF0IHRoZSBtb21lbnQgYXJlOiBUaHVuZGVyYmlyZCwgRXZvbHV0aW9uLCBHZWFyeSwgTWFpbHNwcmluZy4gUGxlYXNlIGFzayB0byBhZGQgdGhlIGNsaWVudCwgaW5jbHVkaW5nIHNwZWNpYWwgcGFja2FnaW5nIChzbmFwL2ZsYXRwYWspLCB0aGF0IHlvdSBuZWVkLiBJZiB5b3UgcmVwb3J0IGFuIGVycm9yLCBwbGVhc2UgcHJvdmlkZSBhdCBsZWFzdCB0aGUgZGlzdHJpYnV0aW9uIGFuZCB0aGUgZW1haWwgY2xpZW50IHlvdSB1c2UgdGhyb3VnaCB0aGUgR2l0SHViIGxpbmsuXG5cbiBGb3IgcGVyc2lzdGVudCBub3RpZmljYXRpb25zIG9ubHksIHNlZTogaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vMzk1MS9wZXJzaXN0ZW50LWVtYWlsLW5vdGlmaWNhdGlvbnMgLiIsCiAgIm5hbWUiOiAiTmV3IE1haWwgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L25ldy1tYWlsLWluZGljYXRvciIsCiAgInV1aWQiOiAibmV3LW1haWwtaW5kaWNhdG9yQGZ0aHgiLAogICJ2ZXJzaW9uIjogMzMKfQ=="}, "40": {"version": "33", "sha256": "1azppcny8f70ish2p1gzmyf0dy4ycj5x8ccwb1c73m452ac561vm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGljb24gYmVzaWRlIHRoZSBkYXRlIGluIHRoZSB0b3BiYXIgdG8gc2hvdyBpZiB0aGVyZSBhcmUgdW5yZWFkIGVtYWlscyB3aGVuIHJ1bm5pbmcgeW91ciBkZWZhdWx0IGVtYWlsIGNsaWVudC5cblxuIEl0IGNoZWNrcyB0aGUgbm90aWZpY2F0aW9ucyBpbiB0aGUgbWVzc2FnZSB0cmF5IHJlbGF0ZWQgdG8gYSBuZXcgbWFpbCwgbm8gZXh0cmEgY29uZmlndXJhdGlvbiBuZWVkZWQsIHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBDbGljayBvbiB0aGUgaWNvbiBkb2VzIHRvZ2dsZSB5b3VyIGVtYWlsIGNsaWVudCB3aW5kb3cuKioqIERvIG5vdCBkaXNhYmxlIHRoZSBub3RpZmljYXRpb25zIG9mIHlvdXIgZGVmYXVsdCBlbWFpbCBjbGllbnQhICoqKiBJdCBpcyBub3QgYSBzdGFuZGFsb25lIG1haWwgY2hlY2tlciwgeW91IG5lZWQgeW91ciBlbWFpbCBjbGllbnQgdG8gYmUgcnVubmluZy4gKioqIFBsZWFzZSBjaGVjayB0aGF0IHRoZSB4ZGctdXRpbHMgcGFja2FnZSBpcyBpbnN0YWxsZWQuXG5cbiBFbWFpbCBjbGllbnRzIHZlcmlmaWVkIGF0IHRoZSBtb21lbnQgYXJlOiBUaHVuZGVyYmlyZCwgRXZvbHV0aW9uLCBHZWFyeSwgTWFpbHNwcmluZy4gUGxlYXNlIGFzayB0byBhZGQgdGhlIGNsaWVudCwgaW5jbHVkaW5nIHNwZWNpYWwgcGFja2FnaW5nIChzbmFwL2ZsYXRwYWspLCB0aGF0IHlvdSBuZWVkLiBJZiB5b3UgcmVwb3J0IGFuIGVycm9yLCBwbGVhc2UgcHJvdmlkZSBhdCBsZWFzdCB0aGUgZGlzdHJpYnV0aW9uIGFuZCB0aGUgZW1haWwgY2xpZW50IHlvdSB1c2UgdGhyb3VnaCB0aGUgR2l0SHViIGxpbmsuXG5cbiBGb3IgcGVyc2lzdGVudCBub3RpZmljYXRpb25zIG9ubHksIHNlZTogaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vMzk1MS9wZXJzaXN0ZW50LWVtYWlsLW5vdGlmaWNhdGlvbnMgLiIsCiAgIm5hbWUiOiAiTmV3IE1haWwgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L25ldy1tYWlsLWluZGljYXRvciIsCiAgInV1aWQiOiAibmV3LW1haWwtaW5kaWNhdG9yQGZ0aHgiLAogICJ2ZXJzaW9uIjogMzMKfQ=="}, "41": {"version": "33", "sha256": "1azppcny8f70ish2p1gzmyf0dy4ycj5x8ccwb1c73m452ac561vm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGljb24gYmVzaWRlIHRoZSBkYXRlIGluIHRoZSB0b3BiYXIgdG8gc2hvdyBpZiB0aGVyZSBhcmUgdW5yZWFkIGVtYWlscyB3aGVuIHJ1bm5pbmcgeW91ciBkZWZhdWx0IGVtYWlsIGNsaWVudC5cblxuIEl0IGNoZWNrcyB0aGUgbm90aWZpY2F0aW9ucyBpbiB0aGUgbWVzc2FnZSB0cmF5IHJlbGF0ZWQgdG8gYSBuZXcgbWFpbCwgbm8gZXh0cmEgY29uZmlndXJhdGlvbiBuZWVkZWQsIHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBDbGljayBvbiB0aGUgaWNvbiBkb2VzIHRvZ2dsZSB5b3VyIGVtYWlsIGNsaWVudCB3aW5kb3cuKioqIERvIG5vdCBkaXNhYmxlIHRoZSBub3RpZmljYXRpb25zIG9mIHlvdXIgZGVmYXVsdCBlbWFpbCBjbGllbnQhICoqKiBJdCBpcyBub3QgYSBzdGFuZGFsb25lIG1haWwgY2hlY2tlciwgeW91IG5lZWQgeW91ciBlbWFpbCBjbGllbnQgdG8gYmUgcnVubmluZy4gKioqIFBsZWFzZSBjaGVjayB0aGF0IHRoZSB4ZGctdXRpbHMgcGFja2FnZSBpcyBpbnN0YWxsZWQuXG5cbiBFbWFpbCBjbGllbnRzIHZlcmlmaWVkIGF0IHRoZSBtb21lbnQgYXJlOiBUaHVuZGVyYmlyZCwgRXZvbHV0aW9uLCBHZWFyeSwgTWFpbHNwcmluZy4gUGxlYXNlIGFzayB0byBhZGQgdGhlIGNsaWVudCwgaW5jbHVkaW5nIHNwZWNpYWwgcGFja2FnaW5nIChzbmFwL2ZsYXRwYWspLCB0aGF0IHlvdSBuZWVkLiBJZiB5b3UgcmVwb3J0IGFuIGVycm9yLCBwbGVhc2UgcHJvdmlkZSBhdCBsZWFzdCB0aGUgZGlzdHJpYnV0aW9uIGFuZCB0aGUgZW1haWwgY2xpZW50IHlvdSB1c2UgdGhyb3VnaCB0aGUgR2l0SHViIGxpbmsuXG5cbiBGb3IgcGVyc2lzdGVudCBub3RpZmljYXRpb25zIG9ubHksIHNlZTogaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vMzk1MS9wZXJzaXN0ZW50LWVtYWlsLW5vdGlmaWNhdGlvbnMgLiIsCiAgIm5hbWUiOiAiTmV3IE1haWwgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L25ldy1tYWlsLWluZGljYXRvciIsCiAgInV1aWQiOiAibmV3LW1haWwtaW5kaWNhdG9yQGZ0aHgiLAogICJ2ZXJzaW9uIjogMzMKfQ=="}}}
 , {"uuid": "tandem-raise@tomdryer.com", "name": "Tandem Raise", "pname": "tandem-raise", "description": "Raise pairs of tiled windows in tandem.", "link": "https://extensions.gnome.org/extension/1506/tandem-raise/", "shell_version_map": {"42": {"version": "3", "sha256": "0f828j1pcad18i8z8n4691zm6rxl99ziigb8sj4qjbc0bn70nvmy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJhaXNlIHBhaXJzIG9mIHRpbGVkIHdpbmRvd3MgaW4gdGFuZGVtLiIsCiAgIm5hbWUiOiAiVGFuZGVtIFJhaXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM2IiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3Rkcnllci90YW5kZW0tcmFpc2UiLAogICJ1dWlkIjogInRhbmRlbS1yYWlzZUB0b21kcnllci5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}}}
 , {"uuid": "drop-down-terminal-x@bigbn.pro", "name": "Drop Down Terminal X", "pname": "drop-down-terminal-x", "description": "THIS EXTENSION IS NO LONGER SUPPORTED.\n\nIf you are looking for an alternative please look at that https://extensions.gnome.org/extension/3780/ddterm \nawesome extension.\n\nA GNOME Shell drop down terminal with extra feautures.\n \nSpecial thanks to:\n- Osman Alperen Elhan (https://github.com/oae)\n- Balder Claassen (https://github.com/balderclaassen)\n- Adrien Pyke (https://github.com/kufii)\n- Alan J Carvajal (https://github.com/ajcarvajal)\n- Massimo Mund (https://github.com/masmu)\n- Jakub Żywiec (https://github.com/jakubzet)\n- Mattias Eriksson (https://github.com/snaggen)\n- Henry78 (https://github.com/Henry78)\n- Maxim Toropov (https://github.com/MaxMaxoff)\nfor active contribution.\n\nBased on original extension \"gs-extensions-drop-down-terminal\" from Stéphane Démurget (https://github.com/zzrough)", "link": "https://extensions.gnome.org/extension/1509/drop-down-terminal-x/", "shell_version_map": {"38": {"version": "17", "sha256": "1k90g6bndw1xr56k7lwlxyw89aqbl47spkfmj1lq224z83w6hzdw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRISVMgRVhURU5TSU9OIElTIE5PIExPTkdFUiBTVVBQT1JURUQuXG5cbklmIHlvdSBhcmUgbG9va2luZyBmb3IgYW4gYWx0ZXJuYXRpdmUgcGxlYXNlIGxvb2sgYXQgdGhhdCBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8zNzgwL2RkdGVybSBcbmF3ZXNvbWUgZXh0ZW5zaW9uLlxuXG5BIEdOT01FIFNoZWxsIGRyb3AgZG93biB0ZXJtaW5hbCB3aXRoIGV4dHJhIGZlYXV0dXJlcy5cbiBcblNwZWNpYWwgdGhhbmtzIHRvOlxuLSBPc21hbiBBbHBlcmVuIEVsaGFuIChodHRwczovL2dpdGh1Yi5jb20vb2FlKVxuLSBCYWxkZXIgQ2xhYXNzZW4gKGh0dHBzOi8vZ2l0aHViLmNvbS9iYWxkZXJjbGFhc3Nlbilcbi0gQWRyaWVuIFB5a2UgKGh0dHBzOi8vZ2l0aHViLmNvbS9rdWZpaSlcbi0gQWxhbiBKIENhcnZhamFsIChodHRwczovL2dpdGh1Yi5jb20vYWpjYXJ2YWphbClcbi0gTWFzc2ltbyBNdW5kIChodHRwczovL2dpdGh1Yi5jb20vbWFzbXUpXG4tIEpha3ViIFx1MDE3Ynl3aWVjIChodHRwczovL2dpdGh1Yi5jb20vamFrdWJ6ZXQpXG4tIE1hdHRpYXMgRXJpa3Nzb24gKGh0dHBzOi8vZ2l0aHViLmNvbS9zbmFnZ2VuKVxuLSBIZW5yeTc4IChodHRwczovL2dpdGh1Yi5jb20vSGVucnk3OClcbi0gTWF4aW0gVG9yb3BvdiAoaHR0cHM6Ly9naXRodWIuY29tL01heE1heG9mZilcbmZvciBhY3RpdmUgY29udHJpYnV0aW9uLlxuXG5CYXNlZCBvbiBvcmlnaW5hbCBleHRlbnNpb24gXCJncy1leHRlbnNpb25zLWRyb3AtZG93bi10ZXJtaW5hbFwiIGZyb20gU3RcdTAwZTlwaGFuZSBEXHUwMGU5bXVyZ2V0IChodHRwczovL2dpdGh1Yi5jb20venpyb3VnaCkiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJkcm9wLWRvd24tdGVybWluYWwteCIsCiAgImlkIjogImRyb3AtZG93bi10ZXJtaW5hbC14IiwKICAibmFtZSI6ICJEcm9wIERvd24gVGVybWluYWwgWCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOC4wIiwKICAgICIzLjI4LjEiLAogICAgIjMuMjguMiIsCiAgICAiMy4zMC4wIiwKICAgICIzLjMwLjEiLAogICAgIjMuMzAuMiIsCiAgICAiMy4zMi4wIiwKICAgICIzLjMyLjEiLAogICAgIjMuMzIuMiIsCiAgICAiMy4zNC4wIiwKICAgICIzLjM0LjQiLAogICAgIjMuMzYuMCIsCiAgICAiMy4zNi4xIiwKICAgICIzLjM2LjIiLAogICAgIjMuMzguMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JpZ2JuL2dzLWV4dGVuc2lvbnMtZHJvcC1kb3duLXRlcm1pbmFsIiwKICAidXVpZCI6ICJkcm9wLWRvd24tdGVybWluYWwteEBiaWdibi5wcm8iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}}}
-, {"uuid": "Rounded_Corners@lennart-k", "name": "Rounded Corners", "pname": "rounded-corners", "description": "Creates rounded corners for every monitor", "link": "https://extensions.gnome.org/extension/1514/rounded-corners/", "shell_version_map": {"38": {"version": "4", "sha256": "0pvbnv97g2mjbklszxvp6df50iw9kyr1ssfza8ia9779x5zq9bk9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgcm91bmRlZCBjb3JuZXJzIGZvciBldmVyeSBtb25pdG9yIiwKICAibmFtZSI6ICJSb3VuZGVkIENvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sZW5uYXJ0LWsvZ25vbWUtcm91bmRlZC1jb3JuZXJzIiwKICAidXVpZCI6ICJSb3VuZGVkX0Nvcm5lcnNAbGVubmFydC1rIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "8", "sha256": "0jc4fa9jrx8rk563j6a26mnal77nx949ngrffr4x3dx8ba97gc8n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgcm91bmRlZCBjb3JuZXJzIGZvciBldmVyeSBtb25pdG9yIiwKICAibmFtZSI6ICJSb3VuZGVkIENvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sZW5uYXJ0LWsvZ25vbWUtcm91bmRlZC1jb3JuZXJzIiwKICAidXVpZCI6ICJSb3VuZGVkX0Nvcm5lcnNAbGVubmFydC1rIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "41": {"version": "8", "sha256": "0jc4fa9jrx8rk563j6a26mnal77nx949ngrffr4x3dx8ba97gc8n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgcm91bmRlZCBjb3JuZXJzIGZvciBldmVyeSBtb25pdG9yIiwKICAibmFtZSI6ICJSb3VuZGVkIENvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sZW5uYXJ0LWsvZ25vbWUtcm91bmRlZC1jb3JuZXJzIiwKICAidXVpZCI6ICJSb3VuZGVkX0Nvcm5lcnNAbGVubmFydC1rIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "42": {"version": "8", "sha256": "0jc4fa9jrx8rk563j6a26mnal77nx949ngrffr4x3dx8ba97gc8n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgcm91bmRlZCBjb3JuZXJzIGZvciBldmVyeSBtb25pdG9yIiwKICAibmFtZSI6ICJSb3VuZGVkIENvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sZW5uYXJ0LWsvZ25vbWUtcm91bmRlZC1jb3JuZXJzIiwKICAidXVpZCI6ICJSb3VuZGVkX0Nvcm5lcnNAbGVubmFydC1rIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
+, {"uuid": "Rounded_Corners@lennart-k", "name": "Rounded Corners", "pname": "rounded-corners", "description": "Creates rounded corners for every monitor", "link": "https://extensions.gnome.org/extension/1514/rounded-corners/", "shell_version_map": {"38": {"version": "4", "sha256": "0pvbnv97g2mjbklszxvp6df50iw9kyr1ssfza8ia9779x5zq9bk9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgcm91bmRlZCBjb3JuZXJzIGZvciBldmVyeSBtb25pdG9yIiwKICAibmFtZSI6ICJSb3VuZGVkIENvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sZW5uYXJ0LWsvZ25vbWUtcm91bmRlZC1jb3JuZXJzIiwKICAidXVpZCI6ICJSb3VuZGVkX0Nvcm5lcnNAbGVubmFydC1rIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "9", "sha256": "1z76n9jp73dl1y7fyz00v0cvgiy8b988yflpb5qkfg0vs0al6m69", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgcm91bmRlZCBjb3JuZXJzIGZvciBldmVyeSBtb25pdG9yIiwKICAibmFtZSI6ICJSb3VuZGVkIENvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGVubmFydC1rL2dub21lLXJvdW5kZWQtY29ybmVycyIsCiAgInV1aWQiOiAiUm91bmRlZF9Db3JuZXJzQGxlbm5hcnQtayIsCiAgInZlcnNpb24iOiA5Cn0="}, "41": {"version": "9", "sha256": "1z76n9jp73dl1y7fyz00v0cvgiy8b988yflpb5qkfg0vs0al6m69", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgcm91bmRlZCBjb3JuZXJzIGZvciBldmVyeSBtb25pdG9yIiwKICAibmFtZSI6ICJSb3VuZGVkIENvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGVubmFydC1rL2dub21lLXJvdW5kZWQtY29ybmVycyIsCiAgInV1aWQiOiAiUm91bmRlZF9Db3JuZXJzQGxlbm5hcnQtayIsCiAgInZlcnNpb24iOiA5Cn0="}, "42": {"version": "9", "sha256": "1z76n9jp73dl1y7fyz00v0cvgiy8b988yflpb5qkfg0vs0al6m69", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgcm91bmRlZCBjb3JuZXJzIGZvciBldmVyeSBtb25pdG9yIiwKICAibmFtZSI6ICJSb3VuZGVkIENvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGVubmFydC1rL2dub21lLXJvdW5kZWQtY29ybmVycyIsCiAgInV1aWQiOiAiUm91bmRlZF9Db3JuZXJzQGxlbm5hcnQtayIsCiAgInZlcnNpb24iOiA5Cn0="}, "43": {"version": "9", "sha256": "1z76n9jp73dl1y7fyz00v0cvgiy8b988yflpb5qkfg0vs0al6m69", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgcm91bmRlZCBjb3JuZXJzIGZvciBldmVyeSBtb25pdG9yIiwKICAibmFtZSI6ICJSb3VuZGVkIENvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGVubmFydC1rL2dub21lLXJvdW5kZWQtY29ybmVycyIsCiAgInV1aWQiOiAiUm91bmRlZF9Db3JuZXJzQGxlbm5hcnQtayIsCiAgInZlcnNpb24iOiA5Cn0="}}}
 , {"uuid": "scrovol@andyholmes.github.io", "name": "Scrovol", "pname": "scrovol", "description": "Change the volume by scrolling anywhere on the System Tray.\n\nWith this extension, you can scroll over Night Light, WiFi, Volume, Battery or any other icon in the system status tray to change the volume, instead of just the Volume icon.", "link": "https://extensions.gnome.org/extension/1519/scrovol/", "shell_version_map": {"40": {"version": "4", "sha256": "1md52ygz481nvhq00bkq2ymby7f647cfvw4wx1wqkwp7b796d59c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB0aGUgdm9sdW1lIGJ5IHNjcm9sbGluZyBhbnl3aGVyZSBvbiB0aGUgU3lzdGVtIFRyYXkuXG5cbldpdGggdGhpcyBleHRlbnNpb24sIHlvdSBjYW4gc2Nyb2xsIG92ZXIgTmlnaHQgTGlnaHQsIFdpRmksIFZvbHVtZSwgQmF0dGVyeSBvciBhbnkgb3RoZXIgaWNvbiBpbiB0aGUgc3lzdGVtIHN0YXR1cyB0cmF5IHRvIGNoYW5nZSB0aGUgdm9sdW1lLCBpbnN0ZWFkIG9mIGp1c3QgdGhlIFZvbHVtZSBpY29uLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJzY3Jvdm9sIiwKICAibmFtZSI6ICJTY3Jvdm9sIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYW5keWhvbG1lcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tc2Nyb3ZvbC8iLAogICJ1dWlkIjogInNjcm92b2xAYW5keWhvbG1lcy5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNAp9"}}}
 , {"uuid": "notification-center@Selenium-H", "name": "Notification Center", "pname": "notification-centerselenium-h", "description": "Detach notification center to top panel and customizations.Please reset the extension after updating.\nThe Extension will stop when upgraded to an incompatible version.\nIn that case an Update tab is created to easily reset the extension.\nA Reset button is also always present in Preferences option in the Top Right Application menu of the extension preferences window.", "link": "https://extensions.gnome.org/extension/1526/notification-centerselenium-h/", "shell_version_map": {"38": {"version": "24", "sha256": "1449kl7fss2fyj1ks8ra3qy60jvn5fcl1iyv813s8vdkkp5dv8a2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1lbnQiOiAiRGV0YWNoIG5vdGlmaWNhdGlvbiBjZW50ZXIgdG8gdG9wIHBhbmVsIGFuZCBjdXN0b21pemF0aW9ucy4iLAogICJkZXNjcmlwdGlvbiI6ICJEZXRhY2ggbm90aWZpY2F0aW9uIGNlbnRlciB0byB0b3AgcGFuZWwgYW5kIGN1c3RvbWl6YXRpb25zLlBsZWFzZSByZXNldCB0aGUgZXh0ZW5zaW9uIGFmdGVyIHVwZGF0aW5nLlxuVGhlIEV4dGVuc2lvbiB3aWxsIHN0b3Agd2hlbiB1cGdyYWRlZCB0byBhbiBpbmNvbXBhdGlibGUgdmVyc2lvbi5cbkluIHRoYXQgY2FzZSBhbiBVcGRhdGUgdGFiIGlzIGNyZWF0ZWQgdG8gZWFzaWx5IHJlc2V0IHRoZSBleHRlbnNpb24uXG5BIFJlc2V0IGJ1dHRvbiBpcyBhbHNvIGFsd2F5cyBwcmVzZW50IGluIFByZWZlcmVuY2VzIG9wdGlvbiBpbiB0aGUgVG9wIFJpZ2h0IEFwcGxpY2F0aW9uIG1lbnUgb2YgdGhlIGV4dGVuc2lvbiBwcmVmZXJlbmNlcyB3aW5kb3cuIiwKICAibmFtZSI6ICJOb3RpZmljYXRpb24gQ2VudGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5vdGlmaWNhdGlvbi1jZW50ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInN0YXR1cyI6ICIiLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NlbGVuaXVtLUgvTm90aWZpY2F0aW9uLUNlbnRlciIsCiAgInV1aWQiOiAibm90aWZpY2F0aW9uLWNlbnRlckBTZWxlbml1bS1IIiwKICAidmVyc2lvbiI6IDI0Cn0="}, "40": {"version": "24", "sha256": "1449kl7fss2fyj1ks8ra3qy60jvn5fcl1iyv813s8vdkkp5dv8a2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1lbnQiOiAiRGV0YWNoIG5vdGlmaWNhdGlvbiBjZW50ZXIgdG8gdG9wIHBhbmVsIGFuZCBjdXN0b21pemF0aW9ucy4iLAogICJkZXNjcmlwdGlvbiI6ICJEZXRhY2ggbm90aWZpY2F0aW9uIGNlbnRlciB0byB0b3AgcGFuZWwgYW5kIGN1c3RvbWl6YXRpb25zLlBsZWFzZSByZXNldCB0aGUgZXh0ZW5zaW9uIGFmdGVyIHVwZGF0aW5nLlxuVGhlIEV4dGVuc2lvbiB3aWxsIHN0b3Agd2hlbiB1cGdyYWRlZCB0byBhbiBpbmNvbXBhdGlibGUgdmVyc2lvbi5cbkluIHRoYXQgY2FzZSBhbiBVcGRhdGUgdGFiIGlzIGNyZWF0ZWQgdG8gZWFzaWx5IHJlc2V0IHRoZSBleHRlbnNpb24uXG5BIFJlc2V0IGJ1dHRvbiBpcyBhbHNvIGFsd2F5cyBwcmVzZW50IGluIFByZWZlcmVuY2VzIG9wdGlvbiBpbiB0aGUgVG9wIFJpZ2h0IEFwcGxpY2F0aW9uIG1lbnUgb2YgdGhlIGV4dGVuc2lvbiBwcmVmZXJlbmNlcyB3aW5kb3cuIiwKICAibmFtZSI6ICJOb3RpZmljYXRpb24gQ2VudGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5vdGlmaWNhdGlvbi1jZW50ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInN0YXR1cyI6ICIiLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NlbGVuaXVtLUgvTm90aWZpY2F0aW9uLUNlbnRlciIsCiAgInV1aWQiOiAibm90aWZpY2F0aW9uLWNlbnRlckBTZWxlbml1bS1IIiwKICAidmVyc2lvbiI6IDI0Cn0="}}}
 , {"uuid": "lockkeys@fawtytoo", "name": "Lock Keys", "pname": "lock-keys", "description": "Numlock and Capslock status on the panel. Icons are auto hidden. Simplified with no menus, notifications or settings.\n\nWayland is only supported for Gnome Shell 3.38.", "link": "https://extensions.gnome.org/extension/1532/lock-keys/", "shell_version_map": {"38": {"version": "14", "sha256": "15gp2ncmh7ad1pdr2wc8jilwcp47mgchi82ldk0zpfbkl2f8cpm0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgYW5kIENhcHNsb2NrIHN0YXR1cyBvbiB0aGUgcGFuZWwuIEljb25zIGFyZSBhdXRvIGhpZGRlbi4gU2ltcGxpZmllZCB3aXRoIG5vIG1lbnVzLCBub3RpZmljYXRpb25zIG9yIHNldHRpbmdzLlxuXG5XYXlsYW5kIGlzIG9ubHkgc3VwcG9ydGVkIGZvciBHbm9tZSBTaGVsbCAzLjM4LiIsCiAgIm5hbWUiOiAiTG9jayBLZXlzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJTdGV2ZSBDbGFyaywgS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJsb2Nra2V5c0BmYXd0eXRvbyIsCiAgInZlcnNpb24iOiAxNAp9"}, "40": {"version": "14", "sha256": "15gp2ncmh7ad1pdr2wc8jilwcp47mgchi82ldk0zpfbkl2f8cpm0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgYW5kIENhcHNsb2NrIHN0YXR1cyBvbiB0aGUgcGFuZWwuIEljb25zIGFyZSBhdXRvIGhpZGRlbi4gU2ltcGxpZmllZCB3aXRoIG5vIG1lbnVzLCBub3RpZmljYXRpb25zIG9yIHNldHRpbmdzLlxuXG5XYXlsYW5kIGlzIG9ubHkgc3VwcG9ydGVkIGZvciBHbm9tZSBTaGVsbCAzLjM4LiIsCiAgIm5hbWUiOiAiTG9jayBLZXlzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJTdGV2ZSBDbGFyaywgS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJsb2Nra2V5c0BmYXd0eXRvbyIsCiAgInZlcnNpb24iOiAxNAp9"}, "41": {"version": "14", "sha256": "15gp2ncmh7ad1pdr2wc8jilwcp47mgchi82ldk0zpfbkl2f8cpm0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgYW5kIENhcHNsb2NrIHN0YXR1cyBvbiB0aGUgcGFuZWwuIEljb25zIGFyZSBhdXRvIGhpZGRlbi4gU2ltcGxpZmllZCB3aXRoIG5vIG1lbnVzLCBub3RpZmljYXRpb25zIG9yIHNldHRpbmdzLlxuXG5XYXlsYW5kIGlzIG9ubHkgc3VwcG9ydGVkIGZvciBHbm9tZSBTaGVsbCAzLjM4LiIsCiAgIm5hbWUiOiAiTG9jayBLZXlzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJTdGV2ZSBDbGFyaywgS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJsb2Nra2V5c0BmYXd0eXRvbyIsCiAgInZlcnNpb24iOiAxNAp9"}, "42": {"version": "14", "sha256": "15gp2ncmh7ad1pdr2wc8jilwcp47mgchi82ldk0zpfbkl2f8cpm0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgYW5kIENhcHNsb2NrIHN0YXR1cyBvbiB0aGUgcGFuZWwuIEljb25zIGFyZSBhdXRvIGhpZGRlbi4gU2ltcGxpZmllZCB3aXRoIG5vIG1lbnVzLCBub3RpZmljYXRpb25zIG9yIHNldHRpbmdzLlxuXG5XYXlsYW5kIGlzIG9ubHkgc3VwcG9ydGVkIGZvciBHbm9tZSBTaGVsbCAzLjM4LiIsCiAgIm5hbWUiOiAiTG9jayBLZXlzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJTdGV2ZSBDbGFyaywgS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJsb2Nra2V5c0BmYXd0eXRvbyIsCiAgInZlcnNpb24iOiAxNAp9"}}}
 , {"uuid": "LetItSnow@mateusz.banaszek.op.pl", "name": "Let it snow", "pname": "let-it-snow", "description": "Bring winter to your desktop: unicode snowflakes falling on your screens.\n\nFeatures:\n- snow doesn't fall over currently active window\n- use slider to choose how much snow you want\n- works with multiple monitors\n\nInspired by gsnow (https://extensions.gnome.org/extension/1156/gsnow/).", "link": "https://extensions.gnome.org/extension/1547/let-it-snow/", "shell_version_map": {"38": {"version": "5", "sha256": "07znrbba154277lxx1bvidn4kz5bgkxpgy7rv3sm472qdbsljl35", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5nIHdpbnRlciB0byB5b3VyIGRlc2t0b3A6IHVuaWNvZGUgc25vd2ZsYWtlcyBmYWxsaW5nIG9uIHlvdXIgc2NyZWVucy5cblxuRmVhdHVyZXM6XG4tIHNub3cgZG9lc24ndCBmYWxsIG92ZXIgY3VycmVudGx5IGFjdGl2ZSB3aW5kb3dcbi0gdXNlIHNsaWRlciB0byBjaG9vc2UgaG93IG11Y2ggc25vdyB5b3Ugd2FudFxuLSB3b3JrcyB3aXRoIG11bHRpcGxlIG1vbml0b3JzXG5cbkluc3BpcmVkIGJ5IGdzbm93IChodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8xMTU2L2dzbm93LykuIiwKICAibmFtZSI6ICJMZXQgaXQgc25vdyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9iaXRidWNrZXQub3JnL21hdGJhbi9sZXQtaXQtc25vdyIsCiAgInV1aWQiOiAiTGV0SXRTbm93QG1hdGV1c3ouYmFuYXN6ZWsub3AucGwiLAogICJ2ZXJzaW9uIjogNQp9"}}}
-, {"uuid": "fullscreen-hot-corner@sorrow.about.alice.pm.me", "name": "Fullscreen Hot Corner", "pname": "fullscreen-hot-corner", "description": "Enables hot corner in fullscreen mode", "link": "https://extensions.gnome.org/extension/1562/fullscreen-hot-corner/", "shell_version_map": {"38": {"version": "6", "sha256": "1lcpw06aqja4q7qqfvds5nv2zvzrjh56lymj1al4kiql92gbwzp1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgaG90IGNvcm5lciBpbiBmdWxsc2NyZWVuIG1vZGUiLAogICJuYW1lIjogIkZ1bGxzY3JlZW4gSG90IENvcm5lciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NvYWwvZ25vbWUtc2hlbGwtZnVsbHNjcmVlbi1ob3QtY29ybmVyIiwKICAidXVpZCI6ICJmdWxsc2NyZWVuLWhvdC1jb3JuZXJAc29ycm93LmFib3V0LmFsaWNlLnBtLm1lIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "40": {"version": "10", "sha256": "1v8nibi910axllycphivwclk74zdsvngbn71lby01kfjxzpzy7rh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgaG90IGNvcm5lciBpbiBmdWxsc2NyZWVuIG1vZGUiLAogICJuYW1lIjogIkZ1bGxzY3JlZW4gSG90IENvcm5lciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NvYWwvZ25vbWUtc2hlbGwtZnVsbHNjcmVlbi1ob3QtY29ybmVyIiwKICAidXVpZCI6ICJmdWxsc2NyZWVuLWhvdC1jb3JuZXJAc29ycm93LmFib3V0LmFsaWNlLnBtLm1lIiwKICAidmVyc2lvbiI6IDEwCn0="}, "41": {"version": "10", "sha256": "1v8nibi910axllycphivwclk74zdsvngbn71lby01kfjxzpzy7rh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgaG90IGNvcm5lciBpbiBmdWxsc2NyZWVuIG1vZGUiLAogICJuYW1lIjogIkZ1bGxzY3JlZW4gSG90IENvcm5lciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NvYWwvZ25vbWUtc2hlbGwtZnVsbHNjcmVlbi1ob3QtY29ybmVyIiwKICAidXVpZCI6ICJmdWxsc2NyZWVuLWhvdC1jb3JuZXJAc29ycm93LmFib3V0LmFsaWNlLnBtLm1lIiwKICAidmVyc2lvbiI6IDEwCn0="}, "42": {"version": "10", "sha256": "1v8nibi910axllycphivwclk74zdsvngbn71lby01kfjxzpzy7rh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgaG90IGNvcm5lciBpbiBmdWxsc2NyZWVuIG1vZGUiLAogICJuYW1lIjogIkZ1bGxzY3JlZW4gSG90IENvcm5lciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NvYWwvZ25vbWUtc2hlbGwtZnVsbHNjcmVlbi1ob3QtY29ybmVyIiwKICAidXVpZCI6ICJmdWxsc2NyZWVuLWhvdC1jb3JuZXJAc29ycm93LmFib3V0LmFsaWNlLnBtLm1lIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
-, {"uuid": "worksets@blipk.xyz", "name": "Customised Workspaces", "pname": "worksets", "description": "Customised Workspaces enables creating isolated and customised workspaces.\n\n* Customise the dash to be unique for each workspace, each with their own favourites\n* Only show running applications on the dash in their respective workspace\n* Choose a custom background image for each workspace\n* Minor UI tweaks to the overview workspaces\n* Save each customisation, set them to autoload on specific workspaces\n* Hide the extension once you've configured your preferences to enjoy seamlessly upgraded workspaces in gnome shell\n\nPlease do not leave a comment for issues and instead report it here: https://github.com/blipk/Customised-Workspaces/issues", "link": "https://extensions.gnome.org/extension/1583/worksets/", "shell_version_map": {"38": {"version": "30", "sha256": "0xzp0gmxspz6m746r2max304gblfbrfww2yskmx5kwp03hkj15y1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwud29ya3NldHMiLAogICJkZXNjcmlwdGlvbiI6ICJDdXN0b21pc2VkIFdvcmtzcGFjZXMgZW5hYmxlcyBjcmVhdGluZyBpc29sYXRlZCBhbmQgY3VzdG9taXNlZCB3b3Jrc3BhY2VzLlxuXG4qIEN1c3RvbWlzZSB0aGUgZGFzaCB0byBiZSB1bmlxdWUgZm9yIGVhY2ggd29ya3NwYWNlLCBlYWNoIHdpdGggdGhlaXIgb3duIGZhdm91cml0ZXNcbiogT25seSBzaG93IHJ1bm5pbmcgYXBwbGljYXRpb25zIG9uIHRoZSBkYXNoIGluIHRoZWlyIHJlc3BlY3RpdmUgd29ya3NwYWNlXG4qIENob29zZSBhIGN1c3RvbSBiYWNrZ3JvdW5kIGltYWdlIGZvciBlYWNoIHdvcmtzcGFjZVxuKiBNaW5vciBVSSB0d2Vha3MgdG8gdGhlIG92ZXJ2aWV3IHdvcmtzcGFjZXNcbiogU2F2ZSBlYWNoIGN1c3RvbWlzYXRpb24sIHNldCB0aGVtIHRvIGF1dG9sb2FkIG9uIHNwZWNpZmljIHdvcmtzcGFjZXNcbiogSGlkZSB0aGUgZXh0ZW5zaW9uIG9uY2UgeW91J3ZlIGNvbmZpZ3VyZWQgeW91ciBwcmVmZXJlbmNlcyB0byBlbmpveSBzZWFtbGVzc2x5IHVwZ3JhZGVkIHdvcmtzcGFjZXMgaW4gZ25vbWUgc2hlbGxcblxuUGxlYXNlIGRvIG5vdCBsZWF2ZSBhIGNvbW1lbnQgZm9yIGlzc3VlcyBhbmQgaW5zdGVhZCByZXBvcnQgaXQgaGVyZTogaHR0cHM6Ly9naXRodWIuY29tL2JsaXBrL0N1c3RvbWlzZWQtV29ya3NwYWNlcy9pc3N1ZXMiLAogICJleHRlbnNpb24taWQiOiAid29ya3NldHMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ3b3Jrc2V0cyIsCiAgIm5hbWUiOiAiQ3VzdG9taXNlZCBXb3Jrc3BhY2VzIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImFkbWluQGtyb25vc291bC54eXoiLAogICJyZXNvdXJjZS1wYXRoIjogIi9vcmcva3Jvbm9zb3VsL3dvcmtzZXRzLyIsCiAgInNldHRpbmdzLXBhdGgiOiAiL29yZy9nbm9tZS9zaGVsbC9leHRlbnNpb25zL3dvcmtzZXRzLyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53b3Jrc2V0cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuYmV0YSIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ibGlway9DdXN0b21pc2VkLVdvcmtzcGFjZXMiLAogICJ1dWlkIjogIndvcmtzZXRzQGJsaXBrLnh5eiIsCiAgInZlcnNpb24iOiAzMAp9"}, "40": {"version": "44", "sha256": "0k5h5ynxlv2zffify8s5dq27kys81n3fvnd40r5yp6v55hb2phx4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwud29ya3NldHMiLAogICJkZXNjcmlwdGlvbiI6ICJDdXN0b21pc2VkIFdvcmtzcGFjZXMgZW5hYmxlcyBjcmVhdGluZyBpc29sYXRlZCBhbmQgY3VzdG9taXNlZCB3b3Jrc3BhY2VzLlxuXG4qIEN1c3RvbWlzZSB0aGUgZGFzaCB0byBiZSB1bmlxdWUgZm9yIGVhY2ggd29ya3NwYWNlLCBlYWNoIHdpdGggdGhlaXIgb3duIGZhdm91cml0ZXNcbiogT25seSBzaG93IHJ1bm5pbmcgYXBwbGljYXRpb25zIG9uIHRoZSBkYXNoIGluIHRoZWlyIHJlc3BlY3RpdmUgd29ya3NwYWNlXG4qIENob29zZSBhIGN1c3RvbSBiYWNrZ3JvdW5kIGltYWdlIGZvciBlYWNoIHdvcmtzcGFjZVxuKiBNaW5vciBVSSB0d2Vha3MgdG8gdGhlIG92ZXJ2aWV3IHdvcmtzcGFjZXNcbiogU2F2ZSBlYWNoIGN1c3RvbWlzYXRpb24sIHNldCB0aGVtIHRvIGF1dG9sb2FkIG9uIHNwZWNpZmljIHdvcmtzcGFjZXNcbiogSGlkZSB0aGUgZXh0ZW5zaW9uIG9uY2UgeW91J3ZlIGNvbmZpZ3VyZWQgeW91ciBwcmVmZXJlbmNlcyB0byBlbmpveSBzZWFtbGVzc2x5IHVwZ3JhZGVkIHdvcmtzcGFjZXMgaW4gZ25vbWUgc2hlbGxcblxuUGxlYXNlIGRvIG5vdCBsZWF2ZSBhIGNvbW1lbnQgZm9yIGlzc3VlcyBhbmQgaW5zdGVhZCByZXBvcnQgaXQgaGVyZTogaHR0cHM6Ly9naXRodWIuY29tL2JsaXBrL0N1c3RvbWlzZWQtV29ya3NwYWNlcy9pc3N1ZXMiLAogICJleHRlbnNpb24taWQiOiAid29ya3NldHMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ3b3Jrc2V0cyIsCiAgIm5hbWUiOiAiQ3VzdG9taXNlZCBXb3Jrc3BhY2VzIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImJsaXBrIiwKICAicmVzb3VyY2UtcGF0aCI6ICIvb3JnL2tyb25vc291bC93b3Jrc2V0cy8iLAogICJzZXR0aW5ncy1wYXRoIjogIi9vcmcvZ25vbWUvc2hlbGwvZXh0ZW5zaW9ucy93b3Jrc2V0cy8iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud29ya3NldHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ibGlway9DdXN0b21pc2VkLVdvcmtzcGFjZXMiLAogICJ1dWlkIjogIndvcmtzZXRzQGJsaXBrLnh5eiIsCiAgInZlcnNpb24iOiA0NAp9"}, "41": {"version": "44", "sha256": "0k5h5ynxlv2zffify8s5dq27kys81n3fvnd40r5yp6v55hb2phx4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwud29ya3NldHMiLAogICJkZXNjcmlwdGlvbiI6ICJDdXN0b21pc2VkIFdvcmtzcGFjZXMgZW5hYmxlcyBjcmVhdGluZyBpc29sYXRlZCBhbmQgY3VzdG9taXNlZCB3b3Jrc3BhY2VzLlxuXG4qIEN1c3RvbWlzZSB0aGUgZGFzaCB0byBiZSB1bmlxdWUgZm9yIGVhY2ggd29ya3NwYWNlLCBlYWNoIHdpdGggdGhlaXIgb3duIGZhdm91cml0ZXNcbiogT25seSBzaG93IHJ1bm5pbmcgYXBwbGljYXRpb25zIG9uIHRoZSBkYXNoIGluIHRoZWlyIHJlc3BlY3RpdmUgd29ya3NwYWNlXG4qIENob29zZSBhIGN1c3RvbSBiYWNrZ3JvdW5kIGltYWdlIGZvciBlYWNoIHdvcmtzcGFjZVxuKiBNaW5vciBVSSB0d2Vha3MgdG8gdGhlIG92ZXJ2aWV3IHdvcmtzcGFjZXNcbiogU2F2ZSBlYWNoIGN1c3RvbWlzYXRpb24sIHNldCB0aGVtIHRvIGF1dG9sb2FkIG9uIHNwZWNpZmljIHdvcmtzcGFjZXNcbiogSGlkZSB0aGUgZXh0ZW5zaW9uIG9uY2UgeW91J3ZlIGNvbmZpZ3VyZWQgeW91ciBwcmVmZXJlbmNlcyB0byBlbmpveSBzZWFtbGVzc2x5IHVwZ3JhZGVkIHdvcmtzcGFjZXMgaW4gZ25vbWUgc2hlbGxcblxuUGxlYXNlIGRvIG5vdCBsZWF2ZSBhIGNvbW1lbnQgZm9yIGlzc3VlcyBhbmQgaW5zdGVhZCByZXBvcnQgaXQgaGVyZTogaHR0cHM6Ly9naXRodWIuY29tL2JsaXBrL0N1c3RvbWlzZWQtV29ya3NwYWNlcy9pc3N1ZXMiLAogICJleHRlbnNpb24taWQiOiAid29ya3NldHMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ3b3Jrc2V0cyIsCiAgIm5hbWUiOiAiQ3VzdG9taXNlZCBXb3Jrc3BhY2VzIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImJsaXBrIiwKICAicmVzb3VyY2UtcGF0aCI6ICIvb3JnL2tyb25vc291bC93b3Jrc2V0cy8iLAogICJzZXR0aW5ncy1wYXRoIjogIi9vcmcvZ25vbWUvc2hlbGwvZXh0ZW5zaW9ucy93b3Jrc2V0cy8iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud29ya3NldHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ibGlway9DdXN0b21pc2VkLVdvcmtzcGFjZXMiLAogICJ1dWlkIjogIndvcmtzZXRzQGJsaXBrLnh5eiIsCiAgInZlcnNpb24iOiA0NAp9"}, "42": {"version": "45", "sha256": "0haabmadx1izf9jqhi6ds3a88q29zp2dl5s843pyqdvgp8li2hxp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwud29ya3NldHMiLAogICJkZXNjcmlwdGlvbiI6ICJDdXN0b21pc2VkIFdvcmtzcGFjZXMgZW5hYmxlcyBjcmVhdGluZyBpc29sYXRlZCBhbmQgY3VzdG9taXNlZCB3b3Jrc3BhY2VzLlxuXG4qIEN1c3RvbWlzZSB0aGUgZGFzaCB0byBiZSB1bmlxdWUgZm9yIGVhY2ggd29ya3NwYWNlLCBlYWNoIHdpdGggdGhlaXIgb3duIGZhdm91cml0ZXNcbiogT25seSBzaG93IHJ1bm5pbmcgYXBwbGljYXRpb25zIG9uIHRoZSBkYXNoIGluIHRoZWlyIHJlc3BlY3RpdmUgd29ya3NwYWNlXG4qIENob29zZSBhIGN1c3RvbSBiYWNrZ3JvdW5kIGltYWdlIGZvciBlYWNoIHdvcmtzcGFjZVxuKiBNaW5vciBVSSB0d2Vha3MgdG8gdGhlIG92ZXJ2aWV3IHdvcmtzcGFjZXNcbiogU2F2ZSBlYWNoIGN1c3RvbWlzYXRpb24sIHNldCB0aGVtIHRvIGF1dG9sb2FkIG9uIHNwZWNpZmljIHdvcmtzcGFjZXNcbiogSGlkZSB0aGUgZXh0ZW5zaW9uIG9uY2UgeW91J3ZlIGNvbmZpZ3VyZWQgeW91ciBwcmVmZXJlbmNlcyB0byBlbmpveSBzZWFtbGVzc2x5IHVwZ3JhZGVkIHdvcmtzcGFjZXMgaW4gZ25vbWUgc2hlbGxcblxuUGxlYXNlIGRvIG5vdCBsZWF2ZSBhIGNvbW1lbnQgZm9yIGlzc3VlcyBhbmQgaW5zdGVhZCByZXBvcnQgaXQgaGVyZTogaHR0cHM6Ly9naXRodWIuY29tL2JsaXBrL0N1c3RvbWlzZWQtV29ya3NwYWNlcy9pc3N1ZXMiLAogICJleHRlbnNpb24taWQiOiAid29ya3NldHMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ3b3Jrc2V0cyIsCiAgIm5hbWUiOiAiQ3VzdG9taXNlZCBXb3Jrc3BhY2VzIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImJsaXBrIiwKICAicmVzb3VyY2UtcGF0aCI6ICIvb3JnL2tyb25vc291bC93b3Jrc2V0cy8iLAogICJzZXR0aW5ncy1wYXRoIjogIi9vcmcvZ25vbWUvc2hlbGwvZXh0ZW5zaW9ucy93b3Jrc2V0cy8iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud29ya3NldHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JsaXBrL0N1c3RvbWlzZWQtV29ya3NwYWNlcyIsCiAgInV1aWQiOiAid29ya3NldHNAYmxpcGsueHl6IiwKICAidmVyc2lvbiI6IDQ1Cn0="}, "43": {"version": "45", "sha256": "0haabmadx1izf9jqhi6ds3a88q29zp2dl5s843pyqdvgp8li2hxp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwud29ya3NldHMiLAogICJkZXNjcmlwdGlvbiI6ICJDdXN0b21pc2VkIFdvcmtzcGFjZXMgZW5hYmxlcyBjcmVhdGluZyBpc29sYXRlZCBhbmQgY3VzdG9taXNlZCB3b3Jrc3BhY2VzLlxuXG4qIEN1c3RvbWlzZSB0aGUgZGFzaCB0byBiZSB1bmlxdWUgZm9yIGVhY2ggd29ya3NwYWNlLCBlYWNoIHdpdGggdGhlaXIgb3duIGZhdm91cml0ZXNcbiogT25seSBzaG93IHJ1bm5pbmcgYXBwbGljYXRpb25zIG9uIHRoZSBkYXNoIGluIHRoZWlyIHJlc3BlY3RpdmUgd29ya3NwYWNlXG4qIENob29zZSBhIGN1c3RvbSBiYWNrZ3JvdW5kIGltYWdlIGZvciBlYWNoIHdvcmtzcGFjZVxuKiBNaW5vciBVSSB0d2Vha3MgdG8gdGhlIG92ZXJ2aWV3IHdvcmtzcGFjZXNcbiogU2F2ZSBlYWNoIGN1c3RvbWlzYXRpb24sIHNldCB0aGVtIHRvIGF1dG9sb2FkIG9uIHNwZWNpZmljIHdvcmtzcGFjZXNcbiogSGlkZSB0aGUgZXh0ZW5zaW9uIG9uY2UgeW91J3ZlIGNvbmZpZ3VyZWQgeW91ciBwcmVmZXJlbmNlcyB0byBlbmpveSBzZWFtbGVzc2x5IHVwZ3JhZGVkIHdvcmtzcGFjZXMgaW4gZ25vbWUgc2hlbGxcblxuUGxlYXNlIGRvIG5vdCBsZWF2ZSBhIGNvbW1lbnQgZm9yIGlzc3VlcyBhbmQgaW5zdGVhZCByZXBvcnQgaXQgaGVyZTogaHR0cHM6Ly9naXRodWIuY29tL2JsaXBrL0N1c3RvbWlzZWQtV29ya3NwYWNlcy9pc3N1ZXMiLAogICJleHRlbnNpb24taWQiOiAid29ya3NldHMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ3b3Jrc2V0cyIsCiAgIm5hbWUiOiAiQ3VzdG9taXNlZCBXb3Jrc3BhY2VzIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImJsaXBrIiwKICAicmVzb3VyY2UtcGF0aCI6ICIvb3JnL2tyb25vc291bC93b3Jrc2V0cy8iLAogICJzZXR0aW5ncy1wYXRoIjogIi9vcmcvZ25vbWUvc2hlbGwvZXh0ZW5zaW9ucy93b3Jrc2V0cy8iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud29ya3NldHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JsaXBrL0N1c3RvbWlzZWQtV29ya3NwYWNlcyIsCiAgInV1aWQiOiAid29ya3NldHNAYmxpcGsueHl6IiwKICAidmVyc2lvbiI6IDQ1Cn0="}}}
+, {"uuid": "fullscreen-hot-corner@sorrow.about.alice.pm.me", "name": "Fullscreen Hot Corner", "pname": "fullscreen-hot-corner", "description": "Enables hot corner in fullscreen mode", "link": "https://extensions.gnome.org/extension/1562/fullscreen-hot-corner/", "shell_version_map": {"38": {"version": "6", "sha256": "1lcpw06aqja4q7qqfvds5nv2zvzrjh56lymj1al4kiql92gbwzp1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgaG90IGNvcm5lciBpbiBmdWxsc2NyZWVuIG1vZGUiLAogICJuYW1lIjogIkZ1bGxzY3JlZW4gSG90IENvcm5lciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NvYWwvZ25vbWUtc2hlbGwtZnVsbHNjcmVlbi1ob3QtY29ybmVyIiwKICAidXVpZCI6ICJmdWxsc2NyZWVuLWhvdC1jb3JuZXJAc29ycm93LmFib3V0LmFsaWNlLnBtLm1lIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "40": {"version": "10", "sha256": "1v8nibi910axllycphivwclk74zdsvngbn71lby01kfjxzpzy7rh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgaG90IGNvcm5lciBpbiBmdWxsc2NyZWVuIG1vZGUiLAogICJuYW1lIjogIkZ1bGxzY3JlZW4gSG90IENvcm5lciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NvYWwvZ25vbWUtc2hlbGwtZnVsbHNjcmVlbi1ob3QtY29ybmVyIiwKICAidXVpZCI6ICJmdWxsc2NyZWVuLWhvdC1jb3JuZXJAc29ycm93LmFib3V0LmFsaWNlLnBtLm1lIiwKICAidmVyc2lvbiI6IDEwCn0="}, "41": {"version": "11", "sha256": "0xs8fyh3q6hvdw0w5qiga7dpm1vhbrx431mb53r69nys4s3q4syl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgaG90IGNvcm5lciBpbiBmdWxsc2NyZWVuIG1vZGUiLAogICJuYW1lIjogIkZ1bGxzY3JlZW4gSG90IENvcm5lciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NvYWwvZ25vbWUtc2hlbGwtZnVsbHNjcmVlbi1ob3QtY29ybmVyIiwKICAidXVpZCI6ICJmdWxsc2NyZWVuLWhvdC1jb3JuZXJAc29ycm93LmFib3V0LmFsaWNlLnBtLm1lIiwKICAidmVyc2lvbiI6IDExCn0="}, "42": {"version": "11", "sha256": "0xs8fyh3q6hvdw0w5qiga7dpm1vhbrx431mb53r69nys4s3q4syl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgaG90IGNvcm5lciBpbiBmdWxsc2NyZWVuIG1vZGUiLAogICJuYW1lIjogIkZ1bGxzY3JlZW4gSG90IENvcm5lciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NvYWwvZ25vbWUtc2hlbGwtZnVsbHNjcmVlbi1ob3QtY29ybmVyIiwKICAidXVpZCI6ICJmdWxsc2NyZWVuLWhvdC1jb3JuZXJAc29ycm93LmFib3V0LmFsaWNlLnBtLm1lIiwKICAidmVyc2lvbiI6IDExCn0="}, "43": {"version": "11", "sha256": "0xs8fyh3q6hvdw0w5qiga7dpm1vhbrx431mb53r69nys4s3q4syl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgaG90IGNvcm5lciBpbiBmdWxsc2NyZWVuIG1vZGUiLAogICJuYW1lIjogIkZ1bGxzY3JlZW4gSG90IENvcm5lciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NvYWwvZ25vbWUtc2hlbGwtZnVsbHNjcmVlbi1ob3QtY29ybmVyIiwKICAidXVpZCI6ICJmdWxsc2NyZWVuLWhvdC1jb3JuZXJAc29ycm93LmFib3V0LmFsaWNlLnBtLm1lIiwKICAidmVyc2lvbiI6IDExCn0="}}}
+, {"uuid": "worksets@blipk.xyz", "name": "Customised Workspaces", "pname": "worksets", "description": "Customised Workspaces enables creating isolated and customised workspaces.\n\n* Choose a different background image for each workspace\n* Your dash will have unique favourite applications on each workspace\n* Optionally isolate running applications to only appear on the dash in their respective workspace\n* Optionally show workspace information and actions in the overview\n* Set each customised workspace to autoload on specific workspaces\n* Hide the extension once you've configured your preferences to enjoy seamlessly upgraded workspaces in gnome shell\n\nPlease do not leave a comment for issues and instead report it here: https://github.com/blipk/Customised-Workspaces/issues", "link": "https://extensions.gnome.org/extension/1583/worksets/", "shell_version_map": {"38": {"version": "30", "sha256": "1z1yy47x20vqmjgghn91zs9nfs2g6f57nv4rzyi47bnklw7zsdcf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwud29ya3NldHMiLAogICJkZXNjcmlwdGlvbiI6ICJDdXN0b21pc2VkIFdvcmtzcGFjZXMgZW5hYmxlcyBjcmVhdGluZyBpc29sYXRlZCBhbmQgY3VzdG9taXNlZCB3b3Jrc3BhY2VzLlxuXG4qIENob29zZSBhIGRpZmZlcmVudCBiYWNrZ3JvdW5kIGltYWdlIGZvciBlYWNoIHdvcmtzcGFjZVxuKiBZb3VyIGRhc2ggd2lsbCBoYXZlIHVuaXF1ZSBmYXZvdXJpdGUgYXBwbGljYXRpb25zIG9uIGVhY2ggd29ya3NwYWNlXG4qIE9wdGlvbmFsbHkgaXNvbGF0ZSBydW5uaW5nIGFwcGxpY2F0aW9ucyB0byBvbmx5IGFwcGVhciBvbiB0aGUgZGFzaCBpbiB0aGVpciByZXNwZWN0aXZlIHdvcmtzcGFjZVxuKiBPcHRpb25hbGx5IHNob3cgd29ya3NwYWNlIGluZm9ybWF0aW9uIGFuZCBhY3Rpb25zIGluIHRoZSBvdmVydmlld1xuKiBTZXQgZWFjaCBjdXN0b21pc2VkIHdvcmtzcGFjZSB0byBhdXRvbG9hZCBvbiBzcGVjaWZpYyB3b3Jrc3BhY2VzXG4qIEhpZGUgdGhlIGV4dGVuc2lvbiBvbmNlIHlvdSd2ZSBjb25maWd1cmVkIHlvdXIgcHJlZmVyZW5jZXMgdG8gZW5qb3kgc2VhbWxlc3NseSB1cGdyYWRlZCB3b3Jrc3BhY2VzIGluIGdub21lIHNoZWxsXG5cblBsZWFzZSBkbyBub3QgbGVhdmUgYSBjb21tZW50IGZvciBpc3N1ZXMgYW5kIGluc3RlYWQgcmVwb3J0IGl0IGhlcmU6IGh0dHBzOi8vZ2l0aHViLmNvbS9ibGlway9DdXN0b21pc2VkLVdvcmtzcGFjZXMvaXNzdWVzIiwKICAiZXh0ZW5zaW9uLWlkIjogIndvcmtzZXRzIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid29ya3NldHMiLAogICJuYW1lIjogIkN1c3RvbWlzZWQgV29ya3NwYWNlcyIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJhZG1pbkBrcm9ub3NvdWwueHl6IiwKICAicmVzb3VyY2UtcGF0aCI6ICIvb3JnL2tyb25vc291bC93b3Jrc2V0cy8iLAogICJzZXR0aW5ncy1wYXRoIjogIi9vcmcvZ25vbWUvc2hlbGwvZXh0ZW5zaW9ucy93b3Jrc2V0cy8iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud29ya3NldHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLmJldGEiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYmxpcGsvQ3VzdG9taXNlZC1Xb3Jrc3BhY2VzIiwKICAidXVpZCI6ICJ3b3Jrc2V0c0BibGlway54eXoiLAogICJ2ZXJzaW9uIjogMzAKfQ=="}, "40": {"version": "44", "sha256": "0mn0ahbvgf78wn957hikjp0lhmy85sczlgf70sgzgacz266h6vb1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwud29ya3NldHMiLAogICJkZXNjcmlwdGlvbiI6ICJDdXN0b21pc2VkIFdvcmtzcGFjZXMgZW5hYmxlcyBjcmVhdGluZyBpc29sYXRlZCBhbmQgY3VzdG9taXNlZCB3b3Jrc3BhY2VzLlxuXG4qIENob29zZSBhIGRpZmZlcmVudCBiYWNrZ3JvdW5kIGltYWdlIGZvciBlYWNoIHdvcmtzcGFjZVxuKiBZb3VyIGRhc2ggd2lsbCBoYXZlIHVuaXF1ZSBmYXZvdXJpdGUgYXBwbGljYXRpb25zIG9uIGVhY2ggd29ya3NwYWNlXG4qIE9wdGlvbmFsbHkgaXNvbGF0ZSBydW5uaW5nIGFwcGxpY2F0aW9ucyB0byBvbmx5IGFwcGVhciBvbiB0aGUgZGFzaCBpbiB0aGVpciByZXNwZWN0aXZlIHdvcmtzcGFjZVxuKiBPcHRpb25hbGx5IHNob3cgd29ya3NwYWNlIGluZm9ybWF0aW9uIGFuZCBhY3Rpb25zIGluIHRoZSBvdmVydmlld1xuKiBTZXQgZWFjaCBjdXN0b21pc2VkIHdvcmtzcGFjZSB0byBhdXRvbG9hZCBvbiBzcGVjaWZpYyB3b3Jrc3BhY2VzXG4qIEhpZGUgdGhlIGV4dGVuc2lvbiBvbmNlIHlvdSd2ZSBjb25maWd1cmVkIHlvdXIgcHJlZmVyZW5jZXMgdG8gZW5qb3kgc2VhbWxlc3NseSB1cGdyYWRlZCB3b3Jrc3BhY2VzIGluIGdub21lIHNoZWxsXG5cblBsZWFzZSBkbyBub3QgbGVhdmUgYSBjb21tZW50IGZvciBpc3N1ZXMgYW5kIGluc3RlYWQgcmVwb3J0IGl0IGhlcmU6IGh0dHBzOi8vZ2l0aHViLmNvbS9ibGlway9DdXN0b21pc2VkLVdvcmtzcGFjZXMvaXNzdWVzIiwKICAiZXh0ZW5zaW9uLWlkIjogIndvcmtzZXRzIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid29ya3NldHMiLAogICJuYW1lIjogIkN1c3RvbWlzZWQgV29ya3NwYWNlcyIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJibGlwayIsCiAgInJlc291cmNlLXBhdGgiOiAiL29yZy9rcm9ub3NvdWwvd29ya3NldHMvIiwKICAic2V0dGluZ3MtcGF0aCI6ICIvb3JnL2dub21lL3NoZWxsL2V4dGVuc2lvbnMvd29ya3NldHMvIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndvcmtzZXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYmxpcGsvQ3VzdG9taXNlZC1Xb3Jrc3BhY2VzIiwKICAidXVpZCI6ICJ3b3Jrc2V0c0BibGlway54eXoiLAogICJ2ZXJzaW9uIjogNDQKfQ=="}, "41": {"version": "44", "sha256": "0mn0ahbvgf78wn957hikjp0lhmy85sczlgf70sgzgacz266h6vb1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwud29ya3NldHMiLAogICJkZXNjcmlwdGlvbiI6ICJDdXN0b21pc2VkIFdvcmtzcGFjZXMgZW5hYmxlcyBjcmVhdGluZyBpc29sYXRlZCBhbmQgY3VzdG9taXNlZCB3b3Jrc3BhY2VzLlxuXG4qIENob29zZSBhIGRpZmZlcmVudCBiYWNrZ3JvdW5kIGltYWdlIGZvciBlYWNoIHdvcmtzcGFjZVxuKiBZb3VyIGRhc2ggd2lsbCBoYXZlIHVuaXF1ZSBmYXZvdXJpdGUgYXBwbGljYXRpb25zIG9uIGVhY2ggd29ya3NwYWNlXG4qIE9wdGlvbmFsbHkgaXNvbGF0ZSBydW5uaW5nIGFwcGxpY2F0aW9ucyB0byBvbmx5IGFwcGVhciBvbiB0aGUgZGFzaCBpbiB0aGVpciByZXNwZWN0aXZlIHdvcmtzcGFjZVxuKiBPcHRpb25hbGx5IHNob3cgd29ya3NwYWNlIGluZm9ybWF0aW9uIGFuZCBhY3Rpb25zIGluIHRoZSBvdmVydmlld1xuKiBTZXQgZWFjaCBjdXN0b21pc2VkIHdvcmtzcGFjZSB0byBhdXRvbG9hZCBvbiBzcGVjaWZpYyB3b3Jrc3BhY2VzXG4qIEhpZGUgdGhlIGV4dGVuc2lvbiBvbmNlIHlvdSd2ZSBjb25maWd1cmVkIHlvdXIgcHJlZmVyZW5jZXMgdG8gZW5qb3kgc2VhbWxlc3NseSB1cGdyYWRlZCB3b3Jrc3BhY2VzIGluIGdub21lIHNoZWxsXG5cblBsZWFzZSBkbyBub3QgbGVhdmUgYSBjb21tZW50IGZvciBpc3N1ZXMgYW5kIGluc3RlYWQgcmVwb3J0IGl0IGhlcmU6IGh0dHBzOi8vZ2l0aHViLmNvbS9ibGlway9DdXN0b21pc2VkLVdvcmtzcGFjZXMvaXNzdWVzIiwKICAiZXh0ZW5zaW9uLWlkIjogIndvcmtzZXRzIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid29ya3NldHMiLAogICJuYW1lIjogIkN1c3RvbWlzZWQgV29ya3NwYWNlcyIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJibGlwayIsCiAgInJlc291cmNlLXBhdGgiOiAiL29yZy9rcm9ub3NvdWwvd29ya3NldHMvIiwKICAic2V0dGluZ3MtcGF0aCI6ICIvb3JnL2dub21lL3NoZWxsL2V4dGVuc2lvbnMvd29ya3NldHMvIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndvcmtzZXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYmxpcGsvQ3VzdG9taXNlZC1Xb3Jrc3BhY2VzIiwKICAidXVpZCI6ICJ3b3Jrc2V0c0BibGlway54eXoiLAogICJ2ZXJzaW9uIjogNDQKfQ=="}, "42": {"version": "46", "sha256": "0pxxdllcdkp6cfhyhg2zkx2k4a7pqfhzhifawz6hshi0j0xw5lhl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwud29ya3NldHMiLAogICJkZXNjcmlwdGlvbiI6ICJDdXN0b21pc2VkIFdvcmtzcGFjZXMgZW5hYmxlcyBjcmVhdGluZyBpc29sYXRlZCBhbmQgY3VzdG9taXNlZCB3b3Jrc3BhY2VzLlxuXG4qIENob29zZSBhIGRpZmZlcmVudCBiYWNrZ3JvdW5kIGltYWdlIGZvciBlYWNoIHdvcmtzcGFjZVxuKiBZb3VyIGRhc2ggd2lsbCBoYXZlIHVuaXF1ZSBmYXZvdXJpdGUgYXBwbGljYXRpb25zIG9uIGVhY2ggd29ya3NwYWNlXG4qIE9wdGlvbmFsbHkgaXNvbGF0ZSBydW5uaW5nIGFwcGxpY2F0aW9ucyB0byBvbmx5IGFwcGVhciBvbiB0aGUgZGFzaCBpbiB0aGVpciByZXNwZWN0aXZlIHdvcmtzcGFjZVxuKiBPcHRpb25hbGx5IHNob3cgd29ya3NwYWNlIGluZm9ybWF0aW9uIGFuZCBhY3Rpb25zIGluIHRoZSBvdmVydmlld1xuKiBTZXQgZWFjaCBjdXN0b21pc2VkIHdvcmtzcGFjZSB0byBhdXRvbG9hZCBvbiBzcGVjaWZpYyB3b3Jrc3BhY2VzXG4qIEhpZGUgdGhlIGV4dGVuc2lvbiBvbmNlIHlvdSd2ZSBjb25maWd1cmVkIHlvdXIgcHJlZmVyZW5jZXMgdG8gZW5qb3kgc2VhbWxlc3NseSB1cGdyYWRlZCB3b3Jrc3BhY2VzIGluIGdub21lIHNoZWxsXG5cblBsZWFzZSBkbyBub3QgbGVhdmUgYSBjb21tZW50IGZvciBpc3N1ZXMgYW5kIGluc3RlYWQgcmVwb3J0IGl0IGhlcmU6IGh0dHBzOi8vZ2l0aHViLmNvbS9ibGlway9DdXN0b21pc2VkLVdvcmtzcGFjZXMvaXNzdWVzIiwKICAiZXh0ZW5zaW9uLWlkIjogIndvcmtzZXRzIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid29ya3NldHMiLAogICJuYW1lIjogIkN1c3RvbWlzZWQgV29ya3NwYWNlcyIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJibGlwayIsCiAgInJlc291cmNlLXBhdGgiOiAiL29yZy9rcm9ub3NvdWwvd29ya3NldHMvIiwKICAic2V0dGluZ3MtcGF0aCI6ICIvb3JnL2dub21lL3NoZWxsL2V4dGVuc2lvbnMvd29ya3NldHMvIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndvcmtzZXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ibGlway9DdXN0b21pc2VkLVdvcmtzcGFjZXMiLAogICJ1dWlkIjogIndvcmtzZXRzQGJsaXBrLnh5eiIsCiAgInZlcnNpb24iOiA0Ngp9"}, "43": {"version": "46", "sha256": "0pxxdllcdkp6cfhyhg2zkx2k4a7pqfhzhifawz6hshi0j0xw5lhl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwud29ya3NldHMiLAogICJkZXNjcmlwdGlvbiI6ICJDdXN0b21pc2VkIFdvcmtzcGFjZXMgZW5hYmxlcyBjcmVhdGluZyBpc29sYXRlZCBhbmQgY3VzdG9taXNlZCB3b3Jrc3BhY2VzLlxuXG4qIENob29zZSBhIGRpZmZlcmVudCBiYWNrZ3JvdW5kIGltYWdlIGZvciBlYWNoIHdvcmtzcGFjZVxuKiBZb3VyIGRhc2ggd2lsbCBoYXZlIHVuaXF1ZSBmYXZvdXJpdGUgYXBwbGljYXRpb25zIG9uIGVhY2ggd29ya3NwYWNlXG4qIE9wdGlvbmFsbHkgaXNvbGF0ZSBydW5uaW5nIGFwcGxpY2F0aW9ucyB0byBvbmx5IGFwcGVhciBvbiB0aGUgZGFzaCBpbiB0aGVpciByZXNwZWN0aXZlIHdvcmtzcGFjZVxuKiBPcHRpb25hbGx5IHNob3cgd29ya3NwYWNlIGluZm9ybWF0aW9uIGFuZCBhY3Rpb25zIGluIHRoZSBvdmVydmlld1xuKiBTZXQgZWFjaCBjdXN0b21pc2VkIHdvcmtzcGFjZSB0byBhdXRvbG9hZCBvbiBzcGVjaWZpYyB3b3Jrc3BhY2VzXG4qIEhpZGUgdGhlIGV4dGVuc2lvbiBvbmNlIHlvdSd2ZSBjb25maWd1cmVkIHlvdXIgcHJlZmVyZW5jZXMgdG8gZW5qb3kgc2VhbWxlc3NseSB1cGdyYWRlZCB3b3Jrc3BhY2VzIGluIGdub21lIHNoZWxsXG5cblBsZWFzZSBkbyBub3QgbGVhdmUgYSBjb21tZW50IGZvciBpc3N1ZXMgYW5kIGluc3RlYWQgcmVwb3J0IGl0IGhlcmU6IGh0dHBzOi8vZ2l0aHViLmNvbS9ibGlway9DdXN0b21pc2VkLVdvcmtzcGFjZXMvaXNzdWVzIiwKICAiZXh0ZW5zaW9uLWlkIjogIndvcmtzZXRzIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid29ya3NldHMiLAogICJuYW1lIjogIkN1c3RvbWlzZWQgV29ya3NwYWNlcyIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJibGlwayIsCiAgInJlc291cmNlLXBhdGgiOiAiL29yZy9rcm9ub3NvdWwvd29ya3NldHMvIiwKICAic2V0dGluZ3MtcGF0aCI6ICIvb3JnL2dub21lL3NoZWxsL2V4dGVuc2lvbnMvd29ya3NldHMvIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndvcmtzZXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ibGlway9DdXN0b21pc2VkLVdvcmtzcGFjZXMiLAogICJ1dWlkIjogIndvcmtzZXRzQGJsaXBrLnh5eiIsCiAgInZlcnNpb24iOiA0Ngp9"}}}
 , {"uuid": "NordVPN_Connect@poilrouge.fr", "name": "NordVPN Connect", "pname": "nordvpn-connect", "description": "Unofficial Gnome-Shell Extension to provide a GUI for the official NordVPN CLI Tool.", "link": "https://extensions.gnome.org/extension/1595/nordvpn-connect/", "shell_version_map": {"38": {"version": "15", "sha256": "0xccvy3kqgglhcjhixlxi65sa49lbm896lra2sks65arkx3fh63k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVub2ZmaWNpYWwgR25vbWUtU2hlbGwgRXh0ZW5zaW9uIHRvIHByb3ZpZGUgYSBHVUkgZm9yIHRoZSBvZmZpY2lhbCBOb3JkVlBOIENMSSBUb29sLiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMtbnZwbmNvbm5lY3QiLAogICJuYW1lIjogIk5vcmRWUE4gQ29ubmVjdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5udnBuY29ubmVjdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0FsZXhQb2lscm91Z2UvTm9yZFZQTi1jb25uZWN0IiwKICAidXVpZCI6ICJOb3JkVlBOX0Nvbm5lY3RAcG9pbHJvdWdlLmZyIiwKICAidmVyc2lvbiI6IDE1Cn0="}, "40": {"version": "18", "sha256": "0isn56fj58aikld1fy8q3afqg2acsz4wbfskzip25xsbc0hpy9qf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVub2ZmaWNpYWwgR25vbWUtU2hlbGwgRXh0ZW5zaW9uIHRvIHByb3ZpZGUgYSBHVUkgZm9yIHRoZSBvZmZpY2lhbCBOb3JkVlBOIENMSSBUb29sLiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMtbnZwbmNvbm5lY3QiLAogICJuYW1lIjogIk5vcmRWUE4gQ29ubmVjdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5udnBuY29ubmVjdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQWxleFBvaWxyb3VnZS9Ob3JkVlBOLWNvbm5lY3QiLAogICJ1dWlkIjogIk5vcmRWUE5fQ29ubmVjdEBwb2lscm91Z2UuZnIiLAogICJ2ZXJzaW9uIjogMTgKfQ=="}, "41": {"version": "18", "sha256": "0isn56fj58aikld1fy8q3afqg2acsz4wbfskzip25xsbc0hpy9qf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVub2ZmaWNpYWwgR25vbWUtU2hlbGwgRXh0ZW5zaW9uIHRvIHByb3ZpZGUgYSBHVUkgZm9yIHRoZSBvZmZpY2lhbCBOb3JkVlBOIENMSSBUb29sLiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMtbnZwbmNvbm5lY3QiLAogICJuYW1lIjogIk5vcmRWUE4gQ29ubmVjdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5udnBuY29ubmVjdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQWxleFBvaWxyb3VnZS9Ob3JkVlBOLWNvbm5lY3QiLAogICJ1dWlkIjogIk5vcmRWUE5fQ29ubmVjdEBwb2lscm91Z2UuZnIiLAogICJ2ZXJzaW9uIjogMTgKfQ=="}}}
 , {"uuid": "arrangeWindows@sun.wxg@gmail.com", "name": "Arrange Windows", "pname": "arrange-windows", "description": "Arrange windows on the monitors\n\nHotkeys:\n Ctrl+Alt+1 Cascade windows\n Ctrl+Alt+2 Tiling windows\n Ctrl+Alt+3 Side by side windows\n Ctrl+Alt+4 Stack windows", "link": "https://extensions.gnome.org/extension/1604/arrange-windows/", "shell_version_map": {"38": {"version": "24", "sha256": "031z1p545bvw2d0wg62d416dvjsbd0d1am32g7dqnw2p4fzb061j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd2luZG93cyBvbiB0aGUgbW9uaXRvcnNcblxuSG90a2V5czpcbiBDdHJsK0FsdCsxIENhc2NhZGUgd2luZG93c1xuIEN0cmwrQWx0KzIgVGlsaW5nIHdpbmRvd3NcbiBDdHJsK0FsdCszIFNpZGUgYnkgc2lkZSB3aW5kb3dzXG4gQ3RybCtBbHQrNCBTdGFjayB3aW5kb3dzIiwKICAibmFtZSI6ICJBcnJhbmdlIFdpbmRvd3MiLAogICJvcmlnaW5hbC1hdXRob3JzIjogInN1bi53eGdAZ21haWwuY29tIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tYXJyYW5nZVdpbmRvd3MiLAogICJ1dWlkIjogImFycmFuZ2VXaW5kb3dzQHN1bi53eGdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDI0Cn0="}, "40": {"version": "24", "sha256": "031z1p545bvw2d0wg62d416dvjsbd0d1am32g7dqnw2p4fzb061j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd2luZG93cyBvbiB0aGUgbW9uaXRvcnNcblxuSG90a2V5czpcbiBDdHJsK0FsdCsxIENhc2NhZGUgd2luZG93c1xuIEN0cmwrQWx0KzIgVGlsaW5nIHdpbmRvd3NcbiBDdHJsK0FsdCszIFNpZGUgYnkgc2lkZSB3aW5kb3dzXG4gQ3RybCtBbHQrNCBTdGFjayB3aW5kb3dzIiwKICAibmFtZSI6ICJBcnJhbmdlIFdpbmRvd3MiLAogICJvcmlnaW5hbC1hdXRob3JzIjogInN1bi53eGdAZ21haWwuY29tIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tYXJyYW5nZVdpbmRvd3MiLAogICJ1dWlkIjogImFycmFuZ2VXaW5kb3dzQHN1bi53eGdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDI0Cn0="}, "41": {"version": "24", "sha256": "031z1p545bvw2d0wg62d416dvjsbd0d1am32g7dqnw2p4fzb061j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd2luZG93cyBvbiB0aGUgbW9uaXRvcnNcblxuSG90a2V5czpcbiBDdHJsK0FsdCsxIENhc2NhZGUgd2luZG93c1xuIEN0cmwrQWx0KzIgVGlsaW5nIHdpbmRvd3NcbiBDdHJsK0FsdCszIFNpZGUgYnkgc2lkZSB3aW5kb3dzXG4gQ3RybCtBbHQrNCBTdGFjayB3aW5kb3dzIiwKICAibmFtZSI6ICJBcnJhbmdlIFdpbmRvd3MiLAogICJvcmlnaW5hbC1hdXRob3JzIjogInN1bi53eGdAZ21haWwuY29tIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tYXJyYW5nZVdpbmRvd3MiLAogICJ1dWlkIjogImFycmFuZ2VXaW5kb3dzQHN1bi53eGdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDI0Cn0="}, "42": {"version": "24", "sha256": "031z1p545bvw2d0wg62d416dvjsbd0d1am32g7dqnw2p4fzb061j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd2luZG93cyBvbiB0aGUgbW9uaXRvcnNcblxuSG90a2V5czpcbiBDdHJsK0FsdCsxIENhc2NhZGUgd2luZG93c1xuIEN0cmwrQWx0KzIgVGlsaW5nIHdpbmRvd3NcbiBDdHJsK0FsdCszIFNpZGUgYnkgc2lkZSB3aW5kb3dzXG4gQ3RybCtBbHQrNCBTdGFjayB3aW5kb3dzIiwKICAibmFtZSI6ICJBcnJhbmdlIFdpbmRvd3MiLAogICJvcmlnaW5hbC1hdXRob3JzIjogInN1bi53eGdAZ21haWwuY29tIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tYXJyYW5nZVdpbmRvd3MiLAogICJ1dWlkIjogImFycmFuZ2VXaW5kb3dzQHN1bi53eGdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDI0Cn0="}, "43": {"version": "24", "sha256": "031z1p545bvw2d0wg62d416dvjsbd0d1am32g7dqnw2p4fzb061j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd2luZG93cyBvbiB0aGUgbW9uaXRvcnNcblxuSG90a2V5czpcbiBDdHJsK0FsdCsxIENhc2NhZGUgd2luZG93c1xuIEN0cmwrQWx0KzIgVGlsaW5nIHdpbmRvd3NcbiBDdHJsK0FsdCszIFNpZGUgYnkgc2lkZSB3aW5kb3dzXG4gQ3RybCtBbHQrNCBTdGFjayB3aW5kb3dzIiwKICAibmFtZSI6ICJBcnJhbmdlIFdpbmRvd3MiLAogICJvcmlnaW5hbC1hdXRob3JzIjogInN1bi53eGdAZ21haWwuY29tIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tYXJyYW5nZVdpbmRvd3MiLAogICJ1dWlkIjogImFycmFuZ2VXaW5kb3dzQHN1bi53eGdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDI0Cn0="}}}
-, {"uuid": "fullscreen-notifications@sorrow.about.alice.pm.me", "name": "Fullscreen Notifications", "pname": "fullscreen-notifications", "description": "Enables all notifications in fullscreen mode", "link": "https://extensions.gnome.org/extension/1610/fullscreen-notifications/", "shell_version_map": {"38": {"version": "3", "sha256": "1g1dgrhbif7qcxga7302bhhdjrr2v3vkp6dfavyclzsdkkrr2wwh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgYWxsIG5vdGlmaWNhdGlvbnMgaW4gZnVsbHNjcmVlbiBtb2RlIiwKICAibmFtZSI6ICJGdWxsc2NyZWVuIE5vdGlmaWNhdGlvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzAuMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NvYWwvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWZ1bGxzY3JlZW4tbm90aWZpY2F0aW9ucyIsCiAgInV1aWQiOiAiZnVsbHNjcmVlbi1ub3RpZmljYXRpb25zQHNvcnJvdy5hYm91dC5hbGljZS5wbS5tZSIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "6", "sha256": "00klclxdknknbv30acqsgzz43wsbp8gxmfgammm1xjg9kncp030j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgYWxsIG5vdGlmaWNhdGlvbnMgaW4gZnVsbHNjcmVlbiBtb2RlIiwKICAibmFtZSI6ICJGdWxsc2NyZWVuIE5vdGlmaWNhdGlvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zb2FsL2dub21lLXNoZWxsLWV4dGVuc2lvbi1mdWxsc2NyZWVuLW5vdGlmaWNhdGlvbnMiLAogICJ1dWlkIjogImZ1bGxzY3JlZW4tbm90aWZpY2F0aW9uc0Bzb3Jyb3cuYWJvdXQuYWxpY2UucG0ubWUiLAogICJ2ZXJzaW9uIjogNgp9"}, "41": {"version": "6", "sha256": "00klclxdknknbv30acqsgzz43wsbp8gxmfgammm1xjg9kncp030j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgYWxsIG5vdGlmaWNhdGlvbnMgaW4gZnVsbHNjcmVlbiBtb2RlIiwKICAibmFtZSI6ICJGdWxsc2NyZWVuIE5vdGlmaWNhdGlvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zb2FsL2dub21lLXNoZWxsLWV4dGVuc2lvbi1mdWxsc2NyZWVuLW5vdGlmaWNhdGlvbnMiLAogICJ1dWlkIjogImZ1bGxzY3JlZW4tbm90aWZpY2F0aW9uc0Bzb3Jyb3cuYWJvdXQuYWxpY2UucG0ubWUiLAogICJ2ZXJzaW9uIjogNgp9"}, "42": {"version": "6", "sha256": "00klclxdknknbv30acqsgzz43wsbp8gxmfgammm1xjg9kncp030j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgYWxsIG5vdGlmaWNhdGlvbnMgaW4gZnVsbHNjcmVlbiBtb2RlIiwKICAibmFtZSI6ICJGdWxsc2NyZWVuIE5vdGlmaWNhdGlvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zb2FsL2dub21lLXNoZWxsLWV4dGVuc2lvbi1mdWxsc2NyZWVuLW5vdGlmaWNhdGlvbnMiLAogICJ1dWlkIjogImZ1bGxzY3JlZW4tbm90aWZpY2F0aW9uc0Bzb3Jyb3cuYWJvdXQuYWxpY2UucG0ubWUiLAogICJ2ZXJzaW9uIjogNgp9"}}}
+, {"uuid": "fullscreen-notifications@sorrow.about.alice.pm.me", "name": "Fullscreen Notifications", "pname": "fullscreen-notifications", "description": "Enables all notifications in fullscreen mode", "link": "https://extensions.gnome.org/extension/1610/fullscreen-notifications/", "shell_version_map": {"38": {"version": "3", "sha256": "1g1dgrhbif7qcxga7302bhhdjrr2v3vkp6dfavyclzsdkkrr2wwh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgYWxsIG5vdGlmaWNhdGlvbnMgaW4gZnVsbHNjcmVlbiBtb2RlIiwKICAibmFtZSI6ICJGdWxsc2NyZWVuIE5vdGlmaWNhdGlvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzAuMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NvYWwvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWZ1bGxzY3JlZW4tbm90aWZpY2F0aW9ucyIsCiAgInV1aWQiOiAiZnVsbHNjcmVlbi1ub3RpZmljYXRpb25zQHNvcnJvdy5hYm91dC5hbGljZS5wbS5tZSIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "6", "sha256": "00klclxdknknbv30acqsgzz43wsbp8gxmfgammm1xjg9kncp030j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgYWxsIG5vdGlmaWNhdGlvbnMgaW4gZnVsbHNjcmVlbiBtb2RlIiwKICAibmFtZSI6ICJGdWxsc2NyZWVuIE5vdGlmaWNhdGlvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zb2FsL2dub21lLXNoZWxsLWV4dGVuc2lvbi1mdWxsc2NyZWVuLW5vdGlmaWNhdGlvbnMiLAogICJ1dWlkIjogImZ1bGxzY3JlZW4tbm90aWZpY2F0aW9uc0Bzb3Jyb3cuYWJvdXQuYWxpY2UucG0ubWUiLAogICJ2ZXJzaW9uIjogNgp9"}, "41": {"version": "7", "sha256": "182sxw90kds36m3wr42kp92vl5adrw5a4rd1dgyl8xc2dgib667d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgYWxsIG5vdGlmaWNhdGlvbnMgaW4gZnVsbHNjcmVlbiBtb2RlIiwKICAibmFtZSI6ICJGdWxsc2NyZWVuIE5vdGlmaWNhdGlvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zb2FsL2dub21lLXNoZWxsLWV4dGVuc2lvbi1mdWxsc2NyZWVuLW5vdGlmaWNhdGlvbnMiLAogICJ1dWlkIjogImZ1bGxzY3JlZW4tbm90aWZpY2F0aW9uc0Bzb3Jyb3cuYWJvdXQuYWxpY2UucG0ubWUiLAogICJ2ZXJzaW9uIjogNwp9"}, "42": {"version": "7", "sha256": "182sxw90kds36m3wr42kp92vl5adrw5a4rd1dgyl8xc2dgib667d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgYWxsIG5vdGlmaWNhdGlvbnMgaW4gZnVsbHNjcmVlbiBtb2RlIiwKICAibmFtZSI6ICJGdWxsc2NyZWVuIE5vdGlmaWNhdGlvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zb2FsL2dub21lLXNoZWxsLWV4dGVuc2lvbi1mdWxsc2NyZWVuLW5vdGlmaWNhdGlvbnMiLAogICJ1dWlkIjogImZ1bGxzY3JlZW4tbm90aWZpY2F0aW9uc0Bzb3Jyb3cuYWJvdXQuYWxpY2UucG0ubWUiLAogICJ2ZXJzaW9uIjogNwp9"}, "43": {"version": "7", "sha256": "182sxw90kds36m3wr42kp92vl5adrw5a4rd1dgyl8xc2dgib667d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgYWxsIG5vdGlmaWNhdGlvbnMgaW4gZnVsbHNjcmVlbiBtb2RlIiwKICAibmFtZSI6ICJGdWxsc2NyZWVuIE5vdGlmaWNhdGlvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zb2FsL2dub21lLXNoZWxsLWV4dGVuc2lvbi1mdWxsc2NyZWVuLW5vdGlmaWNhdGlvbnMiLAogICJ1dWlkIjogImZ1bGxzY3JlZW4tbm90aWZpY2F0aW9uc0Bzb3Jyb3cuYWJvdXQuYWxpY2UucG0ubWUiLAogICJ2ZXJzaW9uIjogNwp9"}}}
 , {"uuid": "panelScroll@sun.wxg@gmail.com", "name": "panel scroll", "pname": "panel-scroll", "description": "Switch windows or workspace by mouse scroll on the panel.\nPointer on left of panel, switch windows.\nPointer on right of panel, switch workspaces.", "link": "https://extensions.gnome.org/extension/1616/panel-scroll/", "shell_version_map": {"38": {"version": "10", "sha256": "1llw16wszrkrrzrlyd1ppw8kn1cqp2z4irzi9q7v2nr47hrk14kd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCB3aW5kb3dzIG9yIHdvcmtzcGFjZSBieSBtb3VzZSBzY3JvbGwgb24gdGhlIHBhbmVsLlxuUG9pbnRlciBvbiBsZWZ0IG9mIHBhbmVsLCBzd2l0Y2ggd2luZG93cy5cblBvaW50ZXIgb24gcmlnaHQgb2YgcGFuZWwsIHN3aXRjaCB3b3Jrc3BhY2VzLiIsCiAgIm5hbWUiOiAicGFuZWwgc2Nyb2xsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tcGFuZWxTY3JvbGwiLAogICJ1dWlkIjogInBhbmVsU2Nyb2xsQHN1bi53eGdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDEwCn0="}, "40": {"version": "17", "sha256": "1dadk4vf69gbk5xzbm4qrxcws07g9gyndr8rb1jnqrqfgay271bf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCB3aW5kb3dzIG9yIHdvcmtzcGFjZSBieSBtb3VzZSBzY3JvbGwgb24gdGhlIHBhbmVsLlxuUG9pbnRlciBvbiBsZWZ0IG9mIHBhbmVsLCBzd2l0Y2ggd2luZG93cy5cblBvaW50ZXIgb24gcmlnaHQgb2YgcGFuZWwsIHN3aXRjaCB3b3Jrc3BhY2VzLiIsCiAgIm5hbWUiOiAicGFuZWwgc2Nyb2xsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdW53eGcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXBhbmVsU2Nyb2xsIiwKICAidXVpZCI6ICJwYW5lbFNjcm9sbEBzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxNwp9"}, "41": {"version": "17", "sha256": "1dadk4vf69gbk5xzbm4qrxcws07g9gyndr8rb1jnqrqfgay271bf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCB3aW5kb3dzIG9yIHdvcmtzcGFjZSBieSBtb3VzZSBzY3JvbGwgb24gdGhlIHBhbmVsLlxuUG9pbnRlciBvbiBsZWZ0IG9mIHBhbmVsLCBzd2l0Y2ggd2luZG93cy5cblBvaW50ZXIgb24gcmlnaHQgb2YgcGFuZWwsIHN3aXRjaCB3b3Jrc3BhY2VzLiIsCiAgIm5hbWUiOiAicGFuZWwgc2Nyb2xsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdW53eGcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXBhbmVsU2Nyb2xsIiwKICAidXVpZCI6ICJwYW5lbFNjcm9sbEBzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxNwp9"}, "42": {"version": "17", "sha256": "1dadk4vf69gbk5xzbm4qrxcws07g9gyndr8rb1jnqrqfgay271bf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCB3aW5kb3dzIG9yIHdvcmtzcGFjZSBieSBtb3VzZSBzY3JvbGwgb24gdGhlIHBhbmVsLlxuUG9pbnRlciBvbiBsZWZ0IG9mIHBhbmVsLCBzd2l0Y2ggd2luZG93cy5cblBvaW50ZXIgb24gcmlnaHQgb2YgcGFuZWwsIHN3aXRjaCB3b3Jrc3BhY2VzLiIsCiAgIm5hbWUiOiAicGFuZWwgc2Nyb2xsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdW53eGcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXBhbmVsU2Nyb2xsIiwKICAidXVpZCI6ICJwYW5lbFNjcm9sbEBzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxNwp9"}, "43": {"version": "17", "sha256": "1dadk4vf69gbk5xzbm4qrxcws07g9gyndr8rb1jnqrqfgay271bf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCB3aW5kb3dzIG9yIHdvcmtzcGFjZSBieSBtb3VzZSBzY3JvbGwgb24gdGhlIHBhbmVsLlxuUG9pbnRlciBvbiBsZWZ0IG9mIHBhbmVsLCBzd2l0Y2ggd2luZG93cy5cblBvaW50ZXIgb24gcmlnaHQgb2YgcGFuZWwsIHN3aXRjaCB3b3Jrc3BhY2VzLiIsCiAgIm5hbWUiOiAicGFuZWwgc2Nyb2xsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdW53eGcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXBhbmVsU2Nyb2xsIiwKICAidXVpZCI6ICJwYW5lbFNjcm9sbEBzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxNwp9"}}}
 , {"uuid": "soft-brightness@fifi.org", "name": "Soft brightness", "pname": "soft-brightness", "description": "Add or override the brightness slider to change the brightness via an alpha layer (and optionally stop using or cooperate with the exising backlight, if present).\nEither internal, external or all monitors can be dimmed.\nSee the GitHub page for details.\n\nNote that this extension will keep running on the lock screen, as you'd also want the brightness setting to apply to the lock screen as well. Please report on GitHub if this gives you any trouble.", "link": "https://extensions.gnome.org/extension/1625/soft-brightness/", "shell_version_map": {"38": {"version": "30", "sha256": "0d8561qp92v8n561bafhkj9j5k21knljzyrf2msihxxj1kfgkp9l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBvciBvdmVycmlkZSB0aGUgYnJpZ2h0bmVzcyBzbGlkZXIgdG8gY2hhbmdlIHRoZSBicmlnaHRuZXNzIHZpYSBhbiBhbHBoYSBsYXllciAoYW5kIG9wdGlvbmFsbHkgc3RvcCB1c2luZyBvciBjb29wZXJhdGUgd2l0aCB0aGUgZXhpc2luZyBiYWNrbGlnaHQsIGlmIHByZXNlbnQpLlxuRWl0aGVyIGludGVybmFsLCBleHRlcm5hbCBvciBhbGwgbW9uaXRvcnMgY2FuIGJlIGRpbW1lZC5cblNlZSB0aGUgR2l0SHViIHBhZ2UgZm9yIGRldGFpbHMuXG5cbk5vdGUgdGhhdCB0aGlzIGV4dGVuc2lvbiB3aWxsIGtlZXAgcnVubmluZyBvbiB0aGUgbG9jayBzY3JlZW4sIGFzIHlvdSdkIGFsc28gd2FudCB0aGUgYnJpZ2h0bmVzcyBzZXR0aW5nIHRvIGFwcGx5IHRvIHRoZSBsb2NrIHNjcmVlbiBhcyB3ZWxsLiBQbGVhc2UgcmVwb3J0IG9uIEdpdEh1YiBpZiB0aGlzIGdpdmVzIHlvdSBhbnkgdHJvdWJsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzb2Z0LWJyaWdodG5lc3MiLAogICJuYW1lIjogIlNvZnQgYnJpZ2h0bmVzcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zb2Z0LWJyaWdodG5lc3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzMuOTAiLAogICAgIjMuMzYiLAogICAgIjMuMzUuMSIsCiAgICAiMy4zNS45MiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0YtaS1mL3NvZnQtYnJpZ2h0bmVzcyIsCiAgInV1aWQiOiAic29mdC1icmlnaHRuZXNzQGZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYzMC0wLWc4ODQyZGZiIiwKICAidmVyc2lvbiI6IDMwCn0="}, "40": {"version": "30", "sha256": "0d8561qp92v8n561bafhkj9j5k21knljzyrf2msihxxj1kfgkp9l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBvciBvdmVycmlkZSB0aGUgYnJpZ2h0bmVzcyBzbGlkZXIgdG8gY2hhbmdlIHRoZSBicmlnaHRuZXNzIHZpYSBhbiBhbHBoYSBsYXllciAoYW5kIG9wdGlvbmFsbHkgc3RvcCB1c2luZyBvciBjb29wZXJhdGUgd2l0aCB0aGUgZXhpc2luZyBiYWNrbGlnaHQsIGlmIHByZXNlbnQpLlxuRWl0aGVyIGludGVybmFsLCBleHRlcm5hbCBvciBhbGwgbW9uaXRvcnMgY2FuIGJlIGRpbW1lZC5cblNlZSB0aGUgR2l0SHViIHBhZ2UgZm9yIGRldGFpbHMuXG5cbk5vdGUgdGhhdCB0aGlzIGV4dGVuc2lvbiB3aWxsIGtlZXAgcnVubmluZyBvbiB0aGUgbG9jayBzY3JlZW4sIGFzIHlvdSdkIGFsc28gd2FudCB0aGUgYnJpZ2h0bmVzcyBzZXR0aW5nIHRvIGFwcGx5IHRvIHRoZSBsb2NrIHNjcmVlbiBhcyB3ZWxsLiBQbGVhc2UgcmVwb3J0IG9uIEdpdEh1YiBpZiB0aGlzIGdpdmVzIHlvdSBhbnkgdHJvdWJsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzb2Z0LWJyaWdodG5lc3MiLAogICJuYW1lIjogIlNvZnQgYnJpZ2h0bmVzcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zb2Z0LWJyaWdodG5lc3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzMuOTAiLAogICAgIjMuMzYiLAogICAgIjMuMzUuMSIsCiAgICAiMy4zNS45MiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0YtaS1mL3NvZnQtYnJpZ2h0bmVzcyIsCiAgInV1aWQiOiAic29mdC1icmlnaHRuZXNzQGZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYzMC0wLWc4ODQyZGZiIiwKICAidmVyc2lvbiI6IDMwCn0="}, "41": {"version": "30", "sha256": "0d8561qp92v8n561bafhkj9j5k21knljzyrf2msihxxj1kfgkp9l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBvciBvdmVycmlkZSB0aGUgYnJpZ2h0bmVzcyBzbGlkZXIgdG8gY2hhbmdlIHRoZSBicmlnaHRuZXNzIHZpYSBhbiBhbHBoYSBsYXllciAoYW5kIG9wdGlvbmFsbHkgc3RvcCB1c2luZyBvciBjb29wZXJhdGUgd2l0aCB0aGUgZXhpc2luZyBiYWNrbGlnaHQsIGlmIHByZXNlbnQpLlxuRWl0aGVyIGludGVybmFsLCBleHRlcm5hbCBvciBhbGwgbW9uaXRvcnMgY2FuIGJlIGRpbW1lZC5cblNlZSB0aGUgR2l0SHViIHBhZ2UgZm9yIGRldGFpbHMuXG5cbk5vdGUgdGhhdCB0aGlzIGV4dGVuc2lvbiB3aWxsIGtlZXAgcnVubmluZyBvbiB0aGUgbG9jayBzY3JlZW4sIGFzIHlvdSdkIGFsc28gd2FudCB0aGUgYnJpZ2h0bmVzcyBzZXR0aW5nIHRvIGFwcGx5IHRvIHRoZSBsb2NrIHNjcmVlbiBhcyB3ZWxsLiBQbGVhc2UgcmVwb3J0IG9uIEdpdEh1YiBpZiB0aGlzIGdpdmVzIHlvdSBhbnkgdHJvdWJsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzb2Z0LWJyaWdodG5lc3MiLAogICJuYW1lIjogIlNvZnQgYnJpZ2h0bmVzcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zb2Z0LWJyaWdodG5lc3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzMuOTAiLAogICAgIjMuMzYiLAogICAgIjMuMzUuMSIsCiAgICAiMy4zNS45MiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0YtaS1mL3NvZnQtYnJpZ2h0bmVzcyIsCiAgInV1aWQiOiAic29mdC1icmlnaHRuZXNzQGZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYzMC0wLWc4ODQyZGZiIiwKICAidmVyc2lvbiI6IDMwCn0="}, "42": {"version": "30", "sha256": "0d8561qp92v8n561bafhkj9j5k21knljzyrf2msihxxj1kfgkp9l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBvciBvdmVycmlkZSB0aGUgYnJpZ2h0bmVzcyBzbGlkZXIgdG8gY2hhbmdlIHRoZSBicmlnaHRuZXNzIHZpYSBhbiBhbHBoYSBsYXllciAoYW5kIG9wdGlvbmFsbHkgc3RvcCB1c2luZyBvciBjb29wZXJhdGUgd2l0aCB0aGUgZXhpc2luZyBiYWNrbGlnaHQsIGlmIHByZXNlbnQpLlxuRWl0aGVyIGludGVybmFsLCBleHRlcm5hbCBvciBhbGwgbW9uaXRvcnMgY2FuIGJlIGRpbW1lZC5cblNlZSB0aGUgR2l0SHViIHBhZ2UgZm9yIGRldGFpbHMuXG5cbk5vdGUgdGhhdCB0aGlzIGV4dGVuc2lvbiB3aWxsIGtlZXAgcnVubmluZyBvbiB0aGUgbG9jayBzY3JlZW4sIGFzIHlvdSdkIGFsc28gd2FudCB0aGUgYnJpZ2h0bmVzcyBzZXR0aW5nIHRvIGFwcGx5IHRvIHRoZSBsb2NrIHNjcmVlbiBhcyB3ZWxsLiBQbGVhc2UgcmVwb3J0IG9uIEdpdEh1YiBpZiB0aGlzIGdpdmVzIHlvdSBhbnkgdHJvdWJsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzb2Z0LWJyaWdodG5lc3MiLAogICJuYW1lIjogIlNvZnQgYnJpZ2h0bmVzcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zb2Z0LWJyaWdodG5lc3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzMuOTAiLAogICAgIjMuMzYiLAogICAgIjMuMzUuMSIsCiAgICAiMy4zNS45MiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0YtaS1mL3NvZnQtYnJpZ2h0bmVzcyIsCiAgInV1aWQiOiAic29mdC1icmlnaHRuZXNzQGZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYzMC0wLWc4ODQyZGZiIiwKICAidmVyc2lvbiI6IDMwCn0="}}}
 , {"uuid": "Resource_Monitor@Ory0n", "name": "Resource Monitor", "pname": "resource-monitor", "description": "Monitor the use of system resources like cpu, ram, disk, network and display them in gnome shell top bar.", "link": "https://extensions.gnome.org/extension/1634/resource-monitor/", "shell_version_map": {"38": {"version": "14", "sha256": "0mg6b54cinplc4i3kzn6p397a8flyivcyzg30pnfq7phhgpcnxwj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJHaXVzZXBwZSBTaWx2ZXN0cm8iLAogICJkZXNjcmlwdGlvbiI6ICJNb25pdG9yIHRoZSB1c2Ugb2Ygc3lzdGVtIHJlc291cmNlcyBsaWtlIGNwdSwgcmFtLCBkaXNrLCBuZXR3b3JrIGFuZCBkaXNwbGF5IHRoZW0gaW4gZ25vbWUgc2hlbGwgdG9wIGJhci4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjb20tZ2l0aHViLU9yeTBuLVJlc291cmNlX01vbml0b3IiLAogICJuYW1lIjogIlJlc291cmNlIE1vbml0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAiY29tLmdpdGh1Yi5Pcnkwbi5SZXNvdXJjZV9Nb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vMHJ5MG4vUmVzb3VyY2VfTW9uaXRvci8iLAogICJ1dWlkIjogIlJlc291cmNlX01vbml0b3JAT3J5MG4iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "40": {"version": "17", "sha256": "0582rhb7jj7nr4hlkv33vyrvc2y93in2wfksn4ghcmags44g6g2b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJHaXVzZXBwZSBTaWx2ZXN0cm8iLAogICJkZXNjcmlwdGlvbiI6ICJNb25pdG9yIHRoZSB1c2Ugb2Ygc3lzdGVtIHJlc291cmNlcyBsaWtlIGNwdSwgcmFtLCBkaXNrLCBuZXR3b3JrIGFuZCBkaXNwbGF5IHRoZW0gaW4gZ25vbWUgc2hlbGwgdG9wIGJhci4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjb20tZ2l0aHViLU9yeTBuLVJlc291cmNlX01vbml0b3IiLAogICJuYW1lIjogIlJlc291cmNlIE1vbml0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAiY29tLmdpdGh1Yi5Pcnkwbi5SZXNvdXJjZV9Nb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vMHJ5MG4vUmVzb3VyY2VfTW9uaXRvci8iLAogICJ1dWlkIjogIlJlc291cmNlX01vbml0b3JAT3J5MG4iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "41": {"version": "17", "sha256": "0582rhb7jj7nr4hlkv33vyrvc2y93in2wfksn4ghcmags44g6g2b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJHaXVzZXBwZSBTaWx2ZXN0cm8iLAogICJkZXNjcmlwdGlvbiI6ICJNb25pdG9yIHRoZSB1c2Ugb2Ygc3lzdGVtIHJlc291cmNlcyBsaWtlIGNwdSwgcmFtLCBkaXNrLCBuZXR3b3JrIGFuZCBkaXNwbGF5IHRoZW0gaW4gZ25vbWUgc2hlbGwgdG9wIGJhci4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjb20tZ2l0aHViLU9yeTBuLVJlc291cmNlX01vbml0b3IiLAogICJuYW1lIjogIlJlc291cmNlIE1vbml0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAiY29tLmdpdGh1Yi5Pcnkwbi5SZXNvdXJjZV9Nb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vMHJ5MG4vUmVzb3VyY2VfTW9uaXRvci8iLAogICJ1dWlkIjogIlJlc291cmNlX01vbml0b3JAT3J5MG4iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "42": {"version": "17", "sha256": "0582rhb7jj7nr4hlkv33vyrvc2y93in2wfksn4ghcmags44g6g2b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJHaXVzZXBwZSBTaWx2ZXN0cm8iLAogICJkZXNjcmlwdGlvbiI6ICJNb25pdG9yIHRoZSB1c2Ugb2Ygc3lzdGVtIHJlc291cmNlcyBsaWtlIGNwdSwgcmFtLCBkaXNrLCBuZXR3b3JrIGFuZCBkaXNwbGF5IHRoZW0gaW4gZ25vbWUgc2hlbGwgdG9wIGJhci4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjb20tZ2l0aHViLU9yeTBuLVJlc291cmNlX01vbml0b3IiLAogICJuYW1lIjogIlJlc291cmNlIE1vbml0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAiY29tLmdpdGh1Yi5Pcnkwbi5SZXNvdXJjZV9Nb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vMHJ5MG4vUmVzb3VyY2VfTW9uaXRvci8iLAogICJ1dWlkIjogIlJlc291cmNlX01vbml0b3JAT3J5MG4iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}}}
@@ -251,7 +251,7 @@
 , {"uuid": "application_view_when_empty@fawtytoo", "name": "Show Application View When Workspace Empty", "pname": "show-application-view-when-workspace-empty", "description": "Shows the application view when the workspace is or becomes empty, such as switching to an empty workspace, when all windows on a workspace are closed, or after login. Starting applications or switching to a workspace with open windows will hide the application view if it's showing.\nFrom version 22, this extension waits for any window closing animation to complete (if enabled) before showing the application view.", "link": "https://extensions.gnome.org/extension/2036/show-application-view-when-workspace-empty/", "shell_version_map": {"38": {"version": "25", "sha256": "1810bd4wqxblwc8y4gzwlc8ld4li2ggb6xpiqilag6aa8pz8y1yq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIHRoZSBhcHBsaWNhdGlvbiB2aWV3IHdoZW4gdGhlIHdvcmtzcGFjZSBpcyBvciBiZWNvbWVzIGVtcHR5LCBzdWNoIGFzIHN3aXRjaGluZyB0byBhbiBlbXB0eSB3b3Jrc3BhY2UsIHdoZW4gYWxsIHdpbmRvd3Mgb24gYSB3b3Jrc3BhY2UgYXJlIGNsb3NlZCwgb3IgYWZ0ZXIgbG9naW4uIFN0YXJ0aW5nIGFwcGxpY2F0aW9ucyBvciBzd2l0Y2hpbmcgdG8gYSB3b3Jrc3BhY2Ugd2l0aCBvcGVuIHdpbmRvd3Mgd2lsbCBoaWRlIHRoZSBhcHBsaWNhdGlvbiB2aWV3IGlmIGl0J3Mgc2hvd2luZy5cbkZyb20gdmVyc2lvbiAyMiwgdGhpcyBleHRlbnNpb24gd2FpdHMgZm9yIGFueSB3aW5kb3cgY2xvc2luZyBhbmltYXRpb24gdG8gY29tcGxldGUgKGlmIGVuYWJsZWQpIGJlZm9yZSBzaG93aW5nIHRoZSBhcHBsaWNhdGlvbiB2aWV3LiIsCiAgIm5hbWUiOiAiU2hvdyBBcHBsaWNhdGlvbiBWaWV3IFdoZW4gV29ya3NwYWNlIEVtcHR5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZmF3dHl0b28vU2hvdy1BcHBsaWNhdGlvbi1WaWV3LVdoZW4tV29ya3NwYWNlLUVtcHR5IiwKICAidXVpZCI6ICJhcHBsaWNhdGlvbl92aWV3X3doZW5fZW1wdHlAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogMjUKfQ=="}, "40": {"version": "25", "sha256": "1810bd4wqxblwc8y4gzwlc8ld4li2ggb6xpiqilag6aa8pz8y1yq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIHRoZSBhcHBsaWNhdGlvbiB2aWV3IHdoZW4gdGhlIHdvcmtzcGFjZSBpcyBvciBiZWNvbWVzIGVtcHR5LCBzdWNoIGFzIHN3aXRjaGluZyB0byBhbiBlbXB0eSB3b3Jrc3BhY2UsIHdoZW4gYWxsIHdpbmRvd3Mgb24gYSB3b3Jrc3BhY2UgYXJlIGNsb3NlZCwgb3IgYWZ0ZXIgbG9naW4uIFN0YXJ0aW5nIGFwcGxpY2F0aW9ucyBvciBzd2l0Y2hpbmcgdG8gYSB3b3Jrc3BhY2Ugd2l0aCBvcGVuIHdpbmRvd3Mgd2lsbCBoaWRlIHRoZSBhcHBsaWNhdGlvbiB2aWV3IGlmIGl0J3Mgc2hvd2luZy5cbkZyb20gdmVyc2lvbiAyMiwgdGhpcyBleHRlbnNpb24gd2FpdHMgZm9yIGFueSB3aW5kb3cgY2xvc2luZyBhbmltYXRpb24gdG8gY29tcGxldGUgKGlmIGVuYWJsZWQpIGJlZm9yZSBzaG93aW5nIHRoZSBhcHBsaWNhdGlvbiB2aWV3LiIsCiAgIm5hbWUiOiAiU2hvdyBBcHBsaWNhdGlvbiBWaWV3IFdoZW4gV29ya3NwYWNlIEVtcHR5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZmF3dHl0b28vU2hvdy1BcHBsaWNhdGlvbi1WaWV3LVdoZW4tV29ya3NwYWNlLUVtcHR5IiwKICAidXVpZCI6ICJhcHBsaWNhdGlvbl92aWV3X3doZW5fZW1wdHlAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogMjUKfQ=="}, "41": {"version": "25", "sha256": "1810bd4wqxblwc8y4gzwlc8ld4li2ggb6xpiqilag6aa8pz8y1yq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIHRoZSBhcHBsaWNhdGlvbiB2aWV3IHdoZW4gdGhlIHdvcmtzcGFjZSBpcyBvciBiZWNvbWVzIGVtcHR5LCBzdWNoIGFzIHN3aXRjaGluZyB0byBhbiBlbXB0eSB3b3Jrc3BhY2UsIHdoZW4gYWxsIHdpbmRvd3Mgb24gYSB3b3Jrc3BhY2UgYXJlIGNsb3NlZCwgb3IgYWZ0ZXIgbG9naW4uIFN0YXJ0aW5nIGFwcGxpY2F0aW9ucyBvciBzd2l0Y2hpbmcgdG8gYSB3b3Jrc3BhY2Ugd2l0aCBvcGVuIHdpbmRvd3Mgd2lsbCBoaWRlIHRoZSBhcHBsaWNhdGlvbiB2aWV3IGlmIGl0J3Mgc2hvd2luZy5cbkZyb20gdmVyc2lvbiAyMiwgdGhpcyBleHRlbnNpb24gd2FpdHMgZm9yIGFueSB3aW5kb3cgY2xvc2luZyBhbmltYXRpb24gdG8gY29tcGxldGUgKGlmIGVuYWJsZWQpIGJlZm9yZSBzaG93aW5nIHRoZSBhcHBsaWNhdGlvbiB2aWV3LiIsCiAgIm5hbWUiOiAiU2hvdyBBcHBsaWNhdGlvbiBWaWV3IFdoZW4gV29ya3NwYWNlIEVtcHR5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZmF3dHl0b28vU2hvdy1BcHBsaWNhdGlvbi1WaWV3LVdoZW4tV29ya3NwYWNlLUVtcHR5IiwKICAidXVpZCI6ICJhcHBsaWNhdGlvbl92aWV3X3doZW5fZW1wdHlAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogMjUKfQ=="}, "42": {"version": "25", "sha256": "1810bd4wqxblwc8y4gzwlc8ld4li2ggb6xpiqilag6aa8pz8y1yq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIHRoZSBhcHBsaWNhdGlvbiB2aWV3IHdoZW4gdGhlIHdvcmtzcGFjZSBpcyBvciBiZWNvbWVzIGVtcHR5LCBzdWNoIGFzIHN3aXRjaGluZyB0byBhbiBlbXB0eSB3b3Jrc3BhY2UsIHdoZW4gYWxsIHdpbmRvd3Mgb24gYSB3b3Jrc3BhY2UgYXJlIGNsb3NlZCwgb3IgYWZ0ZXIgbG9naW4uIFN0YXJ0aW5nIGFwcGxpY2F0aW9ucyBvciBzd2l0Y2hpbmcgdG8gYSB3b3Jrc3BhY2Ugd2l0aCBvcGVuIHdpbmRvd3Mgd2lsbCBoaWRlIHRoZSBhcHBsaWNhdGlvbiB2aWV3IGlmIGl0J3Mgc2hvd2luZy5cbkZyb20gdmVyc2lvbiAyMiwgdGhpcyBleHRlbnNpb24gd2FpdHMgZm9yIGFueSB3aW5kb3cgY2xvc2luZyBhbmltYXRpb24gdG8gY29tcGxldGUgKGlmIGVuYWJsZWQpIGJlZm9yZSBzaG93aW5nIHRoZSBhcHBsaWNhdGlvbiB2aWV3LiIsCiAgIm5hbWUiOiAiU2hvdyBBcHBsaWNhdGlvbiBWaWV3IFdoZW4gV29ya3NwYWNlIEVtcHR5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZmF3dHl0b28vU2hvdy1BcHBsaWNhdGlvbi1WaWV3LVdoZW4tV29ya3NwYWNlLUVtcHR5IiwKICAidXVpZCI6ICJhcHBsaWNhdGlvbl92aWV3X3doZW5fZW1wdHlAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogMjUKfQ=="}}}
 , {"uuid": "activities_icon_menu@fawtytoo", "name": "Activities Icon Menu", "pname": "activities-menu-for-apps-and-windows", "description": "This extension turns the Activities button into a popup menu with icons for selecting either Applications or Workspaces in the Overview. Selecting the same view again will hide the overview.\n\nThis is particularly useful for tablet users that find the Activities button difficult to click on, whereas a menu can be more easily invoked.", "link": "https://extensions.gnome.org/extension/2048/activities-menu-for-apps-and-windows/", "shell_version_map": {"38": {"version": "11", "sha256": "028nrx3hakj8mcr3n6nsnrzg2mfikn49m4j2pjyq67y7vikjr4af", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHR1cm5zIHRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBpbnRvIGEgcG9wdXAgbWVudSB3aXRoIGljb25zIGZvciBzZWxlY3RpbmcgZWl0aGVyIEFwcGxpY2F0aW9ucyBvciBXb3Jrc3BhY2VzIGluIHRoZSBPdmVydmlldy4gU2VsZWN0aW5nIHRoZSBzYW1lIHZpZXcgYWdhaW4gd2lsbCBoaWRlIHRoZSBvdmVydmlldy5cblxuVGhpcyBpcyBwYXJ0aWN1bGFybHkgdXNlZnVsIGZvciB0YWJsZXQgdXNlcnMgdGhhdCBmaW5kIHRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBkaWZmaWN1bHQgdG8gY2xpY2sgb24sIHdoZXJlYXMgYSBtZW51IGNhbiBiZSBtb3JlIGVhc2lseSBpbnZva2VkLiIsCiAgIm5hbWUiOiAiQWN0aXZpdGllcyBJY29uIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiYWN0aXZpdGllc19pY29uX21lbnVAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "40": {"version": "11", "sha256": "028nrx3hakj8mcr3n6nsnrzg2mfikn49m4j2pjyq67y7vikjr4af", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHR1cm5zIHRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBpbnRvIGEgcG9wdXAgbWVudSB3aXRoIGljb25zIGZvciBzZWxlY3RpbmcgZWl0aGVyIEFwcGxpY2F0aW9ucyBvciBXb3Jrc3BhY2VzIGluIHRoZSBPdmVydmlldy4gU2VsZWN0aW5nIHRoZSBzYW1lIHZpZXcgYWdhaW4gd2lsbCBoaWRlIHRoZSBvdmVydmlldy5cblxuVGhpcyBpcyBwYXJ0aWN1bGFybHkgdXNlZnVsIGZvciB0YWJsZXQgdXNlcnMgdGhhdCBmaW5kIHRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBkaWZmaWN1bHQgdG8gY2xpY2sgb24sIHdoZXJlYXMgYSBtZW51IGNhbiBiZSBtb3JlIGVhc2lseSBpbnZva2VkLiIsCiAgIm5hbWUiOiAiQWN0aXZpdGllcyBJY29uIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiYWN0aXZpdGllc19pY29uX21lbnVAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "41": {"version": "11", "sha256": "028nrx3hakj8mcr3n6nsnrzg2mfikn49m4j2pjyq67y7vikjr4af", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHR1cm5zIHRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBpbnRvIGEgcG9wdXAgbWVudSB3aXRoIGljb25zIGZvciBzZWxlY3RpbmcgZWl0aGVyIEFwcGxpY2F0aW9ucyBvciBXb3Jrc3BhY2VzIGluIHRoZSBPdmVydmlldy4gU2VsZWN0aW5nIHRoZSBzYW1lIHZpZXcgYWdhaW4gd2lsbCBoaWRlIHRoZSBvdmVydmlldy5cblxuVGhpcyBpcyBwYXJ0aWN1bGFybHkgdXNlZnVsIGZvciB0YWJsZXQgdXNlcnMgdGhhdCBmaW5kIHRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBkaWZmaWN1bHQgdG8gY2xpY2sgb24sIHdoZXJlYXMgYSBtZW51IGNhbiBiZSBtb3JlIGVhc2lseSBpbnZva2VkLiIsCiAgIm5hbWUiOiAiQWN0aXZpdGllcyBJY29uIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiYWN0aXZpdGllc19pY29uX21lbnVAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "42": {"version": "11", "sha256": "028nrx3hakj8mcr3n6nsnrzg2mfikn49m4j2pjyq67y7vikjr4af", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHR1cm5zIHRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBpbnRvIGEgcG9wdXAgbWVudSB3aXRoIGljb25zIGZvciBzZWxlY3RpbmcgZWl0aGVyIEFwcGxpY2F0aW9ucyBvciBXb3Jrc3BhY2VzIGluIHRoZSBPdmVydmlldy4gU2VsZWN0aW5nIHRoZSBzYW1lIHZpZXcgYWdhaW4gd2lsbCBoaWRlIHRoZSBvdmVydmlldy5cblxuVGhpcyBpcyBwYXJ0aWN1bGFybHkgdXNlZnVsIGZvciB0YWJsZXQgdXNlcnMgdGhhdCBmaW5kIHRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBkaWZmaWN1bHQgdG8gY2xpY2sgb24sIHdoZXJlYXMgYSBtZW51IGNhbiBiZSBtb3JlIGVhc2lseSBpbnZva2VkLiIsCiAgIm5hbWUiOiAiQWN0aXZpdGllcyBJY29uIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiYWN0aXZpdGllc19pY29uX21lbnVAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}}}
 , {"uuid": "Gold_Price_Monitor@wotmshuaisi_github", "name": "Gold Price Monitor", "pname": "gold-price-monitor", "description": "simple gnome extension helps you tracking gold price in realtime", "link": "https://extensions.gnome.org/extension/2075/gold-price-monitor/", "shell_version_map": {"40": {"version": "24", "sha256": "1z2z9nagl2drb1mabwbsfy9av10rxc0biic1wiz6dr0mqr6pfkxh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRhbmdlcm91cyI6IGZhbHNlLAogICJkZXNjcmlwdGlvbiI6ICJzaW1wbGUgZ25vbWUgZXh0ZW5zaW9uIGhlbHBzIHlvdSB0cmFja2luZyBnb2xkIHByaWNlIGluIHJlYWx0aW1lIiwKICAibmFtZSI6ICJHb2xkIFByaWNlIE1vbml0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZ29sZC1wcmljZS1tb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vd290bXNodWFpc2kvZ29sZHByaWNlbW9uaXRvciIsCiAgInV1aWQiOiAiR29sZF9QcmljZV9Nb25pdG9yQHdvdG1zaHVhaXNpX2dpdGh1YiIsCiAgInZlcnNpb24iOiAyNAp9"}, "41": {"version": "24", "sha256": "1z2z9nagl2drb1mabwbsfy9av10rxc0biic1wiz6dr0mqr6pfkxh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRhbmdlcm91cyI6IGZhbHNlLAogICJkZXNjcmlwdGlvbiI6ICJzaW1wbGUgZ25vbWUgZXh0ZW5zaW9uIGhlbHBzIHlvdSB0cmFja2luZyBnb2xkIHByaWNlIGluIHJlYWx0aW1lIiwKICAibmFtZSI6ICJHb2xkIFByaWNlIE1vbml0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZ29sZC1wcmljZS1tb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vd290bXNodWFpc2kvZ29sZHByaWNlbW9uaXRvciIsCiAgInV1aWQiOiAiR29sZF9QcmljZV9Nb25pdG9yQHdvdG1zaHVhaXNpX2dpdGh1YiIsCiAgInZlcnNpb24iOiAyNAp9"}, "42": {"version": "24", "sha256": "1z2z9nagl2drb1mabwbsfy9av10rxc0biic1wiz6dr0mqr6pfkxh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRhbmdlcm91cyI6IGZhbHNlLAogICJkZXNjcmlwdGlvbiI6ICJzaW1wbGUgZ25vbWUgZXh0ZW5zaW9uIGhlbHBzIHlvdSB0cmFja2luZyBnb2xkIHByaWNlIGluIHJlYWx0aW1lIiwKICAibmFtZSI6ICJHb2xkIFByaWNlIE1vbml0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZ29sZC1wcmljZS1tb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vd290bXNodWFpc2kvZ29sZHByaWNlbW9uaXRvciIsCiAgInV1aWQiOiAiR29sZF9QcmljZV9Nb25pdG9yQHdvdG1zaHVhaXNpX2dpdGh1YiIsCiAgInZlcnNpb24iOiAyNAp9"}}}
-, {"uuid": "ding@rastersoft.com", "name": "Desktop Icons NG (DING)", "pname": "desktop-icons-ng-ding", "description": "Adds icons to the desktop. Fork of the original Desktop Icons extension, with several enhancements .", "link": "https://extensions.gnome.org/extension/2087/desktop-icons-ng-ding/", "shell_version_map": {"38": {"version": "49", "sha256": "0zpmnkxrs5l5x5mg1ymj8w69dmmibimfxmmfg8vqcipnfv7ybswd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgaWNvbnMgdG8gdGhlIGRlc2t0b3AuIEZvcmsgb2YgdGhlIG9yaWdpbmFsIERlc2t0b3AgSWNvbnMgZXh0ZW5zaW9uLCB3aXRoIHNldmVyYWwgZW5oYW5jZW1lbnRzIC4iLAogICJuYW1lIjogIkRlc2t0b3AgSWNvbnMgTkcgKERJTkcpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3Jhc3RlcnNvZnQvZGVza3RvcC1pY29ucy1uZyIsCiAgInV1aWQiOiAiZGluZ0ByYXN0ZXJzb2Z0LmNvbSIsCiAgInZlcnNpb24iOiA0OQp9"}, "40": {"version": "49", "sha256": "0zpmnkxrs5l5x5mg1ymj8w69dmmibimfxmmfg8vqcipnfv7ybswd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgaWNvbnMgdG8gdGhlIGRlc2t0b3AuIEZvcmsgb2YgdGhlIG9yaWdpbmFsIERlc2t0b3AgSWNvbnMgZXh0ZW5zaW9uLCB3aXRoIHNldmVyYWwgZW5oYW5jZW1lbnRzIC4iLAogICJuYW1lIjogIkRlc2t0b3AgSWNvbnMgTkcgKERJTkcpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3Jhc3RlcnNvZnQvZGVza3RvcC1pY29ucy1uZyIsCiAgInV1aWQiOiAiZGluZ0ByYXN0ZXJzb2Z0LmNvbSIsCiAgInZlcnNpb24iOiA0OQp9"}, "41": {"version": "49", "sha256": "0zpmnkxrs5l5x5mg1ymj8w69dmmibimfxmmfg8vqcipnfv7ybswd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgaWNvbnMgdG8gdGhlIGRlc2t0b3AuIEZvcmsgb2YgdGhlIG9yaWdpbmFsIERlc2t0b3AgSWNvbnMgZXh0ZW5zaW9uLCB3aXRoIHNldmVyYWwgZW5oYW5jZW1lbnRzIC4iLAogICJuYW1lIjogIkRlc2t0b3AgSWNvbnMgTkcgKERJTkcpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3Jhc3RlcnNvZnQvZGVza3RvcC1pY29ucy1uZyIsCiAgInV1aWQiOiAiZGluZ0ByYXN0ZXJzb2Z0LmNvbSIsCiAgInZlcnNpb24iOiA0OQp9"}, "42": {"version": "49", "sha256": "0zpmnkxrs5l5x5mg1ymj8w69dmmibimfxmmfg8vqcipnfv7ybswd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgaWNvbnMgdG8gdGhlIGRlc2t0b3AuIEZvcmsgb2YgdGhlIG9yaWdpbmFsIERlc2t0b3AgSWNvbnMgZXh0ZW5zaW9uLCB3aXRoIHNldmVyYWwgZW5oYW5jZW1lbnRzIC4iLAogICJuYW1lIjogIkRlc2t0b3AgSWNvbnMgTkcgKERJTkcpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3Jhc3RlcnNvZnQvZGVza3RvcC1pY29ucy1uZyIsCiAgInV1aWQiOiAiZGluZ0ByYXN0ZXJzb2Z0LmNvbSIsCiAgInZlcnNpb24iOiA0OQp9"}, "43": {"version": "49", "sha256": "0zpmnkxrs5l5x5mg1ymj8w69dmmibimfxmmfg8vqcipnfv7ybswd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgaWNvbnMgdG8gdGhlIGRlc2t0b3AuIEZvcmsgb2YgdGhlIG9yaWdpbmFsIERlc2t0b3AgSWNvbnMgZXh0ZW5zaW9uLCB3aXRoIHNldmVyYWwgZW5oYW5jZW1lbnRzIC4iLAogICJuYW1lIjogIkRlc2t0b3AgSWNvbnMgTkcgKERJTkcpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3Jhc3RlcnNvZnQvZGVza3RvcC1pY29ucy1uZyIsCiAgInV1aWQiOiAiZGluZ0ByYXN0ZXJzb2Z0LmNvbSIsCiAgInZlcnNpb24iOiA0OQp9"}}}
+, {"uuid": "ding@rastersoft.com", "name": "Desktop Icons NG (DING)", "pname": "desktop-icons-ng-ding", "description": "Adds icons to the desktop. Fork of the original Desktop Icons extension, with several enhancements .", "link": "https://extensions.gnome.org/extension/2087/desktop-icons-ng-ding/", "shell_version_map": {"38": {"version": "50", "sha256": "0f69lk9mdxmf2z9mx6wvx5l876nryjm1vjrwb70bxwxhqj5qwp5p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgaWNvbnMgdG8gdGhlIGRlc2t0b3AuIEZvcmsgb2YgdGhlIG9yaWdpbmFsIERlc2t0b3AgSWNvbnMgZXh0ZW5zaW9uLCB3aXRoIHNldmVyYWwgZW5oYW5jZW1lbnRzIC4iLAogICJuYW1lIjogIkRlc2t0b3AgSWNvbnMgTkcgKERJTkcpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3Jhc3RlcnNvZnQvZGVza3RvcC1pY29ucy1uZyIsCiAgInV1aWQiOiAiZGluZ0ByYXN0ZXJzb2Z0LmNvbSIsCiAgInZlcnNpb24iOiA1MAp9"}, "40": {"version": "50", "sha256": "0f69lk9mdxmf2z9mx6wvx5l876nryjm1vjrwb70bxwxhqj5qwp5p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgaWNvbnMgdG8gdGhlIGRlc2t0b3AuIEZvcmsgb2YgdGhlIG9yaWdpbmFsIERlc2t0b3AgSWNvbnMgZXh0ZW5zaW9uLCB3aXRoIHNldmVyYWwgZW5oYW5jZW1lbnRzIC4iLAogICJuYW1lIjogIkRlc2t0b3AgSWNvbnMgTkcgKERJTkcpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3Jhc3RlcnNvZnQvZGVza3RvcC1pY29ucy1uZyIsCiAgInV1aWQiOiAiZGluZ0ByYXN0ZXJzb2Z0LmNvbSIsCiAgInZlcnNpb24iOiA1MAp9"}, "41": {"version": "50", "sha256": "0f69lk9mdxmf2z9mx6wvx5l876nryjm1vjrwb70bxwxhqj5qwp5p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgaWNvbnMgdG8gdGhlIGRlc2t0b3AuIEZvcmsgb2YgdGhlIG9yaWdpbmFsIERlc2t0b3AgSWNvbnMgZXh0ZW5zaW9uLCB3aXRoIHNldmVyYWwgZW5oYW5jZW1lbnRzIC4iLAogICJuYW1lIjogIkRlc2t0b3AgSWNvbnMgTkcgKERJTkcpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3Jhc3RlcnNvZnQvZGVza3RvcC1pY29ucy1uZyIsCiAgInV1aWQiOiAiZGluZ0ByYXN0ZXJzb2Z0LmNvbSIsCiAgInZlcnNpb24iOiA1MAp9"}, "42": {"version": "50", "sha256": "0f69lk9mdxmf2z9mx6wvx5l876nryjm1vjrwb70bxwxhqj5qwp5p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgaWNvbnMgdG8gdGhlIGRlc2t0b3AuIEZvcmsgb2YgdGhlIG9yaWdpbmFsIERlc2t0b3AgSWNvbnMgZXh0ZW5zaW9uLCB3aXRoIHNldmVyYWwgZW5oYW5jZW1lbnRzIC4iLAogICJuYW1lIjogIkRlc2t0b3AgSWNvbnMgTkcgKERJTkcpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3Jhc3RlcnNvZnQvZGVza3RvcC1pY29ucy1uZyIsCiAgInV1aWQiOiAiZGluZ0ByYXN0ZXJzb2Z0LmNvbSIsCiAgInZlcnNpb24iOiA1MAp9"}, "43": {"version": "50", "sha256": "0f69lk9mdxmf2z9mx6wvx5l876nryjm1vjrwb70bxwxhqj5qwp5p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgaWNvbnMgdG8gdGhlIGRlc2t0b3AuIEZvcmsgb2YgdGhlIG9yaWdpbmFsIERlc2t0b3AgSWNvbnMgZXh0ZW5zaW9uLCB3aXRoIHNldmVyYWwgZW5oYW5jZW1lbnRzIC4iLAogICJuYW1lIjogIkRlc2t0b3AgSWNvbnMgTkcgKERJTkcpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3Jhc3RlcnNvZnQvZGVza3RvcC1pY29ucy1uZyIsCiAgInV1aWQiOiAiZGluZ0ByYXN0ZXJzb2Z0LmNvbSIsCiAgInZlcnNpb24iOiA1MAp9"}}}
 , {"uuid": "order-extensions@wa4557.github.com", "name": "Order Gnome Shell extensions", "pname": "order-gnome-shell-extensions", "description": "Fixes order of gnome-shell extensions\n\nhttps://github.com/andia89/order-icons", "link": "https://extensions.gnome.org/extension/2114/order-gnome-shell-extensions/", "shell_version_map": {"38": {"version": "6", "sha256": "1nc7kg43xv02ndy1c9q2a32ca558ah21kdpwqy98xp0gyxc3sppy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJBbmRyZWFzIEFuZ2VyZXIiLAogICJkZXNjcmlwdGlvbiI6ICJGaXhlcyBvcmRlciBvZiBnbm9tZS1zaGVsbCBleHRlbnNpb25zXG5cbmh0dHBzOi8vZ2l0aHViLmNvbS9hbmRpYTg5L29yZGVyLWljb25zIiwKICAiZXh0ZW5zaW9uLWlkIjogIm9yZGVyLWV4dGVuc2lvbnMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJvcmRlciBleHRlbnNpb25zIiwKICAibmFtZSI6ICJPcmRlciBHbm9tZSBTaGVsbCBleHRlbnNpb25zIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICIzLjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIm9yZGVyLWV4dGVuc2lvbnNAd2E0NTU3LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "12", "sha256": "12v52sr6yfgxjmpva5c4navgx7h16cm4a5dq88jqwzkq0a9iilic", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJBbmRyZWFzIEFuZ2VyZXIiLAogICJkZXNjcmlwdGlvbiI6ICJGaXhlcyBvcmRlciBvZiBnbm9tZS1zaGVsbCBleHRlbnNpb25zXG5cbmh0dHBzOi8vZ2l0aHViLmNvbS9hbmRpYTg5L29yZGVyLWljb25zIiwKICAiZXh0ZW5zaW9uLWlkIjogIm9yZGVyLWV4dGVuc2lvbnMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJvcmRlciBleHRlbnNpb25zIiwKICAibmFtZSI6ICJPcmRlciBHbm9tZSBTaGVsbCBleHRlbnNpb25zIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIm9yZGVyLWV4dGVuc2lvbnNAd2E0NTU3LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "41": {"version": "12", "sha256": "12v52sr6yfgxjmpva5c4navgx7h16cm4a5dq88jqwzkq0a9iilic", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJBbmRyZWFzIEFuZ2VyZXIiLAogICJkZXNjcmlwdGlvbiI6ICJGaXhlcyBvcmRlciBvZiBnbm9tZS1zaGVsbCBleHRlbnNpb25zXG5cbmh0dHBzOi8vZ2l0aHViLmNvbS9hbmRpYTg5L29yZGVyLWljb25zIiwKICAiZXh0ZW5zaW9uLWlkIjogIm9yZGVyLWV4dGVuc2lvbnMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJvcmRlciBleHRlbnNpb25zIiwKICAibmFtZSI6ICJPcmRlciBHbm9tZSBTaGVsbCBleHRlbnNpb25zIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIm9yZGVyLWV4dGVuc2lvbnNAd2E0NTU3LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "42": {"version": "12", "sha256": "12v52sr6yfgxjmpva5c4navgx7h16cm4a5dq88jqwzkq0a9iilic", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJBbmRyZWFzIEFuZ2VyZXIiLAogICJkZXNjcmlwdGlvbiI6ICJGaXhlcyBvcmRlciBvZiBnbm9tZS1zaGVsbCBleHRlbnNpb25zXG5cbmh0dHBzOi8vZ2l0aHViLmNvbS9hbmRpYTg5L29yZGVyLWljb25zIiwKICAiZXh0ZW5zaW9uLWlkIjogIm9yZGVyLWV4dGVuc2lvbnMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJvcmRlciBleHRlbnNpb25zIiwKICAibmFtZSI6ICJPcmRlciBHbm9tZSBTaGVsbCBleHRlbnNpb25zIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIm9yZGVyLWV4dGVuc2lvbnNAd2E0NTU3LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}}}
 , {"uuid": "sound-percentage@maestroschan.fr", "name": "Sound percentage", "pname": "sound-percentage", "description": "Display the current sound percentage in the system tray", "link": "https://extensions.gnome.org/extension/2120/sound-percentage/", "shell_version_map": {"38": {"version": "3", "sha256": "140a83mqwja4vkk83ajmknginh0izli65b8x7nab32sif99z7nya", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGhlIGN1cnJlbnQgc291bmQgcGVyY2VudGFnZSBpbiB0aGUgc3lzdGVtIHRyYXkiLAogICJuYW1lIjogIlNvdW5kIHBlcmNlbnRhZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tYW9zY2hhbnovc291bmQtcGVyY2VudGFnZS1ncy1leHRlbnNpb24iLAogICJ1dWlkIjogInNvdW5kLXBlcmNlbnRhZ2VAbWFlc3Ryb3NjaGFuLmZyIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "40": {"version": "3", "sha256": "140a83mqwja4vkk83ajmknginh0izli65b8x7nab32sif99z7nya", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGhlIGN1cnJlbnQgc291bmQgcGVyY2VudGFnZSBpbiB0aGUgc3lzdGVtIHRyYXkiLAogICJuYW1lIjogIlNvdW5kIHBlcmNlbnRhZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tYW9zY2hhbnovc291bmQtcGVyY2VudGFnZS1ncy1leHRlbnNpb24iLAogICJ1dWlkIjogInNvdW5kLXBlcmNlbnRhZ2VAbWFlc3Ryb3NjaGFuLmZyIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "41": {"version": "3", "sha256": "140a83mqwja4vkk83ajmknginh0izli65b8x7nab32sif99z7nya", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGhlIGN1cnJlbnQgc291bmQgcGVyY2VudGFnZSBpbiB0aGUgc3lzdGVtIHRyYXkiLAogICJuYW1lIjogIlNvdW5kIHBlcmNlbnRhZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tYW9zY2hhbnovc291bmQtcGVyY2VudGFnZS1ncy1leHRlbnNpb24iLAogICJ1dWlkIjogInNvdW5kLXBlcmNlbnRhZ2VAbWFlc3Ryb3NjaGFuLmZyIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "42": {"version": "3", "sha256": "140a83mqwja4vkk83ajmknginh0izli65b8x7nab32sif99z7nya", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGhlIGN1cnJlbnQgc291bmQgcGVyY2VudGFnZSBpbiB0aGUgc3lzdGVtIHRyYXkiLAogICJuYW1lIjogIlNvdW5kIHBlcmNlbnRhZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tYW9zY2hhbnovc291bmQtcGVyY2VudGFnZS1ncy1leHRlbnNpb24iLAogICJ1dWlkIjogInNvdW5kLXBlcmNlbnRhZ2VAbWFlc3Ryb3NjaGFuLmZyIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
 , {"uuid": "horizontal-workspaces@gnome-shell-extensions.gcampax.github.com", "name": "Horizontal workspaces", "pname": "horizontal-workspaces", "description": "Use a horizontal workspace layout", "link": "https://extensions.gnome.org/extension/2141/horizontal-workspaces/", "shell_version_map": {"38": {"version": "5", "sha256": "0kbqcrs96v72yk0rf8jghy1a31651fyvgpi97yp46n4wmvc41vk7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVzZSBhIGhvcml6b250YWwgd29ya3NwYWNlIGxheW91dCIsCiAgImV4dGVuc2lvbi1pZCI6ICJob3Jpem9udGFsLXdvcmtzcGFjZXMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJIb3Jpem9udGFsIHdvcmtzcGFjZXMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaG9yaXpvbnRhbC13b3Jrc3BhY2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAiaG9yaXpvbnRhbC13b3Jrc3BhY2VzQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
@@ -259,11 +259,11 @@
 , {"uuid": "spotify-ad-block@danigm.net", "name": "Mute spotify ads", "pname": "mute-spotify-ads", "description": "Mute spotify ads", "link": "https://extensions.gnome.org/extension/2176/mute-spotify-ads/", "shell_version_map": {"38": {"version": "17", "sha256": "0z7jki4h9rjhshjdzysirjdcacamfssix6x81i1vr2yxwqnpd4dw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJuYW1lIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGFuaWdtL3Nwb3RpZnktYWQtYmxvY2tlciIsCiAgInV1aWQiOiAic3BvdGlmeS1hZC1ibG9ja0BkYW5pZ20ubmV0IiwKICAidmVyc2lvbiI6IDE3Cn0="}, "40": {"version": "17", "sha256": "0z7jki4h9rjhshjdzysirjdcacamfssix6x81i1vr2yxwqnpd4dw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJuYW1lIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGFuaWdtL3Nwb3RpZnktYWQtYmxvY2tlciIsCiAgInV1aWQiOiAic3BvdGlmeS1hZC1ibG9ja0BkYW5pZ20ubmV0IiwKICAidmVyc2lvbiI6IDE3Cn0="}, "41": {"version": "17", "sha256": "0z7jki4h9rjhshjdzysirjdcacamfssix6x81i1vr2yxwqnpd4dw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJuYW1lIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGFuaWdtL3Nwb3RpZnktYWQtYmxvY2tlciIsCiAgInV1aWQiOiAic3BvdGlmeS1hZC1ibG9ja0BkYW5pZ20ubmV0IiwKICAidmVyc2lvbiI6IDE3Cn0="}, "42": {"version": "17", "sha256": "0z7jki4h9rjhshjdzysirjdcacamfssix6x81i1vr2yxwqnpd4dw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJuYW1lIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGFuaWdtL3Nwb3RpZnktYWQtYmxvY2tlciIsCiAgInV1aWQiOiAic3BvdGlmeS1hZC1ibG9ja0BkYW5pZ20ubmV0IiwKICAidmVyc2lvbiI6IDE3Cn0="}, "43": {"version": "17", "sha256": "0z7jki4h9rjhshjdzysirjdcacamfssix6x81i1vr2yxwqnpd4dw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJuYW1lIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGFuaWdtL3Nwb3RpZnktYWQtYmxvY2tlciIsCiAgInV1aWQiOiAic3BvdGlmeS1hZC1ibG9ja0BkYW5pZ20ubmV0IiwKICAidmVyc2lvbiI6IDE3Cn0="}}}
 , {"uuid": "noannoyance@daase.net", "name": "NoAnnoyance v2", "pname": "noannoyance", "description": "Another extension, that removes the 'Window is ready' notification and puts the window into focus. In contrast to all the other extensions, this uses ES6 syntax and is actively maintained.", "link": "https://extensions.gnome.org/extension/2182/noannoyance/", "shell_version_map": {"38": {"version": "12", "sha256": "1wr1wxmaxb569m3wsfdhs0jdpq1zqx3bkk6dgn9iswbbr060bnd0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uLCB0aGF0IHJlbW92ZXMgdGhlICdXaW5kb3cgaXMgcmVhZHknIG5vdGlmaWNhdGlvbiBhbmQgcHV0cyB0aGUgd2luZG93IGludG8gZm9jdXMuIEluIGNvbnRyYXN0IHRvIGFsbCB0aGUgb3RoZXIgZXh0ZW5zaW9ucywgdGhpcyB1c2VzIEVTNiBzeW50YXggYW5kIGlzIGFjdGl2ZWx5IG1haW50YWluZWQuIiwKICAibmFtZSI6ICJOb0Fubm95YW5jZSB2MiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0Jqb2VybkRhYXNlL25vYW5ub3lhbmNlIiwKICAidXVpZCI6ICJub2Fubm95YW5jZUBkYWFzZS5uZXQiLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "40": {"version": "17", "sha256": "11liw6l5p6bwb9yz5wvz214z8blbrf6pw40lj0hp0b7yhk2lg9rl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uLCB0aGF0IHJlbW92ZXMgdGhlICdXaW5kb3cgaXMgcmVhZHknIG5vdGlmaWNhdGlvbiBhbmQgcHV0cyB0aGUgd2luZG93IGludG8gZm9jdXMuIEluIGNvbnRyYXN0IHRvIGFsbCB0aGUgb3RoZXIgZXh0ZW5zaW9ucywgdGhpcyB1c2VzIEVTNiBzeW50YXggYW5kIGlzIGFjdGl2ZWx5IG1haW50YWluZWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW5vYW5ub3lhbmNlIiwKICAibmFtZSI6ICJOb0Fubm95YW5jZSB2MiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ub2Fubm95YW5jZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Cam9lcm5EYWFzZS9ub2Fubm95YW5jZSIsCiAgInV1aWQiOiAibm9hbm5veWFuY2VAZGFhc2UubmV0IiwKICAidmVyc2lvbiI6IDE3Cn0="}, "41": {"version": "17", "sha256": "11liw6l5p6bwb9yz5wvz214z8blbrf6pw40lj0hp0b7yhk2lg9rl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uLCB0aGF0IHJlbW92ZXMgdGhlICdXaW5kb3cgaXMgcmVhZHknIG5vdGlmaWNhdGlvbiBhbmQgcHV0cyB0aGUgd2luZG93IGludG8gZm9jdXMuIEluIGNvbnRyYXN0IHRvIGFsbCB0aGUgb3RoZXIgZXh0ZW5zaW9ucywgdGhpcyB1c2VzIEVTNiBzeW50YXggYW5kIGlzIGFjdGl2ZWx5IG1haW50YWluZWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW5vYW5ub3lhbmNlIiwKICAibmFtZSI6ICJOb0Fubm95YW5jZSB2MiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ub2Fubm95YW5jZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Cam9lcm5EYWFzZS9ub2Fubm95YW5jZSIsCiAgInV1aWQiOiAibm9hbm5veWFuY2VAZGFhc2UubmV0IiwKICAidmVyc2lvbiI6IDE3Cn0="}, "42": {"version": "17", "sha256": "11liw6l5p6bwb9yz5wvz214z8blbrf6pw40lj0hp0b7yhk2lg9rl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uLCB0aGF0IHJlbW92ZXMgdGhlICdXaW5kb3cgaXMgcmVhZHknIG5vdGlmaWNhdGlvbiBhbmQgcHV0cyB0aGUgd2luZG93IGludG8gZm9jdXMuIEluIGNvbnRyYXN0IHRvIGFsbCB0aGUgb3RoZXIgZXh0ZW5zaW9ucywgdGhpcyB1c2VzIEVTNiBzeW50YXggYW5kIGlzIGFjdGl2ZWx5IG1haW50YWluZWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW5vYW5ub3lhbmNlIiwKICAibmFtZSI6ICJOb0Fubm95YW5jZSB2MiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ub2Fubm95YW5jZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Cam9lcm5EYWFzZS9ub2Fubm95YW5jZSIsCiAgInV1aWQiOiAibm9hbm5veWFuY2VAZGFhc2UubmV0IiwKICAidmVyc2lvbiI6IDE3Cn0="}, "43": {"version": "17", "sha256": "11liw6l5p6bwb9yz5wvz214z8blbrf6pw40lj0hp0b7yhk2lg9rl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uLCB0aGF0IHJlbW92ZXMgdGhlICdXaW5kb3cgaXMgcmVhZHknIG5vdGlmaWNhdGlvbiBhbmQgcHV0cyB0aGUgd2luZG93IGludG8gZm9jdXMuIEluIGNvbnRyYXN0IHRvIGFsbCB0aGUgb3RoZXIgZXh0ZW5zaW9ucywgdGhpcyB1c2VzIEVTNiBzeW50YXggYW5kIGlzIGFjdGl2ZWx5IG1haW50YWluZWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW5vYW5ub3lhbmNlIiwKICAibmFtZSI6ICJOb0Fubm95YW5jZSB2MiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ub2Fubm95YW5jZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Cam9lcm5EYWFzZS9ub2Fubm95YW5jZSIsCiAgInV1aWQiOiAibm9hbm5veWFuY2VAZGFhc2UubmV0IiwKICAidmVyc2lvbiI6IDE3Cn0="}}}
 , {"uuid": "vim-altTab@kokong.info", "name": "VIM Alt-Tab", "pname": "vim-alt-tab", "description": "Add the ability to switch between windows and applications using vim-like keypresses (h, j, k, l)", "link": "https://extensions.gnome.org/extension/2212/vim-alt-tab/", "shell_version_map": {"38": {"version": "7", "sha256": "1dxwkqnfmqr3xghrf58hix5v4hs13ycg1hqm5alr4lknn6i7sfwr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCB0aGUgYWJpbGl0eSB0byBzd2l0Y2ggYmV0d2VlbiB3aW5kb3dzIGFuZCBhcHBsaWNhdGlvbnMgdXNpbmcgdmltLWxpa2Uga2V5cHJlc3NlcyAoaCwgaiwgaywgbCkiLAogICJleHRlbnNpb24taWQiOiAidmltLWFsdHRhYiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIlZJTSBBbHQtVGFiIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJqd0BiYXJnc3Rlbi5vcmciLAogICAgInRob21hcy5ib3VmZm9uQGdtYWlsLmNvbSIsCiAgICAia29rb0Brb2tvbmcuaW5mbyIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudmltLWFsdHRhYiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rb2tvLW5nL3ZpbS1hbHRUYWIiLAogICJ1dWlkIjogInZpbS1hbHRUYWJAa29rb25nLmluZm8iLAogICJ2ZXJzaW9uIjogNwp9"}, "40": {"version": "7", "sha256": "1dxwkqnfmqr3xghrf58hix5v4hs13ycg1hqm5alr4lknn6i7sfwr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCB0aGUgYWJpbGl0eSB0byBzd2l0Y2ggYmV0d2VlbiB3aW5kb3dzIGFuZCBhcHBsaWNhdGlvbnMgdXNpbmcgdmltLWxpa2Uga2V5cHJlc3NlcyAoaCwgaiwgaywgbCkiLAogICJleHRlbnNpb24taWQiOiAidmltLWFsdHRhYiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIlZJTSBBbHQtVGFiIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJqd0BiYXJnc3Rlbi5vcmciLAogICAgInRob21hcy5ib3VmZm9uQGdtYWlsLmNvbSIsCiAgICAia29rb0Brb2tvbmcuaW5mbyIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudmltLWFsdHRhYiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rb2tvLW5nL3ZpbS1hbHRUYWIiLAogICJ1dWlkIjogInZpbS1hbHRUYWJAa29rb25nLmluZm8iLAogICJ2ZXJzaW9uIjogNwp9"}, "41": {"version": "7", "sha256": "1dxwkqnfmqr3xghrf58hix5v4hs13ycg1hqm5alr4lknn6i7sfwr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCB0aGUgYWJpbGl0eSB0byBzd2l0Y2ggYmV0d2VlbiB3aW5kb3dzIGFuZCBhcHBsaWNhdGlvbnMgdXNpbmcgdmltLWxpa2Uga2V5cHJlc3NlcyAoaCwgaiwgaywgbCkiLAogICJleHRlbnNpb24taWQiOiAidmltLWFsdHRhYiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIlZJTSBBbHQtVGFiIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJqd0BiYXJnc3Rlbi5vcmciLAogICAgInRob21hcy5ib3VmZm9uQGdtYWlsLmNvbSIsCiAgICAia29rb0Brb2tvbmcuaW5mbyIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudmltLWFsdHRhYiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rb2tvLW5nL3ZpbS1hbHRUYWIiLAogICJ1dWlkIjogInZpbS1hbHRUYWJAa29rb25nLmluZm8iLAogICJ2ZXJzaW9uIjogNwp9"}, "42": {"version": "7", "sha256": "1dxwkqnfmqr3xghrf58hix5v4hs13ycg1hqm5alr4lknn6i7sfwr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCB0aGUgYWJpbGl0eSB0byBzd2l0Y2ggYmV0d2VlbiB3aW5kb3dzIGFuZCBhcHBsaWNhdGlvbnMgdXNpbmcgdmltLWxpa2Uga2V5cHJlc3NlcyAoaCwgaiwgaywgbCkiLAogICJleHRlbnNpb24taWQiOiAidmltLWFsdHRhYiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIlZJTSBBbHQtVGFiIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJqd0BiYXJnc3Rlbi5vcmciLAogICAgInRob21hcy5ib3VmZm9uQGdtYWlsLmNvbSIsCiAgICAia29rb0Brb2tvbmcuaW5mbyIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudmltLWFsdHRhYiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rb2tvLW5nL3ZpbS1hbHRUYWIiLAogICJ1dWlkIjogInZpbS1hbHRUYWJAa29rb25nLmluZm8iLAogICJ2ZXJzaW9uIjogNwp9"}, "43": {"version": "7", "sha256": "1dxwkqnfmqr3xghrf58hix5v4hs13ycg1hqm5alr4lknn6i7sfwr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCB0aGUgYWJpbGl0eSB0byBzd2l0Y2ggYmV0d2VlbiB3aW5kb3dzIGFuZCBhcHBsaWNhdGlvbnMgdXNpbmcgdmltLWxpa2Uga2V5cHJlc3NlcyAoaCwgaiwgaywgbCkiLAogICJleHRlbnNpb24taWQiOiAidmltLWFsdHRhYiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIlZJTSBBbHQtVGFiIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJqd0BiYXJnc3Rlbi5vcmciLAogICAgInRob21hcy5ib3VmZm9uQGdtYWlsLmNvbSIsCiAgICAia29rb0Brb2tvbmcuaW5mbyIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudmltLWFsdHRhYiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rb2tvLW5nL3ZpbS1hbHRUYWIiLAogICJ1dWlkIjogInZpbS1hbHRUYWJAa29rb25nLmluZm8iLAogICJ2ZXJzaW9uIjogNwp9"}}}
-, {"uuid": "easy_docker_containers@red.software.systems", "name": "Easy Docker Containers", "pname": "easy-docker-containers", "description": "A GNOME Shell extension (GNOME Panel applet) to be able to generally control your available Docker containers.", "link": "https://extensions.gnome.org/extension/2224/easy-docker-containers/", "shell_version_map": {"38": {"version": "18", "sha256": "1rmari65bq7g6hh8gcvw382d69fkpgni0b4i1w1lz9jw91j9bn56", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIChHTk9NRSBQYW5lbCBhcHBsZXQpIHRvIGJlIGFibGUgdG8gZ2VuZXJhbGx5IGNvbnRyb2wgeW91ciBhdmFpbGFibGUgRG9ja2VyIGNvbnRhaW5lcnMuIiwKICAibmFtZSI6ICJFYXN5IERvY2tlciBDb250YWluZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUmVkU29mdHdhcmVTeXN0ZW1zL2Vhc3lfZG9ja2VyX2NvbnRhaW5lcnMiLAogICJ1dWlkIjogImVhc3lfZG9ja2VyX2NvbnRhaW5lcnNAcmVkLnNvZnR3YXJlLnN5c3RlbXMiLAogICJ2ZXJzaW9uIjogMTgKfQ=="}, "40": {"version": "18", "sha256": "1rmari65bq7g6hh8gcvw382d69fkpgni0b4i1w1lz9jw91j9bn56", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIChHTk9NRSBQYW5lbCBhcHBsZXQpIHRvIGJlIGFibGUgdG8gZ2VuZXJhbGx5IGNvbnRyb2wgeW91ciBhdmFpbGFibGUgRG9ja2VyIGNvbnRhaW5lcnMuIiwKICAibmFtZSI6ICJFYXN5IERvY2tlciBDb250YWluZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUmVkU29mdHdhcmVTeXN0ZW1zL2Vhc3lfZG9ja2VyX2NvbnRhaW5lcnMiLAogICJ1dWlkIjogImVhc3lfZG9ja2VyX2NvbnRhaW5lcnNAcmVkLnNvZnR3YXJlLnN5c3RlbXMiLAogICJ2ZXJzaW9uIjogMTgKfQ=="}, "41": {"version": "18", "sha256": "1rmari65bq7g6hh8gcvw382d69fkpgni0b4i1w1lz9jw91j9bn56", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIChHTk9NRSBQYW5lbCBhcHBsZXQpIHRvIGJlIGFibGUgdG8gZ2VuZXJhbGx5IGNvbnRyb2wgeW91ciBhdmFpbGFibGUgRG9ja2VyIGNvbnRhaW5lcnMuIiwKICAibmFtZSI6ICJFYXN5IERvY2tlciBDb250YWluZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUmVkU29mdHdhcmVTeXN0ZW1zL2Vhc3lfZG9ja2VyX2NvbnRhaW5lcnMiLAogICJ1dWlkIjogImVhc3lfZG9ja2VyX2NvbnRhaW5lcnNAcmVkLnNvZnR3YXJlLnN5c3RlbXMiLAogICJ2ZXJzaW9uIjogMTgKfQ=="}, "42": {"version": "18", "sha256": "1rmari65bq7g6hh8gcvw382d69fkpgni0b4i1w1lz9jw91j9bn56", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIChHTk9NRSBQYW5lbCBhcHBsZXQpIHRvIGJlIGFibGUgdG8gZ2VuZXJhbGx5IGNvbnRyb2wgeW91ciBhdmFpbGFibGUgRG9ja2VyIGNvbnRhaW5lcnMuIiwKICAibmFtZSI6ICJFYXN5IERvY2tlciBDb250YWluZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUmVkU29mdHdhcmVTeXN0ZW1zL2Vhc3lfZG9ja2VyX2NvbnRhaW5lcnMiLAogICJ1dWlkIjogImVhc3lfZG9ja2VyX2NvbnRhaW5lcnNAcmVkLnNvZnR3YXJlLnN5c3RlbXMiLAogICJ2ZXJzaW9uIjogMTgKfQ=="}}}
+, {"uuid": "easy_docker_containers@red.software.systems", "name": "Easy Docker Containers", "pname": "easy-docker-containers", "description": "A GNOME Shell extension (GNOME Panel applet) to be able to generally control your available Docker containers.", "link": "https://extensions.gnome.org/extension/2224/easy-docker-containers/", "shell_version_map": {"38": {"version": "19", "sha256": "1vxjq29qfy1i358n0y41zhjy8l624ylyrg0xgcfc4lpb0n3zg5r9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIChHTk9NRSBQYW5lbCBhcHBsZXQpIHRvIGJlIGFibGUgdG8gZ2VuZXJhbGx5IGNvbnRyb2wgeW91ciBhdmFpbGFibGUgRG9ja2VyIGNvbnRhaW5lcnMuIiwKICAibmFtZSI6ICJFYXN5IERvY2tlciBDb250YWluZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JlZFNvZnR3YXJlU3lzdGVtcy9lYXN5X2RvY2tlcl9jb250YWluZXJzIiwKICAidXVpZCI6ICJlYXN5X2RvY2tlcl9jb250YWluZXJzQHJlZC5zb2Z0d2FyZS5zeXN0ZW1zIiwKICAidmVyc2lvbiI6IDE5Cn0="}, "40": {"version": "19", "sha256": "1vxjq29qfy1i358n0y41zhjy8l624ylyrg0xgcfc4lpb0n3zg5r9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIChHTk9NRSBQYW5lbCBhcHBsZXQpIHRvIGJlIGFibGUgdG8gZ2VuZXJhbGx5IGNvbnRyb2wgeW91ciBhdmFpbGFibGUgRG9ja2VyIGNvbnRhaW5lcnMuIiwKICAibmFtZSI6ICJFYXN5IERvY2tlciBDb250YWluZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JlZFNvZnR3YXJlU3lzdGVtcy9lYXN5X2RvY2tlcl9jb250YWluZXJzIiwKICAidXVpZCI6ICJlYXN5X2RvY2tlcl9jb250YWluZXJzQHJlZC5zb2Z0d2FyZS5zeXN0ZW1zIiwKICAidmVyc2lvbiI6IDE5Cn0="}, "41": {"version": "19", "sha256": "1vxjq29qfy1i358n0y41zhjy8l624ylyrg0xgcfc4lpb0n3zg5r9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIChHTk9NRSBQYW5lbCBhcHBsZXQpIHRvIGJlIGFibGUgdG8gZ2VuZXJhbGx5IGNvbnRyb2wgeW91ciBhdmFpbGFibGUgRG9ja2VyIGNvbnRhaW5lcnMuIiwKICAibmFtZSI6ICJFYXN5IERvY2tlciBDb250YWluZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JlZFNvZnR3YXJlU3lzdGVtcy9lYXN5X2RvY2tlcl9jb250YWluZXJzIiwKICAidXVpZCI6ICJlYXN5X2RvY2tlcl9jb250YWluZXJzQHJlZC5zb2Z0d2FyZS5zeXN0ZW1zIiwKICAidmVyc2lvbiI6IDE5Cn0="}, "42": {"version": "19", "sha256": "1vxjq29qfy1i358n0y41zhjy8l624ylyrg0xgcfc4lpb0n3zg5r9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIChHTk9NRSBQYW5lbCBhcHBsZXQpIHRvIGJlIGFibGUgdG8gZ2VuZXJhbGx5IGNvbnRyb2wgeW91ciBhdmFpbGFibGUgRG9ja2VyIGNvbnRhaW5lcnMuIiwKICAibmFtZSI6ICJFYXN5IERvY2tlciBDb250YWluZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JlZFNvZnR3YXJlU3lzdGVtcy9lYXN5X2RvY2tlcl9jb250YWluZXJzIiwKICAidXVpZCI6ICJlYXN5X2RvY2tlcl9jb250YWluZXJzQHJlZC5zb2Z0d2FyZS5zeXN0ZW1zIiwKICAidmVyc2lvbiI6IDE5Cn0="}, "43": {"version": "19", "sha256": "1vxjq29qfy1i358n0y41zhjy8l624ylyrg0xgcfc4lpb0n3zg5r9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIChHTk9NRSBQYW5lbCBhcHBsZXQpIHRvIGJlIGFibGUgdG8gZ2VuZXJhbGx5IGNvbnRyb2wgeW91ciBhdmFpbGFibGUgRG9ja2VyIGNvbnRhaW5lcnMuIiwKICAibmFtZSI6ICJFYXN5IERvY2tlciBDb250YWluZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JlZFNvZnR3YXJlU3lzdGVtcy9lYXN5X2RvY2tlcl9jb250YWluZXJzIiwKICAidXVpZCI6ICJlYXN5X2RvY2tlcl9jb250YWluZXJzQHJlZC5zb2Z0d2FyZS5zeXN0ZW1zIiwKICAidmVyc2lvbiI6IDE5Cn0="}}}
 , {"uuid": "nightthemeswitcher@romainvigier.fr", "name": "Night Theme Switcher", "pname": "night-theme-switcher", "description": "Automatically toggle your desktop’s color scheme between light and dark, switch backgrounds and run custom commands at sunset and sunrise.", "link": "https://extensions.gnome.org/extension/2236/night-theme-switcher/", "shell_version_map": {"38": {"version": "46", "sha256": "1riz1c59l1vzxb6irh723fw3vh2l5y07b59h3h11gs3lwlhgki0j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgdG9nZ2xlIHlvdXIgZGVza3RvcFx1MjAxOXMgY29sb3Igc2NoZW1lIGJldHdlZW4gbGlnaHQgYW5kIGRhcmssIHN3aXRjaCBiYWNrZ3JvdW5kcyBhbmQgcnVuIGN1c3RvbSBjb21tYW5kcyBhdCBzdW5zZXQgYW5kIHN1bnJpc2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibmlnaHR0aGVtZXN3aXRjaGVyQHJvbWFpbnZpZ2llci5mciIsCiAgIm5hbWUiOiAiTmlnaHQgVGhlbWUgU3dpdGNoZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubmlnaHR0aGVtZXN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL25pZ2h0dGhlbWVzd2l0Y2hlci5yb21haW52aWdpZXIuZnIiLAogICJ1dWlkIjogIm5pZ2h0dGhlbWVzd2l0Y2hlckByb21haW52aWdpZXIuZnIiLAogICJ2ZXJzaW9uIjogNDYKfQ=="}, "40": {"version": "51", "sha256": "1pd3q7if06bvwrnln1v9h6wp82fpvs7lqq8c593rjsxrwdsjhbjq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgdG9nZ2xlIHlvdXIgZGVza3RvcFx1MjAxOXMgY29sb3Igc2NoZW1lIGJldHdlZW4gbGlnaHQgYW5kIGRhcmssIHN3aXRjaCBiYWNrZ3JvdW5kcyBhbmQgcnVuIGN1c3RvbSBjb21tYW5kcyBhdCBzdW5zZXQgYW5kIHN1bnJpc2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibmlnaHR0aGVtZXN3aXRjaGVyQHJvbWFpbnZpZ2llci5mciIsCiAgIm5hbWUiOiAiTmlnaHQgVGhlbWUgU3dpdGNoZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubmlnaHR0aGVtZXN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9uaWdodHRoZW1lc3dpdGNoZXIucm9tYWludmlnaWVyLmZyIiwKICAidXVpZCI6ICJuaWdodHRoZW1lc3dpdGNoZXJAcm9tYWludmlnaWVyLmZyIiwKICAidmVyc2lvbiI6IDUxCn0="}, "41": {"version": "55", "sha256": "0qy9i3ayg3pbcxk5fj79s8agjl55c4vq36lxzd785kaljrzv0jws", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgdG9nZ2xlIHlvdXIgZGVza3RvcFx1MjAxOXMgY29sb3Igc2NoZW1lIGJldHdlZW4gbGlnaHQgYW5kIGRhcmssIHN3aXRjaCBiYWNrZ3JvdW5kcyBhbmQgcnVuIGN1c3RvbSBjb21tYW5kcyBhdCBzdW5zZXQgYW5kIHN1bnJpc2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibmlnaHR0aGVtZXN3aXRjaGVyQHJvbWFpbnZpZ2llci5mciIsCiAgIm5hbWUiOiAiTmlnaHQgVGhlbWUgU3dpdGNoZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubmlnaHR0aGVtZXN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9uaWdodHRoZW1lc3dpdGNoZXIucm9tYWludmlnaWVyLmZyIiwKICAidXVpZCI6ICJuaWdodHRoZW1lc3dpdGNoZXJAcm9tYWludmlnaWVyLmZyIiwKICAidmVyc2lvbiI6IDU1Cn0="}, "42": {"version": "65", "sha256": "0482gvsrg0q5l8rrlq2jn5j8a49p52l6gfnpggpj4qgj8ccrapkv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgdG9nZ2xlIHlvdXIgZGVza3RvcFx1MjAxOXMgY29sb3Igc2NoZW1lIGJldHdlZW4gbGlnaHQgYW5kIGRhcmssIHN3aXRjaCBiYWNrZ3JvdW5kcyBhbmQgcnVuIGN1c3RvbSBjb21tYW5kcyBhdCBzdW5zZXQgYW5kIHN1bnJpc2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibmlnaHR0aGVtZXN3aXRjaGVyQHJvbWFpbnZpZ2llci5mciIsCiAgIm5hbWUiOiAiTmlnaHQgVGhlbWUgU3dpdGNoZXIiLAogICJzZXNzaW9uLW1vZGVzIjogWwogICAgInVubG9jay1kaWFsb2ciLAogICAgInVzZXIiCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5pZ2h0dGhlbWVzd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vbmlnaHR0aGVtZXN3aXRjaGVyLnJvbWFpbnZpZ2llci5mciIsCiAgInV1aWQiOiAibmlnaHR0aGVtZXN3aXRjaGVyQHJvbWFpbnZpZ2llci5mciIsCiAgInZlcnNpb24iOiA2NQp9"}, "43": {"version": "67", "sha256": "1yxmysynbk5d6w07z5g6zkddly4wcyj1j8rf55cn3r7yzv26i195", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJ1aWxkLXR5cGUiOiAicmVsZWFzZSIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgdG9nZ2xlIHlvdXIgZGVza3RvcFx1MjAxOXMgY29sb3Igc2NoZW1lIGJldHdlZW4gbGlnaHQgYW5kIGRhcmssIHN3aXRjaCBiYWNrZ3JvdW5kcyBhbmQgcnVuIGN1c3RvbSBjb21tYW5kcyBhdCBzdW5zZXQgYW5kIHN1bnJpc2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibmlnaHR0aGVtZXN3aXRjaGVyQHJvbWFpbnZpZ2llci5mciIsCiAgIm5hbWUiOiAiTmlnaHQgVGhlbWUgU3dpdGNoZXIiLAogICJzZXNzaW9uLW1vZGVzIjogWwogICAgInVubG9jay1kaWFsb2ciLAogICAgInVzZXIiCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5pZ2h0dGhlbWVzd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vbmlnaHR0aGVtZXN3aXRjaGVyLnJvbWFpbnZpZ2llci5mciIsCiAgInV1aWQiOiAibmlnaHR0aGVtZXN3aXRjaGVyQHJvbWFpbnZpZ2llci5mciIsCiAgInZlcnNpb24iOiA2Nwp9"}}}
 , {"uuid": "binaryclock@vancha.march", "name": "binaryclock", "pname": "binaryclock", "description": "adds a binary clock to the gnome bar", "link": "https://extensions.gnome.org/extension/2284/binaryclock/", "shell_version_map": {"38": {"version": "6", "sha256": "1bvzlqfhwlk1sh9q3538yipjwzgndd4wnn2l8wc3sshb93ggvpg6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImFkZHMgYSBiaW5hcnkgY2xvY2sgdG8gdGhlIGdub21lIGJhciIsCiAgIm5hbWUiOiAiYmluYXJ5Y2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzQiLAogICAgIjMuMzIuMiIsCiAgICAiMy4zOCIsCiAgICAiMy4zNi43IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ZhbmNoYS9nbm9tZVNoZWxsQmluYXJ5Q2xvY2svIiwKICAidXVpZCI6ICJiaW5hcnljbG9ja0B2YW5jaGEubWFyY2giLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "6", "sha256": "1bvzlqfhwlk1sh9q3538yipjwzgndd4wnn2l8wc3sshb93ggvpg6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImFkZHMgYSBiaW5hcnkgY2xvY2sgdG8gdGhlIGdub21lIGJhciIsCiAgIm5hbWUiOiAiYmluYXJ5Y2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzQiLAogICAgIjMuMzIuMiIsCiAgICAiMy4zOCIsCiAgICAiMy4zNi43IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ZhbmNoYS9nbm9tZVNoZWxsQmluYXJ5Q2xvY2svIiwKICAidXVpZCI6ICJiaW5hcnljbG9ja0B2YW5jaGEubWFyY2giLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "lgbutton@glerro.gnome.gitlab.io", "name": "Looking Glass Button", "pname": "looking-glass-button", "description": "Toggle the Looking Glass visibility by clicking on a panel icon.\n\nAnd from version 4 left clicking on the icon show a menu with new features like Restart Gnome Shell (not available on Wayland), Reload Theme, Open Extension Folder and Open Theme Folder (the last two require that xdg-open is installed).\n\nVersion 4 also drop the compatibility with Gnome Shell 3.30.", "link": "https://extensions.gnome.org/extension/2296/looking-glass-button/", "shell_version_map": {"38": {"version": "10", "sha256": "0wj4xg6mz7f7lgknzpss3dma8y8k3w4m5a6zld1ymlpidz0k5i2j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSB0aGUgTG9va2luZyBHbGFzcyB2aXNpYmlsaXR5IGJ5IGNsaWNraW5nIG9uIGEgcGFuZWwgaWNvbi5cblxuQW5kIGZyb20gdmVyc2lvbiA0IGxlZnQgY2xpY2tpbmcgb24gdGhlIGljb24gc2hvdyBhIG1lbnUgd2l0aCBuZXcgZmVhdHVyZXMgbGlrZSBSZXN0YXJ0IEdub21lIFNoZWxsIChub3QgYXZhaWxhYmxlIG9uIFdheWxhbmQpLCBSZWxvYWQgVGhlbWUsIE9wZW4gRXh0ZW5zaW9uIEZvbGRlciBhbmQgT3BlbiBUaGVtZSBGb2xkZXIgKHRoZSBsYXN0IHR3byByZXF1aXJlIHRoYXQgeGRnLW9wZW4gaXMgaW5zdGFsbGVkKS5cblxuVmVyc2lvbiA0IGFsc28gZHJvcCB0aGUgY29tcGF0aWJpbGl0eSB3aXRoIEdub21lIFNoZWxsIDMuMzAuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxnYnV0dG9uIiwKICAibmFtZSI6ICJMb29raW5nIEdsYXNzIEJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9nbGVycm8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxnYnV0dG9uIiwKICAidXVpZCI6ICJsZ2J1dHRvbkBnbGVycm8uZ25vbWUuZ2l0bGFiLmlvIiwKICAidmVyc2lvbiI6IDEwCn0="}, "40": {"version": "10", "sha256": "0wj4xg6mz7f7lgknzpss3dma8y8k3w4m5a6zld1ymlpidz0k5i2j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSB0aGUgTG9va2luZyBHbGFzcyB2aXNpYmlsaXR5IGJ5IGNsaWNraW5nIG9uIGEgcGFuZWwgaWNvbi5cblxuQW5kIGZyb20gdmVyc2lvbiA0IGxlZnQgY2xpY2tpbmcgb24gdGhlIGljb24gc2hvdyBhIG1lbnUgd2l0aCBuZXcgZmVhdHVyZXMgbGlrZSBSZXN0YXJ0IEdub21lIFNoZWxsIChub3QgYXZhaWxhYmxlIG9uIFdheWxhbmQpLCBSZWxvYWQgVGhlbWUsIE9wZW4gRXh0ZW5zaW9uIEZvbGRlciBhbmQgT3BlbiBUaGVtZSBGb2xkZXIgKHRoZSBsYXN0IHR3byByZXF1aXJlIHRoYXQgeGRnLW9wZW4gaXMgaW5zdGFsbGVkKS5cblxuVmVyc2lvbiA0IGFsc28gZHJvcCB0aGUgY29tcGF0aWJpbGl0eSB3aXRoIEdub21lIFNoZWxsIDMuMzAuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxnYnV0dG9uIiwKICAibmFtZSI6ICJMb29raW5nIEdsYXNzIEJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9nbGVycm8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxnYnV0dG9uIiwKICAidXVpZCI6ICJsZ2J1dHRvbkBnbGVycm8uZ25vbWUuZ2l0bGFiLmlvIiwKICAidmVyc2lvbiI6IDEwCn0="}, "41": {"version": "10", "sha256": "0wj4xg6mz7f7lgknzpss3dma8y8k3w4m5a6zld1ymlpidz0k5i2j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSB0aGUgTG9va2luZyBHbGFzcyB2aXNpYmlsaXR5IGJ5IGNsaWNraW5nIG9uIGEgcGFuZWwgaWNvbi5cblxuQW5kIGZyb20gdmVyc2lvbiA0IGxlZnQgY2xpY2tpbmcgb24gdGhlIGljb24gc2hvdyBhIG1lbnUgd2l0aCBuZXcgZmVhdHVyZXMgbGlrZSBSZXN0YXJ0IEdub21lIFNoZWxsIChub3QgYXZhaWxhYmxlIG9uIFdheWxhbmQpLCBSZWxvYWQgVGhlbWUsIE9wZW4gRXh0ZW5zaW9uIEZvbGRlciBhbmQgT3BlbiBUaGVtZSBGb2xkZXIgKHRoZSBsYXN0IHR3byByZXF1aXJlIHRoYXQgeGRnLW9wZW4gaXMgaW5zdGFsbGVkKS5cblxuVmVyc2lvbiA0IGFsc28gZHJvcCB0aGUgY29tcGF0aWJpbGl0eSB3aXRoIEdub21lIFNoZWxsIDMuMzAuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxnYnV0dG9uIiwKICAibmFtZSI6ICJMb29raW5nIEdsYXNzIEJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9nbGVycm8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxnYnV0dG9uIiwKICAidXVpZCI6ICJsZ2J1dHRvbkBnbGVycm8uZ25vbWUuZ2l0bGFiLmlvIiwKICAidmVyc2lvbiI6IDEwCn0="}, "42": {"version": "10", "sha256": "0wj4xg6mz7f7lgknzpss3dma8y8k3w4m5a6zld1ymlpidz0k5i2j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSB0aGUgTG9va2luZyBHbGFzcyB2aXNpYmlsaXR5IGJ5IGNsaWNraW5nIG9uIGEgcGFuZWwgaWNvbi5cblxuQW5kIGZyb20gdmVyc2lvbiA0IGxlZnQgY2xpY2tpbmcgb24gdGhlIGljb24gc2hvdyBhIG1lbnUgd2l0aCBuZXcgZmVhdHVyZXMgbGlrZSBSZXN0YXJ0IEdub21lIFNoZWxsIChub3QgYXZhaWxhYmxlIG9uIFdheWxhbmQpLCBSZWxvYWQgVGhlbWUsIE9wZW4gRXh0ZW5zaW9uIEZvbGRlciBhbmQgT3BlbiBUaGVtZSBGb2xkZXIgKHRoZSBsYXN0IHR3byByZXF1aXJlIHRoYXQgeGRnLW9wZW4gaXMgaW5zdGFsbGVkKS5cblxuVmVyc2lvbiA0IGFsc28gZHJvcCB0aGUgY29tcGF0aWJpbGl0eSB3aXRoIEdub21lIFNoZWxsIDMuMzAuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxnYnV0dG9uIiwKICAibmFtZSI6ICJMb29raW5nIEdsYXNzIEJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9nbGVycm8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxnYnV0dG9uIiwKICAidXVpZCI6ICJsZ2J1dHRvbkBnbGVycm8uZ25vbWUuZ2l0bGFiLmlvIiwKICAidmVyc2lvbiI6IDEwCn0="}, "43": {"version": "10", "sha256": "0wj4xg6mz7f7lgknzpss3dma8y8k3w4m5a6zld1ymlpidz0k5i2j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSB0aGUgTG9va2luZyBHbGFzcyB2aXNpYmlsaXR5IGJ5IGNsaWNraW5nIG9uIGEgcGFuZWwgaWNvbi5cblxuQW5kIGZyb20gdmVyc2lvbiA0IGxlZnQgY2xpY2tpbmcgb24gdGhlIGljb24gc2hvdyBhIG1lbnUgd2l0aCBuZXcgZmVhdHVyZXMgbGlrZSBSZXN0YXJ0IEdub21lIFNoZWxsIChub3QgYXZhaWxhYmxlIG9uIFdheWxhbmQpLCBSZWxvYWQgVGhlbWUsIE9wZW4gRXh0ZW5zaW9uIEZvbGRlciBhbmQgT3BlbiBUaGVtZSBGb2xkZXIgKHRoZSBsYXN0IHR3byByZXF1aXJlIHRoYXQgeGRnLW9wZW4gaXMgaW5zdGFsbGVkKS5cblxuVmVyc2lvbiA0IGFsc28gZHJvcCB0aGUgY29tcGF0aWJpbGl0eSB3aXRoIEdub21lIFNoZWxsIDMuMzAuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxnYnV0dG9uIiwKICAibmFtZSI6ICJMb29raW5nIEdsYXNzIEJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9nbGVycm8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxnYnV0dG9uIiwKICAidXVpZCI6ICJsZ2J1dHRvbkBnbGVycm8uZ25vbWUuZ2l0bGFiLmlvIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
-, {"uuid": "tp_wattmeter@gistart", "name": "tp_wattmeter", "pname": "tp_wattmeter", "description": "Shows battery power consumption of ThinkPad laptops. Now configurable!", "link": "https://extensions.gnome.org/extension/2308/tp_wattmeter/", "shell_version_map": {"40": {"version": "10", "sha256": "1zjll1qp126vz4n949bvyamllvgzp658lf9br5pj0vfhxngqm47b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGJhdHRlcnkgcG93ZXIgY29uc3VtcHRpb24gb2YgVGhpbmtQYWQgbGFwdG9wcy4gTm93IGNvbmZpZ3VyYWJsZSEiLAogICJuYW1lIjogInRwX3dhdHRtZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dpc3RhcnQvdHBfd2F0dG1ldGVyIiwKICAidXVpZCI6ICJ0cF93YXR0bWV0ZXJAZ2lzdGFydCIsCiAgInZlcnNpb24iOiAxMAp9"}, "41": {"version": "10", "sha256": "1zjll1qp126vz4n949bvyamllvgzp658lf9br5pj0vfhxngqm47b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGJhdHRlcnkgcG93ZXIgY29uc3VtcHRpb24gb2YgVGhpbmtQYWQgbGFwdG9wcy4gTm93IGNvbmZpZ3VyYWJsZSEiLAogICJuYW1lIjogInRwX3dhdHRtZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dpc3RhcnQvdHBfd2F0dG1ldGVyIiwKICAidXVpZCI6ICJ0cF93YXR0bWV0ZXJAZ2lzdGFydCIsCiAgInZlcnNpb24iOiAxMAp9"}, "42": {"version": "10", "sha256": "1zjll1qp126vz4n949bvyamllvgzp658lf9br5pj0vfhxngqm47b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGJhdHRlcnkgcG93ZXIgY29uc3VtcHRpb24gb2YgVGhpbmtQYWQgbGFwdG9wcy4gTm93IGNvbmZpZ3VyYWJsZSEiLAogICJuYW1lIjogInRwX3dhdHRtZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dpc3RhcnQvdHBfd2F0dG1ldGVyIiwKICAidXVpZCI6ICJ0cF93YXR0bWV0ZXJAZ2lzdGFydCIsCiAgInZlcnNpb24iOiAxMAp9"}}}
+, {"uuid": "tp_wattmeter@gistart", "name": "tp_wattmeter", "pname": "tp_wattmeter", "description": "Shows battery power consumption of ThinkPad laptops. Now configurable!", "link": "https://extensions.gnome.org/extension/2308/tp_wattmeter/", "shell_version_map": {"40": {"version": "11", "sha256": "1sw6mq3fgzv1jl33yf08rgd1fzqb17c5qvq41gq5b6kgn1cs36ji", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGJhdHRlcnkgcG93ZXIgY29uc3VtcHRpb24gb2YgVGhpbmtQYWQgbGFwdG9wcy4gTm93IGNvbmZpZ3VyYWJsZSEiLAogICJuYW1lIjogInRwX3dhdHRtZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dpc3RhcnQvdHBfd2F0dG1ldGVyIiwKICAidXVpZCI6ICJ0cF93YXR0bWV0ZXJAZ2lzdGFydCIsCiAgInZlcnNpb24iOiAxMQp9"}, "41": {"version": "11", "sha256": "1sw6mq3fgzv1jl33yf08rgd1fzqb17c5qvq41gq5b6kgn1cs36ji", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGJhdHRlcnkgcG93ZXIgY29uc3VtcHRpb24gb2YgVGhpbmtQYWQgbGFwdG9wcy4gTm93IGNvbmZpZ3VyYWJsZSEiLAogICJuYW1lIjogInRwX3dhdHRtZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dpc3RhcnQvdHBfd2F0dG1ldGVyIiwKICAidXVpZCI6ICJ0cF93YXR0bWV0ZXJAZ2lzdGFydCIsCiAgInZlcnNpb24iOiAxMQp9"}, "42": {"version": "11", "sha256": "1sw6mq3fgzv1jl33yf08rgd1fzqb17c5qvq41gq5b6kgn1cs36ji", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGJhdHRlcnkgcG93ZXIgY29uc3VtcHRpb24gb2YgVGhpbmtQYWQgbGFwdG9wcy4gTm93IGNvbmZpZ3VyYWJsZSEiLAogICJuYW1lIjogInRwX3dhdHRtZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dpc3RhcnQvdHBfd2F0dG1ldGVyIiwKICAidXVpZCI6ICJ0cF93YXR0bWV0ZXJAZ2lzdGFydCIsCiAgInZlcnNpb24iOiAxMQp9"}}}
 , {"uuid": "Denon_AVR_controler@sylter.fr", "name": "Denon AVR controler", "pname": "denon-avr-controler", "description": "Denon AVR controler", "link": "https://extensions.gnome.org/extension/2371/denon-avr-controler/", "shell_version_map": {"38": {"version": "4", "sha256": "0hi2knfigh23r7rjzsq8j6ls953hin038ia5v0ll6cnxzj42f91q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRlbm9uIEFWUiBjb250cm9sZXIiLAogICJuYW1lIjogIkRlbm9uIEFWUiBjb250cm9sZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZnJhbWFnaXQub3JnL3N5bHRlci9kZW5vbi1hdnItY29udHJvbGVyIiwKICAidXVpZCI6ICJEZW5vbl9BVlJfY29udHJvbGVyQHN5bHRlci5mciIsCiAgInZlcnNpb24iOiA0Cn0="}, "42": {"version": "6", "sha256": "1rxb8r51l0mmvlam6f2zm34b98sb6w30v93lxx47sfgj42wln7j1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRlbm9uIEFWUiBjb250cm9sZXIiLAogICJuYW1lIjogIkRlbm9uIEFWUiBjb250cm9sZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9mcmFtYWdpdC5vcmcvc3lsdGVyL2Rlbm9uLWF2ci1jb250cm9sZXIiLAogICJ1dWlkIjogIkRlbm9uX0FWUl9jb250cm9sZXJAc3lsdGVyLmZyIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "43": {"version": "6", "sha256": "1rxb8r51l0mmvlam6f2zm34b98sb6w30v93lxx47sfgj42wln7j1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRlbm9uIEFWUiBjb250cm9sZXIiLAogICJuYW1lIjogIkRlbm9uIEFWUiBjb250cm9sZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9mcmFtYWdpdC5vcmcvc3lsdGVyL2Rlbm9uLWF2ci1jb250cm9sZXIiLAogICJ1dWlkIjogIkRlbm9uX0FWUl9jb250cm9sZXJAc3lsdGVyLmZyIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
 , {"uuid": "hide-universal-access@akiirui.github.io", "name": "Hide Universal Access", "pname": "hide-universal-access", "description": "Hide Universal Access icon from the status bar", "link": "https://extensions.gnome.org/extension/2398/hide-universal-access/", "shell_version_map": {"38": {"version": "12", "sha256": "0mnbyrap82dn4zczjnz3dawsm6z6y73h9qj6cxz1m0nsc1c5z5ym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyBpY29uIGZyb20gdGhlIHN0YXR1cyBiYXIiLAogICJuYW1lIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ha2lpcnVpL2hpZGUtdW5pdmVyc2FsLWFjY2VzcyIsCiAgInV1aWQiOiAiaGlkZS11bml2ZXJzYWwtYWNjZXNzQGFraWlydWkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDEyCn0="}, "40": {"version": "12", "sha256": "0mnbyrap82dn4zczjnz3dawsm6z6y73h9qj6cxz1m0nsc1c5z5ym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyBpY29uIGZyb20gdGhlIHN0YXR1cyBiYXIiLAogICJuYW1lIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ha2lpcnVpL2hpZGUtdW5pdmVyc2FsLWFjY2VzcyIsCiAgInV1aWQiOiAiaGlkZS11bml2ZXJzYWwtYWNjZXNzQGFraWlydWkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDEyCn0="}, "41": {"version": "12", "sha256": "0mnbyrap82dn4zczjnz3dawsm6z6y73h9qj6cxz1m0nsc1c5z5ym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyBpY29uIGZyb20gdGhlIHN0YXR1cyBiYXIiLAogICJuYW1lIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ha2lpcnVpL2hpZGUtdW5pdmVyc2FsLWFjY2VzcyIsCiAgInV1aWQiOiAiaGlkZS11bml2ZXJzYWwtYWNjZXNzQGFraWlydWkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDEyCn0="}, "42": {"version": "12", "sha256": "0mnbyrap82dn4zczjnz3dawsm6z6y73h9qj6cxz1m0nsc1c5z5ym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyBpY29uIGZyb20gdGhlIHN0YXR1cyBiYXIiLAogICJuYW1lIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ha2lpcnVpL2hpZGUtdW5pdmVyc2FsLWFjY2VzcyIsCiAgInV1aWQiOiAiaGlkZS11bml2ZXJzYWwtYWNjZXNzQGFraWlydWkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDEyCn0="}, "43": {"version": "12", "sha256": "0mnbyrap82dn4zczjnz3dawsm6z6y73h9qj6cxz1m0nsc1c5z5ym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyBpY29uIGZyb20gdGhlIHN0YXR1cyBiYXIiLAogICJuYW1lIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ha2lpcnVpL2hpZGUtdW5pdmVyc2FsLWFjY2VzcyIsCiAgInV1aWQiOiAiaGlkZS11bml2ZXJzYWwtYWNjZXNzQGFraWlydWkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDEyCn0="}}}
 , {"uuid": "roundrobintaborder@scottworley.com", "name": "Round Robin Tab Order", "pname": "round-robin-tab-order", "description": "Window switch order becomes round-robin instead of most-recently-used", "link": "https://extensions.gnome.org/extension/2446/round-robin-tab-order/", "shell_version_map": {"40": {"version": "3", "sha256": "0p2qfv6i43pi0hjsyz8xzxkxijr06b0d20q618y8gfj4ar82glv7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldpbmRvdyBzd2l0Y2ggb3JkZXIgYmVjb21lcyByb3VuZC1yb2JpbiBpbnN0ZWFkIG9mIG1vc3QtcmVjZW50bHktdXNlZCIsCiAgIm5hbWUiOiAiUm91bmQgUm9iaW4gVGFiIE9yZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMyIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL2NodWNrL3JvdW5kLXJvYmluLXRhYi1vcmRlciIsCiAgInV1aWQiOiAicm91bmRyb2JpbnRhYm9yZGVyQHNjb3R0d29ybGV5LmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}}}
@@ -292,7 +292,7 @@
 , {"uuid": "gnome-trash@gnome-trash.b00f.gitlab.com", "name": "Gnome Trash - UNMAINTAINED", "pname": "gnome-trash", "description": "MOVED HERE:\n\nhttps://github.com/b00f/gnome-trash", "link": "https://extensions.gnome.org/extension/2773/gnome-trash/", "shell_version_map": {"38": {"version": "13", "sha256": "1z7da74nvl4wvy6ckv55xkl3sc5qzcv6lz5k6bdfa0xcshifhl6h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1PVkVEIEhFUkU6XG5cbmh0dHBzOi8vZ2l0aHViLmNvbS9iMDBmL2dub21lLXRyYXNoIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtdHJhc2giLAogICJuYW1lIjogIkdub21lIFRyYXNoIC0gVU5NQUlOVEFJTkVEIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYjAwZi9nbm9tZS10cmFzaCIsCiAgInV1aWQiOiAiZ25vbWUtdHJhc2hAZ25vbWUtdHJhc2guYjAwZi5naXRsYWIuY29tIiwKICAidmVyc2lvbiI6IDEzCn0="}}}
 , {"uuid": "customgestures@raushankumar27.github.com", "name": "Custom 3 Finger Gestures", "pname": "custom-3-finger-gestures", "description": "3 Finger touchpad gestures into gnome-shell", "link": "https://extensions.gnome.org/extension/2781/custom-3-finger-gestures/", "shell_version_map": {"38": {"version": "7", "sha256": "1a51rlf5fjlzlm2y3cv1ncf4glqa48rkpi0z1b8hd5m1fzgdx6m9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIjMgRmluZ2VyIHRvdWNocGFkIGdlc3R1cmVzIGludG8gZ25vbWUtc2hlbGwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjdXN0b21nZXN0dXJlcyIsCiAgIm5hbWUiOiAiQ3VzdG9tIDMgRmluZ2VyIEdlc3R1cmVzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmN1c3RvbWdlc3R1cmVzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmF1c2hhbmt1bWFyMjcvY3VzdG9tZ2VzdHVyZSIsCiAgInV1aWQiOiAiY3VzdG9tZ2VzdHVyZXNAcmF1c2hhbmt1bWFyMjcuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA3Cn0="}}}
 , {"uuid": "overview-improved@human.experience", "name": "Overview Improved", "pname": "overview-improved", "description": "Improved, more Unity like overview\n\n* Dash-To-Dock or Ubuntu Dock integration creates Unity-like experience showing windows of specific type\n* Windows search in overview\nConfigurable keybinding (Super+w) to trigger current window overlay\n* Clicking empty space in overview closes\n* Do not show overview when showing application on multiple monitors\n* Multi Monitors Add-On Overview integration\n\nCaveat: may clash with other extensions that modify overview experience", "link": "https://extensions.gnome.org/extension/2802/overview-improved/", "shell_version_map": {"38": {"version": "8", "sha256": "0pzk6kzhbm15rmd540gv2sc0yqbiv31lil4ra3k5k7cpnr9ipsy6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkltcHJvdmVkLCBtb3JlIFVuaXR5IGxpa2Ugb3ZlcnZpZXdcblxuKiBEYXNoLVRvLURvY2sgb3IgVWJ1bnR1IERvY2sgaW50ZWdyYXRpb24gY3JlYXRlcyBVbml0eS1saWtlIGV4cGVyaWVuY2Ugc2hvd2luZyB3aW5kb3dzIG9mIHNwZWNpZmljIHR5cGVcbiogV2luZG93cyBzZWFyY2ggaW4gb3ZlcnZpZXdcbkNvbmZpZ3VyYWJsZSBrZXliaW5kaW5nIChTdXBlcit3KSB0byB0cmlnZ2VyIGN1cnJlbnQgd2luZG93IG92ZXJsYXlcbiogQ2xpY2tpbmcgZW1wdHkgc3BhY2UgaW4gb3ZlcnZpZXcgY2xvc2VzXG4qIERvIG5vdCBzaG93IG92ZXJ2aWV3IHdoZW4gc2hvd2luZyBhcHBsaWNhdGlvbiBvbiBtdWx0aXBsZSBtb25pdG9yc1xuKiBNdWx0aSBNb25pdG9ycyBBZGQtT24gT3ZlcnZpZXcgaW50ZWdyYXRpb25cblxuQ2F2ZWF0OiBtYXkgY2xhc2ggd2l0aCBvdGhlciBleHRlbnNpb25zIHRoYXQgbW9kaWZ5IG92ZXJ2aWV3IGV4cGVyaWVuY2UiLAogICJuYW1lIjogIk92ZXJ2aWV3IEltcHJvdmVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm92ZXJ2aWV3LWltcHJvdmVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2NvZGViZXJnLm9yZy9odW1hbi5leHBlcmllbmNlL2dub21lLXNoZWxsLW92ZXJ2aWV3LWltcHJvdmVkIiwKICAidXVpZCI6ICJvdmVydmlldy1pbXByb3ZlZEBodW1hbi5leHBlcmllbmNlIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
-, {"uuid": "brightnesspanelmenuindicator@do.sch.dev.gmail.com", "name": "Brightness Panel Menu Indicator", "pname": "brightness-panel-menu-indicator", "description": "If a backlight device is available, this extension shows a brightness indicator on panel menu, that allows changing brightness through scrolling on it. Useful, when using ddcci-driver-linux on a desktop PC without native keyboard buttons to change brightness.", "link": "https://extensions.gnome.org/extension/2808/brightness-panel-menu-indicator/", "shell_version_map": {"38": {"version": "5", "sha256": "1ppgcx1p7qn137w85iz440ng3vh2925dds66qyxvsmm818lhy6dk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklmIGEgYmFja2xpZ2h0IGRldmljZSBpcyBhdmFpbGFibGUsIHRoaXMgZXh0ZW5zaW9uIHNob3dzIGEgYnJpZ2h0bmVzcyBpbmRpY2F0b3Igb24gcGFuZWwgbWVudSwgdGhhdCBhbGxvd3MgY2hhbmdpbmcgYnJpZ2h0bmVzcyB0aHJvdWdoIHNjcm9sbGluZyBvbiBpdC4gVXNlZnVsLCB3aGVuIHVzaW5nIGRkY2NpLWRyaXZlci1saW51eCBvbiBhIGRlc2t0b3AgUEMgd2l0aG91dCBuYXRpdmUga2V5Ym9hcmQgYnV0dG9ucyB0byBjaGFuZ2UgYnJpZ2h0bmVzcy4iLAogICJuYW1lIjogIkJyaWdodG5lc3MgUGFuZWwgTWVudSBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9kby1zY2gvZ25vbWUtc2hlbGwtYnJpZ2h0bmVzcy1wYW5lbC1tZW51LWluZGljYXRvciIsCiAgInV1aWQiOiAiYnJpZ2h0bmVzc3BhbmVsbWVudWluZGljYXRvckBkby5zY2guZGV2LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}, "40": {"version": "5", "sha256": "1ppgcx1p7qn137w85iz440ng3vh2925dds66qyxvsmm818lhy6dk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklmIGEgYmFja2xpZ2h0IGRldmljZSBpcyBhdmFpbGFibGUsIHRoaXMgZXh0ZW5zaW9uIHNob3dzIGEgYnJpZ2h0bmVzcyBpbmRpY2F0b3Igb24gcGFuZWwgbWVudSwgdGhhdCBhbGxvd3MgY2hhbmdpbmcgYnJpZ2h0bmVzcyB0aHJvdWdoIHNjcm9sbGluZyBvbiBpdC4gVXNlZnVsLCB3aGVuIHVzaW5nIGRkY2NpLWRyaXZlci1saW51eCBvbiBhIGRlc2t0b3AgUEMgd2l0aG91dCBuYXRpdmUga2V5Ym9hcmQgYnV0dG9ucyB0byBjaGFuZ2UgYnJpZ2h0bmVzcy4iLAogICJuYW1lIjogIkJyaWdodG5lc3MgUGFuZWwgTWVudSBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9kby1zY2gvZ25vbWUtc2hlbGwtYnJpZ2h0bmVzcy1wYW5lbC1tZW51LWluZGljYXRvciIsCiAgInV1aWQiOiAiYnJpZ2h0bmVzc3BhbmVsbWVudWluZGljYXRvckBkby5zY2guZGV2LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}, "41": {"version": "5", "sha256": "1ppgcx1p7qn137w85iz440ng3vh2925dds66qyxvsmm818lhy6dk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklmIGEgYmFja2xpZ2h0IGRldmljZSBpcyBhdmFpbGFibGUsIHRoaXMgZXh0ZW5zaW9uIHNob3dzIGEgYnJpZ2h0bmVzcyBpbmRpY2F0b3Igb24gcGFuZWwgbWVudSwgdGhhdCBhbGxvd3MgY2hhbmdpbmcgYnJpZ2h0bmVzcyB0aHJvdWdoIHNjcm9sbGluZyBvbiBpdC4gVXNlZnVsLCB3aGVuIHVzaW5nIGRkY2NpLWRyaXZlci1saW51eCBvbiBhIGRlc2t0b3AgUEMgd2l0aG91dCBuYXRpdmUga2V5Ym9hcmQgYnV0dG9ucyB0byBjaGFuZ2UgYnJpZ2h0bmVzcy4iLAogICJuYW1lIjogIkJyaWdodG5lc3MgUGFuZWwgTWVudSBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9kby1zY2gvZ25vbWUtc2hlbGwtYnJpZ2h0bmVzcy1wYW5lbC1tZW51LWluZGljYXRvciIsCiAgInV1aWQiOiAiYnJpZ2h0bmVzc3BhbmVsbWVudWluZGljYXRvckBkby5zY2guZGV2LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}, "42": {"version": "5", "sha256": "1ppgcx1p7qn137w85iz440ng3vh2925dds66qyxvsmm818lhy6dk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklmIGEgYmFja2xpZ2h0IGRldmljZSBpcyBhdmFpbGFibGUsIHRoaXMgZXh0ZW5zaW9uIHNob3dzIGEgYnJpZ2h0bmVzcyBpbmRpY2F0b3Igb24gcGFuZWwgbWVudSwgdGhhdCBhbGxvd3MgY2hhbmdpbmcgYnJpZ2h0bmVzcyB0aHJvdWdoIHNjcm9sbGluZyBvbiBpdC4gVXNlZnVsLCB3aGVuIHVzaW5nIGRkY2NpLWRyaXZlci1saW51eCBvbiBhIGRlc2t0b3AgUEMgd2l0aG91dCBuYXRpdmUga2V5Ym9hcmQgYnV0dG9ucyB0byBjaGFuZ2UgYnJpZ2h0bmVzcy4iLAogICJuYW1lIjogIkJyaWdodG5lc3MgUGFuZWwgTWVudSBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9kby1zY2gvZ25vbWUtc2hlbGwtYnJpZ2h0bmVzcy1wYW5lbC1tZW51LWluZGljYXRvciIsCiAgInV1aWQiOiAiYnJpZ2h0bmVzc3BhbmVsbWVudWluZGljYXRvckBkby5zY2guZGV2LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}}}
+, {"uuid": "brightnesspanelmenuindicator@do.sch.dev.gmail.com", "name": "Brightness Panel Menu Indicator", "pname": "brightness-panel-menu-indicator", "description": "If a backlight device is available, this extension shows a brightness indicator on panel menu, that allows changing brightness through scrolling on it. Useful, when using ddcci-driver-linux on a desktop PC without native keyboard buttons to change brightness.", "link": "https://extensions.gnome.org/extension/2808/brightness-panel-menu-indicator/", "shell_version_map": {"38": {"version": "7", "sha256": "0xycwf9zks6kcwxrrn5rk1sn0km7zvzxzzp6bfag6qnibkgliwsn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklmIGEgYmFja2xpZ2h0IGRldmljZSBpcyBhdmFpbGFibGUsIHRoaXMgZXh0ZW5zaW9uIHNob3dzIGEgYnJpZ2h0bmVzcyBpbmRpY2F0b3Igb24gcGFuZWwgbWVudSwgdGhhdCBhbGxvd3MgY2hhbmdpbmcgYnJpZ2h0bmVzcyB0aHJvdWdoIHNjcm9sbGluZyBvbiBpdC4gVXNlZnVsLCB3aGVuIHVzaW5nIGRkY2NpLWRyaXZlci1saW51eCBvbiBhIGRlc2t0b3AgUEMgd2l0aG91dCBuYXRpdmUga2V5Ym9hcmQgYnV0dG9ucyB0byBjaGFuZ2UgYnJpZ2h0bmVzcy4iLAogICJuYW1lIjogIkJyaWdodG5lc3MgUGFuZWwgTWVudSBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZG8tc2NoL2dub21lLXNoZWxsLWJyaWdodG5lc3MtcGFuZWwtbWVudS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImJyaWdodG5lc3NwYW5lbG1lbnVpbmRpY2F0b3JAZG8uc2NoLmRldi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}, "40": {"version": "7", "sha256": "0xycwf9zks6kcwxrrn5rk1sn0km7zvzxzzp6bfag6qnibkgliwsn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklmIGEgYmFja2xpZ2h0IGRldmljZSBpcyBhdmFpbGFibGUsIHRoaXMgZXh0ZW5zaW9uIHNob3dzIGEgYnJpZ2h0bmVzcyBpbmRpY2F0b3Igb24gcGFuZWwgbWVudSwgdGhhdCBhbGxvd3MgY2hhbmdpbmcgYnJpZ2h0bmVzcyB0aHJvdWdoIHNjcm9sbGluZyBvbiBpdC4gVXNlZnVsLCB3aGVuIHVzaW5nIGRkY2NpLWRyaXZlci1saW51eCBvbiBhIGRlc2t0b3AgUEMgd2l0aG91dCBuYXRpdmUga2V5Ym9hcmQgYnV0dG9ucyB0byBjaGFuZ2UgYnJpZ2h0bmVzcy4iLAogICJuYW1lIjogIkJyaWdodG5lc3MgUGFuZWwgTWVudSBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZG8tc2NoL2dub21lLXNoZWxsLWJyaWdodG5lc3MtcGFuZWwtbWVudS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImJyaWdodG5lc3NwYW5lbG1lbnVpbmRpY2F0b3JAZG8uc2NoLmRldi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}, "41": {"version": "7", "sha256": "0xycwf9zks6kcwxrrn5rk1sn0km7zvzxzzp6bfag6qnibkgliwsn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklmIGEgYmFja2xpZ2h0IGRldmljZSBpcyBhdmFpbGFibGUsIHRoaXMgZXh0ZW5zaW9uIHNob3dzIGEgYnJpZ2h0bmVzcyBpbmRpY2F0b3Igb24gcGFuZWwgbWVudSwgdGhhdCBhbGxvd3MgY2hhbmdpbmcgYnJpZ2h0bmVzcyB0aHJvdWdoIHNjcm9sbGluZyBvbiBpdC4gVXNlZnVsLCB3aGVuIHVzaW5nIGRkY2NpLWRyaXZlci1saW51eCBvbiBhIGRlc2t0b3AgUEMgd2l0aG91dCBuYXRpdmUga2V5Ym9hcmQgYnV0dG9ucyB0byBjaGFuZ2UgYnJpZ2h0bmVzcy4iLAogICJuYW1lIjogIkJyaWdodG5lc3MgUGFuZWwgTWVudSBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZG8tc2NoL2dub21lLXNoZWxsLWJyaWdodG5lc3MtcGFuZWwtbWVudS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImJyaWdodG5lc3NwYW5lbG1lbnVpbmRpY2F0b3JAZG8uc2NoLmRldi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}, "42": {"version": "7", "sha256": "0xycwf9zks6kcwxrrn5rk1sn0km7zvzxzzp6bfag6qnibkgliwsn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklmIGEgYmFja2xpZ2h0IGRldmljZSBpcyBhdmFpbGFibGUsIHRoaXMgZXh0ZW5zaW9uIHNob3dzIGEgYnJpZ2h0bmVzcyBpbmRpY2F0b3Igb24gcGFuZWwgbWVudSwgdGhhdCBhbGxvd3MgY2hhbmdpbmcgYnJpZ2h0bmVzcyB0aHJvdWdoIHNjcm9sbGluZyBvbiBpdC4gVXNlZnVsLCB3aGVuIHVzaW5nIGRkY2NpLWRyaXZlci1saW51eCBvbiBhIGRlc2t0b3AgUEMgd2l0aG91dCBuYXRpdmUga2V5Ym9hcmQgYnV0dG9ucyB0byBjaGFuZ2UgYnJpZ2h0bmVzcy4iLAogICJuYW1lIjogIkJyaWdodG5lc3MgUGFuZWwgTWVudSBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZG8tc2NoL2dub21lLXNoZWxsLWJyaWdodG5lc3MtcGFuZWwtbWVudS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImJyaWdodG5lc3NwYW5lbG1lbnVpbmRpY2F0b3JAZG8uc2NoLmRldi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}, "43": {"version": "7", "sha256": "0xycwf9zks6kcwxrrn5rk1sn0km7zvzxzzp6bfag6qnibkgliwsn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklmIGEgYmFja2xpZ2h0IGRldmljZSBpcyBhdmFpbGFibGUsIHRoaXMgZXh0ZW5zaW9uIHNob3dzIGEgYnJpZ2h0bmVzcyBpbmRpY2F0b3Igb24gcGFuZWwgbWVudSwgdGhhdCBhbGxvd3MgY2hhbmdpbmcgYnJpZ2h0bmVzcyB0aHJvdWdoIHNjcm9sbGluZyBvbiBpdC4gVXNlZnVsLCB3aGVuIHVzaW5nIGRkY2NpLWRyaXZlci1saW51eCBvbiBhIGRlc2t0b3AgUEMgd2l0aG91dCBuYXRpdmUga2V5Ym9hcmQgYnV0dG9ucyB0byBjaGFuZ2UgYnJpZ2h0bmVzcy4iLAogICJuYW1lIjogIkJyaWdodG5lc3MgUGFuZWwgTWVudSBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZG8tc2NoL2dub21lLXNoZWxsLWJyaWdodG5lc3MtcGFuZWwtbWVudS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImJyaWdodG5lc3NwYW5lbG1lbnVpbmRpY2F0b3JAZG8uc2NoLmRldi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}}}
 , {"uuid": "crypto@alipirpiran.github", "name": "Crypto Price Tracker", "pname": "crypto-price-tracker", "description": "Simple extension to track price of Crypto Currencies\n\nadd coins by Binance symbols, for example: \"BTC/USDT\"\ncomplete list on binance: https://www.binance.com/indexSpa.html\n\n** if it faced error after update:\n**Restart Gnome-shell. (ALT+F2, r, Enter)", "link": "https://extensions.gnome.org/extension/2817/crypto-price-tracker/", "shell_version_map": {"40": {"version": "21", "sha256": "19lylcxw1py36z1bpq4sx3zbjpamsz366fpf2h8dazn2z6k5p7pq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBleHRlbnNpb24gdG8gdHJhY2sgcHJpY2Ugb2YgQ3J5cHRvIEN1cnJlbmNpZXNcblxuYWRkIGNvaW5zIGJ5IEJpbmFuY2Ugc3ltYm9scywgZm9yIGV4YW1wbGU6IFwiQlRDL1VTRFRcIlxuY29tcGxldGUgbGlzdCBvbiBiaW5hbmNlOiBodHRwczovL3d3dy5iaW5hbmNlLmNvbS9pbmRleFNwYS5odG1sXG5cbioqIGlmIGl0IGZhY2VkIGVycm9yIGFmdGVyIHVwZGF0ZTpcbioqUmVzdGFydCBHbm9tZS1zaGVsbC4gKEFMVCtGMiwgciwgRW50ZXIpIiwKICAibmFtZSI6ICJDcnlwdG8gUHJpY2UgVHJhY2tlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jcnlwdG8tdHJhY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FsaXBpcnBpcmFuL0NyeXB0by1QcmljZS1UcmFja2VyLWZvci1Hbm9tZS1TaGVsbCIsCiAgInV1aWQiOiAiY3J5cHRvQGFsaXBpcnBpcmFuLmdpdGh1YiIsCiAgInZlcnNpb24iOiAyMQp9"}, "41": {"version": "21", "sha256": "19lylcxw1py36z1bpq4sx3zbjpamsz366fpf2h8dazn2z6k5p7pq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBleHRlbnNpb24gdG8gdHJhY2sgcHJpY2Ugb2YgQ3J5cHRvIEN1cnJlbmNpZXNcblxuYWRkIGNvaW5zIGJ5IEJpbmFuY2Ugc3ltYm9scywgZm9yIGV4YW1wbGU6IFwiQlRDL1VTRFRcIlxuY29tcGxldGUgbGlzdCBvbiBiaW5hbmNlOiBodHRwczovL3d3dy5iaW5hbmNlLmNvbS9pbmRleFNwYS5odG1sXG5cbioqIGlmIGl0IGZhY2VkIGVycm9yIGFmdGVyIHVwZGF0ZTpcbioqUmVzdGFydCBHbm9tZS1zaGVsbC4gKEFMVCtGMiwgciwgRW50ZXIpIiwKICAibmFtZSI6ICJDcnlwdG8gUHJpY2UgVHJhY2tlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jcnlwdG8tdHJhY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FsaXBpcnBpcmFuL0NyeXB0by1QcmljZS1UcmFja2VyLWZvci1Hbm9tZS1TaGVsbCIsCiAgInV1aWQiOiAiY3J5cHRvQGFsaXBpcnBpcmFuLmdpdGh1YiIsCiAgInZlcnNpb24iOiAyMQp9"}, "42": {"version": "21", "sha256": "19lylcxw1py36z1bpq4sx3zbjpamsz366fpf2h8dazn2z6k5p7pq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBleHRlbnNpb24gdG8gdHJhY2sgcHJpY2Ugb2YgQ3J5cHRvIEN1cnJlbmNpZXNcblxuYWRkIGNvaW5zIGJ5IEJpbmFuY2Ugc3ltYm9scywgZm9yIGV4YW1wbGU6IFwiQlRDL1VTRFRcIlxuY29tcGxldGUgbGlzdCBvbiBiaW5hbmNlOiBodHRwczovL3d3dy5iaW5hbmNlLmNvbS9pbmRleFNwYS5odG1sXG5cbioqIGlmIGl0IGZhY2VkIGVycm9yIGFmdGVyIHVwZGF0ZTpcbioqUmVzdGFydCBHbm9tZS1zaGVsbC4gKEFMVCtGMiwgciwgRW50ZXIpIiwKICAibmFtZSI6ICJDcnlwdG8gUHJpY2UgVHJhY2tlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jcnlwdG8tdHJhY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FsaXBpcnBpcmFuL0NyeXB0by1QcmljZS1UcmFja2VyLWZvci1Hbm9tZS1TaGVsbCIsCiAgInV1aWQiOiAiY3J5cHRvQGFsaXBpcnBpcmFuLmdpdGh1YiIsCiAgInZlcnNpb24iOiAyMQp9"}}}
 , {"uuid": "ibus-tweaker@tuberry.github.com", "name": "IBus Tweaker", "pname": "ibus-tweaker", "description": "Tweaker of IBus for orientation, theme, font, input mode and clipboard history\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/2820/ibus-tweaker/", "shell_version_map": {"38": {"version": "28", "sha256": "1ahhcq8hpxkdvq1fp8gd8qp1cfsgqsm9swn4ph9kyrzr7j8jvc3k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrZXIgb2YgSUJ1cyBmb3Igb3JpZW50YXRpb24sIHRoZW1lLCBmb250LCBpbnB1dCBtb2RlIGFuZCBjbGlwYm9hcmQgaGlzdG9yeVxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpYnVzLXR3ZWFrZXIiLAogICJuYW1lIjogIklCdXMgVHdlYWtlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5pYnVzLXR3ZWFrZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2lidXMtdHdlYWtlciIsCiAgInV1aWQiOiAiaWJ1cy10d2Vha2VyQHR1YmVycnkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAyOAp9"}, "40": {"version": "34", "sha256": "0fs0hlxdnhssx9vcghbicg1fn3clws9q2f3nzdi4virpm8wksf3f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrZXIgb2YgSUJ1cyBmb3Igb3JpZW50YXRpb24sIHRoZW1lLCBmb250LCBpbnB1dCBtb2RlIGFuZCBjbGlwYm9hcmQgaGlzdG9yeVxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpYnVzLXR3ZWFrZXIiLAogICJuYW1lIjogIklCdXMgVHdlYWtlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5pYnVzLXR3ZWFrZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9pYnVzLXR3ZWFrZXIiLAogICJ1dWlkIjogImlidXMtdHdlYWtlckB0dWJlcnJ5LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMzQKfQ=="}, "41": {"version": "36", "sha256": "0f819v8n1rvvwrir7qf8fp0bvn5zk899lpc4dr8f9jk9g8w57q7d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrZXIgb2YgSUJ1cyBmb3Igb3JpZW50YXRpb24sIHRoZW1lLCBmb250LCBpbnB1dCBtb2RlIGFuZCBjbGlwYm9hcmQgaGlzdG9yeVxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24taWJ1cy10d2Vha2VyIiwKICAibmFtZSI6ICJJQnVzIFR3ZWFrZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaWJ1cy10d2Vha2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvaWJ1cy10d2Vha2VyIiwKICAidXVpZCI6ICJpYnVzLXR3ZWFrZXJAdHViZXJyeS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDM2Cn0="}, "42": {"version": "38", "sha256": "0crdw1z2yan0mbc36v8vw0iinqbv4lyqzsvdyhz8zsi9q4asrlg6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrZXIgb2YgSUJ1cyBmb3Igb3JpZW50YXRpb24sIHRoZW1lLCBmb250LCBpbnB1dCBtb2RlIGFuZCBjbGlwYm9hcmQgaGlzdG9yeVxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24taWJ1cy10d2Vha2VyIiwKICAibmFtZSI6ICJJQnVzIFR3ZWFrZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaWJ1cy10d2Vha2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvaWJ1cy10d2Vha2VyIiwKICAidXVpZCI6ICJpYnVzLXR3ZWFrZXJAdHViZXJyeS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDM4Cn0="}, "43": {"version": "40", "sha256": "0b807s4bfxmxf6131749gi3nil42dabmz2ndwwsblcpbj0cas7mv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrZXIgb2YgSUJ1cyBmb3Igb3JpZW50YXRpb24sIHRoZW1lLCBmb250LCBpbnB1dCBtb2RlIGFuZCBjbGlwYm9hcmQgaGlzdG9yeVxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24taWJ1cy10d2Vha2VyIiwKICAibmFtZSI6ICJJQnVzIFR3ZWFrZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaWJ1cy10d2Vha2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvaWJ1cy10d2Vha2VyIiwKICAidXVpZCI6ICJpYnVzLXR3ZWFrZXJAdHViZXJyeS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQwCn0="}}}
 , {"uuid": "generic-monitor@gnome-shell-extensions", "name": "Generic Monitor", "pname": "generic-monitor", "description": "Display text & icon on systray using DBUS", "link": "https://extensions.gnome.org/extension/2826/generic-monitor/", "shell_version_map": {"38": {"version": "10", "sha256": "0kvniacvxv57f6jfcrlrd7ggwj4h0bfs60r59p150m6nldm9zf23", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGV4dCAmIGljb24gb24gc3lzdHJheSB1c2luZyBEQlVTIiwKICAibmFtZSI6ICJHZW5lcmljIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHA6Ly9pbmRlZmVyby5zb3V0YWRlLmZyL3AvZ2VuZXJpY21vbml0b3IiLAogICJ1dWlkIjogImdlbmVyaWMtbW9uaXRvckBnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidmVyc2lvbiI6IDEwCn0="}, "40": {"version": "10", "sha256": "0kvniacvxv57f6jfcrlrd7ggwj4h0bfs60r59p150m6nldm9zf23", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGV4dCAmIGljb24gb24gc3lzdHJheSB1c2luZyBEQlVTIiwKICAibmFtZSI6ICJHZW5lcmljIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHA6Ly9pbmRlZmVyby5zb3V0YWRlLmZyL3AvZ2VuZXJpY21vbml0b3IiLAogICJ1dWlkIjogImdlbmVyaWMtbW9uaXRvckBnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidmVyc2lvbiI6IDEwCn0="}, "41": {"version": "10", "sha256": "0kvniacvxv57f6jfcrlrd7ggwj4h0bfs60r59p150m6nldm9zf23", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGV4dCAmIGljb24gb24gc3lzdHJheSB1c2luZyBEQlVTIiwKICAibmFtZSI6ICJHZW5lcmljIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHA6Ly9pbmRlZmVyby5zb3V0YWRlLmZyL3AvZ2VuZXJpY21vbml0b3IiLAogICJ1dWlkIjogImdlbmVyaWMtbW9uaXRvckBnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidmVyc2lvbiI6IDEwCn0="}, "42": {"version": "10", "sha256": "0kvniacvxv57f6jfcrlrd7ggwj4h0bfs60r59p150m6nldm9zf23", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGV4dCAmIGljb24gb24gc3lzdHJheSB1c2luZyBEQlVTIiwKICAibmFtZSI6ICJHZW5lcmljIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHA6Ly9pbmRlZmVyby5zb3V0YWRlLmZyL3AvZ2VuZXJpY21vbml0b3IiLAogICJ1dWlkIjogImdlbmVyaWMtbW9uaXRvckBnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
@@ -315,7 +315,7 @@
 , {"uuid": "light-dict@tuberry.github.io", "name": "Light Dict", "pname": "light-dict", "description": "Lightweight extension for on-the-fly manipulation to primary selections, especially optimized for Dictionary lookups.\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/2959/light-dict/", "shell_version_map": {"38": {"version": "47", "sha256": "1l36l9qmcz7c6i81w5fv083bg01qsgz681c2lan8f87hqdipl4r7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IGV4dGVuc2lvbiBmb3Igb24tdGhlLWZseSBtYW5pcHVsYXRpb24gdG8gcHJpbWFyeSBzZWxlY3Rpb25zLCBlc3BlY2lhbGx5IG9wdGltaXplZCBmb3IgRGljdGlvbmFyeSBsb29rdXBzLlxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJsaWdodC1kaWN0IiwKICAibmFtZSI6ICJMaWdodCBEaWN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmxpZ2h0LWRpY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2xpZ2h0LWRpY3QiLAogICJ1dWlkIjogImxpZ2h0LWRpY3RAdHViZXJyeS5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNDcKfQ=="}, "40": {"version": "58", "sha256": "0x3rk3p2vlyd2n23jlmwqfc1akbbjfhyn9w1v44byw1nfc3b0n8z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IGV4dGVuc2lvbiBmb3Igb24tdGhlLWZseSBtYW5pcHVsYXRpb24gdG8gcHJpbWFyeSBzZWxlY3Rpb25zLCBlc3BlY2lhbGx5IG9wdGltaXplZCBmb3IgRGljdGlvbmFyeSBsb29rdXBzLlxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tbGlnaHQtZGljdCIsCiAgIm5hbWUiOiAiTGlnaHQgRGljdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5saWdodC1kaWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvbGlnaHQtZGljdCIsCiAgInV1aWQiOiAibGlnaHQtZGljdEB0dWJlcnJ5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA1OAp9"}, "41": {"version": "65", "sha256": "1hjaw62pxrpgismg6dhxqp04qhk1d4xkwlgzymmra7d428qjnxf2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IGV4dGVuc2lvbiBmb3Igb24tdGhlLWZseSBtYW5pcHVsYXRpb24gdG8gcHJpbWFyeSBzZWxlY3Rpb25zLCBlc3BlY2lhbGx5IG9wdGltaXplZCBmb3IgRGljdGlvbmFyeSBsb29rdXBzLlxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tbGlnaHQtZGljdCIsCiAgIm5hbWUiOiAiTGlnaHQgRGljdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5saWdodC1kaWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvbGlnaHQtZGljdCIsCiAgInV1aWQiOiAibGlnaHQtZGljdEB0dWJlcnJ5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA2NQp9"}, "42": {"version": "67", "sha256": "05nxmlsik60nmci7x1zvdfwjymab10ikb4pdgq4cmpim3mrpp3xn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IGV4dGVuc2lvbiBmb3Igb24tdGhlLWZseSBtYW5pcHVsYXRpb24gdG8gcHJpbWFyeSBzZWxlY3Rpb25zLCBlc3BlY2lhbGx5IG9wdGltaXplZCBmb3IgRGljdGlvbmFyeSBsb29rdXBzLlxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tbGlnaHQtZGljdCIsCiAgIm5hbWUiOiAiTGlnaHQgRGljdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5saWdodC1kaWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvbGlnaHQtZGljdCIsCiAgInV1aWQiOiAibGlnaHQtZGljdEB0dWJlcnJ5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA2Nwp9"}, "43": {"version": "68", "sha256": "0vyyhdd19k14nz6pvifvlks4i7k18zdqsppsaix25h1z53ib63y7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IGV4dGVuc2lvbiBmb3Igb24tdGhlLWZseSBtYW5pcHVsYXRpb24gdG8gcHJpbWFyeSBzZWxlY3Rpb25zLCBlc3BlY2lhbGx5IG9wdGltaXplZCBmb3IgRGljdGlvbmFyeSBsb29rdXBzLlxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tbGlnaHQtZGljdCIsCiAgIm5hbWUiOiAiTGlnaHQgRGljdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5saWdodC1kaWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvbGlnaHQtZGljdCIsCiAgInV1aWQiOiAibGlnaHQtZGljdEB0dWJlcnJ5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA2OAp9"}}}
 , {"uuid": "InternetSpeedMeter@alshakib.dev", "name": "Internet Speed Meter", "pname": "internet-speed-meter", "description": "Simple and minimal internet speed meter extension for gnome shell", "link": "https://extensions.gnome.org/extension/2980/internet-speed-meter/", "shell_version_map": {"38": {"version": "10", "sha256": "0q6cdiswixzg0j5ndjmqcxv6jznzsgjh0zplgsnfw42n2mzvmw32", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBhbmQgbWluaW1hbCBpbnRlcm5ldCBzcGVlZCBtZXRlciBleHRlbnNpb24gZm9yIGdub21lIHNoZWxsIiwKICAibmFtZSI6ICJJbnRlcm5ldCBTcGVlZCBNZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0FsU2hha2liL0ludGVybmV0U3BlZWRNZXRlciIsCiAgInV1aWQiOiAiSW50ZXJuZXRTcGVlZE1ldGVyQGFsc2hha2liLmRldiIsCiAgInZlcnNpb24iOiAxMAp9"}, "40": {"version": "10", "sha256": "0q6cdiswixzg0j5ndjmqcxv6jznzsgjh0zplgsnfw42n2mzvmw32", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBhbmQgbWluaW1hbCBpbnRlcm5ldCBzcGVlZCBtZXRlciBleHRlbnNpb24gZm9yIGdub21lIHNoZWxsIiwKICAibmFtZSI6ICJJbnRlcm5ldCBTcGVlZCBNZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0FsU2hha2liL0ludGVybmV0U3BlZWRNZXRlciIsCiAgInV1aWQiOiAiSW50ZXJuZXRTcGVlZE1ldGVyQGFsc2hha2liLmRldiIsCiAgInZlcnNpb24iOiAxMAp9"}, "41": {"version": "10", "sha256": "0q6cdiswixzg0j5ndjmqcxv6jznzsgjh0zplgsnfw42n2mzvmw32", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBhbmQgbWluaW1hbCBpbnRlcm5ldCBzcGVlZCBtZXRlciBleHRlbnNpb24gZm9yIGdub21lIHNoZWxsIiwKICAibmFtZSI6ICJJbnRlcm5ldCBTcGVlZCBNZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0FsU2hha2liL0ludGVybmV0U3BlZWRNZXRlciIsCiAgInV1aWQiOiAiSW50ZXJuZXRTcGVlZE1ldGVyQGFsc2hha2liLmRldiIsCiAgInZlcnNpb24iOiAxMAp9"}, "42": {"version": "10", "sha256": "0q6cdiswixzg0j5ndjmqcxv6jznzsgjh0zplgsnfw42n2mzvmw32", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBhbmQgbWluaW1hbCBpbnRlcm5ldCBzcGVlZCBtZXRlciBleHRlbnNpb24gZm9yIGdub21lIHNoZWxsIiwKICAibmFtZSI6ICJJbnRlcm5ldCBTcGVlZCBNZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0FsU2hha2liL0ludGVybmV0U3BlZWRNZXRlciIsCiAgInV1aWQiOiAiSW50ZXJuZXRTcGVlZE1ldGVyQGFsc2hha2liLmRldiIsCiAgInZlcnNpb24iOiAxMAp9"}}}
 , {"uuid": "IP-Finder@linxgem33.com", "name": "IP Finder", "pname": "ip-finder", "description": "Displays useful information about your public IP Address\n\nIP Finder displays information about your public IP address, hostname, country, AS Block, as well as  a map tile of your Geolocation and country flag,  this extension is Also Useful for informational purposes to monitor VPN changes and public network IP Addresses.\n\n=====================\nIP Finder can monitor in real time\n=====================\n*Wireguard connections\n*OpenVPN connections\n*IPV4/6 connections\n*Proxy connections\n*VPN vendor applications\n*Manual static IP changes\n\n====================\nIP Finder has added security\n====================\nNewly developed revised code base using open technologies and using API's for Public IP and Map Tile image locations using GET requests over HTTPS for a added layer of encrypted  Security, Please see source code for more details.\n\n====================\nCompatible GNOME shell - 3.36 and newer.", "link": "https://extensions.gnome.org/extension/2983/ip-finder/", "shell_version_map": {"38": {"version": "7", "sha256": "0qnmmg8q6xdv0rg90rzimqzsnggnsq2x8nmz998x59q2ik67kqgq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHVzZWZ1bCBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBBZGRyZXNzXG5cbklQIEZpbmRlciBkaXNwbGF5cyBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBhZGRyZXNzLCBob3N0bmFtZSwgY291bnRyeSwgQVMgQmxvY2ssIGFzIHdlbGwgYXMgIGEgbWFwIHRpbGUgb2YgeW91ciBHZW9sb2NhdGlvbiBhbmQgY291bnRyeSBmbGFnLCAgdGhpcyBleHRlbnNpb24gaXMgQWxzbyBVc2VmdWwgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgdG8gbW9uaXRvciBWUE4gY2hhbmdlcyBhbmQgcHVibGljIG5ldHdvcmsgSVAgQWRkcmVzc2VzLlxuXG49PT09PT09PT09PT09PT09PT09PT1cbklQIEZpbmRlciBjYW4gbW9uaXRvciBpbiByZWFsIHRpbWVcbj09PT09PT09PT09PT09PT09PT09PVxuKldpcmVndWFyZCBjb25uZWN0aW9uc1xuKk9wZW5WUE4gY29ubmVjdGlvbnNcbipJUFY0LzYgY29ubmVjdGlvbnNcbipQcm94eSBjb25uZWN0aW9uc1xuKlZQTiB2ZW5kb3IgYXBwbGljYXRpb25zXG4qTWFudWFsIHN0YXRpYyBJUCBjaGFuZ2VzXG5cbj09PT09PT09PT09PT09PT09PT09XG5JUCBGaW5kZXIgaGFzIGFkZGVkIHNlY3VyaXR5XG49PT09PT09PT09PT09PT09PT09PVxuTmV3bHkgZGV2ZWxvcGVkIHJldmlzZWQgY29kZSBiYXNlIHVzaW5nIG9wZW4gdGVjaG5vbG9naWVzIGFuZCB1c2luZyBBUEkncyBmb3IgUHVibGljIElQIGFuZCBNYXAgVGlsZSBpbWFnZSBsb2NhdGlvbnMgdXNpbmcgR0VUIHJlcXVlc3RzIG92ZXIgSFRUUFMgZm9yIGEgYWRkZWQgbGF5ZXIgb2YgZW5jcnlwdGVkICBTZWN1cml0eSwgUGxlYXNlIHNlZSBzb3VyY2UgY29kZSBmb3IgbW9yZSBkZXRhaWxzLlxuXG49PT09PT09PT09PT09PT09PT09PVxuQ29tcGF0aWJsZSBHTk9NRSBzaGVsbCAtIDMuMzYgYW5kIG5ld2VyLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJpcC1maW5kZXIiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpcC1maW5kZXIiLAogICJuYW1lIjogIklQIEZpbmRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5wdWJsaWMtaXAtYWRkcmVzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL0xpbnhHZW0zMy9JUC1GaW5kZXIiLAogICJ1dWlkIjogIklQLUZpbmRlckBsaW54Z2VtMzMuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "9", "sha256": "1iglj9l7c69ics43r675w4azc7x680n21vfr6jkdha8j47a79sn3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHVzZWZ1bCBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBBZGRyZXNzXG5cbklQIEZpbmRlciBkaXNwbGF5cyBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBhZGRyZXNzLCBob3N0bmFtZSwgY291bnRyeSwgQVMgQmxvY2ssIGFzIHdlbGwgYXMgIGEgbWFwIHRpbGUgb2YgeW91ciBHZW9sb2NhdGlvbiBhbmQgY291bnRyeSBmbGFnLCAgdGhpcyBleHRlbnNpb24gaXMgQWxzbyBVc2VmdWwgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgdG8gbW9uaXRvciBWUE4gY2hhbmdlcyBhbmQgcHVibGljIG5ldHdvcmsgSVAgQWRkcmVzc2VzLlxuXG49PT09PT09PT09PT09PT09PT09PT1cbklQIEZpbmRlciBjYW4gbW9uaXRvciBpbiByZWFsIHRpbWVcbj09PT09PT09PT09PT09PT09PT09PVxuKldpcmVndWFyZCBjb25uZWN0aW9uc1xuKk9wZW5WUE4gY29ubmVjdGlvbnNcbipJUFY0LzYgY29ubmVjdGlvbnNcbipQcm94eSBjb25uZWN0aW9uc1xuKlZQTiB2ZW5kb3IgYXBwbGljYXRpb25zXG4qTWFudWFsIHN0YXRpYyBJUCBjaGFuZ2VzXG5cbj09PT09PT09PT09PT09PT09PT09XG5JUCBGaW5kZXIgaGFzIGFkZGVkIHNlY3VyaXR5XG49PT09PT09PT09PT09PT09PT09PVxuTmV3bHkgZGV2ZWxvcGVkIHJldmlzZWQgY29kZSBiYXNlIHVzaW5nIG9wZW4gdGVjaG5vbG9naWVzIGFuZCB1c2luZyBBUEkncyBmb3IgUHVibGljIElQIGFuZCBNYXAgVGlsZSBpbWFnZSBsb2NhdGlvbnMgdXNpbmcgR0VUIHJlcXVlc3RzIG92ZXIgSFRUUFMgZm9yIGEgYWRkZWQgbGF5ZXIgb2YgZW5jcnlwdGVkICBTZWN1cml0eSwgUGxlYXNlIHNlZSBzb3VyY2UgY29kZSBmb3IgbW9yZSBkZXRhaWxzLlxuXG49PT09PT09PT09PT09PT09PT09PVxuQ29tcGF0aWJsZSBHTk9NRSBzaGVsbCAtIDMuMzYgYW5kIG5ld2VyLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJpcC1maW5kZXIiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpcC1maW5kZXIiLAogICJuYW1lIjogIklQIEZpbmRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5wdWJsaWMtaXAtYWRkcmVzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vTGlueEdlbTMzL0lQLUZpbmRlciIsCiAgInV1aWQiOiAiSVAtRmluZGVyQGxpbnhnZW0zMy5jb20iLAogICJ2ZXJzaW9uIjogOQp9"}, "41": {"version": "9", "sha256": "1iglj9l7c69ics43r675w4azc7x680n21vfr6jkdha8j47a79sn3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHVzZWZ1bCBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBBZGRyZXNzXG5cbklQIEZpbmRlciBkaXNwbGF5cyBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBhZGRyZXNzLCBob3N0bmFtZSwgY291bnRyeSwgQVMgQmxvY2ssIGFzIHdlbGwgYXMgIGEgbWFwIHRpbGUgb2YgeW91ciBHZW9sb2NhdGlvbiBhbmQgY291bnRyeSBmbGFnLCAgdGhpcyBleHRlbnNpb24gaXMgQWxzbyBVc2VmdWwgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgdG8gbW9uaXRvciBWUE4gY2hhbmdlcyBhbmQgcHVibGljIG5ldHdvcmsgSVAgQWRkcmVzc2VzLlxuXG49PT09PT09PT09PT09PT09PT09PT1cbklQIEZpbmRlciBjYW4gbW9uaXRvciBpbiByZWFsIHRpbWVcbj09PT09PT09PT09PT09PT09PT09PVxuKldpcmVndWFyZCBjb25uZWN0aW9uc1xuKk9wZW5WUE4gY29ubmVjdGlvbnNcbipJUFY0LzYgY29ubmVjdGlvbnNcbipQcm94eSBjb25uZWN0aW9uc1xuKlZQTiB2ZW5kb3IgYXBwbGljYXRpb25zXG4qTWFudWFsIHN0YXRpYyBJUCBjaGFuZ2VzXG5cbj09PT09PT09PT09PT09PT09PT09XG5JUCBGaW5kZXIgaGFzIGFkZGVkIHNlY3VyaXR5XG49PT09PT09PT09PT09PT09PT09PVxuTmV3bHkgZGV2ZWxvcGVkIHJldmlzZWQgY29kZSBiYXNlIHVzaW5nIG9wZW4gdGVjaG5vbG9naWVzIGFuZCB1c2luZyBBUEkncyBmb3IgUHVibGljIElQIGFuZCBNYXAgVGlsZSBpbWFnZSBsb2NhdGlvbnMgdXNpbmcgR0VUIHJlcXVlc3RzIG92ZXIgSFRUUFMgZm9yIGEgYWRkZWQgbGF5ZXIgb2YgZW5jcnlwdGVkICBTZWN1cml0eSwgUGxlYXNlIHNlZSBzb3VyY2UgY29kZSBmb3IgbW9yZSBkZXRhaWxzLlxuXG49PT09PT09PT09PT09PT09PT09PVxuQ29tcGF0aWJsZSBHTk9NRSBzaGVsbCAtIDMuMzYgYW5kIG5ld2VyLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJpcC1maW5kZXIiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpcC1maW5kZXIiLAogICJuYW1lIjogIklQIEZpbmRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5wdWJsaWMtaXAtYWRkcmVzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vTGlueEdlbTMzL0lQLUZpbmRlciIsCiAgInV1aWQiOiAiSVAtRmluZGVyQGxpbnhnZW0zMy5jb20iLAogICJ2ZXJzaW9uIjogOQp9"}, "42": {"version": "10", "sha256": "10h8m6m38ykf0nlsnqjpyp2m409ravjpf1n9ylx79cpnwrl4a86y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHVzZWZ1bCBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBBZGRyZXNzXG5cbklQIEZpbmRlciBkaXNwbGF5cyBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBhZGRyZXNzLCBob3N0bmFtZSwgY291bnRyeSwgQVMgQmxvY2ssIGFzIHdlbGwgYXMgIGEgbWFwIHRpbGUgb2YgeW91ciBHZW9sb2NhdGlvbiBhbmQgY291bnRyeSBmbGFnLCAgdGhpcyBleHRlbnNpb24gaXMgQWxzbyBVc2VmdWwgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgdG8gbW9uaXRvciBWUE4gY2hhbmdlcyBhbmQgcHVibGljIG5ldHdvcmsgSVAgQWRkcmVzc2VzLlxuXG49PT09PT09PT09PT09PT09PT09PT1cbklQIEZpbmRlciBjYW4gbW9uaXRvciBpbiByZWFsIHRpbWVcbj09PT09PT09PT09PT09PT09PT09PVxuKldpcmVndWFyZCBjb25uZWN0aW9uc1xuKk9wZW5WUE4gY29ubmVjdGlvbnNcbipJUFY0LzYgY29ubmVjdGlvbnNcbipQcm94eSBjb25uZWN0aW9uc1xuKlZQTiB2ZW5kb3IgYXBwbGljYXRpb25zXG4qTWFudWFsIHN0YXRpYyBJUCBjaGFuZ2VzXG5cbj09PT09PT09PT09PT09PT09PT09XG5JUCBGaW5kZXIgaGFzIGFkZGVkIHNlY3VyaXR5XG49PT09PT09PT09PT09PT09PT09PVxuTmV3bHkgZGV2ZWxvcGVkIHJldmlzZWQgY29kZSBiYXNlIHVzaW5nIG9wZW4gdGVjaG5vbG9naWVzIGFuZCB1c2luZyBBUEkncyBmb3IgUHVibGljIElQIGFuZCBNYXAgVGlsZSBpbWFnZSBsb2NhdGlvbnMgdXNpbmcgR0VUIHJlcXVlc3RzIG92ZXIgSFRUUFMgZm9yIGEgYWRkZWQgbGF5ZXIgb2YgZW5jcnlwdGVkICBTZWN1cml0eSwgUGxlYXNlIHNlZSBzb3VyY2UgY29kZSBmb3IgbW9yZSBkZXRhaWxzLlxuXG49PT09PT09PT09PT09PT09PT09PVxuQ29tcGF0aWJsZSBHTk9NRSBzaGVsbCAtIDMuMzYgYW5kIG5ld2VyLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJpcC1maW5kZXIiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpcC1maW5kZXIiLAogICJuYW1lIjogIklQIEZpbmRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5wdWJsaWMtaXAtYWRkcmVzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9MaW54R2VtMzMvSVAtRmluZGVyIiwKICAidXVpZCI6ICJJUC1GaW5kZXJAbGlueGdlbTMzLmNvbSIsCiAgInZlcnNpb24iOiAxMAp9"}, "43": {"version": "13", "sha256": "0yd18nm410zs6822mjziagqsnm7flgcshnwjrw5ri04v5ghvnvap", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHVzZWZ1bCBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBBZGRyZXNzXG5cbklQIEZpbmRlciBkaXNwbGF5cyBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBhZGRyZXNzLCBob3N0bmFtZSwgY291bnRyeSwgQVMgQmxvY2ssIGFzIHdlbGwgYXMgIGEgbWFwIHRpbGUgb2YgeW91ciBHZW9sb2NhdGlvbiBhbmQgY291bnRyeSBmbGFnLCAgdGhpcyBleHRlbnNpb24gaXMgQWxzbyBVc2VmdWwgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgdG8gbW9uaXRvciBWUE4gY2hhbmdlcyBhbmQgcHVibGljIG5ldHdvcmsgSVAgQWRkcmVzc2VzLlxuXG49PT09PT09PT09PT09PT09PT09PT1cbklQIEZpbmRlciBjYW4gbW9uaXRvciBpbiByZWFsIHRpbWVcbj09PT09PT09PT09PT09PT09PT09PVxuKldpcmVndWFyZCBjb25uZWN0aW9uc1xuKk9wZW5WUE4gY29ubmVjdGlvbnNcbipJUFY0LzYgY29ubmVjdGlvbnNcbipQcm94eSBjb25uZWN0aW9uc1xuKlZQTiB2ZW5kb3IgYXBwbGljYXRpb25zXG4qTWFudWFsIHN0YXRpYyBJUCBjaGFuZ2VzXG5cbj09PT09PT09PT09PT09PT09PT09XG5JUCBGaW5kZXIgaGFzIGFkZGVkIHNlY3VyaXR5XG49PT09PT09PT09PT09PT09PT09PVxuTmV3bHkgZGV2ZWxvcGVkIHJldmlzZWQgY29kZSBiYXNlIHVzaW5nIG9wZW4gdGVjaG5vbG9naWVzIGFuZCB1c2luZyBBUEkncyBmb3IgUHVibGljIElQIGFuZCBNYXAgVGlsZSBpbWFnZSBsb2NhdGlvbnMgdXNpbmcgR0VUIHJlcXVlc3RzIG92ZXIgSFRUUFMgZm9yIGEgYWRkZWQgbGF5ZXIgb2YgZW5jcnlwdGVkICBTZWN1cml0eSwgUGxlYXNlIHNlZSBzb3VyY2UgY29kZSBmb3IgbW9yZSBkZXRhaWxzLlxuXG49PT09PT09PT09PT09PT09PT09PVxuQ29tcGF0aWJsZSBHTk9NRSBzaGVsbCAtIDMuMzYgYW5kIG5ld2VyLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJpcC1maW5kZXIiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpcC1maW5kZXIiLAogICJuYW1lIjogIklQIEZpbmRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5pcC1maW5kZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vTGlueEdlbTMzL0lQLUZpbmRlciIsCiAgInV1aWQiOiAiSVAtRmluZGVyQGxpbnhnZW0zMy5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}}}
-, {"uuid": "runcat@kolesnikov.se", "name": "RunCat", "pname": "runcat", "description": "The cat tells you the CPU usage by running speed", "link": "https://extensions.gnome.org/extension/2986/runcat/", "shell_version_map": {"38": {"version": "19", "sha256": "1l15bacj0rn9s4y3ksqqfk0jps12xvdajlvfllb1mjiijw4qdcx6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3dpbjBlcnIvZ25vbWUtcnVuY2F0IiwKICAidXVpZCI6ICJydW5jYXRAa29sZXNuaWtvdi5zZSIsCiAgInZlcnNpb24iOiAxOQp9"}, "40": {"version": "19", "sha256": "1l15bacj0rn9s4y3ksqqfk0jps12xvdajlvfllb1mjiijw4qdcx6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3dpbjBlcnIvZ25vbWUtcnVuY2F0IiwKICAidXVpZCI6ICJydW5jYXRAa29sZXNuaWtvdi5zZSIsCiAgInZlcnNpb24iOiAxOQp9"}, "41": {"version": "19", "sha256": "1l15bacj0rn9s4y3ksqqfk0jps12xvdajlvfllb1mjiijw4qdcx6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3dpbjBlcnIvZ25vbWUtcnVuY2F0IiwKICAidXVpZCI6ICJydW5jYXRAa29sZXNuaWtvdi5zZSIsCiAgInZlcnNpb24iOiAxOQp9"}, "42": {"version": "19", "sha256": "1l15bacj0rn9s4y3ksqqfk0jps12xvdajlvfllb1mjiijw4qdcx6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3dpbjBlcnIvZ25vbWUtcnVuY2F0IiwKICAidXVpZCI6ICJydW5jYXRAa29sZXNuaWtvdi5zZSIsCiAgInZlcnNpb24iOiAxOQp9"}, "43": {"version": "19", "sha256": "1l15bacj0rn9s4y3ksqqfk0jps12xvdajlvfllb1mjiijw4qdcx6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3dpbjBlcnIvZ25vbWUtcnVuY2F0IiwKICAidXVpZCI6ICJydW5jYXRAa29sZXNuaWtvdi5zZSIsCiAgInZlcnNpb24iOiAxOQp9"}}}
+, {"uuid": "runcat@kolesnikov.se", "name": "RunCat", "pname": "runcat", "description": "The cat tells you the CPU usage by running speed", "link": "https://extensions.gnome.org/extension/2986/runcat/", "shell_version_map": {"38": {"version": "19", "sha256": "1l15bacj0rn9s4y3ksqqfk0jps12xvdajlvfllb1mjiijw4qdcx6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3dpbjBlcnIvZ25vbWUtcnVuY2F0IiwKICAidXVpZCI6ICJydW5jYXRAa29sZXNuaWtvdi5zZSIsCiAgInZlcnNpb24iOiAxOQp9"}, "40": {"version": "19", "sha256": "1l15bacj0rn9s4y3ksqqfk0jps12xvdajlvfllb1mjiijw4qdcx6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3dpbjBlcnIvZ25vbWUtcnVuY2F0IiwKICAidXVpZCI6ICJydW5jYXRAa29sZXNuaWtvdi5zZSIsCiAgInZlcnNpb24iOiAxOQp9"}, "41": {"version": "19", "sha256": "1l15bacj0rn9s4y3ksqqfk0jps12xvdajlvfllb1mjiijw4qdcx6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3dpbjBlcnIvZ25vbWUtcnVuY2F0IiwKICAidXVpZCI6ICJydW5jYXRAa29sZXNuaWtvdi5zZSIsCiAgInZlcnNpb24iOiAxOQp9"}, "42": {"version": "21", "sha256": "1v26g6p9vchjhw9ci3k23arvrzf2icd7aj1b1diw2i87y4zszs36", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgImdldHRleHQtZG9tYWluIjogInJ1bmNhdEBrb2xlc25pa292LnNlIiwKICAibmFtZSI6ICJSdW5DYXQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3dpbjBlcnIvZ25vbWUtcnVuY2F0IiwKICAidXVpZCI6ICJydW5jYXRAa29sZXNuaWtvdi5zZSIsCiAgInZlcnNpb24iOiAyMQp9"}, "43": {"version": "21", "sha256": "1v26g6p9vchjhw9ci3k23arvrzf2icd7aj1b1diw2i87y4zszs36", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgImdldHRleHQtZG9tYWluIjogInJ1bmNhdEBrb2xlc25pa292LnNlIiwKICAibmFtZSI6ICJSdW5DYXQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3dpbjBlcnIvZ25vbWUtcnVuY2F0IiwKICAidXVpZCI6ICJydW5jYXRAa29sZXNuaWtvdi5zZSIsCiAgInZlcnNpb24iOiAyMQp9"}}}
 , {"uuid": "bowser-gnome@kronosoul.xyz", "name": "Bowser Gnome Extension", "pname": "bowser-gnome-extension", "description": "Create rules to open specific websites in specific web browsers for links clicked in any application on your computer. (emails, chat etc)", "link": "https://extensions.gnome.org/extension/2989/bowser-gnome-extension/", "shell_version_map": {"38": {"version": "12", "sha256": "1kq8r2335m3if9r10yisz9w8k02bdpa96dqkfxh4lkfc4n0l7l60", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwuQm93c2VyIiwKICAiZGVzY3JpcHRpb24iOiAiQ3JlYXRlIHJ1bGVzIHRvIG9wZW4gc3BlY2lmaWMgd2Vic2l0ZXMgaW4gc3BlY2lmaWMgd2ViIGJyb3dzZXJzIGZvciBsaW5rcyBjbGlja2VkIGluIGFueSBhcHBsaWNhdGlvbiBvbiB5b3VyIGNvbXB1dGVyLiAoZW1haWxzLCBjaGF0IGV0YykiLAogICJleHRlbnNpb24taWQiOiAiYm93c2VyLWdub21lIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYm93c2VyLWdub21lIiwKICAibmFtZSI6ICJCb3dzZXIgR25vbWUgRXh0ZW5zaW9uIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImFkbWluQGtyb25vc291bC54eXoiLAogICJyZXNvdXJjZS1wYXRoIjogIi9vcmcva3Jvbm9zb3VsL0Jvd3Nlci8iLAogICJzZXR0aW5ncy1wYXRoIjogIi9vcmcvZ25vbWUvc2hlbGwvZXh0ZW5zaW9ucy9Cb3dzZXIvIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLkJvd3NlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ibGlway9ib3dzZXItZ25vbWUiLAogICJ1dWlkIjogImJvd3Nlci1nbm9tZUBrcm9ub3NvdWwueHl6IiwKICAidmVyc2lvbiI6IDEyCn0="}, "40": {"version": "12", "sha256": "1kq8r2335m3if9r10yisz9w8k02bdpa96dqkfxh4lkfc4n0l7l60", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwuQm93c2VyIiwKICAiZGVzY3JpcHRpb24iOiAiQ3JlYXRlIHJ1bGVzIHRvIG9wZW4gc3BlY2lmaWMgd2Vic2l0ZXMgaW4gc3BlY2lmaWMgd2ViIGJyb3dzZXJzIGZvciBsaW5rcyBjbGlja2VkIGluIGFueSBhcHBsaWNhdGlvbiBvbiB5b3VyIGNvbXB1dGVyLiAoZW1haWxzLCBjaGF0IGV0YykiLAogICJleHRlbnNpb24taWQiOiAiYm93c2VyLWdub21lIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYm93c2VyLWdub21lIiwKICAibmFtZSI6ICJCb3dzZXIgR25vbWUgRXh0ZW5zaW9uIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImFkbWluQGtyb25vc291bC54eXoiLAogICJyZXNvdXJjZS1wYXRoIjogIi9vcmcva3Jvbm9zb3VsL0Jvd3Nlci8iLAogICJzZXR0aW5ncy1wYXRoIjogIi9vcmcvZ25vbWUvc2hlbGwvZXh0ZW5zaW9ucy9Cb3dzZXIvIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLkJvd3NlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ibGlway9ib3dzZXItZ25vbWUiLAogICJ1dWlkIjogImJvd3Nlci1nbm9tZUBrcm9ub3NvdWwueHl6IiwKICAidmVyc2lvbiI6IDEyCn0="}, "41": {"version": "12", "sha256": "1kq8r2335m3if9r10yisz9w8k02bdpa96dqkfxh4lkfc4n0l7l60", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwuQm93c2VyIiwKICAiZGVzY3JpcHRpb24iOiAiQ3JlYXRlIHJ1bGVzIHRvIG9wZW4gc3BlY2lmaWMgd2Vic2l0ZXMgaW4gc3BlY2lmaWMgd2ViIGJyb3dzZXJzIGZvciBsaW5rcyBjbGlja2VkIGluIGFueSBhcHBsaWNhdGlvbiBvbiB5b3VyIGNvbXB1dGVyLiAoZW1haWxzLCBjaGF0IGV0YykiLAogICJleHRlbnNpb24taWQiOiAiYm93c2VyLWdub21lIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYm93c2VyLWdub21lIiwKICAibmFtZSI6ICJCb3dzZXIgR25vbWUgRXh0ZW5zaW9uIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImFkbWluQGtyb25vc291bC54eXoiLAogICJyZXNvdXJjZS1wYXRoIjogIi9vcmcva3Jvbm9zb3VsL0Jvd3Nlci8iLAogICJzZXR0aW5ncy1wYXRoIjogIi9vcmcvZ25vbWUvc2hlbGwvZXh0ZW5zaW9ucy9Cb3dzZXIvIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLkJvd3NlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ibGlway9ib3dzZXItZ25vbWUiLAogICJ1dWlkIjogImJvd3Nlci1nbm9tZUBrcm9ub3NvdWwueHl6IiwKICAidmVyc2lvbiI6IDEyCn0="}, "42": {"version": "12", "sha256": "1kq8r2335m3if9r10yisz9w8k02bdpa96dqkfxh4lkfc4n0l7l60", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwuQm93c2VyIiwKICAiZGVzY3JpcHRpb24iOiAiQ3JlYXRlIHJ1bGVzIHRvIG9wZW4gc3BlY2lmaWMgd2Vic2l0ZXMgaW4gc3BlY2lmaWMgd2ViIGJyb3dzZXJzIGZvciBsaW5rcyBjbGlja2VkIGluIGFueSBhcHBsaWNhdGlvbiBvbiB5b3VyIGNvbXB1dGVyLiAoZW1haWxzLCBjaGF0IGV0YykiLAogICJleHRlbnNpb24taWQiOiAiYm93c2VyLWdub21lIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYm93c2VyLWdub21lIiwKICAibmFtZSI6ICJCb3dzZXIgR25vbWUgRXh0ZW5zaW9uIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImFkbWluQGtyb25vc291bC54eXoiLAogICJyZXNvdXJjZS1wYXRoIjogIi9vcmcva3Jvbm9zb3VsL0Jvd3Nlci8iLAogICJzZXR0aW5ncy1wYXRoIjogIi9vcmcvZ25vbWUvc2hlbGwvZXh0ZW5zaW9ucy9Cb3dzZXIvIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLkJvd3NlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ibGlway9ib3dzZXItZ25vbWUiLAogICJ1dWlkIjogImJvd3Nlci1nbm9tZUBrcm9ub3NvdWwueHl6IiwKICAidmVyc2lvbiI6IDEyCn0="}, "43": {"version": "12", "sha256": "1kq8r2335m3if9r10yisz9w8k02bdpa96dqkfxh4lkfc4n0l7l60", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwuQm93c2VyIiwKICAiZGVzY3JpcHRpb24iOiAiQ3JlYXRlIHJ1bGVzIHRvIG9wZW4gc3BlY2lmaWMgd2Vic2l0ZXMgaW4gc3BlY2lmaWMgd2ViIGJyb3dzZXJzIGZvciBsaW5rcyBjbGlja2VkIGluIGFueSBhcHBsaWNhdGlvbiBvbiB5b3VyIGNvbXB1dGVyLiAoZW1haWxzLCBjaGF0IGV0YykiLAogICJleHRlbnNpb24taWQiOiAiYm93c2VyLWdub21lIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYm93c2VyLWdub21lIiwKICAibmFtZSI6ICJCb3dzZXIgR25vbWUgRXh0ZW5zaW9uIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImFkbWluQGtyb25vc291bC54eXoiLAogICJyZXNvdXJjZS1wYXRoIjogIi9vcmcva3Jvbm9zb3VsL0Jvd3Nlci8iLAogICJzZXR0aW5ncy1wYXRoIjogIi9vcmcvZ25vbWUvc2hlbGwvZXh0ZW5zaW9ucy9Cb3dzZXIvIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLkJvd3NlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ibGlway9ib3dzZXItZ25vbWUiLAogICJ1dWlkIjogImJvd3Nlci1nbm9tZUBrcm9ub3NvdWwueHl6IiwKICAidmVyc2lvbiI6IDEyCn0="}}}
 , {"uuid": "ideapad@laurento.frittella", "name": "IdeaPad", "pname": "ideapad", "description": "Lenovo IdeaPad goodies for Gnome Shell\n\nAt the moment the extension only provides an easy and user-friendly way to toggle battery conservation mode available on Levono Ideapad laptops and visually get its current state.\n\nConfiguration needed! Please check the instruction on the homepage.", "link": "https://extensions.gnome.org/extension/2992/ideapad/", "shell_version_map": {"38": {"version": "11", "sha256": "0p0crv91n0lals20hkrvivj00yhsadkwy9s2bfdyzmk6slwa35rb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxlbm92byBJZGVhUGFkIGdvb2RpZXMgZm9yIEdub21lIFNoZWxsXG5cbkF0IHRoZSBtb21lbnQgdGhlIGV4dGVuc2lvbiBvbmx5IHByb3ZpZGVzIGFuIGVhc3kgYW5kIHVzZXItZnJpZW5kbHkgd2F5IHRvIHRvZ2dsZSBiYXR0ZXJ5IGNvbnNlcnZhdGlvbiBtb2RlIGF2YWlsYWJsZSBvbiBMZXZvbm8gSWRlYXBhZCBsYXB0b3BzIGFuZCB2aXN1YWxseSBnZXQgaXRzIGN1cnJlbnQgc3RhdGUuXG5cbkNvbmZpZ3VyYXRpb24gbmVlZGVkISBQbGVhc2UgY2hlY2sgdGhlIGluc3RydWN0aW9uIG9uIHRoZSBob21lcGFnZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpZGVhcGFkIiwKICAibmFtZSI6ICJJZGVhUGFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGF1cmVudG8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWlkZWFwYWQiLAogICJ1dWlkIjogImlkZWFwYWRAbGF1cmVudG8uZnJpdHRlbGxhIiwKICAidmVyc2lvbiI6IDExCn0="}, "40": {"version": "11", "sha256": "0p0crv91n0lals20hkrvivj00yhsadkwy9s2bfdyzmk6slwa35rb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxlbm92byBJZGVhUGFkIGdvb2RpZXMgZm9yIEdub21lIFNoZWxsXG5cbkF0IHRoZSBtb21lbnQgdGhlIGV4dGVuc2lvbiBvbmx5IHByb3ZpZGVzIGFuIGVhc3kgYW5kIHVzZXItZnJpZW5kbHkgd2F5IHRvIHRvZ2dsZSBiYXR0ZXJ5IGNvbnNlcnZhdGlvbiBtb2RlIGF2YWlsYWJsZSBvbiBMZXZvbm8gSWRlYXBhZCBsYXB0b3BzIGFuZCB2aXN1YWxseSBnZXQgaXRzIGN1cnJlbnQgc3RhdGUuXG5cbkNvbmZpZ3VyYXRpb24gbmVlZGVkISBQbGVhc2UgY2hlY2sgdGhlIGluc3RydWN0aW9uIG9uIHRoZSBob21lcGFnZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpZGVhcGFkIiwKICAibmFtZSI6ICJJZGVhUGFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGF1cmVudG8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWlkZWFwYWQiLAogICJ1dWlkIjogImlkZWFwYWRAbGF1cmVudG8uZnJpdHRlbGxhIiwKICAidmVyc2lvbiI6IDExCn0="}, "41": {"version": "11", "sha256": "0p0crv91n0lals20hkrvivj00yhsadkwy9s2bfdyzmk6slwa35rb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxlbm92byBJZGVhUGFkIGdvb2RpZXMgZm9yIEdub21lIFNoZWxsXG5cbkF0IHRoZSBtb21lbnQgdGhlIGV4dGVuc2lvbiBvbmx5IHByb3ZpZGVzIGFuIGVhc3kgYW5kIHVzZXItZnJpZW5kbHkgd2F5IHRvIHRvZ2dsZSBiYXR0ZXJ5IGNvbnNlcnZhdGlvbiBtb2RlIGF2YWlsYWJsZSBvbiBMZXZvbm8gSWRlYXBhZCBsYXB0b3BzIGFuZCB2aXN1YWxseSBnZXQgaXRzIGN1cnJlbnQgc3RhdGUuXG5cbkNvbmZpZ3VyYXRpb24gbmVlZGVkISBQbGVhc2UgY2hlY2sgdGhlIGluc3RydWN0aW9uIG9uIHRoZSBob21lcGFnZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpZGVhcGFkIiwKICAibmFtZSI6ICJJZGVhUGFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGF1cmVudG8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWlkZWFwYWQiLAogICJ1dWlkIjogImlkZWFwYWRAbGF1cmVudG8uZnJpdHRlbGxhIiwKICAidmVyc2lvbiI6IDExCn0="}, "42": {"version": "11", "sha256": "0p0crv91n0lals20hkrvivj00yhsadkwy9s2bfdyzmk6slwa35rb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxlbm92byBJZGVhUGFkIGdvb2RpZXMgZm9yIEdub21lIFNoZWxsXG5cbkF0IHRoZSBtb21lbnQgdGhlIGV4dGVuc2lvbiBvbmx5IHByb3ZpZGVzIGFuIGVhc3kgYW5kIHVzZXItZnJpZW5kbHkgd2F5IHRvIHRvZ2dsZSBiYXR0ZXJ5IGNvbnNlcnZhdGlvbiBtb2RlIGF2YWlsYWJsZSBvbiBMZXZvbm8gSWRlYXBhZCBsYXB0b3BzIGFuZCB2aXN1YWxseSBnZXQgaXRzIGN1cnJlbnQgc3RhdGUuXG5cbkNvbmZpZ3VyYXRpb24gbmVlZGVkISBQbGVhc2UgY2hlY2sgdGhlIGluc3RydWN0aW9uIG9uIHRoZSBob21lcGFnZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpZGVhcGFkIiwKICAibmFtZSI6ICJJZGVhUGFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGF1cmVudG8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWlkZWFwYWQiLAogICJ1dWlkIjogImlkZWFwYWRAbGF1cmVudG8uZnJpdHRlbGxhIiwKICAidmVyc2lvbiI6IDExCn0="}, "43": {"version": "12", "sha256": "1z9n3qfr129ismgzw7nwgmq0gwjwf7y7lzq7mcdw0dc227gkxww3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxlbm92byBJZGVhUGFkIGdvb2RpZXMgZm9yIEdub21lIFNoZWxsXG5cbkF0IHRoZSBtb21lbnQgdGhlIGV4dGVuc2lvbiBvbmx5IHByb3ZpZGVzIGFuIGVhc3kgYW5kIHVzZXItZnJpZW5kbHkgd2F5IHRvIHRvZ2dsZSBiYXR0ZXJ5IGNvbnNlcnZhdGlvbiBtb2RlIGF2YWlsYWJsZSBvbiBMZXZvbm8gSWRlYXBhZCBsYXB0b3BzIGFuZCB2aXN1YWxseSBnZXQgaXRzIGN1cnJlbnQgc3RhdGUuXG5cbkNvbmZpZ3VyYXRpb24gbmVlZGVkISBQbGVhc2UgY2hlY2sgdGhlIGluc3RydWN0aW9uIG9uIHRoZSBob21lcGFnZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpZGVhcGFkIiwKICAibmFtZSI6ICJJZGVhUGFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2xhdXJlbnRvL2dub21lLXNoZWxsLWV4dGVuc2lvbi1pZGVhcGFkIiwKICAidXVpZCI6ICJpZGVhcGFkQGxhdXJlbnRvLmZyaXR0ZWxsYSIsCiAgInZlcnNpb24iOiAxMgp9"}}}
 , {"uuid": "system-monitor-next@paradoxxx.zero.gmail.com", "name": "system-monitor-next", "pname": "system-monitor-next", "description": "Display system information in GNOME Shell status bar, such as memory, CPU, disk and battery usages, network rates…\n\nThis fork of paradoxxxzero/gnome-shell-system-monitor-applet is for packaging purposes only. This extension is built and updated continuously with the upstream master branch.\n\nThis is preferable for users on bleeding edge distributions that prefer not to wait for a stable release from the main repo. Of course, since we're releasing directly from master some instability is inevitable.\n\nIf you get an error after updating, try restarting Gnome Shell with Alt-F2 then 'r'.", "link": "https://extensions.gnome.org/extension/3010/system-monitor-next/", "shell_version_map": {"40": {"version": "42", "sha256": "0b0h18vifbzwqifcm8hk8cm66hpc1g9ijf96ib3pplsidlvx49b3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgc3lzdGVtIGluZm9ybWF0aW9uIGluIEdOT01FIFNoZWxsIHN0YXR1cyBiYXIsIHN1Y2ggYXMgbWVtb3J5LCBDUFUsIGRpc2sgYW5kIGJhdHRlcnkgdXNhZ2VzLCBuZXR3b3JrIHJhdGVzXHUyMDI2XG5cblRoaXMgZm9yayBvZiBwYXJhZG94eHh6ZXJvL2dub21lLXNoZWxsLXN5c3RlbS1tb25pdG9yLWFwcGxldCBpcyBmb3IgcGFja2FnaW5nIHB1cnBvc2VzIG9ubHkuIFRoaXMgZXh0ZW5zaW9uIGlzIGJ1aWx0IGFuZCB1cGRhdGVkIGNvbnRpbnVvdXNseSB3aXRoIHRoZSB1cHN0cmVhbSBtYXN0ZXIgYnJhbmNoLlxuXG5UaGlzIGlzIHByZWZlcmFibGUgZm9yIHVzZXJzIG9uIGJsZWVkaW5nIGVkZ2UgZGlzdHJpYnV0aW9ucyB0aGF0IHByZWZlciBub3QgdG8gd2FpdCBmb3IgYSBzdGFibGUgcmVsZWFzZSBmcm9tIHRoZSBtYWluIHJlcG8uIE9mIGNvdXJzZSwgc2luY2Ugd2UncmUgcmVsZWFzaW5nIGRpcmVjdGx5IGZyb20gbWFzdGVyIHNvbWUgaW5zdGFiaWxpdHkgaXMgaW5ldml0YWJsZS5cblxuSWYgeW91IGdldCBhbiBlcnJvciBhZnRlciB1cGRhdGluZywgdHJ5IHJlc3RhcnRpbmcgR25vbWUgU2hlbGwgd2l0aCBBbHQtRjIgdGhlbiAncicuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAic3lzdGVtLW1vbml0b3IiLAogICJuYW1lIjogInN5c3RlbS1tb25pdG9yLW5leHQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3lzdGVtLW1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tZ2FsZ3MvZ25vbWUtc2hlbGwtc3lzdGVtLW1vbml0b3ItYXBwbGV0IiwKICAidXVpZCI6ICJzeXN0ZW0tbW9uaXRvci1uZXh0QHBhcmFkb3h4eC56ZXJvLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA0Mgp9"}, "41": {"version": "42", "sha256": "0b0h18vifbzwqifcm8hk8cm66hpc1g9ijf96ib3pplsidlvx49b3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgc3lzdGVtIGluZm9ybWF0aW9uIGluIEdOT01FIFNoZWxsIHN0YXR1cyBiYXIsIHN1Y2ggYXMgbWVtb3J5LCBDUFUsIGRpc2sgYW5kIGJhdHRlcnkgdXNhZ2VzLCBuZXR3b3JrIHJhdGVzXHUyMDI2XG5cblRoaXMgZm9yayBvZiBwYXJhZG94eHh6ZXJvL2dub21lLXNoZWxsLXN5c3RlbS1tb25pdG9yLWFwcGxldCBpcyBmb3IgcGFja2FnaW5nIHB1cnBvc2VzIG9ubHkuIFRoaXMgZXh0ZW5zaW9uIGlzIGJ1aWx0IGFuZCB1cGRhdGVkIGNvbnRpbnVvdXNseSB3aXRoIHRoZSB1cHN0cmVhbSBtYXN0ZXIgYnJhbmNoLlxuXG5UaGlzIGlzIHByZWZlcmFibGUgZm9yIHVzZXJzIG9uIGJsZWVkaW5nIGVkZ2UgZGlzdHJpYnV0aW9ucyB0aGF0IHByZWZlciBub3QgdG8gd2FpdCBmb3IgYSBzdGFibGUgcmVsZWFzZSBmcm9tIHRoZSBtYWluIHJlcG8uIE9mIGNvdXJzZSwgc2luY2Ugd2UncmUgcmVsZWFzaW5nIGRpcmVjdGx5IGZyb20gbWFzdGVyIHNvbWUgaW5zdGFiaWxpdHkgaXMgaW5ldml0YWJsZS5cblxuSWYgeW91IGdldCBhbiBlcnJvciBhZnRlciB1cGRhdGluZywgdHJ5IHJlc3RhcnRpbmcgR25vbWUgU2hlbGwgd2l0aCBBbHQtRjIgdGhlbiAncicuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAic3lzdGVtLW1vbml0b3IiLAogICJuYW1lIjogInN5c3RlbS1tb25pdG9yLW5leHQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3lzdGVtLW1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tZ2FsZ3MvZ25vbWUtc2hlbGwtc3lzdGVtLW1vbml0b3ItYXBwbGV0IiwKICAidXVpZCI6ICJzeXN0ZW0tbW9uaXRvci1uZXh0QHBhcmFkb3h4eC56ZXJvLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA0Mgp9"}, "42": {"version": "42", "sha256": "0b0h18vifbzwqifcm8hk8cm66hpc1g9ijf96ib3pplsidlvx49b3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgc3lzdGVtIGluZm9ybWF0aW9uIGluIEdOT01FIFNoZWxsIHN0YXR1cyBiYXIsIHN1Y2ggYXMgbWVtb3J5LCBDUFUsIGRpc2sgYW5kIGJhdHRlcnkgdXNhZ2VzLCBuZXR3b3JrIHJhdGVzXHUyMDI2XG5cblRoaXMgZm9yayBvZiBwYXJhZG94eHh6ZXJvL2dub21lLXNoZWxsLXN5c3RlbS1tb25pdG9yLWFwcGxldCBpcyBmb3IgcGFja2FnaW5nIHB1cnBvc2VzIG9ubHkuIFRoaXMgZXh0ZW5zaW9uIGlzIGJ1aWx0IGFuZCB1cGRhdGVkIGNvbnRpbnVvdXNseSB3aXRoIHRoZSB1cHN0cmVhbSBtYXN0ZXIgYnJhbmNoLlxuXG5UaGlzIGlzIHByZWZlcmFibGUgZm9yIHVzZXJzIG9uIGJsZWVkaW5nIGVkZ2UgZGlzdHJpYnV0aW9ucyB0aGF0IHByZWZlciBub3QgdG8gd2FpdCBmb3IgYSBzdGFibGUgcmVsZWFzZSBmcm9tIHRoZSBtYWluIHJlcG8uIE9mIGNvdXJzZSwgc2luY2Ugd2UncmUgcmVsZWFzaW5nIGRpcmVjdGx5IGZyb20gbWFzdGVyIHNvbWUgaW5zdGFiaWxpdHkgaXMgaW5ldml0YWJsZS5cblxuSWYgeW91IGdldCBhbiBlcnJvciBhZnRlciB1cGRhdGluZywgdHJ5IHJlc3RhcnRpbmcgR25vbWUgU2hlbGwgd2l0aCBBbHQtRjIgdGhlbiAncicuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAic3lzdGVtLW1vbml0b3IiLAogICJuYW1lIjogInN5c3RlbS1tb25pdG9yLW5leHQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3lzdGVtLW1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tZ2FsZ3MvZ25vbWUtc2hlbGwtc3lzdGVtLW1vbml0b3ItYXBwbGV0IiwKICAidXVpZCI6ICJzeXN0ZW0tbW9uaXRvci1uZXh0QHBhcmFkb3h4eC56ZXJvLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA0Mgp9"}}}
@@ -325,11 +325,11 @@
 , {"uuid": "vlan-switcher@darcato.github.io", "name": "VLAN Switcher", "pname": "vlan-switcher", "description": "Activate and deactivate VLAN connections from the system panel.", "link": "https://extensions.gnome.org/extension/3061/vlan-switcher/", "shell_version_map": {"38": {"version": "4", "sha256": "03axq6rikn71d02qjwkb12igxv05y742i7dva3b8n87mjdzr5qc2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFjdGl2YXRlIGFuZCBkZWFjdGl2YXRlIFZMQU4gY29ubmVjdGlvbnMgZnJvbSB0aGUgc3lzdGVtIHBhbmVsLiIsCiAgIm5hbWUiOiAiVkxBTiBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGFyY2F0by9nbm9tZS12bGFuLXN3aXRjaGVyIiwKICAidXVpZCI6ICJ2bGFuLXN3aXRjaGVyQGRhcmNhdG8uZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "4", "sha256": "03axq6rikn71d02qjwkb12igxv05y742i7dva3b8n87mjdzr5qc2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFjdGl2YXRlIGFuZCBkZWFjdGl2YXRlIFZMQU4gY29ubmVjdGlvbnMgZnJvbSB0aGUgc3lzdGVtIHBhbmVsLiIsCiAgIm5hbWUiOiAiVkxBTiBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGFyY2F0by9nbm9tZS12bGFuLXN3aXRjaGVyIiwKICAidXVpZCI6ICJ2bGFuLXN3aXRjaGVyQGRhcmNhdG8uZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "42": {"version": "4", "sha256": "03axq6rikn71d02qjwkb12igxv05y742i7dva3b8n87mjdzr5qc2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFjdGl2YXRlIGFuZCBkZWFjdGl2YXRlIFZMQU4gY29ubmVjdGlvbnMgZnJvbSB0aGUgc3lzdGVtIHBhbmVsLiIsCiAgIm5hbWUiOiAiVkxBTiBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGFyY2F0by9nbm9tZS12bGFuLXN3aXRjaGVyIiwKICAidXVpZCI6ICJ2bGFuLXN3aXRjaGVyQGRhcmNhdG8uZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "ssss@tu.berry", "name": "Simple Subscriber", "pname": "ss-subscriber", "description": "Simple shadowsocks subscriber (SSD only), yet another proxy switcher for GNOME Shell\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/3073/ss-subscriber/", "shell_version_map": {"38": {"version": "18", "sha256": "03gryl577559h2l1s3adi5gxa8ivp454p4lq7jng1db6smlpj95a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBzaGFkb3dzb2NrcyBzdWJzY3JpYmVyIChTU0Qgb25seSksIHlldCBhbm90aGVyIHByb3h5IHN3aXRjaGVyIGZvciBHTk9NRSBTaGVsbFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzcy1zdWJzY3JpYmVyIiwKICAibmFtZSI6ICJTaW1wbGUgU3Vic2NyaWJlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zcy1zdWJzY3JpYmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9zcy1zdWJzY3JpYmVyIiwKICAidXVpZCI6ICJzc3NzQHR1LmJlcnJ5IiwKICAidmVyc2lvbiI6IDE4Cn0="}, "40": {"version": "20", "sha256": "075d00xsbmr4qs554p2anddhkmgcx7xd4nn8prgmf4wpyfk87552", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBzaGFkb3dzb2NrcyBzdWJzY3JpYmVyIChTU0Qgb25seSksIHlldCBhbm90aGVyIHByb3h5IHN3aXRjaGVyIGZvciBHTk9NRSBTaGVsbFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzcy1zdWJzY3JpYmVyIiwKICAibmFtZSI6ICJTaW1wbGUgU3Vic2NyaWJlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zcy1zdWJzY3JpYmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvc3Mtc3Vic2NyaWJlciIsCiAgInV1aWQiOiAic3Nzc0B0dS5iZXJyeSIsCiAgInZlcnNpb24iOiAyMAp9"}, "41": {"version": "21", "sha256": "06ybzk62fbi88iqssl4pw0amsbcp09pnw99wxanh2jlvaakqgday", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBzaGFkb3dzb2NrcyBzdWJzY3JpYmVyIChTU0Qgb25seSksIHlldCBhbm90aGVyIHByb3h5IHN3aXRjaGVyIGZvciBHTk9NRSBTaGVsbFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tc3Mtc3Vic2NyaWJlciIsCiAgIm5hbWUiOiAiU2ltcGxlIFN1YnNjcmliZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3Mtc3Vic2NyaWJlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L3NzLXN1YnNjcmliZXIiLAogICJ1dWlkIjogInNzc3NAdHUuYmVycnkiLAogICJ2ZXJzaW9uIjogMjEKfQ=="}, "42": {"version": "23", "sha256": "078111h68zv03n6i4yw9jgdn9idxb91qpami64xl5g1rc75sc91w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBzaGFkb3dzb2NrcyBzdWJzY3JpYmVyIChTU0Qgb25seSksIHlldCBhbm90aGVyIHByb3h5IHN3aXRjaGVyIGZvciBHTk9NRSBTaGVsbFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tc3Mtc3Vic2NyaWJlciIsCiAgIm5hbWUiOiAiU2ltcGxlIFN1YnNjcmliZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3Mtc3Vic2NyaWJlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L3NzLXN1YnNjcmliZXIiLAogICJ1dWlkIjogInNzc3NAdHUuYmVycnkiLAogICJ2ZXJzaW9uIjogMjMKfQ=="}, "43": {"version": "24", "sha256": "170i3w64gwd12z4cx9h6dlxishaf867sv6rg7zq12x217qy8wz3i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBzaGFkb3dzb2NrcyBzdWJzY3JpYmVyIChTU0Qgb25seSksIHlldCBhbm90aGVyIHByb3h5IHN3aXRjaGVyIGZvciBHTk9NRSBTaGVsbFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tc3Mtc3Vic2NyaWJlciIsCiAgIm5hbWUiOiAiU2ltcGxlIFN1YnNjcmliZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3Mtc3Vic2NyaWJlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L3NzLXN1YnNjcmliZXIiLAogICJ1dWlkIjogInNzc3NAdHUuYmVycnkiLAogICJ2ZXJzaW9uIjogMjQKfQ=="}}}
 , {"uuid": "extension-list@tu.berry", "name": "Extension List", "pname": "extension-list", "description": "Simple GNOME Shell extension manager in the top panel\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/3088/extension-list/", "shell_version_map": {"38": {"version": "25", "sha256": "0cwabswbb5p0z156488ag095h558hf541650vfnjgw4nas7v2ccx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBHTk9NRSBTaGVsbCBleHRlbnNpb24gbWFuYWdlciBpbiB0aGUgdG9wIHBhbmVsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImV4dGVuc2lvbi1saXN0IiwKICAibmFtZSI6ICJFeHRlbnNpb24gTGlzdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5leHRlbnNpb24tbGlzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvZXh0ZW5zaW9uLWxpc3QiLAogICJ1dWlkIjogImV4dGVuc2lvbi1saXN0QHR1LmJlcnJ5IiwKICAidmVyc2lvbiI6IDI1Cn0="}, "40": {"version": "27", "sha256": "0m13qzzbbx5rnq8a9xn09nvr3dy9zqkp8y9529y12250wyjafl1p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBHTk9NRSBTaGVsbCBleHRlbnNpb24gbWFuYWdlciBpbiB0aGUgdG9wIHBhbmVsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImV4dGVuc2lvbi1saXN0IiwKICAibmFtZSI6ICJFeHRlbnNpb24gTGlzdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5leHRlbnNpb24tbGlzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2V4dGVuc2lvbi1saXN0IiwKICAidXVpZCI6ICJleHRlbnNpb24tbGlzdEB0dS5iZXJyeSIsCiAgInZlcnNpb24iOiAyNwp9"}, "41": {"version": "29", "sha256": "1yl2b9phvrgsdpkwqjfqpaqi2xcj5bcd4zabqkrfwngqsg17s85j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBHTk9NRSBTaGVsbCBleHRlbnNpb24gbWFuYWdlciBpbiB0aGUgdG9wIHBhbmVsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1leHRlbnNpb24tbGlzdCIsCiAgIm5hbWUiOiAiRXh0ZW5zaW9uIExpc3QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXh0ZW5zaW9uLWxpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9leHRlbnNpb24tbGlzdCIsCiAgInV1aWQiOiAiZXh0ZW5zaW9uLWxpc3RAdHUuYmVycnkiLAogICJ2ZXJzaW9uIjogMjkKfQ=="}, "42": {"version": "30", "sha256": "1hnidb1f6cawfhmkql4y8kz3rq0ibqcfk678yz1n12l2gp3vvvz3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBHTk9NRSBTaGVsbCBleHRlbnNpb24gbWFuYWdlciBpbiB0aGUgdG9wIHBhbmVsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1leHRlbnNpb24tbGlzdCIsCiAgIm5hbWUiOiAiRXh0ZW5zaW9uIExpc3QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXh0ZW5zaW9uLWxpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9leHRlbnNpb24tbGlzdCIsCiAgInV1aWQiOiAiZXh0ZW5zaW9uLWxpc3RAdHUuYmVycnkiLAogICJ2ZXJzaW9uIjogMzAKfQ=="}, "43": {"version": "32", "sha256": "1iq44f1mymasly9pnwx6rcyagnqxydaciwzb158f4kwny4hmbz6l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBHTk9NRSBTaGVsbCBleHRlbnNpb24gbWFuYWdlciBpbiB0aGUgdG9wIHBhbmVsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1leHRlbnNpb24tbGlzdCIsCiAgIm5hbWUiOiAiRXh0ZW5zaW9uIExpc3QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXh0ZW5zaW9uLWxpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9leHRlbnNpb24tbGlzdCIsCiAgInV1aWQiOiAiZXh0ZW5zaW9uLWxpc3RAdHUuYmVycnkiLAogICJ2ZXJzaW9uIjogMzIKfQ=="}}}
-, {"uuid": "MaximizeToEmptyWorkspace-extension@kaisersite.de", "name": "Maximize To Empty Workspace", "pname": "maximize-to-empty-workspace", "description": "New and maximized windows will be moved to empty workspaces.\nSupports multiple monitors.", "link": "https://extensions.gnome.org/extension/3100/maximize-to-empty-workspace/", "shell_version_map": {"38": {"version": "11", "sha256": "1cbbdgbgnara45152byr5yx52cbsfd48dpkick93ih2plk1gbm3l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldyBhbmQgbWF4aW1pemVkIHdpbmRvd3Mgd2lsbCBiZSBtb3ZlZCB0byBlbXB0eSB3b3Jrc3BhY2VzLlxuU3VwcG9ydHMgbXVsdGlwbGUgbW9uaXRvcnMuIiwKICAibmFtZSI6ICJNYXhpbWl6ZSBUbyBFbXB0eSBXb3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rYWlzZXJhY20vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW1heGltaXplLXRvLWVtcHR5LXdvcmtzcGFjZSIsCiAgInV1aWQiOiAiTWF4aW1pemVUb0VtcHR5V29ya3NwYWNlLWV4dGVuc2lvbkBrYWlzZXJzaXRlLmRlIiwKICAidmVyc2lvbiI6IDExCn0="}, "40": {"version": "11", "sha256": "1cbbdgbgnara45152byr5yx52cbsfd48dpkick93ih2plk1gbm3l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldyBhbmQgbWF4aW1pemVkIHdpbmRvd3Mgd2lsbCBiZSBtb3ZlZCB0byBlbXB0eSB3b3Jrc3BhY2VzLlxuU3VwcG9ydHMgbXVsdGlwbGUgbW9uaXRvcnMuIiwKICAibmFtZSI6ICJNYXhpbWl6ZSBUbyBFbXB0eSBXb3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rYWlzZXJhY20vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW1heGltaXplLXRvLWVtcHR5LXdvcmtzcGFjZSIsCiAgInV1aWQiOiAiTWF4aW1pemVUb0VtcHR5V29ya3NwYWNlLWV4dGVuc2lvbkBrYWlzZXJzaXRlLmRlIiwKICAidmVyc2lvbiI6IDExCn0="}, "41": {"version": "11", "sha256": "1cbbdgbgnara45152byr5yx52cbsfd48dpkick93ih2plk1gbm3l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldyBhbmQgbWF4aW1pemVkIHdpbmRvd3Mgd2lsbCBiZSBtb3ZlZCB0byBlbXB0eSB3b3Jrc3BhY2VzLlxuU3VwcG9ydHMgbXVsdGlwbGUgbW9uaXRvcnMuIiwKICAibmFtZSI6ICJNYXhpbWl6ZSBUbyBFbXB0eSBXb3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rYWlzZXJhY20vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW1heGltaXplLXRvLWVtcHR5LXdvcmtzcGFjZSIsCiAgInV1aWQiOiAiTWF4aW1pemVUb0VtcHR5V29ya3NwYWNlLWV4dGVuc2lvbkBrYWlzZXJzaXRlLmRlIiwKICAidmVyc2lvbiI6IDExCn0="}, "42": {"version": "11", "sha256": "1cbbdgbgnara45152byr5yx52cbsfd48dpkick93ih2plk1gbm3l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldyBhbmQgbWF4aW1pemVkIHdpbmRvd3Mgd2lsbCBiZSBtb3ZlZCB0byBlbXB0eSB3b3Jrc3BhY2VzLlxuU3VwcG9ydHMgbXVsdGlwbGUgbW9uaXRvcnMuIiwKICAibmFtZSI6ICJNYXhpbWl6ZSBUbyBFbXB0eSBXb3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rYWlzZXJhY20vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW1heGltaXplLXRvLWVtcHR5LXdvcmtzcGFjZSIsCiAgInV1aWQiOiAiTWF4aW1pemVUb0VtcHR5V29ya3NwYWNlLWV4dGVuc2lvbkBrYWlzZXJzaXRlLmRlIiwKICAidmVyc2lvbiI6IDExCn0="}}}
+, {"uuid": "MaximizeToEmptyWorkspace-extension@kaisersite.de", "name": "Maximize To Empty Workspace", "pname": "maximize-to-empty-workspace", "description": "New and maximized windows will be moved to empty workspaces.\nSupports multiple monitors.", "link": "https://extensions.gnome.org/extension/3100/maximize-to-empty-workspace/", "shell_version_map": {"38": {"version": "12", "sha256": "13srjh0zhhc0v3sqsa2drksy8p0b3whfszbrwvjp1qgjd8k1rn9f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldyBhbmQgbWF4aW1pemVkIHdpbmRvd3Mgd2lsbCBiZSBtb3ZlZCB0byBlbXB0eSB3b3Jrc3BhY2VzLlxuU3VwcG9ydHMgbXVsdGlwbGUgbW9uaXRvcnMuIiwKICAibmFtZSI6ICJNYXhpbWl6ZSBUbyBFbXB0eSBXb3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2Fpc2VyYWNtL2dub21lLXNoZWxsLWV4dGVuc2lvbi1tYXhpbWl6ZS10by1lbXB0eS13b3Jrc3BhY2UiLAogICJ1dWlkIjogIk1heGltaXplVG9FbXB0eVdvcmtzcGFjZS1leHRlbnNpb25Aa2Fpc2Vyc2l0ZS5kZSIsCiAgInZlcnNpb24iOiAxMgp9"}, "40": {"version": "12", "sha256": "13srjh0zhhc0v3sqsa2drksy8p0b3whfszbrwvjp1qgjd8k1rn9f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldyBhbmQgbWF4aW1pemVkIHdpbmRvd3Mgd2lsbCBiZSBtb3ZlZCB0byBlbXB0eSB3b3Jrc3BhY2VzLlxuU3VwcG9ydHMgbXVsdGlwbGUgbW9uaXRvcnMuIiwKICAibmFtZSI6ICJNYXhpbWl6ZSBUbyBFbXB0eSBXb3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2Fpc2VyYWNtL2dub21lLXNoZWxsLWV4dGVuc2lvbi1tYXhpbWl6ZS10by1lbXB0eS13b3Jrc3BhY2UiLAogICJ1dWlkIjogIk1heGltaXplVG9FbXB0eVdvcmtzcGFjZS1leHRlbnNpb25Aa2Fpc2Vyc2l0ZS5kZSIsCiAgInZlcnNpb24iOiAxMgp9"}, "41": {"version": "12", "sha256": "13srjh0zhhc0v3sqsa2drksy8p0b3whfszbrwvjp1qgjd8k1rn9f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldyBhbmQgbWF4aW1pemVkIHdpbmRvd3Mgd2lsbCBiZSBtb3ZlZCB0byBlbXB0eSB3b3Jrc3BhY2VzLlxuU3VwcG9ydHMgbXVsdGlwbGUgbW9uaXRvcnMuIiwKICAibmFtZSI6ICJNYXhpbWl6ZSBUbyBFbXB0eSBXb3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2Fpc2VyYWNtL2dub21lLXNoZWxsLWV4dGVuc2lvbi1tYXhpbWl6ZS10by1lbXB0eS13b3Jrc3BhY2UiLAogICJ1dWlkIjogIk1heGltaXplVG9FbXB0eVdvcmtzcGFjZS1leHRlbnNpb25Aa2Fpc2Vyc2l0ZS5kZSIsCiAgInZlcnNpb24iOiAxMgp9"}, "42": {"version": "12", "sha256": "13srjh0zhhc0v3sqsa2drksy8p0b3whfszbrwvjp1qgjd8k1rn9f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldyBhbmQgbWF4aW1pemVkIHdpbmRvd3Mgd2lsbCBiZSBtb3ZlZCB0byBlbXB0eSB3b3Jrc3BhY2VzLlxuU3VwcG9ydHMgbXVsdGlwbGUgbW9uaXRvcnMuIiwKICAibmFtZSI6ICJNYXhpbWl6ZSBUbyBFbXB0eSBXb3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2Fpc2VyYWNtL2dub21lLXNoZWxsLWV4dGVuc2lvbi1tYXhpbWl6ZS10by1lbXB0eS13b3Jrc3BhY2UiLAogICJ1dWlkIjogIk1heGltaXplVG9FbXB0eVdvcmtzcGFjZS1leHRlbnNpb25Aa2Fpc2Vyc2l0ZS5kZSIsCiAgInZlcnNpb24iOiAxMgp9"}, "43": {"version": "12", "sha256": "13srjh0zhhc0v3sqsa2drksy8p0b3whfszbrwvjp1qgjd8k1rn9f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldyBhbmQgbWF4aW1pemVkIHdpbmRvd3Mgd2lsbCBiZSBtb3ZlZCB0byBlbXB0eSB3b3Jrc3BhY2VzLlxuU3VwcG9ydHMgbXVsdGlwbGUgbW9uaXRvcnMuIiwKICAibmFtZSI6ICJNYXhpbWl6ZSBUbyBFbXB0eSBXb3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2Fpc2VyYWNtL2dub21lLXNoZWxsLWV4dGVuc2lvbi1tYXhpbWl6ZS10by1lbXB0eS13b3Jrc3BhY2UiLAogICJ1dWlkIjogIk1heGltaXplVG9FbXB0eVdvcmtzcGFjZS1leHRlbnNpb25Aa2Fpc2Vyc2l0ZS5kZSIsCiAgInZlcnNpb24iOiAxMgp9"}}}
 , {"uuid": "eye-extended@als.kz", "name": "Eye and Mouse Extended", "pname": "eye-extended", "description": "Adds an eye to the indicator bar that follows your cursor \nYou can also display the mouse indicator, perhaps it will help you with the problem of displaying the mouse cursor in Skype", "link": "https://extensions.gnome.org/extension/3139/eye-extended/", "shell_version_map": {"38": {"version": "10", "sha256": "15d8w18s0chk5w0b9bfm9xyhnlrwmgkf833yg144wxc1l5c23lrz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYW4gZXllIHRvIHRoZSBpbmRpY2F0b3IgYmFyIHRoYXQgZm9sbG93cyB5b3VyIGN1cnNvciBcbllvdSBjYW4gYWxzbyBkaXNwbGF5IHRoZSBtb3VzZSBpbmRpY2F0b3IsIHBlcmhhcHMgaXQgd2lsbCBoZWxwIHlvdSB3aXRoIHRoZSBwcm9ibGVtIG9mIGRpc3BsYXlpbmcgdGhlIG1vdXNlIGN1cnNvciBpbiBTa3lwZSIsCiAgImdldHRleHQtZG9tYWluIjogIkV5ZUV4dGVuZGVkIiwKICAibmFtZSI6ICJFeWUgYW5kIE1vdXNlIEV4dGVuZGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogImt6LmFscy5leWUtZXh0ZW5kZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYuMCIsCiAgICAiMy4zOC4wIiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYWxleGV5bG92Y2hpa292L2V5ZS1leHRlbmRlZC1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogImV5ZS1leHRlbmRlZEBhbHMua3oiLAogICJ2ZXJzaW9uIjogMTAKfQ=="}, "40": {"version": "10", "sha256": "15d8w18s0chk5w0b9bfm9xyhnlrwmgkf833yg144wxc1l5c23lrz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYW4gZXllIHRvIHRoZSBpbmRpY2F0b3IgYmFyIHRoYXQgZm9sbG93cyB5b3VyIGN1cnNvciBcbllvdSBjYW4gYWxzbyBkaXNwbGF5IHRoZSBtb3VzZSBpbmRpY2F0b3IsIHBlcmhhcHMgaXQgd2lsbCBoZWxwIHlvdSB3aXRoIHRoZSBwcm9ibGVtIG9mIGRpc3BsYXlpbmcgdGhlIG1vdXNlIGN1cnNvciBpbiBTa3lwZSIsCiAgImdldHRleHQtZG9tYWluIjogIkV5ZUV4dGVuZGVkIiwKICAibmFtZSI6ICJFeWUgYW5kIE1vdXNlIEV4dGVuZGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogImt6LmFscy5leWUtZXh0ZW5kZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYuMCIsCiAgICAiMy4zOC4wIiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYWxleGV5bG92Y2hpa292L2V5ZS1leHRlbmRlZC1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogImV5ZS1leHRlbmRlZEBhbHMua3oiLAogICJ2ZXJzaW9uIjogMTAKfQ=="}, "41": {"version": "10", "sha256": "15d8w18s0chk5w0b9bfm9xyhnlrwmgkf833yg144wxc1l5c23lrz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYW4gZXllIHRvIHRoZSBpbmRpY2F0b3IgYmFyIHRoYXQgZm9sbG93cyB5b3VyIGN1cnNvciBcbllvdSBjYW4gYWxzbyBkaXNwbGF5IHRoZSBtb3VzZSBpbmRpY2F0b3IsIHBlcmhhcHMgaXQgd2lsbCBoZWxwIHlvdSB3aXRoIHRoZSBwcm9ibGVtIG9mIGRpc3BsYXlpbmcgdGhlIG1vdXNlIGN1cnNvciBpbiBTa3lwZSIsCiAgImdldHRleHQtZG9tYWluIjogIkV5ZUV4dGVuZGVkIiwKICAibmFtZSI6ICJFeWUgYW5kIE1vdXNlIEV4dGVuZGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogImt6LmFscy5leWUtZXh0ZW5kZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYuMCIsCiAgICAiMy4zOC4wIiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYWxleGV5bG92Y2hpa292L2V5ZS1leHRlbmRlZC1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogImV5ZS1leHRlbmRlZEBhbHMua3oiLAogICJ2ZXJzaW9uIjogMTAKfQ=="}, "42": {"version": "10", "sha256": "15d8w18s0chk5w0b9bfm9xyhnlrwmgkf833yg144wxc1l5c23lrz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYW4gZXllIHRvIHRoZSBpbmRpY2F0b3IgYmFyIHRoYXQgZm9sbG93cyB5b3VyIGN1cnNvciBcbllvdSBjYW4gYWxzbyBkaXNwbGF5IHRoZSBtb3VzZSBpbmRpY2F0b3IsIHBlcmhhcHMgaXQgd2lsbCBoZWxwIHlvdSB3aXRoIHRoZSBwcm9ibGVtIG9mIGRpc3BsYXlpbmcgdGhlIG1vdXNlIGN1cnNvciBpbiBTa3lwZSIsCiAgImdldHRleHQtZG9tYWluIjogIkV5ZUV4dGVuZGVkIiwKICAibmFtZSI6ICJFeWUgYW5kIE1vdXNlIEV4dGVuZGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogImt6LmFscy5leWUtZXh0ZW5kZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYuMCIsCiAgICAiMy4zOC4wIiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYWxleGV5bG92Y2hpa292L2V5ZS1leHRlbmRlZC1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogImV5ZS1leHRlbmRlZEBhbHMua3oiLAogICJ2ZXJzaW9uIjogMTAKfQ=="}}}
 , {"uuid": "wireguard-indicator@gregos.me", "name": "Wireguard Indicator", "pname": "wireguard-indicator", "description": "Enable, disable, and view details of Wireguard.\nDeveloped by Gregos-Winus.", "link": "https://extensions.gnome.org/extension/3160/wireguard-indicator/", "shell_version_map": {"38": {"version": "4", "sha256": "1r12pw550v3h5f6zxl0psnsx031b5c7sj374f9h078lwqs85wb8w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSwgZGlzYWJsZSwgYW5kIHZpZXcgZGV0YWlscyBvZiBXaXJlZ3VhcmQuXG5EZXZlbG9wZWQgYnkgR3JlZ29zLVdpbnVzLiIsCiAgIm5hbWUiOiAiV2lyZWd1YXJkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ3aXJlZ3VhcmQtaW5kaWNhdG9yQGdyZWdvcy5tZSIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "4", "sha256": "1r12pw550v3h5f6zxl0psnsx031b5c7sj374f9h078lwqs85wb8w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSwgZGlzYWJsZSwgYW5kIHZpZXcgZGV0YWlscyBvZiBXaXJlZ3VhcmQuXG5EZXZlbG9wZWQgYnkgR3JlZ29zLVdpbnVzLiIsCiAgIm5hbWUiOiAiV2lyZWd1YXJkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ3aXJlZ3VhcmQtaW5kaWNhdG9yQGdyZWdvcy5tZSIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "1r12pw550v3h5f6zxl0psnsx031b5c7sj374f9h078lwqs85wb8w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSwgZGlzYWJsZSwgYW5kIHZpZXcgZGV0YWlscyBvZiBXaXJlZ3VhcmQuXG5EZXZlbG9wZWQgYnkgR3JlZ29zLVdpbnVzLiIsCiAgIm5hbWUiOiAiV2lyZWd1YXJkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ3aXJlZ3VhcmQtaW5kaWNhdG9yQGdyZWdvcy5tZSIsCiAgInZlcnNpb24iOiA0Cn0="}, "42": {"version": "4", "sha256": "1r12pw550v3h5f6zxl0psnsx031b5c7sj374f9h078lwqs85wb8w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSwgZGlzYWJsZSwgYW5kIHZpZXcgZGV0YWlscyBvZiBXaXJlZ3VhcmQuXG5EZXZlbG9wZWQgYnkgR3JlZ29zLVdpbnVzLiIsCiAgIm5hbWUiOiAiV2lyZWd1YXJkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ3aXJlZ3VhcmQtaW5kaWNhdG9yQGdyZWdvcy5tZSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "no_activities@yaya.cout", "name": "No activities button", "pname": "no-activities-button", "description": "Hide the activities button", "link": "https://extensions.gnome.org/extension/3184/no-activities-button/", "shell_version_map": {"38": {"version": "3", "sha256": "0l48wr4yx0n86qmbkc3jdxjvnaf22r8glz1q1fiqkz06c4sxsqr2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdGhlIGFjdGl2aXRpZXMgYnV0dG9uIiwKICAibmFtZSI6ICJObyBhY3Rpdml0aWVzIGJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJub19hY3Rpdml0aWVzQHlheWEuY291dCIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "3", "sha256": "0l48wr4yx0n86qmbkc3jdxjvnaf22r8glz1q1fiqkz06c4sxsqr2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdGhlIGFjdGl2aXRpZXMgYnV0dG9uIiwKICAibmFtZSI6ICJObyBhY3Rpdml0aWVzIGJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJub19hY3Rpdml0aWVzQHlheWEuY291dCIsCiAgInZlcnNpb24iOiAzCn0="}, "41": {"version": "3", "sha256": "0l48wr4yx0n86qmbkc3jdxjvnaf22r8glz1q1fiqkz06c4sxsqr2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdGhlIGFjdGl2aXRpZXMgYnV0dG9uIiwKICAibmFtZSI6ICJObyBhY3Rpdml0aWVzIGJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJub19hY3Rpdml0aWVzQHlheWEuY291dCIsCiAgInZlcnNpb24iOiAzCn0="}, "42": {"version": "3", "sha256": "0l48wr4yx0n86qmbkc3jdxjvnaf22r8glz1q1fiqkz06c4sxsqr2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdGhlIGFjdGl2aXRpZXMgYnV0dG9uIiwKICAibmFtZSI6ICJObyBhY3Rpdml0aWVzIGJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJub19hY3Rpdml0aWVzQHlheWEuY291dCIsCiAgInZlcnNpb24iOiAzCn0="}}}
-, {"uuid": "blur-my-shell@aunetx", "name": "Blur my Shell", "pname": "blur-my-shell", "description": "Adds a blur look to different parts of the GNOME Shell, including the top panel, dash and overview.\n\nYou can support my work by sponsoring me on:\n- github: https://github.com/sponsors/aunetx\n- ko-fi: https://ko-fi.com/aunetx\n\nNote: if the extension shows an error after updating, please make sure to restart your session to see if it persists. This is due to a bug in gnome shell, which I can't fix by myself.", "link": "https://extensions.gnome.org/extension/3193/blur-my-shell/", "shell_version_map": {"38": {"version": "22", "sha256": "1ss5vhzjkp2bpllxpjlk1l2i8n7p4xjpzkn0q6jg3gd472kkanfx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Zb3UgY2FuIHN1cHBvcnQgbXkgd29yayBieSBzcG9uc29yaW5nIG1lIG9uOlxuLSBnaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9zcG9uc29ycy9hdW5ldHhcbi0ga28tZmk6IGh0dHBzOi8va28tZmkuY29tL2F1bmV0eFxuXG5Ob3RlOiBpZiB0aGUgZXh0ZW5zaW9uIHNob3dzIGFuIGVycm9yIGFmdGVyIHVwZGF0aW5nLCBwbGVhc2UgbWFrZSBzdXJlIHRvIHJlc3RhcnQgeW91ciBzZXNzaW9uIHRvIHNlZSBpZiBpdCBwZXJzaXN0cy4gVGhpcyBpcyBkdWUgdG8gYSBidWcgaW4gZ25vbWUgc2hlbGwsIHdoaWNoIEkgY2FuJ3QgZml4IGJ5IG15c2VsZi4iLAogICJuYW1lIjogIkJsdXIgbXkgU2hlbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hdW5ldHgvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWJsdXItbXktc2hlbGwiLAogICJ1dWlkIjogImJsdXItbXktc2hlbGxAYXVuZXR4IiwKICAidmVyc2lvbiI6IDIyCn0="}, "40": {"version": "29", "sha256": "09zflyqk5mlybc4avm812hqr32q0yzrkkw0qy5q4lbkdid7cpqpp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Zb3UgY2FuIHN1cHBvcnQgbXkgd29yayBieSBzcG9uc29yaW5nIG1lIG9uOlxuLSBnaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9zcG9uc29ycy9hdW5ldHhcbi0ga28tZmk6IGh0dHBzOi8va28tZmkuY29tL2F1bmV0eFxuXG5Ob3RlOiBpZiB0aGUgZXh0ZW5zaW9uIHNob3dzIGFuIGVycm9yIGFmdGVyIHVwZGF0aW5nLCBwbGVhc2UgbWFrZSBzdXJlIHRvIHJlc3RhcnQgeW91ciBzZXNzaW9uIHRvIHNlZSBpZiBpdCBwZXJzaXN0cy4gVGhpcyBpcyBkdWUgdG8gYSBidWcgaW4gZ25vbWUgc2hlbGwsIHdoaWNoIEkgY2FuJ3QgZml4IGJ5IG15c2VsZi4iLAogICJuYW1lIjogIkJsdXIgbXkgU2hlbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2F1bmV0eC9nbm9tZS1zaGVsbC1leHRlbnNpb24tYmx1ci1teS1zaGVsbCIsCiAgInV1aWQiOiAiYmx1ci1teS1zaGVsbEBhdW5ldHgiLAogICJ2ZXJzaW9uIjogMjkKfQ=="}, "41": {"version": "29", "sha256": "09zflyqk5mlybc4avm812hqr32q0yzrkkw0qy5q4lbkdid7cpqpp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Zb3UgY2FuIHN1cHBvcnQgbXkgd29yayBieSBzcG9uc29yaW5nIG1lIG9uOlxuLSBnaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9zcG9uc29ycy9hdW5ldHhcbi0ga28tZmk6IGh0dHBzOi8va28tZmkuY29tL2F1bmV0eFxuXG5Ob3RlOiBpZiB0aGUgZXh0ZW5zaW9uIHNob3dzIGFuIGVycm9yIGFmdGVyIHVwZGF0aW5nLCBwbGVhc2UgbWFrZSBzdXJlIHRvIHJlc3RhcnQgeW91ciBzZXNzaW9uIHRvIHNlZSBpZiBpdCBwZXJzaXN0cy4gVGhpcyBpcyBkdWUgdG8gYSBidWcgaW4gZ25vbWUgc2hlbGwsIHdoaWNoIEkgY2FuJ3QgZml4IGJ5IG15c2VsZi4iLAogICJuYW1lIjogIkJsdXIgbXkgU2hlbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2F1bmV0eC9nbm9tZS1zaGVsbC1leHRlbnNpb24tYmx1ci1teS1zaGVsbCIsCiAgInV1aWQiOiAiYmx1ci1teS1zaGVsbEBhdW5ldHgiLAogICJ2ZXJzaW9uIjogMjkKfQ=="}, "42": {"version": "43", "sha256": "0bvn8prl9pqmd2mjb954mqs8cwq91xqb82vrnw1sjp6dhdrip2mw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Zb3UgY2FuIHN1cHBvcnQgbXkgd29yayBieSBzcG9uc29yaW5nIG1lIG9uOlxuLSBnaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9zcG9uc29ycy9hdW5ldHhcbi0ga28tZmk6IGh0dHBzOi8va28tZmkuY29tL2F1bmV0eFxuXG5Ob3RlOiBpZiB0aGUgZXh0ZW5zaW9uIHNob3dzIGFuIGVycm9yIGFmdGVyIHVwZGF0aW5nLCBwbGVhc2UgbWFrZSBzdXJlIHRvIHJlc3RhcnQgeW91ciBzZXNzaW9uIHRvIHNlZSBpZiBpdCBwZXJzaXN0cy4gVGhpcyBpcyBkdWUgdG8gYSBidWcgaW4gZ25vbWUgc2hlbGwsIHdoaWNoIEkgY2FuJ3QgZml4IGJ5IG15c2VsZi4iLAogICJuYW1lIjogIkJsdXIgbXkgU2hlbGwiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgIm1lQGF1bmV0eC5kZXYiCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdXItbXktc2hlbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXVuZXR4L2dub21lLXNoZWxsLWV4dGVuc2lvbi1ibHVyLW15LXNoZWxsIiwKICAidXVpZCI6ICJibHVyLW15LXNoZWxsQGF1bmV0eCIsCiAgInZlcnNpb24iOiA0Mwp9"}}}
+, {"uuid": "blur-my-shell@aunetx", "name": "Blur my Shell", "pname": "blur-my-shell", "description": "Adds a blur look to different parts of the GNOME Shell, including the top panel, dash and overview.\n\nYou can support my work by sponsoring me on:\n- github: https://github.com/sponsors/aunetx\n- ko-fi: https://ko-fi.com/aunetx\n\nNote: if the extension shows an error after updating, please make sure to restart your session to see if it persists. This is due to a bug in gnome shell, which I can't fix by myself.", "link": "https://extensions.gnome.org/extension/3193/blur-my-shell/", "shell_version_map": {"38": {"version": "22", "sha256": "1ss5vhzjkp2bpllxpjlk1l2i8n7p4xjpzkn0q6jg3gd472kkanfx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Zb3UgY2FuIHN1cHBvcnQgbXkgd29yayBieSBzcG9uc29yaW5nIG1lIG9uOlxuLSBnaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9zcG9uc29ycy9hdW5ldHhcbi0ga28tZmk6IGh0dHBzOi8va28tZmkuY29tL2F1bmV0eFxuXG5Ob3RlOiBpZiB0aGUgZXh0ZW5zaW9uIHNob3dzIGFuIGVycm9yIGFmdGVyIHVwZGF0aW5nLCBwbGVhc2UgbWFrZSBzdXJlIHRvIHJlc3RhcnQgeW91ciBzZXNzaW9uIHRvIHNlZSBpZiBpdCBwZXJzaXN0cy4gVGhpcyBpcyBkdWUgdG8gYSBidWcgaW4gZ25vbWUgc2hlbGwsIHdoaWNoIEkgY2FuJ3QgZml4IGJ5IG15c2VsZi4iLAogICJuYW1lIjogIkJsdXIgbXkgU2hlbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hdW5ldHgvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWJsdXItbXktc2hlbGwiLAogICJ1dWlkIjogImJsdXItbXktc2hlbGxAYXVuZXR4IiwKICAidmVyc2lvbiI6IDIyCn0="}, "40": {"version": "29", "sha256": "09zflyqk5mlybc4avm812hqr32q0yzrkkw0qy5q4lbkdid7cpqpp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Zb3UgY2FuIHN1cHBvcnQgbXkgd29yayBieSBzcG9uc29yaW5nIG1lIG9uOlxuLSBnaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9zcG9uc29ycy9hdW5ldHhcbi0ga28tZmk6IGh0dHBzOi8va28tZmkuY29tL2F1bmV0eFxuXG5Ob3RlOiBpZiB0aGUgZXh0ZW5zaW9uIHNob3dzIGFuIGVycm9yIGFmdGVyIHVwZGF0aW5nLCBwbGVhc2UgbWFrZSBzdXJlIHRvIHJlc3RhcnQgeW91ciBzZXNzaW9uIHRvIHNlZSBpZiBpdCBwZXJzaXN0cy4gVGhpcyBpcyBkdWUgdG8gYSBidWcgaW4gZ25vbWUgc2hlbGwsIHdoaWNoIEkgY2FuJ3QgZml4IGJ5IG15c2VsZi4iLAogICJuYW1lIjogIkJsdXIgbXkgU2hlbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2F1bmV0eC9nbm9tZS1zaGVsbC1leHRlbnNpb24tYmx1ci1teS1zaGVsbCIsCiAgInV1aWQiOiAiYmx1ci1teS1zaGVsbEBhdW5ldHgiLAogICJ2ZXJzaW9uIjogMjkKfQ=="}, "41": {"version": "29", "sha256": "09zflyqk5mlybc4avm812hqr32q0yzrkkw0qy5q4lbkdid7cpqpp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Zb3UgY2FuIHN1cHBvcnQgbXkgd29yayBieSBzcG9uc29yaW5nIG1lIG9uOlxuLSBnaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9zcG9uc29ycy9hdW5ldHhcbi0ga28tZmk6IGh0dHBzOi8va28tZmkuY29tL2F1bmV0eFxuXG5Ob3RlOiBpZiB0aGUgZXh0ZW5zaW9uIHNob3dzIGFuIGVycm9yIGFmdGVyIHVwZGF0aW5nLCBwbGVhc2UgbWFrZSBzdXJlIHRvIHJlc3RhcnQgeW91ciBzZXNzaW9uIHRvIHNlZSBpZiBpdCBwZXJzaXN0cy4gVGhpcyBpcyBkdWUgdG8gYSBidWcgaW4gZ25vbWUgc2hlbGwsIHdoaWNoIEkgY2FuJ3QgZml4IGJ5IG15c2VsZi4iLAogICJuYW1lIjogIkJsdXIgbXkgU2hlbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2F1bmV0eC9nbm9tZS1zaGVsbC1leHRlbnNpb24tYmx1ci1teS1zaGVsbCIsCiAgInV1aWQiOiAiYmx1ci1teS1zaGVsbEBhdW5ldHgiLAogICJ2ZXJzaW9uIjogMjkKfQ=="}, "42": {"version": "44", "sha256": "1cgr803nh5vmc62adsmxjmd5aba3ln4fxn3g4ynqfjql7s2ymkz9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Zb3UgY2FuIHN1cHBvcnQgbXkgd29yayBieSBzcG9uc29yaW5nIG1lIG9uOlxuLSBnaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9zcG9uc29ycy9hdW5ldHhcbi0ga28tZmk6IGh0dHBzOi8va28tZmkuY29tL2F1bmV0eFxuXG5Ob3RlOiBpZiB0aGUgZXh0ZW5zaW9uIHNob3dzIGFuIGVycm9yIGFmdGVyIHVwZGF0aW5nLCBwbGVhc2UgbWFrZSBzdXJlIHRvIHJlc3RhcnQgeW91ciBzZXNzaW9uIHRvIHNlZSBpZiBpdCBwZXJzaXN0cy4gVGhpcyBpcyBkdWUgdG8gYSBidWcgaW4gZ25vbWUgc2hlbGwsIHdoaWNoIEkgY2FuJ3QgZml4IGJ5IG15c2VsZi4iLAogICJuYW1lIjogIkJsdXIgbXkgU2hlbGwiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgIm1lQGF1bmV0eC5kZXYiCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdXItbXktc2hlbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2F1bmV0eC9nbm9tZS1zaGVsbC1leHRlbnNpb24tYmx1ci1teS1zaGVsbCIsCiAgInV1aWQiOiAiYmx1ci1teS1zaGVsbEBhdW5ldHgiLAogICJ2ZXJzaW9uIjogNDQKfQ=="}, "43": {"version": "44", "sha256": "1cgr803nh5vmc62adsmxjmd5aba3ln4fxn3g4ynqfjql7s2ymkz9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Zb3UgY2FuIHN1cHBvcnQgbXkgd29yayBieSBzcG9uc29yaW5nIG1lIG9uOlxuLSBnaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9zcG9uc29ycy9hdW5ldHhcbi0ga28tZmk6IGh0dHBzOi8va28tZmkuY29tL2F1bmV0eFxuXG5Ob3RlOiBpZiB0aGUgZXh0ZW5zaW9uIHNob3dzIGFuIGVycm9yIGFmdGVyIHVwZGF0aW5nLCBwbGVhc2UgbWFrZSBzdXJlIHRvIHJlc3RhcnQgeW91ciBzZXNzaW9uIHRvIHNlZSBpZiBpdCBwZXJzaXN0cy4gVGhpcyBpcyBkdWUgdG8gYSBidWcgaW4gZ25vbWUgc2hlbGwsIHdoaWNoIEkgY2FuJ3QgZml4IGJ5IG15c2VsZi4iLAogICJuYW1lIjogIkJsdXIgbXkgU2hlbGwiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgIm1lQGF1bmV0eC5kZXYiCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdXItbXktc2hlbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2F1bmV0eC9nbm9tZS1zaGVsbC1leHRlbnNpb24tYmx1ci1teS1zaGVsbCIsCiAgInV1aWQiOiAiYmx1ci1teS1zaGVsbEBhdW5ldHgiLAogICJ2ZXJzaW9uIjogNDQKfQ=="}}}
 , {"uuid": "escape-overview@raelgc", "name": "ESCape Overview", "pname": "escape-overview", "description": "Close the Overview with a single ESC press when searchbox is empty.\n\nThe default gnome-shell behaviour is, during first ESC press, clean the searchbox, then second ESC press get back to Activities overview and then third ESC press will finally close the overview.", "link": "https://extensions.gnome.org/extension/3204/escape-overview/", "shell_version_map": {"38": {"version": "5", "sha256": "12jycfdlywlc2gf7hcpa1draqsy8jgb2dgr8sihh2f97b31dk1nh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBPdmVydmlldyB3aXRoIGEgc2luZ2xlIEVTQyBwcmVzcyB3aGVuIHNlYXJjaGJveCBpcyBlbXB0eS5cblxuVGhlIGRlZmF1bHQgZ25vbWUtc2hlbGwgYmVoYXZpb3VyIGlzLCBkdXJpbmcgZmlyc3QgRVNDIHByZXNzLCBjbGVhbiB0aGUgc2VhcmNoYm94LCB0aGVuIHNlY29uZCBFU0MgcHJlc3MgZ2V0IGJhY2sgdG8gQWN0aXZpdGllcyBvdmVydmlldyBhbmQgdGhlbiB0aGlyZCBFU0MgcHJlc3Mgd2lsbCBmaW5hbGx5IGNsb3NlIHRoZSBvdmVydmlldy4iLAogICJuYW1lIjogIkVTQ2FwZSBPdmVydmlldyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3JhZWxnYy9lc2NhcGUtb3ZlcnZpZXciLAogICJ1dWlkIjogImVzY2FwZS1vdmVydmlld0ByYWVsZ2MiLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "5", "sha256": "12jycfdlywlc2gf7hcpa1draqsy8jgb2dgr8sihh2f97b31dk1nh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBPdmVydmlldyB3aXRoIGEgc2luZ2xlIEVTQyBwcmVzcyB3aGVuIHNlYXJjaGJveCBpcyBlbXB0eS5cblxuVGhlIGRlZmF1bHQgZ25vbWUtc2hlbGwgYmVoYXZpb3VyIGlzLCBkdXJpbmcgZmlyc3QgRVNDIHByZXNzLCBjbGVhbiB0aGUgc2VhcmNoYm94LCB0aGVuIHNlY29uZCBFU0MgcHJlc3MgZ2V0IGJhY2sgdG8gQWN0aXZpdGllcyBvdmVydmlldyBhbmQgdGhlbiB0aGlyZCBFU0MgcHJlc3Mgd2lsbCBmaW5hbGx5IGNsb3NlIHRoZSBvdmVydmlldy4iLAogICJuYW1lIjogIkVTQ2FwZSBPdmVydmlldyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3JhZWxnYy9lc2NhcGUtb3ZlcnZpZXciLAogICJ1dWlkIjogImVzY2FwZS1vdmVydmlld0ByYWVsZ2MiLAogICJ2ZXJzaW9uIjogNQp9"}, "41": {"version": "5", "sha256": "12jycfdlywlc2gf7hcpa1draqsy8jgb2dgr8sihh2f97b31dk1nh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBPdmVydmlldyB3aXRoIGEgc2luZ2xlIEVTQyBwcmVzcyB3aGVuIHNlYXJjaGJveCBpcyBlbXB0eS5cblxuVGhlIGRlZmF1bHQgZ25vbWUtc2hlbGwgYmVoYXZpb3VyIGlzLCBkdXJpbmcgZmlyc3QgRVNDIHByZXNzLCBjbGVhbiB0aGUgc2VhcmNoYm94LCB0aGVuIHNlY29uZCBFU0MgcHJlc3MgZ2V0IGJhY2sgdG8gQWN0aXZpdGllcyBvdmVydmlldyBhbmQgdGhlbiB0aGlyZCBFU0MgcHJlc3Mgd2lsbCBmaW5hbGx5IGNsb3NlIHRoZSBvdmVydmlldy4iLAogICJuYW1lIjogIkVTQ2FwZSBPdmVydmlldyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3JhZWxnYy9lc2NhcGUtb3ZlcnZpZXciLAogICJ1dWlkIjogImVzY2FwZS1vdmVydmlld0ByYWVsZ2MiLAogICJ2ZXJzaW9uIjogNQp9"}, "42": {"version": "5", "sha256": "12jycfdlywlc2gf7hcpa1draqsy8jgb2dgr8sihh2f97b31dk1nh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBPdmVydmlldyB3aXRoIGEgc2luZ2xlIEVTQyBwcmVzcyB3aGVuIHNlYXJjaGJveCBpcyBlbXB0eS5cblxuVGhlIGRlZmF1bHQgZ25vbWUtc2hlbGwgYmVoYXZpb3VyIGlzLCBkdXJpbmcgZmlyc3QgRVNDIHByZXNzLCBjbGVhbiB0aGUgc2VhcmNoYm94LCB0aGVuIHNlY29uZCBFU0MgcHJlc3MgZ2V0IGJhY2sgdG8gQWN0aXZpdGllcyBvdmVydmlldyBhbmQgdGhlbiB0aGlyZCBFU0MgcHJlc3Mgd2lsbCBmaW5hbGx5IGNsb3NlIHRoZSBvdmVydmlldy4iLAogICJuYW1lIjogIkVTQ2FwZSBPdmVydmlldyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3JhZWxnYy9lc2NhcGUtb3ZlcnZpZXciLAogICJ1dWlkIjogImVzY2FwZS1vdmVydmlld0ByYWVsZ2MiLAogICJ2ZXJzaW9uIjogNQp9"}}}
 , {"uuid": "compiz-windows-effect@hermes83.github.com", "name": "Compiz windows effect", "pname": "compiz-windows-effect", "description": "Compiz wobbly windows effect thanks to compiz plugin engine.\n\nDoes NOT requires any external library\n\nNB:\nIn case of update error please restart Gnome Shell (on Xorg press ALT+F2 then write r and press enter, on Wayland end the session and log in again)\n\n-----------------------------------\n  Video\n-----------------------------------\nhttps://youtu.be/G8bAVIB9A7A", "link": "https://extensions.gnome.org/extension/3210/compiz-windows-effect/", "shell_version_map": {"38": {"version": "19", "sha256": "19zysj4fb4hdxp0arcj4wilv4znxsalv92irlysk7dpxp1yyvj5z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbXBpeiB3b2JibHkgd2luZG93cyBlZmZlY3QgdGhhbmtzIHRvIGNvbXBpeiBwbHVnaW4gZW5naW5lLlxuXG5Eb2VzIE5PVCByZXF1aXJlcyBhbnkgZXh0ZXJuYWwgbGlicmFyeVxuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKVxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBWaWRlb1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmh0dHBzOi8veW91dHUuYmUvRzhiQVZJQjlBN0EiLAogICJuYW1lIjogIkNvbXBpeiB3aW5kb3dzIGVmZmVjdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9jb21waXotd2luZG93cy1lZmZlY3QiLAogICJ1dWlkIjogImNvbXBpei13aW5kb3dzLWVmZmVjdEBoZXJtZXM4My5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE5Cn0="}, "40": {"version": "19", "sha256": "19zysj4fb4hdxp0arcj4wilv4znxsalv92irlysk7dpxp1yyvj5z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbXBpeiB3b2JibHkgd2luZG93cyBlZmZlY3QgdGhhbmtzIHRvIGNvbXBpeiBwbHVnaW4gZW5naW5lLlxuXG5Eb2VzIE5PVCByZXF1aXJlcyBhbnkgZXh0ZXJuYWwgbGlicmFyeVxuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKVxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBWaWRlb1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmh0dHBzOi8veW91dHUuYmUvRzhiQVZJQjlBN0EiLAogICJuYW1lIjogIkNvbXBpeiB3aW5kb3dzIGVmZmVjdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9jb21waXotd2luZG93cy1lZmZlY3QiLAogICJ1dWlkIjogImNvbXBpei13aW5kb3dzLWVmZmVjdEBoZXJtZXM4My5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE5Cn0="}, "41": {"version": "19", "sha256": "19zysj4fb4hdxp0arcj4wilv4znxsalv92irlysk7dpxp1yyvj5z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbXBpeiB3b2JibHkgd2luZG93cyBlZmZlY3QgdGhhbmtzIHRvIGNvbXBpeiBwbHVnaW4gZW5naW5lLlxuXG5Eb2VzIE5PVCByZXF1aXJlcyBhbnkgZXh0ZXJuYWwgbGlicmFyeVxuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKVxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBWaWRlb1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmh0dHBzOi8veW91dHUuYmUvRzhiQVZJQjlBN0EiLAogICJuYW1lIjogIkNvbXBpeiB3aW5kb3dzIGVmZmVjdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9jb21waXotd2luZG93cy1lZmZlY3QiLAogICJ1dWlkIjogImNvbXBpei13aW5kb3dzLWVmZmVjdEBoZXJtZXM4My5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE5Cn0="}, "42": {"version": "19", "sha256": "19zysj4fb4hdxp0arcj4wilv4znxsalv92irlysk7dpxp1yyvj5z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbXBpeiB3b2JibHkgd2luZG93cyBlZmZlY3QgdGhhbmtzIHRvIGNvbXBpeiBwbHVnaW4gZW5naW5lLlxuXG5Eb2VzIE5PVCByZXF1aXJlcyBhbnkgZXh0ZXJuYWwgbGlicmFyeVxuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKVxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBWaWRlb1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmh0dHBzOi8veW91dHUuYmUvRzhiQVZJQjlBN0EiLAogICJuYW1lIjogIkNvbXBpeiB3aW5kb3dzIGVmZmVjdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9jb21waXotd2luZG93cy1lZmZlY3QiLAogICJ1dWlkIjogImNvbXBpei13aW5kb3dzLWVmZmVjdEBoZXJtZXM4My5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE5Cn0="}, "43": {"version": "19", "sha256": "19zysj4fb4hdxp0arcj4wilv4znxsalv92irlysk7dpxp1yyvj5z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbXBpeiB3b2JibHkgd2luZG93cyBlZmZlY3QgdGhhbmtzIHRvIGNvbXBpeiBwbHVnaW4gZW5naW5lLlxuXG5Eb2VzIE5PVCByZXF1aXJlcyBhbnkgZXh0ZXJuYWwgbGlicmFyeVxuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKVxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBWaWRlb1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmh0dHBzOi8veW91dHUuYmUvRzhiQVZJQjlBN0EiLAogICJuYW1lIjogIkNvbXBpeiB3aW5kb3dzIGVmZmVjdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9jb21waXotd2luZG93cy1lZmZlY3QiLAogICJ1dWlkIjogImNvbXBpei13aW5kb3dzLWVmZmVjdEBoZXJtZXM4My5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE5Cn0="}}}
 , {"uuid": "EndSessionTimer@pratap.fastmail.fm", "name": "End Session Timer", "pname": "end-session-timer", "description": "Set End Session Timer between 5 to 60 Seconds", "link": "https://extensions.gnome.org/extension/3216/end-session-timer/", "shell_version_map": {"38": {"version": "7", "sha256": "0c3wfx1iksb67fq3hm8cprhwb2f6xykkr4fv4y4drf78f15sh5gm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNldCBFbmQgU2Vzc2lvbiBUaW1lciBiZXR3ZWVuIDUgdG8gNjAgU2Vjb25kcyIsCiAgIm5hbWUiOiAiRW5kIFNlc3Npb24gVGltZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiRW5kU2Vzc2lvblRpbWVyQHByYXRhcC5mYXN0bWFpbC5mbSIsCiAgInZlcnNpb24iOiA3Cn0="}, "41": {"version": "8", "sha256": "0mm9g2ldl2lw52plx3hpbaniqlci1c10q9blkbdpwcmyv53z1dq4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNldCBFbmQgU2Vzc2lvbiBUaW1lciBiZXR3ZWVuIDUgdG8gNjAgU2Vjb25kcyIsCiAgIm5hbWUiOiAiRW5kIFNlc3Npb24gVGltZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIkVuZFNlc3Npb25UaW1lckBwcmF0YXAuZmFzdG1haWwuZm0iLAogICJ2ZXJzaW9uIjogOAp9"}}}
@@ -364,9 +364,9 @@
 , {"uuid": "true-color-invert@jackkenney", "name": "True Color Invert", "pname": "true-color-invert", "description": "Inverts the color of individual windows so they are hue-preserved.\nDefault shortcut is Super+I", "link": "https://extensions.gnome.org/extension/3530/true-color-invert/", "shell_version_map": {"38": {"version": "11", "sha256": "10hfxck76ka8grpdy7d4alfrs1jax2jk5wbk7058san6a6jjfbrm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludmVydHMgdGhlIGNvbG9yIG9mIGluZGl2aWR1YWwgd2luZG93cyBzbyB0aGV5IGFyZSBodWUtcHJlc2VydmVkLlxuRGVmYXVsdCBzaG9ydGN1dCBpcyBTdXBlcitJIiwKICAibmFtZSI6ICJUcnVlIENvbG9yIEludmVydCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50cnVlLWNvbG9yLWludmVydCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2phY2trZW5uZXkvZ25vbWUtdHJ1ZS1jb2xvci1pbnZlcnQiLAogICJ1dWlkIjogInRydWUtY29sb3ItaW52ZXJ0QGphY2trZW5uZXkiLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "40": {"version": "11", "sha256": "10hfxck76ka8grpdy7d4alfrs1jax2jk5wbk7058san6a6jjfbrm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludmVydHMgdGhlIGNvbG9yIG9mIGluZGl2aWR1YWwgd2luZG93cyBzbyB0aGV5IGFyZSBodWUtcHJlc2VydmVkLlxuRGVmYXVsdCBzaG9ydGN1dCBpcyBTdXBlcitJIiwKICAibmFtZSI6ICJUcnVlIENvbG9yIEludmVydCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50cnVlLWNvbG9yLWludmVydCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2phY2trZW5uZXkvZ25vbWUtdHJ1ZS1jb2xvci1pbnZlcnQiLAogICJ1dWlkIjogInRydWUtY29sb3ItaW52ZXJ0QGphY2trZW5uZXkiLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "41": {"version": "11", "sha256": "10hfxck76ka8grpdy7d4alfrs1jax2jk5wbk7058san6a6jjfbrm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludmVydHMgdGhlIGNvbG9yIG9mIGluZGl2aWR1YWwgd2luZG93cyBzbyB0aGV5IGFyZSBodWUtcHJlc2VydmVkLlxuRGVmYXVsdCBzaG9ydGN1dCBpcyBTdXBlcitJIiwKICAibmFtZSI6ICJUcnVlIENvbG9yIEludmVydCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50cnVlLWNvbG9yLWludmVydCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2phY2trZW5uZXkvZ25vbWUtdHJ1ZS1jb2xvci1pbnZlcnQiLAogICJ1dWlkIjogInRydWUtY29sb3ItaW52ZXJ0QGphY2trZW5uZXkiLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "42": {"version": "11", "sha256": "10hfxck76ka8grpdy7d4alfrs1jax2jk5wbk7058san6a6jjfbrm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludmVydHMgdGhlIGNvbG9yIG9mIGluZGl2aWR1YWwgd2luZG93cyBzbyB0aGV5IGFyZSBodWUtcHJlc2VydmVkLlxuRGVmYXVsdCBzaG9ydGN1dCBpcyBTdXBlcitJIiwKICAibmFtZSI6ICJUcnVlIENvbG9yIEludmVydCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50cnVlLWNvbG9yLWludmVydCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2phY2trZW5uZXkvZ25vbWUtdHJ1ZS1jb2xvci1pbnZlcnQiLAogICJ1dWlkIjogInRydWUtY29sb3ItaW52ZXJ0QGphY2trZW5uZXkiLAogICJ2ZXJzaW9uIjogMTEKfQ=="}}}
 , {"uuid": "gitlab-extension@infinicode.de", "name": "GitLab Extension", "pname": "gitlab-extension", "description": "GitLab extension utilizes the official GitLab API to provide a comfortable overview about your projects, commits & pipelines.\n", "link": "https://extensions.gnome.org/extension/3535/gitlab-extension/", "shell_version_map": {"38": {"version": "4", "sha256": "04hclkbj95alqv9lq5qa5dnf7wb8ssd08q0lzd9wxzw95hiqcvwd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdpdExhYiBleHRlbnNpb24gdXRpbGl6ZXMgdGhlIG9mZmljaWFsIEdpdExhYiBBUEkgdG8gcHJvdmlkZSBhIGNvbWZvcnRhYmxlIG92ZXJ2aWV3IGFib3V0IHlvdXIgcHJvamVjdHMsIGNvbW1pdHMgJiBwaXBlbGluZXMuXG4iLAogICJsb2NhbGVkaXIiOiAiL3Vzci9sb2NhbC9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIkdpdExhYiBFeHRlbnNpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY2luYXRpYy9naXRsYWItZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJnaXRsYWItZXh0ZW5zaW9uQGluZmluaWNvZGUuZGUiLAogICJ2ZXJzaW9uIjogNAp9"}, "40": {"version": "4", "sha256": "04hclkbj95alqv9lq5qa5dnf7wb8ssd08q0lzd9wxzw95hiqcvwd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdpdExhYiBleHRlbnNpb24gdXRpbGl6ZXMgdGhlIG9mZmljaWFsIEdpdExhYiBBUEkgdG8gcHJvdmlkZSBhIGNvbWZvcnRhYmxlIG92ZXJ2aWV3IGFib3V0IHlvdXIgcHJvamVjdHMsIGNvbW1pdHMgJiBwaXBlbGluZXMuXG4iLAogICJsb2NhbGVkaXIiOiAiL3Vzci9sb2NhbC9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIkdpdExhYiBFeHRlbnNpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY2luYXRpYy9naXRsYWItZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJnaXRsYWItZXh0ZW5zaW9uQGluZmluaWNvZGUuZGUiLAogICJ2ZXJzaW9uIjogNAp9"}, "42": {"version": "7", "sha256": "063d61mk4wavrclf09vxbl1qxd66475fblqhnl2yq5rv7zrl5ys6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdpdExhYiBleHRlbnNpb24gdXRpbGl6ZXMgdGhlIG9mZmljaWFsIEdpdExhYiBBUEkgdG8gcHJvdmlkZSBhIGNvbWZvcnRhYmxlIG92ZXJ2aWV3IGFib3V0IHlvdXIgcHJvamVjdHMsIGNvbW1pdHMgJiBwaXBlbGluZXMuXG4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tZ2l0bGFiIiwKICAibG9jYWxlZGlyIjogIi91c3IvbG9jYWwvc2hhcmUvbG9jYWxlIiwKICAibmFtZSI6ICJHaXRMYWIgRXh0ZW5zaW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdpdGxhYiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9jaW5hdGljL2dpdGxhYi1leHRlbnNpb24iLAogICJ1dWlkIjogImdpdGxhYi1leHRlbnNpb25AaW5maW5pY29kZS5kZSIsCiAgInZlcnNpb24iOiA3Cn0="}}}
 , {"uuid": "downfall@torculus.github.com", "name": "DownFall", "pname": "downfall", "description": "Moves text of your choice across the screen. Can simulate leaves, snow, fireworks, ufos, and more!", "link": "https://extensions.gnome.org/extension/3539/downfall/", "shell_version_map": {"38": {"version": "22", "sha256": "12s8c2685w07fi84widdw8wrniwhhn0k96ggypgv47jkmhv31v3w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRleHQgb2YgeW91ciBjaG9pY2UgYWNyb3NzIHRoZSBzY3JlZW4uIENhbiBzaW11bGF0ZSBsZWF2ZXMsIHNub3csIGZpcmV3b3JrcywgdWZvcywgYW5kIG1vcmUhIiwKICAibmFtZSI6ICJEb3duRmFsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90b3JjdWx1cy9Eb3duRmFsbCIsCiAgInV1aWQiOiAiZG93bmZhbGxAdG9yY3VsdXMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAyMgp9"}, "40": {"version": "22", "sha256": "12s8c2685w07fi84widdw8wrniwhhn0k96ggypgv47jkmhv31v3w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRleHQgb2YgeW91ciBjaG9pY2UgYWNyb3NzIHRoZSBzY3JlZW4uIENhbiBzaW11bGF0ZSBsZWF2ZXMsIHNub3csIGZpcmV3b3JrcywgdWZvcywgYW5kIG1vcmUhIiwKICAibmFtZSI6ICJEb3duRmFsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90b3JjdWx1cy9Eb3duRmFsbCIsCiAgInV1aWQiOiAiZG93bmZhbGxAdG9yY3VsdXMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAyMgp9"}, "41": {"version": "22", "sha256": "12s8c2685w07fi84widdw8wrniwhhn0k96ggypgv47jkmhv31v3w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRleHQgb2YgeW91ciBjaG9pY2UgYWNyb3NzIHRoZSBzY3JlZW4uIENhbiBzaW11bGF0ZSBsZWF2ZXMsIHNub3csIGZpcmV3b3JrcywgdWZvcywgYW5kIG1vcmUhIiwKICAibmFtZSI6ICJEb3duRmFsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90b3JjdWx1cy9Eb3duRmFsbCIsCiAgInV1aWQiOiAiZG93bmZhbGxAdG9yY3VsdXMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAyMgp9"}, "42": {"version": "22", "sha256": "12s8c2685w07fi84widdw8wrniwhhn0k96ggypgv47jkmhv31v3w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRleHQgb2YgeW91ciBjaG9pY2UgYWNyb3NzIHRoZSBzY3JlZW4uIENhbiBzaW11bGF0ZSBsZWF2ZXMsIHNub3csIGZpcmV3b3JrcywgdWZvcywgYW5kIG1vcmUhIiwKICAibmFtZSI6ICJEb3duRmFsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90b3JjdWx1cy9Eb3duRmFsbCIsCiAgInV1aWQiOiAiZG93bmZhbGxAdG9yY3VsdXMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAyMgp9"}, "43": {"version": "22", "sha256": "12s8c2685w07fi84widdw8wrniwhhn0k96ggypgv47jkmhv31v3w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRleHQgb2YgeW91ciBjaG9pY2UgYWNyb3NzIHRoZSBzY3JlZW4uIENhbiBzaW11bGF0ZSBsZWF2ZXMsIHNub3csIGZpcmV3b3JrcywgdWZvcywgYW5kIG1vcmUhIiwKICAibmFtZSI6ICJEb3duRmFsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90b3JjdWx1cy9Eb3duRmFsbCIsCiAgInV1aWQiOiAiZG93bmZhbGxAdG9yY3VsdXMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAyMgp9"}}}
-, {"uuid": "time-awareness@gnome-extensions.kapranoff.ru", "name": "Time Awareness", "pname": "time-awareness", "description": "Tracks the time you have been actively using your computer", "link": "https://extensions.gnome.org/extension/3556/time-awareness/", "shell_version_map": {"38": {"version": "7", "sha256": "0a9a7524ddwb2hxf3q5amgbd57fy17m994vj3gbkddk7mp8m06a7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYWNrcyB0aGUgdGltZSB5b3UgaGF2ZSBiZWVuIGFjdGl2ZWx5IHVzaW5nIHlvdXIgY29tcHV0ZXIiLAogICJuYW1lIjogIlRpbWUgQXdhcmVuZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL3NyLmh0L35rYXBwYS9nbm9tZS1zaGVsbC10aW1lLWF3YXJlbmVzcy8iLAogICJ1dWlkIjogInRpbWUtYXdhcmVuZXNzQGdub21lLWV4dGVuc2lvbnMua2FwcmFub2ZmLnJ1IiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "0a9a7524ddwb2hxf3q5amgbd57fy17m994vj3gbkddk7mp8m06a7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYWNrcyB0aGUgdGltZSB5b3UgaGF2ZSBiZWVuIGFjdGl2ZWx5IHVzaW5nIHlvdXIgY29tcHV0ZXIiLAogICJuYW1lIjogIlRpbWUgQXdhcmVuZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL3NyLmh0L35rYXBwYS9nbm9tZS1zaGVsbC10aW1lLWF3YXJlbmVzcy8iLAogICJ1dWlkIjogInRpbWUtYXdhcmVuZXNzQGdub21lLWV4dGVuc2lvbnMua2FwcmFub2ZmLnJ1IiwKICAidmVyc2lvbiI6IDcKfQ=="}, "41": {"version": "7", "sha256": "0a9a7524ddwb2hxf3q5amgbd57fy17m994vj3gbkddk7mp8m06a7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYWNrcyB0aGUgdGltZSB5b3UgaGF2ZSBiZWVuIGFjdGl2ZWx5IHVzaW5nIHlvdXIgY29tcHV0ZXIiLAogICJuYW1lIjogIlRpbWUgQXdhcmVuZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL3NyLmh0L35rYXBwYS9nbm9tZS1zaGVsbC10aW1lLWF3YXJlbmVzcy8iLAogICJ1dWlkIjogInRpbWUtYXdhcmVuZXNzQGdub21lLWV4dGVuc2lvbnMua2FwcmFub2ZmLnJ1IiwKICAidmVyc2lvbiI6IDcKfQ=="}, "42": {"version": "7", "sha256": "0a9a7524ddwb2hxf3q5amgbd57fy17m994vj3gbkddk7mp8m06a7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYWNrcyB0aGUgdGltZSB5b3UgaGF2ZSBiZWVuIGFjdGl2ZWx5IHVzaW5nIHlvdXIgY29tcHV0ZXIiLAogICJuYW1lIjogIlRpbWUgQXdhcmVuZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL3NyLmh0L35rYXBwYS9nbm9tZS1zaGVsbC10aW1lLWF3YXJlbmVzcy8iLAogICJ1dWlkIjogInRpbWUtYXdhcmVuZXNzQGdub21lLWV4dGVuc2lvbnMua2FwcmFub2ZmLnJ1IiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
+, {"uuid": "time-awareness@gnome-extensions.kapranoff.ru", "name": "Time Awareness", "pname": "time-awareness", "description": "Tracks the time you have been actively using your computer", "link": "https://extensions.gnome.org/extension/3556/time-awareness/", "shell_version_map": {"38": {"version": "8", "sha256": "1fwdbmq4ibbgjlqrnagv8qwp64ak719dz745fvg96qy5bc4ws19r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYWNrcyB0aGUgdGltZSB5b3UgaGF2ZSBiZWVuIGFjdGl2ZWx5IHVzaW5nIHlvdXIgY29tcHV0ZXIiLAogICJuYW1lIjogIlRpbWUgQXdhcmVuZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9zci5odC9+a2FwcGEvZ25vbWUtc2hlbGwtdGltZS1hd2FyZW5lc3MvIiwKICAidXVpZCI6ICJ0aW1lLWF3YXJlbmVzc0Bnbm9tZS1leHRlbnNpb25zLmthcHJhbm9mZi5ydSIsCiAgInZlcnNpb24iOiA4Cn0="}, "40": {"version": "8", "sha256": "1fwdbmq4ibbgjlqrnagv8qwp64ak719dz745fvg96qy5bc4ws19r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYWNrcyB0aGUgdGltZSB5b3UgaGF2ZSBiZWVuIGFjdGl2ZWx5IHVzaW5nIHlvdXIgY29tcHV0ZXIiLAogICJuYW1lIjogIlRpbWUgQXdhcmVuZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9zci5odC9+a2FwcGEvZ25vbWUtc2hlbGwtdGltZS1hd2FyZW5lc3MvIiwKICAidXVpZCI6ICJ0aW1lLWF3YXJlbmVzc0Bnbm9tZS1leHRlbnNpb25zLmthcHJhbm9mZi5ydSIsCiAgInZlcnNpb24iOiA4Cn0="}, "41": {"version": "8", "sha256": "1fwdbmq4ibbgjlqrnagv8qwp64ak719dz745fvg96qy5bc4ws19r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYWNrcyB0aGUgdGltZSB5b3UgaGF2ZSBiZWVuIGFjdGl2ZWx5IHVzaW5nIHlvdXIgY29tcHV0ZXIiLAogICJuYW1lIjogIlRpbWUgQXdhcmVuZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9zci5odC9+a2FwcGEvZ25vbWUtc2hlbGwtdGltZS1hd2FyZW5lc3MvIiwKICAidXVpZCI6ICJ0aW1lLWF3YXJlbmVzc0Bnbm9tZS1leHRlbnNpb25zLmthcHJhbm9mZi5ydSIsCiAgInZlcnNpb24iOiA4Cn0="}, "42": {"version": "8", "sha256": "1fwdbmq4ibbgjlqrnagv8qwp64ak719dz745fvg96qy5bc4ws19r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYWNrcyB0aGUgdGltZSB5b3UgaGF2ZSBiZWVuIGFjdGl2ZWx5IHVzaW5nIHlvdXIgY29tcHV0ZXIiLAogICJuYW1lIjogIlRpbWUgQXdhcmVuZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9zci5odC9+a2FwcGEvZ25vbWUtc2hlbGwtdGltZS1hd2FyZW5lc3MvIiwKICAidXVpZCI6ICJ0aW1lLWF3YXJlbmVzc0Bnbm9tZS1leHRlbnNpb25zLmthcHJhbm9mZi5ydSIsCiAgInZlcnNpb24iOiA4Cn0="}, "43": {"version": "8", "sha256": "1fwdbmq4ibbgjlqrnagv8qwp64ak719dz745fvg96qy5bc4ws19r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYWNrcyB0aGUgdGltZSB5b3UgaGF2ZSBiZWVuIGFjdGl2ZWx5IHVzaW5nIHlvdXIgY29tcHV0ZXIiLAogICJuYW1lIjogIlRpbWUgQXdhcmVuZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9zci5odC9+a2FwcGEvZ25vbWUtc2hlbGwtdGltZS1hd2FyZW5lc3MvIiwKICAidXVpZCI6ICJ0aW1lLWF3YXJlbmVzc0Bnbm9tZS1leHRlbnNpb25zLmthcHJhbm9mZi5ydSIsCiAgInZlcnNpb24iOiA4Cn0="}}}
 , {"uuid": "mullvadindicator@pobega.github.com", "name": "Mullvad Indicator", "pname": "mullvad-indicator", "description": "Mullvad connection status indicator", "link": "https://extensions.gnome.org/extension/3560/mullvad-indicator/", "shell_version_map": {"38": {"version": "5", "sha256": "0xzb1bc8y0chkg6pkg2ax11g2xfrxqd9cjnmxhrahmabh30db451", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk11bGx2YWQgY29ubmVjdGlvbiBzdGF0dXMgaW5kaWNhdG9yIiwKICAibmFtZSI6ICJNdWxsdmFkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1BvYmVnYS9nbm9tZS1zaGVsbC1leHRlbnNpb24tbXVsbHZhZC1pbmRpY2F0b3IiLAogICJ1dWlkIjogIm11bGx2YWRpbmRpY2F0b3JAcG9iZWdhLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "5", "sha256": "0xzb1bc8y0chkg6pkg2ax11g2xfrxqd9cjnmxhrahmabh30db451", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk11bGx2YWQgY29ubmVjdGlvbiBzdGF0dXMgaW5kaWNhdG9yIiwKICAibmFtZSI6ICJNdWxsdmFkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1BvYmVnYS9nbm9tZS1zaGVsbC1leHRlbnNpb24tbXVsbHZhZC1pbmRpY2F0b3IiLAogICJ1dWlkIjogIm11bGx2YWRpbmRpY2F0b3JAcG9iZWdhLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}, "41": {"version": "5", "sha256": "0xzb1bc8y0chkg6pkg2ax11g2xfrxqd9cjnmxhrahmabh30db451", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk11bGx2YWQgY29ubmVjdGlvbiBzdGF0dXMgaW5kaWNhdG9yIiwKICAibmFtZSI6ICJNdWxsdmFkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1BvYmVnYS9nbm9tZS1zaGVsbC1leHRlbnNpb24tbXVsbHZhZC1pbmRpY2F0b3IiLAogICJ1dWlkIjogIm11bGx2YWRpbmRpY2F0b3JAcG9iZWdhLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}, "42": {"version": "5", "sha256": "0xzb1bc8y0chkg6pkg2ax11g2xfrxqd9cjnmxhrahmabh30db451", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk11bGx2YWQgY29ubmVjdGlvbiBzdGF0dXMgaW5kaWNhdG9yIiwKICAibmFtZSI6ICJNdWxsdmFkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1BvYmVnYS9nbm9tZS1zaGVsbC1leHRlbnNpb24tbXVsbHZhZC1pbmRpY2F0b3IiLAogICJ1dWlkIjogIm11bGx2YWRpbmRpY2F0b3JAcG9iZWdhLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}}}
-, {"uuid": "task-widget@juozasmiskinis.gitlab.io", "name": "Task Widget", "pname": "task-widget", "description": "Display tasks next to the calendar widget.\n\nVisit our Wiki page for more information and troubleshooting.", "link": "https://extensions.gnome.org/extension/3569/task-widget/", "shell_version_map": {"38": {"version": "13", "sha256": "02v481prdpplc8gg0piaq5z51mc2s15czn641l59mhi8qsv19yi8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJhc2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQiLAogICJjb2ZmZWUiOiAiaHR0cHM6Ly93d3cuYnV5bWVhY29mZmVlLmNvbS9uYnh3ZnBtIiwKICAiZGVwZW5kZW5jaWVzIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzL0luc3RhbGxhdGlvbiIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGFza3MgbmV4dCB0byB0aGUgY2FsZW5kYXIgd2lkZ2V0LlxuXG5WaXNpdCBvdXIgV2lraSBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIGFuZCB0cm91Ymxlc2hvb3RpbmcuIiwKICAiZXBhdGgiOiAiL29yZy9nbm9tZS9zaGVsbC9leHRlbnNpb25zL3Rhc2std2lkZ2V0IiwKICAiZ3Jlc291cmNlIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRhc2std2lkZ2V0LmdyZXNvdXJjZSIsCiAgImxpYmVyYXBheSI6ICJodHRwczovL2xpYmVyYXBheS5jb20vam9hc2lzLyIsCiAgImxvY2FsZSI6ICJ1c2VyLXNwZWNpZmljIiwKICAibmFtZSI6ICJUYXNrIFdpZGdldCIsCiAgInBheXBhbCI6ICJodHRwczovL3BheXBhbC5tZS9qbWlza2luaXMiLAogICJzY2hlbWFzIjogInVzZXItc3BlY2lmaWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0IiwKICAidXVpZCI6ICJ0YXNrLXdpZGdldEBqdW96YXNtaXNraW5pcy5naXRsYWIuaW8iLAogICJ2ZXJzaW9uIjogMTMsCiAgIndpa2kiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2ptaXNraW5pcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdGFzay13aWRnZXQvd2lraXMiCn0="}, "40": {"version": "13", "sha256": "02v481prdpplc8gg0piaq5z51mc2s15czn641l59mhi8qsv19yi8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJhc2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQiLAogICJjb2ZmZWUiOiAiaHR0cHM6Ly93d3cuYnV5bWVhY29mZmVlLmNvbS9uYnh3ZnBtIiwKICAiZGVwZW5kZW5jaWVzIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzL0luc3RhbGxhdGlvbiIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGFza3MgbmV4dCB0byB0aGUgY2FsZW5kYXIgd2lkZ2V0LlxuXG5WaXNpdCBvdXIgV2lraSBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIGFuZCB0cm91Ymxlc2hvb3RpbmcuIiwKICAiZXBhdGgiOiAiL29yZy9nbm9tZS9zaGVsbC9leHRlbnNpb25zL3Rhc2std2lkZ2V0IiwKICAiZ3Jlc291cmNlIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRhc2std2lkZ2V0LmdyZXNvdXJjZSIsCiAgImxpYmVyYXBheSI6ICJodHRwczovL2xpYmVyYXBheS5jb20vam9hc2lzLyIsCiAgImxvY2FsZSI6ICJ1c2VyLXNwZWNpZmljIiwKICAibmFtZSI6ICJUYXNrIFdpZGdldCIsCiAgInBheXBhbCI6ICJodHRwczovL3BheXBhbC5tZS9qbWlza2luaXMiLAogICJzY2hlbWFzIjogInVzZXItc3BlY2lmaWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0IiwKICAidXVpZCI6ICJ0YXNrLXdpZGdldEBqdW96YXNtaXNraW5pcy5naXRsYWIuaW8iLAogICJ2ZXJzaW9uIjogMTMsCiAgIndpa2kiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2ptaXNraW5pcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdGFzay13aWRnZXQvd2lraXMiCn0="}, "41": {"version": "13", "sha256": "02v481prdpplc8gg0piaq5z51mc2s15czn641l59mhi8qsv19yi8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJhc2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQiLAogICJjb2ZmZWUiOiAiaHR0cHM6Ly93d3cuYnV5bWVhY29mZmVlLmNvbS9uYnh3ZnBtIiwKICAiZGVwZW5kZW5jaWVzIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzL0luc3RhbGxhdGlvbiIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGFza3MgbmV4dCB0byB0aGUgY2FsZW5kYXIgd2lkZ2V0LlxuXG5WaXNpdCBvdXIgV2lraSBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIGFuZCB0cm91Ymxlc2hvb3RpbmcuIiwKICAiZXBhdGgiOiAiL29yZy9nbm9tZS9zaGVsbC9leHRlbnNpb25zL3Rhc2std2lkZ2V0IiwKICAiZ3Jlc291cmNlIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRhc2std2lkZ2V0LmdyZXNvdXJjZSIsCiAgImxpYmVyYXBheSI6ICJodHRwczovL2xpYmVyYXBheS5jb20vam9hc2lzLyIsCiAgImxvY2FsZSI6ICJ1c2VyLXNwZWNpZmljIiwKICAibmFtZSI6ICJUYXNrIFdpZGdldCIsCiAgInBheXBhbCI6ICJodHRwczovL3BheXBhbC5tZS9qbWlza2luaXMiLAogICJzY2hlbWFzIjogInVzZXItc3BlY2lmaWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0IiwKICAidXVpZCI6ICJ0YXNrLXdpZGdldEBqdW96YXNtaXNraW5pcy5naXRsYWIuaW8iLAogICJ2ZXJzaW9uIjogMTMsCiAgIndpa2kiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2ptaXNraW5pcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdGFzay13aWRnZXQvd2lraXMiCn0="}, "42": {"version": "13", "sha256": "02v481prdpplc8gg0piaq5z51mc2s15czn641l59mhi8qsv19yi8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJhc2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQiLAogICJjb2ZmZWUiOiAiaHR0cHM6Ly93d3cuYnV5bWVhY29mZmVlLmNvbS9uYnh3ZnBtIiwKICAiZGVwZW5kZW5jaWVzIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzL0luc3RhbGxhdGlvbiIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGFza3MgbmV4dCB0byB0aGUgY2FsZW5kYXIgd2lkZ2V0LlxuXG5WaXNpdCBvdXIgV2lraSBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIGFuZCB0cm91Ymxlc2hvb3RpbmcuIiwKICAiZXBhdGgiOiAiL29yZy9nbm9tZS9zaGVsbC9leHRlbnNpb25zL3Rhc2std2lkZ2V0IiwKICAiZ3Jlc291cmNlIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRhc2std2lkZ2V0LmdyZXNvdXJjZSIsCiAgImxpYmVyYXBheSI6ICJodHRwczovL2xpYmVyYXBheS5jb20vam9hc2lzLyIsCiAgImxvY2FsZSI6ICJ1c2VyLXNwZWNpZmljIiwKICAibmFtZSI6ICJUYXNrIFdpZGdldCIsCiAgInBheXBhbCI6ICJodHRwczovL3BheXBhbC5tZS9qbWlza2luaXMiLAogICJzY2hlbWFzIjogInVzZXItc3BlY2lmaWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0IiwKICAidXVpZCI6ICJ0YXNrLXdpZGdldEBqdW96YXNtaXNraW5pcy5naXRsYWIuaW8iLAogICJ2ZXJzaW9uIjogMTMsCiAgIndpa2kiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2ptaXNraW5pcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdGFzay13aWRnZXQvd2lraXMiCn0="}}}
+, {"uuid": "task-widget@juozasmiskinis.gitlab.io", "name": "Task Widget", "pname": "task-widget", "description": "Display tasks next to the calendar widget.\n\nVisit our Wiki page for more information and troubleshooting.", "link": "https://extensions.gnome.org/extension/3569/task-widget/", "shell_version_map": {"38": {"version": "14", "sha256": "0kpjjgcxdla29h371ad1jl9811bvvjm4ycxav0wvsqxns6a2028n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJhc2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQiLAogICJjb2ZmZWUiOiAiaHR0cHM6Ly93d3cuYnV5bWVhY29mZmVlLmNvbS9uYnh3ZnBtIiwKICAiZGVwZW5kZW5jaWVzIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzL0luc3RhbGxhdGlvbiIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGFza3MgbmV4dCB0byB0aGUgY2FsZW5kYXIgd2lkZ2V0LlxuXG5WaXNpdCBvdXIgV2lraSBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIGFuZCB0cm91Ymxlc2hvb3RpbmcuIiwKICAiZXBhdGgiOiAiL29yZy9nbm9tZS9zaGVsbC9leHRlbnNpb25zL3Rhc2std2lkZ2V0IiwKICAiZ3Jlc291cmNlIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRhc2std2lkZ2V0LmdyZXNvdXJjZSIsCiAgImxpYmVyYXBheSI6ICJodHRwczovL2xpYmVyYXBheS5jb20vam9hc2lzLyIsCiAgImxvY2FsZSI6ICJ1c2VyLXNwZWNpZmljIiwKICAibmFtZSI6ICJUYXNrIFdpZGdldCIsCiAgInBheXBhbCI6ICJodHRwczovL3BheXBhbC5tZS9qbWlza2luaXMiLAogICJzY2hlbWFzIjogInVzZXItc3BlY2lmaWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vam1pc2tpbmlzL2dub21lLXNoZWxsLWV4dGVuc2lvbi10YXNrLXdpZGdldCIsCiAgInV1aWQiOiAidGFzay13aWRnZXRAanVvemFzbWlza2luaXMuZ2l0bGFiLmlvIiwKICAidmVyc2lvbiI6IDE0LAogICJ3aWtpIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzIgp9"}, "40": {"version": "14", "sha256": "0kpjjgcxdla29h371ad1jl9811bvvjm4ycxav0wvsqxns6a2028n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJhc2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQiLAogICJjb2ZmZWUiOiAiaHR0cHM6Ly93d3cuYnV5bWVhY29mZmVlLmNvbS9uYnh3ZnBtIiwKICAiZGVwZW5kZW5jaWVzIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzL0luc3RhbGxhdGlvbiIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGFza3MgbmV4dCB0byB0aGUgY2FsZW5kYXIgd2lkZ2V0LlxuXG5WaXNpdCBvdXIgV2lraSBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIGFuZCB0cm91Ymxlc2hvb3RpbmcuIiwKICAiZXBhdGgiOiAiL29yZy9nbm9tZS9zaGVsbC9leHRlbnNpb25zL3Rhc2std2lkZ2V0IiwKICAiZ3Jlc291cmNlIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRhc2std2lkZ2V0LmdyZXNvdXJjZSIsCiAgImxpYmVyYXBheSI6ICJodHRwczovL2xpYmVyYXBheS5jb20vam9hc2lzLyIsCiAgImxvY2FsZSI6ICJ1c2VyLXNwZWNpZmljIiwKICAibmFtZSI6ICJUYXNrIFdpZGdldCIsCiAgInBheXBhbCI6ICJodHRwczovL3BheXBhbC5tZS9qbWlza2luaXMiLAogICJzY2hlbWFzIjogInVzZXItc3BlY2lmaWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vam1pc2tpbmlzL2dub21lLXNoZWxsLWV4dGVuc2lvbi10YXNrLXdpZGdldCIsCiAgInV1aWQiOiAidGFzay13aWRnZXRAanVvemFzbWlza2luaXMuZ2l0bGFiLmlvIiwKICAidmVyc2lvbiI6IDE0LAogICJ3aWtpIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzIgp9"}, "41": {"version": "14", "sha256": "0kpjjgcxdla29h371ad1jl9811bvvjm4ycxav0wvsqxns6a2028n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJhc2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQiLAogICJjb2ZmZWUiOiAiaHR0cHM6Ly93d3cuYnV5bWVhY29mZmVlLmNvbS9uYnh3ZnBtIiwKICAiZGVwZW5kZW5jaWVzIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzL0luc3RhbGxhdGlvbiIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGFza3MgbmV4dCB0byB0aGUgY2FsZW5kYXIgd2lkZ2V0LlxuXG5WaXNpdCBvdXIgV2lraSBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIGFuZCB0cm91Ymxlc2hvb3RpbmcuIiwKICAiZXBhdGgiOiAiL29yZy9nbm9tZS9zaGVsbC9leHRlbnNpb25zL3Rhc2std2lkZ2V0IiwKICAiZ3Jlc291cmNlIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRhc2std2lkZ2V0LmdyZXNvdXJjZSIsCiAgImxpYmVyYXBheSI6ICJodHRwczovL2xpYmVyYXBheS5jb20vam9hc2lzLyIsCiAgImxvY2FsZSI6ICJ1c2VyLXNwZWNpZmljIiwKICAibmFtZSI6ICJUYXNrIFdpZGdldCIsCiAgInBheXBhbCI6ICJodHRwczovL3BheXBhbC5tZS9qbWlza2luaXMiLAogICJzY2hlbWFzIjogInVzZXItc3BlY2lmaWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vam1pc2tpbmlzL2dub21lLXNoZWxsLWV4dGVuc2lvbi10YXNrLXdpZGdldCIsCiAgInV1aWQiOiAidGFzay13aWRnZXRAanVvemFzbWlza2luaXMuZ2l0bGFiLmlvIiwKICAidmVyc2lvbiI6IDE0LAogICJ3aWtpIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzIgp9"}, "42": {"version": "14", "sha256": "0kpjjgcxdla29h371ad1jl9811bvvjm4ycxav0wvsqxns6a2028n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJhc2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQiLAogICJjb2ZmZWUiOiAiaHR0cHM6Ly93d3cuYnV5bWVhY29mZmVlLmNvbS9uYnh3ZnBtIiwKICAiZGVwZW5kZW5jaWVzIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzL0luc3RhbGxhdGlvbiIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGFza3MgbmV4dCB0byB0aGUgY2FsZW5kYXIgd2lkZ2V0LlxuXG5WaXNpdCBvdXIgV2lraSBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIGFuZCB0cm91Ymxlc2hvb3RpbmcuIiwKICAiZXBhdGgiOiAiL29yZy9nbm9tZS9zaGVsbC9leHRlbnNpb25zL3Rhc2std2lkZ2V0IiwKICAiZ3Jlc291cmNlIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRhc2std2lkZ2V0LmdyZXNvdXJjZSIsCiAgImxpYmVyYXBheSI6ICJodHRwczovL2xpYmVyYXBheS5jb20vam9hc2lzLyIsCiAgImxvY2FsZSI6ICJ1c2VyLXNwZWNpZmljIiwKICAibmFtZSI6ICJUYXNrIFdpZGdldCIsCiAgInBheXBhbCI6ICJodHRwczovL3BheXBhbC5tZS9qbWlza2luaXMiLAogICJzY2hlbWFzIjogInVzZXItc3BlY2lmaWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vam1pc2tpbmlzL2dub21lLXNoZWxsLWV4dGVuc2lvbi10YXNrLXdpZGdldCIsCiAgInV1aWQiOiAidGFzay13aWRnZXRAanVvemFzbWlza2luaXMuZ2l0bGFiLmlvIiwKICAidmVyc2lvbiI6IDE0LAogICJ3aWtpIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzIgp9"}, "43": {"version": "14", "sha256": "0kpjjgcxdla29h371ad1jl9811bvvjm4ycxav0wvsqxns6a2028n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJhc2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQiLAogICJjb2ZmZWUiOiAiaHR0cHM6Ly93d3cuYnV5bWVhY29mZmVlLmNvbS9uYnh3ZnBtIiwKICAiZGVwZW5kZW5jaWVzIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzL0luc3RhbGxhdGlvbiIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGFza3MgbmV4dCB0byB0aGUgY2FsZW5kYXIgd2lkZ2V0LlxuXG5WaXNpdCBvdXIgV2lraSBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIGFuZCB0cm91Ymxlc2hvb3RpbmcuIiwKICAiZXBhdGgiOiAiL29yZy9nbm9tZS9zaGVsbC9leHRlbnNpb25zL3Rhc2std2lkZ2V0IiwKICAiZ3Jlc291cmNlIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRhc2std2lkZ2V0LmdyZXNvdXJjZSIsCiAgImxpYmVyYXBheSI6ICJodHRwczovL2xpYmVyYXBheS5jb20vam9hc2lzLyIsCiAgImxvY2FsZSI6ICJ1c2VyLXNwZWNpZmljIiwKICAibmFtZSI6ICJUYXNrIFdpZGdldCIsCiAgInBheXBhbCI6ICJodHRwczovL3BheXBhbC5tZS9qbWlza2luaXMiLAogICJzY2hlbWFzIjogInVzZXItc3BlY2lmaWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vam1pc2tpbmlzL2dub21lLXNoZWxsLWV4dGVuc2lvbi10YXNrLXdpZGdldCIsCiAgInV1aWQiOiAidGFzay13aWRnZXRAanVvemFzbWlza2luaXMuZ2l0bGFiLmlvIiwKICAidmVyc2lvbiI6IDE0LAogICJ3aWtpIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzIgp9"}}}
 , {"uuid": "air-quality@mcardillo55", "name": "Air Quality", "pname": "air-quality", "description": "View local air quality from PurpleAir in the top bar", "link": "https://extensions.gnome.org/extension/3574/air-quality/", "shell_version_map": {"40": {"version": "2", "sha256": "037hbbb6z3gj818hqxqq96yszd1hka57pn4gj9f5kps7ak5hca4l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlZpZXcgbG9jYWwgYWlyIHF1YWxpdHkgZnJvbSBQdXJwbGVBaXIgaW4gdGhlIHRvcCBiYXIiLAogICJuYW1lIjogIkFpciBRdWFsaXR5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21jYXJkaWxsbzU1L2dub21lLXNoZWxsLWV4dGVuc2lvbi1haXItcXVhbGl0eSIsCiAgInV1aWQiOiAiYWlyLXF1YWxpdHlAbWNhcmRpbGxvNTUiLAogICJ2ZXJzaW9uIjogMgp9"}}}
 , {"uuid": "oclock@ortega.tech", "name": "OClock", "pname": "oclock", "description": "Shows an analog clock on the panel", "link": "https://extensions.gnome.org/extension/3578/oclock/", "shell_version_map": {"40": {"version": "2", "sha256": "1pp155a51c1fsmlwfsr1hxsv79xra3sbqrda3fkvhrv4jif7n7s8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJKZXJlbWlhcyBPcnRlZ2EiLAogICJkZXNjcmlwdGlvbiI6ICJTaG93cyBhbiBhbmFsb2cgY2xvY2sgb24gdGhlIHBhbmVsIiwKICAibmFtZSI6ICJPQ2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly93d3cuZ2l0aHViLmNvbS9qZXJlLW9ydGVnYTI0L2dub21lLXNoZWxsLWV4dGVuc2lvbi1vY2xvY2svIiwKICAidXVpZCI6ICJvY2xvY2tAb3J0ZWdhLnRlY2giLAogICJ2ZXJzaW9uIjogMgp9"}, "41": {"version": "2", "sha256": "1pp155a51c1fsmlwfsr1hxsv79xra3sbqrda3fkvhrv4jif7n7s8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJKZXJlbWlhcyBPcnRlZ2EiLAogICJkZXNjcmlwdGlvbiI6ICJTaG93cyBhbiBhbmFsb2cgY2xvY2sgb24gdGhlIHBhbmVsIiwKICAibmFtZSI6ICJPQ2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly93d3cuZ2l0aHViLmNvbS9qZXJlLW9ydGVnYTI0L2dub21lLXNoZWxsLWV4dGVuc2lvbi1vY2xvY2svIiwKICAidXVpZCI6ICJvY2xvY2tAb3J0ZWdhLnRlY2giLAogICJ2ZXJzaW9uIjogMgp9"}}}
 , {"uuid": "azan@hatem.masmoudi.org", "name": "Azan Islamic Prayer Times", "pname": "azan-islamic-prayer-times", "description": "Azan is an Islamic prayer times extension for Gnome Shell based on the extension by Fahrinh.\n\nFeatures\n- List compulsory prayer times\n Optionally display Imsak, Sunrise, Sunset and Midnight\n- Show remaining time for the upcoming prayer.\n- Show current date in Hijri calendar.\n- Display a notification when it's time for prayer.\n- Automatic Geoclue2 location detection\n- Show times in 24 hour and 12 hour formats\n- Hijri date adjusment\n- Moon status icon", "link": "https://extensions.gnome.org/extension/3602/azan-islamic-prayer-times/", "shell_version_map": {"38": {"version": "2", "sha256": "1z58m1w04mdddq9p3102jv852zks41f2l7xbx7j8jcljy4ahiqll", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF6YW4gaXMgYW4gSXNsYW1pYyBwcmF5ZXIgdGltZXMgZXh0ZW5zaW9uIGZvciBHbm9tZSBTaGVsbCBiYXNlZCBvbiB0aGUgZXh0ZW5zaW9uIGJ5IEZhaHJpbmguXG5cbkZlYXR1cmVzXG4tIExpc3QgY29tcHVsc29yeSBwcmF5ZXIgdGltZXNcbiBPcHRpb25hbGx5IGRpc3BsYXkgSW1zYWssIFN1bnJpc2UsIFN1bnNldCBhbmQgTWlkbmlnaHRcbi0gU2hvdyByZW1haW5pbmcgdGltZSBmb3IgdGhlIHVwY29taW5nIHByYXllci5cbi0gU2hvdyBjdXJyZW50IGRhdGUgaW4gSGlqcmkgY2FsZW5kYXIuXG4tIERpc3BsYXkgYSBub3RpZmljYXRpb24gd2hlbiBpdCdzIHRpbWUgZm9yIHByYXllci5cbi0gQXV0b21hdGljIEdlb2NsdWUyIGxvY2F0aW9uIGRldGVjdGlvblxuLSBTaG93IHRpbWVzIGluIDI0IGhvdXIgYW5kIDEyIGhvdXIgZm9ybWF0c1xuLSBIaWpyaSBkYXRlIGFkanVzbWVudFxuLSBNb29uIHN0YXR1cyBpY29uIiwKICAibmFtZSI6ICJBemFuIElzbGFtaWMgUHJheWVyIFRpbWVzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmF6YW4iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYuMSIsCiAgICAiMy4zOC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vaG1hc21vdWRpL2F6YW4tZ25vbWUtc2hlbGwtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJhemFuQGhhdGVtLm1hc21vdWRpLm9yZyIsCiAgInZlcnNpb24iOiAyCn0="}}}
@@ -377,18 +377,18 @@
 , {"uuid": "arcmenu@arcmenu.com", "name": "ArcMenu", "pname": "arcmenu", "description": "Application menu for GNOME Shell\n\nFeatures include: various menu layouts, built in GNOME search, quick access to system shortcuts, and much more!\n\nCommon solutions for ERROR message:\n - Restart your GNOME session after updating ArcMenu.\n - Install one of the following packages: 'gir1.2-gmenu-3.0' or 'gnome-menus'\n\nGeneral Help:\n - Visit https://gitlab.com/arcmenu/ArcMenu/-/wikis/home\n\nPlease report all bugs or issues at https://gitlab.com/arcmenu/ArcMenu", "link": "https://extensions.gnome.org/extension/3628/arcmenu/", "shell_version_map": {"38": {"version": "13", "sha256": "1sqsj5vj234c53m508wa2zxjkqnf1pcgm6iqmj2k33dq7h75nhlw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcGxpY2F0aW9uIG1lbnUgZm9yIEdOT01FIFNoZWxsXG5cbkZlYXR1cmVzIGluY2x1ZGU6IHZhcmlvdXMgbWVudSBsYXlvdXRzLCBidWlsdCBpbiBHTk9NRSBzZWFyY2gsIHF1aWNrIGFjY2VzcyB0byBzeXN0ZW0gc2hvcnRjdXRzLCBhbmQgbXVjaCBtb3JlIVxuXG5Db21tb24gc29sdXRpb25zIGZvciBFUlJPUiBtZXNzYWdlOlxuIC0gUmVzdGFydCB5b3VyIEdOT01FIHNlc3Npb24gYWZ0ZXIgdXBkYXRpbmcgQXJjTWVudS5cbiAtIEluc3RhbGwgb25lIG9mIHRoZSBmb2xsb3dpbmcgcGFja2FnZXM6ICdnaXIxLjItZ21lbnUtMy4wJyBvciAnZ25vbWUtbWVudXMnXG5cbkdlbmVyYWwgSGVscDpcbiAtIFZpc2l0IGh0dHBzOi8vZ2l0bGFiLmNvbS9hcmNtZW51L0FyY01lbnUvLS93aWtpcy9ob21lXG5cblBsZWFzZSByZXBvcnQgYWxsIGJ1Z3Mgb3IgaXNzdWVzIGF0IGh0dHBzOi8vZ2l0bGFiLmNvbS9hcmNtZW51L0FyY01lbnUiLAogICJleHRlbnNpb24taWQiOiAiYXJjbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImFyY21lbnUiLAogICJuYW1lIjogIkFyY01lbnUiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXJjbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2FyY21lbnUvQXJjTWVudSIsCiAgInV1aWQiOiAiYXJjbWVudUBhcmNtZW51LmNvbSIsCiAgInZlcnNpb24iOiAxMwp9"}, "40": {"version": "27", "sha256": "01h4r7alddj1fly4l4rxpji17ilmf0v56559rdnsl0sy1lx8bkrq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcGxpY2F0aW9uIG1lbnUgZm9yIEdOT01FIFNoZWxsXG5cbkZlYXR1cmVzIGluY2x1ZGU6IHZhcmlvdXMgbWVudSBsYXlvdXRzLCBidWlsdCBpbiBHTk9NRSBzZWFyY2gsIHF1aWNrIGFjY2VzcyB0byBzeXN0ZW0gc2hvcnRjdXRzLCBhbmQgbXVjaCBtb3JlIVxuXG5Db21tb24gc29sdXRpb25zIGZvciBFUlJPUiBtZXNzYWdlOlxuIC0gUmVzdGFydCB5b3VyIEdOT01FIHNlc3Npb24gYWZ0ZXIgdXBkYXRpbmcgQXJjTWVudS5cbiAtIEluc3RhbGwgb25lIG9mIHRoZSBmb2xsb3dpbmcgcGFja2FnZXM6ICdnaXIxLjItZ21lbnUtMy4wJyBvciAnZ25vbWUtbWVudXMnXG5cbkdlbmVyYWwgSGVscDpcbiAtIFZpc2l0IGh0dHBzOi8vZ2l0bGFiLmNvbS9hcmNtZW51L0FyY01lbnUvLS93aWtpcy9ob21lXG5cblBsZWFzZSByZXBvcnQgYWxsIGJ1Z3Mgb3IgaXNzdWVzIGF0IGh0dHBzOi8vZ2l0bGFiLmNvbS9hcmNtZW51L0FyY01lbnUiLAogICJleHRlbnNpb24taWQiOiAiYXJjbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImFyY21lbnUiLAogICJuYW1lIjogIkFyY01lbnUiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXJjbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vYXJjbWVudS9BcmNNZW51IiwKICAidXVpZCI6ICJhcmNtZW51QGFyY21lbnUuY29tIiwKICAidmVyc2lvbiI6IDI3Cn0="}, "41": {"version": "27", "sha256": "01h4r7alddj1fly4l4rxpji17ilmf0v56559rdnsl0sy1lx8bkrq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcGxpY2F0aW9uIG1lbnUgZm9yIEdOT01FIFNoZWxsXG5cbkZlYXR1cmVzIGluY2x1ZGU6IHZhcmlvdXMgbWVudSBsYXlvdXRzLCBidWlsdCBpbiBHTk9NRSBzZWFyY2gsIHF1aWNrIGFjY2VzcyB0byBzeXN0ZW0gc2hvcnRjdXRzLCBhbmQgbXVjaCBtb3JlIVxuXG5Db21tb24gc29sdXRpb25zIGZvciBFUlJPUiBtZXNzYWdlOlxuIC0gUmVzdGFydCB5b3VyIEdOT01FIHNlc3Npb24gYWZ0ZXIgdXBkYXRpbmcgQXJjTWVudS5cbiAtIEluc3RhbGwgb25lIG9mIHRoZSBmb2xsb3dpbmcgcGFja2FnZXM6ICdnaXIxLjItZ21lbnUtMy4wJyBvciAnZ25vbWUtbWVudXMnXG5cbkdlbmVyYWwgSGVscDpcbiAtIFZpc2l0IGh0dHBzOi8vZ2l0bGFiLmNvbS9hcmNtZW51L0FyY01lbnUvLS93aWtpcy9ob21lXG5cblBsZWFzZSByZXBvcnQgYWxsIGJ1Z3Mgb3IgaXNzdWVzIGF0IGh0dHBzOi8vZ2l0bGFiLmNvbS9hcmNtZW51L0FyY01lbnUiLAogICJleHRlbnNpb24taWQiOiAiYXJjbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImFyY21lbnUiLAogICJuYW1lIjogIkFyY01lbnUiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXJjbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vYXJjbWVudS9BcmNNZW51IiwKICAidXVpZCI6ICJhcmNtZW51QGFyY21lbnUuY29tIiwKICAidmVyc2lvbiI6IDI3Cn0="}, "42": {"version": "39", "sha256": "04plv6adrkm72xd9jj5ayaccm9rxds0iasvb06wp9pl55pi7acrn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcGxpY2F0aW9uIG1lbnUgZm9yIEdOT01FIFNoZWxsXG5cbkZlYXR1cmVzIGluY2x1ZGU6IHZhcmlvdXMgbWVudSBsYXlvdXRzLCBidWlsdCBpbiBHTk9NRSBzZWFyY2gsIHF1aWNrIGFjY2VzcyB0byBzeXN0ZW0gc2hvcnRjdXRzLCBhbmQgbXVjaCBtb3JlIVxuXG5Db21tb24gc29sdXRpb25zIGZvciBFUlJPUiBtZXNzYWdlOlxuIC0gUmVzdGFydCB5b3VyIEdOT01FIHNlc3Npb24gYWZ0ZXIgdXBkYXRpbmcgQXJjTWVudS5cbiAtIEluc3RhbGwgb25lIG9mIHRoZSBmb2xsb3dpbmcgcGFja2FnZXM6ICdnaXIxLjItZ21lbnUtMy4wJyBvciAnZ25vbWUtbWVudXMnXG5cbkdlbmVyYWwgSGVscDpcbiAtIFZpc2l0IGh0dHBzOi8vZ2l0bGFiLmNvbS9hcmNtZW51L0FyY01lbnUvLS93aWtpcy9ob21lXG5cblBsZWFzZSByZXBvcnQgYWxsIGJ1Z3Mgb3IgaXNzdWVzIGF0IGh0dHBzOi8vZ2l0bGFiLmNvbS9hcmNtZW51L0FyY01lbnUiLAogICJleHRlbnNpb24taWQiOiAiYXJjbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImFyY21lbnUiLAogICJuYW1lIjogIkFyY01lbnUiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXJjbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vYXJjbWVudS9BcmNNZW51IiwKICAidXVpZCI6ICJhcmNtZW51QGFyY21lbnUuY29tIiwKICAidmVyc2lvbiI6IDM5Cn0="}, "43": {"version": "39", "sha256": "04plv6adrkm72xd9jj5ayaccm9rxds0iasvb06wp9pl55pi7acrn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcGxpY2F0aW9uIG1lbnUgZm9yIEdOT01FIFNoZWxsXG5cbkZlYXR1cmVzIGluY2x1ZGU6IHZhcmlvdXMgbWVudSBsYXlvdXRzLCBidWlsdCBpbiBHTk9NRSBzZWFyY2gsIHF1aWNrIGFjY2VzcyB0byBzeXN0ZW0gc2hvcnRjdXRzLCBhbmQgbXVjaCBtb3JlIVxuXG5Db21tb24gc29sdXRpb25zIGZvciBFUlJPUiBtZXNzYWdlOlxuIC0gUmVzdGFydCB5b3VyIEdOT01FIHNlc3Npb24gYWZ0ZXIgdXBkYXRpbmcgQXJjTWVudS5cbiAtIEluc3RhbGwgb25lIG9mIHRoZSBmb2xsb3dpbmcgcGFja2FnZXM6ICdnaXIxLjItZ21lbnUtMy4wJyBvciAnZ25vbWUtbWVudXMnXG5cbkdlbmVyYWwgSGVscDpcbiAtIFZpc2l0IGh0dHBzOi8vZ2l0bGFiLmNvbS9hcmNtZW51L0FyY01lbnUvLS93aWtpcy9ob21lXG5cblBsZWFzZSByZXBvcnQgYWxsIGJ1Z3Mgb3IgaXNzdWVzIGF0IGh0dHBzOi8vZ2l0bGFiLmNvbS9hcmNtZW51L0FyY01lbnUiLAogICJleHRlbnNpb24taWQiOiAiYXJjbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImFyY21lbnUiLAogICJuYW1lIjogIkFyY01lbnUiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXJjbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vYXJjbWVudS9BcmNNZW51IiwKICAidXVpZCI6ICJhcmNtZW51QGFyY21lbnUuY29tIiwKICAidmVyc2lvbiI6IDM5Cn0="}}}
 , {"uuid": "fixedimelist@alynx.one", "name": "Fixed IME List", "pname": "fixed-ime-list", "description": "Make the IME list in fixed sequence instead of MRU.", "link": "https://extensions.gnome.org/extension/3663/fixed-ime-list/", "shell_version_map": {"38": {"version": "6", "sha256": "0v99flnb23cjv32wr7r077q29jvgs7j5fjx6dc6qm2n04f1qiibz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgdGhlIElNRSBsaXN0IGluIGZpeGVkIHNlcXVlbmNlIGluc3RlYWQgb2YgTVJVLiIsCiAgIm5hbWUiOiAiRml4ZWQgSU1FIExpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQWx5bnhaaG91L2dub21lLXNoZWxsLWV4dGVuc2lvbi1maXhlZC1pbWUtbGlzdC8iLAogICJ1dWlkIjogImZpeGVkaW1lbGlzdEBhbHlueC5vbmUiLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "6", "sha256": "0v99flnb23cjv32wr7r077q29jvgs7j5fjx6dc6qm2n04f1qiibz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgdGhlIElNRSBsaXN0IGluIGZpeGVkIHNlcXVlbmNlIGluc3RlYWQgb2YgTVJVLiIsCiAgIm5hbWUiOiAiRml4ZWQgSU1FIExpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQWx5bnhaaG91L2dub21lLXNoZWxsLWV4dGVuc2lvbi1maXhlZC1pbWUtbGlzdC8iLAogICJ1dWlkIjogImZpeGVkaW1lbGlzdEBhbHlueC5vbmUiLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "topindicatorapp@quiro9.com", "name": "Top Indicator App", "pname": "top-indicator-app", "description": "This extension is 'appindicators' from ubuntu, renamed 'top indicator app' under the terms of the GPL v2 +. it is the extension itself that Ubuntu offers as a native experience on your system, but so you can install it in other distros since the current one in gnome-extensions is empty.I will offer stable updates when possible.", "link": "https://extensions.gnome.org/extension/3681/top-indicator-app/", "shell_version_map": {"38": {"version": "2", "sha256": "12r4fxgsgd7jn001vlzqrsd86ci62zxk0b9p3bkdqh6g5hj3la35", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGlzICdhcHBpbmRpY2F0b3JzJyBmcm9tIHVidW50dSwgcmVuYW1lZCAndG9wIGluZGljYXRvciBhcHAnIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR1BMIHYyICsuIGl0IGlzIHRoZSBleHRlbnNpb24gaXRzZWxmIHRoYXQgVWJ1bnR1IG9mZmVycyBhcyBhIG5hdGl2ZSBleHBlcmllbmNlIG9uIHlvdXIgc3lzdGVtLCBidXQgc28geW91IGNhbiBpbnN0YWxsIGl0IGluIG90aGVyIGRpc3Ryb3Mgc2luY2UgdGhlIGN1cnJlbnQgb25lIGluIGdub21lLWV4dGVuc2lvbnMgaXMgZW1wdHkuSSB3aWxsIG9mZmVyIHN0YWJsZSB1cGRhdGVzIHdoZW4gcG9zc2libGUuIiwKICAibmFtZSI6ICJUb3AgSW5kaWNhdG9yIEFwcCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3VidW50dS9nbm9tZS1zaGVsbC1leHRlbnNpb24tYXBwaW5kaWNhdG9yIiwKICAidXVpZCI6ICJ0b3BpbmRpY2F0b3JhcHBAcXVpcm85LmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}}}
-, {"uuid": "reorder-workspaces@jer.dev", "name": "Reorder Workspaces", "pname": "reorder-workspaces", "description": "Reorder workspaces in the overview with Alt+Up/Alt+Down", "link": "https://extensions.gnome.org/extension/3685/reorder-workspaces/", "shell_version_map": {"38": {"version": "12", "sha256": "0l4ivdbhsnpmr2bngqrzmybal6i1ni85dlpd5ir0dafd95yl7y04", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlb3JkZXIgd29ya3NwYWNlcyBpbiB0aGUgb3ZlcnZpZXcgd2l0aCBBbHQrVXAvQWx0K0Rvd24iLAogICJuYW1lIjogIlJlb3JkZXIgV29ya3NwYWNlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yZW9yZGVyLXdvcmtzcGFjZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zbW1yMC9nbm9tZS1yZW9yZGVyLXdvcmtzcGFjZXMiLAogICJ1dWlkIjogInJlb3JkZXItd29ya3NwYWNlc0BqZXIuZGV2IiwKICAidmVyc2lvbiI6IDEyCn0="}, "40": {"version": "12", "sha256": "0l4ivdbhsnpmr2bngqrzmybal6i1ni85dlpd5ir0dafd95yl7y04", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlb3JkZXIgd29ya3NwYWNlcyBpbiB0aGUgb3ZlcnZpZXcgd2l0aCBBbHQrVXAvQWx0K0Rvd24iLAogICJuYW1lIjogIlJlb3JkZXIgV29ya3NwYWNlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yZW9yZGVyLXdvcmtzcGFjZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zbW1yMC9nbm9tZS1yZW9yZGVyLXdvcmtzcGFjZXMiLAogICJ1dWlkIjogInJlb3JkZXItd29ya3NwYWNlc0BqZXIuZGV2IiwKICAidmVyc2lvbiI6IDEyCn0="}, "41": {"version": "12", "sha256": "0l4ivdbhsnpmr2bngqrzmybal6i1ni85dlpd5ir0dafd95yl7y04", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlb3JkZXIgd29ya3NwYWNlcyBpbiB0aGUgb3ZlcnZpZXcgd2l0aCBBbHQrVXAvQWx0K0Rvd24iLAogICJuYW1lIjogIlJlb3JkZXIgV29ya3NwYWNlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yZW9yZGVyLXdvcmtzcGFjZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zbW1yMC9nbm9tZS1yZW9yZGVyLXdvcmtzcGFjZXMiLAogICJ1dWlkIjogInJlb3JkZXItd29ya3NwYWNlc0BqZXIuZGV2IiwKICAidmVyc2lvbiI6IDEyCn0="}, "42": {"version": "13", "sha256": "0w2gpr4pbqzgwd4d28vy5hxc23yy1hc99yhgs8g5s4bzia6a9hc3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlb3JkZXIgd29ya3NwYWNlcyBpbiB0aGUgb3ZlcnZpZXcgd2l0aCBBbHQrVXAvQWx0K0Rvd24iLAogICJuYW1lIjogIlJlb3JkZXIgV29ya3NwYWNlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yZW9yZGVyLXdvcmtzcGFjZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc21tcjAvZ25vbWUtcmVvcmRlci13b3Jrc3BhY2VzIiwKICAidXVpZCI6ICJyZW9yZGVyLXdvcmtzcGFjZXNAamVyLmRldiIsCiAgInZlcnNpb24iOiAxMwp9"}}}
+, {"uuid": "reorder-workspaces@jer.dev", "name": "Reorder Workspaces", "pname": "reorder-workspaces", "description": "Reorder workspaces in the overview with Alt+Up/Alt+Down", "link": "https://extensions.gnome.org/extension/3685/reorder-workspaces/", "shell_version_map": {"38": {"version": "12", "sha256": "0l4ivdbhsnpmr2bngqrzmybal6i1ni85dlpd5ir0dafd95yl7y04", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlb3JkZXIgd29ya3NwYWNlcyBpbiB0aGUgb3ZlcnZpZXcgd2l0aCBBbHQrVXAvQWx0K0Rvd24iLAogICJuYW1lIjogIlJlb3JkZXIgV29ya3NwYWNlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yZW9yZGVyLXdvcmtzcGFjZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zbW1yMC9nbm9tZS1yZW9yZGVyLXdvcmtzcGFjZXMiLAogICJ1dWlkIjogInJlb3JkZXItd29ya3NwYWNlc0BqZXIuZGV2IiwKICAidmVyc2lvbiI6IDEyCn0="}, "40": {"version": "12", "sha256": "0l4ivdbhsnpmr2bngqrzmybal6i1ni85dlpd5ir0dafd95yl7y04", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlb3JkZXIgd29ya3NwYWNlcyBpbiB0aGUgb3ZlcnZpZXcgd2l0aCBBbHQrVXAvQWx0K0Rvd24iLAogICJuYW1lIjogIlJlb3JkZXIgV29ya3NwYWNlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yZW9yZGVyLXdvcmtzcGFjZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zbW1yMC9nbm9tZS1yZW9yZGVyLXdvcmtzcGFjZXMiLAogICJ1dWlkIjogInJlb3JkZXItd29ya3NwYWNlc0BqZXIuZGV2IiwKICAidmVyc2lvbiI6IDEyCn0="}, "41": {"version": "12", "sha256": "0l4ivdbhsnpmr2bngqrzmybal6i1ni85dlpd5ir0dafd95yl7y04", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlb3JkZXIgd29ya3NwYWNlcyBpbiB0aGUgb3ZlcnZpZXcgd2l0aCBBbHQrVXAvQWx0K0Rvd24iLAogICJuYW1lIjogIlJlb3JkZXIgV29ya3NwYWNlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yZW9yZGVyLXdvcmtzcGFjZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zbW1yMC9nbm9tZS1yZW9yZGVyLXdvcmtzcGFjZXMiLAogICJ1dWlkIjogInJlb3JkZXItd29ya3NwYWNlc0BqZXIuZGV2IiwKICAidmVyc2lvbiI6IDEyCn0="}, "42": {"version": "15", "sha256": "0i23jb0piamykqypavaviwlwvb44dw4jda6zmqqz3dlgkqjbrigm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlb3JkZXIgd29ya3NwYWNlcyBpbiB0aGUgb3ZlcnZpZXcgd2l0aCBBbHQrVXAvQWx0K0Rvd24iLAogICJuYW1lIjogIlJlb3JkZXIgV29ya3NwYWNlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yZW9yZGVyLXdvcmtzcGFjZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NtbXIwL2dub21lLXJlb3JkZXItd29ya3NwYWNlcyIsCiAgInV1aWQiOiAicmVvcmRlci13b3Jrc3BhY2VzQGplci5kZXYiLAogICJ2ZXJzaW9uIjogMTUKfQ=="}, "43": {"version": "15", "sha256": "0i23jb0piamykqypavaviwlwvb44dw4jda6zmqqz3dlgkqjbrigm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlb3JkZXIgd29ya3NwYWNlcyBpbiB0aGUgb3ZlcnZpZXcgd2l0aCBBbHQrVXAvQWx0K0Rvd24iLAogICJuYW1lIjogIlJlb3JkZXIgV29ya3NwYWNlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yZW9yZGVyLXdvcmtzcGFjZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NtbXIwL2dub21lLXJlb3JkZXItd29ya3NwYWNlcyIsCiAgInV1aWQiOiAicmVvcmRlci13b3Jrc3BhY2VzQGplci5kZXYiLAogICJ2ZXJzaW9uIjogMTUKfQ=="}}}
 , {"uuid": "eos-hack@endlessos.org", "name": "Hack", "pname": "hack", "description": "Add the Flip to Hack experience to the desktop", "link": "https://extensions.gnome.org/extension/3690/hack/", "shell_version_map": {"38": {"version": "11", "sha256": "1m45rylhv1lw7vh8zmpsfcs1fiv0ah770gk14x965mkalqgph2ha", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCB0aGUgRmxpcCB0byBIYWNrIGV4cGVyaWVuY2UgdG8gdGhlIGRlc2t0b3AiLAogICJuYW1lIjogIkhhY2siLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmVuZGxlc3Nvcy5oYWNrLWV4dGVuc2lvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VuZGxlc3NtL2Vvcy1oYWNrLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiZW9zLWhhY2tAZW5kbGVzc29zLm9yZyIsCiAgInZlcnNpb24iOiAxMQp9"}, "40": {"version": "9", "sha256": "1j0sizyv7j6fdkp9ich8pfa78igf5f4fj2l4p2ncjc3zbz06a32z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCB0aGUgRmxpcCB0byBIYWNrIGV4cGVyaWVuY2UgdG8gdGhlIGRlc2t0b3AiLAogICJuYW1lIjogIkhhY2siLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmVuZGxlc3Nvcy5oYWNrLWV4dGVuc2lvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VuZGxlc3NtL2Vvcy1oYWNrLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiZW9zLWhhY2tAZW5kbGVzc29zLm9yZyIsCiAgInZlcnNpb24iOiA5Cn0="}, "41": {"version": "9", "sha256": "1j0sizyv7j6fdkp9ich8pfa78igf5f4fj2l4p2ncjc3zbz06a32z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCB0aGUgRmxpcCB0byBIYWNrIGV4cGVyaWVuY2UgdG8gdGhlIGRlc2t0b3AiLAogICJuYW1lIjogIkhhY2siLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmVuZGxlc3Nvcy5oYWNrLWV4dGVuc2lvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VuZGxlc3NtL2Vvcy1oYWNrLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiZW9zLWhhY2tAZW5kbGVzc29zLm9yZyIsCiAgInZlcnNpb24iOiA5Cn0="}, "42": {"version": "9", "sha256": "1j0sizyv7j6fdkp9ich8pfa78igf5f4fj2l4p2ncjc3zbz06a32z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCB0aGUgRmxpcCB0byBIYWNrIGV4cGVyaWVuY2UgdG8gdGhlIGRlc2t0b3AiLAogICJuYW1lIjogIkhhY2siLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmVuZGxlc3Nvcy5oYWNrLWV4dGVuc2lvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VuZGxlc3NtL2Vvcy1oYWNrLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiZW9zLWhhY2tAZW5kbGVzc29zLm9yZyIsCiAgInZlcnNpb24iOiA5Cn0="}}}
 , {"uuid": "desktop-scroller@calango", "name": "Desktop Scroller (GNOME 3.38)", "pname": "desktop-scroller-gnome-338", "description": "Switch between desktops scrolling at the upper edge of the screen, including in overview. Change your delay between scroll events in extension.js. If you want to scroll on more lines from the top of the screen just remember that other extensions or indicators will not be able to catch their scroll events.", "link": "https://extensions.gnome.org/extension/3709/desktop-scroller-gnome-338/", "shell_version_map": {"38": {"version": "1", "sha256": "11g4w7bbzb8p9w78w83jpslgbs74rc26np0b1v35dg7nc7x33q4i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCBiZXR3ZWVuIGRlc2t0b3BzIHNjcm9sbGluZyBhdCB0aGUgdXBwZXIgZWRnZSBvZiB0aGUgc2NyZWVuLCBpbmNsdWRpbmcgaW4gb3ZlcnZpZXcuIENoYW5nZSB5b3VyIGRlbGF5IGJldHdlZW4gc2Nyb2xsIGV2ZW50cyBpbiBleHRlbnNpb24uanMuIElmIHlvdSB3YW50IHRvIHNjcm9sbCBvbiBtb3JlIGxpbmVzIGZyb20gdGhlIHRvcCBvZiB0aGUgc2NyZWVuIGp1c3QgcmVtZW1iZXIgdGhhdCBvdGhlciBleHRlbnNpb25zIG9yIGluZGljYXRvcnMgd2lsbCBub3QgYmUgYWJsZSB0byBjYXRjaCB0aGVpciBzY3JvbGwgZXZlbnRzLiIsCiAgIm5hbWUiOiAiRGVza3RvcCBTY3JvbGxlciAoR05PTUUgMy4zOCkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzguMSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJkZXNrdG9wLXNjcm9sbGVyQGNhbGFuZ28iLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"uuid": "appmenu-color-icon@yanbab.gitlab.com", "name": "Colored AppMenu Icon", "pname": "color-app-menu-icon", "description": "Replace the symbolic application menu icon with the colored one", "link": "https://extensions.gnome.org/extension/3712/color-app-menu-icon/", "shell_version_map": {"38": {"version": "1", "sha256": "17bsnqimkanf6c3d3qjvhggi5r3xjp6pha05fyh6b1ak9m9lvg53", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgdGhlIHN5bWJvbGljIGFwcGxpY2F0aW9uIG1lbnUgaWNvbiB3aXRoIHRoZSBjb2xvcmVkIG9uZSIsCiAgIm5hbWUiOiAiQ29sb3JlZCBBcHBNZW51IEljb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS95YW5iYWIvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXJlZ3VsYXItYXBwbWVudS1pY29uIiwKICAidXVpZCI6ICJhcHBtZW51LWNvbG9yLWljb25AeWFuYmFiLmdpdGxhYi5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"uuid": "snap-manager@fthx", "name": "Snap Manager", "pname": "snap-manager", "description": "NOT MAINTAINED ANYMORE - PLEASE USE 'SNAP MANAGER LITE' EXTENSION INSTEAD\n\nPopup menu in the top bar to easily manage snap tasks (list, changes, refresh, remove, install...). Update notification at session start-up.\n\n All the results of actions are displayed in GNOME Terminal, so you can exactly know what you are doing and what is processing. Very light extension, no background process, no periodic background task. You can turn off refresh check and associated notifications (just a variable to toggle in &lt;extension_folder&gt;/extension.js). You can disable auto updates for a limited time (up to one month, renewable), consequently be notified of snap updates and manually install them. \n\n This is not an official Ubuntu/Canonical extension.", "link": "https://extensions.gnome.org/extension/3715/snap-manager/", "shell_version_map": {"38": {"version": "35", "sha256": "02gs1qkhfq7kj9szz2mj2dkd8pbcyl90jkz7zlmj3z33i340q8q8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5PVCBNQUlOVEFJTkVEIEFOWU1PUkUgLSBQTEVBU0UgVVNFICdTTkFQIE1BTkFHRVIgTElURScgRVhURU5TSU9OIElOU1RFQURcblxuUG9wdXAgbWVudSBpbiB0aGUgdG9wIGJhciB0byBlYXNpbHkgbWFuYWdlIHNuYXAgdGFza3MgKGxpc3QsIGNoYW5nZXMsIHJlZnJlc2gsIHJlbW92ZSwgaW5zdGFsbC4uLikuIFVwZGF0ZSBub3RpZmljYXRpb24gYXQgc2Vzc2lvbiBzdGFydC11cC5cblxuIEFsbCB0aGUgcmVzdWx0cyBvZiBhY3Rpb25zIGFyZSBkaXNwbGF5ZWQgaW4gR05PTUUgVGVybWluYWwsIHNvIHlvdSBjYW4gZXhhY3RseSBrbm93IHdoYXQgeW91IGFyZSBkb2luZyBhbmQgd2hhdCBpcyBwcm9jZXNzaW5nLiBWZXJ5IGxpZ2h0IGV4dGVuc2lvbiwgbm8gYmFja2dyb3VuZCBwcm9jZXNzLCBubyBwZXJpb2RpYyBiYWNrZ3JvdW5kIHRhc2suIFlvdSBjYW4gdHVybiBvZmYgcmVmcmVzaCBjaGVjayBhbmQgYXNzb2NpYXRlZCBub3RpZmljYXRpb25zIChqdXN0IGEgdmFyaWFibGUgdG8gdG9nZ2xlIGluICZsdDtleHRlbnNpb25fZm9sZGVyJmd0Oy9leHRlbnNpb24uanMpLiBZb3UgY2FuIGRpc2FibGUgYXV0byB1cGRhdGVzIGZvciBhIGxpbWl0ZWQgdGltZSAodXAgdG8gb25lIG1vbnRoLCByZW5ld2FibGUpLCBjb25zZXF1ZW50bHkgYmUgbm90aWZpZWQgb2Ygc25hcCB1cGRhdGVzIGFuZCBtYW51YWxseSBpbnN0YWxsIHRoZW0uIFxuXG4gVGhpcyBpcyBub3QgYW4gb2ZmaWNpYWwgVWJ1bnR1L0Nhbm9uaWNhbCBleHRlbnNpb24uIiwKICAibmFtZSI6ICJTbmFwIE1hbmFnZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvc25hcC1tYW5hZ2VyIiwKICAidXVpZCI6ICJzbmFwLW1hbmFnZXJAZnRoeCIsCiAgInZlcnNpb24iOiAzNQp9"}, "40": {"version": "35", "sha256": "02gs1qkhfq7kj9szz2mj2dkd8pbcyl90jkz7zlmj3z33i340q8q8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5PVCBNQUlOVEFJTkVEIEFOWU1PUkUgLSBQTEVBU0UgVVNFICdTTkFQIE1BTkFHRVIgTElURScgRVhURU5TSU9OIElOU1RFQURcblxuUG9wdXAgbWVudSBpbiB0aGUgdG9wIGJhciB0byBlYXNpbHkgbWFuYWdlIHNuYXAgdGFza3MgKGxpc3QsIGNoYW5nZXMsIHJlZnJlc2gsIHJlbW92ZSwgaW5zdGFsbC4uLikuIFVwZGF0ZSBub3RpZmljYXRpb24gYXQgc2Vzc2lvbiBzdGFydC11cC5cblxuIEFsbCB0aGUgcmVzdWx0cyBvZiBhY3Rpb25zIGFyZSBkaXNwbGF5ZWQgaW4gR05PTUUgVGVybWluYWwsIHNvIHlvdSBjYW4gZXhhY3RseSBrbm93IHdoYXQgeW91IGFyZSBkb2luZyBhbmQgd2hhdCBpcyBwcm9jZXNzaW5nLiBWZXJ5IGxpZ2h0IGV4dGVuc2lvbiwgbm8gYmFja2dyb3VuZCBwcm9jZXNzLCBubyBwZXJpb2RpYyBiYWNrZ3JvdW5kIHRhc2suIFlvdSBjYW4gdHVybiBvZmYgcmVmcmVzaCBjaGVjayBhbmQgYXNzb2NpYXRlZCBub3RpZmljYXRpb25zIChqdXN0IGEgdmFyaWFibGUgdG8gdG9nZ2xlIGluICZsdDtleHRlbnNpb25fZm9sZGVyJmd0Oy9leHRlbnNpb24uanMpLiBZb3UgY2FuIGRpc2FibGUgYXV0byB1cGRhdGVzIGZvciBhIGxpbWl0ZWQgdGltZSAodXAgdG8gb25lIG1vbnRoLCByZW5ld2FibGUpLCBjb25zZXF1ZW50bHkgYmUgbm90aWZpZWQgb2Ygc25hcCB1cGRhdGVzIGFuZCBtYW51YWxseSBpbnN0YWxsIHRoZW0uIFxuXG4gVGhpcyBpcyBub3QgYW4gb2ZmaWNpYWwgVWJ1bnR1L0Nhbm9uaWNhbCBleHRlbnNpb24uIiwKICAibmFtZSI6ICJTbmFwIE1hbmFnZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvc25hcC1tYW5hZ2VyIiwKICAidXVpZCI6ICJzbmFwLW1hbmFnZXJAZnRoeCIsCiAgInZlcnNpb24iOiAzNQp9"}, "41": {"version": "35", "sha256": "02gs1qkhfq7kj9szz2mj2dkd8pbcyl90jkz7zlmj3z33i340q8q8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5PVCBNQUlOVEFJTkVEIEFOWU1PUkUgLSBQTEVBU0UgVVNFICdTTkFQIE1BTkFHRVIgTElURScgRVhURU5TSU9OIElOU1RFQURcblxuUG9wdXAgbWVudSBpbiB0aGUgdG9wIGJhciB0byBlYXNpbHkgbWFuYWdlIHNuYXAgdGFza3MgKGxpc3QsIGNoYW5nZXMsIHJlZnJlc2gsIHJlbW92ZSwgaW5zdGFsbC4uLikuIFVwZGF0ZSBub3RpZmljYXRpb24gYXQgc2Vzc2lvbiBzdGFydC11cC5cblxuIEFsbCB0aGUgcmVzdWx0cyBvZiBhY3Rpb25zIGFyZSBkaXNwbGF5ZWQgaW4gR05PTUUgVGVybWluYWwsIHNvIHlvdSBjYW4gZXhhY3RseSBrbm93IHdoYXQgeW91IGFyZSBkb2luZyBhbmQgd2hhdCBpcyBwcm9jZXNzaW5nLiBWZXJ5IGxpZ2h0IGV4dGVuc2lvbiwgbm8gYmFja2dyb3VuZCBwcm9jZXNzLCBubyBwZXJpb2RpYyBiYWNrZ3JvdW5kIHRhc2suIFlvdSBjYW4gdHVybiBvZmYgcmVmcmVzaCBjaGVjayBhbmQgYXNzb2NpYXRlZCBub3RpZmljYXRpb25zIChqdXN0IGEgdmFyaWFibGUgdG8gdG9nZ2xlIGluICZsdDtleHRlbnNpb25fZm9sZGVyJmd0Oy9leHRlbnNpb24uanMpLiBZb3UgY2FuIGRpc2FibGUgYXV0byB1cGRhdGVzIGZvciBhIGxpbWl0ZWQgdGltZSAodXAgdG8gb25lIG1vbnRoLCByZW5ld2FibGUpLCBjb25zZXF1ZW50bHkgYmUgbm90aWZpZWQgb2Ygc25hcCB1cGRhdGVzIGFuZCBtYW51YWxseSBpbnN0YWxsIHRoZW0uIFxuXG4gVGhpcyBpcyBub3QgYW4gb2ZmaWNpYWwgVWJ1bnR1L0Nhbm9uaWNhbCBleHRlbnNpb24uIiwKICAibmFtZSI6ICJTbmFwIE1hbmFnZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvc25hcC1tYW5hZ2VyIiwKICAidXVpZCI6ICJzbmFwLW1hbmFnZXJAZnRoeCIsCiAgInZlcnNpb24iOiAzNQp9"}}}
 , {"uuid": "hide-dash-forked@farnasirim.com", "name": "Hide Dash Forked", "pname": "hide-dash-forked", "description": "Hide dash menu from gnome overview", "link": "https://extensions.gnome.org/extension/3718/hide-dash-forked/", "shell_version_map": {"38": {"version": "3", "sha256": "1j0ca2nwj8bhnn2vv3fgjhglg8af9iqa992i7d2mvxx4zisj8rdq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgZGFzaCBtZW51IGZyb20gZ25vbWUgb3ZlcnZpZXciLAogICJuYW1lIjogIkhpZGUgRGFzaCBGb3JrZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mYXJuYXNpcmltL2dub21lLXNoZWxsLWV4dGVuc2lvbi1oaWRlLWRhc2gtZm9ya2VkIiwKICAidXVpZCI6ICJoaWRlLWRhc2gtZm9ya2VkQGZhcm5hc2lyaW0uY29tIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
-, {"uuid": "netspeedsimplified@prateekmedia.extension", "name": "Net speed Simplified", "pname": "net-speed-simplified", "description": "A Net Speed extension With Loads of Customization. Fork of simplenetspeed \n \nWhat's new\n☞ Add Use System Color Scheme option \n☞ Update Preferences logic \n☞ Filter more devices for net speed indicator \n\nFull CHANGELOG can be found on github releases page \n\nFeatures \n1. Clean UI \n2. Adjustable Refresh rate \n3. Preferences to manage extension \n4. Vertical Alignment Support \n5. Two Icon sets for Indicators \n\nFeature Highlights for Preferences \n1. Lock Mouse Actions option \n2. Advance Position options to pinpoint where to place the indicator on the Panel. \n3. Refresh time option by which you can change refresh rate value between 1.0 sec to 10.0 sec. \n4. Show Upload First option to show upload speed first \n5. Color Customizations for speed indicators \n6. Hide when Disconnected option \n7. Use Shorten Units option \n8. Limit Unit option and more... \n\nModes \n- Total net speed in b/s, kb/s, ... \n- Total net speed in B/s, KB/s, ... \n- Up & down speed in b/s, kb/s, ... \n- Up & down speed in B/s, KB/s, ... \n- Total downloads in B, KB, ... (Right click to reset counter) \n\nMouse Events \n- Left click to change modes \n- Right click(in 1-4 modes): Toggle the visibility of total loaded. \n- Right click(in 5th mode): Reset total downloaded. \n- Right Click(Four consecutive times): Toggle through horizontal/vertical alignment. \n- Middle click: Cycle through the font sizes.", "link": "https://extensions.gnome.org/extension/3724/net-speed-simplified/", "shell_version_map": {"38": {"version": "35", "sha256": "0nh00iach2mnrdij1ywp5l6vr064q9dfwwjv4g2n4mqiz9jxr1lv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTmV0IFNwZWVkIGV4dGVuc2lvbiBXaXRoIExvYWRzIG9mIEN1c3RvbWl6YXRpb24uIEZvcmsgb2Ygc2ltcGxlbmV0c3BlZWQgXG4gXG5XaGF0J3MgbmV3XG5cdTI2MWUgQWRkIFVzZSBTeXN0ZW0gQ29sb3IgU2NoZW1lIG9wdGlvbiBcblx1MjYxZSBVcGRhdGUgUHJlZmVyZW5jZXMgbG9naWMgXG5cdTI2MWUgRmlsdGVyIG1vcmUgZGV2aWNlcyBmb3IgbmV0IHNwZWVkIGluZGljYXRvciBcblxuRnVsbCBDSEFOR0VMT0cgY2FuIGJlIGZvdW5kIG9uIGdpdGh1YiByZWxlYXNlcyBwYWdlIFxuXG5GZWF0dXJlcyBcbjEuIENsZWFuIFVJIFxuMi4gQWRqdXN0YWJsZSBSZWZyZXNoIHJhdGUgXG4zLiBQcmVmZXJlbmNlcyB0byBtYW5hZ2UgZXh0ZW5zaW9uIFxuNC4gVmVydGljYWwgQWxpZ25tZW50IFN1cHBvcnQgXG41LiBUd28gSWNvbiBzZXRzIGZvciBJbmRpY2F0b3JzIFxuXG5GZWF0dXJlIEhpZ2hsaWdodHMgZm9yIFByZWZlcmVuY2VzIFxuMS4gTG9jayBNb3VzZSBBY3Rpb25zIG9wdGlvbiBcbjIuIEFkdmFuY2UgUG9zaXRpb24gb3B0aW9ucyB0byBwaW5wb2ludCB3aGVyZSB0byBwbGFjZSB0aGUgaW5kaWNhdG9yIG9uIHRoZSBQYW5lbC4gXG4zLiBSZWZyZXNoIHRpbWUgb3B0aW9uIGJ5IHdoaWNoIHlvdSBjYW4gY2hhbmdlIHJlZnJlc2ggcmF0ZSB2YWx1ZSBiZXR3ZWVuIDEuMCBzZWMgdG8gMTAuMCBzZWMuIFxuNC4gU2hvdyBVcGxvYWQgRmlyc3Qgb3B0aW9uIHRvIHNob3cgdXBsb2FkIHNwZWVkIGZpcnN0IFxuNS4gQ29sb3IgQ3VzdG9taXphdGlvbnMgZm9yIHNwZWVkIGluZGljYXRvcnMgXG42LiBIaWRlIHdoZW4gRGlzY29ubmVjdGVkIG9wdGlvbiBcbjcuIFVzZSBTaG9ydGVuIFVuaXRzIG9wdGlvbiBcbjguIExpbWl0IFVuaXQgb3B0aW9uIGFuZCBtb3JlLi4uIFxuXG5Nb2RlcyBcbi0gVG90YWwgbmV0IHNwZWVkIGluIGIvcywga2IvcywgLi4uIFxuLSBUb3RhbCBuZXQgc3BlZWQgaW4gQi9zLCBLQi9zLCAuLi4gXG4tIFVwICYgZG93biBzcGVlZCBpbiBiL3MsIGtiL3MsIC4uLiBcbi0gVXAgJiBkb3duIHNwZWVkIGluIEIvcywgS0IvcywgLi4uIFxuLSBUb3RhbCBkb3dubG9hZHMgaW4gQiwgS0IsIC4uLiAoUmlnaHQgY2xpY2sgdG8gcmVzZXQgY291bnRlcikgXG5cbk1vdXNlIEV2ZW50cyBcbi0gTGVmdCBjbGljayB0byBjaGFuZ2UgbW9kZXMgXG4tIFJpZ2h0IGNsaWNrKGluIDEtNCBtb2Rlcyk6IFRvZ2dsZSB0aGUgdmlzaWJpbGl0eSBvZiB0b3RhbCBsb2FkZWQuIFxuLSBSaWdodCBjbGljayhpbiA1dGggbW9kZSk6IFJlc2V0IHRvdGFsIGRvd25sb2FkZWQuIFxuLSBSaWdodCBDbGljayhGb3VyIGNvbnNlY3V0aXZlIHRpbWVzKTogVG9nZ2xlIHRocm91Z2ggaG9yaXpvbnRhbC92ZXJ0aWNhbCBhbGlnbm1lbnQuIFxuLSBNaWRkbGUgY2xpY2s6IEN5Y2xlIHRocm91Z2ggdGhlIGZvbnQgc2l6ZXMuIiwKICAibmFtZSI6ICJOZXQgc3BlZWQgU2ltcGxpZmllZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ByYXRlZWttZWRpYS9uZXRzcGVlZHNpbXBsaWZpZWQiLAogICJ1dWlkIjogIm5ldHNwZWVkc2ltcGxpZmllZEBwcmF0ZWVrbWVkaWEuZXh0ZW5zaW9uIiwKICAidmVyc2lvbiI6IDM1Cn0="}, "40": {"version": "35", "sha256": "0nh00iach2mnrdij1ywp5l6vr064q9dfwwjv4g2n4mqiz9jxr1lv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTmV0IFNwZWVkIGV4dGVuc2lvbiBXaXRoIExvYWRzIG9mIEN1c3RvbWl6YXRpb24uIEZvcmsgb2Ygc2ltcGxlbmV0c3BlZWQgXG4gXG5XaGF0J3MgbmV3XG5cdTI2MWUgQWRkIFVzZSBTeXN0ZW0gQ29sb3IgU2NoZW1lIG9wdGlvbiBcblx1MjYxZSBVcGRhdGUgUHJlZmVyZW5jZXMgbG9naWMgXG5cdTI2MWUgRmlsdGVyIG1vcmUgZGV2aWNlcyBmb3IgbmV0IHNwZWVkIGluZGljYXRvciBcblxuRnVsbCBDSEFOR0VMT0cgY2FuIGJlIGZvdW5kIG9uIGdpdGh1YiByZWxlYXNlcyBwYWdlIFxuXG5GZWF0dXJlcyBcbjEuIENsZWFuIFVJIFxuMi4gQWRqdXN0YWJsZSBSZWZyZXNoIHJhdGUgXG4zLiBQcmVmZXJlbmNlcyB0byBtYW5hZ2UgZXh0ZW5zaW9uIFxuNC4gVmVydGljYWwgQWxpZ25tZW50IFN1cHBvcnQgXG41LiBUd28gSWNvbiBzZXRzIGZvciBJbmRpY2F0b3JzIFxuXG5GZWF0dXJlIEhpZ2hsaWdodHMgZm9yIFByZWZlcmVuY2VzIFxuMS4gTG9jayBNb3VzZSBBY3Rpb25zIG9wdGlvbiBcbjIuIEFkdmFuY2UgUG9zaXRpb24gb3B0aW9ucyB0byBwaW5wb2ludCB3aGVyZSB0byBwbGFjZSB0aGUgaW5kaWNhdG9yIG9uIHRoZSBQYW5lbC4gXG4zLiBSZWZyZXNoIHRpbWUgb3B0aW9uIGJ5IHdoaWNoIHlvdSBjYW4gY2hhbmdlIHJlZnJlc2ggcmF0ZSB2YWx1ZSBiZXR3ZWVuIDEuMCBzZWMgdG8gMTAuMCBzZWMuIFxuNC4gU2hvdyBVcGxvYWQgRmlyc3Qgb3B0aW9uIHRvIHNob3cgdXBsb2FkIHNwZWVkIGZpcnN0IFxuNS4gQ29sb3IgQ3VzdG9taXphdGlvbnMgZm9yIHNwZWVkIGluZGljYXRvcnMgXG42LiBIaWRlIHdoZW4gRGlzY29ubmVjdGVkIG9wdGlvbiBcbjcuIFVzZSBTaG9ydGVuIFVuaXRzIG9wdGlvbiBcbjguIExpbWl0IFVuaXQgb3B0aW9uIGFuZCBtb3JlLi4uIFxuXG5Nb2RlcyBcbi0gVG90YWwgbmV0IHNwZWVkIGluIGIvcywga2IvcywgLi4uIFxuLSBUb3RhbCBuZXQgc3BlZWQgaW4gQi9zLCBLQi9zLCAuLi4gXG4tIFVwICYgZG93biBzcGVlZCBpbiBiL3MsIGtiL3MsIC4uLiBcbi0gVXAgJiBkb3duIHNwZWVkIGluIEIvcywgS0IvcywgLi4uIFxuLSBUb3RhbCBkb3dubG9hZHMgaW4gQiwgS0IsIC4uLiAoUmlnaHQgY2xpY2sgdG8gcmVzZXQgY291bnRlcikgXG5cbk1vdXNlIEV2ZW50cyBcbi0gTGVmdCBjbGljayB0byBjaGFuZ2UgbW9kZXMgXG4tIFJpZ2h0IGNsaWNrKGluIDEtNCBtb2Rlcyk6IFRvZ2dsZSB0aGUgdmlzaWJpbGl0eSBvZiB0b3RhbCBsb2FkZWQuIFxuLSBSaWdodCBjbGljayhpbiA1dGggbW9kZSk6IFJlc2V0IHRvdGFsIGRvd25sb2FkZWQuIFxuLSBSaWdodCBDbGljayhGb3VyIGNvbnNlY3V0aXZlIHRpbWVzKTogVG9nZ2xlIHRocm91Z2ggaG9yaXpvbnRhbC92ZXJ0aWNhbCBhbGlnbm1lbnQuIFxuLSBNaWRkbGUgY2xpY2s6IEN5Y2xlIHRocm91Z2ggdGhlIGZvbnQgc2l6ZXMuIiwKICAibmFtZSI6ICJOZXQgc3BlZWQgU2ltcGxpZmllZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ByYXRlZWttZWRpYS9uZXRzcGVlZHNpbXBsaWZpZWQiLAogICJ1dWlkIjogIm5ldHNwZWVkc2ltcGxpZmllZEBwcmF0ZWVrbWVkaWEuZXh0ZW5zaW9uIiwKICAidmVyc2lvbiI6IDM1Cn0="}, "41": {"version": "35", "sha256": "0nh00iach2mnrdij1ywp5l6vr064q9dfwwjv4g2n4mqiz9jxr1lv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTmV0IFNwZWVkIGV4dGVuc2lvbiBXaXRoIExvYWRzIG9mIEN1c3RvbWl6YXRpb24uIEZvcmsgb2Ygc2ltcGxlbmV0c3BlZWQgXG4gXG5XaGF0J3MgbmV3XG5cdTI2MWUgQWRkIFVzZSBTeXN0ZW0gQ29sb3IgU2NoZW1lIG9wdGlvbiBcblx1MjYxZSBVcGRhdGUgUHJlZmVyZW5jZXMgbG9naWMgXG5cdTI2MWUgRmlsdGVyIG1vcmUgZGV2aWNlcyBmb3IgbmV0IHNwZWVkIGluZGljYXRvciBcblxuRnVsbCBDSEFOR0VMT0cgY2FuIGJlIGZvdW5kIG9uIGdpdGh1YiByZWxlYXNlcyBwYWdlIFxuXG5GZWF0dXJlcyBcbjEuIENsZWFuIFVJIFxuMi4gQWRqdXN0YWJsZSBSZWZyZXNoIHJhdGUgXG4zLiBQcmVmZXJlbmNlcyB0byBtYW5hZ2UgZXh0ZW5zaW9uIFxuNC4gVmVydGljYWwgQWxpZ25tZW50IFN1cHBvcnQgXG41LiBUd28gSWNvbiBzZXRzIGZvciBJbmRpY2F0b3JzIFxuXG5GZWF0dXJlIEhpZ2hsaWdodHMgZm9yIFByZWZlcmVuY2VzIFxuMS4gTG9jayBNb3VzZSBBY3Rpb25zIG9wdGlvbiBcbjIuIEFkdmFuY2UgUG9zaXRpb24gb3B0aW9ucyB0byBwaW5wb2ludCB3aGVyZSB0byBwbGFjZSB0aGUgaW5kaWNhdG9yIG9uIHRoZSBQYW5lbC4gXG4zLiBSZWZyZXNoIHRpbWUgb3B0aW9uIGJ5IHdoaWNoIHlvdSBjYW4gY2hhbmdlIHJlZnJlc2ggcmF0ZSB2YWx1ZSBiZXR3ZWVuIDEuMCBzZWMgdG8gMTAuMCBzZWMuIFxuNC4gU2hvdyBVcGxvYWQgRmlyc3Qgb3B0aW9uIHRvIHNob3cgdXBsb2FkIHNwZWVkIGZpcnN0IFxuNS4gQ29sb3IgQ3VzdG9taXphdGlvbnMgZm9yIHNwZWVkIGluZGljYXRvcnMgXG42LiBIaWRlIHdoZW4gRGlzY29ubmVjdGVkIG9wdGlvbiBcbjcuIFVzZSBTaG9ydGVuIFVuaXRzIG9wdGlvbiBcbjguIExpbWl0IFVuaXQgb3B0aW9uIGFuZCBtb3JlLi4uIFxuXG5Nb2RlcyBcbi0gVG90YWwgbmV0IHNwZWVkIGluIGIvcywga2IvcywgLi4uIFxuLSBUb3RhbCBuZXQgc3BlZWQgaW4gQi9zLCBLQi9zLCAuLi4gXG4tIFVwICYgZG93biBzcGVlZCBpbiBiL3MsIGtiL3MsIC4uLiBcbi0gVXAgJiBkb3duIHNwZWVkIGluIEIvcywgS0IvcywgLi4uIFxuLSBUb3RhbCBkb3dubG9hZHMgaW4gQiwgS0IsIC4uLiAoUmlnaHQgY2xpY2sgdG8gcmVzZXQgY291bnRlcikgXG5cbk1vdXNlIEV2ZW50cyBcbi0gTGVmdCBjbGljayB0byBjaGFuZ2UgbW9kZXMgXG4tIFJpZ2h0IGNsaWNrKGluIDEtNCBtb2Rlcyk6IFRvZ2dsZSB0aGUgdmlzaWJpbGl0eSBvZiB0b3RhbCBsb2FkZWQuIFxuLSBSaWdodCBjbGljayhpbiA1dGggbW9kZSk6IFJlc2V0IHRvdGFsIGRvd25sb2FkZWQuIFxuLSBSaWdodCBDbGljayhGb3VyIGNvbnNlY3V0aXZlIHRpbWVzKTogVG9nZ2xlIHRocm91Z2ggaG9yaXpvbnRhbC92ZXJ0aWNhbCBhbGlnbm1lbnQuIFxuLSBNaWRkbGUgY2xpY2s6IEN5Y2xlIHRocm91Z2ggdGhlIGZvbnQgc2l6ZXMuIiwKICAibmFtZSI6ICJOZXQgc3BlZWQgU2ltcGxpZmllZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ByYXRlZWttZWRpYS9uZXRzcGVlZHNpbXBsaWZpZWQiLAogICJ1dWlkIjogIm5ldHNwZWVkc2ltcGxpZmllZEBwcmF0ZWVrbWVkaWEuZXh0ZW5zaW9uIiwKICAidmVyc2lvbiI6IDM1Cn0="}, "42": {"version": "35", "sha256": "0nh00iach2mnrdij1ywp5l6vr064q9dfwwjv4g2n4mqiz9jxr1lv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTmV0IFNwZWVkIGV4dGVuc2lvbiBXaXRoIExvYWRzIG9mIEN1c3RvbWl6YXRpb24uIEZvcmsgb2Ygc2ltcGxlbmV0c3BlZWQgXG4gXG5XaGF0J3MgbmV3XG5cdTI2MWUgQWRkIFVzZSBTeXN0ZW0gQ29sb3IgU2NoZW1lIG9wdGlvbiBcblx1MjYxZSBVcGRhdGUgUHJlZmVyZW5jZXMgbG9naWMgXG5cdTI2MWUgRmlsdGVyIG1vcmUgZGV2aWNlcyBmb3IgbmV0IHNwZWVkIGluZGljYXRvciBcblxuRnVsbCBDSEFOR0VMT0cgY2FuIGJlIGZvdW5kIG9uIGdpdGh1YiByZWxlYXNlcyBwYWdlIFxuXG5GZWF0dXJlcyBcbjEuIENsZWFuIFVJIFxuMi4gQWRqdXN0YWJsZSBSZWZyZXNoIHJhdGUgXG4zLiBQcmVmZXJlbmNlcyB0byBtYW5hZ2UgZXh0ZW5zaW9uIFxuNC4gVmVydGljYWwgQWxpZ25tZW50IFN1cHBvcnQgXG41LiBUd28gSWNvbiBzZXRzIGZvciBJbmRpY2F0b3JzIFxuXG5GZWF0dXJlIEhpZ2hsaWdodHMgZm9yIFByZWZlcmVuY2VzIFxuMS4gTG9jayBNb3VzZSBBY3Rpb25zIG9wdGlvbiBcbjIuIEFkdmFuY2UgUG9zaXRpb24gb3B0aW9ucyB0byBwaW5wb2ludCB3aGVyZSB0byBwbGFjZSB0aGUgaW5kaWNhdG9yIG9uIHRoZSBQYW5lbC4gXG4zLiBSZWZyZXNoIHRpbWUgb3B0aW9uIGJ5IHdoaWNoIHlvdSBjYW4gY2hhbmdlIHJlZnJlc2ggcmF0ZSB2YWx1ZSBiZXR3ZWVuIDEuMCBzZWMgdG8gMTAuMCBzZWMuIFxuNC4gU2hvdyBVcGxvYWQgRmlyc3Qgb3B0aW9uIHRvIHNob3cgdXBsb2FkIHNwZWVkIGZpcnN0IFxuNS4gQ29sb3IgQ3VzdG9taXphdGlvbnMgZm9yIHNwZWVkIGluZGljYXRvcnMgXG42LiBIaWRlIHdoZW4gRGlzY29ubmVjdGVkIG9wdGlvbiBcbjcuIFVzZSBTaG9ydGVuIFVuaXRzIG9wdGlvbiBcbjguIExpbWl0IFVuaXQgb3B0aW9uIGFuZCBtb3JlLi4uIFxuXG5Nb2RlcyBcbi0gVG90YWwgbmV0IHNwZWVkIGluIGIvcywga2IvcywgLi4uIFxuLSBUb3RhbCBuZXQgc3BlZWQgaW4gQi9zLCBLQi9zLCAuLi4gXG4tIFVwICYgZG93biBzcGVlZCBpbiBiL3MsIGtiL3MsIC4uLiBcbi0gVXAgJiBkb3duIHNwZWVkIGluIEIvcywgS0IvcywgLi4uIFxuLSBUb3RhbCBkb3dubG9hZHMgaW4gQiwgS0IsIC4uLiAoUmlnaHQgY2xpY2sgdG8gcmVzZXQgY291bnRlcikgXG5cbk1vdXNlIEV2ZW50cyBcbi0gTGVmdCBjbGljayB0byBjaGFuZ2UgbW9kZXMgXG4tIFJpZ2h0IGNsaWNrKGluIDEtNCBtb2Rlcyk6IFRvZ2dsZSB0aGUgdmlzaWJpbGl0eSBvZiB0b3RhbCBsb2FkZWQuIFxuLSBSaWdodCBjbGljayhpbiA1dGggbW9kZSk6IFJlc2V0IHRvdGFsIGRvd25sb2FkZWQuIFxuLSBSaWdodCBDbGljayhGb3VyIGNvbnNlY3V0aXZlIHRpbWVzKTogVG9nZ2xlIHRocm91Z2ggaG9yaXpvbnRhbC92ZXJ0aWNhbCBhbGlnbm1lbnQuIFxuLSBNaWRkbGUgY2xpY2s6IEN5Y2xlIHRocm91Z2ggdGhlIGZvbnQgc2l6ZXMuIiwKICAibmFtZSI6ICJOZXQgc3BlZWQgU2ltcGxpZmllZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ByYXRlZWttZWRpYS9uZXRzcGVlZHNpbXBsaWZpZWQiLAogICJ1dWlkIjogIm5ldHNwZWVkc2ltcGxpZmllZEBwcmF0ZWVrbWVkaWEuZXh0ZW5zaW9uIiwKICAidmVyc2lvbiI6IDM1Cn0="}}}
+, {"uuid": "netspeedsimplified@prateekmedia.extension", "name": "Net speed Simplified", "pname": "net-speed-simplified", "description": "A Net Speed extension With Loads of Customization. Fork of simplenetspeed\n\nFull CHANGELOG can be found on github releases page\n\nFeatures \n1. Clean UI \n2. Adjustable Refresh rate \n3. Preferences to manage extension \n4. Vertical Alignment Support \n5. Two Icon sets for Indicators \n\nFeature Highlights for Preferences \n1. Lock Mouse Actions option \n2. Advance Position options to pinpoint where to place the indicator on the Panel. \n3. Refresh time option by which you can change refresh rate value between 1.0 and 10.0 seconds. \n4. Option to show upload speed first \n5. Color Customizations for speed indicators \n6. Option to Hide when Disconnected \n7. Option to use shorter units like K/s instead of KB/s \n8. Limit Unit option and more... \n\nModes \n1. Total net speed in terms of bits per second \n2. Total net speed in terms of bytes per second \n3. Combined Up & down speed in terms of bits per second \n4. Combined Up & down speed in terms of bytes per second \n5. Total transferred data in terms of bytes (Right click to reset counter) \n\nMouse Events \n- Left click to change modes \n- Right click(in 1-4 modes): Toggle the visibility of total transfer data. \n- Right click(in 5th mode): Reset total transfer data. \n- Right Click(Four consecutive times): Toggle through horizontal/vertical alignment. \n- Middle click: Cycle through the font sizes.", "link": "https://extensions.gnome.org/extension/3724/net-speed-simplified/", "shell_version_map": {"38": {"version": "35", "sha256": "1lqrgqxmfys2v7d8kl6rffdzjqi6gcvz05kd0wllmbb7p64aprc3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTmV0IFNwZWVkIGV4dGVuc2lvbiBXaXRoIExvYWRzIG9mIEN1c3RvbWl6YXRpb24uIEZvcmsgb2Ygc2ltcGxlbmV0c3BlZWRcblxuRnVsbCBDSEFOR0VMT0cgY2FuIGJlIGZvdW5kIG9uIGdpdGh1YiByZWxlYXNlcyBwYWdlXG5cbkZlYXR1cmVzIFxuMS4gQ2xlYW4gVUkgXG4yLiBBZGp1c3RhYmxlIFJlZnJlc2ggcmF0ZSBcbjMuIFByZWZlcmVuY2VzIHRvIG1hbmFnZSBleHRlbnNpb24gXG40LiBWZXJ0aWNhbCBBbGlnbm1lbnQgU3VwcG9ydCBcbjUuIFR3byBJY29uIHNldHMgZm9yIEluZGljYXRvcnMgXG5cbkZlYXR1cmUgSGlnaGxpZ2h0cyBmb3IgUHJlZmVyZW5jZXMgXG4xLiBMb2NrIE1vdXNlIEFjdGlvbnMgb3B0aW9uIFxuMi4gQWR2YW5jZSBQb3NpdGlvbiBvcHRpb25zIHRvIHBpbnBvaW50IHdoZXJlIHRvIHBsYWNlIHRoZSBpbmRpY2F0b3Igb24gdGhlIFBhbmVsLiBcbjMuIFJlZnJlc2ggdGltZSBvcHRpb24gYnkgd2hpY2ggeW91IGNhbiBjaGFuZ2UgcmVmcmVzaCByYXRlIHZhbHVlIGJldHdlZW4gMS4wIGFuZCAxMC4wIHNlY29uZHMuIFxuNC4gT3B0aW9uIHRvIHNob3cgdXBsb2FkIHNwZWVkIGZpcnN0IFxuNS4gQ29sb3IgQ3VzdG9taXphdGlvbnMgZm9yIHNwZWVkIGluZGljYXRvcnMgXG42LiBPcHRpb24gdG8gSGlkZSB3aGVuIERpc2Nvbm5lY3RlZCBcbjcuIE9wdGlvbiB0byB1c2Ugc2hvcnRlciB1bml0cyBsaWtlIEsvcyBpbnN0ZWFkIG9mIEtCL3MgXG44LiBMaW1pdCBVbml0IG9wdGlvbiBhbmQgbW9yZS4uLiBcblxuTW9kZXMgXG4xLiBUb3RhbCBuZXQgc3BlZWQgaW4gdGVybXMgb2YgYml0cyBwZXIgc2Vjb25kIFxuMi4gVG90YWwgbmV0IHNwZWVkIGluIHRlcm1zIG9mIGJ5dGVzIHBlciBzZWNvbmQgXG4zLiBDb21iaW5lZCBVcCAmIGRvd24gc3BlZWQgaW4gdGVybXMgb2YgYml0cyBwZXIgc2Vjb25kIFxuNC4gQ29tYmluZWQgVXAgJiBkb3duIHNwZWVkIGluIHRlcm1zIG9mIGJ5dGVzIHBlciBzZWNvbmQgXG41LiBUb3RhbCB0cmFuc2ZlcnJlZCBkYXRhIGluIHRlcm1zIG9mIGJ5dGVzIChSaWdodCBjbGljayB0byByZXNldCBjb3VudGVyKSBcblxuTW91c2UgRXZlbnRzIFxuLSBMZWZ0IGNsaWNrIHRvIGNoYW5nZSBtb2RlcyBcbi0gUmlnaHQgY2xpY2soaW4gMS00IG1vZGVzKTogVG9nZ2xlIHRoZSB2aXNpYmlsaXR5IG9mIHRvdGFsIHRyYW5zZmVyIGRhdGEuIFxuLSBSaWdodCBjbGljayhpbiA1dGggbW9kZSk6IFJlc2V0IHRvdGFsIHRyYW5zZmVyIGRhdGEuIFxuLSBSaWdodCBDbGljayhGb3VyIGNvbnNlY3V0aXZlIHRpbWVzKTogVG9nZ2xlIHRocm91Z2ggaG9yaXpvbnRhbC92ZXJ0aWNhbCBhbGlnbm1lbnQuIFxuLSBNaWRkbGUgY2xpY2s6IEN5Y2xlIHRocm91Z2ggdGhlIGZvbnQgc2l6ZXMuIiwKICAibmFtZSI6ICJOZXQgc3BlZWQgU2ltcGxpZmllZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ByYXRlZWttZWRpYS9uZXRzcGVlZHNpbXBsaWZpZWQiLAogICJ1dWlkIjogIm5ldHNwZWVkc2ltcGxpZmllZEBwcmF0ZWVrbWVkaWEuZXh0ZW5zaW9uIiwKICAidmVyc2lvbiI6IDM1Cn0="}, "40": {"version": "36", "sha256": "0np2d9m6arjn4i1nh9d88hhkkd0x95hk8fb3hgilcrc3sph8m1nz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTmV0IFNwZWVkIGV4dGVuc2lvbiBXaXRoIExvYWRzIG9mIEN1c3RvbWl6YXRpb24uIEZvcmsgb2Ygc2ltcGxlbmV0c3BlZWRcblxuRnVsbCBDSEFOR0VMT0cgY2FuIGJlIGZvdW5kIG9uIGdpdGh1YiByZWxlYXNlcyBwYWdlXG5cbkZlYXR1cmVzIFxuMS4gQ2xlYW4gVUkgXG4yLiBBZGp1c3RhYmxlIFJlZnJlc2ggcmF0ZSBcbjMuIFByZWZlcmVuY2VzIHRvIG1hbmFnZSBleHRlbnNpb24gXG40LiBWZXJ0aWNhbCBBbGlnbm1lbnQgU3VwcG9ydCBcbjUuIFR3byBJY29uIHNldHMgZm9yIEluZGljYXRvcnMgXG5cbkZlYXR1cmUgSGlnaGxpZ2h0cyBmb3IgUHJlZmVyZW5jZXMgXG4xLiBMb2NrIE1vdXNlIEFjdGlvbnMgb3B0aW9uIFxuMi4gQWR2YW5jZSBQb3NpdGlvbiBvcHRpb25zIHRvIHBpbnBvaW50IHdoZXJlIHRvIHBsYWNlIHRoZSBpbmRpY2F0b3Igb24gdGhlIFBhbmVsLiBcbjMuIFJlZnJlc2ggdGltZSBvcHRpb24gYnkgd2hpY2ggeW91IGNhbiBjaGFuZ2UgcmVmcmVzaCByYXRlIHZhbHVlIGJldHdlZW4gMS4wIGFuZCAxMC4wIHNlY29uZHMuIFxuNC4gT3B0aW9uIHRvIHNob3cgdXBsb2FkIHNwZWVkIGZpcnN0IFxuNS4gQ29sb3IgQ3VzdG9taXphdGlvbnMgZm9yIHNwZWVkIGluZGljYXRvcnMgXG42LiBPcHRpb24gdG8gSGlkZSB3aGVuIERpc2Nvbm5lY3RlZCBcbjcuIE9wdGlvbiB0byB1c2Ugc2hvcnRlciB1bml0cyBsaWtlIEsvcyBpbnN0ZWFkIG9mIEtCL3MgXG44LiBMaW1pdCBVbml0IG9wdGlvbiBhbmQgbW9yZS4uLiBcblxuTW9kZXMgXG4xLiBUb3RhbCBuZXQgc3BlZWQgaW4gdGVybXMgb2YgYml0cyBwZXIgc2Vjb25kIFxuMi4gVG90YWwgbmV0IHNwZWVkIGluIHRlcm1zIG9mIGJ5dGVzIHBlciBzZWNvbmQgXG4zLiBDb21iaW5lZCBVcCAmIGRvd24gc3BlZWQgaW4gdGVybXMgb2YgYml0cyBwZXIgc2Vjb25kIFxuNC4gQ29tYmluZWQgVXAgJiBkb3duIHNwZWVkIGluIHRlcm1zIG9mIGJ5dGVzIHBlciBzZWNvbmQgXG41LiBUb3RhbCB0cmFuc2ZlcnJlZCBkYXRhIGluIHRlcm1zIG9mIGJ5dGVzIChSaWdodCBjbGljayB0byByZXNldCBjb3VudGVyKSBcblxuTW91c2UgRXZlbnRzIFxuLSBMZWZ0IGNsaWNrIHRvIGNoYW5nZSBtb2RlcyBcbi0gUmlnaHQgY2xpY2soaW4gMS00IG1vZGVzKTogVG9nZ2xlIHRoZSB2aXNpYmlsaXR5IG9mIHRvdGFsIHRyYW5zZmVyIGRhdGEuIFxuLSBSaWdodCBjbGljayhpbiA1dGggbW9kZSk6IFJlc2V0IHRvdGFsIHRyYW5zZmVyIGRhdGEuIFxuLSBSaWdodCBDbGljayhGb3VyIGNvbnNlY3V0aXZlIHRpbWVzKTogVG9nZ2xlIHRocm91Z2ggaG9yaXpvbnRhbC92ZXJ0aWNhbCBhbGlnbm1lbnQuIFxuLSBNaWRkbGUgY2xpY2s6IEN5Y2xlIHRocm91Z2ggdGhlIGZvbnQgc2l6ZXMuIiwKICAibmFtZSI6ICJOZXQgc3BlZWQgU2ltcGxpZmllZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9wcmF0ZWVrbWVkaWEvbmV0c3BlZWRzaW1wbGlmaWVkIiwKICAidXVpZCI6ICJuZXRzcGVlZHNpbXBsaWZpZWRAcHJhdGVla21lZGlhLmV4dGVuc2lvbiIsCiAgInZlcnNpb24iOiAzNgp9"}, "41": {"version": "36", "sha256": "0np2d9m6arjn4i1nh9d88hhkkd0x95hk8fb3hgilcrc3sph8m1nz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTmV0IFNwZWVkIGV4dGVuc2lvbiBXaXRoIExvYWRzIG9mIEN1c3RvbWl6YXRpb24uIEZvcmsgb2Ygc2ltcGxlbmV0c3BlZWRcblxuRnVsbCBDSEFOR0VMT0cgY2FuIGJlIGZvdW5kIG9uIGdpdGh1YiByZWxlYXNlcyBwYWdlXG5cbkZlYXR1cmVzIFxuMS4gQ2xlYW4gVUkgXG4yLiBBZGp1c3RhYmxlIFJlZnJlc2ggcmF0ZSBcbjMuIFByZWZlcmVuY2VzIHRvIG1hbmFnZSBleHRlbnNpb24gXG40LiBWZXJ0aWNhbCBBbGlnbm1lbnQgU3VwcG9ydCBcbjUuIFR3byBJY29uIHNldHMgZm9yIEluZGljYXRvcnMgXG5cbkZlYXR1cmUgSGlnaGxpZ2h0cyBmb3IgUHJlZmVyZW5jZXMgXG4xLiBMb2NrIE1vdXNlIEFjdGlvbnMgb3B0aW9uIFxuMi4gQWR2YW5jZSBQb3NpdGlvbiBvcHRpb25zIHRvIHBpbnBvaW50IHdoZXJlIHRvIHBsYWNlIHRoZSBpbmRpY2F0b3Igb24gdGhlIFBhbmVsLiBcbjMuIFJlZnJlc2ggdGltZSBvcHRpb24gYnkgd2hpY2ggeW91IGNhbiBjaGFuZ2UgcmVmcmVzaCByYXRlIHZhbHVlIGJldHdlZW4gMS4wIGFuZCAxMC4wIHNlY29uZHMuIFxuNC4gT3B0aW9uIHRvIHNob3cgdXBsb2FkIHNwZWVkIGZpcnN0IFxuNS4gQ29sb3IgQ3VzdG9taXphdGlvbnMgZm9yIHNwZWVkIGluZGljYXRvcnMgXG42LiBPcHRpb24gdG8gSGlkZSB3aGVuIERpc2Nvbm5lY3RlZCBcbjcuIE9wdGlvbiB0byB1c2Ugc2hvcnRlciB1bml0cyBsaWtlIEsvcyBpbnN0ZWFkIG9mIEtCL3MgXG44LiBMaW1pdCBVbml0IG9wdGlvbiBhbmQgbW9yZS4uLiBcblxuTW9kZXMgXG4xLiBUb3RhbCBuZXQgc3BlZWQgaW4gdGVybXMgb2YgYml0cyBwZXIgc2Vjb25kIFxuMi4gVG90YWwgbmV0IHNwZWVkIGluIHRlcm1zIG9mIGJ5dGVzIHBlciBzZWNvbmQgXG4zLiBDb21iaW5lZCBVcCAmIGRvd24gc3BlZWQgaW4gdGVybXMgb2YgYml0cyBwZXIgc2Vjb25kIFxuNC4gQ29tYmluZWQgVXAgJiBkb3duIHNwZWVkIGluIHRlcm1zIG9mIGJ5dGVzIHBlciBzZWNvbmQgXG41LiBUb3RhbCB0cmFuc2ZlcnJlZCBkYXRhIGluIHRlcm1zIG9mIGJ5dGVzIChSaWdodCBjbGljayB0byByZXNldCBjb3VudGVyKSBcblxuTW91c2UgRXZlbnRzIFxuLSBMZWZ0IGNsaWNrIHRvIGNoYW5nZSBtb2RlcyBcbi0gUmlnaHQgY2xpY2soaW4gMS00IG1vZGVzKTogVG9nZ2xlIHRoZSB2aXNpYmlsaXR5IG9mIHRvdGFsIHRyYW5zZmVyIGRhdGEuIFxuLSBSaWdodCBjbGljayhpbiA1dGggbW9kZSk6IFJlc2V0IHRvdGFsIHRyYW5zZmVyIGRhdGEuIFxuLSBSaWdodCBDbGljayhGb3VyIGNvbnNlY3V0aXZlIHRpbWVzKTogVG9nZ2xlIHRocm91Z2ggaG9yaXpvbnRhbC92ZXJ0aWNhbCBhbGlnbm1lbnQuIFxuLSBNaWRkbGUgY2xpY2s6IEN5Y2xlIHRocm91Z2ggdGhlIGZvbnQgc2l6ZXMuIiwKICAibmFtZSI6ICJOZXQgc3BlZWQgU2ltcGxpZmllZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9wcmF0ZWVrbWVkaWEvbmV0c3BlZWRzaW1wbGlmaWVkIiwKICAidXVpZCI6ICJuZXRzcGVlZHNpbXBsaWZpZWRAcHJhdGVla21lZGlhLmV4dGVuc2lvbiIsCiAgInZlcnNpb24iOiAzNgp9"}, "42": {"version": "36", "sha256": "0np2d9m6arjn4i1nh9d88hhkkd0x95hk8fb3hgilcrc3sph8m1nz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTmV0IFNwZWVkIGV4dGVuc2lvbiBXaXRoIExvYWRzIG9mIEN1c3RvbWl6YXRpb24uIEZvcmsgb2Ygc2ltcGxlbmV0c3BlZWRcblxuRnVsbCBDSEFOR0VMT0cgY2FuIGJlIGZvdW5kIG9uIGdpdGh1YiByZWxlYXNlcyBwYWdlXG5cbkZlYXR1cmVzIFxuMS4gQ2xlYW4gVUkgXG4yLiBBZGp1c3RhYmxlIFJlZnJlc2ggcmF0ZSBcbjMuIFByZWZlcmVuY2VzIHRvIG1hbmFnZSBleHRlbnNpb24gXG40LiBWZXJ0aWNhbCBBbGlnbm1lbnQgU3VwcG9ydCBcbjUuIFR3byBJY29uIHNldHMgZm9yIEluZGljYXRvcnMgXG5cbkZlYXR1cmUgSGlnaGxpZ2h0cyBmb3IgUHJlZmVyZW5jZXMgXG4xLiBMb2NrIE1vdXNlIEFjdGlvbnMgb3B0aW9uIFxuMi4gQWR2YW5jZSBQb3NpdGlvbiBvcHRpb25zIHRvIHBpbnBvaW50IHdoZXJlIHRvIHBsYWNlIHRoZSBpbmRpY2F0b3Igb24gdGhlIFBhbmVsLiBcbjMuIFJlZnJlc2ggdGltZSBvcHRpb24gYnkgd2hpY2ggeW91IGNhbiBjaGFuZ2UgcmVmcmVzaCByYXRlIHZhbHVlIGJldHdlZW4gMS4wIGFuZCAxMC4wIHNlY29uZHMuIFxuNC4gT3B0aW9uIHRvIHNob3cgdXBsb2FkIHNwZWVkIGZpcnN0IFxuNS4gQ29sb3IgQ3VzdG9taXphdGlvbnMgZm9yIHNwZWVkIGluZGljYXRvcnMgXG42LiBPcHRpb24gdG8gSGlkZSB3aGVuIERpc2Nvbm5lY3RlZCBcbjcuIE9wdGlvbiB0byB1c2Ugc2hvcnRlciB1bml0cyBsaWtlIEsvcyBpbnN0ZWFkIG9mIEtCL3MgXG44LiBMaW1pdCBVbml0IG9wdGlvbiBhbmQgbW9yZS4uLiBcblxuTW9kZXMgXG4xLiBUb3RhbCBuZXQgc3BlZWQgaW4gdGVybXMgb2YgYml0cyBwZXIgc2Vjb25kIFxuMi4gVG90YWwgbmV0IHNwZWVkIGluIHRlcm1zIG9mIGJ5dGVzIHBlciBzZWNvbmQgXG4zLiBDb21iaW5lZCBVcCAmIGRvd24gc3BlZWQgaW4gdGVybXMgb2YgYml0cyBwZXIgc2Vjb25kIFxuNC4gQ29tYmluZWQgVXAgJiBkb3duIHNwZWVkIGluIHRlcm1zIG9mIGJ5dGVzIHBlciBzZWNvbmQgXG41LiBUb3RhbCB0cmFuc2ZlcnJlZCBkYXRhIGluIHRlcm1zIG9mIGJ5dGVzIChSaWdodCBjbGljayB0byByZXNldCBjb3VudGVyKSBcblxuTW91c2UgRXZlbnRzIFxuLSBMZWZ0IGNsaWNrIHRvIGNoYW5nZSBtb2RlcyBcbi0gUmlnaHQgY2xpY2soaW4gMS00IG1vZGVzKTogVG9nZ2xlIHRoZSB2aXNpYmlsaXR5IG9mIHRvdGFsIHRyYW5zZmVyIGRhdGEuIFxuLSBSaWdodCBjbGljayhpbiA1dGggbW9kZSk6IFJlc2V0IHRvdGFsIHRyYW5zZmVyIGRhdGEuIFxuLSBSaWdodCBDbGljayhGb3VyIGNvbnNlY3V0aXZlIHRpbWVzKTogVG9nZ2xlIHRocm91Z2ggaG9yaXpvbnRhbC92ZXJ0aWNhbCBhbGlnbm1lbnQuIFxuLSBNaWRkbGUgY2xpY2s6IEN5Y2xlIHRocm91Z2ggdGhlIGZvbnQgc2l6ZXMuIiwKICAibmFtZSI6ICJOZXQgc3BlZWQgU2ltcGxpZmllZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9wcmF0ZWVrbWVkaWEvbmV0c3BlZWRzaW1wbGlmaWVkIiwKICAidXVpZCI6ICJuZXRzcGVlZHNpbXBsaWZpZWRAcHJhdGVla21lZGlhLmV4dGVuc2lvbiIsCiAgInZlcnNpb24iOiAzNgp9"}, "43": {"version": "36", "sha256": "0np2d9m6arjn4i1nh9d88hhkkd0x95hk8fb3hgilcrc3sph8m1nz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTmV0IFNwZWVkIGV4dGVuc2lvbiBXaXRoIExvYWRzIG9mIEN1c3RvbWl6YXRpb24uIEZvcmsgb2Ygc2ltcGxlbmV0c3BlZWRcblxuRnVsbCBDSEFOR0VMT0cgY2FuIGJlIGZvdW5kIG9uIGdpdGh1YiByZWxlYXNlcyBwYWdlXG5cbkZlYXR1cmVzIFxuMS4gQ2xlYW4gVUkgXG4yLiBBZGp1c3RhYmxlIFJlZnJlc2ggcmF0ZSBcbjMuIFByZWZlcmVuY2VzIHRvIG1hbmFnZSBleHRlbnNpb24gXG40LiBWZXJ0aWNhbCBBbGlnbm1lbnQgU3VwcG9ydCBcbjUuIFR3byBJY29uIHNldHMgZm9yIEluZGljYXRvcnMgXG5cbkZlYXR1cmUgSGlnaGxpZ2h0cyBmb3IgUHJlZmVyZW5jZXMgXG4xLiBMb2NrIE1vdXNlIEFjdGlvbnMgb3B0aW9uIFxuMi4gQWR2YW5jZSBQb3NpdGlvbiBvcHRpb25zIHRvIHBpbnBvaW50IHdoZXJlIHRvIHBsYWNlIHRoZSBpbmRpY2F0b3Igb24gdGhlIFBhbmVsLiBcbjMuIFJlZnJlc2ggdGltZSBvcHRpb24gYnkgd2hpY2ggeW91IGNhbiBjaGFuZ2UgcmVmcmVzaCByYXRlIHZhbHVlIGJldHdlZW4gMS4wIGFuZCAxMC4wIHNlY29uZHMuIFxuNC4gT3B0aW9uIHRvIHNob3cgdXBsb2FkIHNwZWVkIGZpcnN0IFxuNS4gQ29sb3IgQ3VzdG9taXphdGlvbnMgZm9yIHNwZWVkIGluZGljYXRvcnMgXG42LiBPcHRpb24gdG8gSGlkZSB3aGVuIERpc2Nvbm5lY3RlZCBcbjcuIE9wdGlvbiB0byB1c2Ugc2hvcnRlciB1bml0cyBsaWtlIEsvcyBpbnN0ZWFkIG9mIEtCL3MgXG44LiBMaW1pdCBVbml0IG9wdGlvbiBhbmQgbW9yZS4uLiBcblxuTW9kZXMgXG4xLiBUb3RhbCBuZXQgc3BlZWQgaW4gdGVybXMgb2YgYml0cyBwZXIgc2Vjb25kIFxuMi4gVG90YWwgbmV0IHNwZWVkIGluIHRlcm1zIG9mIGJ5dGVzIHBlciBzZWNvbmQgXG4zLiBDb21iaW5lZCBVcCAmIGRvd24gc3BlZWQgaW4gdGVybXMgb2YgYml0cyBwZXIgc2Vjb25kIFxuNC4gQ29tYmluZWQgVXAgJiBkb3duIHNwZWVkIGluIHRlcm1zIG9mIGJ5dGVzIHBlciBzZWNvbmQgXG41LiBUb3RhbCB0cmFuc2ZlcnJlZCBkYXRhIGluIHRlcm1zIG9mIGJ5dGVzIChSaWdodCBjbGljayB0byByZXNldCBjb3VudGVyKSBcblxuTW91c2UgRXZlbnRzIFxuLSBMZWZ0IGNsaWNrIHRvIGNoYW5nZSBtb2RlcyBcbi0gUmlnaHQgY2xpY2soaW4gMS00IG1vZGVzKTogVG9nZ2xlIHRoZSB2aXNpYmlsaXR5IG9mIHRvdGFsIHRyYW5zZmVyIGRhdGEuIFxuLSBSaWdodCBjbGljayhpbiA1dGggbW9kZSk6IFJlc2V0IHRvdGFsIHRyYW5zZmVyIGRhdGEuIFxuLSBSaWdodCBDbGljayhGb3VyIGNvbnNlY3V0aXZlIHRpbWVzKTogVG9nZ2xlIHRocm91Z2ggaG9yaXpvbnRhbC92ZXJ0aWNhbCBhbGlnbm1lbnQuIFxuLSBNaWRkbGUgY2xpY2s6IEN5Y2xlIHRocm91Z2ggdGhlIGZvbnQgc2l6ZXMuIiwKICAibmFtZSI6ICJOZXQgc3BlZWQgU2ltcGxpZmllZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9wcmF0ZWVrbWVkaWEvbmV0c3BlZWRzaW1wbGlmaWVkIiwKICAidXVpZCI6ICJuZXRzcGVlZHNpbXBsaWZpZWRAcHJhdGVla21lZGlhLmV4dGVuc2lvbiIsCiAgInZlcnNpb24iOiAzNgp9"}}}
 , {"uuid": "cpupower-governors@icar.github.com", "name": "CPU Power Governor", "pname": "cpu-power-governor", "description": "Enables the ability to swap between kernel governors for the CPU useful for laptops.\n\nRequires: polkit, cpupower\nGithub: https://github.com/juxuanu/cpupower-governors", "link": "https://extensions.gnome.org/extension/3727/cpu-power-governor/", "shell_version_map": {"38": {"version": "2", "sha256": "1hb239w4cpz6yzs3pzd3hhrwswh6w5c5xw6dqn57m26cazh843qk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgdGhlIGFiaWxpdHkgdG8gc3dhcCBiZXR3ZWVuIGtlcm5lbCBnb3Zlcm5vcnMgZm9yIHRoZSBDUFUgdXNlZnVsIGZvciBsYXB0b3BzLlxuXG5SZXF1aXJlczogcG9sa2l0LCBjcHVwb3dlclxuR2l0aHViOiBodHRwczovL2dpdGh1Yi5jb20vanV4dWFudS9jcHVwb3dlci1nb3Zlcm5vcnMiLAogICJuYW1lIjogIkNQVSBQb3dlciBHb3Zlcm5vciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJjcHVwb3dlci1nb3Zlcm5vcnNAaWNhci5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "floating-dock@nandoferreira_prof@hotmail.com", "name": "Floating Dock", "pname": "floating-dock", "description": "A Custom Floating Dock fork, now you can change the margin and border radius of the dock.", "link": "https://extensions.gnome.org/extension/3730/floating-dock/", "shell_version_map": {"38": {"version": "1", "sha256": "0giksm5fvrj412v8xnf2hi4s0yi2mqd9prd84npv8jxkfv78y414", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgQ3VzdG9tIEZsb2F0aW5nIERvY2sgZm9yaywgbm93IHlvdSBjYW4gY2hhbmdlIHRoZSBtYXJnaW4gYW5kIGJvcmRlciByYWRpdXMgb2YgdGhlIGRvY2suIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZmxvYXRpbmdkb2NrIiwKICAibmFtZSI6ICJGbG9hdGluZyBEb2NrIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIm5hbmRvZmVycmVpcmFfcHJvZkBob3RtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Zlci1tb3JlaXJhL2Zsb2F0aW5nLWRvY2siLAogICJ1dWlkIjogImZsb2F0aW5nLWRvY2tAbmFuZG9mZXJyZWlyYV9wcm9mQGhvdG1haWwuY29tIiwKICAidmVyc2lvbiI6IDEKfQ=="}, "40": {"version": "4", "sha256": "0ca22s5vbs6d32ppikmg0xcf5335qmighq6cpvly51q44hlqjamg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgQ3VzdG9tIEZsb2F0aW5nIERvY2sgZm9yaywgbm93IHlvdSBjYW4gY2hhbmdlIHRoZSBtYXJnaW4gYW5kIGJvcmRlciByYWRpdXMgb2YgdGhlIGRvY2suIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZmxvYXRpbmdkb2NrIiwKICAibmFtZSI6ICJGbG9hdGluZyBEb2NrIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIm1pY3hneEBnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Zlci1tb3JlaXJhL2Zsb2F0aW5nLWRvY2siLAogICJ1dWlkIjogImZsb2F0aW5nLWRvY2tAbmFuZG9mZXJyZWlyYV9wcm9mQGhvdG1haWwuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "0ca22s5vbs6d32ppikmg0xcf5335qmighq6cpvly51q44hlqjamg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgQ3VzdG9tIEZsb2F0aW5nIERvY2sgZm9yaywgbm93IHlvdSBjYW4gY2hhbmdlIHRoZSBtYXJnaW4gYW5kIGJvcmRlciByYWRpdXMgb2YgdGhlIGRvY2suIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZmxvYXRpbmdkb2NrIiwKICAibmFtZSI6ICJGbG9hdGluZyBEb2NrIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIm1pY3hneEBnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Zlci1tb3JlaXJhL2Zsb2F0aW5nLWRvY2siLAogICJ1dWlkIjogImZsb2F0aW5nLWRvY2tAbmFuZG9mZXJyZWlyYV9wcm9mQGhvdG1haWwuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "tiling-assistant@leleat-on-github", "name": "Tiling Assistant", "pname": "tiling-assistant", "description": "Expand GNOME's 2 column tiling and add a Windows-snap-assist-inspired popup...", "link": "https://extensions.gnome.org/extension/3733/tiling-assistant/", "shell_version_map": {"38": {"version": "23", "sha256": "1b9hpll26ggwhw4f52wgflzjfqksmyfy5wyg1rpz41lr1dmva8vk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4cGFuZCBHTk9NRSdzIDIgY29sdW1uIHRpbGluZyBhbmQgYWRkIGEgV2luZG93cy1zbmFwLWFzc2lzdC1pbnNwaXJlZCBwb3B1cC4uLiIsCiAgIm5hbWUiOiAiVGlsaW5nIEFzc2lzdGFudCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTGVsZWF0L1RpbGluZy1Bc3Npc3RhbnQiLAogICJ1dWlkIjogInRpbGluZy1hc3Npc3RhbnRAbGVsZWF0LW9uLWdpdGh1YiIsCiAgInZlcnNpb24iOiAyMwp9"}, "40": {"version": "32", "sha256": "14kvgygfia1961i4v933bg7j2l4mzy7hv7f53sc5giwpmcsj3b5v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4cGFuZCBHTk9NRSdzIDIgY29sdW1uIHRpbGluZyBhbmQgYWRkIGEgV2luZG93cy1zbmFwLWFzc2lzdC1pbnNwaXJlZCBwb3B1cC4uLiIsCiAgIm5hbWUiOiAiVGlsaW5nIEFzc2lzdGFudCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50aWxpbmctYXNzaXN0YW50IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9MZWxlYXQvVGlsaW5nLUFzc2lzdGFudCIsCiAgInV1aWQiOiAidGlsaW5nLWFzc2lzdGFudEBsZWxlYXQtb24tZ2l0aHViIiwKICAidmVyc2lvbiI6IDMyCn0="}, "41": {"version": "32", "sha256": "14kvgygfia1961i4v933bg7j2l4mzy7hv7f53sc5giwpmcsj3b5v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4cGFuZCBHTk9NRSdzIDIgY29sdW1uIHRpbGluZyBhbmQgYWRkIGEgV2luZG93cy1zbmFwLWFzc2lzdC1pbnNwaXJlZCBwb3B1cC4uLiIsCiAgIm5hbWUiOiAiVGlsaW5nIEFzc2lzdGFudCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50aWxpbmctYXNzaXN0YW50IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9MZWxlYXQvVGlsaW5nLUFzc2lzdGFudCIsCiAgInV1aWQiOiAidGlsaW5nLWFzc2lzdGFudEBsZWxlYXQtb24tZ2l0aHViIiwKICAidmVyc2lvbiI6IDMyCn0="}, "42": {"version": "36", "sha256": "1dj98am80c82mfw7cz9mzhqnahxqpkgm7lazd2s023rs0hfx825c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4cGFuZCBHTk9NRSdzIDIgY29sdW1uIHRpbGluZyBhbmQgYWRkIGEgV2luZG93cy1zbmFwLWFzc2lzdC1pbnNwaXJlZCBwb3B1cC4uLiIsCiAgIm5hbWUiOiAiVGlsaW5nIEFzc2lzdGFudCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50aWxpbmctYXNzaXN0YW50IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9MZWxlYXQvVGlsaW5nLUFzc2lzdGFudCIsCiAgInV1aWQiOiAidGlsaW5nLWFzc2lzdGFudEBsZWxlYXQtb24tZ2l0aHViIiwKICAidmVyc2lvbiI6IDM2Cn0="}, "43": {"version": "36", "sha256": "1dj98am80c82mfw7cz9mzhqnahxqpkgm7lazd2s023rs0hfx825c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4cGFuZCBHTk9NRSdzIDIgY29sdW1uIHRpbGluZyBhbmQgYWRkIGEgV2luZG93cy1zbmFwLWFzc2lzdC1pbnNwaXJlZCBwb3B1cC4uLiIsCiAgIm5hbWUiOiAiVGlsaW5nIEFzc2lzdGFudCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50aWxpbmctYXNzaXN0YW50IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9MZWxlYXQvVGlsaW5nLUFzc2lzdGFudCIsCiAgInV1aWQiOiAidGlsaW5nLWFzc2lzdGFudEBsZWxlYXQtb24tZ2l0aHViIiwKICAidmVyc2lvbiI6IDM2Cn0="}}}
 , {"uuid": "airpods-battery-status@ju.wtf", "name": "Airpods Battery status", "pname": "airpods-battery-status", "description": "Show Airpods battery level in top bar\n\n/!\\ Needs AirStatus to work: https://github.com/delphiki/AirStatus", "link": "https://extensions.gnome.org/extension/3736/airpods-battery-status/", "shell_version_map": {"38": {"version": "7", "sha256": "1dyiqinjzjlh89vas00q78dzalh5mgj7q1a3vp8k13xfki4l0gzd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgQWlycG9kcyBiYXR0ZXJ5IGxldmVsIGluIHRvcCBiYXJcblxuLyFcXCBOZWVkcyBBaXJTdGF0dXMgdG8gd29yazogaHR0cHM6Ly9naXRodWIuY29tL2RlbHBoaWtpL0FpclN0YXR1cyIsCiAgIm5hbWUiOiAiQWlycG9kcyBCYXR0ZXJ5IHN0YXR1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RlbHBoaWtpL2dub21lLWFpcnBvZHMtYmF0dGVyeS1zdGF0dXMiLAogICJ1dWlkIjogImFpcnBvZHMtYmF0dGVyeS1zdGF0dXNAanUud3RmIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "1dyiqinjzjlh89vas00q78dzalh5mgj7q1a3vp8k13xfki4l0gzd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgQWlycG9kcyBiYXR0ZXJ5IGxldmVsIGluIHRvcCBiYXJcblxuLyFcXCBOZWVkcyBBaXJTdGF0dXMgdG8gd29yazogaHR0cHM6Ly9naXRodWIuY29tL2RlbHBoaWtpL0FpclN0YXR1cyIsCiAgIm5hbWUiOiAiQWlycG9kcyBCYXR0ZXJ5IHN0YXR1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RlbHBoaWtpL2dub21lLWFpcnBvZHMtYmF0dGVyeS1zdGF0dXMiLAogICJ1dWlkIjogImFpcnBvZHMtYmF0dGVyeS1zdGF0dXNAanUud3RmIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "41": {"version": "7", "sha256": "1dyiqinjzjlh89vas00q78dzalh5mgj7q1a3vp8k13xfki4l0gzd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgQWlycG9kcyBiYXR0ZXJ5IGxldmVsIGluIHRvcCBiYXJcblxuLyFcXCBOZWVkcyBBaXJTdGF0dXMgdG8gd29yazogaHR0cHM6Ly9naXRodWIuY29tL2RlbHBoaWtpL0FpclN0YXR1cyIsCiAgIm5hbWUiOiAiQWlycG9kcyBCYXR0ZXJ5IHN0YXR1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RlbHBoaWtpL2dub21lLWFpcnBvZHMtYmF0dGVyeS1zdGF0dXMiLAogICJ1dWlkIjogImFpcnBvZHMtYmF0dGVyeS1zdGF0dXNAanUud3RmIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "42": {"version": "7", "sha256": "1dyiqinjzjlh89vas00q78dzalh5mgj7q1a3vp8k13xfki4l0gzd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgQWlycG9kcyBiYXR0ZXJ5IGxldmVsIGluIHRvcCBiYXJcblxuLyFcXCBOZWVkcyBBaXJTdGF0dXMgdG8gd29yazogaHR0cHM6Ly9naXRodWIuY29tL2RlbHBoaWtpL0FpclN0YXR1cyIsCiAgIm5hbWUiOiAiQWlycG9kcyBCYXR0ZXJ5IHN0YXR1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RlbHBoaWtpL2dub21lLWFpcnBvZHMtYmF0dGVyeS1zdGF0dXMiLAogICJ1dWlkIjogImFpcnBvZHMtYmF0dGVyeS1zdGF0dXNAanUud3RmIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
-, {"uuid": "hue-lights@chlumskyvaclav.gmail.com", "name": "Hue Lights", "pname": "hue-lights", "description": "This extension controls Philips Hue compatible lights using Philips Hue Bridge on your local network, it also allows controlling Philips Hue Sync Box. If you are experiencing an error on the upgrade, please log out and log in again.", "link": "https://extensions.gnome.org/extension/3737/hue-lights/", "shell_version_map": {"38": {"version": "24", "sha256": "10rc9x685hp35j47ia2lk216997k3lddwjw3x6y9pyf87dhrwbz7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGNvbnRyb2xzIFBoaWxpcHMgSHVlIGNvbXBhdGlibGUgbGlnaHRzIHVzaW5nIFBoaWxpcHMgSHVlIEJyaWRnZSBvbiB5b3VyIGxvY2FsIG5ldHdvcmssIGl0IGFsc28gYWxsb3dzIGNvbnRyb2xsaW5nIFBoaWxpcHMgSHVlIFN5bmMgQm94LiBJZiB5b3UgYXJlIGV4cGVyaWVuY2luZyBhbiBlcnJvciBvbiB0aGUgdXBncmFkZSwgcGxlYXNlIGxvZyBvdXQgYW5kIGxvZyBpbiBhZ2Fpbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJodWUtbGlnaHRzIiwKICAibmFtZSI6ICJIdWUgTGlnaHRzIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImNobHVtc2t5dmFjbGF2QGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vaHVlLWxpZ2h0cyIsCiAgInV1aWQiOiAiaHVlLWxpZ2h0c0BjaGx1bXNreXZhY2xhdi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjQKfQ=="}, "40": {"version": "24", "sha256": "10rc9x685hp35j47ia2lk216997k3lddwjw3x6y9pyf87dhrwbz7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGNvbnRyb2xzIFBoaWxpcHMgSHVlIGNvbXBhdGlibGUgbGlnaHRzIHVzaW5nIFBoaWxpcHMgSHVlIEJyaWRnZSBvbiB5b3VyIGxvY2FsIG5ldHdvcmssIGl0IGFsc28gYWxsb3dzIGNvbnRyb2xsaW5nIFBoaWxpcHMgSHVlIFN5bmMgQm94LiBJZiB5b3UgYXJlIGV4cGVyaWVuY2luZyBhbiBlcnJvciBvbiB0aGUgdXBncmFkZSwgcGxlYXNlIGxvZyBvdXQgYW5kIGxvZyBpbiBhZ2Fpbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJodWUtbGlnaHRzIiwKICAibmFtZSI6ICJIdWUgTGlnaHRzIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImNobHVtc2t5dmFjbGF2QGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vaHVlLWxpZ2h0cyIsCiAgInV1aWQiOiAiaHVlLWxpZ2h0c0BjaGx1bXNreXZhY2xhdi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjQKfQ=="}, "41": {"version": "24", "sha256": "10rc9x685hp35j47ia2lk216997k3lddwjw3x6y9pyf87dhrwbz7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGNvbnRyb2xzIFBoaWxpcHMgSHVlIGNvbXBhdGlibGUgbGlnaHRzIHVzaW5nIFBoaWxpcHMgSHVlIEJyaWRnZSBvbiB5b3VyIGxvY2FsIG5ldHdvcmssIGl0IGFsc28gYWxsb3dzIGNvbnRyb2xsaW5nIFBoaWxpcHMgSHVlIFN5bmMgQm94LiBJZiB5b3UgYXJlIGV4cGVyaWVuY2luZyBhbiBlcnJvciBvbiB0aGUgdXBncmFkZSwgcGxlYXNlIGxvZyBvdXQgYW5kIGxvZyBpbiBhZ2Fpbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJodWUtbGlnaHRzIiwKICAibmFtZSI6ICJIdWUgTGlnaHRzIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImNobHVtc2t5dmFjbGF2QGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vaHVlLWxpZ2h0cyIsCiAgInV1aWQiOiAiaHVlLWxpZ2h0c0BjaGx1bXNreXZhY2xhdi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjQKfQ=="}, "42": {"version": "24", "sha256": "10rc9x685hp35j47ia2lk216997k3lddwjw3x6y9pyf87dhrwbz7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGNvbnRyb2xzIFBoaWxpcHMgSHVlIGNvbXBhdGlibGUgbGlnaHRzIHVzaW5nIFBoaWxpcHMgSHVlIEJyaWRnZSBvbiB5b3VyIGxvY2FsIG5ldHdvcmssIGl0IGFsc28gYWxsb3dzIGNvbnRyb2xsaW5nIFBoaWxpcHMgSHVlIFN5bmMgQm94LiBJZiB5b3UgYXJlIGV4cGVyaWVuY2luZyBhbiBlcnJvciBvbiB0aGUgdXBncmFkZSwgcGxlYXNlIGxvZyBvdXQgYW5kIGxvZyBpbiBhZ2Fpbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJodWUtbGlnaHRzIiwKICAibmFtZSI6ICJIdWUgTGlnaHRzIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImNobHVtc2t5dmFjbGF2QGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vaHVlLWxpZ2h0cyIsCiAgInV1aWQiOiAiaHVlLWxpZ2h0c0BjaGx1bXNreXZhY2xhdi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjQKfQ=="}, "43": {"version": "24", "sha256": "10rc9x685hp35j47ia2lk216997k3lddwjw3x6y9pyf87dhrwbz7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGNvbnRyb2xzIFBoaWxpcHMgSHVlIGNvbXBhdGlibGUgbGlnaHRzIHVzaW5nIFBoaWxpcHMgSHVlIEJyaWRnZSBvbiB5b3VyIGxvY2FsIG5ldHdvcmssIGl0IGFsc28gYWxsb3dzIGNvbnRyb2xsaW5nIFBoaWxpcHMgSHVlIFN5bmMgQm94LiBJZiB5b3UgYXJlIGV4cGVyaWVuY2luZyBhbiBlcnJvciBvbiB0aGUgdXBncmFkZSwgcGxlYXNlIGxvZyBvdXQgYW5kIGxvZyBpbiBhZ2Fpbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJodWUtbGlnaHRzIiwKICAibmFtZSI6ICJIdWUgTGlnaHRzIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImNobHVtc2t5dmFjbGF2QGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vaHVlLWxpZ2h0cyIsCiAgInV1aWQiOiAiaHVlLWxpZ2h0c0BjaGx1bXNreXZhY2xhdi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjQKfQ=="}}}
+, {"uuid": "hue-lights@chlumskyvaclav.gmail.com", "name": "Hue Lights", "pname": "hue-lights", "description": "This extension controls Philips Hue compatible lights using Philips Hue Bridge on your local network, it also allows controlling Philips Hue Sync Box. If you are experiencing an error on the upgrade, please log out and log in again.", "link": "https://extensions.gnome.org/extension/3737/hue-lights/", "shell_version_map": {"38": {"version": "24", "sha256": "10rc9x685hp35j47ia2lk216997k3lddwjw3x6y9pyf87dhrwbz7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGNvbnRyb2xzIFBoaWxpcHMgSHVlIGNvbXBhdGlibGUgbGlnaHRzIHVzaW5nIFBoaWxpcHMgSHVlIEJyaWRnZSBvbiB5b3VyIGxvY2FsIG5ldHdvcmssIGl0IGFsc28gYWxsb3dzIGNvbnRyb2xsaW5nIFBoaWxpcHMgSHVlIFN5bmMgQm94LiBJZiB5b3UgYXJlIGV4cGVyaWVuY2luZyBhbiBlcnJvciBvbiB0aGUgdXBncmFkZSwgcGxlYXNlIGxvZyBvdXQgYW5kIGxvZyBpbiBhZ2Fpbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJodWUtbGlnaHRzIiwKICAibmFtZSI6ICJIdWUgTGlnaHRzIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImNobHVtc2t5dmFjbGF2QGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vaHVlLWxpZ2h0cyIsCiAgInV1aWQiOiAiaHVlLWxpZ2h0c0BjaGx1bXNreXZhY2xhdi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjQKfQ=="}, "40": {"version": "26", "sha256": "0pf3b6mxipwhqs90r0iqzwl8w92fsz97vnip18r0znqw5pdl4hw3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGNvbnRyb2xzIFBoaWxpcHMgSHVlIGNvbXBhdGlibGUgbGlnaHRzIHVzaW5nIFBoaWxpcHMgSHVlIEJyaWRnZSBvbiB5b3VyIGxvY2FsIG5ldHdvcmssIGl0IGFsc28gYWxsb3dzIGNvbnRyb2xsaW5nIFBoaWxpcHMgSHVlIFN5bmMgQm94LiBJZiB5b3UgYXJlIGV4cGVyaWVuY2luZyBhbiBlcnJvciBvbiB0aGUgdXBncmFkZSwgcGxlYXNlIGxvZyBvdXQgYW5kIGxvZyBpbiBhZ2Fpbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJodWUtbGlnaHRzIiwKICAibmFtZSI6ICJIdWUgTGlnaHRzIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImNobHVtc2t5dmFjbGF2QGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vaHVlLWxpZ2h0cyIsCiAgInV1aWQiOiAiaHVlLWxpZ2h0c0BjaGx1bXNreXZhY2xhdi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjYKfQ=="}, "41": {"version": "26", "sha256": "0pf3b6mxipwhqs90r0iqzwl8w92fsz97vnip18r0znqw5pdl4hw3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGNvbnRyb2xzIFBoaWxpcHMgSHVlIGNvbXBhdGlibGUgbGlnaHRzIHVzaW5nIFBoaWxpcHMgSHVlIEJyaWRnZSBvbiB5b3VyIGxvY2FsIG5ldHdvcmssIGl0IGFsc28gYWxsb3dzIGNvbnRyb2xsaW5nIFBoaWxpcHMgSHVlIFN5bmMgQm94LiBJZiB5b3UgYXJlIGV4cGVyaWVuY2luZyBhbiBlcnJvciBvbiB0aGUgdXBncmFkZSwgcGxlYXNlIGxvZyBvdXQgYW5kIGxvZyBpbiBhZ2Fpbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJodWUtbGlnaHRzIiwKICAibmFtZSI6ICJIdWUgTGlnaHRzIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImNobHVtc2t5dmFjbGF2QGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vaHVlLWxpZ2h0cyIsCiAgInV1aWQiOiAiaHVlLWxpZ2h0c0BjaGx1bXNreXZhY2xhdi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjYKfQ=="}, "42": {"version": "26", "sha256": "0pf3b6mxipwhqs90r0iqzwl8w92fsz97vnip18r0znqw5pdl4hw3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGNvbnRyb2xzIFBoaWxpcHMgSHVlIGNvbXBhdGlibGUgbGlnaHRzIHVzaW5nIFBoaWxpcHMgSHVlIEJyaWRnZSBvbiB5b3VyIGxvY2FsIG5ldHdvcmssIGl0IGFsc28gYWxsb3dzIGNvbnRyb2xsaW5nIFBoaWxpcHMgSHVlIFN5bmMgQm94LiBJZiB5b3UgYXJlIGV4cGVyaWVuY2luZyBhbiBlcnJvciBvbiB0aGUgdXBncmFkZSwgcGxlYXNlIGxvZyBvdXQgYW5kIGxvZyBpbiBhZ2Fpbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJodWUtbGlnaHRzIiwKICAibmFtZSI6ICJIdWUgTGlnaHRzIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImNobHVtc2t5dmFjbGF2QGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vaHVlLWxpZ2h0cyIsCiAgInV1aWQiOiAiaHVlLWxpZ2h0c0BjaGx1bXNreXZhY2xhdi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjYKfQ=="}, "43": {"version": "26", "sha256": "0pf3b6mxipwhqs90r0iqzwl8w92fsz97vnip18r0znqw5pdl4hw3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGNvbnRyb2xzIFBoaWxpcHMgSHVlIGNvbXBhdGlibGUgbGlnaHRzIHVzaW5nIFBoaWxpcHMgSHVlIEJyaWRnZSBvbiB5b3VyIGxvY2FsIG5ldHdvcmssIGl0IGFsc28gYWxsb3dzIGNvbnRyb2xsaW5nIFBoaWxpcHMgSHVlIFN5bmMgQm94LiBJZiB5b3UgYXJlIGV4cGVyaWVuY2luZyBhbiBlcnJvciBvbiB0aGUgdXBncmFkZSwgcGxlYXNlIGxvZyBvdXQgYW5kIGxvZyBpbiBhZ2Fpbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJodWUtbGlnaHRzIiwKICAibmFtZSI6ICJIdWUgTGlnaHRzIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImNobHVtc2t5dmFjbGF2QGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vaHVlLWxpZ2h0cyIsCiAgInV1aWQiOiAiaHVlLWxpZ2h0c0BjaGx1bXNreXZhY2xhdi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjYKfQ=="}}}
 , {"uuid": "compiz-alike-magic-lamp-effect@hermes83.github.com", "name": "Compiz alike magic lamp effect", "pname": "compiz-alike-magic-lamp-effect", "description": "Magic lamp effect inspired by the Compiz ones\n\nNB:\nIn case of update error please restart Gnome Shell (on Xorg press ALT+F2 then write r and press enter, on Wayland end the session and log in again)", "link": "https://extensions.gnome.org/extension/3740/compiz-alike-magic-lamp-effect/", "shell_version_map": {"38": {"version": "13", "sha256": "17b2nxg36v09fc6m5ja0kdi0mnjwid0gama4bg3x5qj87gs5j077", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hZ2ljIGxhbXAgZWZmZWN0IGluc3BpcmVkIGJ5IHRoZSBDb21waXogb25lc1xuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKSIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIG1hZ2ljIGxhbXAgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hlcm1lczgzL2NvbXBpei1hbGlrZS1tYWdpYy1sYW1wLWVmZmVjdCIsCiAgInV1aWQiOiAiY29tcGl6LWFsaWtlLW1hZ2ljLWxhbXAtZWZmZWN0QGhlcm1lczgzLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "40": {"version": "13", "sha256": "17b2nxg36v09fc6m5ja0kdi0mnjwid0gama4bg3x5qj87gs5j077", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hZ2ljIGxhbXAgZWZmZWN0IGluc3BpcmVkIGJ5IHRoZSBDb21waXogb25lc1xuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKSIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIG1hZ2ljIGxhbXAgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hlcm1lczgzL2NvbXBpei1hbGlrZS1tYWdpYy1sYW1wLWVmZmVjdCIsCiAgInV1aWQiOiAiY29tcGl6LWFsaWtlLW1hZ2ljLWxhbXAtZWZmZWN0QGhlcm1lczgzLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "41": {"version": "13", "sha256": "17b2nxg36v09fc6m5ja0kdi0mnjwid0gama4bg3x5qj87gs5j077", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hZ2ljIGxhbXAgZWZmZWN0IGluc3BpcmVkIGJ5IHRoZSBDb21waXogb25lc1xuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKSIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIG1hZ2ljIGxhbXAgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hlcm1lczgzL2NvbXBpei1hbGlrZS1tYWdpYy1sYW1wLWVmZmVjdCIsCiAgInV1aWQiOiAiY29tcGl6LWFsaWtlLW1hZ2ljLWxhbXAtZWZmZWN0QGhlcm1lczgzLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "42": {"version": "13", "sha256": "17b2nxg36v09fc6m5ja0kdi0mnjwid0gama4bg3x5qj87gs5j077", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hZ2ljIGxhbXAgZWZmZWN0IGluc3BpcmVkIGJ5IHRoZSBDb21waXogb25lc1xuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKSIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIG1hZ2ljIGxhbXAgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hlcm1lczgzL2NvbXBpei1hbGlrZS1tYWdpYy1sYW1wLWVmZmVjdCIsCiAgInV1aWQiOiAiY29tcGl6LWFsaWtlLW1hZ2ljLWxhbXAtZWZmZWN0QGhlcm1lczgzLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "43": {"version": "13", "sha256": "17b2nxg36v09fc6m5ja0kdi0mnjwid0gama4bg3x5qj87gs5j077", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hZ2ljIGxhbXAgZWZmZWN0IGluc3BpcmVkIGJ5IHRoZSBDb21waXogb25lc1xuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKSIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIG1hZ2ljIGxhbXAgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hlcm1lczgzL2NvbXBpei1hbGlrZS1tYWdpYy1sYW1wLWVmZmVjdCIsCiAgInV1aWQiOiAiY29tcGl6LWFsaWtlLW1hZ2ljLWxhbXAtZWZmZWN0QGhlcm1lczgzLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}}}
 , {"uuid": "latency-monitor@gitlab.labsatho.me", "name": "Latency Monitor", "pname": "latency-monitor", "description": "A simple extension for displaying latency information using pings in GNOME Shell.", "link": "https://extensions.gnome.org/extension/3746/latency-monitor/", "shell_version_map": {"38": {"version": "6", "sha256": "0k2y1qrq7irkn2c72pk4c5x4fwzaxkfp3jj7qvhzih6zmkifdzcd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc2ltcGxlIGV4dGVuc2lvbiBmb3IgZGlzcGxheWluZyBsYXRlbmN5IGluZm9ybWF0aW9uIHVzaW5nIHBpbmdzIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiTGF0ZW5jeSBNb25pdG9yIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmxhdGVuY3ktbW9uaXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3dhbGthZndhbGthL2dub21lLXNoZWxsLWV4dGVuc2lvbi1sYXRlbmN5LW1vbml0b3IiLAogICJ1dWlkIjogImxhdGVuY3ktbW9uaXRvckBnaXRsYWIubGFic2F0aG8ubWUiLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "the-circles-widget@xenlism.github.io", "name": "The Circles - Desktop Widget", "pname": "the-circles-desktop-widget", "description": "Show System Infomations on Desktop as Circles Desktop Widget\n\nmore info \nhttps://www.linuxuprising.com/2020/11/display-clock-ram-and-cpu-usage-as.html", "link": "https://extensions.gnome.org/extension/3748/the-circles-desktop-widget/", "shell_version_map": {"38": {"version": "6", "sha256": "0kxync9gdjgcfq3vfhf5z0065n30jw5y5jl00hdgarsh4pkbji04", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgU3lzdGVtIEluZm9tYXRpb25zIG9uIERlc2t0b3AgYXMgQ2lyY2xlcyBEZXNrdG9wIFdpZGdldFxuXG5tb3JlIGluZm8gXG5odHRwczovL3d3dy5saW51eHVwcmlzaW5nLmNvbS8yMDIwLzExL2Rpc3BsYXktY2xvY2stcmFtLWFuZC1jcHUtdXNhZ2UtYXMuaHRtbCIsCiAgImV4dGVuc2lvbi1pZCI6ICJ0aGUtY2lyY2xlcy13aWRnZXQiLAogICJuYW1lIjogIlRoZSBDaXJjbGVzIC0gRGVza3RvcCBXaWRnZXQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGhlLWNpcmNsZXMtd2lkZ2V0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20veGVubGlzbS9zaG93dGltZSIsCiAgInV1aWQiOiAidGhlLWNpcmNsZXMtd2lkZ2V0QHhlbmxpc20uZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "40": {"version": "12", "sha256": "0ngn00y97dqv667z47xahfv53dlb2asm0jbk9harlv4516jdrg0s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgU3lzdGVtIEluZm9tYXRpb25zIG9uIERlc2t0b3AgYXMgQ2lyY2xlcyBEZXNrdG9wIFdpZGdldFxuXG5tb3JlIGluZm8gXG5odHRwczovL3d3dy5saW51eHVwcmlzaW5nLmNvbS8yMDIwLzExL2Rpc3BsYXktY2xvY2stcmFtLWFuZC1jcHUtdXNhZ2UtYXMuaHRtbCIsCiAgImV4dGVuc2lvbi1pZCI6ICJ0aGUtY2lyY2xlcy13aWRnZXQiLAogICJuYW1lIjogIlRoZSBDaXJjbGVzIC0gRGVza3RvcCBXaWRnZXQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGhlLWNpcmNsZXMtd2lkZ2V0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3hlbmxpc20vc2hvd3RpbWUiLAogICJ1dWlkIjogInRoZS1jaXJjbGVzLXdpZGdldEB4ZW5saXNtLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMgp9"}}}
@@ -402,7 +402,7 @@
 , {"uuid": "podman-as-docker@alberto.yomerengues.xyz", "name": "Podman and Docker", "pname": "podman-as-docker", "description": "podman extension as docker\nIn order to get it work on podman, you just need to create an alias\nSimply put: alias docker=podman\nand install podman-docker", "link": "https://extensions.gnome.org/extension/3799/podman-as-docker/", "shell_version_map": {"38": {"version": "1", "sha256": "18bkd6z5hm6zidh7xv8v3jvj36lmxzx4dar7nwa7nq3p51km6crz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInBvZG1hbiBleHRlbnNpb24gYXMgZG9ja2VyXG5JbiBvcmRlciB0byBnZXQgaXQgd29yayBvbiBwb2RtYW4sIHlvdSBqdXN0IG5lZWQgdG8gY3JlYXRlIGFuIGFsaWFzXG5TaW1wbHkgcHV0OiBhbGlhcyBkb2NrZXI9cG9kbWFuXG5hbmQgaW5zdGFsbCBwb2RtYW4tZG9ja2VyIiwKICAibmFtZSI6ICJQb2RtYW4gYW5kIERvY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJwb2RtYW4tYXMtZG9ja2VyQGFsYmVydG8ueW9tZXJlbmd1ZXMueHl6IiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
 , {"uuid": "wacom-indicator@fthx", "name": "Wacom Indicator", "pname": "wacom-indicator", "description": "Wacom tablet indicator in the top bar: connection state and power level.\n\n On click: open GNOME Settings Wacom section. On hover or every minute: update connection state and power level.\n\n Settings (in extension.js file headers): show/hide model label, refresh delay, update/do nothing on indicator hover, show/hide if disconnected.", "link": "https://extensions.gnome.org/extension/3809/wacom-indicator/", "shell_version_map": {"38": {"version": "7", "sha256": "1sda66n1s3d28jd98xcznw5ljv10iwndpcbq7bfm5hqzrk8zimid", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldhY29tIHRhYmxldCBpbmRpY2F0b3IgaW4gdGhlIHRvcCBiYXI6IGNvbm5lY3Rpb24gc3RhdGUgYW5kIHBvd2VyIGxldmVsLlxuXG4gT24gY2xpY2s6IG9wZW4gR05PTUUgU2V0dGluZ3MgV2Fjb20gc2VjdGlvbi4gT24gaG92ZXIgb3IgZXZlcnkgbWludXRlOiB1cGRhdGUgY29ubmVjdGlvbiBzdGF0ZSBhbmQgcG93ZXIgbGV2ZWwuXG5cbiBTZXR0aW5ncyAoaW4gZXh0ZW5zaW9uLmpzIGZpbGUgaGVhZGVycyk6IHNob3cvaGlkZSBtb2RlbCBsYWJlbCwgcmVmcmVzaCBkZWxheSwgdXBkYXRlL2RvIG5vdGhpbmcgb24gaW5kaWNhdG9yIGhvdmVyLCBzaG93L2hpZGUgaWYgZGlzY29ubmVjdGVkLiIsCiAgIm5hbWUiOiAiV2Fjb20gSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvd2Fjb20taW5kaWNhdG9yIiwKICAidXVpZCI6ICJ3YWNvbS1pbmRpY2F0b3JAZnRoeCIsCiAgInZlcnNpb24iOiA3Cn0="}, "40": {"version": "7", "sha256": "1sda66n1s3d28jd98xcznw5ljv10iwndpcbq7bfm5hqzrk8zimid", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldhY29tIHRhYmxldCBpbmRpY2F0b3IgaW4gdGhlIHRvcCBiYXI6IGNvbm5lY3Rpb24gc3RhdGUgYW5kIHBvd2VyIGxldmVsLlxuXG4gT24gY2xpY2s6IG9wZW4gR05PTUUgU2V0dGluZ3MgV2Fjb20gc2VjdGlvbi4gT24gaG92ZXIgb3IgZXZlcnkgbWludXRlOiB1cGRhdGUgY29ubmVjdGlvbiBzdGF0ZSBhbmQgcG93ZXIgbGV2ZWwuXG5cbiBTZXR0aW5ncyAoaW4gZXh0ZW5zaW9uLmpzIGZpbGUgaGVhZGVycyk6IHNob3cvaGlkZSBtb2RlbCBsYWJlbCwgcmVmcmVzaCBkZWxheSwgdXBkYXRlL2RvIG5vdGhpbmcgb24gaW5kaWNhdG9yIGhvdmVyLCBzaG93L2hpZGUgaWYgZGlzY29ubmVjdGVkLiIsCiAgIm5hbWUiOiAiV2Fjb20gSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvd2Fjb20taW5kaWNhdG9yIiwKICAidXVpZCI6ICJ3YWNvbS1pbmRpY2F0b3JAZnRoeCIsCiAgInZlcnNpb24iOiA3Cn0="}}}
 , {"uuid": "hibernate@dafne.rocks", "name": "System Action - Hibernate", "pname": "system-action-hibernate", "description": "A GNOME extension that adds the option to hibernate amongst other system actions", "link": "https://extensions.gnome.org/extension/3814/system-action-hibernate/", "shell_version_map": {"38": {"version": "9", "sha256": "0hp93b4s1lcvsc6fwda9mrwcv5bwqya178zhyqpx37fm7r7kz9vz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgZXh0ZW5zaW9uIHRoYXQgYWRkcyB0aGUgb3B0aW9uIHRvIGhpYmVybmF0ZSBhbW9uZ3N0IG90aGVyIHN5c3RlbSBhY3Rpb25zIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaGliZXJuYXRlQGRhZm5lLnJvY2tzIiwKICAibmFtZSI6ICJTeXN0ZW0gQWN0aW9uIC0gSGliZXJuYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MS4wIiwKICAgICI0Mi4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2NvZGViZXJnLm9yZy9raXl1aS9nbm9tZS1zaGVsbC1oaWJlcm5hdGUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJoaWJlcm5hdGVAZGFmbmUucm9ja3MiLAogICJ2ZXJzaW9uIjogOQp9"}, "40": {"version": "9", "sha256": "0hp93b4s1lcvsc6fwda9mrwcv5bwqya178zhyqpx37fm7r7kz9vz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgZXh0ZW5zaW9uIHRoYXQgYWRkcyB0aGUgb3B0aW9uIHRvIGhpYmVybmF0ZSBhbW9uZ3N0IG90aGVyIHN5c3RlbSBhY3Rpb25zIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaGliZXJuYXRlQGRhZm5lLnJvY2tzIiwKICAibmFtZSI6ICJTeXN0ZW0gQWN0aW9uIC0gSGliZXJuYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MS4wIiwKICAgICI0Mi4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2NvZGViZXJnLm9yZy9raXl1aS9nbm9tZS1zaGVsbC1oaWJlcm5hdGUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJoaWJlcm5hdGVAZGFmbmUucm9ja3MiLAogICJ2ZXJzaW9uIjogOQp9"}, "41": {"version": "9", "sha256": "0hp93b4s1lcvsc6fwda9mrwcv5bwqya178zhyqpx37fm7r7kz9vz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgZXh0ZW5zaW9uIHRoYXQgYWRkcyB0aGUgb3B0aW9uIHRvIGhpYmVybmF0ZSBhbW9uZ3N0IG90aGVyIHN5c3RlbSBhY3Rpb25zIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaGliZXJuYXRlQGRhZm5lLnJvY2tzIiwKICAibmFtZSI6ICJTeXN0ZW0gQWN0aW9uIC0gSGliZXJuYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MS4wIiwKICAgICI0Mi4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2NvZGViZXJnLm9yZy9raXl1aS9nbm9tZS1zaGVsbC1oaWJlcm5hdGUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJoaWJlcm5hdGVAZGFmbmUucm9ja3MiLAogICJ2ZXJzaW9uIjogOQp9"}, "42": {"version": "9", "sha256": "0hp93b4s1lcvsc6fwda9mrwcv5bwqya178zhyqpx37fm7r7kz9vz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgZXh0ZW5zaW9uIHRoYXQgYWRkcyB0aGUgb3B0aW9uIHRvIGhpYmVybmF0ZSBhbW9uZ3N0IG90aGVyIHN5c3RlbSBhY3Rpb25zIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaGliZXJuYXRlQGRhZm5lLnJvY2tzIiwKICAibmFtZSI6ICJTeXN0ZW0gQWN0aW9uIC0gSGliZXJuYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MS4wIiwKICAgICI0Mi4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2NvZGViZXJnLm9yZy9raXl1aS9nbm9tZS1zaGVsbC1oaWJlcm5hdGUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJoaWJlcm5hdGVAZGFmbmUucm9ja3MiLAogICJ2ZXJzaW9uIjogOQp9"}}}
-, {"uuid": "click-to-close-overview@l3nn4rt.github.io", "name": "Click to close overview", "pname": "click-to-close-overview", "description": "Close the overview by clicking empty space.", "link": "https://extensions.gnome.org/extension/3826/click-to-close-overview/", "shell_version_map": {"38": {"version": "3", "sha256": "17xd3k1xpsn8ma6f11f4sr26y5xbcs3hiw7lv1qqrn80lyjj2vz1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBvdmVydmlldyBieSBjbGlja2luZyBlbXB0eSBzcGFjZS4iLAogICJuYW1lIjogIkNsaWNrIHRvIGNsb3NlIG92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbDNubjRydC9jbGljay10by1jbG9zZS1vdmVydmlldyIsCiAgInV1aWQiOiAiY2xpY2stdG8tY2xvc2Utb3ZlcnZpZXdAbDNubjRydC5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "6", "sha256": "08m7d6shrghpqfbxikipxasxc4rxh1m030ljhjrirs856man6qxb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBvdmVydmlldyBieSBjbGlja2luZyBlbXB0eSBzcGFjZS4iLAogICJuYW1lIjogIkNsaWNrIHRvIGNsb3NlIG92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbDNubjRydC9jbGljay10by1jbG9zZS1vdmVydmlldyIsCiAgInV1aWQiOiAiY2xpY2stdG8tY2xvc2Utb3ZlcnZpZXdAbDNubjRydC5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNgp9"}, "41": {"version": "6", "sha256": "08m7d6shrghpqfbxikipxasxc4rxh1m030ljhjrirs856man6qxb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBvdmVydmlldyBieSBjbGlja2luZyBlbXB0eSBzcGFjZS4iLAogICJuYW1lIjogIkNsaWNrIHRvIGNsb3NlIG92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbDNubjRydC9jbGljay10by1jbG9zZS1vdmVydmlldyIsCiAgInV1aWQiOiAiY2xpY2stdG8tY2xvc2Utb3ZlcnZpZXdAbDNubjRydC5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNgp9"}, "42": {"version": "6", "sha256": "08m7d6shrghpqfbxikipxasxc4rxh1m030ljhjrirs856man6qxb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBvdmVydmlldyBieSBjbGlja2luZyBlbXB0eSBzcGFjZS4iLAogICJuYW1lIjogIkNsaWNrIHRvIGNsb3NlIG92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbDNubjRydC9jbGljay10by1jbG9zZS1vdmVydmlldyIsCiAgInV1aWQiOiAiY2xpY2stdG8tY2xvc2Utb3ZlcnZpZXdAbDNubjRydC5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNgp9"}}}
+, {"uuid": "click-to-close-overview@l3nn4rt.github.io", "name": "Click to close overview", "pname": "click-to-close-overview", "description": "Close the overview by clicking empty space.", "link": "https://extensions.gnome.org/extension/3826/click-to-close-overview/", "shell_version_map": {"38": {"version": "3", "sha256": "17xd3k1xpsn8ma6f11f4sr26y5xbcs3hiw7lv1qqrn80lyjj2vz1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBvdmVydmlldyBieSBjbGlja2luZyBlbXB0eSBzcGFjZS4iLAogICJuYW1lIjogIkNsaWNrIHRvIGNsb3NlIG92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbDNubjRydC9jbGljay10by1jbG9zZS1vdmVydmlldyIsCiAgInV1aWQiOiAiY2xpY2stdG8tY2xvc2Utb3ZlcnZpZXdAbDNubjRydC5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "7", "sha256": "1pjp5yv27dvghdq74017brzqpk8jczmhw893wzw2id0nja2pjvqn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBvdmVydmlldyBieSBjbGlja2luZyBlbXB0eSBzcGFjZS4iLAogICJuYW1lIjogIkNsaWNrIHRvIGNsb3NlIG92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2wzbm40cnQvY2xpY2stdG8tY2xvc2Utb3ZlcnZpZXciLAogICJ1dWlkIjogImNsaWNrLXRvLWNsb3NlLW92ZXJ2aWV3QGwzbm40cnQuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "41": {"version": "7", "sha256": "1pjp5yv27dvghdq74017brzqpk8jczmhw893wzw2id0nja2pjvqn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBvdmVydmlldyBieSBjbGlja2luZyBlbXB0eSBzcGFjZS4iLAogICJuYW1lIjogIkNsaWNrIHRvIGNsb3NlIG92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2wzbm40cnQvY2xpY2stdG8tY2xvc2Utb3ZlcnZpZXciLAogICJ1dWlkIjogImNsaWNrLXRvLWNsb3NlLW92ZXJ2aWV3QGwzbm40cnQuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "42": {"version": "7", "sha256": "1pjp5yv27dvghdq74017brzqpk8jczmhw893wzw2id0nja2pjvqn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBvdmVydmlldyBieSBjbGlja2luZyBlbXB0eSBzcGFjZS4iLAogICJuYW1lIjogIkNsaWNrIHRvIGNsb3NlIG92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2wzbm40cnQvY2xpY2stdG8tY2xvc2Utb3ZlcnZpZXciLAogICJ1dWlkIjogImNsaWNrLXRvLWNsb3NlLW92ZXJ2aWV3QGwzbm40cnQuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "43": {"version": "7", "sha256": "1pjp5yv27dvghdq74017brzqpk8jczmhw893wzw2id0nja2pjvqn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBvdmVydmlldyBieSBjbGlja2luZyBlbXB0eSBzcGFjZS4iLAogICJuYW1lIjogIkNsaWNrIHRvIGNsb3NlIG92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2wzbm40cnQvY2xpY2stdG8tY2xvc2Utb3ZlcnZpZXciLAogICJ1dWlkIjogImNsaWNrLXRvLWNsb3NlLW92ZXJ2aWV3QGwzbm40cnQuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
 , {"uuid": "just-perfection-desktop@just-perfection", "name": "Just Perfection", "pname": "just-perfection", "description": "Tweak Tool to Customize GNOME Shell, Change the Behavior and Disable UI Elements\n\n- Accessibility Menu Visibility\n- Activities Button Icon Visibility\n- Activities button Visibility\n- Alt Tab Icon Size\n- Alt Tab Window Preview Icon Size\n- Alt Tab Window Preview Size\n- Always Show Workspace Switcher on Dynamic Workspaces (40, 41, 42)\n- Animation Speed or Disable it\n- App Gesture (3.36, 3.38)\n- Applications Button Visibility\n- App Menu Icon Visibility\n- App Menu Label Visibility\n- App Menu Visibility\n- Background Menu Visibility\n- Calendar Visibility\n- Clock Menu Position\n- Clock Menu Visibility\n- Dash Icon Size\n- Dash Separator Visibility (40, 41, 42)\n- Dash Visibility\n- Disable Type to Search\n- Double Super Key to App Grid\n- Events in Clock Menu Visibility\n- GNOME Shell Theme Override\n- Hot Corner (3.36, 3.38, 40)\n- Keyboard Layout Visibility\n- Looking Glass Size\n- Notification Banner Position\n- OSD Position\n- OSD Visibility\n- Panel Arrow Visibility (3.36, 3.38)\n- Panel Button Padding Size\n- Panel Height\n- Panel icon size \n- Panel Indicator Padding Size\n- Panel Notification icon Visibility\n- Panel Position\n- Panel Round Corner Size (3.36, 3.38, 40, 41)\n- Panel Visibility\n- Panel Visibility in Overview\n- Power Icon Visibility\n- Quick Settings Menu Visibility (43)\n- Ripple Box\n- Search Visibility\n- Startup Status(40, 41, 42)\n- System Menu (Aggregate Menu) Visibility (3.36, 3.38, 40, 41, 42)\n- Take Screenshot Button in Window Menu Visibility\n- Weather Visibility\n- Window Demands Attention Focus\n- Window Picker Caption Visibility\n- Window Picker Close Button Visibility\n- Window Picker Icon (40, 41, 42)\n- Workspace Background Corner Size in Overview (40, 41, 42)\n- Workspace Popup Visibility\n- Workspaces in app grid Visibility (40, 41, 42)\n- Workspace Switcher Size (40, 41, 42)\n- Workspace Switcher Visibility\n- Workspace Wraparound\n- World Clock Visibility", "link": "https://extensions.gnome.org/extension/3843/just-perfection/", "shell_version_map": {"38": {"version": "22", "sha256": "12ak9dxmzrrlgc9zjf3j7i6dl3gfqp4n95pqwfwcmvhv7nk20v16", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrIFRvb2wgdG8gQ3VzdG9taXplIEdOT01FIFNoZWxsLCBDaGFuZ2UgdGhlIEJlaGF2aW9yIGFuZCBEaXNhYmxlIFVJIEVsZW1lbnRzXG5cbi0gQWNjZXNzaWJpbGl0eSBNZW51IFZpc2liaWxpdHlcbi0gQWN0aXZpdGllcyBCdXR0b24gSWNvbiBWaXNpYmlsaXR5XG4tIEFjdGl2aXRpZXMgYnV0dG9uIFZpc2liaWxpdHlcbi0gQWx0IFRhYiBJY29uIFNpemVcbi0gQWx0IFRhYiBXaW5kb3cgUHJldmlldyBJY29uIFNpemVcbi0gQWx0IFRhYiBXaW5kb3cgUHJldmlldyBTaXplXG4tIEFsd2F5cyBTaG93IFdvcmtzcGFjZSBTd2l0Y2hlciBvbiBEeW5hbWljIFdvcmtzcGFjZXMgKDQwLCA0MSwgNDIpXG4tIEFuaW1hdGlvbiBTcGVlZCBvciBEaXNhYmxlIGl0XG4tIEFwcCBHZXN0dXJlICgzLjM2LCAzLjM4KVxuLSBBcHBsaWNhdGlvbnMgQnV0dG9uIFZpc2liaWxpdHlcbi0gQXBwIE1lbnUgSWNvbiBWaXNpYmlsaXR5XG4tIEFwcCBNZW51IExhYmVsIFZpc2liaWxpdHlcbi0gQXBwIE1lbnUgVmlzaWJpbGl0eVxuLSBCYWNrZ3JvdW5kIE1lbnUgVmlzaWJpbGl0eVxuLSBDYWxlbmRhciBWaXNpYmlsaXR5XG4tIENsb2NrIE1lbnUgUG9zaXRpb25cbi0gQ2xvY2sgTWVudSBWaXNpYmlsaXR5XG4tIERhc2ggSWNvbiBTaXplXG4tIERhc2ggU2VwYXJhdG9yIFZpc2liaWxpdHkgKDQwLCA0MSwgNDIpXG4tIERhc2ggVmlzaWJpbGl0eVxuLSBEaXNhYmxlIFR5cGUgdG8gU2VhcmNoXG4tIERvdWJsZSBTdXBlciBLZXkgdG8gQXBwIEdyaWRcbi0gRXZlbnRzIGluIENsb2NrIE1lbnUgVmlzaWJpbGl0eVxuLSBHTk9NRSBTaGVsbCBUaGVtZSBPdmVycmlkZVxuLSBIb3QgQ29ybmVyICgzLjM2LCAzLjM4LCA0MClcbi0gS2V5Ym9hcmQgTGF5b3V0IFZpc2liaWxpdHlcbi0gTG9va2luZyBHbGFzcyBTaXplXG4tIE5vdGlmaWNhdGlvbiBCYW5uZXIgUG9zaXRpb25cbi0gT1NEIFBvc2l0aW9uXG4tIE9TRCBWaXNpYmlsaXR5XG4tIFBhbmVsIEFycm93IFZpc2liaWxpdHkgKDMuMzYsIDMuMzgpXG4tIFBhbmVsIEJ1dHRvbiBQYWRkaW5nIFNpemVcbi0gUGFuZWwgSGVpZ2h0XG4tIFBhbmVsIGljb24gc2l6ZSBcbi0gUGFuZWwgSW5kaWNhdG9yIFBhZGRpbmcgU2l6ZVxuLSBQYW5lbCBOb3RpZmljYXRpb24gaWNvbiBWaXNpYmlsaXR5XG4tIFBhbmVsIFBvc2l0aW9uXG4tIFBhbmVsIFJvdW5kIENvcm5lciBTaXplICgzLjM2LCAzLjM4LCA0MCwgNDEpXG4tIFBhbmVsIFZpc2liaWxpdHlcbi0gUGFuZWwgVmlzaWJpbGl0eSBpbiBPdmVydmlld1xuLSBQb3dlciBJY29uIFZpc2liaWxpdHlcbi0gUXVpY2sgU2V0dGluZ3MgTWVudSBWaXNpYmlsaXR5ICg0Mylcbi0gUmlwcGxlIEJveFxuLSBTZWFyY2ggVmlzaWJpbGl0eVxuLSBTdGFydHVwIFN0YXR1cyg0MCwgNDEsIDQyKVxuLSBTeXN0ZW0gTWVudSAoQWdncmVnYXRlIE1lbnUpIFZpc2liaWxpdHkgKDMuMzYsIDMuMzgsIDQwLCA0MSwgNDIpXG4tIFRha2UgU2NyZWVuc2hvdCBCdXR0b24gaW4gV2luZG93IE1lbnUgVmlzaWJpbGl0eVxuLSBXZWF0aGVyIFZpc2liaWxpdHlcbi0gV2luZG93IERlbWFuZHMgQXR0ZW50aW9uIEZvY3VzXG4tIFdpbmRvdyBQaWNrZXIgQ2FwdGlvbiBWaXNpYmlsaXR5XG4tIFdpbmRvdyBQaWNrZXIgQ2xvc2UgQnV0dG9uIFZpc2liaWxpdHlcbi0gV2luZG93IFBpY2tlciBJY29uICg0MCwgNDEsIDQyKVxuLSBXb3Jrc3BhY2UgQmFja2dyb3VuZCBDb3JuZXIgU2l6ZSBpbiBPdmVydmlldyAoNDAsIDQxLCA0Milcbi0gV29ya3NwYWNlIFBvcHVwIFZpc2liaWxpdHlcbi0gV29ya3NwYWNlcyBpbiBhcHAgZ3JpZCBWaXNpYmlsaXR5ICg0MCwgNDEsIDQyKVxuLSBXb3Jrc3BhY2UgU3dpdGNoZXIgU2l6ZSAoNDAsIDQxLCA0Milcbi0gV29ya3NwYWNlIFN3aXRjaGVyIFZpc2liaWxpdHlcbi0gV29ya3NwYWNlIFdyYXBhcm91bmRcbi0gV29ybGQgQ2xvY2sgVmlzaWJpbGl0eSIsCiAgImdldHRleHQtZG9tYWluIjogImp1c3QtcGVyZmVjdGlvbiIsCiAgIm5hbWUiOiAiSnVzdCBQZXJmZWN0aW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmp1c3QtcGVyZmVjdGlvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9qcmFobWF0emFkZWgvanVzdC1wZXJmZWN0aW9uIiwKICAidXVpZCI6ICJqdXN0LXBlcmZlY3Rpb24tZGVza3RvcEBqdXN0LXBlcmZlY3Rpb24iLAogICJ2ZXJzaW9uIjogMjIKfQ=="}, "40": {"version": "22", "sha256": "12ak9dxmzrrlgc9zjf3j7i6dl3gfqp4n95pqwfwcmvhv7nk20v16", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrIFRvb2wgdG8gQ3VzdG9taXplIEdOT01FIFNoZWxsLCBDaGFuZ2UgdGhlIEJlaGF2aW9yIGFuZCBEaXNhYmxlIFVJIEVsZW1lbnRzXG5cbi0gQWNjZXNzaWJpbGl0eSBNZW51IFZpc2liaWxpdHlcbi0gQWN0aXZpdGllcyBCdXR0b24gSWNvbiBWaXNpYmlsaXR5XG4tIEFjdGl2aXRpZXMgYnV0dG9uIFZpc2liaWxpdHlcbi0gQWx0IFRhYiBJY29uIFNpemVcbi0gQWx0IFRhYiBXaW5kb3cgUHJldmlldyBJY29uIFNpemVcbi0gQWx0IFRhYiBXaW5kb3cgUHJldmlldyBTaXplXG4tIEFsd2F5cyBTaG93IFdvcmtzcGFjZSBTd2l0Y2hlciBvbiBEeW5hbWljIFdvcmtzcGFjZXMgKDQwLCA0MSwgNDIpXG4tIEFuaW1hdGlvbiBTcGVlZCBvciBEaXNhYmxlIGl0XG4tIEFwcCBHZXN0dXJlICgzLjM2LCAzLjM4KVxuLSBBcHBsaWNhdGlvbnMgQnV0dG9uIFZpc2liaWxpdHlcbi0gQXBwIE1lbnUgSWNvbiBWaXNpYmlsaXR5XG4tIEFwcCBNZW51IExhYmVsIFZpc2liaWxpdHlcbi0gQXBwIE1lbnUgVmlzaWJpbGl0eVxuLSBCYWNrZ3JvdW5kIE1lbnUgVmlzaWJpbGl0eVxuLSBDYWxlbmRhciBWaXNpYmlsaXR5XG4tIENsb2NrIE1lbnUgUG9zaXRpb25cbi0gQ2xvY2sgTWVudSBWaXNpYmlsaXR5XG4tIERhc2ggSWNvbiBTaXplXG4tIERhc2ggU2VwYXJhdG9yIFZpc2liaWxpdHkgKDQwLCA0MSwgNDIpXG4tIERhc2ggVmlzaWJpbGl0eVxuLSBEaXNhYmxlIFR5cGUgdG8gU2VhcmNoXG4tIERvdWJsZSBTdXBlciBLZXkgdG8gQXBwIEdyaWRcbi0gRXZlbnRzIGluIENsb2NrIE1lbnUgVmlzaWJpbGl0eVxuLSBHTk9NRSBTaGVsbCBUaGVtZSBPdmVycmlkZVxuLSBIb3QgQ29ybmVyICgzLjM2LCAzLjM4LCA0MClcbi0gS2V5Ym9hcmQgTGF5b3V0IFZpc2liaWxpdHlcbi0gTG9va2luZyBHbGFzcyBTaXplXG4tIE5vdGlmaWNhdGlvbiBCYW5uZXIgUG9zaXRpb25cbi0gT1NEIFBvc2l0aW9uXG4tIE9TRCBWaXNpYmlsaXR5XG4tIFBhbmVsIEFycm93IFZpc2liaWxpdHkgKDMuMzYsIDMuMzgpXG4tIFBhbmVsIEJ1dHRvbiBQYWRkaW5nIFNpemVcbi0gUGFuZWwgSGVpZ2h0XG4tIFBhbmVsIGljb24gc2l6ZSBcbi0gUGFuZWwgSW5kaWNhdG9yIFBhZGRpbmcgU2l6ZVxuLSBQYW5lbCBOb3RpZmljYXRpb24gaWNvbiBWaXNpYmlsaXR5XG4tIFBhbmVsIFBvc2l0aW9uXG4tIFBhbmVsIFJvdW5kIENvcm5lciBTaXplICgzLjM2LCAzLjM4LCA0MCwgNDEpXG4tIFBhbmVsIFZpc2liaWxpdHlcbi0gUGFuZWwgVmlzaWJpbGl0eSBpbiBPdmVydmlld1xuLSBQb3dlciBJY29uIFZpc2liaWxpdHlcbi0gUXVpY2sgU2V0dGluZ3MgTWVudSBWaXNpYmlsaXR5ICg0Mylcbi0gUmlwcGxlIEJveFxuLSBTZWFyY2ggVmlzaWJpbGl0eVxuLSBTdGFydHVwIFN0YXR1cyg0MCwgNDEsIDQyKVxuLSBTeXN0ZW0gTWVudSAoQWdncmVnYXRlIE1lbnUpIFZpc2liaWxpdHkgKDMuMzYsIDMuMzgsIDQwLCA0MSwgNDIpXG4tIFRha2UgU2NyZWVuc2hvdCBCdXR0b24gaW4gV2luZG93IE1lbnUgVmlzaWJpbGl0eVxuLSBXZWF0aGVyIFZpc2liaWxpdHlcbi0gV2luZG93IERlbWFuZHMgQXR0ZW50aW9uIEZvY3VzXG4tIFdpbmRvdyBQaWNrZXIgQ2FwdGlvbiBWaXNpYmlsaXR5XG4tIFdpbmRvdyBQaWNrZXIgQ2xvc2UgQnV0dG9uIFZpc2liaWxpdHlcbi0gV2luZG93IFBpY2tlciBJY29uICg0MCwgNDEsIDQyKVxuLSBXb3Jrc3BhY2UgQmFja2dyb3VuZCBDb3JuZXIgU2l6ZSBpbiBPdmVydmlldyAoNDAsIDQxLCA0Milcbi0gV29ya3NwYWNlIFBvcHVwIFZpc2liaWxpdHlcbi0gV29ya3NwYWNlcyBpbiBhcHAgZ3JpZCBWaXNpYmlsaXR5ICg0MCwgNDEsIDQyKVxuLSBXb3Jrc3BhY2UgU3dpdGNoZXIgU2l6ZSAoNDAsIDQxLCA0Milcbi0gV29ya3NwYWNlIFN3aXRjaGVyIFZpc2liaWxpdHlcbi0gV29ya3NwYWNlIFdyYXBhcm91bmRcbi0gV29ybGQgQ2xvY2sgVmlzaWJpbGl0eSIsCiAgImdldHRleHQtZG9tYWluIjogImp1c3QtcGVyZmVjdGlvbiIsCiAgIm5hbWUiOiAiSnVzdCBQZXJmZWN0aW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmp1c3QtcGVyZmVjdGlvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9qcmFobWF0emFkZWgvanVzdC1wZXJmZWN0aW9uIiwKICAidXVpZCI6ICJqdXN0LXBlcmZlY3Rpb24tZGVza3RvcEBqdXN0LXBlcmZlY3Rpb24iLAogICJ2ZXJzaW9uIjogMjIKfQ=="}, "41": {"version": "22", "sha256": "12ak9dxmzrrlgc9zjf3j7i6dl3gfqp4n95pqwfwcmvhv7nk20v16", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrIFRvb2wgdG8gQ3VzdG9taXplIEdOT01FIFNoZWxsLCBDaGFuZ2UgdGhlIEJlaGF2aW9yIGFuZCBEaXNhYmxlIFVJIEVsZW1lbnRzXG5cbi0gQWNjZXNzaWJpbGl0eSBNZW51IFZpc2liaWxpdHlcbi0gQWN0aXZpdGllcyBCdXR0b24gSWNvbiBWaXNpYmlsaXR5XG4tIEFjdGl2aXRpZXMgYnV0dG9uIFZpc2liaWxpdHlcbi0gQWx0IFRhYiBJY29uIFNpemVcbi0gQWx0IFRhYiBXaW5kb3cgUHJldmlldyBJY29uIFNpemVcbi0gQWx0IFRhYiBXaW5kb3cgUHJldmlldyBTaXplXG4tIEFsd2F5cyBTaG93IFdvcmtzcGFjZSBTd2l0Y2hlciBvbiBEeW5hbWljIFdvcmtzcGFjZXMgKDQwLCA0MSwgNDIpXG4tIEFuaW1hdGlvbiBTcGVlZCBvciBEaXNhYmxlIGl0XG4tIEFwcCBHZXN0dXJlICgzLjM2LCAzLjM4KVxuLSBBcHBsaWNhdGlvbnMgQnV0dG9uIFZpc2liaWxpdHlcbi0gQXBwIE1lbnUgSWNvbiBWaXNpYmlsaXR5XG4tIEFwcCBNZW51IExhYmVsIFZpc2liaWxpdHlcbi0gQXBwIE1lbnUgVmlzaWJpbGl0eVxuLSBCYWNrZ3JvdW5kIE1lbnUgVmlzaWJpbGl0eVxuLSBDYWxlbmRhciBWaXNpYmlsaXR5XG4tIENsb2NrIE1lbnUgUG9zaXRpb25cbi0gQ2xvY2sgTWVudSBWaXNpYmlsaXR5XG4tIERhc2ggSWNvbiBTaXplXG4tIERhc2ggU2VwYXJhdG9yIFZpc2liaWxpdHkgKDQwLCA0MSwgNDIpXG4tIERhc2ggVmlzaWJpbGl0eVxuLSBEaXNhYmxlIFR5cGUgdG8gU2VhcmNoXG4tIERvdWJsZSBTdXBlciBLZXkgdG8gQXBwIEdyaWRcbi0gRXZlbnRzIGluIENsb2NrIE1lbnUgVmlzaWJpbGl0eVxuLSBHTk9NRSBTaGVsbCBUaGVtZSBPdmVycmlkZVxuLSBIb3QgQ29ybmVyICgzLjM2LCAzLjM4LCA0MClcbi0gS2V5Ym9hcmQgTGF5b3V0IFZpc2liaWxpdHlcbi0gTG9va2luZyBHbGFzcyBTaXplXG4tIE5vdGlmaWNhdGlvbiBCYW5uZXIgUG9zaXRpb25cbi0gT1NEIFBvc2l0aW9uXG4tIE9TRCBWaXNpYmlsaXR5XG4tIFBhbmVsIEFycm93IFZpc2liaWxpdHkgKDMuMzYsIDMuMzgpXG4tIFBhbmVsIEJ1dHRvbiBQYWRkaW5nIFNpemVcbi0gUGFuZWwgSGVpZ2h0XG4tIFBhbmVsIGljb24gc2l6ZSBcbi0gUGFuZWwgSW5kaWNhdG9yIFBhZGRpbmcgU2l6ZVxuLSBQYW5lbCBOb3RpZmljYXRpb24gaWNvbiBWaXNpYmlsaXR5XG4tIFBhbmVsIFBvc2l0aW9uXG4tIFBhbmVsIFJvdW5kIENvcm5lciBTaXplICgzLjM2LCAzLjM4LCA0MCwgNDEpXG4tIFBhbmVsIFZpc2liaWxpdHlcbi0gUGFuZWwgVmlzaWJpbGl0eSBpbiBPdmVydmlld1xuLSBQb3dlciBJY29uIFZpc2liaWxpdHlcbi0gUXVpY2sgU2V0dGluZ3MgTWVudSBWaXNpYmlsaXR5ICg0Mylcbi0gUmlwcGxlIEJveFxuLSBTZWFyY2ggVmlzaWJpbGl0eVxuLSBTdGFydHVwIFN0YXR1cyg0MCwgNDEsIDQyKVxuLSBTeXN0ZW0gTWVudSAoQWdncmVnYXRlIE1lbnUpIFZpc2liaWxpdHkgKDMuMzYsIDMuMzgsIDQwLCA0MSwgNDIpXG4tIFRha2UgU2NyZWVuc2hvdCBCdXR0b24gaW4gV2luZG93IE1lbnUgVmlzaWJpbGl0eVxuLSBXZWF0aGVyIFZpc2liaWxpdHlcbi0gV2luZG93IERlbWFuZHMgQXR0ZW50aW9uIEZvY3VzXG4tIFdpbmRvdyBQaWNrZXIgQ2FwdGlvbiBWaXNpYmlsaXR5XG4tIFdpbmRvdyBQaWNrZXIgQ2xvc2UgQnV0dG9uIFZpc2liaWxpdHlcbi0gV2luZG93IFBpY2tlciBJY29uICg0MCwgNDEsIDQyKVxuLSBXb3Jrc3BhY2UgQmFja2dyb3VuZCBDb3JuZXIgU2l6ZSBpbiBPdmVydmlldyAoNDAsIDQxLCA0Milcbi0gV29ya3NwYWNlIFBvcHVwIFZpc2liaWxpdHlcbi0gV29ya3NwYWNlcyBpbiBhcHAgZ3JpZCBWaXNpYmlsaXR5ICg0MCwgNDEsIDQyKVxuLSBXb3Jrc3BhY2UgU3dpdGNoZXIgU2l6ZSAoNDAsIDQxLCA0Milcbi0gV29ya3NwYWNlIFN3aXRjaGVyIFZpc2liaWxpdHlcbi0gV29ya3NwYWNlIFdyYXBhcm91bmRcbi0gV29ybGQgQ2xvY2sgVmlzaWJpbGl0eSIsCiAgImdldHRleHQtZG9tYWluIjogImp1c3QtcGVyZmVjdGlvbiIsCiAgIm5hbWUiOiAiSnVzdCBQZXJmZWN0aW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmp1c3QtcGVyZmVjdGlvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9qcmFobWF0emFkZWgvanVzdC1wZXJmZWN0aW9uIiwKICAidXVpZCI6ICJqdXN0LXBlcmZlY3Rpb24tZGVza3RvcEBqdXN0LXBlcmZlY3Rpb24iLAogICJ2ZXJzaW9uIjogMjIKfQ=="}, "42": {"version": "22", "sha256": "12ak9dxmzrrlgc9zjf3j7i6dl3gfqp4n95pqwfwcmvhv7nk20v16", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrIFRvb2wgdG8gQ3VzdG9taXplIEdOT01FIFNoZWxsLCBDaGFuZ2UgdGhlIEJlaGF2aW9yIGFuZCBEaXNhYmxlIFVJIEVsZW1lbnRzXG5cbi0gQWNjZXNzaWJpbGl0eSBNZW51IFZpc2liaWxpdHlcbi0gQWN0aXZpdGllcyBCdXR0b24gSWNvbiBWaXNpYmlsaXR5XG4tIEFjdGl2aXRpZXMgYnV0dG9uIFZpc2liaWxpdHlcbi0gQWx0IFRhYiBJY29uIFNpemVcbi0gQWx0IFRhYiBXaW5kb3cgUHJldmlldyBJY29uIFNpemVcbi0gQWx0IFRhYiBXaW5kb3cgUHJldmlldyBTaXplXG4tIEFsd2F5cyBTaG93IFdvcmtzcGFjZSBTd2l0Y2hlciBvbiBEeW5hbWljIFdvcmtzcGFjZXMgKDQwLCA0MSwgNDIpXG4tIEFuaW1hdGlvbiBTcGVlZCBvciBEaXNhYmxlIGl0XG4tIEFwcCBHZXN0dXJlICgzLjM2LCAzLjM4KVxuLSBBcHBsaWNhdGlvbnMgQnV0dG9uIFZpc2liaWxpdHlcbi0gQXBwIE1lbnUgSWNvbiBWaXNpYmlsaXR5XG4tIEFwcCBNZW51IExhYmVsIFZpc2liaWxpdHlcbi0gQXBwIE1lbnUgVmlzaWJpbGl0eVxuLSBCYWNrZ3JvdW5kIE1lbnUgVmlzaWJpbGl0eVxuLSBDYWxlbmRhciBWaXNpYmlsaXR5XG4tIENsb2NrIE1lbnUgUG9zaXRpb25cbi0gQ2xvY2sgTWVudSBWaXNpYmlsaXR5XG4tIERhc2ggSWNvbiBTaXplXG4tIERhc2ggU2VwYXJhdG9yIFZpc2liaWxpdHkgKDQwLCA0MSwgNDIpXG4tIERhc2ggVmlzaWJpbGl0eVxuLSBEaXNhYmxlIFR5cGUgdG8gU2VhcmNoXG4tIERvdWJsZSBTdXBlciBLZXkgdG8gQXBwIEdyaWRcbi0gRXZlbnRzIGluIENsb2NrIE1lbnUgVmlzaWJpbGl0eVxuLSBHTk9NRSBTaGVsbCBUaGVtZSBPdmVycmlkZVxuLSBIb3QgQ29ybmVyICgzLjM2LCAzLjM4LCA0MClcbi0gS2V5Ym9hcmQgTGF5b3V0IFZpc2liaWxpdHlcbi0gTG9va2luZyBHbGFzcyBTaXplXG4tIE5vdGlmaWNhdGlvbiBCYW5uZXIgUG9zaXRpb25cbi0gT1NEIFBvc2l0aW9uXG4tIE9TRCBWaXNpYmlsaXR5XG4tIFBhbmVsIEFycm93IFZpc2liaWxpdHkgKDMuMzYsIDMuMzgpXG4tIFBhbmVsIEJ1dHRvbiBQYWRkaW5nIFNpemVcbi0gUGFuZWwgSGVpZ2h0XG4tIFBhbmVsIGljb24gc2l6ZSBcbi0gUGFuZWwgSW5kaWNhdG9yIFBhZGRpbmcgU2l6ZVxuLSBQYW5lbCBOb3RpZmljYXRpb24gaWNvbiBWaXNpYmlsaXR5XG4tIFBhbmVsIFBvc2l0aW9uXG4tIFBhbmVsIFJvdW5kIENvcm5lciBTaXplICgzLjM2LCAzLjM4LCA0MCwgNDEpXG4tIFBhbmVsIFZpc2liaWxpdHlcbi0gUGFuZWwgVmlzaWJpbGl0eSBpbiBPdmVydmlld1xuLSBQb3dlciBJY29uIFZpc2liaWxpdHlcbi0gUXVpY2sgU2V0dGluZ3MgTWVudSBWaXNpYmlsaXR5ICg0Mylcbi0gUmlwcGxlIEJveFxuLSBTZWFyY2ggVmlzaWJpbGl0eVxuLSBTdGFydHVwIFN0YXR1cyg0MCwgNDEsIDQyKVxuLSBTeXN0ZW0gTWVudSAoQWdncmVnYXRlIE1lbnUpIFZpc2liaWxpdHkgKDMuMzYsIDMuMzgsIDQwLCA0MSwgNDIpXG4tIFRha2UgU2NyZWVuc2hvdCBCdXR0b24gaW4gV2luZG93IE1lbnUgVmlzaWJpbGl0eVxuLSBXZWF0aGVyIFZpc2liaWxpdHlcbi0gV2luZG93IERlbWFuZHMgQXR0ZW50aW9uIEZvY3VzXG4tIFdpbmRvdyBQaWNrZXIgQ2FwdGlvbiBWaXNpYmlsaXR5XG4tIFdpbmRvdyBQaWNrZXIgQ2xvc2UgQnV0dG9uIFZpc2liaWxpdHlcbi0gV2luZG93IFBpY2tlciBJY29uICg0MCwgNDEsIDQyKVxuLSBXb3Jrc3BhY2UgQmFja2dyb3VuZCBDb3JuZXIgU2l6ZSBpbiBPdmVydmlldyAoNDAsIDQxLCA0Milcbi0gV29ya3NwYWNlIFBvcHVwIFZpc2liaWxpdHlcbi0gV29ya3NwYWNlcyBpbiBhcHAgZ3JpZCBWaXNpYmlsaXR5ICg0MCwgNDEsIDQyKVxuLSBXb3Jrc3BhY2UgU3dpdGNoZXIgU2l6ZSAoNDAsIDQxLCA0Milcbi0gV29ya3NwYWNlIFN3aXRjaGVyIFZpc2liaWxpdHlcbi0gV29ya3NwYWNlIFdyYXBhcm91bmRcbi0gV29ybGQgQ2xvY2sgVmlzaWJpbGl0eSIsCiAgImdldHRleHQtZG9tYWluIjogImp1c3QtcGVyZmVjdGlvbiIsCiAgIm5hbWUiOiAiSnVzdCBQZXJmZWN0aW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmp1c3QtcGVyZmVjdGlvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9qcmFobWF0emFkZWgvanVzdC1wZXJmZWN0aW9uIiwKICAidXVpZCI6ICJqdXN0LXBlcmZlY3Rpb24tZGVza3RvcEBqdXN0LXBlcmZlY3Rpb24iLAogICJ2ZXJzaW9uIjogMjIKfQ=="}, "43": {"version": "22", "sha256": "12ak9dxmzrrlgc9zjf3j7i6dl3gfqp4n95pqwfwcmvhv7nk20v16", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrIFRvb2wgdG8gQ3VzdG9taXplIEdOT01FIFNoZWxsLCBDaGFuZ2UgdGhlIEJlaGF2aW9yIGFuZCBEaXNhYmxlIFVJIEVsZW1lbnRzXG5cbi0gQWNjZXNzaWJpbGl0eSBNZW51IFZpc2liaWxpdHlcbi0gQWN0aXZpdGllcyBCdXR0b24gSWNvbiBWaXNpYmlsaXR5XG4tIEFjdGl2aXRpZXMgYnV0dG9uIFZpc2liaWxpdHlcbi0gQWx0IFRhYiBJY29uIFNpemVcbi0gQWx0IFRhYiBXaW5kb3cgUHJldmlldyBJY29uIFNpemVcbi0gQWx0IFRhYiBXaW5kb3cgUHJldmlldyBTaXplXG4tIEFsd2F5cyBTaG93IFdvcmtzcGFjZSBTd2l0Y2hlciBvbiBEeW5hbWljIFdvcmtzcGFjZXMgKDQwLCA0MSwgNDIpXG4tIEFuaW1hdGlvbiBTcGVlZCBvciBEaXNhYmxlIGl0XG4tIEFwcCBHZXN0dXJlICgzLjM2LCAzLjM4KVxuLSBBcHBsaWNhdGlvbnMgQnV0dG9uIFZpc2liaWxpdHlcbi0gQXBwIE1lbnUgSWNvbiBWaXNpYmlsaXR5XG4tIEFwcCBNZW51IExhYmVsIFZpc2liaWxpdHlcbi0gQXBwIE1lbnUgVmlzaWJpbGl0eVxuLSBCYWNrZ3JvdW5kIE1lbnUgVmlzaWJpbGl0eVxuLSBDYWxlbmRhciBWaXNpYmlsaXR5XG4tIENsb2NrIE1lbnUgUG9zaXRpb25cbi0gQ2xvY2sgTWVudSBWaXNpYmlsaXR5XG4tIERhc2ggSWNvbiBTaXplXG4tIERhc2ggU2VwYXJhdG9yIFZpc2liaWxpdHkgKDQwLCA0MSwgNDIpXG4tIERhc2ggVmlzaWJpbGl0eVxuLSBEaXNhYmxlIFR5cGUgdG8gU2VhcmNoXG4tIERvdWJsZSBTdXBlciBLZXkgdG8gQXBwIEdyaWRcbi0gRXZlbnRzIGluIENsb2NrIE1lbnUgVmlzaWJpbGl0eVxuLSBHTk9NRSBTaGVsbCBUaGVtZSBPdmVycmlkZVxuLSBIb3QgQ29ybmVyICgzLjM2LCAzLjM4LCA0MClcbi0gS2V5Ym9hcmQgTGF5b3V0IFZpc2liaWxpdHlcbi0gTG9va2luZyBHbGFzcyBTaXplXG4tIE5vdGlmaWNhdGlvbiBCYW5uZXIgUG9zaXRpb25cbi0gT1NEIFBvc2l0aW9uXG4tIE9TRCBWaXNpYmlsaXR5XG4tIFBhbmVsIEFycm93IFZpc2liaWxpdHkgKDMuMzYsIDMuMzgpXG4tIFBhbmVsIEJ1dHRvbiBQYWRkaW5nIFNpemVcbi0gUGFuZWwgSGVpZ2h0XG4tIFBhbmVsIGljb24gc2l6ZSBcbi0gUGFuZWwgSW5kaWNhdG9yIFBhZGRpbmcgU2l6ZVxuLSBQYW5lbCBOb3RpZmljYXRpb24gaWNvbiBWaXNpYmlsaXR5XG4tIFBhbmVsIFBvc2l0aW9uXG4tIFBhbmVsIFJvdW5kIENvcm5lciBTaXplICgzLjM2LCAzLjM4LCA0MCwgNDEpXG4tIFBhbmVsIFZpc2liaWxpdHlcbi0gUGFuZWwgVmlzaWJpbGl0eSBpbiBPdmVydmlld1xuLSBQb3dlciBJY29uIFZpc2liaWxpdHlcbi0gUXVpY2sgU2V0dGluZ3MgTWVudSBWaXNpYmlsaXR5ICg0Mylcbi0gUmlwcGxlIEJveFxuLSBTZWFyY2ggVmlzaWJpbGl0eVxuLSBTdGFydHVwIFN0YXR1cyg0MCwgNDEsIDQyKVxuLSBTeXN0ZW0gTWVudSAoQWdncmVnYXRlIE1lbnUpIFZpc2liaWxpdHkgKDMuMzYsIDMuMzgsIDQwLCA0MSwgNDIpXG4tIFRha2UgU2NyZWVuc2hvdCBCdXR0b24gaW4gV2luZG93IE1lbnUgVmlzaWJpbGl0eVxuLSBXZWF0aGVyIFZpc2liaWxpdHlcbi0gV2luZG93IERlbWFuZHMgQXR0ZW50aW9uIEZvY3VzXG4tIFdpbmRvdyBQaWNrZXIgQ2FwdGlvbiBWaXNpYmlsaXR5XG4tIFdpbmRvdyBQaWNrZXIgQ2xvc2UgQnV0dG9uIFZpc2liaWxpdHlcbi0gV2luZG93IFBpY2tlciBJY29uICg0MCwgNDEsIDQyKVxuLSBXb3Jrc3BhY2UgQmFja2dyb3VuZCBDb3JuZXIgU2l6ZSBpbiBPdmVydmlldyAoNDAsIDQxLCA0Milcbi0gV29ya3NwYWNlIFBvcHVwIFZpc2liaWxpdHlcbi0gV29ya3NwYWNlcyBpbiBhcHAgZ3JpZCBWaXNpYmlsaXR5ICg0MCwgNDEsIDQyKVxuLSBXb3Jrc3BhY2UgU3dpdGNoZXIgU2l6ZSAoNDAsIDQxLCA0Milcbi0gV29ya3NwYWNlIFN3aXRjaGVyIFZpc2liaWxpdHlcbi0gV29ya3NwYWNlIFdyYXBhcm91bmRcbi0gV29ybGQgQ2xvY2sgVmlzaWJpbGl0eSIsCiAgImdldHRleHQtZG9tYWluIjogImp1c3QtcGVyZmVjdGlvbiIsCiAgIm5hbWUiOiAiSnVzdCBQZXJmZWN0aW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmp1c3QtcGVyZmVjdGlvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9qcmFobWF0emFkZWgvanVzdC1wZXJmZWN0aW9uIiwKICAidXVpZCI6ICJqdXN0LXBlcmZlY3Rpb24tZGVza3RvcEBqdXN0LXBlcmZlY3Rpb24iLAogICJ2ZXJzaW9uIjogMjIKfQ=="}}}
 , {"uuid": "workspaces-bar@fthx", "name": "Workspaces Bar", "pname": "workspaces-bar", "description": "Replace 'Activities' button by all current workspaces buttons. Switch workspace or toggle overview by clicking on these buttons.\n\n You can use names for workspaces: there are two ways for that. 1) Edit the string array 'org.gnome.desktop.wm.preferences.workspace-names' gsettings key (through dconf editor, e.g.). 2) Use official GNOME extension Workspaces Indicator's settings. You don't have to write a long enough list: numbers are displayed if no workspace name is defined.", "link": "https://extensions.gnome.org/extension/3851/workspaces-bar/", "shell_version_map": {"38": {"version": "13", "sha256": "1pmbdzm5ingnqx1i6hd7br14fcmyss6nyrclq74ld5zbpzgy6sih", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgJ0FjdGl2aXRpZXMnIGJ1dHRvbiBieSBhbGwgY3VycmVudCB3b3Jrc3BhY2VzIGJ1dHRvbnMuIFN3aXRjaCB3b3Jrc3BhY2Ugb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuIiwKICAibmFtZSI6ICJXb3Jrc3BhY2VzIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvd29ya3NwYWNlcy1iYXIiLAogICJ1dWlkIjogIndvcmtzcGFjZXMtYmFyQGZ0aHgiLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "40": {"version": "13", "sha256": "1pmbdzm5ingnqx1i6hd7br14fcmyss6nyrclq74ld5zbpzgy6sih", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgJ0FjdGl2aXRpZXMnIGJ1dHRvbiBieSBhbGwgY3VycmVudCB3b3Jrc3BhY2VzIGJ1dHRvbnMuIFN3aXRjaCB3b3Jrc3BhY2Ugb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuIiwKICAibmFtZSI6ICJXb3Jrc3BhY2VzIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvd29ya3NwYWNlcy1iYXIiLAogICJ1dWlkIjogIndvcmtzcGFjZXMtYmFyQGZ0aHgiLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "41": {"version": "13", "sha256": "1pmbdzm5ingnqx1i6hd7br14fcmyss6nyrclq74ld5zbpzgy6sih", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgJ0FjdGl2aXRpZXMnIGJ1dHRvbiBieSBhbGwgY3VycmVudCB3b3Jrc3BhY2VzIGJ1dHRvbnMuIFN3aXRjaCB3b3Jrc3BhY2Ugb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuIiwKICAibmFtZSI6ICJXb3Jrc3BhY2VzIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvd29ya3NwYWNlcy1iYXIiLAogICJ1dWlkIjogIndvcmtzcGFjZXMtYmFyQGZ0aHgiLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "42": {"version": "13", "sha256": "1pmbdzm5ingnqx1i6hd7br14fcmyss6nyrclq74ld5zbpzgy6sih", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgJ0FjdGl2aXRpZXMnIGJ1dHRvbiBieSBhbGwgY3VycmVudCB3b3Jrc3BhY2VzIGJ1dHRvbnMuIFN3aXRjaCB3b3Jrc3BhY2Ugb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuIiwKICAibmFtZSI6ICJXb3Jrc3BhY2VzIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvd29ya3NwYWNlcy1iYXIiLAogICJ1dWlkIjogIndvcmtzcGFjZXMtYmFyQGZ0aHgiLAogICJ2ZXJzaW9uIjogMTMKfQ=="}}}
 , {"uuid": "scanlines-effect@muratcileli.com", "name": "Scanlines Effect", "pname": "scanlines-effect", "description": "Retro monitor / CRT TV effect.", "link": "https://extensions.gnome.org/extension/3860/scanlines-effect/", "shell_version_map": {"38": {"version": "1", "sha256": "1xcsd700s9hkqmrqlv56ldiya2jk0d46j8k4a4i3m9c6k40c5z7v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJldHJvIG1vbml0b3IgLyBDUlQgVFYgZWZmZWN0LiIsCiAgIm5hbWUiOiAiU2NhbmxpbmVzIEVmZmVjdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJjb20ubXVyYXRjaWxlbGkuc2NhbmxpbmVzLWVmZmVjdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL211cmF0LWNpbGVsaS9nbm9tZS1zaGVsbC1leHRlbnNpb24tc2NhbmxpbmVzLWVmZmVjdCIsCiAgInV1aWQiOiAic2NhbmxpbmVzLWVmZmVjdEBtdXJhdGNpbGVsaS5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}}}
@@ -424,7 +424,7 @@
 , {"uuid": "toggle-alacritty@itstime.tech", "name": "Toggle Alacritty", "pname": "toggle-alacritty", "description": "Toggles Alacritty window via hotkey: Alt+z\n\nIf Alacritty is not launched, attempts to start it (/usr/bin/alacritty)\n\nWorks under both Wayland and X11\n\nTo change hotkey please follow instruction in the README.md:", "link": "https://extensions.gnome.org/extension/3942/toggle-alacritty/", "shell_version_map": {"38": {"version": "4", "sha256": "1kz5a8x9fpvilcd4p9pn6cmsj6gvq44cg85yhkgdi9x2qpd52fn1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZXMgQWxhY3JpdHR5IHdpbmRvdyB2aWEgaG90a2V5OiBBbHQrelxuXG5JZiBBbGFjcml0dHkgaXMgbm90IGxhdW5jaGVkLCBhdHRlbXB0cyB0byBzdGFydCBpdCAoL3Vzci9iaW4vYWxhY3JpdHR5KVxuXG5Xb3JrcyB1bmRlciBib3RoIFdheWxhbmQgYW5kIFgxMVxuXG5UbyBjaGFuZ2UgaG90a2V5IHBsZWFzZSBmb2xsb3cgaW5zdHJ1Y3Rpb24gaW4gdGhlIFJFQURNRS5tZDoiLAogICJuYW1lIjogIlRvZ2dsZSBBbGFjcml0dHkiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudG9nZ2xlLWFsYWNyaXR0eSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXh4YXB5L2dub21lLWFsYWNyaXR0eS10b2dnbGUiLAogICJ1dWlkIjogInRvZ2dsZS1hbGFjcml0dHlAaXRzdGltZS50ZWNoIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "4", "sha256": "1kz5a8x9fpvilcd4p9pn6cmsj6gvq44cg85yhkgdi9x2qpd52fn1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZXMgQWxhY3JpdHR5IHdpbmRvdyB2aWEgaG90a2V5OiBBbHQrelxuXG5JZiBBbGFjcml0dHkgaXMgbm90IGxhdW5jaGVkLCBhdHRlbXB0cyB0byBzdGFydCBpdCAoL3Vzci9iaW4vYWxhY3JpdHR5KVxuXG5Xb3JrcyB1bmRlciBib3RoIFdheWxhbmQgYW5kIFgxMVxuXG5UbyBjaGFuZ2UgaG90a2V5IHBsZWFzZSBmb2xsb3cgaW5zdHJ1Y3Rpb24gaW4gdGhlIFJFQURNRS5tZDoiLAogICJuYW1lIjogIlRvZ2dsZSBBbGFjcml0dHkiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudG9nZ2xlLWFsYWNyaXR0eSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXh4YXB5L2dub21lLWFsYWNyaXR0eS10b2dnbGUiLAogICJ1dWlkIjogInRvZ2dsZS1hbGFjcml0dHlAaXRzdGltZS50ZWNoIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "1kz5a8x9fpvilcd4p9pn6cmsj6gvq44cg85yhkgdi9x2qpd52fn1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZXMgQWxhY3JpdHR5IHdpbmRvdyB2aWEgaG90a2V5OiBBbHQrelxuXG5JZiBBbGFjcml0dHkgaXMgbm90IGxhdW5jaGVkLCBhdHRlbXB0cyB0byBzdGFydCBpdCAoL3Vzci9iaW4vYWxhY3JpdHR5KVxuXG5Xb3JrcyB1bmRlciBib3RoIFdheWxhbmQgYW5kIFgxMVxuXG5UbyBjaGFuZ2UgaG90a2V5IHBsZWFzZSBmb2xsb3cgaW5zdHJ1Y3Rpb24gaW4gdGhlIFJFQURNRS5tZDoiLAogICJuYW1lIjogIlRvZ2dsZSBBbGFjcml0dHkiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudG9nZ2xlLWFsYWNyaXR0eSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXh4YXB5L2dub21lLWFsYWNyaXR0eS10b2dnbGUiLAogICJ1dWlkIjogInRvZ2dsZS1hbGFjcml0dHlAaXRzdGltZS50ZWNoIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "hide-panel@fthx", "name": "Hide Panel", "pname": "hide-panel", "description": "Hide top panel except in overview. Switch button in panel.\n\nVery very light extension. There is a 1 pixel wide line at the top of the screen that allows to blindly use the panel menus. This is needed to keep the native hot corner active without having to recreate it.", "link": "https://extensions.gnome.org/extension/3948/hide-panel/", "shell_version_map": {"38": {"version": "8", "sha256": "0nrj0kxfdxx7nmw0zai070ca5lv5r43bpgm2binv31xjyh385849", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdG9wIHBhbmVsIGV4Y2VwdCBpbiBvdmVydmlldy4gU3dpdGNoIGJ1dHRvbiBpbiBwYW5lbC5cblxuVmVyeSB2ZXJ5IGxpZ2h0IGV4dGVuc2lvbi4gVGhlcmUgaXMgYSAxIHBpeGVsIHdpZGUgbGluZSBhdCB0aGUgdG9wIG9mIHRoZSBzY3JlZW4gdGhhdCBhbGxvd3MgdG8gYmxpbmRseSB1c2UgdGhlIHBhbmVsIG1lbnVzLiBUaGlzIGlzIG5lZWRlZCB0byBrZWVwIHRoZSBuYXRpdmUgaG90IGNvcm5lciBhY3RpdmUgd2l0aG91dCBoYXZpbmcgdG8gcmVjcmVhdGUgaXQuIiwKICAibmFtZSI6ICJIaWRlIFBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvaGlkZS1wYW5lbCIsCiAgInV1aWQiOiAiaGlkZS1wYW5lbEBmdGh4IiwKICAidmVyc2lvbiI6IDgKfQ=="}, "40": {"version": "8", "sha256": "0nrj0kxfdxx7nmw0zai070ca5lv5r43bpgm2binv31xjyh385849", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdG9wIHBhbmVsIGV4Y2VwdCBpbiBvdmVydmlldy4gU3dpdGNoIGJ1dHRvbiBpbiBwYW5lbC5cblxuVmVyeSB2ZXJ5IGxpZ2h0IGV4dGVuc2lvbi4gVGhlcmUgaXMgYSAxIHBpeGVsIHdpZGUgbGluZSBhdCB0aGUgdG9wIG9mIHRoZSBzY3JlZW4gdGhhdCBhbGxvd3MgdG8gYmxpbmRseSB1c2UgdGhlIHBhbmVsIG1lbnVzLiBUaGlzIGlzIG5lZWRlZCB0byBrZWVwIHRoZSBuYXRpdmUgaG90IGNvcm5lciBhY3RpdmUgd2l0aG91dCBoYXZpbmcgdG8gcmVjcmVhdGUgaXQuIiwKICAibmFtZSI6ICJIaWRlIFBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvaGlkZS1wYW5lbCIsCiAgInV1aWQiOiAiaGlkZS1wYW5lbEBmdGh4IiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
 , {"uuid": "persistent-email-notifications@fthx", "name": "Persistent Email Notifications", "pname": "persistent-email-notifications", "description": "Never hide a new mail notification, except if you close it.\n\nVery very light extension. Email clients supported: Thunderbird, Evolution, Geary, Mailspring, TypeApp, BlueMail. Please ask for another email client if needed.", "link": "https://extensions.gnome.org/extension/3951/persistent-email-notifications/", "shell_version_map": {"38": {"version": "3", "sha256": "06m6fhs50vlrwkgdk6cvkcl5f155a1w8szs1g9pzryf8mmldgmdd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldmVyIGhpZGUgYSBuZXcgbWFpbCBub3RpZmljYXRpb24sIGV4Y2VwdCBpZiB5b3UgY2xvc2UgaXQuXG5cblZlcnkgdmVyeSBsaWdodCBleHRlbnNpb24uIEVtYWlsIGNsaWVudHMgc3VwcG9ydGVkOiBUaHVuZGVyYmlyZCwgRXZvbHV0aW9uLCBHZWFyeSwgTWFpbHNwcmluZywgVHlwZUFwcCwgQmx1ZU1haWwuIFBsZWFzZSBhc2sgZm9yIGFub3RoZXIgZW1haWwgY2xpZW50IGlmIG5lZWRlZC4iLAogICJuYW1lIjogIlBlcnNpc3RlbnQgRW1haWwgTm90aWZpY2F0aW9ucyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L3BlcnNpc3RlbnQtZW1haWwtbm90aWZpY2F0aW9ucyIsCiAgInV1aWQiOiAicGVyc2lzdGVudC1lbWFpbC1ub3RpZmljYXRpb25zQGZ0aHgiLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "3", "sha256": "06m6fhs50vlrwkgdk6cvkcl5f155a1w8szs1g9pzryf8mmldgmdd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldmVyIGhpZGUgYSBuZXcgbWFpbCBub3RpZmljYXRpb24sIGV4Y2VwdCBpZiB5b3UgY2xvc2UgaXQuXG5cblZlcnkgdmVyeSBsaWdodCBleHRlbnNpb24uIEVtYWlsIGNsaWVudHMgc3VwcG9ydGVkOiBUaHVuZGVyYmlyZCwgRXZvbHV0aW9uLCBHZWFyeSwgTWFpbHNwcmluZywgVHlwZUFwcCwgQmx1ZU1haWwuIFBsZWFzZSBhc2sgZm9yIGFub3RoZXIgZW1haWwgY2xpZW50IGlmIG5lZWRlZC4iLAogICJuYW1lIjogIlBlcnNpc3RlbnQgRW1haWwgTm90aWZpY2F0aW9ucyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L3BlcnNpc3RlbnQtZW1haWwtbm90aWZpY2F0aW9ucyIsCiAgInV1aWQiOiAicGVyc2lzdGVudC1lbWFpbC1ub3RpZmljYXRpb25zQGZ0aHgiLAogICJ2ZXJzaW9uIjogMwp9"}}}
-, {"uuid": "horizontal-workspace-indicator@tty2.io", "name": "Workspace indicator", "pname": "workspace-indicator", "description": "Workspace indicator shows the amount of opened workspaces and highlights the current one using unicode characters.\n\nYou can use it as an indicator only but widget is clickable. Left button click: move to left, right click: move right. Middle click calls overview.\n\nIf your indicator looks different from one on screen shot, install DejaVu Serif or Ubuntu font.", "link": "https://extensions.gnome.org/extension/3952/workspace-indicator/", "shell_version_map": {"38": {"version": "9", "sha256": "0phd62k87dq9jzxz4ybfw75s54mrzcfjni7d27gv5j92y2ymlhs5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0b3Igc2hvd3MgdGhlIGFtb3VudCBvZiBvcGVuZWQgd29ya3NwYWNlcyBhbmQgaGlnaGxpZ2h0cyB0aGUgY3VycmVudCBvbmUgdXNpbmcgdW5pY29kZSBjaGFyYWN0ZXJzLlxuXG5Zb3UgY2FuIHVzZSBpdCBhcyBhbiBpbmRpY2F0b3Igb25seSBidXQgd2lkZ2V0IGlzIGNsaWNrYWJsZS4gTGVmdCBidXR0b24gY2xpY2s6IG1vdmUgdG8gbGVmdCwgcmlnaHQgY2xpY2s6IG1vdmUgcmlnaHQuIE1pZGRsZSBjbGljayBjYWxscyBvdmVydmlldy5cblxuSWYgeW91ciBpbmRpY2F0b3IgbG9va3MgZGlmZmVyZW50IGZyb20gb25lIG9uIHNjcmVlbiBzaG90LCBpbnN0YWxsIERlamFWdSBTZXJpZiBvciBVYnVudHUgZm9udC4iLAogICJuYW1lIjogIldvcmtzcGFjZSBpbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R0eTIvaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJob3Jpem9udGFsLXdvcmtzcGFjZS1pbmRpY2F0b3JAdHR5Mi5pbyIsCiAgInZlcnNpb24iOiA5Cn0="}, "40": {"version": "15", "sha256": "0k95r0q5lj3sr21cfcmd0rw7nhj9pbhmk8cc00n8xzdnmpn7m72y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0b3Igc2hvd3MgdGhlIGFtb3VudCBvZiBvcGVuZWQgd29ya3NwYWNlcyBhbmQgaGlnaGxpZ2h0cyB0aGUgY3VycmVudCBvbmUgdXNpbmcgdW5pY29kZSBjaGFyYWN0ZXJzLlxuXG5Zb3UgY2FuIHVzZSBpdCBhcyBhbiBpbmRpY2F0b3Igb25seSBidXQgd2lkZ2V0IGlzIGNsaWNrYWJsZS4gTGVmdCBidXR0b24gY2xpY2s6IG1vdmUgdG8gbGVmdCwgcmlnaHQgY2xpY2s6IG1vdmUgcmlnaHQuIE1pZGRsZSBjbGljayBjYWxscyBvdmVydmlldy5cblxuSWYgeW91ciBpbmRpY2F0b3IgbG9va3MgZGlmZmVyZW50IGZyb20gb25lIG9uIHNjcmVlbiBzaG90LCBpbnN0YWxsIERlamFWdSBTZXJpZiBvciBVYnVudHUgZm9udC4iLAogICJuYW1lIjogIldvcmtzcGFjZSBpbmRpY2F0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R0eTIvaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJob3Jpem9udGFsLXdvcmtzcGFjZS1pbmRpY2F0b3JAdHR5Mi5pbyIsCiAgInZlcnNpb24iOiAxNQp9"}, "41": {"version": "15", "sha256": "0k95r0q5lj3sr21cfcmd0rw7nhj9pbhmk8cc00n8xzdnmpn7m72y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0b3Igc2hvd3MgdGhlIGFtb3VudCBvZiBvcGVuZWQgd29ya3NwYWNlcyBhbmQgaGlnaGxpZ2h0cyB0aGUgY3VycmVudCBvbmUgdXNpbmcgdW5pY29kZSBjaGFyYWN0ZXJzLlxuXG5Zb3UgY2FuIHVzZSBpdCBhcyBhbiBpbmRpY2F0b3Igb25seSBidXQgd2lkZ2V0IGlzIGNsaWNrYWJsZS4gTGVmdCBidXR0b24gY2xpY2s6IG1vdmUgdG8gbGVmdCwgcmlnaHQgY2xpY2s6IG1vdmUgcmlnaHQuIE1pZGRsZSBjbGljayBjYWxscyBvdmVydmlldy5cblxuSWYgeW91ciBpbmRpY2F0b3IgbG9va3MgZGlmZmVyZW50IGZyb20gb25lIG9uIHNjcmVlbiBzaG90LCBpbnN0YWxsIERlamFWdSBTZXJpZiBvciBVYnVudHUgZm9udC4iLAogICJuYW1lIjogIldvcmtzcGFjZSBpbmRpY2F0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R0eTIvaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJob3Jpem9udGFsLXdvcmtzcGFjZS1pbmRpY2F0b3JAdHR5Mi5pbyIsCiAgInZlcnNpb24iOiAxNQp9"}, "42": {"version": "15", "sha256": "0k95r0q5lj3sr21cfcmd0rw7nhj9pbhmk8cc00n8xzdnmpn7m72y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0b3Igc2hvd3MgdGhlIGFtb3VudCBvZiBvcGVuZWQgd29ya3NwYWNlcyBhbmQgaGlnaGxpZ2h0cyB0aGUgY3VycmVudCBvbmUgdXNpbmcgdW5pY29kZSBjaGFyYWN0ZXJzLlxuXG5Zb3UgY2FuIHVzZSBpdCBhcyBhbiBpbmRpY2F0b3Igb25seSBidXQgd2lkZ2V0IGlzIGNsaWNrYWJsZS4gTGVmdCBidXR0b24gY2xpY2s6IG1vdmUgdG8gbGVmdCwgcmlnaHQgY2xpY2s6IG1vdmUgcmlnaHQuIE1pZGRsZSBjbGljayBjYWxscyBvdmVydmlldy5cblxuSWYgeW91ciBpbmRpY2F0b3IgbG9va3MgZGlmZmVyZW50IGZyb20gb25lIG9uIHNjcmVlbiBzaG90LCBpbnN0YWxsIERlamFWdSBTZXJpZiBvciBVYnVudHUgZm9udC4iLAogICJuYW1lIjogIldvcmtzcGFjZSBpbmRpY2F0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R0eTIvaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJob3Jpem9udGFsLXdvcmtzcGFjZS1pbmRpY2F0b3JAdHR5Mi5pbyIsCiAgInZlcnNpb24iOiAxNQp9"}, "43": {"version": "15", "sha256": "0k95r0q5lj3sr21cfcmd0rw7nhj9pbhmk8cc00n8xzdnmpn7m72y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0b3Igc2hvd3MgdGhlIGFtb3VudCBvZiBvcGVuZWQgd29ya3NwYWNlcyBhbmQgaGlnaGxpZ2h0cyB0aGUgY3VycmVudCBvbmUgdXNpbmcgdW5pY29kZSBjaGFyYWN0ZXJzLlxuXG5Zb3UgY2FuIHVzZSBpdCBhcyBhbiBpbmRpY2F0b3Igb25seSBidXQgd2lkZ2V0IGlzIGNsaWNrYWJsZS4gTGVmdCBidXR0b24gY2xpY2s6IG1vdmUgdG8gbGVmdCwgcmlnaHQgY2xpY2s6IG1vdmUgcmlnaHQuIE1pZGRsZSBjbGljayBjYWxscyBvdmVydmlldy5cblxuSWYgeW91ciBpbmRpY2F0b3IgbG9va3MgZGlmZmVyZW50IGZyb20gb25lIG9uIHNjcmVlbiBzaG90LCBpbnN0YWxsIERlamFWdSBTZXJpZiBvciBVYnVudHUgZm9udC4iLAogICJuYW1lIjogIldvcmtzcGFjZSBpbmRpY2F0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R0eTIvaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJob3Jpem9udGFsLXdvcmtzcGFjZS1pbmRpY2F0b3JAdHR5Mi5pbyIsCiAgInZlcnNpb24iOiAxNQp9"}}}
+, {"uuid": "horizontal-workspace-indicator@tty2.io", "name": "Workspace indicator", "pname": "workspace-indicator", "description": "Workspace indicator shows the amount of opened workspaces and highlights the current one using unicode characters.\n\nYou can use it as an indicator only but widget is clickable. Left button click: move to left, right click: move right. Middle click calls overview.\n\nIf your indicator looks different from one on screen shot, install DejaVu Serif or Ubuntu font.", "link": "https://extensions.gnome.org/extension/3952/workspace-indicator/", "shell_version_map": {"38": {"version": "9", "sha256": "0phd62k87dq9jzxz4ybfw75s54mrzcfjni7d27gv5j92y2ymlhs5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0b3Igc2hvd3MgdGhlIGFtb3VudCBvZiBvcGVuZWQgd29ya3NwYWNlcyBhbmQgaGlnaGxpZ2h0cyB0aGUgY3VycmVudCBvbmUgdXNpbmcgdW5pY29kZSBjaGFyYWN0ZXJzLlxuXG5Zb3UgY2FuIHVzZSBpdCBhcyBhbiBpbmRpY2F0b3Igb25seSBidXQgd2lkZ2V0IGlzIGNsaWNrYWJsZS4gTGVmdCBidXR0b24gY2xpY2s6IG1vdmUgdG8gbGVmdCwgcmlnaHQgY2xpY2s6IG1vdmUgcmlnaHQuIE1pZGRsZSBjbGljayBjYWxscyBvdmVydmlldy5cblxuSWYgeW91ciBpbmRpY2F0b3IgbG9va3MgZGlmZmVyZW50IGZyb20gb25lIG9uIHNjcmVlbiBzaG90LCBpbnN0YWxsIERlamFWdSBTZXJpZiBvciBVYnVudHUgZm9udC4iLAogICJuYW1lIjogIldvcmtzcGFjZSBpbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R0eTIvaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJob3Jpem9udGFsLXdvcmtzcGFjZS1pbmRpY2F0b3JAdHR5Mi5pbyIsCiAgInZlcnNpb24iOiA5Cn0="}, "40": {"version": "16", "sha256": "1vvnwbc2pl616ksprlwqx5ggkcm2i3gc8i5g0z7n3ahkl3hy5w3a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0b3Igc2hvd3MgdGhlIGFtb3VudCBvZiBvcGVuZWQgd29ya3NwYWNlcyBhbmQgaGlnaGxpZ2h0cyB0aGUgY3VycmVudCBvbmUgdXNpbmcgdW5pY29kZSBjaGFyYWN0ZXJzLlxuXG5Zb3UgY2FuIHVzZSBpdCBhcyBhbiBpbmRpY2F0b3Igb25seSBidXQgd2lkZ2V0IGlzIGNsaWNrYWJsZS4gTGVmdCBidXR0b24gY2xpY2s6IG1vdmUgdG8gbGVmdCwgcmlnaHQgY2xpY2s6IG1vdmUgcmlnaHQuIE1pZGRsZSBjbGljayBjYWxscyBvdmVydmlldy5cblxuSWYgeW91ciBpbmRpY2F0b3IgbG9va3MgZGlmZmVyZW50IGZyb20gb25lIG9uIHNjcmVlbiBzaG90LCBpbnN0YWxsIERlamFWdSBTZXJpZiBvciBVYnVudHUgZm9udC4iLAogICJuYW1lIjogIldvcmtzcGFjZSBpbmRpY2F0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R0eTIvaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJob3Jpem9udGFsLXdvcmtzcGFjZS1pbmRpY2F0b3JAdHR5Mi5pbyIsCiAgInZlcnNpb24iOiAxNgp9"}, "41": {"version": "16", "sha256": "1vvnwbc2pl616ksprlwqx5ggkcm2i3gc8i5g0z7n3ahkl3hy5w3a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0b3Igc2hvd3MgdGhlIGFtb3VudCBvZiBvcGVuZWQgd29ya3NwYWNlcyBhbmQgaGlnaGxpZ2h0cyB0aGUgY3VycmVudCBvbmUgdXNpbmcgdW5pY29kZSBjaGFyYWN0ZXJzLlxuXG5Zb3UgY2FuIHVzZSBpdCBhcyBhbiBpbmRpY2F0b3Igb25seSBidXQgd2lkZ2V0IGlzIGNsaWNrYWJsZS4gTGVmdCBidXR0b24gY2xpY2s6IG1vdmUgdG8gbGVmdCwgcmlnaHQgY2xpY2s6IG1vdmUgcmlnaHQuIE1pZGRsZSBjbGljayBjYWxscyBvdmVydmlldy5cblxuSWYgeW91ciBpbmRpY2F0b3IgbG9va3MgZGlmZmVyZW50IGZyb20gb25lIG9uIHNjcmVlbiBzaG90LCBpbnN0YWxsIERlamFWdSBTZXJpZiBvciBVYnVudHUgZm9udC4iLAogICJuYW1lIjogIldvcmtzcGFjZSBpbmRpY2F0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R0eTIvaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJob3Jpem9udGFsLXdvcmtzcGFjZS1pbmRpY2F0b3JAdHR5Mi5pbyIsCiAgInZlcnNpb24iOiAxNgp9"}, "42": {"version": "16", "sha256": "1vvnwbc2pl616ksprlwqx5ggkcm2i3gc8i5g0z7n3ahkl3hy5w3a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0b3Igc2hvd3MgdGhlIGFtb3VudCBvZiBvcGVuZWQgd29ya3NwYWNlcyBhbmQgaGlnaGxpZ2h0cyB0aGUgY3VycmVudCBvbmUgdXNpbmcgdW5pY29kZSBjaGFyYWN0ZXJzLlxuXG5Zb3UgY2FuIHVzZSBpdCBhcyBhbiBpbmRpY2F0b3Igb25seSBidXQgd2lkZ2V0IGlzIGNsaWNrYWJsZS4gTGVmdCBidXR0b24gY2xpY2s6IG1vdmUgdG8gbGVmdCwgcmlnaHQgY2xpY2s6IG1vdmUgcmlnaHQuIE1pZGRsZSBjbGljayBjYWxscyBvdmVydmlldy5cblxuSWYgeW91ciBpbmRpY2F0b3IgbG9va3MgZGlmZmVyZW50IGZyb20gb25lIG9uIHNjcmVlbiBzaG90LCBpbnN0YWxsIERlamFWdSBTZXJpZiBvciBVYnVudHUgZm9udC4iLAogICJuYW1lIjogIldvcmtzcGFjZSBpbmRpY2F0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R0eTIvaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJob3Jpem9udGFsLXdvcmtzcGFjZS1pbmRpY2F0b3JAdHR5Mi5pbyIsCiAgInZlcnNpb24iOiAxNgp9"}, "43": {"version": "16", "sha256": "1vvnwbc2pl616ksprlwqx5ggkcm2i3gc8i5g0z7n3ahkl3hy5w3a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0b3Igc2hvd3MgdGhlIGFtb3VudCBvZiBvcGVuZWQgd29ya3NwYWNlcyBhbmQgaGlnaGxpZ2h0cyB0aGUgY3VycmVudCBvbmUgdXNpbmcgdW5pY29kZSBjaGFyYWN0ZXJzLlxuXG5Zb3UgY2FuIHVzZSBpdCBhcyBhbiBpbmRpY2F0b3Igb25seSBidXQgd2lkZ2V0IGlzIGNsaWNrYWJsZS4gTGVmdCBidXR0b24gY2xpY2s6IG1vdmUgdG8gbGVmdCwgcmlnaHQgY2xpY2s6IG1vdmUgcmlnaHQuIE1pZGRsZSBjbGljayBjYWxscyBvdmVydmlldy5cblxuSWYgeW91ciBpbmRpY2F0b3IgbG9va3MgZGlmZmVyZW50IGZyb20gb25lIG9uIHNjcmVlbiBzaG90LCBpbnN0YWxsIERlamFWdSBTZXJpZiBvciBVYnVudHUgZm9udC4iLAogICJuYW1lIjogIldvcmtzcGFjZSBpbmRpY2F0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R0eTIvaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJob3Jpem9udGFsLXdvcmtzcGFjZS1pbmRpY2F0b3JAdHR5Mi5pbyIsCiAgInZlcnNpb24iOiAxNgp9"}}}
 , {"uuid": "kitchentimer@blackjackshellac.ca", "name": "Kitchen Timer", "pname": "kitchen-timer", "description": "General purpose timer extension for Gnome Shell\n\nPlease report issues on github\n\nIf updating the extension reports an ERROR, it should work after the next reboot or if you logout and login again.", "link": "https://extensions.gnome.org/extension/3955/kitchen-timer/", "shell_version_map": {"38": {"version": "28", "sha256": "0k1ahswl2ipjz1v1z1j96lndbk26rgfr2ra2g78lvzjiv6j42sdf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdlbmVyYWwgcHVycG9zZSB0aW1lciBleHRlbnNpb24gZm9yIEdub21lIFNoZWxsXG5cblBsZWFzZSByZXBvcnQgaXNzdWVzIG9uIGdpdGh1YlxuXG5JZiB1cGRhdGluZyB0aGUgZXh0ZW5zaW9uIHJlcG9ydHMgYW4gRVJST1IsIGl0IHNob3VsZCB3b3JrIGFmdGVyIHRoZSBuZXh0IHJlYm9vdCBvciBpZiB5b3UgbG9nb3V0IGFuZCBsb2dpbiBhZ2Fpbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJraXRjaGVuLXRpbWVyLWJsYWNramFja3NoZWxsYWMiLAogICJuYW1lIjogIktpdGNoZW4gVGltZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMua2l0Y2hlbi10aW1lci1ibGFja2phY2tzaGVsbGFjIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JsYWNramFja3NoZWxsYWMva2l0Y2hlblRpbWVyIiwKICAidXVpZCI6ICJraXRjaGVudGltZXJAYmxhY2tqYWNrc2hlbGxhYy5jYSIsCiAgInZlcnNpb24iOiAyOAp9"}, "40": {"version": "28", "sha256": "0k1ahswl2ipjz1v1z1j96lndbk26rgfr2ra2g78lvzjiv6j42sdf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdlbmVyYWwgcHVycG9zZSB0aW1lciBleHRlbnNpb24gZm9yIEdub21lIFNoZWxsXG5cblBsZWFzZSByZXBvcnQgaXNzdWVzIG9uIGdpdGh1YlxuXG5JZiB1cGRhdGluZyB0aGUgZXh0ZW5zaW9uIHJlcG9ydHMgYW4gRVJST1IsIGl0IHNob3VsZCB3b3JrIGFmdGVyIHRoZSBuZXh0IHJlYm9vdCBvciBpZiB5b3UgbG9nb3V0IGFuZCBsb2dpbiBhZ2Fpbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJraXRjaGVuLXRpbWVyLWJsYWNramFja3NoZWxsYWMiLAogICJuYW1lIjogIktpdGNoZW4gVGltZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMua2l0Y2hlbi10aW1lci1ibGFja2phY2tzaGVsbGFjIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JsYWNramFja3NoZWxsYWMva2l0Y2hlblRpbWVyIiwKICAidXVpZCI6ICJraXRjaGVudGltZXJAYmxhY2tqYWNrc2hlbGxhYy5jYSIsCiAgInZlcnNpb24iOiAyOAp9"}}}
 , {"uuid": "gnome-fuzzy-app-search@gnome-shell-extensions.Czarlie.gitlab.com", "name": "GNOME Fuzzy App Search", "pname": "gnome-fuzzy-app-search", "description": "Fuzzy application search results for Gnome Search", "link": "https://extensions.gnome.org/extension/3956/gnome-fuzzy-app-search/", "shell_version_map": {"38": {"version": "18", "sha256": "1k79mlsck0j3phq59cmg5y5cs1ma1hs4n4d9q96r7wqlyxp6mc9q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJDemFybGllIDxsZWVlNDlAZ21haWwuY29tPiIsCiAgImF1dGhvci1odG1sIjogIkN6YXJsaWUgJmx0OzxhIGhyZWY9XCJtYWlsdG86bGVlZTQ5Ljd4N0BnbWFpbC5jb21cIj5sZWVlNDkuN3g3QGdtYWlsLmNvbTwvYT4mZ3Q7IiwKICAiZGVzY3JpcHRpb24iOiAiRnV6enkgYXBwbGljYXRpb24gc2VhcmNoIHJlc3VsdHMgZm9yIEdub21lIFNlYXJjaCIsCiAgImRlc2NyaXB0aW9uLWh0bWwiOiAiPGEgaHJlZj1cImh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0FwcHJveGltYXRlX3N0cmluZ19tYXRjaGluZ1wiPkZ1enp5PC9hPiBhcHBsaWNhdGlvbiBzZWFyY2ggcmVzdWx0cyBmb3IgPGEgaHJlZj1cImh0dHBzOi8vZGV2ZWxvcGVyLmdub21lLm9yZy9TZWFyY2hQcm92aWRlci9cIj5Hbm9tZSBTZWFyY2g8L2E+LiIsCiAgImVtYWlsIjogImxlZWU0OS43eDdAZ21haWwuY29tIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgImxpY2Vuc2UiOiAiR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjMuMCIsCiAgImxpY2Vuc2UtaHRtbCI6ICJUaGlzIHByb2dyYW0gY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZLlxuU2VlIHRoZSA8YSBocmVmPVwiaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLmh0bWxcIj5HTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2My4wPC9hPiBmb3IgZGV0YWlscy4iLAogICJuYW1lIjogIkdOT01FIEZ1enp5IEFwcCBTZWFyY2giLAogICJvcmlnaW5hbC1hdXRob3IiOiAiRnJhbmpvIEZpbG8gPGZmZmlsbzY2NkBnbWFpbC5jb20+IiwKICAib3JpZ2luYWwtYXV0aG9yLWh0bWwiOiAiRnJhbmpvIEZpbG8gJmx0OzxhIGhyZWY9XCJtYWlsdG86ZmZmaWxvNjY2QGdtYWlsLmNvbVwiPmZmZmlsbzY2NkBnbWFpbC5jb208L2E+Jmd0OyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS1mdXp6eS1hcHAtc2VhcmNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL0N6YXJsaWUvZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgInV1aWQiOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaEBnbm9tZS1zaGVsbC1leHRlbnNpb25zLkN6YXJsaWUuZ2l0bGFiLmNvbSIsCiAgInZlcnNpb24iOiAxOAp9"}, "40": {"version": "18", "sha256": "1k79mlsck0j3phq59cmg5y5cs1ma1hs4n4d9q96r7wqlyxp6mc9q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJDemFybGllIDxsZWVlNDlAZ21haWwuY29tPiIsCiAgImF1dGhvci1odG1sIjogIkN6YXJsaWUgJmx0OzxhIGhyZWY9XCJtYWlsdG86bGVlZTQ5Ljd4N0BnbWFpbC5jb21cIj5sZWVlNDkuN3g3QGdtYWlsLmNvbTwvYT4mZ3Q7IiwKICAiZGVzY3JpcHRpb24iOiAiRnV6enkgYXBwbGljYXRpb24gc2VhcmNoIHJlc3VsdHMgZm9yIEdub21lIFNlYXJjaCIsCiAgImRlc2NyaXB0aW9uLWh0bWwiOiAiPGEgaHJlZj1cImh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0FwcHJveGltYXRlX3N0cmluZ19tYXRjaGluZ1wiPkZ1enp5PC9hPiBhcHBsaWNhdGlvbiBzZWFyY2ggcmVzdWx0cyBmb3IgPGEgaHJlZj1cImh0dHBzOi8vZGV2ZWxvcGVyLmdub21lLm9yZy9TZWFyY2hQcm92aWRlci9cIj5Hbm9tZSBTZWFyY2g8L2E+LiIsCiAgImVtYWlsIjogImxlZWU0OS43eDdAZ21haWwuY29tIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgImxpY2Vuc2UiOiAiR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjMuMCIsCiAgImxpY2Vuc2UtaHRtbCI6ICJUaGlzIHByb2dyYW0gY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZLlxuU2VlIHRoZSA8YSBocmVmPVwiaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLmh0bWxcIj5HTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2My4wPC9hPiBmb3IgZGV0YWlscy4iLAogICJuYW1lIjogIkdOT01FIEZ1enp5IEFwcCBTZWFyY2giLAogICJvcmlnaW5hbC1hdXRob3IiOiAiRnJhbmpvIEZpbG8gPGZmZmlsbzY2NkBnbWFpbC5jb20+IiwKICAib3JpZ2luYWwtYXV0aG9yLWh0bWwiOiAiRnJhbmpvIEZpbG8gJmx0OzxhIGhyZWY9XCJtYWlsdG86ZmZmaWxvNjY2QGdtYWlsLmNvbVwiPmZmZmlsbzY2NkBnbWFpbC5jb208L2E+Jmd0OyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS1mdXp6eS1hcHAtc2VhcmNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL0N6YXJsaWUvZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgInV1aWQiOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaEBnbm9tZS1zaGVsbC1leHRlbnNpb25zLkN6YXJsaWUuZ2l0bGFiLmNvbSIsCiAgInZlcnNpb24iOiAxOAp9"}, "41": {"version": "18", "sha256": "1k79mlsck0j3phq59cmg5y5cs1ma1hs4n4d9q96r7wqlyxp6mc9q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJDemFybGllIDxsZWVlNDlAZ21haWwuY29tPiIsCiAgImF1dGhvci1odG1sIjogIkN6YXJsaWUgJmx0OzxhIGhyZWY9XCJtYWlsdG86bGVlZTQ5Ljd4N0BnbWFpbC5jb21cIj5sZWVlNDkuN3g3QGdtYWlsLmNvbTwvYT4mZ3Q7IiwKICAiZGVzY3JpcHRpb24iOiAiRnV6enkgYXBwbGljYXRpb24gc2VhcmNoIHJlc3VsdHMgZm9yIEdub21lIFNlYXJjaCIsCiAgImRlc2NyaXB0aW9uLWh0bWwiOiAiPGEgaHJlZj1cImh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0FwcHJveGltYXRlX3N0cmluZ19tYXRjaGluZ1wiPkZ1enp5PC9hPiBhcHBsaWNhdGlvbiBzZWFyY2ggcmVzdWx0cyBmb3IgPGEgaHJlZj1cImh0dHBzOi8vZGV2ZWxvcGVyLmdub21lLm9yZy9TZWFyY2hQcm92aWRlci9cIj5Hbm9tZSBTZWFyY2g8L2E+LiIsCiAgImVtYWlsIjogImxlZWU0OS43eDdAZ21haWwuY29tIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgImxpY2Vuc2UiOiAiR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjMuMCIsCiAgImxpY2Vuc2UtaHRtbCI6ICJUaGlzIHByb2dyYW0gY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZLlxuU2VlIHRoZSA8YSBocmVmPVwiaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLmh0bWxcIj5HTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2My4wPC9hPiBmb3IgZGV0YWlscy4iLAogICJuYW1lIjogIkdOT01FIEZ1enp5IEFwcCBTZWFyY2giLAogICJvcmlnaW5hbC1hdXRob3IiOiAiRnJhbmpvIEZpbG8gPGZmZmlsbzY2NkBnbWFpbC5jb20+IiwKICAib3JpZ2luYWwtYXV0aG9yLWh0bWwiOiAiRnJhbmpvIEZpbG8gJmx0OzxhIGhyZWY9XCJtYWlsdG86ZmZmaWxvNjY2QGdtYWlsLmNvbVwiPmZmZmlsbzY2NkBnbWFpbC5jb208L2E+Jmd0OyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS1mdXp6eS1hcHAtc2VhcmNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL0N6YXJsaWUvZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgInV1aWQiOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaEBnbm9tZS1zaGVsbC1leHRlbnNpb25zLkN6YXJsaWUuZ2l0bGFiLmNvbSIsCiAgInZlcnNpb24iOiAxOAp9"}, "42": {"version": "18", "sha256": "1k79mlsck0j3phq59cmg5y5cs1ma1hs4n4d9q96r7wqlyxp6mc9q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJDemFybGllIDxsZWVlNDlAZ21haWwuY29tPiIsCiAgImF1dGhvci1odG1sIjogIkN6YXJsaWUgJmx0OzxhIGhyZWY9XCJtYWlsdG86bGVlZTQ5Ljd4N0BnbWFpbC5jb21cIj5sZWVlNDkuN3g3QGdtYWlsLmNvbTwvYT4mZ3Q7IiwKICAiZGVzY3JpcHRpb24iOiAiRnV6enkgYXBwbGljYXRpb24gc2VhcmNoIHJlc3VsdHMgZm9yIEdub21lIFNlYXJjaCIsCiAgImRlc2NyaXB0aW9uLWh0bWwiOiAiPGEgaHJlZj1cImh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0FwcHJveGltYXRlX3N0cmluZ19tYXRjaGluZ1wiPkZ1enp5PC9hPiBhcHBsaWNhdGlvbiBzZWFyY2ggcmVzdWx0cyBmb3IgPGEgaHJlZj1cImh0dHBzOi8vZGV2ZWxvcGVyLmdub21lLm9yZy9TZWFyY2hQcm92aWRlci9cIj5Hbm9tZSBTZWFyY2g8L2E+LiIsCiAgImVtYWlsIjogImxlZWU0OS43eDdAZ21haWwuY29tIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgImxpY2Vuc2UiOiAiR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjMuMCIsCiAgImxpY2Vuc2UtaHRtbCI6ICJUaGlzIHByb2dyYW0gY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZLlxuU2VlIHRoZSA8YSBocmVmPVwiaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLmh0bWxcIj5HTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2My4wPC9hPiBmb3IgZGV0YWlscy4iLAogICJuYW1lIjogIkdOT01FIEZ1enp5IEFwcCBTZWFyY2giLAogICJvcmlnaW5hbC1hdXRob3IiOiAiRnJhbmpvIEZpbG8gPGZmZmlsbzY2NkBnbWFpbC5jb20+IiwKICAib3JpZ2luYWwtYXV0aG9yLWh0bWwiOiAiRnJhbmpvIEZpbG8gJmx0OzxhIGhyZWY9XCJtYWlsdG86ZmZmaWxvNjY2QGdtYWlsLmNvbVwiPmZmZmlsbzY2NkBnbWFpbC5jb208L2E+Jmd0OyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS1mdXp6eS1hcHAtc2VhcmNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL0N6YXJsaWUvZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgInV1aWQiOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaEBnbm9tZS1zaGVsbC1leHRlbnNpb25zLkN6YXJsaWUuZ2l0bGFiLmNvbSIsCiAgInZlcnNpb24iOiAxOAp9"}, "43": {"version": "18", "sha256": "1k79mlsck0j3phq59cmg5y5cs1ma1hs4n4d9q96r7wqlyxp6mc9q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJDemFybGllIDxsZWVlNDlAZ21haWwuY29tPiIsCiAgImF1dGhvci1odG1sIjogIkN6YXJsaWUgJmx0OzxhIGhyZWY9XCJtYWlsdG86bGVlZTQ5Ljd4N0BnbWFpbC5jb21cIj5sZWVlNDkuN3g3QGdtYWlsLmNvbTwvYT4mZ3Q7IiwKICAiZGVzY3JpcHRpb24iOiAiRnV6enkgYXBwbGljYXRpb24gc2VhcmNoIHJlc3VsdHMgZm9yIEdub21lIFNlYXJjaCIsCiAgImRlc2NyaXB0aW9uLWh0bWwiOiAiPGEgaHJlZj1cImh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0FwcHJveGltYXRlX3N0cmluZ19tYXRjaGluZ1wiPkZ1enp5PC9hPiBhcHBsaWNhdGlvbiBzZWFyY2ggcmVzdWx0cyBmb3IgPGEgaHJlZj1cImh0dHBzOi8vZGV2ZWxvcGVyLmdub21lLm9yZy9TZWFyY2hQcm92aWRlci9cIj5Hbm9tZSBTZWFyY2g8L2E+LiIsCiAgImVtYWlsIjogImxlZWU0OS43eDdAZ21haWwuY29tIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgImxpY2Vuc2UiOiAiR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjMuMCIsCiAgImxpY2Vuc2UtaHRtbCI6ICJUaGlzIHByb2dyYW0gY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZLlxuU2VlIHRoZSA8YSBocmVmPVwiaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLmh0bWxcIj5HTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2My4wPC9hPiBmb3IgZGV0YWlscy4iLAogICJuYW1lIjogIkdOT01FIEZ1enp5IEFwcCBTZWFyY2giLAogICJvcmlnaW5hbC1hdXRob3IiOiAiRnJhbmpvIEZpbG8gPGZmZmlsbzY2NkBnbWFpbC5jb20+IiwKICAib3JpZ2luYWwtYXV0aG9yLWh0bWwiOiAiRnJhbmpvIEZpbG8gJmx0OzxhIGhyZWY9XCJtYWlsdG86ZmZmaWxvNjY2QGdtYWlsLmNvbVwiPmZmZmlsbzY2NkBnbWFpbC5jb208L2E+Jmd0OyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS1mdXp6eS1hcHAtc2VhcmNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL0N6YXJsaWUvZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgInV1aWQiOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaEBnbm9tZS1zaGVsbC1leHRlbnNpb25zLkN6YXJsaWUuZ2l0bGFiLmNvbSIsCiAgInZlcnNpb24iOiAxOAp9"}}}
 , {"uuid": "e-ink-mode@fujimo-t.github.io", "name": "E Ink Mode", "pname": "e-ink-mode", "description": "Make desktop suitable for E Ink monitors.\n\nUnmaintenanced.\nPlease migrate to theme:\nhttps://github.com/fujimo-t/gnome-shell-theme-e-ink\nSee below to detail:\nhttps://github.com/fujimo-t/gnome-shell-extension-e-ink-mode/issues/3#issuecomment-1019159171", "link": "https://extensions.gnome.org/extension/3957/e-ink-mode/", "shell_version_map": {"40": {"version": "3", "sha256": "0khqna60a0vblygriiky0jzg92ib8i44i6wkr8s3vxi0bcfa2zhm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgZGVza3RvcCBzdWl0YWJsZSBmb3IgRSBJbmsgbW9uaXRvcnMuXG5cblVubWFpbnRlbmFuY2VkLlxuUGxlYXNlIG1pZ3JhdGUgdG8gdGhlbWU6XG5odHRwczovL2dpdGh1Yi5jb20vZnVqaW1vLXQvZ25vbWUtc2hlbGwtdGhlbWUtZS1pbmtcblNlZSBiZWxvdyB0byBkZXRhaWw6XG5odHRwczovL2dpdGh1Yi5jb20vZnVqaW1vLXQvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWUtaW5rLW1vZGUvaXNzdWVzLzMjaXNzdWVjb21tZW50LTEwMTkxNTkxNzEiLAogICJuYW1lIjogIkUgSW5rIE1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnVqaW1vLXQvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWUtaW5rLW1vZGUiLAogICJ1dWlkIjogImUtaW5rLW1vZGVAZnVqaW1vLXQuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
@@ -448,7 +448,7 @@
 , {"uuid": "transparentwindows.mdirshad07", "name": "Transparent Window", "pname": "transparent-window", "description": "Change the opacity of windows by compiz-style shortcut Alt+scroll.\nYou can customize hotkey in Preference page if Alt key doesn't work.", "link": "https://extensions.gnome.org/extension/4016/transparent-window/", "shell_version_map": {"38": {"version": "2", "sha256": "12d8ad0s3b2cd8gczsa2l2x5wf3rag9xfr12ljw2jlrzf99vnr70", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB0aGUgb3BhY2l0eSBvZiB3aW5kb3dzIGJ5IGNvbXBpei1zdHlsZSBzaG9ydGN1dCBBbHQrc2Nyb2xsLlxuWW91IGNhbiBjdXN0b21pemUgaG90a2V5IGluIFByZWZlcmVuY2UgcGFnZSBpZiBBbHQga2V5IGRvZXNuJ3Qgd29yay4iLAogICJuYW1lIjogIlRyYW5zcGFyZW50IFdpbmRvdyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5UcmFuc3BhcmVudFdpbmRvdyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOC4xIiwKICAgICIzLjM2LjEiLAogICAgIjMuMzguMSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3BieHFkb3duL2dub21lLXNoZWxsLWV4dGVuc2lvbi10cmFuc3BhcmVudC13aW5kb3ciLAogICJ1dWlkIjogInRyYW5zcGFyZW50d2luZG93cy5tZGlyc2hhZDA3IiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "wandering-pixel@justinrdonnelly.github.com", "name": "Wandering Pixel", "pname": "wandering-pixel", "description": "Slide 1 pixel back and forth in the top bar as a workaround for various bugs in GNOME Shell and/or Mutter.", "link": "https://extensions.gnome.org/extension/4028/wandering-pixel/", "shell_version_map": {"38": {"version": "4", "sha256": "03hq51krmqm43vkrm3fpvy5da0y75wfpkjhfnch1cz5y3112d13q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNsaWRlIDEgcGl4ZWwgYmFjayBhbmQgZm9ydGggaW4gdGhlIHRvcCBiYXIgYXMgYSB3b3JrYXJvdW5kIGZvciB2YXJpb3VzIGJ1Z3MgaW4gR05PTUUgU2hlbGwgYW5kL29yIE11dHRlci4iLAogICJuYW1lIjogIldhbmRlcmluZyBQaXhlbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vanVzdGlucmRvbm5lbGx5L3dhbmRlcmluZy1waXhlbCIsCiAgInV1aWQiOiAid2FuZGVyaW5nLXBpeGVsQGp1c3RpbnJkb25uZWxseS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "4", "sha256": "03hq51krmqm43vkrm3fpvy5da0y75wfpkjhfnch1cz5y3112d13q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNsaWRlIDEgcGl4ZWwgYmFjayBhbmQgZm9ydGggaW4gdGhlIHRvcCBiYXIgYXMgYSB3b3JrYXJvdW5kIGZvciB2YXJpb3VzIGJ1Z3MgaW4gR05PTUUgU2hlbGwgYW5kL29yIE11dHRlci4iLAogICJuYW1lIjogIldhbmRlcmluZyBQaXhlbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vanVzdGlucmRvbm5lbGx5L3dhbmRlcmluZy1waXhlbCIsCiAgInV1aWQiOiAid2FuZGVyaW5nLXBpeGVsQGp1c3RpbnJkb25uZWxseS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "03hq51krmqm43vkrm3fpvy5da0y75wfpkjhfnch1cz5y3112d13q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNsaWRlIDEgcGl4ZWwgYmFjayBhbmQgZm9ydGggaW4gdGhlIHRvcCBiYXIgYXMgYSB3b3JrYXJvdW5kIGZvciB2YXJpb3VzIGJ1Z3MgaW4gR05PTUUgU2hlbGwgYW5kL29yIE11dHRlci4iLAogICJuYW1lIjogIldhbmRlcmluZyBQaXhlbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vanVzdGlucmRvbm5lbGx5L3dhbmRlcmluZy1waXhlbCIsCiAgInV1aWQiOiAid2FuZGVyaW5nLXBpeGVsQGp1c3RpbnJkb25uZWxseS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "screenshot-directory@fawtytoo", "name": "Screenshot Directory", "pname": "screenshot-directory", "description": "The default screenshot directory is ~/Pictures. This extension changes that to use whatever is set if you used the Gnome Screenshot app. This can be found in the dconf setting: /org/gnome/gnome-screenshot/last-save-directory. If that directory doesn't exist, the extension will use the Home directory instead.\n\nNote: If the dconf setting doesn't exist, you need to install the Gnome Screenshot app.\n\nThe idea was taken from the extension: Screenshot Locations.", "link": "https://extensions.gnome.org/extension/4031/screenshot-directory/", "shell_version_map": {"38": {"version": "8", "sha256": "1pmj9dx0103rk2zaia53q8rc461dj7ybfih9lnh8v1bcm2sjca3w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBkZWZhdWx0IHNjcmVlbnNob3QgZGlyZWN0b3J5IGlzIH4vUGljdHVyZXMuIFRoaXMgZXh0ZW5zaW9uIGNoYW5nZXMgdGhhdCB0byB1c2Ugd2hhdGV2ZXIgaXMgc2V0IGlmIHlvdSB1c2VkIHRoZSBHbm9tZSBTY3JlZW5zaG90IGFwcC4gVGhpcyBjYW4gYmUgZm91bmQgaW4gdGhlIGRjb25mIHNldHRpbmc6IC9vcmcvZ25vbWUvZ25vbWUtc2NyZWVuc2hvdC9sYXN0LXNhdmUtZGlyZWN0b3J5LiBJZiB0aGF0IGRpcmVjdG9yeSBkb2Vzbid0IGV4aXN0LCB0aGUgZXh0ZW5zaW9uIHdpbGwgdXNlIHRoZSBIb21lIGRpcmVjdG9yeSBpbnN0ZWFkLlxuXG5Ob3RlOiBJZiB0aGUgZGNvbmYgc2V0dGluZyBkb2Vzbid0IGV4aXN0LCB5b3UgbmVlZCB0byBpbnN0YWxsIHRoZSBHbm9tZSBTY3JlZW5zaG90IGFwcC5cblxuVGhlIGlkZWEgd2FzIHRha2VuIGZyb20gdGhlIGV4dGVuc2lvbjogU2NyZWVuc2hvdCBMb2NhdGlvbnMuIiwKICAibmFtZSI6ICJTY3JlZW5zaG90IERpcmVjdG9yeSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJzY3JlZW5zaG90LWRpcmVjdG9yeUBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiA4Cn0="}, "40": {"version": "8", "sha256": "1pmj9dx0103rk2zaia53q8rc461dj7ybfih9lnh8v1bcm2sjca3w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBkZWZhdWx0IHNjcmVlbnNob3QgZGlyZWN0b3J5IGlzIH4vUGljdHVyZXMuIFRoaXMgZXh0ZW5zaW9uIGNoYW5nZXMgdGhhdCB0byB1c2Ugd2hhdGV2ZXIgaXMgc2V0IGlmIHlvdSB1c2VkIHRoZSBHbm9tZSBTY3JlZW5zaG90IGFwcC4gVGhpcyBjYW4gYmUgZm91bmQgaW4gdGhlIGRjb25mIHNldHRpbmc6IC9vcmcvZ25vbWUvZ25vbWUtc2NyZWVuc2hvdC9sYXN0LXNhdmUtZGlyZWN0b3J5LiBJZiB0aGF0IGRpcmVjdG9yeSBkb2Vzbid0IGV4aXN0LCB0aGUgZXh0ZW5zaW9uIHdpbGwgdXNlIHRoZSBIb21lIGRpcmVjdG9yeSBpbnN0ZWFkLlxuXG5Ob3RlOiBJZiB0aGUgZGNvbmYgc2V0dGluZyBkb2Vzbid0IGV4aXN0LCB5b3UgbmVlZCB0byBpbnN0YWxsIHRoZSBHbm9tZSBTY3JlZW5zaG90IGFwcC5cblxuVGhlIGlkZWEgd2FzIHRha2VuIGZyb20gdGhlIGV4dGVuc2lvbjogU2NyZWVuc2hvdCBMb2NhdGlvbnMuIiwKICAibmFtZSI6ICJTY3JlZW5zaG90IERpcmVjdG9yeSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJzY3JlZW5zaG90LWRpcmVjdG9yeUBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiA4Cn0="}, "41": {"version": "8", "sha256": "1pmj9dx0103rk2zaia53q8rc461dj7ybfih9lnh8v1bcm2sjca3w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBkZWZhdWx0IHNjcmVlbnNob3QgZGlyZWN0b3J5IGlzIH4vUGljdHVyZXMuIFRoaXMgZXh0ZW5zaW9uIGNoYW5nZXMgdGhhdCB0byB1c2Ugd2hhdGV2ZXIgaXMgc2V0IGlmIHlvdSB1c2VkIHRoZSBHbm9tZSBTY3JlZW5zaG90IGFwcC4gVGhpcyBjYW4gYmUgZm91bmQgaW4gdGhlIGRjb25mIHNldHRpbmc6IC9vcmcvZ25vbWUvZ25vbWUtc2NyZWVuc2hvdC9sYXN0LXNhdmUtZGlyZWN0b3J5LiBJZiB0aGF0IGRpcmVjdG9yeSBkb2Vzbid0IGV4aXN0LCB0aGUgZXh0ZW5zaW9uIHdpbGwgdXNlIHRoZSBIb21lIGRpcmVjdG9yeSBpbnN0ZWFkLlxuXG5Ob3RlOiBJZiB0aGUgZGNvbmYgc2V0dGluZyBkb2Vzbid0IGV4aXN0LCB5b3UgbmVlZCB0byBpbnN0YWxsIHRoZSBHbm9tZSBTY3JlZW5zaG90IGFwcC5cblxuVGhlIGlkZWEgd2FzIHRha2VuIGZyb20gdGhlIGV4dGVuc2lvbjogU2NyZWVuc2hvdCBMb2NhdGlvbnMuIiwKICAibmFtZSI6ICJTY3JlZW5zaG90IERpcmVjdG9yeSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJzY3JlZW5zaG90LWRpcmVjdG9yeUBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiA4Cn0="}, "42": {"version": "8", "sha256": "1pmj9dx0103rk2zaia53q8rc461dj7ybfih9lnh8v1bcm2sjca3w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBkZWZhdWx0IHNjcmVlbnNob3QgZGlyZWN0b3J5IGlzIH4vUGljdHVyZXMuIFRoaXMgZXh0ZW5zaW9uIGNoYW5nZXMgdGhhdCB0byB1c2Ugd2hhdGV2ZXIgaXMgc2V0IGlmIHlvdSB1c2VkIHRoZSBHbm9tZSBTY3JlZW5zaG90IGFwcC4gVGhpcyBjYW4gYmUgZm91bmQgaW4gdGhlIGRjb25mIHNldHRpbmc6IC9vcmcvZ25vbWUvZ25vbWUtc2NyZWVuc2hvdC9sYXN0LXNhdmUtZGlyZWN0b3J5LiBJZiB0aGF0IGRpcmVjdG9yeSBkb2Vzbid0IGV4aXN0LCB0aGUgZXh0ZW5zaW9uIHdpbGwgdXNlIHRoZSBIb21lIGRpcmVjdG9yeSBpbnN0ZWFkLlxuXG5Ob3RlOiBJZiB0aGUgZGNvbmYgc2V0dGluZyBkb2Vzbid0IGV4aXN0LCB5b3UgbmVlZCB0byBpbnN0YWxsIHRoZSBHbm9tZSBTY3JlZW5zaG90IGFwcC5cblxuVGhlIGlkZWEgd2FzIHRha2VuIGZyb20gdGhlIGV4dGVuc2lvbjogU2NyZWVuc2hvdCBMb2NhdGlvbnMuIiwKICAibmFtZSI6ICJTY3JlZW5zaG90IERpcmVjdG9yeSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJzY3JlZW5zaG90LWRpcmVjdG9yeUBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiA4Cn0="}}}
-, {"uuid": "x11gestures@joseexposito.github.io", "name": "X11 Gestures", "pname": "x11-gestures", "description": "Enable GNOME Shell multi-touch gestures on X11.\nRequires Touchégg https://github.com/JoseExposito/touchegg#readme", "link": "https://extensions.gnome.org/extension/4033/x11-gestures/", "shell_version_map": {"38": {"version": "14", "sha256": "17jnh27fj32sbmxilbjzl6lra5rgmsbnk0s4s6f3d0ahrxmn6x1d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXgxMWdlc3R1cmVzIiwKICAidXVpZCI6ICJ4MTFnZXN0dXJlc0Bqb3NlZXhwb3NpdG8uZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDE0Cn0="}, "40": {"version": "14", "sha256": "17jnh27fj32sbmxilbjzl6lra5rgmsbnk0s4s6f3d0ahrxmn6x1d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXgxMWdlc3R1cmVzIiwKICAidXVpZCI6ICJ4MTFnZXN0dXJlc0Bqb3NlZXhwb3NpdG8uZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDE0Cn0="}, "41": {"version": "14", "sha256": "17jnh27fj32sbmxilbjzl6lra5rgmsbnk0s4s6f3d0ahrxmn6x1d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXgxMWdlc3R1cmVzIiwKICAidXVpZCI6ICJ4MTFnZXN0dXJlc0Bqb3NlZXhwb3NpdG8uZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDE0Cn0="}, "42": {"version": "14", "sha256": "17jnh27fj32sbmxilbjzl6lra5rgmsbnk0s4s6f3d0ahrxmn6x1d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXgxMWdlc3R1cmVzIiwKICAidXVpZCI6ICJ4MTFnZXN0dXJlc0Bqb3NlZXhwb3NpdG8uZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDE0Cn0="}}}
+, {"uuid": "x11gestures@joseexposito.github.io", "name": "X11 Gestures", "pname": "x11-gestures", "description": "Enable GNOME Shell multi-touch gestures on X11.\nRequires Touchégg https://github.com/JoseExposito/touchegg#readme", "link": "https://extensions.gnome.org/extension/4033/x11-gestures/", "shell_version_map": {"38": {"version": "15", "sha256": "0hls48z9vfmk7qhwxwj1y5sap3wms9jvnjjd8dnxfbqdz8018lby", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vSm9zZUV4cG9zaXRvL2dub21lLXNoZWxsLWV4dGVuc2lvbi14MTFnZXN0dXJlcyIsCiAgInV1aWQiOiAieDExZ2VzdHVyZXNAam9zZWV4cG9zaXRvLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxNQp9"}, "40": {"version": "15", "sha256": "0hls48z9vfmk7qhwxwj1y5sap3wms9jvnjjd8dnxfbqdz8018lby", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vSm9zZUV4cG9zaXRvL2dub21lLXNoZWxsLWV4dGVuc2lvbi14MTFnZXN0dXJlcyIsCiAgInV1aWQiOiAieDExZ2VzdHVyZXNAam9zZWV4cG9zaXRvLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxNQp9"}, "41": {"version": "15", "sha256": "0hls48z9vfmk7qhwxwj1y5sap3wms9jvnjjd8dnxfbqdz8018lby", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vSm9zZUV4cG9zaXRvL2dub21lLXNoZWxsLWV4dGVuc2lvbi14MTFnZXN0dXJlcyIsCiAgInV1aWQiOiAieDExZ2VzdHVyZXNAam9zZWV4cG9zaXRvLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxNQp9"}, "42": {"version": "15", "sha256": "0hls48z9vfmk7qhwxwj1y5sap3wms9jvnjjd8dnxfbqdz8018lby", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vSm9zZUV4cG9zaXRvL2dub21lLXNoZWxsLWV4dGVuc2lvbi14MTFnZXN0dXJlcyIsCiAgInV1aWQiOiAieDExZ2VzdHVyZXNAam9zZWV4cG9zaXRvLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxNQp9"}, "43": {"version": "15", "sha256": "0hls48z9vfmk7qhwxwj1y5sap3wms9jvnjjd8dnxfbqdz8018lby", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vSm9zZUV4cG9zaXRvL2dub21lLXNoZWxsLWV4dGVuc2lvbi14MTFnZXN0dXJlcyIsCiAgInV1aWQiOiAieDExZ2VzdHVyZXNAam9zZWV4cG9zaXRvLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxNQp9"}}}
 , {"uuid": "get-out-of-the-way@michaelmob.com", "name": "Get Out Of The Way!", "pname": "get-out-of-the-way", "description": "Push 'Always-on-Top' windows out of the way of the focused window.", "link": "https://extensions.gnome.org/extension/4034/get-out-of-the-way/", "shell_version_map": {"38": {"version": "1", "sha256": "1jpjqi2l6wjn9zbgpck04gm9vbspi066chby1j6k9km6dwljfbk7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1c2ggJ0Fsd2F5cy1vbi1Ub3AnIHdpbmRvd3Mgb3V0IG9mIHRoZSB3YXkgb2YgdGhlIGZvY3VzZWQgd2luZG93LiIsCiAgIm5hbWUiOiAiR2V0IE91dCBPZiBUaGUgV2F5ISIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJnZXQtb3V0LW9mLXRoZS13YXlAbWljaGFlbG1vYi5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"uuid": "VPNStatus@jesusalc@intuivo.com", "name": "VPNStatus Indicator", "pname": "vpnstatus-indicator", "description": "displays the current state of VPNStatus VPN\n\nchecks, if /proc/net/route contains entries for device nmcli?, this is the VPNStatus network device.\n", "link": "https://extensions.gnome.org/extension/4039/vpnstatus-indicator/", "shell_version_map": {"38": {"version": "1", "sha256": "1y4ym6lpwfi03rc6186yjc7mns01q5nrwiqizghls7hiyfg3kqrn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImRpc3BsYXlzIHRoZSBjdXJyZW50IHN0YXRlIG9mIFZQTlN0YXR1cyBWUE5cblxuY2hlY2tzLCBpZiAvcHJvYy9uZXQvcm91dGUgY29udGFpbnMgZW50cmllcyBmb3IgZGV2aWNlIG5tY2xpPywgdGhpcyBpcyB0aGUgVlBOU3RhdHVzIG5ldHdvcmsgZGV2aWNlLlxuIiwKICAibmFtZSI6ICJWUE5TdGF0dXMgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIlZQTlN0YXR1c0BqZXN1c2FsY0BpbnR1aXZvLmNvbSIsCiAgInZlcnNpb24iOiAxCn0="}}}
 , {"uuid": "switchtwolayouts@qtmax.dev", "name": "Switch Two Layouts", "pname": "switch-two-layouts", "description": "This extension makes XKB shortcuts to switch keyboard layouts (such as Caps Lock, Ctrl+Shift, etc.) cycle between the two first layouts. The other ones still can be selected via the menu or using GNOME's shortcuts (Super+Space, Shift+Super+Space). It's useful when you have two primary layouts and more additional, which are used more rarely.", "link": "https://extensions.gnome.org/extension/4042/switch-two-layouts/", "shell_version_map": {"38": {"version": "4", "sha256": "0b38pcdxyx8znhw7bn4f1x07g672f8rm6k7hhrkdr3v676z3s93n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIG1ha2VzIFhLQiBzaG9ydGN1dHMgdG8gc3dpdGNoIGtleWJvYXJkIGxheW91dHMgKHN1Y2ggYXMgQ2FwcyBMb2NrLCBDdHJsK1NoaWZ0LCBldGMuKSBjeWNsZSBiZXR3ZWVuIHRoZSB0d28gZmlyc3QgbGF5b3V0cy4gVGhlIG90aGVyIG9uZXMgc3RpbGwgY2FuIGJlIHNlbGVjdGVkIHZpYSB0aGUgbWVudSBvciB1c2luZyBHTk9NRSdzIHNob3J0Y3V0cyAoU3VwZXIrU3BhY2UsIFNoaWZ0K1N1cGVyK1NwYWNlKS4gSXQncyB1c2VmdWwgd2hlbiB5b3UgaGF2ZSB0d28gcHJpbWFyeSBsYXlvdXRzIGFuZCBtb3JlIGFkZGl0aW9uYWwsIHdoaWNoIGFyZSB1c2VkIG1vcmUgcmFyZWx5LiIsCiAgIm5hbWUiOiAiU3dpdGNoIFR3byBMYXlvdXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInN3aXRjaHR3b2xheW91dHNAcXRtYXguZGV2IiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "4", "sha256": "0b38pcdxyx8znhw7bn4f1x07g672f8rm6k7hhrkdr3v676z3s93n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIG1ha2VzIFhLQiBzaG9ydGN1dHMgdG8gc3dpdGNoIGtleWJvYXJkIGxheW91dHMgKHN1Y2ggYXMgQ2FwcyBMb2NrLCBDdHJsK1NoaWZ0LCBldGMuKSBjeWNsZSBiZXR3ZWVuIHRoZSB0d28gZmlyc3QgbGF5b3V0cy4gVGhlIG90aGVyIG9uZXMgc3RpbGwgY2FuIGJlIHNlbGVjdGVkIHZpYSB0aGUgbWVudSBvciB1c2luZyBHTk9NRSdzIHNob3J0Y3V0cyAoU3VwZXIrU3BhY2UsIFNoaWZ0K1N1cGVyK1NwYWNlKS4gSXQncyB1c2VmdWwgd2hlbiB5b3UgaGF2ZSB0d28gcHJpbWFyeSBsYXlvdXRzIGFuZCBtb3JlIGFkZGl0aW9uYWwsIHdoaWNoIGFyZSB1c2VkIG1vcmUgcmFyZWx5LiIsCiAgIm5hbWUiOiAiU3dpdGNoIFR3byBMYXlvdXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInN3aXRjaHR3b2xheW91dHNAcXRtYXguZGV2IiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "0b38pcdxyx8znhw7bn4f1x07g672f8rm6k7hhrkdr3v676z3s93n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIG1ha2VzIFhLQiBzaG9ydGN1dHMgdG8gc3dpdGNoIGtleWJvYXJkIGxheW91dHMgKHN1Y2ggYXMgQ2FwcyBMb2NrLCBDdHJsK1NoaWZ0LCBldGMuKSBjeWNsZSBiZXR3ZWVuIHRoZSB0d28gZmlyc3QgbGF5b3V0cy4gVGhlIG90aGVyIG9uZXMgc3RpbGwgY2FuIGJlIHNlbGVjdGVkIHZpYSB0aGUgbWVudSBvciB1c2luZyBHTk9NRSdzIHNob3J0Y3V0cyAoU3VwZXIrU3BhY2UsIFNoaWZ0K1N1cGVyK1NwYWNlKS4gSXQncyB1c2VmdWwgd2hlbiB5b3UgaGF2ZSB0d28gcHJpbWFyeSBsYXlvdXRzIGFuZCBtb3JlIGFkZGl0aW9uYWwsIHdoaWNoIGFyZSB1c2VkIG1vcmUgcmFyZWx5LiIsCiAgIm5hbWUiOiAiU3dpdGNoIFR3byBMYXlvdXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInN3aXRjaHR3b2xheW91dHNAcXRtYXguZGV2IiwKICAidmVyc2lvbiI6IDQKfQ=="}, "42": {"version": "4", "sha256": "0b38pcdxyx8znhw7bn4f1x07g672f8rm6k7hhrkdr3v676z3s93n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIG1ha2VzIFhLQiBzaG9ydGN1dHMgdG8gc3dpdGNoIGtleWJvYXJkIGxheW91dHMgKHN1Y2ggYXMgQ2FwcyBMb2NrLCBDdHJsK1NoaWZ0LCBldGMuKSBjeWNsZSBiZXR3ZWVuIHRoZSB0d28gZmlyc3QgbGF5b3V0cy4gVGhlIG90aGVyIG9uZXMgc3RpbGwgY2FuIGJlIHNlbGVjdGVkIHZpYSB0aGUgbWVudSBvciB1c2luZyBHTk9NRSdzIHNob3J0Y3V0cyAoU3VwZXIrU3BhY2UsIFNoaWZ0K1N1cGVyK1NwYWNlKS4gSXQncyB1c2VmdWwgd2hlbiB5b3UgaGF2ZSB0d28gcHJpbWFyeSBsYXlvdXRzIGFuZCBtb3JlIGFkZGl0aW9uYWwsIHdoaWNoIGFyZSB1c2VkIG1vcmUgcmFyZWx5LiIsCiAgIm5hbWUiOiAiU3dpdGNoIFR3byBMYXlvdXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInN3aXRjaHR3b2xheW91dHNAcXRtYXguZGV2IiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
@@ -482,7 +482,7 @@
 , {"uuid": "espresso@coadmunkee.github.com", "name": "Espresso", "pname": "espresso", "description": "Espresso disables the usual auto suspend and screensaver functionality and optionally Night Light with options to show an Espresso icon in the top panel, to enable Espresso when a fullscreen application is running, to restore state across reboots, to provide notifications, to enable Espresso when specific applications are running, or to pause Night Light when Espresso is enabled or only when specific applications are running. Espresso also provides some support for docking stations including options to enable Espresso when charging and/or when docked to external monitors and to allow temporarily overriding the docking support without affecting the stored state.\n\nEspresso is a fork of the Caffeine extension.\n\nPlease leave feedback or report issues through the Extension Homepage", "link": "https://extensions.gnome.org/extension/4135/espresso/", "shell_version_map": {"40": {"version": "7", "sha256": "126nf3rk3v8aabaxjz3znj71ib1kqqzz3zi2ql17v0r7hpm53wi9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVzcHJlc3NvIGRpc2FibGVzIHRoZSB1c3VhbCBhdXRvIHN1c3BlbmQgYW5kIHNjcmVlbnNhdmVyIGZ1bmN0aW9uYWxpdHkgYW5kIG9wdGlvbmFsbHkgTmlnaHQgTGlnaHQgd2l0aCBvcHRpb25zIHRvIHNob3cgYW4gRXNwcmVzc28gaWNvbiBpbiB0aGUgdG9wIHBhbmVsLCB0byBlbmFibGUgRXNwcmVzc28gd2hlbiBhIGZ1bGxzY3JlZW4gYXBwbGljYXRpb24gaXMgcnVubmluZywgdG8gcmVzdG9yZSBzdGF0ZSBhY3Jvc3MgcmVib290cywgdG8gcHJvdmlkZSBub3RpZmljYXRpb25zLCB0byBlbmFibGUgRXNwcmVzc28gd2hlbiBzcGVjaWZpYyBhcHBsaWNhdGlvbnMgYXJlIHJ1bm5pbmcsIG9yIHRvIHBhdXNlIE5pZ2h0IExpZ2h0IHdoZW4gRXNwcmVzc28gaXMgZW5hYmxlZCBvciBvbmx5IHdoZW4gc3BlY2lmaWMgYXBwbGljYXRpb25zIGFyZSBydW5uaW5nLiBFc3ByZXNzbyBhbHNvIHByb3ZpZGVzIHNvbWUgc3VwcG9ydCBmb3IgZG9ja2luZyBzdGF0aW9ucyBpbmNsdWRpbmcgb3B0aW9ucyB0byBlbmFibGUgRXNwcmVzc28gd2hlbiBjaGFyZ2luZyBhbmQvb3Igd2hlbiBkb2NrZWQgdG8gZXh0ZXJuYWwgbW9uaXRvcnMgYW5kIHRvIGFsbG93IHRlbXBvcmFyaWx5IG92ZXJyaWRpbmcgdGhlIGRvY2tpbmcgc3VwcG9ydCB3aXRob3V0IGFmZmVjdGluZyB0aGUgc3RvcmVkIHN0YXRlLlxuXG5Fc3ByZXNzbyBpcyBhIGZvcmsgb2YgdGhlIENhZmZlaW5lIGV4dGVuc2lvbi5cblxuUGxlYXNlIGxlYXZlIGZlZWRiYWNrIG9yIHJlcG9ydCBpc3N1ZXMgdGhyb3VnaCB0aGUgRXh0ZW5zaW9uIEhvbWVwYWdlIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWVzcHJlc3NvIiwKICAibmFtZSI6ICJFc3ByZXNzbyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5lc3ByZXNzbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9jb2FkbXVua2VlL2dub21lLXNoZWxsLWV4dGVuc2lvbi1lc3ByZXNzbyIsCiAgInV1aWQiOiAiZXNwcmVzc29AY29hZG11bmtlZS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "41": {"version": "7", "sha256": "126nf3rk3v8aabaxjz3znj71ib1kqqzz3zi2ql17v0r7hpm53wi9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVzcHJlc3NvIGRpc2FibGVzIHRoZSB1c3VhbCBhdXRvIHN1c3BlbmQgYW5kIHNjcmVlbnNhdmVyIGZ1bmN0aW9uYWxpdHkgYW5kIG9wdGlvbmFsbHkgTmlnaHQgTGlnaHQgd2l0aCBvcHRpb25zIHRvIHNob3cgYW4gRXNwcmVzc28gaWNvbiBpbiB0aGUgdG9wIHBhbmVsLCB0byBlbmFibGUgRXNwcmVzc28gd2hlbiBhIGZ1bGxzY3JlZW4gYXBwbGljYXRpb24gaXMgcnVubmluZywgdG8gcmVzdG9yZSBzdGF0ZSBhY3Jvc3MgcmVib290cywgdG8gcHJvdmlkZSBub3RpZmljYXRpb25zLCB0byBlbmFibGUgRXNwcmVzc28gd2hlbiBzcGVjaWZpYyBhcHBsaWNhdGlvbnMgYXJlIHJ1bm5pbmcsIG9yIHRvIHBhdXNlIE5pZ2h0IExpZ2h0IHdoZW4gRXNwcmVzc28gaXMgZW5hYmxlZCBvciBvbmx5IHdoZW4gc3BlY2lmaWMgYXBwbGljYXRpb25zIGFyZSBydW5uaW5nLiBFc3ByZXNzbyBhbHNvIHByb3ZpZGVzIHNvbWUgc3VwcG9ydCBmb3IgZG9ja2luZyBzdGF0aW9ucyBpbmNsdWRpbmcgb3B0aW9ucyB0byBlbmFibGUgRXNwcmVzc28gd2hlbiBjaGFyZ2luZyBhbmQvb3Igd2hlbiBkb2NrZWQgdG8gZXh0ZXJuYWwgbW9uaXRvcnMgYW5kIHRvIGFsbG93IHRlbXBvcmFyaWx5IG92ZXJyaWRpbmcgdGhlIGRvY2tpbmcgc3VwcG9ydCB3aXRob3V0IGFmZmVjdGluZyB0aGUgc3RvcmVkIHN0YXRlLlxuXG5Fc3ByZXNzbyBpcyBhIGZvcmsgb2YgdGhlIENhZmZlaW5lIGV4dGVuc2lvbi5cblxuUGxlYXNlIGxlYXZlIGZlZWRiYWNrIG9yIHJlcG9ydCBpc3N1ZXMgdGhyb3VnaCB0aGUgRXh0ZW5zaW9uIEhvbWVwYWdlIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWVzcHJlc3NvIiwKICAibmFtZSI6ICJFc3ByZXNzbyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5lc3ByZXNzbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9jb2FkbXVua2VlL2dub21lLXNoZWxsLWV4dGVuc2lvbi1lc3ByZXNzbyIsCiAgInV1aWQiOiAiZXNwcmVzc29AY29hZG11bmtlZS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "42": {"version": "7", "sha256": "126nf3rk3v8aabaxjz3znj71ib1kqqzz3zi2ql17v0r7hpm53wi9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVzcHJlc3NvIGRpc2FibGVzIHRoZSB1c3VhbCBhdXRvIHN1c3BlbmQgYW5kIHNjcmVlbnNhdmVyIGZ1bmN0aW9uYWxpdHkgYW5kIG9wdGlvbmFsbHkgTmlnaHQgTGlnaHQgd2l0aCBvcHRpb25zIHRvIHNob3cgYW4gRXNwcmVzc28gaWNvbiBpbiB0aGUgdG9wIHBhbmVsLCB0byBlbmFibGUgRXNwcmVzc28gd2hlbiBhIGZ1bGxzY3JlZW4gYXBwbGljYXRpb24gaXMgcnVubmluZywgdG8gcmVzdG9yZSBzdGF0ZSBhY3Jvc3MgcmVib290cywgdG8gcHJvdmlkZSBub3RpZmljYXRpb25zLCB0byBlbmFibGUgRXNwcmVzc28gd2hlbiBzcGVjaWZpYyBhcHBsaWNhdGlvbnMgYXJlIHJ1bm5pbmcsIG9yIHRvIHBhdXNlIE5pZ2h0IExpZ2h0IHdoZW4gRXNwcmVzc28gaXMgZW5hYmxlZCBvciBvbmx5IHdoZW4gc3BlY2lmaWMgYXBwbGljYXRpb25zIGFyZSBydW5uaW5nLiBFc3ByZXNzbyBhbHNvIHByb3ZpZGVzIHNvbWUgc3VwcG9ydCBmb3IgZG9ja2luZyBzdGF0aW9ucyBpbmNsdWRpbmcgb3B0aW9ucyB0byBlbmFibGUgRXNwcmVzc28gd2hlbiBjaGFyZ2luZyBhbmQvb3Igd2hlbiBkb2NrZWQgdG8gZXh0ZXJuYWwgbW9uaXRvcnMgYW5kIHRvIGFsbG93IHRlbXBvcmFyaWx5IG92ZXJyaWRpbmcgdGhlIGRvY2tpbmcgc3VwcG9ydCB3aXRob3V0IGFmZmVjdGluZyB0aGUgc3RvcmVkIHN0YXRlLlxuXG5Fc3ByZXNzbyBpcyBhIGZvcmsgb2YgdGhlIENhZmZlaW5lIGV4dGVuc2lvbi5cblxuUGxlYXNlIGxlYXZlIGZlZWRiYWNrIG9yIHJlcG9ydCBpc3N1ZXMgdGhyb3VnaCB0aGUgRXh0ZW5zaW9uIEhvbWVwYWdlIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWVzcHJlc3NvIiwKICAibmFtZSI6ICJFc3ByZXNzbyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5lc3ByZXNzbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9jb2FkbXVua2VlL2dub21lLXNoZWxsLWV4dGVuc2lvbi1lc3ByZXNzbyIsCiAgInV1aWQiOiAiZXNwcmVzc29AY29hZG11bmtlZS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "43": {"version": "7", "sha256": "126nf3rk3v8aabaxjz3znj71ib1kqqzz3zi2ql17v0r7hpm53wi9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVzcHJlc3NvIGRpc2FibGVzIHRoZSB1c3VhbCBhdXRvIHN1c3BlbmQgYW5kIHNjcmVlbnNhdmVyIGZ1bmN0aW9uYWxpdHkgYW5kIG9wdGlvbmFsbHkgTmlnaHQgTGlnaHQgd2l0aCBvcHRpb25zIHRvIHNob3cgYW4gRXNwcmVzc28gaWNvbiBpbiB0aGUgdG9wIHBhbmVsLCB0byBlbmFibGUgRXNwcmVzc28gd2hlbiBhIGZ1bGxzY3JlZW4gYXBwbGljYXRpb24gaXMgcnVubmluZywgdG8gcmVzdG9yZSBzdGF0ZSBhY3Jvc3MgcmVib290cywgdG8gcHJvdmlkZSBub3RpZmljYXRpb25zLCB0byBlbmFibGUgRXNwcmVzc28gd2hlbiBzcGVjaWZpYyBhcHBsaWNhdGlvbnMgYXJlIHJ1bm5pbmcsIG9yIHRvIHBhdXNlIE5pZ2h0IExpZ2h0IHdoZW4gRXNwcmVzc28gaXMgZW5hYmxlZCBvciBvbmx5IHdoZW4gc3BlY2lmaWMgYXBwbGljYXRpb25zIGFyZSBydW5uaW5nLiBFc3ByZXNzbyBhbHNvIHByb3ZpZGVzIHNvbWUgc3VwcG9ydCBmb3IgZG9ja2luZyBzdGF0aW9ucyBpbmNsdWRpbmcgb3B0aW9ucyB0byBlbmFibGUgRXNwcmVzc28gd2hlbiBjaGFyZ2luZyBhbmQvb3Igd2hlbiBkb2NrZWQgdG8gZXh0ZXJuYWwgbW9uaXRvcnMgYW5kIHRvIGFsbG93IHRlbXBvcmFyaWx5IG92ZXJyaWRpbmcgdGhlIGRvY2tpbmcgc3VwcG9ydCB3aXRob3V0IGFmZmVjdGluZyB0aGUgc3RvcmVkIHN0YXRlLlxuXG5Fc3ByZXNzbyBpcyBhIGZvcmsgb2YgdGhlIENhZmZlaW5lIGV4dGVuc2lvbi5cblxuUGxlYXNlIGxlYXZlIGZlZWRiYWNrIG9yIHJlcG9ydCBpc3N1ZXMgdGhyb3VnaCB0aGUgRXh0ZW5zaW9uIEhvbWVwYWdlIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWVzcHJlc3NvIiwKICAibmFtZSI6ICJFc3ByZXNzbyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5lc3ByZXNzbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9jb2FkbXVua2VlL2dub21lLXNoZWxsLWV4dGVuc2lvbi1lc3ByZXNzbyIsCiAgInV1aWQiOiAiZXNwcmVzc29AY29hZG11bmtlZS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
 , {"uuid": "salat-dz@salat-dz.com", "name": "Salat Dz", "pname": "salat-dz", "description": "Show next salat using Salat Dz API", "link": "https://extensions.gnome.org/extension/4136/salat-dz/", "shell_version_map": {"38": {"version": "1", "sha256": "1kga5w2yp375h6lj3fmzr1agg43phyj5f45d7hjv04c405d32p8s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgbmV4dCBzYWxhdCB1c2luZyBTYWxhdCBEeiBBUEkiLAogICJuYW1lIjogIlNhbGF0IER6IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL3NhbGF0LnB5dGhvbmFueXdoZXJlLmNvbSIsCiAgInV1aWQiOiAic2FsYXQtZHpAc2FsYXQtZHouY29tIiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
 , {"uuid": "user-at-host@cmm.github.com", "name": "Add user@host to top panel", "pname": "add-userhost-to-panel", "description": "Adds user@host to the top panel, on the left.\n\nNothing fancy, no support -- fork at will, the thing is very simple.", "link": "https://extensions.gnome.org/extension/4141/add-userhost-to-panel/", "shell_version_map": {"38": {"version": "7", "sha256": "1kpi9zp1lahaps44fy0xxjfjflxhaadczrfnbw0knmwjwby246f4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgdXNlckBob3N0IHRvIHRoZSB0b3AgcGFuZWwsIG9uIHRoZSBsZWZ0LlxuXG5Ob3RoaW5nIGZhbmN5LCBubyBzdXBwb3J0IC0tIGZvcmsgYXQgd2lsbCwgdGhlIHRoaW5nIGlzIHZlcnkgc2ltcGxlLiIsCiAgIm5hbWUiOiAiQWRkIHVzZXJAaG9zdCB0byB0b3AgcGFuZWwiLAogICJvcmlnaW5hbC1hdXRob3IiOiAiZGFuZGFtYW45NiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NtbS9nbm9tZS11c2VyLWF0LWhvc3QiLAogICJ1dWlkIjogInVzZXItYXQtaG9zdEBjbW0uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA3Cn0="}, "40": {"version": "7", "sha256": "1kpi9zp1lahaps44fy0xxjfjflxhaadczrfnbw0knmwjwby246f4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgdXNlckBob3N0IHRvIHRoZSB0b3AgcGFuZWwsIG9uIHRoZSBsZWZ0LlxuXG5Ob3RoaW5nIGZhbmN5LCBubyBzdXBwb3J0IC0tIGZvcmsgYXQgd2lsbCwgdGhlIHRoaW5nIGlzIHZlcnkgc2ltcGxlLiIsCiAgIm5hbWUiOiAiQWRkIHVzZXJAaG9zdCB0byB0b3AgcGFuZWwiLAogICJvcmlnaW5hbC1hdXRob3IiOiAiZGFuZGFtYW45NiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NtbS9nbm9tZS11c2VyLWF0LWhvc3QiLAogICJ1dWlkIjogInVzZXItYXQtaG9zdEBjbW0uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA3Cn0="}, "41": {"version": "7", "sha256": "1kpi9zp1lahaps44fy0xxjfjflxhaadczrfnbw0knmwjwby246f4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgdXNlckBob3N0IHRvIHRoZSB0b3AgcGFuZWwsIG9uIHRoZSBsZWZ0LlxuXG5Ob3RoaW5nIGZhbmN5LCBubyBzdXBwb3J0IC0tIGZvcmsgYXQgd2lsbCwgdGhlIHRoaW5nIGlzIHZlcnkgc2ltcGxlLiIsCiAgIm5hbWUiOiAiQWRkIHVzZXJAaG9zdCB0byB0b3AgcGFuZWwiLAogICJvcmlnaW5hbC1hdXRob3IiOiAiZGFuZGFtYW45NiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NtbS9nbm9tZS11c2VyLWF0LWhvc3QiLAogICJ1dWlkIjogInVzZXItYXQtaG9zdEBjbW0uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA3Cn0="}, "42": {"version": "7", "sha256": "1kpi9zp1lahaps44fy0xxjfjflxhaadczrfnbw0knmwjwby246f4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgdXNlckBob3N0IHRvIHRoZSB0b3AgcGFuZWwsIG9uIHRoZSBsZWZ0LlxuXG5Ob3RoaW5nIGZhbmN5LCBubyBzdXBwb3J0IC0tIGZvcmsgYXQgd2lsbCwgdGhlIHRoaW5nIGlzIHZlcnkgc2ltcGxlLiIsCiAgIm5hbWUiOiAiQWRkIHVzZXJAaG9zdCB0byB0b3AgcGFuZWwiLAogICJvcmlnaW5hbC1hdXRob3IiOiAiZGFuZGFtYW45NiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NtbS9nbm9tZS11c2VyLWF0LWhvc3QiLAogICJ1dWlkIjogInVzZXItYXQtaG9zdEBjbW0uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA3Cn0="}}}
-, {"uuid": "vertical-overview@RensAlthuis.github.com", "name": "Vertical overview", "pname": "vertical-overview", "description": "Bringing back vertically stacked workspaces\n\n", "link": "https://extensions.gnome.org/extension/4144/vertical-overview/", "shell_version_map": {"40": {"version": "8", "sha256": "0jiwqv07gvrwy7yzk7fn3zxx0jvplhwnza5hw2c1hb3mjfj85bqa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5naW5nIGJhY2sgdmVydGljYWxseSBzdGFja2VkIHdvcmtzcGFjZXNcblxuIiwKICAibmFtZSI6ICJWZXJ0aWNhbCBvdmVydmlldyIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJyZW5zLmFsdGh1aXNAZ21haWwuY29tIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAidmVydGljYWwtb3ZlcnZpZXdAUmVuc0FsdGh1aXMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "41": {"version": "8", "sha256": "0jiwqv07gvrwy7yzk7fn3zxx0jvplhwnza5hw2c1hb3mjfj85bqa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5naW5nIGJhY2sgdmVydGljYWxseSBzdGFja2VkIHdvcmtzcGFjZXNcblxuIiwKICAibmFtZSI6ICJWZXJ0aWNhbCBvdmVydmlldyIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJyZW5zLmFsdGh1aXNAZ21haWwuY29tIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAidmVydGljYWwtb3ZlcnZpZXdAUmVuc0FsdGh1aXMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "42": {"version": "9", "sha256": "1aj3sisq06lp5m2i1hzgmaiz76jp6ikf9a3q4rqlz4gclssg1alf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5naW5nIGJhY2sgdmVydGljYWxseSBzdGFja2VkIHdvcmtzcGFjZXNcblxuIiwKICAibmFtZSI6ICJWZXJ0aWNhbCBvdmVydmlldyIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJyZW5zLmFsdGh1aXNAZ21haWwuY29tIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ2ZXJ0aWNhbC1vdmVydmlld0BSZW5zQWx0aHVpcy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
+, {"uuid": "vertical-overview@RensAlthuis.github.com", "name": "Vertical overview", "pname": "vertical-overview", "description": "Bringing back vertically stacked workspaces", "link": "https://extensions.gnome.org/extension/4144/vertical-overview/", "shell_version_map": {"40": {"version": "8", "sha256": "07rpi2qbncyywhnwnhzkc2f9f3k0i7zxj9nbig1ngsf9xpapshwh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5naW5nIGJhY2sgdmVydGljYWxseSBzdGFja2VkIHdvcmtzcGFjZXMiLAogICJuYW1lIjogIlZlcnRpY2FsIG92ZXJ2aWV3IiwKICAib3JpZ2luYWwtYXV0aG9yIjogInJlbnMuYWx0aHVpc0BnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JlbnNBbHRodWlzL3ZlcnRpY2FsLW92ZXJ2aWV3IiwKICAidXVpZCI6ICJ2ZXJ0aWNhbC1vdmVydmlld0BSZW5zQWx0aHVpcy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "41": {"version": "8", "sha256": "07rpi2qbncyywhnwnhzkc2f9f3k0i7zxj9nbig1ngsf9xpapshwh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5naW5nIGJhY2sgdmVydGljYWxseSBzdGFja2VkIHdvcmtzcGFjZXMiLAogICJuYW1lIjogIlZlcnRpY2FsIG92ZXJ2aWV3IiwKICAib3JpZ2luYWwtYXV0aG9yIjogInJlbnMuYWx0aHVpc0BnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JlbnNBbHRodWlzL3ZlcnRpY2FsLW92ZXJ2aWV3IiwKICAidXVpZCI6ICJ2ZXJ0aWNhbC1vdmVydmlld0BSZW5zQWx0aHVpcy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "42": {"version": "10", "sha256": "08hjrzw3dq43al891q4swlcpp3z1pdjjxmhjh9a54sd2isl8syv5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5naW5nIGJhY2sgdmVydGljYWxseSBzdGFja2VkIHdvcmtzcGFjZXMiLAogICJuYW1lIjogIlZlcnRpY2FsIG92ZXJ2aWV3IiwKICAib3JpZ2luYWwtYXV0aG9yIjogInJlbnMuYWx0aHVpc0BnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JlbnNBbHRodWlzL3ZlcnRpY2FsLW92ZXJ2aWV3IiwKICAidXVpZCI6ICJ2ZXJ0aWNhbC1vdmVydmlld0BSZW5zQWx0aHVpcy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEwCn0="}, "43": {"version": "10", "sha256": "08hjrzw3dq43al891q4swlcpp3z1pdjjxmhjh9a54sd2isl8syv5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5naW5nIGJhY2sgdmVydGljYWxseSBzdGFja2VkIHdvcmtzcGFjZXMiLAogICJuYW1lIjogIlZlcnRpY2FsIG92ZXJ2aWV3IiwKICAib3JpZ2luYWwtYXV0aG9yIjogInJlbnMuYWx0aHVpc0BnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JlbnNBbHRodWlzL3ZlcnRpY2FsLW92ZXJ2aWV3IiwKICAidXVpZCI6ICJ2ZXJ0aWNhbC1vdmVydmlld0BSZW5zQWx0aHVpcy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
 , {"uuid": "workspace-isolated_app-switcher@lestibournes", "name": "Workspace-Isolated App-Switcher", "pname": "workspace-isolated-app-switcher", "description": "App-Switcher modification that shows only the apps that are running on the current workspace. Fork of App-Switcher Current Workspace First by fawtytoo.", "link": "https://extensions.gnome.org/extension/4145/workspace-isolated-app-switcher/", "shell_version_map": {"38": {"version": "1", "sha256": "0bcf8l1sb73f0ggvavkfjk10s67k7w4f3yr0s9inil6z8pbk7bsr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcC1Td2l0Y2hlciBtb2RpZmljYXRpb24gdGhhdCBzaG93cyBvbmx5IHRoZSBhcHBzIHRoYXQgYXJlIHJ1bm5pbmcgb24gdGhlIGN1cnJlbnQgd29ya3NwYWNlLiBGb3JrIG9mIEFwcC1Td2l0Y2hlciBDdXJyZW50IFdvcmtzcGFjZSBGaXJzdCBieSBmYXd0eXRvby4iLAogICJuYW1lIjogIldvcmtzcGFjZS1Jc29sYXRlZCBBcHAtU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAid29ya3NwYWNlLWlzb2xhdGVkX2FwcC1zd2l0Y2hlckBsZXN0aWJvdXJuZXMiLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"uuid": "kubectl@infinicode.de", "name": "Kubectl Extension", "pname": "kubectl-extension", "description": "Quick panel access to kubernetes resources utilizing kubectl CLI", "link": "https://extensions.gnome.org/extension/4147/kubectl-extension/", "shell_version_map": {"38": {"version": "6", "sha256": "1avc1k7lhzwnzys5296s4wcj71bvzngn2r1bsjxjdfdam58vpghw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlF1aWNrIHBhbmVsIGFjY2VzcyB0byBrdWJlcm5ldGVzIHJlc291cmNlcyB1dGlsaXppbmcga3ViZWN0bCBDTEkiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJrdWJlY3RsQGluZmluaWNvZGUuZGUiLAogICJsb2NhbGVkaXIiOiAiL3Vzci9sb2NhbC9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIkt1YmVjdGwgRXh0ZW5zaW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmt1YmVjdGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9jaW5hdGljL2t1YmVjdGwtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJrdWJlY3RsQGluZmluaWNvZGUuZGUiLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "6", "sha256": "1avc1k7lhzwnzys5296s4wcj71bvzngn2r1bsjxjdfdam58vpghw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlF1aWNrIHBhbmVsIGFjY2VzcyB0byBrdWJlcm5ldGVzIHJlc291cmNlcyB1dGlsaXppbmcga3ViZWN0bCBDTEkiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJrdWJlY3RsQGluZmluaWNvZGUuZGUiLAogICJsb2NhbGVkaXIiOiAiL3Vzci9sb2NhbC9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIkt1YmVjdGwgRXh0ZW5zaW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmt1YmVjdGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9jaW5hdGljL2t1YmVjdGwtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJrdWJlY3RsQGluZmluaWNvZGUuZGUiLAogICJ2ZXJzaW9uIjogNgp9"}, "41": {"version": "6", "sha256": "1avc1k7lhzwnzys5296s4wcj71bvzngn2r1bsjxjdfdam58vpghw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlF1aWNrIHBhbmVsIGFjY2VzcyB0byBrdWJlcm5ldGVzIHJlc291cmNlcyB1dGlsaXppbmcga3ViZWN0bCBDTEkiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJrdWJlY3RsQGluZmluaWNvZGUuZGUiLAogICJsb2NhbGVkaXIiOiAiL3Vzci9sb2NhbC9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIkt1YmVjdGwgRXh0ZW5zaW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmt1YmVjdGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9jaW5hdGljL2t1YmVjdGwtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJrdWJlY3RsQGluZmluaWNvZGUuZGUiLAogICJ2ZXJzaW9uIjogNgp9"}, "42": {"version": "6", "sha256": "1avc1k7lhzwnzys5296s4wcj71bvzngn2r1bsjxjdfdam58vpghw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlF1aWNrIHBhbmVsIGFjY2VzcyB0byBrdWJlcm5ldGVzIHJlc291cmNlcyB1dGlsaXppbmcga3ViZWN0bCBDTEkiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJrdWJlY3RsQGluZmluaWNvZGUuZGUiLAogICJsb2NhbGVkaXIiOiAiL3Vzci9sb2NhbC9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIkt1YmVjdGwgRXh0ZW5zaW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmt1YmVjdGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9jaW5hdGljL2t1YmVjdGwtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJrdWJlY3RsQGluZmluaWNvZGUuZGUiLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "alwaysshowworkspacethumbnails@alynx.one", "name": "Always Show Workspace Thumbnails", "pname": "always-show-workspace-thumbnails", "description": "Always show workspace thumbnails even there is only one workspace.", "link": "https://extensions.gnome.org/extension/4156/always-show-workspace-thumbnails/", "shell_version_map": {"40": {"version": "4", "sha256": "0yxg7dmlkm4islaz1y3as5p04b80r192vc3n4zx0ga1nnp80w8p9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBzaG93IHdvcmtzcGFjZSB0aHVtYm5haWxzIGV2ZW4gdGhlcmUgaXMgb25seSBvbmUgd29ya3NwYWNlLiIsCiAgIm5hbWUiOiAiQWx3YXlzIFNob3cgV29ya3NwYWNlIFRodW1ibmFpbHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9BbHlueFpob3UvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWFsd2F5cy1zaG93LXdvcmtzcGFjZS10aHVtYm5haWxzLyIsCiAgInV1aWQiOiAiYWx3YXlzc2hvd3dvcmtzcGFjZXRodW1ibmFpbHNAYWx5bngub25lIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "0yxg7dmlkm4islaz1y3as5p04b80r192vc3n4zx0ga1nnp80w8p9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBzaG93IHdvcmtzcGFjZSB0aHVtYm5haWxzIGV2ZW4gdGhlcmUgaXMgb25seSBvbmUgd29ya3NwYWNlLiIsCiAgIm5hbWUiOiAiQWx3YXlzIFNob3cgV29ya3NwYWNlIFRodW1ibmFpbHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9BbHlueFpob3UvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWFsd2F5cy1zaG93LXdvcmtzcGFjZS10aHVtYm5haWxzLyIsCiAgInV1aWQiOiAiYWx3YXlzc2hvd3dvcmtzcGFjZXRodW1ibmFpbHNAYWx5bngub25lIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "42": {"version": "4", "sha256": "0yxg7dmlkm4islaz1y3as5p04b80r192vc3n4zx0ga1nnp80w8p9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBzaG93IHdvcmtzcGFjZSB0aHVtYm5haWxzIGV2ZW4gdGhlcmUgaXMgb25seSBvbmUgd29ya3NwYWNlLiIsCiAgIm5hbWUiOiAiQWx3YXlzIFNob3cgV29ya3NwYWNlIFRodW1ibmFpbHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9BbHlueFpob3UvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWFsd2F5cy1zaG93LXdvcmtzcGFjZS10aHVtYm5haWxzLyIsCiAgInV1aWQiOiAiYWx3YXlzc2hvd3dvcmtzcGFjZXRodW1ibmFpbHNAYWx5bngub25lIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
@@ -511,7 +511,7 @@
 , {"uuid": "eclipse@blackjackshellac.ca", "name": "eclipse", "pname": "eclipse", "description": "eclipse clipboard interface with item encryption\n\nAdded encryption of clipboard items. Encrypted items can be\nsaved to disk in a folder of your choice. These items are persisted\nbetween sessions using openssl to encrypt the content.\n\nEclipse uses dbus to communicate with the gpaste daemon.\n\nThe following utilities are required,\n\n# for example, on fedora (add gpaste-ui for gpaste settings gui)\n$ sudo dnf install gpaste openssl\n# ubuntu\n$ sudo apt install gpaste openssl\n\nNow works with Gpaste 1 and Gpaste 2 on GS 3.36, 3.38 and 40\n\nIf updating the extension reports an ERROR it should work after the next reboot or if you logout and login again. If you're not running on Wayland you should be able to just restart the shell (Alt+F2,r).\n\nPlease report issues on github.\n", "link": "https://extensions.gnome.org/extension/4246/eclipse/", "shell_version_map": {"38": {"version": "8", "sha256": "09j5f8p23m4v2bdad582497r194z05x4izc2wywp9nhv1nldcs3n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImVjbGlwc2UgY2xpcGJvYXJkIGludGVyZmFjZSB3aXRoIGl0ZW0gZW5jcnlwdGlvblxuXG5BZGRlZCBlbmNyeXB0aW9uIG9mIGNsaXBib2FyZCBpdGVtcy4gRW5jcnlwdGVkIGl0ZW1zIGNhbiBiZVxuc2F2ZWQgdG8gZGlzayBpbiBhIGZvbGRlciBvZiB5b3VyIGNob2ljZS4gVGhlc2UgaXRlbXMgYXJlIHBlcnNpc3RlZFxuYmV0d2VlbiBzZXNzaW9ucyB1c2luZyBvcGVuc3NsIHRvIGVuY3J5cHQgdGhlIGNvbnRlbnQuXG5cbkVjbGlwc2UgdXNlcyBkYnVzIHRvIGNvbW11bmljYXRlIHdpdGggdGhlIGdwYXN0ZSBkYWVtb24uXG5cblRoZSBmb2xsb3dpbmcgdXRpbGl0aWVzIGFyZSByZXF1aXJlZCxcblxuIyBmb3IgZXhhbXBsZSwgb24gZmVkb3JhIChhZGQgZ3Bhc3RlLXVpIGZvciBncGFzdGUgc2V0dGluZ3MgZ3VpKVxuJCBzdWRvIGRuZiBpbnN0YWxsIGdwYXN0ZSBvcGVuc3NsXG4jIHVidW50dVxuJCBzdWRvIGFwdCBpbnN0YWxsIGdwYXN0ZSBvcGVuc3NsXG5cbk5vdyB3b3JrcyB3aXRoIEdwYXN0ZSAxIGFuZCBHcGFzdGUgMiBvbiBHUyAzLjM2LCAzLjM4IGFuZCA0MFxuXG5JZiB1cGRhdGluZyB0aGUgZXh0ZW5zaW9uIHJlcG9ydHMgYW4gRVJST1IgaXQgc2hvdWxkIHdvcmsgYWZ0ZXIgdGhlIG5leHQgcmVib290IG9yIGlmIHlvdSBsb2dvdXQgYW5kIGxvZ2luIGFnYWluLiBJZiB5b3UncmUgbm90IHJ1bm5pbmcgb24gV2F5bGFuZCB5b3Ugc2hvdWxkIGJlIGFibGUgdG8ganVzdCByZXN0YXJ0IHRoZSBzaGVsbCAoQWx0K0YyLHIpLlxuXG5QbGVhc2UgcmVwb3J0IGlzc3VlcyBvbiBnaXRodWIuXG4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJlY2xpcHNlLWJsYWNramFja3NoZWxsYWMiLAogICJuYW1lIjogImVjbGlwc2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZWNsaXBzZS1ibGFja2phY2tzaGVsbGFjIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JsYWNramFja3NoZWxsYWMvZWNsaXBzZSIsCiAgInV1aWQiOiAiZWNsaXBzZUBibGFja2phY2tzaGVsbGFjLmNhIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "40": {"version": "8", "sha256": "09j5f8p23m4v2bdad582497r194z05x4izc2wywp9nhv1nldcs3n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImVjbGlwc2UgY2xpcGJvYXJkIGludGVyZmFjZSB3aXRoIGl0ZW0gZW5jcnlwdGlvblxuXG5BZGRlZCBlbmNyeXB0aW9uIG9mIGNsaXBib2FyZCBpdGVtcy4gRW5jcnlwdGVkIGl0ZW1zIGNhbiBiZVxuc2F2ZWQgdG8gZGlzayBpbiBhIGZvbGRlciBvZiB5b3VyIGNob2ljZS4gVGhlc2UgaXRlbXMgYXJlIHBlcnNpc3RlZFxuYmV0d2VlbiBzZXNzaW9ucyB1c2luZyBvcGVuc3NsIHRvIGVuY3J5cHQgdGhlIGNvbnRlbnQuXG5cbkVjbGlwc2UgdXNlcyBkYnVzIHRvIGNvbW11bmljYXRlIHdpdGggdGhlIGdwYXN0ZSBkYWVtb24uXG5cblRoZSBmb2xsb3dpbmcgdXRpbGl0aWVzIGFyZSByZXF1aXJlZCxcblxuIyBmb3IgZXhhbXBsZSwgb24gZmVkb3JhIChhZGQgZ3Bhc3RlLXVpIGZvciBncGFzdGUgc2V0dGluZ3MgZ3VpKVxuJCBzdWRvIGRuZiBpbnN0YWxsIGdwYXN0ZSBvcGVuc3NsXG4jIHVidW50dVxuJCBzdWRvIGFwdCBpbnN0YWxsIGdwYXN0ZSBvcGVuc3NsXG5cbk5vdyB3b3JrcyB3aXRoIEdwYXN0ZSAxIGFuZCBHcGFzdGUgMiBvbiBHUyAzLjM2LCAzLjM4IGFuZCA0MFxuXG5JZiB1cGRhdGluZyB0aGUgZXh0ZW5zaW9uIHJlcG9ydHMgYW4gRVJST1IgaXQgc2hvdWxkIHdvcmsgYWZ0ZXIgdGhlIG5leHQgcmVib290IG9yIGlmIHlvdSBsb2dvdXQgYW5kIGxvZ2luIGFnYWluLiBJZiB5b3UncmUgbm90IHJ1bm5pbmcgb24gV2F5bGFuZCB5b3Ugc2hvdWxkIGJlIGFibGUgdG8ganVzdCByZXN0YXJ0IHRoZSBzaGVsbCAoQWx0K0YyLHIpLlxuXG5QbGVhc2UgcmVwb3J0IGlzc3VlcyBvbiBnaXRodWIuXG4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJlY2xpcHNlLWJsYWNramFja3NoZWxsYWMiLAogICJuYW1lIjogImVjbGlwc2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZWNsaXBzZS1ibGFja2phY2tzaGVsbGFjIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JsYWNramFja3NoZWxsYWMvZWNsaXBzZSIsCiAgInV1aWQiOiAiZWNsaXBzZUBibGFja2phY2tzaGVsbGFjLmNhIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
 , {"uuid": "audio-switcher@albertomosconi", "name": "Audio Switcher 40", "pname": "audio-switcher-40", "description": "Adds a switch for choosing audio input/output to the system menu in GNOME 40. (Makes InputSlider always visible)", "link": "https://extensions.gnome.org/extension/4248/audio-switcher-40/", "shell_version_map": {"38": {"version": "4", "sha256": "0mvc4f6i7vsqijq8l4adcixdyycfxmd7kvw13d5h0vx4hg6vam1g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBzd2l0Y2ggZm9yIGNob29zaW5nIGF1ZGlvIGlucHV0L291dHB1dCB0byB0aGUgc3lzdGVtIG1lbnUgaW4gR05PTUUgNDAuIChNYWtlcyBJbnB1dFNsaWRlciBhbHdheXMgdmlzaWJsZSkiLAogICJuYW1lIjogIkF1ZGlvIFN3aXRjaGVyIDQwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4xIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cDovL2dpdGh1Yi5jb20vYWxiZXJ0b21vc2NvbmkvYXVkaW8tc3dpdGNoZXIiLAogICJ1dWlkIjogImF1ZGlvLXN3aXRjaGVyQGFsYmVydG9tb3Njb25pIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "4", "sha256": "0mvc4f6i7vsqijq8l4adcixdyycfxmd7kvw13d5h0vx4hg6vam1g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBzd2l0Y2ggZm9yIGNob29zaW5nIGF1ZGlvIGlucHV0L291dHB1dCB0byB0aGUgc3lzdGVtIG1lbnUgaW4gR05PTUUgNDAuIChNYWtlcyBJbnB1dFNsaWRlciBhbHdheXMgdmlzaWJsZSkiLAogICJuYW1lIjogIkF1ZGlvIFN3aXRjaGVyIDQwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4xIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cDovL2dpdGh1Yi5jb20vYWxiZXJ0b21vc2NvbmkvYXVkaW8tc3dpdGNoZXIiLAogICJ1dWlkIjogImF1ZGlvLXN3aXRjaGVyQGFsYmVydG9tb3Njb25pIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "shell-configurator@adeswanta", "name": "Shell Configurator", "pname": "shell-configurator", "description": "Configure and customize GNOME Shell with advanced settings.", "link": "https://extensions.gnome.org/extension/4254/shell-configurator/", "shell_version_map": {"38": {"version": "5", "sha256": "08nsdp92q8xb5p5bbqws7727vxvifzyv015igz2z04z2mqr0xc9f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvZGVuYW1lIjogIldoaXRlc21va2UiLAogICJkZXNjcmlwdGlvbiI6ICJDb25maWd1cmUgYW5kIGN1c3RvbWl6ZSBHTk9NRSBTaGVsbCB3aXRoIGFkdmFuY2VkIHNldHRpbmdzLiIsCiAgImdldHRleHQtZG9tYWluIjogInNoZWxsLWNvbmZpZ3VyYXRvciIsCiAgImluc3RhbGwtdHlwZSI6ICJ1c2VyIiwKICAibmFtZSI6ICJTaGVsbCBDb25maWd1cmF0b3IiLAogICJyZWxlYXNlLXN0YXRlIjogInN0YWJsZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2FkZXN3YW50YVRlY2hzL3NoZWxsLWNvbmZpZ3VyYXRvciIsCiAgInV1aWQiOiAic2hlbGwtY29uZmlndXJhdG9yQGFkZXN3YW50YSIsCiAgInZlcnNpb24iOiA1Cn0="}, "40": {"version": "5", "sha256": "08nsdp92q8xb5p5bbqws7727vxvifzyv015igz2z04z2mqr0xc9f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvZGVuYW1lIjogIldoaXRlc21va2UiLAogICJkZXNjcmlwdGlvbiI6ICJDb25maWd1cmUgYW5kIGN1c3RvbWl6ZSBHTk9NRSBTaGVsbCB3aXRoIGFkdmFuY2VkIHNldHRpbmdzLiIsCiAgImdldHRleHQtZG9tYWluIjogInNoZWxsLWNvbmZpZ3VyYXRvciIsCiAgImluc3RhbGwtdHlwZSI6ICJ1c2VyIiwKICAibmFtZSI6ICJTaGVsbCBDb25maWd1cmF0b3IiLAogICJyZWxlYXNlLXN0YXRlIjogInN0YWJsZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2FkZXN3YW50YVRlY2hzL3NoZWxsLWNvbmZpZ3VyYXRvciIsCiAgInV1aWQiOiAic2hlbGwtY29uZmlndXJhdG9yQGFkZXN3YW50YSIsCiAgInZlcnNpb24iOiA1Cn0="}, "41": {"version": "5", "sha256": "08nsdp92q8xb5p5bbqws7727vxvifzyv015igz2z04z2mqr0xc9f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvZGVuYW1lIjogIldoaXRlc21va2UiLAogICJkZXNjcmlwdGlvbiI6ICJDb25maWd1cmUgYW5kIGN1c3RvbWl6ZSBHTk9NRSBTaGVsbCB3aXRoIGFkdmFuY2VkIHNldHRpbmdzLiIsCiAgImdldHRleHQtZG9tYWluIjogInNoZWxsLWNvbmZpZ3VyYXRvciIsCiAgImluc3RhbGwtdHlwZSI6ICJ1c2VyIiwKICAibmFtZSI6ICJTaGVsbCBDb25maWd1cmF0b3IiLAogICJyZWxlYXNlLXN0YXRlIjogInN0YWJsZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2FkZXN3YW50YVRlY2hzL3NoZWxsLWNvbmZpZ3VyYXRvciIsCiAgInV1aWQiOiAic2hlbGwtY29uZmlndXJhdG9yQGFkZXN3YW50YSIsCiAgInZlcnNpb24iOiA1Cn0="}, "42": {"version": "5", "sha256": "08nsdp92q8xb5p5bbqws7727vxvifzyv015igz2z04z2mqr0xc9f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvZGVuYW1lIjogIldoaXRlc21va2UiLAogICJkZXNjcmlwdGlvbiI6ICJDb25maWd1cmUgYW5kIGN1c3RvbWl6ZSBHTk9NRSBTaGVsbCB3aXRoIGFkdmFuY2VkIHNldHRpbmdzLiIsCiAgImdldHRleHQtZG9tYWluIjogInNoZWxsLWNvbmZpZ3VyYXRvciIsCiAgImluc3RhbGwtdHlwZSI6ICJ1c2VyIiwKICAibmFtZSI6ICJTaGVsbCBDb25maWd1cmF0b3IiLAogICJyZWxlYXNlLXN0YXRlIjogInN0YWJsZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2FkZXN3YW50YVRlY2hzL3NoZWxsLWNvbmZpZ3VyYXRvciIsCiAgInV1aWQiOiAic2hlbGwtY29uZmlndXJhdG9yQGFkZXN3YW50YSIsCiAgInZlcnNpb24iOiA1Cn0="}}}
-, {"uuid": "io.github.mreditor.gnome-shell-extensions.scroll-panel", "name": "Scroll Panel", "pname": "scroll-panel", "description": "This extension allows switching between windows or workspaces by scrolling Gnome Shell topbar with mouse (both in overview and workspace modes).", "link": "https://extensions.gnome.org/extension/4257/scroll-panel/", "shell_version_map": {"40": {"version": "8", "sha256": "1xvmwk0r3rqpzjzgj4k9m8wmlly4y4z5miznkskayi4wa4wm0bcx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGFsbG93cyBzd2l0Y2hpbmcgYmV0d2VlbiB3aW5kb3dzIG9yIHdvcmtzcGFjZXMgYnkgc2Nyb2xsaW5nIEdub21lIFNoZWxsIHRvcGJhciB3aXRoIG1vdXNlIChib3RoIGluIG92ZXJ2aWV3IGFuZCB3b3Jrc3BhY2UgbW9kZXMpLiIsCiAgImdldHRleHQtZG9tYWluIjogImlvLmdpdGh1Yi5tcmVkaXRvci5nbm9tZS1zaGVsbC1leHRlbnNpb25zLnNjcm9sbC1wYW5lbCIsCiAgIm5hbWUiOiAiU2Nyb2xsIFBhbmVsIiwKICAic2VtYW50aWMtdmVyc2lvbiI6ICI0LjEuNitnaXQtNmE2ZWZlYSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJpby5naXRodWIubXJlZGl0b3IuZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5zY3JvbGwtcGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tckVEaXRvci9nbm9tZS1zaGVsbC1leHRlbnNpb24tc2Nyb2xsLXBhbmVsIiwKICAidXVpZCI6ICJpby5naXRodWIubXJlZGl0b3IuZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5zY3JvbGwtcGFuZWwiLAogICJ2ZXJzaW9uIjogOAp9"}, "41": {"version": "8", "sha256": "1xvmwk0r3rqpzjzgj4k9m8wmlly4y4z5miznkskayi4wa4wm0bcx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGFsbG93cyBzd2l0Y2hpbmcgYmV0d2VlbiB3aW5kb3dzIG9yIHdvcmtzcGFjZXMgYnkgc2Nyb2xsaW5nIEdub21lIFNoZWxsIHRvcGJhciB3aXRoIG1vdXNlIChib3RoIGluIG92ZXJ2aWV3IGFuZCB3b3Jrc3BhY2UgbW9kZXMpLiIsCiAgImdldHRleHQtZG9tYWluIjogImlvLmdpdGh1Yi5tcmVkaXRvci5nbm9tZS1zaGVsbC1leHRlbnNpb25zLnNjcm9sbC1wYW5lbCIsCiAgIm5hbWUiOiAiU2Nyb2xsIFBhbmVsIiwKICAic2VtYW50aWMtdmVyc2lvbiI6ICI0LjEuNitnaXQtNmE2ZWZlYSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJpby5naXRodWIubXJlZGl0b3IuZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5zY3JvbGwtcGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tckVEaXRvci9nbm9tZS1zaGVsbC1leHRlbnNpb24tc2Nyb2xsLXBhbmVsIiwKICAidXVpZCI6ICJpby5naXRodWIubXJlZGl0b3IuZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5zY3JvbGwtcGFuZWwiLAogICJ2ZXJzaW9uIjogOAp9"}, "42": {"version": "8", "sha256": "1xvmwk0r3rqpzjzgj4k9m8wmlly4y4z5miznkskayi4wa4wm0bcx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGFsbG93cyBzd2l0Y2hpbmcgYmV0d2VlbiB3aW5kb3dzIG9yIHdvcmtzcGFjZXMgYnkgc2Nyb2xsaW5nIEdub21lIFNoZWxsIHRvcGJhciB3aXRoIG1vdXNlIChib3RoIGluIG92ZXJ2aWV3IGFuZCB3b3Jrc3BhY2UgbW9kZXMpLiIsCiAgImdldHRleHQtZG9tYWluIjogImlvLmdpdGh1Yi5tcmVkaXRvci5nbm9tZS1zaGVsbC1leHRlbnNpb25zLnNjcm9sbC1wYW5lbCIsCiAgIm5hbWUiOiAiU2Nyb2xsIFBhbmVsIiwKICAic2VtYW50aWMtdmVyc2lvbiI6ICI0LjEuNitnaXQtNmE2ZWZlYSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJpby5naXRodWIubXJlZGl0b3IuZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5zY3JvbGwtcGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tckVEaXRvci9nbm9tZS1zaGVsbC1leHRlbnNpb24tc2Nyb2xsLXBhbmVsIiwKICAidXVpZCI6ICJpby5naXRodWIubXJlZGl0b3IuZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5zY3JvbGwtcGFuZWwiLAogICJ2ZXJzaW9uIjogOAp9"}}}
+, {"uuid": "io.github.mreditor.gnome-shell-extensions.scroll-panel", "name": "Scroll Panel", "pname": "scroll-panel", "description": "This extension allows switching between windows or workspaces by scrolling Gnome Shell topbar with mouse (both in overview and workspace modes).", "link": "https://extensions.gnome.org/extension/4257/scroll-panel/", "shell_version_map": {"40": {"version": "10", "sha256": "116prj9lw2iryj2vlv9lrzb0n2qnnr2skphcxmah3jyh4v7vrb2b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGFsbG93cyBzd2l0Y2hpbmcgYmV0d2VlbiB3aW5kb3dzIG9yIHdvcmtzcGFjZXMgYnkgc2Nyb2xsaW5nIEdub21lIFNoZWxsIHRvcGJhciB3aXRoIG1vdXNlIChib3RoIGluIG92ZXJ2aWV3IGFuZCB3b3Jrc3BhY2UgbW9kZXMpLiIsCiAgImdldHRleHQtZG9tYWluIjogImlvLmdpdGh1Yi5tcmVkaXRvci5nbm9tZS1zaGVsbC1leHRlbnNpb25zLnNjcm9sbC1wYW5lbCIsCiAgIm5hbWUiOiAiU2Nyb2xsIFBhbmVsIiwKICAic2VtYW50aWMtdmVyc2lvbiI6ICI0LjEuNytnaXQtYWJiYjljMiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJpby5naXRodWIubXJlZGl0b3IuZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5zY3JvbGwtcGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbXJFRGl0b3IvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNjcm9sbC1wYW5lbCIsCiAgInV1aWQiOiAiaW8uZ2l0aHViLm1yZWRpdG9yLmdub21lLXNoZWxsLWV4dGVuc2lvbnMuc2Nyb2xsLXBhbmVsIiwKICAidmVyc2lvbiI6IDEwCn0="}, "41": {"version": "10", "sha256": "116prj9lw2iryj2vlv9lrzb0n2qnnr2skphcxmah3jyh4v7vrb2b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGFsbG93cyBzd2l0Y2hpbmcgYmV0d2VlbiB3aW5kb3dzIG9yIHdvcmtzcGFjZXMgYnkgc2Nyb2xsaW5nIEdub21lIFNoZWxsIHRvcGJhciB3aXRoIG1vdXNlIChib3RoIGluIG92ZXJ2aWV3IGFuZCB3b3Jrc3BhY2UgbW9kZXMpLiIsCiAgImdldHRleHQtZG9tYWluIjogImlvLmdpdGh1Yi5tcmVkaXRvci5nbm9tZS1zaGVsbC1leHRlbnNpb25zLnNjcm9sbC1wYW5lbCIsCiAgIm5hbWUiOiAiU2Nyb2xsIFBhbmVsIiwKICAic2VtYW50aWMtdmVyc2lvbiI6ICI0LjEuNytnaXQtYWJiYjljMiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJpby5naXRodWIubXJlZGl0b3IuZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5zY3JvbGwtcGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbXJFRGl0b3IvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNjcm9sbC1wYW5lbCIsCiAgInV1aWQiOiAiaW8uZ2l0aHViLm1yZWRpdG9yLmdub21lLXNoZWxsLWV4dGVuc2lvbnMuc2Nyb2xsLXBhbmVsIiwKICAidmVyc2lvbiI6IDEwCn0="}, "42": {"version": "10", "sha256": "116prj9lw2iryj2vlv9lrzb0n2qnnr2skphcxmah3jyh4v7vrb2b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGFsbG93cyBzd2l0Y2hpbmcgYmV0d2VlbiB3aW5kb3dzIG9yIHdvcmtzcGFjZXMgYnkgc2Nyb2xsaW5nIEdub21lIFNoZWxsIHRvcGJhciB3aXRoIG1vdXNlIChib3RoIGluIG92ZXJ2aWV3IGFuZCB3b3Jrc3BhY2UgbW9kZXMpLiIsCiAgImdldHRleHQtZG9tYWluIjogImlvLmdpdGh1Yi5tcmVkaXRvci5nbm9tZS1zaGVsbC1leHRlbnNpb25zLnNjcm9sbC1wYW5lbCIsCiAgIm5hbWUiOiAiU2Nyb2xsIFBhbmVsIiwKICAic2VtYW50aWMtdmVyc2lvbiI6ICI0LjEuNytnaXQtYWJiYjljMiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJpby5naXRodWIubXJlZGl0b3IuZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5zY3JvbGwtcGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbXJFRGl0b3IvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNjcm9sbC1wYW5lbCIsCiAgInV1aWQiOiAiaW8uZ2l0aHViLm1yZWRpdG9yLmdub21lLXNoZWxsLWV4dGVuc2lvbnMuc2Nyb2xsLXBhbmVsIiwKICAidmVyc2lvbiI6IDEwCn0="}, "43": {"version": "10", "sha256": "116prj9lw2iryj2vlv9lrzb0n2qnnr2skphcxmah3jyh4v7vrb2b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGFsbG93cyBzd2l0Y2hpbmcgYmV0d2VlbiB3aW5kb3dzIG9yIHdvcmtzcGFjZXMgYnkgc2Nyb2xsaW5nIEdub21lIFNoZWxsIHRvcGJhciB3aXRoIG1vdXNlIChib3RoIGluIG92ZXJ2aWV3IGFuZCB3b3Jrc3BhY2UgbW9kZXMpLiIsCiAgImdldHRleHQtZG9tYWluIjogImlvLmdpdGh1Yi5tcmVkaXRvci5nbm9tZS1zaGVsbC1leHRlbnNpb25zLnNjcm9sbC1wYW5lbCIsCiAgIm5hbWUiOiAiU2Nyb2xsIFBhbmVsIiwKICAic2VtYW50aWMtdmVyc2lvbiI6ICI0LjEuNytnaXQtYWJiYjljMiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJpby5naXRodWIubXJlZGl0b3IuZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5zY3JvbGwtcGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbXJFRGl0b3IvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNjcm9sbC1wYW5lbCIsCiAgInV1aWQiOiAiaW8uZ2l0aHViLm1yZWRpdG9yLmdub21lLXNoZWxsLWV4dGVuc2lvbnMuc2Nyb2xsLXBhbmVsIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
 , {"uuid": "wb@pwall.github.com", "name": "WindowButtons", "pname": "windowbuttons", "description": "This is an extension for Gnome 3.38 which puts minimize and close buttons in the top panel.", "link": "https://extensions.gnome.org/extension/4261/windowbuttons/", "shell_version_map": {"38": {"version": "6", "sha256": "1w9j3rmn8yhppfkxrgyfvws2hsr24ki60vi8d73hdhifpnfps2sy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgaXMgYW4gZXh0ZW5zaW9uIGZvciBHbm9tZSAzLjM4IHdoaWNoIHB1dHMgbWluaW1pemUgYW5kIGNsb3NlIGJ1dHRvbnMgaW4gdGhlIHRvcCBwYW5lbC4iLAogICJuYW1lIjogIldpbmRvd0J1dHRvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9QV2FsbDIyMjIvV0IiLAogICJ1dWlkIjogIndiQHB3YWxsLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "rippleremove@slippinggitty", "name": "Ripple Remove", "pname": "ripple-remove", "description": "Removes the ripple effect from the Activities hot corner", "link": "https://extensions.gnome.org/extension/4264/ripple-remove/", "shell_version_map": {"40": {"version": "1", "sha256": "1dnk8nfnv5hp8c11fzhn5vscicij4lk9i1vz25fz6sjc3rn1a9pq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZXMgdGhlIHJpcHBsZSBlZmZlY3QgZnJvbSB0aGUgQWN0aXZpdGllcyBob3QgY29ybmVyIiwKICAibmFtZSI6ICJSaXBwbGUgUmVtb3ZlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5zbGlwcGluZ2l0dHkucmlwcGxlcmVtb3ZlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJyaXBwbGVyZW1vdmVAc2xpcHBpbmdnaXR0eSIsCiAgInZlcnNpb24iOiAxCn0="}}}
 , {"uuid": "quickmenu@slippinggitty", "name": "Quick Menu [DEAD]", "pname": "quick-menu", "description": "This is a fork of fedoramenu (which is a fork of Big Sur Menu by fausto) that scrubs references of Fedora by replacing the icon with the GNOME logo.\n\nQuick Menu is a panel applet similar to the Apple menu found on macOS.\n\nEDIT: This extension's purpose is dead. Check out Tofu Menu, which is fedoramenu, but with the ability to change the icon. https://extensions.gnome.org/extension/4272/tofu-menu/", "link": "https://extensions.gnome.org/extension/4266/quick-menu/", "shell_version_map": {"40": {"version": "1", "sha256": "1qla029n79366a7xvg2d9v0wa7272bqj40ggvbjrfsbd8x066aca", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgaXMgYSBmb3JrIG9mIGZlZG9yYW1lbnUgKHdoaWNoIGlzIGEgZm9yayBvZiBCaWcgU3VyIE1lbnUgYnkgZmF1c3RvKSB0aGF0IHNjcnVicyByZWZlcmVuY2VzIG9mIEZlZG9yYSBieSByZXBsYWNpbmcgdGhlIGljb24gd2l0aCB0aGUgR05PTUUgbG9nby5cblxuUXVpY2sgTWVudSBpcyBhIHBhbmVsIGFwcGxldCBzaW1pbGFyIHRvIHRoZSBBcHBsZSBtZW51IGZvdW5kIG9uIG1hY09TLlxuXG5FRElUOiBUaGlzIGV4dGVuc2lvbidzIHB1cnBvc2UgaXMgZGVhZC4gQ2hlY2sgb3V0IFRvZnUgTWVudSwgd2hpY2ggaXMgZmVkb3JhbWVudSwgYnV0IHdpdGggdGhlIGFiaWxpdHkgdG8gY2hhbmdlIHRoZSBpY29uLiBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi80MjcyL3RvZnUtbWVudS8iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJxdWljay1tZW51IiwKICAibmFtZSI6ICJRdWljayBNZW51IFtERUFEXSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuc2xpcHBpbmdpdHR5LnF1aWNrLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vU2xpcHBpbmdHaXR0eS9xdWlja21lbnUiLAogICJ1dWlkIjogInF1aWNrbWVudUBzbGlwcGluZ2dpdHR5IiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
@@ -537,7 +537,7 @@
 , {"uuid": "ideapad-mode@annexhack.inceptive.ru", "name": "ideapad mode", "pname": "ideapad-mode", "description": "Chargning mode indicator for laptops. Allows to switch the charging mode from conservative or healthy to normal mode. Indicates also which mode you are using now. Works on Lenovo Slim 7.\n\nPlease Report Problems or issues on Gitlab at:\n\nhttps://gitlab.com/annexhack/conservation-mode-lenovo", "link": "https://extensions.gnome.org/extension/4331/ideapad-mode/", "shell_version_map": {"40": {"version": "4", "sha256": "13yrdgly54bbpx7f23h929mq86nyl716kpa426h4np08g8w4rzb1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYXJnbmluZyBtb2RlIGluZGljYXRvciBmb3IgbGFwdG9wcy4gQWxsb3dzIHRvIHN3aXRjaCB0aGUgY2hhcmdpbmcgbW9kZSBmcm9tIGNvbnNlcnZhdGl2ZSBvciBoZWFsdGh5IHRvIG5vcm1hbCBtb2RlLiBJbmRpY2F0ZXMgYWxzbyB3aGljaCBtb2RlIHlvdSBhcmUgdXNpbmcgbm93LiBXb3JrcyBvbiBMZW5vdm8gU2xpbSA3LlxuXG5QbGVhc2UgUmVwb3J0IFByb2JsZW1zIG9yIGlzc3VlcyBvbiBHaXRsYWIgYXQ6XG5cbmh0dHBzOi8vZ2l0bGFiLmNvbS9hbm5leGhhY2svY29uc2VydmF0aW9uLW1vZGUtbGVub3ZvIiwKICAibmFtZSI6ICJpZGVhcGFkIG1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9hbm5leGhhY2svY29uc2VydmF0aW9uLW1vZGUtbGVub3ZvIiwKICAidXVpZCI6ICJpZGVhcGFkLW1vZGVAYW5uZXhoYWNrLmluY2VwdGl2ZS5ydSIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "13yrdgly54bbpx7f23h929mq86nyl716kpa426h4np08g8w4rzb1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYXJnbmluZyBtb2RlIGluZGljYXRvciBmb3IgbGFwdG9wcy4gQWxsb3dzIHRvIHN3aXRjaCB0aGUgY2hhcmdpbmcgbW9kZSBmcm9tIGNvbnNlcnZhdGl2ZSBvciBoZWFsdGh5IHRvIG5vcm1hbCBtb2RlLiBJbmRpY2F0ZXMgYWxzbyB3aGljaCBtb2RlIHlvdSBhcmUgdXNpbmcgbm93LiBXb3JrcyBvbiBMZW5vdm8gU2xpbSA3LlxuXG5QbGVhc2UgUmVwb3J0IFByb2JsZW1zIG9yIGlzc3VlcyBvbiBHaXRsYWIgYXQ6XG5cbmh0dHBzOi8vZ2l0bGFiLmNvbS9hbm5leGhhY2svY29uc2VydmF0aW9uLW1vZGUtbGVub3ZvIiwKICAibmFtZSI6ICJpZGVhcGFkIG1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9hbm5leGhhY2svY29uc2VydmF0aW9uLW1vZGUtbGVub3ZvIiwKICAidXVpZCI6ICJpZGVhcGFkLW1vZGVAYW5uZXhoYWNrLmluY2VwdGl2ZS5ydSIsCiAgInZlcnNpb24iOiA0Cn0="}, "42": {"version": "4", "sha256": "13yrdgly54bbpx7f23h929mq86nyl716kpa426h4np08g8w4rzb1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYXJnbmluZyBtb2RlIGluZGljYXRvciBmb3IgbGFwdG9wcy4gQWxsb3dzIHRvIHN3aXRjaCB0aGUgY2hhcmdpbmcgbW9kZSBmcm9tIGNvbnNlcnZhdGl2ZSBvciBoZWFsdGh5IHRvIG5vcm1hbCBtb2RlLiBJbmRpY2F0ZXMgYWxzbyB3aGljaCBtb2RlIHlvdSBhcmUgdXNpbmcgbm93LiBXb3JrcyBvbiBMZW5vdm8gU2xpbSA3LlxuXG5QbGVhc2UgUmVwb3J0IFByb2JsZW1zIG9yIGlzc3VlcyBvbiBHaXRsYWIgYXQ6XG5cbmh0dHBzOi8vZ2l0bGFiLmNvbS9hbm5leGhhY2svY29uc2VydmF0aW9uLW1vZGUtbGVub3ZvIiwKICAibmFtZSI6ICJpZGVhcGFkIG1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9hbm5leGhhY2svY29uc2VydmF0aW9uLW1vZGUtbGVub3ZvIiwKICAidXVpZCI6ICJpZGVhcGFkLW1vZGVAYW5uZXhoYWNrLmluY2VwdGl2ZS5ydSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "ubuntu-yaru-appearance@itzlightyhd", "name": "Ubuntu Appearance (GNOME 40)", "pname": "ubuntu-appearance-gnome-40", "description": "Adds a toggle between the default Ubuntu themes on GNOME 40. Forked from https://github.com/Muqtxdir/yaru-remix-theme-toggle.\n\nIt requires the `gnome-shell-extension-prefs` package installed on your Linux environment.", "link": "https://extensions.gnome.org/extension/4335/ubuntu-appearance-gnome-40/", "shell_version_map": {"40": {"version": "1", "sha256": "16068sihwydg99w82nw6qr3lrnq1vh8jl8fbr3q27i3zyds4xyja", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvcnMiOiBbCiAgICAiQXBleGllRGV2ZWxvcG1lbnQiLAogICAgIkl0ekxpZ2h0eUhEIgogIF0sCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSB0b2dnbGUgYmV0d2VlbiB0aGUgZGVmYXVsdCBVYnVudHUgdGhlbWVzIG9uIEdOT01FIDQwLiBGb3JrZWQgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vTXVxdHhkaXIveWFydS1yZW1peC10aGVtZS10b2dnbGUuXG5cbkl0IHJlcXVpcmVzIHRoZSBgZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXByZWZzYCBwYWNrYWdlIGluc3RhbGxlZCBvbiB5b3VyIExpbnV4IGVudmlyb25tZW50LiIsCiAgIm5hbWUiOiAiVWJ1bnR1IEFwcGVhcmFuY2UgKEdOT01FIDQwKSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9BcGV4aWVEZXZlbG9wbWVudC91YnVudHUteWFydS1hcHBlYXJhbmNlIiwKICAidXVpZCI6ICJ1YnVudHUteWFydS1hcHBlYXJhbmNlQGl0emxpZ2h0eWhkIiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
 , {"uuid": "desktopicons-neo@darkdemon", "name": "Desktop Icons: Neo", "pname": "desktop-icons-neo", "description": "This adds desktop icons to GNOME. A fork of Desktop Icons NG with a massive amount of customizations (like icon shapes and curved corners), features, bug fixes, and overall polish.", "link": "https://extensions.gnome.org/extension/4337/desktop-icons-neo/", "shell_version_map": {"38": {"version": "7", "sha256": "1gvpcgvx2d3mkyb4qzyw4d2gw6s700042ld033dix1v3isdb4sn7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgYWRkcyBkZXNrdG9wIGljb25zIHRvIEdOT01FLiBBIGZvcmsgb2YgRGVza3RvcCBJY29ucyBORyB3aXRoIGEgbWFzc2l2ZSBhbW91bnQgb2YgY3VzdG9taXphdGlvbnMgKGxpa2UgaWNvbiBzaGFwZXMgYW5kIGN1cnZlZCBjb3JuZXJzKSwgZmVhdHVyZXMsIGJ1ZyBmaXhlcywgYW5kIG92ZXJhbGwgcG9saXNoLiIsCiAgIm5hbWUiOiAiRGVza3RvcCBJY29uczogTmVvIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vREVNME5Bc3Npc3NhbjcvZGVza3RvcC1pY29ucy1uZW8iLAogICJ1dWlkIjogImRlc2t0b3BpY29ucy1uZW9AZGFya2RlbW9uIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "1gvpcgvx2d3mkyb4qzyw4d2gw6s700042ld033dix1v3isdb4sn7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgYWRkcyBkZXNrdG9wIGljb25zIHRvIEdOT01FLiBBIGZvcmsgb2YgRGVza3RvcCBJY29ucyBORyB3aXRoIGEgbWFzc2l2ZSBhbW91bnQgb2YgY3VzdG9taXphdGlvbnMgKGxpa2UgaWNvbiBzaGFwZXMgYW5kIGN1cnZlZCBjb3JuZXJzKSwgZmVhdHVyZXMsIGJ1ZyBmaXhlcywgYW5kIG92ZXJhbGwgcG9saXNoLiIsCiAgIm5hbWUiOiAiRGVza3RvcCBJY29uczogTmVvIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vREVNME5Bc3Npc3NhbjcvZGVza3RvcC1pY29ucy1uZW8iLAogICJ1dWlkIjogImRlc2t0b3BpY29ucy1uZW9AZGFya2RlbW9uIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "41": {"version": "7", "sha256": "1gvpcgvx2d3mkyb4qzyw4d2gw6s700042ld033dix1v3isdb4sn7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgYWRkcyBkZXNrdG9wIGljb25zIHRvIEdOT01FLiBBIGZvcmsgb2YgRGVza3RvcCBJY29ucyBORyB3aXRoIGEgbWFzc2l2ZSBhbW91bnQgb2YgY3VzdG9taXphdGlvbnMgKGxpa2UgaWNvbiBzaGFwZXMgYW5kIGN1cnZlZCBjb3JuZXJzKSwgZmVhdHVyZXMsIGJ1ZyBmaXhlcywgYW5kIG92ZXJhbGwgcG9saXNoLiIsCiAgIm5hbWUiOiAiRGVza3RvcCBJY29uczogTmVvIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vREVNME5Bc3Npc3NhbjcvZGVza3RvcC1pY29ucy1uZW8iLAogICJ1dWlkIjogImRlc2t0b3BpY29ucy1uZW9AZGFya2RlbW9uIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "42": {"version": "7", "sha256": "1gvpcgvx2d3mkyb4qzyw4d2gw6s700042ld033dix1v3isdb4sn7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgYWRkcyBkZXNrdG9wIGljb25zIHRvIEdOT01FLiBBIGZvcmsgb2YgRGVza3RvcCBJY29ucyBORyB3aXRoIGEgbWFzc2l2ZSBhbW91bnQgb2YgY3VzdG9taXphdGlvbnMgKGxpa2UgaWNvbiBzaGFwZXMgYW5kIGN1cnZlZCBjb3JuZXJzKSwgZmVhdHVyZXMsIGJ1ZyBmaXhlcywgYW5kIG92ZXJhbGwgcG9saXNoLiIsCiAgIm5hbWUiOiAiRGVza3RvcCBJY29uczogTmVvIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vREVNME5Bc3Npc3NhbjcvZGVza3RvcC1pY29ucy1uZW8iLAogICJ1dWlkIjogImRlc2t0b3BpY29ucy1uZW9AZGFya2RlbW9uIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
-, {"uuid": "allowlockedremotedesktop@kamens.us", "name": "Allow Locked Remote Desktop", "pname": "allow-locked-remote-desktop", "description": "Allow remote desktop connections when the screen is locked", "link": "https://extensions.gnome.org/extension/4338/allow-locked-remote-desktop/", "shell_version_map": {"38": {"version": "6", "sha256": "0imfg8camy52qnidh4b1yqdasmmc3xba6d96pa2skw388h71h40j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHJlbW90ZSBkZXNrdG9wIGNvbm5lY3Rpb25zIHdoZW4gdGhlIHNjcmVlbiBpcyBsb2NrZWQiLAogICJuYW1lIjogIkFsbG93IExvY2tlZCBSZW1vdGUgRGVza3RvcCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImFsbG93bG9ja2VkcmVtb3RlZGVza3RvcEBrYW1lbnMudXMiLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "6", "sha256": "0imfg8camy52qnidh4b1yqdasmmc3xba6d96pa2skw388h71h40j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHJlbW90ZSBkZXNrdG9wIGNvbm5lY3Rpb25zIHdoZW4gdGhlIHNjcmVlbiBpcyBsb2NrZWQiLAogICJuYW1lIjogIkFsbG93IExvY2tlZCBSZW1vdGUgRGVza3RvcCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImFsbG93bG9ja2VkcmVtb3RlZGVza3RvcEBrYW1lbnMudXMiLAogICJ2ZXJzaW9uIjogNgp9"}, "41": {"version": "6", "sha256": "0imfg8camy52qnidh4b1yqdasmmc3xba6d96pa2skw388h71h40j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHJlbW90ZSBkZXNrdG9wIGNvbm5lY3Rpb25zIHdoZW4gdGhlIHNjcmVlbiBpcyBsb2NrZWQiLAogICJuYW1lIjogIkFsbG93IExvY2tlZCBSZW1vdGUgRGVza3RvcCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImFsbG93bG9ja2VkcmVtb3RlZGVza3RvcEBrYW1lbnMudXMiLAogICJ2ZXJzaW9uIjogNgp9"}, "42": {"version": "7", "sha256": "04w9kkkpfppajwi0ph14sc8pm8wjf0pd7av84y9ggdybd3i3wh9n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHJlbW90ZSBkZXNrdG9wIGNvbm5lY3Rpb25zIHdoZW4gdGhlIHNjcmVlbiBpcyBsb2NrZWQiLAogICJuYW1lIjogIkFsbG93IExvY2tlZCBSZW1vdGUgRGVza3RvcCIsCiAgInNlc3Npb24tbW9kZXMiOiBbCiAgICAidXNlciIsCiAgICAidW5sb2NrLWRpYWxvZyIKICBdLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImFsbG93bG9ja2VkcmVtb3RlZGVza3RvcEBrYW1lbnMudXMiLAogICJ2ZXJzaW9uIjogNwp9"}}}
+, {"uuid": "allowlockedremotedesktop@kamens.us", "name": "Allow Locked Remote Desktop", "pname": "allow-locked-remote-desktop", "description": "Allow remote desktop connections when the screen is locked", "link": "https://extensions.gnome.org/extension/4338/allow-locked-remote-desktop/", "shell_version_map": {"38": {"version": "6", "sha256": "0imfg8camy52qnidh4b1yqdasmmc3xba6d96pa2skw388h71h40j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHJlbW90ZSBkZXNrdG9wIGNvbm5lY3Rpb25zIHdoZW4gdGhlIHNjcmVlbiBpcyBsb2NrZWQiLAogICJuYW1lIjogIkFsbG93IExvY2tlZCBSZW1vdGUgRGVza3RvcCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImFsbG93bG9ja2VkcmVtb3RlZGVza3RvcEBrYW1lbnMudXMiLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "6", "sha256": "0imfg8camy52qnidh4b1yqdasmmc3xba6d96pa2skw388h71h40j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHJlbW90ZSBkZXNrdG9wIGNvbm5lY3Rpb25zIHdoZW4gdGhlIHNjcmVlbiBpcyBsb2NrZWQiLAogICJuYW1lIjogIkFsbG93IExvY2tlZCBSZW1vdGUgRGVza3RvcCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImFsbG93bG9ja2VkcmVtb3RlZGVza3RvcEBrYW1lbnMudXMiLAogICJ2ZXJzaW9uIjogNgp9"}, "41": {"version": "6", "sha256": "0imfg8camy52qnidh4b1yqdasmmc3xba6d96pa2skw388h71h40j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHJlbW90ZSBkZXNrdG9wIGNvbm5lY3Rpb25zIHdoZW4gdGhlIHNjcmVlbiBpcyBsb2NrZWQiLAogICJuYW1lIjogIkFsbG93IExvY2tlZCBSZW1vdGUgRGVza3RvcCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImFsbG93bG9ja2VkcmVtb3RlZGVza3RvcEBrYW1lbnMudXMiLAogICJ2ZXJzaW9uIjogNgp9"}, "42": {"version": "8", "sha256": "1ba4jxyh4j2avqrzzlsablrr4kvpav19bixgr9gn9gni0mxmp8n3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHJlbW90ZSBkZXNrdG9wIGNvbm5lY3Rpb25zIHdoZW4gdGhlIHNjcmVlbiBpcyBsb2NrZWQiLAogICJuYW1lIjogIkFsbG93IExvY2tlZCBSZW1vdGUgRGVza3RvcCIsCiAgInNlc3Npb24tbW9kZXMiOiBbCiAgICAidXNlciIsCiAgICAidW5sb2NrLWRpYWxvZyIKICBdLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJhbGxvd2xvY2tlZHJlbW90ZWRlc2t0b3BAa2FtZW5zLnVzIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "43": {"version": "8", "sha256": "1ba4jxyh4j2avqrzzlsablrr4kvpav19bixgr9gn9gni0mxmp8n3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHJlbW90ZSBkZXNrdG9wIGNvbm5lY3Rpb25zIHdoZW4gdGhlIHNjcmVlbiBpcyBsb2NrZWQiLAogICJuYW1lIjogIkFsbG93IExvY2tlZCBSZW1vdGUgRGVza3RvcCIsCiAgInNlc3Npb24tbW9kZXMiOiBbCiAgICAidXNlciIsCiAgICAidW5sb2NrLWRpYWxvZyIKICBdLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJhbGxvd2xvY2tlZHJlbW90ZWRlc2t0b3BAa2FtZW5zLnVzIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
 , {"uuid": "mumble-ping@maweil.github.com", "name": "MumblePing", "pname": "mumbleping", "description": "Displays how many users are currently online on a mumble server", "link": "https://extensions.gnome.org/extension/4341/mumbleping/", "shell_version_map": {"38": {"version": "3", "sha256": "1lbpscd4lyhm9hy7w287pqaam73qgx756dyk17zysksg3fjhp3w8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIGhvdyBtYW55IHVzZXJzIGFyZSBjdXJyZW50bHkgb25saW5lIG9uIGEgbXVtYmxlIHNlcnZlciIsCiAgImdldHRleHQtZG9tYWluIjogIm11bWJsZS1waW5nIiwKICAibmFtZSI6ICJNdW1ibGVQaW5nIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm11bWJsZS1waW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWF3ZWlsL2dub21lLXNoZWxsLWV4dGVuc2lvbi1tdW1ibGUtcGluZyIsCiAgInV1aWQiOiAibXVtYmxlLXBpbmdAbWF3ZWlsLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "3", "sha256": "1lbpscd4lyhm9hy7w287pqaam73qgx756dyk17zysksg3fjhp3w8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIGhvdyBtYW55IHVzZXJzIGFyZSBjdXJyZW50bHkgb25saW5lIG9uIGEgbXVtYmxlIHNlcnZlciIsCiAgImdldHRleHQtZG9tYWluIjogIm11bWJsZS1waW5nIiwKICAibmFtZSI6ICJNdW1ibGVQaW5nIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm11bWJsZS1waW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWF3ZWlsL2dub21lLXNoZWxsLWV4dGVuc2lvbi1tdW1ibGUtcGluZyIsCiAgInV1aWQiOiAibXVtYmxlLXBpbmdAbWF3ZWlsLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}, "41": {"version": "3", "sha256": "1lbpscd4lyhm9hy7w287pqaam73qgx756dyk17zysksg3fjhp3w8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIGhvdyBtYW55IHVzZXJzIGFyZSBjdXJyZW50bHkgb25saW5lIG9uIGEgbXVtYmxlIHNlcnZlciIsCiAgImdldHRleHQtZG9tYWluIjogIm11bWJsZS1waW5nIiwKICAibmFtZSI6ICJNdW1ibGVQaW5nIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm11bWJsZS1waW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWF3ZWlsL2dub21lLXNoZWxsLWV4dGVuc2lvbi1tdW1ibGUtcGluZyIsCiAgInV1aWQiOiAibXVtYmxlLXBpbmdAbWF3ZWlsLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}, "42": {"version": "3", "sha256": "1lbpscd4lyhm9hy7w287pqaam73qgx756dyk17zysksg3fjhp3w8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIGhvdyBtYW55IHVzZXJzIGFyZSBjdXJyZW50bHkgb25saW5lIG9uIGEgbXVtYmxlIHNlcnZlciIsCiAgImdldHRleHQtZG9tYWluIjogIm11bWJsZS1waW5nIiwKICAibmFtZSI6ICJNdW1ibGVQaW5nIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm11bWJsZS1waW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWF3ZWlsL2dub21lLXNoZWxsLWV4dGVuc2lvbi1tdW1ibGUtcGluZyIsCiAgInV1aWQiOiAibXVtYmxlLXBpbmdAbWF3ZWlsLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}}}
 , {"uuid": "simply.workspaces@andyrichardson.dev", "name": "Simply Workspaces", "pname": "simply-workspaces", "description": "Workspace indication with an i3/polybar style.", "link": "https://extensions.gnome.org/extension/4343/simply-workspaces/", "shell_version_map": {"40": {"version": "6", "sha256": "0pz14h5pf774bl4ij9qg7d8cgc60kyv0q5gmf9isgk38javqdwis", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0aW9uIHdpdGggYW4gaTMvcG9seWJhciBzdHlsZS4iLAogICJuYW1lIjogIlNpbXBseSBXb3Jrc3BhY2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYW5keXJpY2hhcmRzb24vc2ltcGx5LXdvcmtzcGFjZXMiLAogICJ1dWlkIjogInNpbXBseS53b3Jrc3BhY2VzQGFuZHlyaWNoYXJkc29uLmRldiIsCiAgInZlcnNpb24iOiA2Cn0="}, "41": {"version": "6", "sha256": "0pz14h5pf774bl4ij9qg7d8cgc60kyv0q5gmf9isgk38javqdwis", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0aW9uIHdpdGggYW4gaTMvcG9seWJhciBzdHlsZS4iLAogICJuYW1lIjogIlNpbXBseSBXb3Jrc3BhY2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYW5keXJpY2hhcmRzb24vc2ltcGx5LXdvcmtzcGFjZXMiLAogICJ1dWlkIjogInNpbXBseS53b3Jrc3BhY2VzQGFuZHlyaWNoYXJkc29uLmRldiIsCiAgInZlcnNpb24iOiA2Cn0="}, "42": {"version": "6", "sha256": "0pz14h5pf774bl4ij9qg7d8cgc60kyv0q5gmf9isgk38javqdwis", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0aW9uIHdpdGggYW4gaTMvcG9seWJhciBzdHlsZS4iLAogICJuYW1lIjogIlNpbXBseSBXb3Jrc3BhY2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYW5keXJpY2hhcmRzb24vc2ltcGx5LXdvcmtzcGFjZXMiLAogICJ1dWlkIjogInNpbXBseS53b3Jrc3BhY2VzQGFuZHlyaWNoYXJkc29uLmRldiIsCiAgInZlcnNpb24iOiA2Cn0="}}}
 , {"uuid": "nonblockingswitcher@scottworley.com", "name": "Non-Blocking Switcher", "pname": "non-blocking-switcher", "description": "Application switching oughtn't stop all other keyboard shortcuts", "link": "https://extensions.gnome.org/extension/4347/non-blocking-switcher/", "shell_version_map": {"40": {"version": "2", "sha256": "05a59fi1454kxh2q8p5qp3an7ss243v3d67jm37k6xggwd59v5fn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcGxpY2F0aW9uIHN3aXRjaGluZyBvdWdodG4ndCBzdG9wIGFsbCBvdGhlciBrZXlib2FyZCBzaG9ydGN1dHMiLAogICJuYW1lIjogIk5vbi1CbG9ja2luZyBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMiIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9jaHVjay9ub24tYmxvY2tpbmctc3dpdGNoZXIiLAogICJ1dWlkIjogIm5vbmJsb2NraW5nc3dpdGNoZXJAc2NvdHR3b3JsZXkuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
@@ -582,19 +582,19 @@
 , {"uuid": "sp-tray@sp-tray.esenliyim.github.com", "name": "spotify-tray", "pname": "spotify-tray", "description": "Adds a button to the panel that shows information Spotify playback. For bug reports, feature requests, translation contributions, etc., please visit the extension's github page.", "link": "https://extensions.gnome.org/extension/4472/spotify-tray/", "shell_version_map": {"38": {"version": "17", "sha256": "11gyy143n5bvsrydlr4hvy3ggn49k1pxk1d7x11dafic8xxwv5cl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBidXR0b24gdG8gdGhlIHBhbmVsIHRoYXQgc2hvd3MgaW5mb3JtYXRpb24gU3BvdGlmeSBwbGF5YmFjay4gRm9yIGJ1ZyByZXBvcnRzLCBmZWF0dXJlIHJlcXVlc3RzLCB0cmFuc2xhdGlvbiBjb250cmlidXRpb25zLCBldGMuLCBwbGVhc2UgdmlzaXQgdGhlIGV4dGVuc2lvbidzIGdpdGh1YiBwYWdlLiIsCiAgIm5hbWUiOiAic3BvdGlmeS10cmF5IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNwLXRyYXkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9lc2VubGl5aW0vc3AtdHJheSIsCiAgInV1aWQiOiAic3AtdHJheUBzcC10cmF5LmVzZW5saXlpbS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE3Cn0="}, "40": {"version": "17", "sha256": "11gyy143n5bvsrydlr4hvy3ggn49k1pxk1d7x11dafic8xxwv5cl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBidXR0b24gdG8gdGhlIHBhbmVsIHRoYXQgc2hvd3MgaW5mb3JtYXRpb24gU3BvdGlmeSBwbGF5YmFjay4gRm9yIGJ1ZyByZXBvcnRzLCBmZWF0dXJlIHJlcXVlc3RzLCB0cmFuc2xhdGlvbiBjb250cmlidXRpb25zLCBldGMuLCBwbGVhc2UgdmlzaXQgdGhlIGV4dGVuc2lvbidzIGdpdGh1YiBwYWdlLiIsCiAgIm5hbWUiOiAic3BvdGlmeS10cmF5IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNwLXRyYXkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9lc2VubGl5aW0vc3AtdHJheSIsCiAgInV1aWQiOiAic3AtdHJheUBzcC10cmF5LmVzZW5saXlpbS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE3Cn0="}, "41": {"version": "17", "sha256": "11gyy143n5bvsrydlr4hvy3ggn49k1pxk1d7x11dafic8xxwv5cl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBidXR0b24gdG8gdGhlIHBhbmVsIHRoYXQgc2hvd3MgaW5mb3JtYXRpb24gU3BvdGlmeSBwbGF5YmFjay4gRm9yIGJ1ZyByZXBvcnRzLCBmZWF0dXJlIHJlcXVlc3RzLCB0cmFuc2xhdGlvbiBjb250cmlidXRpb25zLCBldGMuLCBwbGVhc2UgdmlzaXQgdGhlIGV4dGVuc2lvbidzIGdpdGh1YiBwYWdlLiIsCiAgIm5hbWUiOiAic3BvdGlmeS10cmF5IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNwLXRyYXkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9lc2VubGl5aW0vc3AtdHJheSIsCiAgInV1aWQiOiAic3AtdHJheUBzcC10cmF5LmVzZW5saXlpbS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE3Cn0="}, "42": {"version": "17", "sha256": "11gyy143n5bvsrydlr4hvy3ggn49k1pxk1d7x11dafic8xxwv5cl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBidXR0b24gdG8gdGhlIHBhbmVsIHRoYXQgc2hvd3MgaW5mb3JtYXRpb24gU3BvdGlmeSBwbGF5YmFjay4gRm9yIGJ1ZyByZXBvcnRzLCBmZWF0dXJlIHJlcXVlc3RzLCB0cmFuc2xhdGlvbiBjb250cmlidXRpb25zLCBldGMuLCBwbGVhc2UgdmlzaXQgdGhlIGV4dGVuc2lvbidzIGdpdGh1YiBwYWdlLiIsCiAgIm5hbWUiOiAic3BvdGlmeS10cmF5IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNwLXRyYXkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9lc2VubGl5aW0vc3AtdHJheSIsCiAgInV1aWQiOiAic3AtdHJheUBzcC10cmF5LmVzZW5saXlpbS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE3Cn0="}}}
 , {"uuid": "aws-default-profile-switcher@kevin-chappell.com", "name": "AWS Default Profile Switcher", "pname": "aws-default-profile-switcher", "description": "Gnome shell extension for quickly setting named profiles as the default", "link": "https://extensions.gnome.org/extension/4473/aws-default-profile-switcher/", "shell_version_map": {"38": {"version": "4", "sha256": "1imgp4d42g05j88y8ilvfcfdvygaqchi9hivvap1kyshbl08ys3z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdub21lIHNoZWxsIGV4dGVuc2lvbiBmb3IgcXVpY2tseSBzZXR0aW5nIG5hbWVkIHByb2ZpbGVzIGFzIHRoZSBkZWZhdWx0IiwKICAibmFtZSI6ICJBV1MgRGVmYXVsdCBQcm9maWxlIFN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2V2aW5jaGFwcGVsbC9hd3MtZGVmYXVsdC1wcm9maWxlLXN3aXRjaGVyIiwKICAidXVpZCI6ICJhd3MtZGVmYXVsdC1wcm9maWxlLXN3aXRjaGVyQGtldmluLWNoYXBwZWxsLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "4", "sha256": "1imgp4d42g05j88y8ilvfcfdvygaqchi9hivvap1kyshbl08ys3z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdub21lIHNoZWxsIGV4dGVuc2lvbiBmb3IgcXVpY2tseSBzZXR0aW5nIG5hbWVkIHByb2ZpbGVzIGFzIHRoZSBkZWZhdWx0IiwKICAibmFtZSI6ICJBV1MgRGVmYXVsdCBQcm9maWxlIFN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2V2aW5jaGFwcGVsbC9hd3MtZGVmYXVsdC1wcm9maWxlLXN3aXRjaGVyIiwKICAidXVpZCI6ICJhd3MtZGVmYXVsdC1wcm9maWxlLXN3aXRjaGVyQGtldmluLWNoYXBwZWxsLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "1imgp4d42g05j88y8ilvfcfdvygaqchi9hivvap1kyshbl08ys3z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdub21lIHNoZWxsIGV4dGVuc2lvbiBmb3IgcXVpY2tseSBzZXR0aW5nIG5hbWVkIHByb2ZpbGVzIGFzIHRoZSBkZWZhdWx0IiwKICAibmFtZSI6ICJBV1MgRGVmYXVsdCBQcm9maWxlIFN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2V2aW5jaGFwcGVsbC9hd3MtZGVmYXVsdC1wcm9maWxlLXN3aXRjaGVyIiwKICAidXVpZCI6ICJhd3MtZGVmYXVsdC1wcm9maWxlLXN3aXRjaGVyQGtldmluLWNoYXBwZWxsLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}, "42": {"version": "4", "sha256": "1imgp4d42g05j88y8ilvfcfdvygaqchi9hivvap1kyshbl08ys3z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdub21lIHNoZWxsIGV4dGVuc2lvbiBmb3IgcXVpY2tseSBzZXR0aW5nIG5hbWVkIHByb2ZpbGVzIGFzIHRoZSBkZWZhdWx0IiwKICAibmFtZSI6ICJBV1MgRGVmYXVsdCBQcm9maWxlIFN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2V2aW5jaGFwcGVsbC9hd3MtZGVmYXVsdC1wcm9maWxlLXN3aXRjaGVyIiwKICAidXVpZCI6ICJhd3MtZGVmYXVsdC1wcm9maWxlLXN3aXRjaGVyQGtldmluLWNoYXBwZWxsLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "hide-panel-for-fullscreen-windows-only@github.freder", "name": "Hide panel (only when active window is fullscreen)", "pname": "hide-panel-only-when-active-window-is-fullscreen", "description": "hide top panel only when a fullscreen application has focus", "link": "https://extensions.gnome.org/extension/4475/hide-panel-only-when-active-window-is-fullscreen/", "shell_version_map": {"40": {"version": "2", "sha256": "1hd5agdjq73qiqip0m3grmlxk8klp26pd71cz555414mi3f9mww3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImhpZGUgdG9wIHBhbmVsIG9ubHkgd2hlbiBhIGZ1bGxzY3JlZW4gYXBwbGljYXRpb24gaGFzIGZvY3VzIiwKICAibmFtZSI6ICJIaWRlIHBhbmVsIChvbmx5IHdoZW4gYWN0aXZlIHdpbmRvdyBpcyBmdWxsc2NyZWVuKSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mcmVkZXIvaGlkZS1wYW5lbC1mb3ItZnVsbHNjcmVlbi13aW5kb3dzLW9ubHkiLAogICJ1dWlkIjogImhpZGUtcGFuZWwtZm9yLWZ1bGxzY3JlZW4td2luZG93cy1vbmx5QGdpdGh1Yi5mcmVkZXIiLAogICJ2ZXJzaW9uIjogMgp9"}}}
-, {"uuid": "netspeed@alynx.one", "name": "Net Speed", "pname": "net-speed", "description": "Show current net speed on panel.", "link": "https://extensions.gnome.org/extension/4478/net-speed/", "shell_version_map": {"40": {"version": "2", "sha256": "0j48ai7nqkpr0ymypsicdp7nw59hx9rgya8qws58wx56q9bznl69", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBuZXQgc3BlZWQgb24gcGFuZWwuIiwKICAibmFtZSI6ICJOZXQgU3BlZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIm5ldHNwZWVkQGFseW54Lm9uZSIsCiAgInZlcnNpb24iOiAyCn0="}}}
-, {"uuid": "forge@jmmaranan.com", "name": "Forge", "pname": "forge", "description": "Tiling and window manager for GNOME\n\nCHANGES\n\n - Dynamic Workspaces\n\n - Drag drop enhancements\n\n Please report bugs/issues on https://github.com/jmmaranan/forge/issues", "link": "https://extensions.gnome.org/extension/4481/forge/", "shell_version_map": {"38": {"version": "38", "sha256": "02q1h2dxr8j0fnbl7ay5jfm7dc0pi91qcnqasjn4z3vjxllc4yyh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGluZyBhbmQgd2luZG93IG1hbmFnZXIgZm9yIEdOT01FXG5cbkNIQU5HRVNcblxuIC0gRHluYW1pYyBXb3Jrc3BhY2VzXG5cbiAtIERyYWcgZHJvcCBlbmhhbmNlbWVudHNcblxuIFBsZWFzZSByZXBvcnQgYnVncy9pc3N1ZXMgb24gaHR0cHM6Ly9naXRodWIuY29tL2ptbWFyYW5hbi9mb3JnZS9pc3N1ZXMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmb3JnZSIsCiAgIm5hbWUiOiAiRm9yZ2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZm9yZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qbW1hcmFuYW4vZm9yZ2UiLAogICJ1dWlkIjogImZvcmdlQGptbWFyYW5hbi5jb20iLAogICJ2ZXJzaW9uIjogMzgKfQ=="}, "40": {"version": "56", "sha256": "1frvxyzc43xr7ygn9k9gvdc26fc5y9mb5yf1bj1b5ph54nsj3vll", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGluZyBhbmQgd2luZG93IG1hbmFnZXIgZm9yIEdOT01FXG5cbkNIQU5HRVNcblxuIC0gRHluYW1pYyBXb3Jrc3BhY2VzXG5cbiAtIERyYWcgZHJvcCBlbmhhbmNlbWVudHNcblxuIFBsZWFzZSByZXBvcnQgYnVncy9pc3N1ZXMgb24gaHR0cHM6Ly9naXRodWIuY29tL2ptbWFyYW5hbi9mb3JnZS9pc3N1ZXMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmb3JnZSIsCiAgIm5hbWUiOiAiRm9yZ2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZm9yZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vam1tYXJhbmFuL2ZvcmdlIiwKICAidXVpZCI6ICJmb3JnZUBqbW1hcmFuYW4uY29tIiwKICAidmVyc2lvbiI6IDU2Cn0="}, "41": {"version": "56", "sha256": "1frvxyzc43xr7ygn9k9gvdc26fc5y9mb5yf1bj1b5ph54nsj3vll", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGluZyBhbmQgd2luZG93IG1hbmFnZXIgZm9yIEdOT01FXG5cbkNIQU5HRVNcblxuIC0gRHluYW1pYyBXb3Jrc3BhY2VzXG5cbiAtIERyYWcgZHJvcCBlbmhhbmNlbWVudHNcblxuIFBsZWFzZSByZXBvcnQgYnVncy9pc3N1ZXMgb24gaHR0cHM6Ly9naXRodWIuY29tL2ptbWFyYW5hbi9mb3JnZS9pc3N1ZXMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmb3JnZSIsCiAgIm5hbWUiOiAiRm9yZ2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZm9yZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vam1tYXJhbmFuL2ZvcmdlIiwKICAidXVpZCI6ICJmb3JnZUBqbW1hcmFuYW4uY29tIiwKICAidmVyc2lvbiI6IDU2Cn0="}, "42": {"version": "56", "sha256": "1frvxyzc43xr7ygn9k9gvdc26fc5y9mb5yf1bj1b5ph54nsj3vll", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGluZyBhbmQgd2luZG93IG1hbmFnZXIgZm9yIEdOT01FXG5cbkNIQU5HRVNcblxuIC0gRHluYW1pYyBXb3Jrc3BhY2VzXG5cbiAtIERyYWcgZHJvcCBlbmhhbmNlbWVudHNcblxuIFBsZWFzZSByZXBvcnQgYnVncy9pc3N1ZXMgb24gaHR0cHM6Ly9naXRodWIuY29tL2ptbWFyYW5hbi9mb3JnZS9pc3N1ZXMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmb3JnZSIsCiAgIm5hbWUiOiAiRm9yZ2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZm9yZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vam1tYXJhbmFuL2ZvcmdlIiwKICAidXVpZCI6ICJmb3JnZUBqbW1hcmFuYW4uY29tIiwKICAidmVyc2lvbiI6IDU2Cn0="}, "43": {"version": "56", "sha256": "1frvxyzc43xr7ygn9k9gvdc26fc5y9mb5yf1bj1b5ph54nsj3vll", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGluZyBhbmQgd2luZG93IG1hbmFnZXIgZm9yIEdOT01FXG5cbkNIQU5HRVNcblxuIC0gRHluYW1pYyBXb3Jrc3BhY2VzXG5cbiAtIERyYWcgZHJvcCBlbmhhbmNlbWVudHNcblxuIFBsZWFzZSByZXBvcnQgYnVncy9pc3N1ZXMgb24gaHR0cHM6Ly9naXRodWIuY29tL2ptbWFyYW5hbi9mb3JnZS9pc3N1ZXMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmb3JnZSIsCiAgIm5hbWUiOiAiRm9yZ2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZm9yZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vam1tYXJhbmFuL2ZvcmdlIiwKICAidXVpZCI6ICJmb3JnZUBqbW1hcmFuYW4uY29tIiwKICAidmVyc2lvbiI6IDU2Cn0="}}}
+, {"uuid": "netspeed@alynx.one", "name": "Net Speed", "pname": "net-speed", "description": "Show current net speed on panel.", "link": "https://extensions.gnome.org/extension/4478/net-speed/", "shell_version_map": {"40": {"version": "3", "sha256": "00wq0lspj2fms4a16qpla1gl78j7na78f43haxi3l3z7la998lcx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBuZXQgc3BlZWQgb24gcGFuZWwuIiwKICAibmFtZSI6ICJOZXQgU3BlZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAibmV0c3BlZWRAYWx5bngub25lIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "41": {"version": "3", "sha256": "00wq0lspj2fms4a16qpla1gl78j7na78f43haxi3l3z7la998lcx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBuZXQgc3BlZWQgb24gcGFuZWwuIiwKICAibmFtZSI6ICJOZXQgU3BlZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAibmV0c3BlZWRAYWx5bngub25lIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "42": {"version": "3", "sha256": "00wq0lspj2fms4a16qpla1gl78j7na78f43haxi3l3z7la998lcx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBuZXQgc3BlZWQgb24gcGFuZWwuIiwKICAibmFtZSI6ICJOZXQgU3BlZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAibmV0c3BlZWRAYWx5bngub25lIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
+, {"uuid": "forge@jmmaranan.com", "name": "Forge", "pname": "forge", "description": "Tiling and window manager for GNOME\n\nCHANGES\n\n - Dynamic Workspaces\n\n - Drag drop enhancements\n\n Please report bugs/issues on https://github.com/jmmaranan/forge/issues", "link": "https://extensions.gnome.org/extension/4481/forge/", "shell_version_map": {"38": {"version": "38", "sha256": "02q1h2dxr8j0fnbl7ay5jfm7dc0pi91qcnqasjn4z3vjxllc4yyh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGluZyBhbmQgd2luZG93IG1hbmFnZXIgZm9yIEdOT01FXG5cbkNIQU5HRVNcblxuIC0gRHluYW1pYyBXb3Jrc3BhY2VzXG5cbiAtIERyYWcgZHJvcCBlbmhhbmNlbWVudHNcblxuIFBsZWFzZSByZXBvcnQgYnVncy9pc3N1ZXMgb24gaHR0cHM6Ly9naXRodWIuY29tL2ptbWFyYW5hbi9mb3JnZS9pc3N1ZXMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmb3JnZSIsCiAgIm5hbWUiOiAiRm9yZ2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZm9yZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qbW1hcmFuYW4vZm9yZ2UiLAogICJ1dWlkIjogImZvcmdlQGptbWFyYW5hbi5jb20iLAogICJ2ZXJzaW9uIjogMzgKfQ=="}, "40": {"version": "57", "sha256": "1x6kzi4cm5i7x205611pd6d64bn4xg8kqbpa5ycpk69klbfam3rf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGluZyBhbmQgd2luZG93IG1hbmFnZXIgZm9yIEdOT01FXG5cbkNIQU5HRVNcblxuIC0gRHluYW1pYyBXb3Jrc3BhY2VzXG5cbiAtIERyYWcgZHJvcCBlbmhhbmNlbWVudHNcblxuIFBsZWFzZSByZXBvcnQgYnVncy9pc3N1ZXMgb24gaHR0cHM6Ly9naXRodWIuY29tL2ptbWFyYW5hbi9mb3JnZS9pc3N1ZXMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmb3JnZSIsCiAgIm5hbWUiOiAiRm9yZ2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZm9yZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vam1tYXJhbmFuL2ZvcmdlIiwKICAidXVpZCI6ICJmb3JnZUBqbW1hcmFuYW4uY29tIiwKICAidmVyc2lvbiI6IDU3Cn0="}, "41": {"version": "57", "sha256": "1x6kzi4cm5i7x205611pd6d64bn4xg8kqbpa5ycpk69klbfam3rf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGluZyBhbmQgd2luZG93IG1hbmFnZXIgZm9yIEdOT01FXG5cbkNIQU5HRVNcblxuIC0gRHluYW1pYyBXb3Jrc3BhY2VzXG5cbiAtIERyYWcgZHJvcCBlbmhhbmNlbWVudHNcblxuIFBsZWFzZSByZXBvcnQgYnVncy9pc3N1ZXMgb24gaHR0cHM6Ly9naXRodWIuY29tL2ptbWFyYW5hbi9mb3JnZS9pc3N1ZXMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmb3JnZSIsCiAgIm5hbWUiOiAiRm9yZ2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZm9yZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vam1tYXJhbmFuL2ZvcmdlIiwKICAidXVpZCI6ICJmb3JnZUBqbW1hcmFuYW4uY29tIiwKICAidmVyc2lvbiI6IDU3Cn0="}, "42": {"version": "57", "sha256": "1x6kzi4cm5i7x205611pd6d64bn4xg8kqbpa5ycpk69klbfam3rf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGluZyBhbmQgd2luZG93IG1hbmFnZXIgZm9yIEdOT01FXG5cbkNIQU5HRVNcblxuIC0gRHluYW1pYyBXb3Jrc3BhY2VzXG5cbiAtIERyYWcgZHJvcCBlbmhhbmNlbWVudHNcblxuIFBsZWFzZSByZXBvcnQgYnVncy9pc3N1ZXMgb24gaHR0cHM6Ly9naXRodWIuY29tL2ptbWFyYW5hbi9mb3JnZS9pc3N1ZXMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmb3JnZSIsCiAgIm5hbWUiOiAiRm9yZ2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZm9yZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vam1tYXJhbmFuL2ZvcmdlIiwKICAidXVpZCI6ICJmb3JnZUBqbW1hcmFuYW4uY29tIiwKICAidmVyc2lvbiI6IDU3Cn0="}, "43": {"version": "57", "sha256": "1x6kzi4cm5i7x205611pd6d64bn4xg8kqbpa5ycpk69klbfam3rf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGluZyBhbmQgd2luZG93IG1hbmFnZXIgZm9yIEdOT01FXG5cbkNIQU5HRVNcblxuIC0gRHluYW1pYyBXb3Jrc3BhY2VzXG5cbiAtIERyYWcgZHJvcCBlbmhhbmNlbWVudHNcblxuIFBsZWFzZSByZXBvcnQgYnVncy9pc3N1ZXMgb24gaHR0cHM6Ly9naXRodWIuY29tL2ptbWFyYW5hbi9mb3JnZS9pc3N1ZXMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmb3JnZSIsCiAgIm5hbWUiOiAiRm9yZ2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZm9yZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vam1tYXJhbmFuL2ZvcmdlIiwKICAidXVpZCI6ICJmb3JnZUBqbW1hcmFuYW4uY29tIiwKICAidmVyc2lvbiI6IDU3Cn0="}}}
 , {"uuid": "autonightlight@zefty.github.io", "name": "Auto Night Light", "pname": "auto-night-light", "description": "Automatically adjust night light", "link": "https://extensions.gnome.org/extension/4482/auto-night-light/", "shell_version_map": {"38": {"version": "7", "sha256": "0v76v4z82agn1ay8c0mb2jgnzjf1h9kcp13jhvypcigalfq9qp4n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgYWRqdXN0IG5pZ2h0IGxpZ2h0IiwKICAibmFtZSI6ICJBdXRvIE5pZ2h0IExpZ2h0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9aZWZ0eS9BdXRvTmlnaHRMaWdodCIsCiAgInV1aWQiOiAiYXV0b25pZ2h0bGlnaHRAemVmdHkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "0v76v4z82agn1ay8c0mb2jgnzjf1h9kcp13jhvypcigalfq9qp4n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgYWRqdXN0IG5pZ2h0IGxpZ2h0IiwKICAibmFtZSI6ICJBdXRvIE5pZ2h0IExpZ2h0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9aZWZ0eS9BdXRvTmlnaHRMaWdodCIsCiAgInV1aWQiOiAiYXV0b25pZ2h0bGlnaHRAemVmdHkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "41": {"version": "7", "sha256": "0v76v4z82agn1ay8c0mb2jgnzjf1h9kcp13jhvypcigalfq9qp4n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgYWRqdXN0IG5pZ2h0IGxpZ2h0IiwKICAibmFtZSI6ICJBdXRvIE5pZ2h0IExpZ2h0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9aZWZ0eS9BdXRvTmlnaHRMaWdodCIsCiAgInV1aWQiOiAiYXV0b25pZ2h0bGlnaHRAemVmdHkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
 , {"uuid": "favourites-in-appgrid@harshadgavali.gitlab.org", "name": "Favourites in AppGrid", "pname": "favourites-in-appgrid", "description": "Keep favourite applications in AppGrid", "link": "https://extensions.gnome.org/extension/4485/favourites-in-appgrid/", "shell_version_map": {"40": {"version": "2", "sha256": "0cbz05qmn0i7c3591c5h5znq4fp90xc9dz1jdaj213pybynqdphl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktlZXAgZmF2b3VyaXRlIGFwcGxpY2F0aW9ucyBpbiBBcHBHcmlkIiwKICAibmFtZSI6ICJGYXZvdXJpdGVzIGluIEFwcEdyaWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9oYXJzaGFkZ2F2YWxpL2Zhdm91cml0ZXMtaW4tYXBwZ3JpZC8iLAogICJ1dWlkIjogImZhdm91cml0ZXMtaW4tYXBwZ3JpZEBoYXJzaGFkZ2F2YWxpLmdpdGxhYi5vcmciLAogICJ2ZXJzaW9uIjogMgp9"}, "41": {"version": "2", "sha256": "0cbz05qmn0i7c3591c5h5znq4fp90xc9dz1jdaj213pybynqdphl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktlZXAgZmF2b3VyaXRlIGFwcGxpY2F0aW9ucyBpbiBBcHBHcmlkIiwKICAibmFtZSI6ICJGYXZvdXJpdGVzIGluIEFwcEdyaWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9oYXJzaGFkZ2F2YWxpL2Zhdm91cml0ZXMtaW4tYXBwZ3JpZC8iLAogICJ1dWlkIjogImZhdm91cml0ZXMtaW4tYXBwZ3JpZEBoYXJzaGFkZ2F2YWxpLmdpdGxhYi5vcmciLAogICJ2ZXJzaW9uIjogMgp9"}, "42": {"version": "2", "sha256": "0cbz05qmn0i7c3591c5h5znq4fp90xc9dz1jdaj213pybynqdphl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktlZXAgZmF2b3VyaXRlIGFwcGxpY2F0aW9ucyBpbiBBcHBHcmlkIiwKICAibmFtZSI6ICJGYXZvdXJpdGVzIGluIEFwcEdyaWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9oYXJzaGFkZ2F2YWxpL2Zhdm91cml0ZXMtaW4tYXBwZ3JpZC8iLAogICJ1dWlkIjogImZhdm91cml0ZXMtaW4tYXBwZ3JpZEBoYXJzaGFkZ2F2YWxpLmdpdGxhYi5vcmciLAogICJ2ZXJzaW9uIjogMgp9"}}}
 , {"uuid": "dark-variant@hardpixel.eu", "name": "Dark Variant", "pname": "dark-variant", "description": "Enable dark window decorations on applications. This extension is not compatible with applications that use Client Side Decorations (CSD).\n\nThis extension depends on some Xorg utilities. To install them:\n- Debian/Ubuntu: apt install x11-utils\n- Fedora/RHEL: dnf install xorg-x11-utils\n- Arch: pacman -S xorg-xprop\n\n*Settings are provided to enable/disable applications.", "link": "https://extensions.gnome.org/extension/4488/dark-variant/", "shell_version_map": {"40": {"version": "6", "sha256": "1j5pbkxqiqi6nnm1q0ygq9cw9qbrrpsykbrd9zami230wqz6adhy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBkYXJrIHdpbmRvdyBkZWNvcmF0aW9ucyBvbiBhcHBsaWNhdGlvbnMuIFRoaXMgZXh0ZW5zaW9uIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggYXBwbGljYXRpb25zIHRoYXQgdXNlIENsaWVudCBTaWRlIERlY29yYXRpb25zIChDU0QpLlxuXG5UaGlzIGV4dGVuc2lvbiBkZXBlbmRzIG9uIHNvbWUgWG9yZyB1dGlsaXRpZXMuIFRvIGluc3RhbGwgdGhlbTpcbi0gRGViaWFuL1VidW50dTogYXB0IGluc3RhbGwgeDExLXV0aWxzXG4tIEZlZG9yYS9SSEVMOiBkbmYgaW5zdGFsbCB4b3JnLXgxMS11dGlsc1xuLSBBcmNoOiBwYWNtYW4gLVMgeG9yZy14cHJvcFxuXG4qU2V0dGluZ3MgYXJlIHByb3ZpZGVkIHRvIGVuYWJsZS9kaXNhYmxlIGFwcGxpY2F0aW9ucy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJkYXJrLXZhcmlhbnQiLAogICJuYW1lIjogIkRhcmsgVmFyaWFudCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXJrLXZhcmlhbnQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJkcGl4ZWwvZGFyay12YXJpYW50IiwKICAidXVpZCI6ICJkYXJrLXZhcmlhbnRAaGFyZHBpeGVsLmV1IiwKICAidmVyc2lvbiI6IDYKfQ=="}, "41": {"version": "6", "sha256": "1j5pbkxqiqi6nnm1q0ygq9cw9qbrrpsykbrd9zami230wqz6adhy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBkYXJrIHdpbmRvdyBkZWNvcmF0aW9ucyBvbiBhcHBsaWNhdGlvbnMuIFRoaXMgZXh0ZW5zaW9uIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggYXBwbGljYXRpb25zIHRoYXQgdXNlIENsaWVudCBTaWRlIERlY29yYXRpb25zIChDU0QpLlxuXG5UaGlzIGV4dGVuc2lvbiBkZXBlbmRzIG9uIHNvbWUgWG9yZyB1dGlsaXRpZXMuIFRvIGluc3RhbGwgdGhlbTpcbi0gRGViaWFuL1VidW50dTogYXB0IGluc3RhbGwgeDExLXV0aWxzXG4tIEZlZG9yYS9SSEVMOiBkbmYgaW5zdGFsbCB4b3JnLXgxMS11dGlsc1xuLSBBcmNoOiBwYWNtYW4gLVMgeG9yZy14cHJvcFxuXG4qU2V0dGluZ3MgYXJlIHByb3ZpZGVkIHRvIGVuYWJsZS9kaXNhYmxlIGFwcGxpY2F0aW9ucy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJkYXJrLXZhcmlhbnQiLAogICJuYW1lIjogIkRhcmsgVmFyaWFudCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXJrLXZhcmlhbnQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJkcGl4ZWwvZGFyay12YXJpYW50IiwKICAidXVpZCI6ICJkYXJrLXZhcmlhbnRAaGFyZHBpeGVsLmV1IiwKICAidmVyc2lvbiI6IDYKfQ=="}, "42": {"version": "8", "sha256": "1cvfifkp1z8qazc39aq6b2yc3xwsfnpdwr66mjvgrj6j06ldbraf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBkYXJrIHdpbmRvdyBkZWNvcmF0aW9ucyBvbiBhcHBsaWNhdGlvbnMuIFRoaXMgZXh0ZW5zaW9uIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggYXBwbGljYXRpb25zIHRoYXQgdXNlIENsaWVudCBTaWRlIERlY29yYXRpb25zIChDU0QpLlxuXG5UaGlzIGV4dGVuc2lvbiBkZXBlbmRzIG9uIHNvbWUgWG9yZyB1dGlsaXRpZXMuIFRvIGluc3RhbGwgdGhlbTpcbi0gRGViaWFuL1VidW50dTogYXB0IGluc3RhbGwgeDExLXV0aWxzXG4tIEZlZG9yYS9SSEVMOiBkbmYgaW5zdGFsbCB4b3JnLXgxMS11dGlsc1xuLSBBcmNoOiBwYWNtYW4gLVMgeG9yZy14cHJvcFxuXG4qU2V0dGluZ3MgYXJlIHByb3ZpZGVkIHRvIGVuYWJsZS9kaXNhYmxlIGFwcGxpY2F0aW9ucy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJkYXJrLXZhcmlhbnQiLAogICJuYW1lIjogIkRhcmsgVmFyaWFudCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXJrLXZhcmlhbnQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hhcmRwaXhlbC9kYXJrLXZhcmlhbnQiLAogICJ1dWlkIjogImRhcmstdmFyaWFudEBoYXJkcGl4ZWwuZXUiLAogICJ2ZXJzaW9uIjogOAp9"}, "43": {"version": "8", "sha256": "1cvfifkp1z8qazc39aq6b2yc3xwsfnpdwr66mjvgrj6j06ldbraf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBkYXJrIHdpbmRvdyBkZWNvcmF0aW9ucyBvbiBhcHBsaWNhdGlvbnMuIFRoaXMgZXh0ZW5zaW9uIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggYXBwbGljYXRpb25zIHRoYXQgdXNlIENsaWVudCBTaWRlIERlY29yYXRpb25zIChDU0QpLlxuXG5UaGlzIGV4dGVuc2lvbiBkZXBlbmRzIG9uIHNvbWUgWG9yZyB1dGlsaXRpZXMuIFRvIGluc3RhbGwgdGhlbTpcbi0gRGViaWFuL1VidW50dTogYXB0IGluc3RhbGwgeDExLXV0aWxzXG4tIEZlZG9yYS9SSEVMOiBkbmYgaW5zdGFsbCB4b3JnLXgxMS11dGlsc1xuLSBBcmNoOiBwYWNtYW4gLVMgeG9yZy14cHJvcFxuXG4qU2V0dGluZ3MgYXJlIHByb3ZpZGVkIHRvIGVuYWJsZS9kaXNhYmxlIGFwcGxpY2F0aW9ucy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJkYXJrLXZhcmlhbnQiLAogICJuYW1lIjogIkRhcmsgVmFyaWFudCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXJrLXZhcmlhbnQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hhcmRwaXhlbC9kYXJrLXZhcmlhbnQiLAogICJ1dWlkIjogImRhcmstdmFyaWFudEBoYXJkcGl4ZWwuZXUiLAogICJ2ZXJzaW9uIjogOAp9"}}}
-, {"uuid": "PrivacyMenu@stuarthayhurst", "name": "Privacy Settings Menu", "pname": "privacy-settings-menu", "description": "Add a privacy menu to the top bar for quick access to privacy settings", "link": "https://extensions.gnome.org/extension/4491/privacy-settings-menu/", "shell_version_map": {"38": {"version": "7", "sha256": "0cxplj7k09fpahlbw22mfn3hncnph9dn3jv8qmjvdvkhx5qh5d24", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHByaXZhY3kgbWVudSB0byB0aGUgdG9wIGJhciBmb3IgcXVpY2sgYWNjZXNzIHRvIHByaXZhY3kgc2V0dGluZ3MiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgIm5hbWUiOiAiUHJpdmFjeSBTZXR0aW5ncyBNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnByaXZhY3ktbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9wcml2YWN5LW1lbnUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgInZlcnNpb24iOiA3Cn0="}, "40": {"version": "7", "sha256": "0cxplj7k09fpahlbw22mfn3hncnph9dn3jv8qmjvdvkhx5qh5d24", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHByaXZhY3kgbWVudSB0byB0aGUgdG9wIGJhciBmb3IgcXVpY2sgYWNjZXNzIHRvIHByaXZhY3kgc2V0dGluZ3MiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgIm5hbWUiOiAiUHJpdmFjeSBTZXR0aW5ncyBNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnByaXZhY3ktbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9wcml2YWN5LW1lbnUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgInZlcnNpb24iOiA3Cn0="}, "41": {"version": "7", "sha256": "0cxplj7k09fpahlbw22mfn3hncnph9dn3jv8qmjvdvkhx5qh5d24", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHByaXZhY3kgbWVudSB0byB0aGUgdG9wIGJhciBmb3IgcXVpY2sgYWNjZXNzIHRvIHByaXZhY3kgc2V0dGluZ3MiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgIm5hbWUiOiAiUHJpdmFjeSBTZXR0aW5ncyBNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnByaXZhY3ktbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9wcml2YWN5LW1lbnUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgInZlcnNpb24iOiA3Cn0="}, "42": {"version": "7", "sha256": "0cxplj7k09fpahlbw22mfn3hncnph9dn3jv8qmjvdvkhx5qh5d24", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHByaXZhY3kgbWVudSB0byB0aGUgdG9wIGJhciBmb3IgcXVpY2sgYWNjZXNzIHRvIHByaXZhY3kgc2V0dGluZ3MiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgIm5hbWUiOiAiUHJpdmFjeSBTZXR0aW5ncyBNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnByaXZhY3ktbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9wcml2YWN5LW1lbnUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgInZlcnNpb24iOiA3Cn0="}, "43": {"version": "7", "sha256": "0cxplj7k09fpahlbw22mfn3hncnph9dn3jv8qmjvdvkhx5qh5d24", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHByaXZhY3kgbWVudSB0byB0aGUgdG9wIGJhciBmb3IgcXVpY2sgYWNjZXNzIHRvIHByaXZhY3kgc2V0dGluZ3MiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgIm5hbWUiOiAiUHJpdmFjeSBTZXR0aW5ncyBNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnByaXZhY3ktbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9wcml2YWN5LW1lbnUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgInZlcnNpb24iOiA3Cn0="}}}
+, {"uuid": "PrivacyMenu@stuarthayhurst", "name": "Privacy Quick Settings Menu", "pname": "privacy-settings-menu", "description": "Add a privacy menu to the top bar for quick access to privacy settings", "link": "https://extensions.gnome.org/extension/4491/privacy-settings-menu/", "shell_version_map": {"38": {"version": "8", "sha256": "00c79g1l35p8y6a7nf39y5126k153av3vhf8jm8zm31fyczials8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHByaXZhY3kgbWVudSB0byB0aGUgdG9wIGJhciBmb3IgcXVpY2sgYWNjZXNzIHRvIHByaXZhY3kgc2V0dGluZ3MiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgIm5hbWUiOiAiUHJpdmFjeSBRdWljayBTZXR0aW5ncyBNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnByaXZhY3ktbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9wcml2YWN5LW1lbnUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgInZlcnNpb24iOiA4Cn0="}, "40": {"version": "8", "sha256": "00c79g1l35p8y6a7nf39y5126k153av3vhf8jm8zm31fyczials8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHByaXZhY3kgbWVudSB0byB0aGUgdG9wIGJhciBmb3IgcXVpY2sgYWNjZXNzIHRvIHByaXZhY3kgc2V0dGluZ3MiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgIm5hbWUiOiAiUHJpdmFjeSBRdWljayBTZXR0aW5ncyBNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnByaXZhY3ktbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9wcml2YWN5LW1lbnUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgInZlcnNpb24iOiA4Cn0="}, "41": {"version": "8", "sha256": "00c79g1l35p8y6a7nf39y5126k153av3vhf8jm8zm31fyczials8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHByaXZhY3kgbWVudSB0byB0aGUgdG9wIGJhciBmb3IgcXVpY2sgYWNjZXNzIHRvIHByaXZhY3kgc2V0dGluZ3MiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgIm5hbWUiOiAiUHJpdmFjeSBRdWljayBTZXR0aW5ncyBNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnByaXZhY3ktbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9wcml2YWN5LW1lbnUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgInZlcnNpb24iOiA4Cn0="}, "42": {"version": "8", "sha256": "00c79g1l35p8y6a7nf39y5126k153av3vhf8jm8zm31fyczials8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHByaXZhY3kgbWVudSB0byB0aGUgdG9wIGJhciBmb3IgcXVpY2sgYWNjZXNzIHRvIHByaXZhY3kgc2V0dGluZ3MiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgIm5hbWUiOiAiUHJpdmFjeSBRdWljayBTZXR0aW5ncyBNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnByaXZhY3ktbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9wcml2YWN5LW1lbnUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgInZlcnNpb24iOiA4Cn0="}, "43": {"version": "8", "sha256": "00c79g1l35p8y6a7nf39y5126k153av3vhf8jm8zm31fyczials8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHByaXZhY3kgbWVudSB0byB0aGUgdG9wIGJhciBmb3IgcXVpY2sgYWNjZXNzIHRvIHByaXZhY3kgc2V0dGluZ3MiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgIm5hbWUiOiAiUHJpdmFjeSBRdWljayBTZXR0aW5ncyBNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnByaXZhY3ktbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9wcml2YWN5LW1lbnUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgInZlcnNpb24iOiA4Cn0="}}}
 , {"uuid": "hide-panel-lite@fthx", "name": "Hide Panel Lite", "pname": "hide-panel-light-version-without-hot-corner", "description": "Hide top panel except in overview.\n\nFor those who don't need a hot corner (e.g. running GNOME 40+ with three fingers gestures). Very very light extension. No options, no bugs. ;-)", "link": "https://extensions.gnome.org/extension/4496/hide-panel-light-version-without-hot-corner/", "shell_version_map": {"38": {"version": "2", "sha256": "13kwd7sh0w34881wwaqvv0mchd7ym7av5s658jcrq2n8n2zma4xi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdG9wIHBhbmVsIGV4Y2VwdCBpbiBvdmVydmlldy5cblxuRm9yIHRob3NlIHdobyBkb24ndCBuZWVkIGEgaG90IGNvcm5lciAoZS5nLiBydW5uaW5nIEdOT01FIDQwKyB3aXRoIHRocmVlIGZpbmdlcnMgZ2VzdHVyZXMpLiBWZXJ5IHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBObyBvcHRpb25zLCBubyBidWdzLiA7LSkiLAogICJuYW1lIjogIkhpZGUgUGFuZWwgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvaGlkZS1wYW5lbC1saXRlIiwKICAidXVpZCI6ICJoaWRlLXBhbmVsLWxpdGVAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "2", "sha256": "13kwd7sh0w34881wwaqvv0mchd7ym7av5s658jcrq2n8n2zma4xi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdG9wIHBhbmVsIGV4Y2VwdCBpbiBvdmVydmlldy5cblxuRm9yIHRob3NlIHdobyBkb24ndCBuZWVkIGEgaG90IGNvcm5lciAoZS5nLiBydW5uaW5nIEdOT01FIDQwKyB3aXRoIHRocmVlIGZpbmdlcnMgZ2VzdHVyZXMpLiBWZXJ5IHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBObyBvcHRpb25zLCBubyBidWdzLiA7LSkiLAogICJuYW1lIjogIkhpZGUgUGFuZWwgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvaGlkZS1wYW5lbC1saXRlIiwKICAidXVpZCI6ICJoaWRlLXBhbmVsLWxpdGVAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}, "41": {"version": "2", "sha256": "13kwd7sh0w34881wwaqvv0mchd7ym7av5s658jcrq2n8n2zma4xi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdG9wIHBhbmVsIGV4Y2VwdCBpbiBvdmVydmlldy5cblxuRm9yIHRob3NlIHdobyBkb24ndCBuZWVkIGEgaG90IGNvcm5lciAoZS5nLiBydW5uaW5nIEdOT01FIDQwKyB3aXRoIHRocmVlIGZpbmdlcnMgZ2VzdHVyZXMpLiBWZXJ5IHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBObyBvcHRpb25zLCBubyBidWdzLiA7LSkiLAogICJuYW1lIjogIkhpZGUgUGFuZWwgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvaGlkZS1wYW5lbC1saXRlIiwKICAidXVpZCI6ICJoaWRlLXBhbmVsLWxpdGVAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}, "42": {"version": "2", "sha256": "13kwd7sh0w34881wwaqvv0mchd7ym7av5s658jcrq2n8n2zma4xi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdG9wIHBhbmVsIGV4Y2VwdCBpbiBvdmVydmlldy5cblxuRm9yIHRob3NlIHdobyBkb24ndCBuZWVkIGEgaG90IGNvcm5lciAoZS5nLiBydW5uaW5nIEdOT01FIDQwKyB3aXRoIHRocmVlIGZpbmdlcnMgZ2VzdHVyZXMpLiBWZXJ5IHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBObyBvcHRpb25zLCBubyBidWdzLiA7LSkiLAogICJuYW1lIjogIkhpZGUgUGFuZWwgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvaGlkZS1wYW5lbC1saXRlIiwKICAidXVpZCI6ICJoaWRlLXBhbmVsLWxpdGVAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}}}
-, {"uuid": "ssm-gnome@lgiki.net", "name": "Simple System Monitor", "pname": "simple-system-monitor", "description": "Show current CPU usage, memory usage and net speed on panel.\nFor best experience, please use monospaced font.\n\nThis is a fork of https://extensions.gnome.org/extension/4478/net-speed/.", "link": "https://extensions.gnome.org/extension/4506/simple-system-monitor/", "shell_version_map": {"38": {"version": "11", "sha256": "1vh76h1pvh1r3jg9661bgkafwrsk76f1cnxrl0srhaq5wyssvh33", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBDUFUgdXNhZ2UsIG1lbW9yeSB1c2FnZSBhbmQgbmV0IHNwZWVkIG9uIHBhbmVsLlxuRm9yIGJlc3QgZXhwZXJpZW5jZSwgcGxlYXNlIHVzZSBtb25vc3BhY2VkIGZvbnQuXG5cblRoaXMgaXMgYSBmb3JrIG9mIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzQ0NzgvbmV0LXNwZWVkLy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tc2ltcGxlLXN5c3RlbS1tb25pdG9yIiwKICAibmFtZSI6ICJTaW1wbGUgU3lzdGVtIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9MR2lraS9nbm9tZS1zaGVsbC1leHRlbnNpb24tc2ltcGxlLXN5c3RlbS1tb25pdG9yIiwKICAidXVpZCI6ICJzc20tZ25vbWVAbGdpa2kubmV0IiwKICAidmVyc2lvbiI6IDExCn0="}, "40": {"version": "11", "sha256": "1vh76h1pvh1r3jg9661bgkafwrsk76f1cnxrl0srhaq5wyssvh33", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBDUFUgdXNhZ2UsIG1lbW9yeSB1c2FnZSBhbmQgbmV0IHNwZWVkIG9uIHBhbmVsLlxuRm9yIGJlc3QgZXhwZXJpZW5jZSwgcGxlYXNlIHVzZSBtb25vc3BhY2VkIGZvbnQuXG5cblRoaXMgaXMgYSBmb3JrIG9mIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzQ0NzgvbmV0LXNwZWVkLy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tc2ltcGxlLXN5c3RlbS1tb25pdG9yIiwKICAibmFtZSI6ICJTaW1wbGUgU3lzdGVtIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9MR2lraS9nbm9tZS1zaGVsbC1leHRlbnNpb24tc2ltcGxlLXN5c3RlbS1tb25pdG9yIiwKICAidXVpZCI6ICJzc20tZ25vbWVAbGdpa2kubmV0IiwKICAidmVyc2lvbiI6IDExCn0="}, "41": {"version": "11", "sha256": "1vh76h1pvh1r3jg9661bgkafwrsk76f1cnxrl0srhaq5wyssvh33", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBDUFUgdXNhZ2UsIG1lbW9yeSB1c2FnZSBhbmQgbmV0IHNwZWVkIG9uIHBhbmVsLlxuRm9yIGJlc3QgZXhwZXJpZW5jZSwgcGxlYXNlIHVzZSBtb25vc3BhY2VkIGZvbnQuXG5cblRoaXMgaXMgYSBmb3JrIG9mIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzQ0NzgvbmV0LXNwZWVkLy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tc2ltcGxlLXN5c3RlbS1tb25pdG9yIiwKICAibmFtZSI6ICJTaW1wbGUgU3lzdGVtIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9MR2lraS9nbm9tZS1zaGVsbC1leHRlbnNpb24tc2ltcGxlLXN5c3RlbS1tb25pdG9yIiwKICAidXVpZCI6ICJzc20tZ25vbWVAbGdpa2kubmV0IiwKICAidmVyc2lvbiI6IDExCn0="}, "42": {"version": "11", "sha256": "1vh76h1pvh1r3jg9661bgkafwrsk76f1cnxrl0srhaq5wyssvh33", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBDUFUgdXNhZ2UsIG1lbW9yeSB1c2FnZSBhbmQgbmV0IHNwZWVkIG9uIHBhbmVsLlxuRm9yIGJlc3QgZXhwZXJpZW5jZSwgcGxlYXNlIHVzZSBtb25vc3BhY2VkIGZvbnQuXG5cblRoaXMgaXMgYSBmb3JrIG9mIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzQ0NzgvbmV0LXNwZWVkLy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tc2ltcGxlLXN5c3RlbS1tb25pdG9yIiwKICAibmFtZSI6ICJTaW1wbGUgU3lzdGVtIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9MR2lraS9nbm9tZS1zaGVsbC1leHRlbnNpb24tc2ltcGxlLXN5c3RlbS1tb25pdG9yIiwKICAidXVpZCI6ICJzc20tZ25vbWVAbGdpa2kubmV0IiwKICAidmVyc2lvbiI6IDExCn0="}}}
+, {"uuid": "ssm-gnome@lgiki.net", "name": "Simple System Monitor", "pname": "simple-system-monitor", "description": "Show current CPU usage, memory usage and net speed on panel.\nFor best experience, please use monospaced font.\n\nThis is a fork of https://extensions.gnome.org/extension/4478/net-speed/.", "link": "https://extensions.gnome.org/extension/4506/simple-system-monitor/", "shell_version_map": {"38": {"version": "12", "sha256": "0j7akjnk1ikqk6k9nyh1sf4jbgm9n52rp7fw74jymgihncs68qvn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBDUFUgdXNhZ2UsIG1lbW9yeSB1c2FnZSBhbmQgbmV0IHNwZWVkIG9uIHBhbmVsLlxuRm9yIGJlc3QgZXhwZXJpZW5jZSwgcGxlYXNlIHVzZSBtb25vc3BhY2VkIGZvbnQuXG5cblRoaXMgaXMgYSBmb3JrIG9mIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzQ0NzgvbmV0LXNwZWVkLy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tc2ltcGxlLXN5c3RlbS1tb25pdG9yIiwKICAibmFtZSI6ICJTaW1wbGUgU3lzdGVtIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTEdpa2kvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNpbXBsZS1zeXN0ZW0tbW9uaXRvciIsCiAgInV1aWQiOiAic3NtLWdub21lQGxnaWtpLm5ldCIsCiAgInZlcnNpb24iOiAxMgp9"}, "40": {"version": "12", "sha256": "0j7akjnk1ikqk6k9nyh1sf4jbgm9n52rp7fw74jymgihncs68qvn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBDUFUgdXNhZ2UsIG1lbW9yeSB1c2FnZSBhbmQgbmV0IHNwZWVkIG9uIHBhbmVsLlxuRm9yIGJlc3QgZXhwZXJpZW5jZSwgcGxlYXNlIHVzZSBtb25vc3BhY2VkIGZvbnQuXG5cblRoaXMgaXMgYSBmb3JrIG9mIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzQ0NzgvbmV0LXNwZWVkLy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tc2ltcGxlLXN5c3RlbS1tb25pdG9yIiwKICAibmFtZSI6ICJTaW1wbGUgU3lzdGVtIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTEdpa2kvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNpbXBsZS1zeXN0ZW0tbW9uaXRvciIsCiAgInV1aWQiOiAic3NtLWdub21lQGxnaWtpLm5ldCIsCiAgInZlcnNpb24iOiAxMgp9"}, "41": {"version": "12", "sha256": "0j7akjnk1ikqk6k9nyh1sf4jbgm9n52rp7fw74jymgihncs68qvn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBDUFUgdXNhZ2UsIG1lbW9yeSB1c2FnZSBhbmQgbmV0IHNwZWVkIG9uIHBhbmVsLlxuRm9yIGJlc3QgZXhwZXJpZW5jZSwgcGxlYXNlIHVzZSBtb25vc3BhY2VkIGZvbnQuXG5cblRoaXMgaXMgYSBmb3JrIG9mIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzQ0NzgvbmV0LXNwZWVkLy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tc2ltcGxlLXN5c3RlbS1tb25pdG9yIiwKICAibmFtZSI6ICJTaW1wbGUgU3lzdGVtIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTEdpa2kvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNpbXBsZS1zeXN0ZW0tbW9uaXRvciIsCiAgInV1aWQiOiAic3NtLWdub21lQGxnaWtpLm5ldCIsCiAgInZlcnNpb24iOiAxMgp9"}, "42": {"version": "12", "sha256": "0j7akjnk1ikqk6k9nyh1sf4jbgm9n52rp7fw74jymgihncs68qvn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBDUFUgdXNhZ2UsIG1lbW9yeSB1c2FnZSBhbmQgbmV0IHNwZWVkIG9uIHBhbmVsLlxuRm9yIGJlc3QgZXhwZXJpZW5jZSwgcGxlYXNlIHVzZSBtb25vc3BhY2VkIGZvbnQuXG5cblRoaXMgaXMgYSBmb3JrIG9mIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzQ0NzgvbmV0LXNwZWVkLy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tc2ltcGxlLXN5c3RlbS1tb25pdG9yIiwKICAibmFtZSI6ICJTaW1wbGUgU3lzdGVtIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTEdpa2kvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNpbXBsZS1zeXN0ZW0tbW9uaXRvciIsCiAgInV1aWQiOiAic3NtLWdub21lQGxnaWtpLm5ldCIsCiAgInZlcnNpb24iOiAxMgp9"}, "43": {"version": "12", "sha256": "0j7akjnk1ikqk6k9nyh1sf4jbgm9n52rp7fw74jymgihncs68qvn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBDUFUgdXNhZ2UsIG1lbW9yeSB1c2FnZSBhbmQgbmV0IHNwZWVkIG9uIHBhbmVsLlxuRm9yIGJlc3QgZXhwZXJpZW5jZSwgcGxlYXNlIHVzZSBtb25vc3BhY2VkIGZvbnQuXG5cblRoaXMgaXMgYSBmb3JrIG9mIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzQ0NzgvbmV0LXNwZWVkLy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tc2ltcGxlLXN5c3RlbS1tb25pdG9yIiwKICAibmFtZSI6ICJTaW1wbGUgU3lzdGVtIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTEdpa2kvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNpbXBsZS1zeXN0ZW0tbW9uaXRvciIsCiAgInV1aWQiOiAic3NtLWdub21lQGxnaWtpLm5ldCIsCiAgInZlcnNpb24iOiAxMgp9"}}}
 , {"uuid": "unredirect@aunetx", "name": "Disable unredirect fullscreen windows", "pname": "disable-unredirect-fullscreen-windows", "description": "Disables unredirect fullscreen windows in gnome-shell to prevent artifacts when in fullscreen.\n\nThis version makes sure the unredirect option is not re-enabled automatically by the shell.", "link": "https://extensions.gnome.org/extension/4509/disable-unredirect-fullscreen-windows/", "shell_version_map": {"40": {"version": "3", "sha256": "1mgvpzzfdzn5qsxwz5911a8qgq0r34az6xpmqr72ksx6yf13l85z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGVzIHVucmVkaXJlY3QgZnVsbHNjcmVlbiB3aW5kb3dzIGluIGdub21lLXNoZWxsIHRvIHByZXZlbnQgYXJ0aWZhY3RzIHdoZW4gaW4gZnVsbHNjcmVlbi5cblxuVGhpcyB2ZXJzaW9uIG1ha2VzIHN1cmUgdGhlIHVucmVkaXJlY3Qgb3B0aW9uIGlzIG5vdCByZS1lbmFibGVkIGF1dG9tYXRpY2FsbHkgYnkgdGhlIHNoZWxsLiIsCiAgIm5hbWUiOiAiRGlzYWJsZSB1bnJlZGlyZWN0IGZ1bGxzY3JlZW4gd2luZG93cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXVuZXR4L2dub21lLXNoZWxsLWV4dGVuc2lvbi1kaXNhYmxlLXVucmVkaXJlY3QiLAogICJ1dWlkIjogInVucmVkaXJlY3RAYXVuZXR4IiwKICAidmVyc2lvbiI6IDMKfQ=="}, "41": {"version": "3", "sha256": "1mgvpzzfdzn5qsxwz5911a8qgq0r34az6xpmqr72ksx6yf13l85z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGVzIHVucmVkaXJlY3QgZnVsbHNjcmVlbiB3aW5kb3dzIGluIGdub21lLXNoZWxsIHRvIHByZXZlbnQgYXJ0aWZhY3RzIHdoZW4gaW4gZnVsbHNjcmVlbi5cblxuVGhpcyB2ZXJzaW9uIG1ha2VzIHN1cmUgdGhlIHVucmVkaXJlY3Qgb3B0aW9uIGlzIG5vdCByZS1lbmFibGVkIGF1dG9tYXRpY2FsbHkgYnkgdGhlIHNoZWxsLiIsCiAgIm5hbWUiOiAiRGlzYWJsZSB1bnJlZGlyZWN0IGZ1bGxzY3JlZW4gd2luZG93cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXVuZXR4L2dub21lLXNoZWxsLWV4dGVuc2lvbi1kaXNhYmxlLXVucmVkaXJlY3QiLAogICJ1dWlkIjogInVucmVkaXJlY3RAYXVuZXR4IiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
 , {"uuid": "nepali-date@biplab", "name": "Nepali Date", "pname": "nepali-calendar", "description": "Shows nepali date on the panel.", "link": "https://extensions.gnome.org/extension/4518/nepali-calendar/", "shell_version_map": {"40": {"version": "16", "sha256": "15dd7sggdbf72ysjglh2bqlhcjcq1irnlwzqhghmn3ydbj4awm8v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIG5lcGFsaSBkYXRlIG9uIHRoZSBwYW5lbC4iLAogICJuYW1lIjogIk5lcGFsaSBEYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQmlwbGFiLUR1dHRhL05lcGFsaV9EYXRlIiwKICAidXVpZCI6ICJuZXBhbGktZGF0ZUBiaXBsYWIiLAogICJ2ZXJzaW9uIjogMTYKfQ=="}, "41": {"version": "16", "sha256": "15dd7sggdbf72ysjglh2bqlhcjcq1irnlwzqhghmn3ydbj4awm8v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIG5lcGFsaSBkYXRlIG9uIHRoZSBwYW5lbC4iLAogICJuYW1lIjogIk5lcGFsaSBEYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQmlwbGFiLUR1dHRhL05lcGFsaV9EYXRlIiwKICAidXVpZCI6ICJuZXBhbGktZGF0ZUBiaXBsYWIiLAogICJ2ZXJzaW9uIjogMTYKfQ=="}, "42": {"version": "16", "sha256": "15dd7sggdbf72ysjglh2bqlhcjcq1irnlwzqhghmn3ydbj4awm8v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIG5lcGFsaSBkYXRlIG9uIHRoZSBwYW5lbC4iLAogICJuYW1lIjogIk5lcGFsaSBEYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQmlwbGFiLUR1dHRhL05lcGFsaV9EYXRlIiwKICAidXVpZCI6ICJuZXBhbGktZGF0ZUBiaXBsYWIiLAogICJ2ZXJzaW9uIjogMTYKfQ=="}}}
 , {"uuid": "clock-left@mapuut", "name": "Clock Left", "pname": "clock-left", "description": "Moves clock to left.\n\nAlso this one might suit you better: extensions.gnome.org/extension/4667/left-clock/", "link": "https://extensions.gnome.org/extension/4526/clock-left/", "shell_version_map": {"38": {"version": "4", "sha256": "0hvr7nmbrn7nqn3nk9p1a659yhkgja3gy9kbw18yykyqf0lbssqn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIGNsb2NrIHRvIGxlZnQuXG5cbkFsc28gdGhpcyBvbmUgbWlnaHQgc3VpdCB5b3UgYmV0dGVyOiBleHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNDY2Ny9sZWZ0LWNsb2NrLyIsCiAgIm5hbWUiOiAiQ2xvY2sgTGVmdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJjbG9jay1sZWZ0QG1hcHV1dCIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "4", "sha256": "0hvr7nmbrn7nqn3nk9p1a659yhkgja3gy9kbw18yykyqf0lbssqn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIGNsb2NrIHRvIGxlZnQuXG5cbkFsc28gdGhpcyBvbmUgbWlnaHQgc3VpdCB5b3UgYmV0dGVyOiBleHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNDY2Ny9sZWZ0LWNsb2NrLyIsCiAgIm5hbWUiOiAiQ2xvY2sgTGVmdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJjbG9jay1sZWZ0QG1hcHV1dCIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "0hvr7nmbrn7nqn3nk9p1a659yhkgja3gy9kbw18yykyqf0lbssqn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIGNsb2NrIHRvIGxlZnQuXG5cbkFsc28gdGhpcyBvbmUgbWlnaHQgc3VpdCB5b3UgYmV0dGVyOiBleHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNDY2Ny9sZWZ0LWNsb2NrLyIsCiAgIm5hbWUiOiAiQ2xvY2sgTGVmdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJjbG9jay1sZWZ0QG1hcHV1dCIsCiAgInZlcnNpb24iOiA0Cn0="}, "42": {"version": "4", "sha256": "0hvr7nmbrn7nqn3nk9p1a659yhkgja3gy9kbw18yykyqf0lbssqn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIGNsb2NrIHRvIGxlZnQuXG5cbkFsc28gdGhpcyBvbmUgbWlnaHQgc3VpdCB5b3UgYmV0dGVyOiBleHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNDY2Ny9sZWZ0LWNsb2NrLyIsCiAgIm5hbWUiOiAiQ2xvY2sgTGVmdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJjbG9jay1sZWZ0QG1hcHV1dCIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "cpudots@kdevmen.gmail.com", "name": "CPUdots", "pname": "cpudots", "description": "A basic cpu graph inspired from xfce4 cpu freq monitor plugin. it's incomplete right now... I'll update as soon as I get some time off my job.", "link": "https://extensions.gnome.org/extension/4530/cpudots/", "shell_version_map": {"40": {"version": "5", "sha256": "0v7ps7d5kkh6rll85qbx6nijy59h82qv9dwca4k4f2x3b8z9gz0n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgYmFzaWMgY3B1IGdyYXBoIGluc3BpcmVkIGZyb20geGZjZTQgY3B1IGZyZXEgbW9uaXRvciBwbHVnaW4uIGl0J3MgaW5jb21wbGV0ZSByaWdodCBub3cuLi4gSSdsbCB1cGRhdGUgYXMgc29vbiBhcyBJIGdldCBzb21lIHRpbWUgb2ZmIG15IGpvYi4iLAogICJuYW1lIjogIkNQVWRvdHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAiY29tLmdpdGh1Yi5hbWV6aW4uZGR0ZXJtIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImNwdWRvdHNAa2Rldm1lbi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}, "41": {"version": "5", "sha256": "0v7ps7d5kkh6rll85qbx6nijy59h82qv9dwca4k4f2x3b8z9gz0n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgYmFzaWMgY3B1IGdyYXBoIGluc3BpcmVkIGZyb20geGZjZTQgY3B1IGZyZXEgbW9uaXRvciBwbHVnaW4uIGl0J3MgaW5jb21wbGV0ZSByaWdodCBub3cuLi4gSSdsbCB1cGRhdGUgYXMgc29vbiBhcyBJIGdldCBzb21lIHRpbWUgb2ZmIG15IGpvYi4iLAogICJuYW1lIjogIkNQVWRvdHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAiY29tLmdpdGh1Yi5hbWV6aW4uZGR0ZXJtIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImNwdWRvdHNAa2Rldm1lbi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}, "42": {"version": "5", "sha256": "0v7ps7d5kkh6rll85qbx6nijy59h82qv9dwca4k4f2x3b8z9gz0n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgYmFzaWMgY3B1IGdyYXBoIGluc3BpcmVkIGZyb20geGZjZTQgY3B1IGZyZXEgbW9uaXRvciBwbHVnaW4uIGl0J3MgaW5jb21wbGV0ZSByaWdodCBub3cuLi4gSSdsbCB1cGRhdGUgYXMgc29vbiBhcyBJIGdldCBzb21lIHRpbWUgb2ZmIG15IGpvYi4iLAogICJuYW1lIjogIkNQVWRvdHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAiY29tLmdpdGh1Yi5hbWV6aW4uZGR0ZXJtIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImNwdWRvdHNAa2Rldm1lbi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}}}
-, {"uuid": "taildropsendxuwuming2014@outlook.com", "name": "TailDrop Send", "pname": "taildrop-send", "description": "Send files via tailscale", "link": "https://extensions.gnome.org/extension/4533/taildrop-send/", "shell_version_map": {"40": {"version": "4", "sha256": "1w2nydglm2n0kyzwd4rh5q0x8h2d1ycy4ygxj00qfpxxnw477xda", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlbmQgZmlsZXMgdmlhIHRhaWxzY2FsZSIsCiAgImdldHRleHQtZG9tYWluIjogInRhaWxkcm9wLXNlbmQtZXh0ZW5zaW9uIiwKICAibmFtZSI6ICJUYWlsRHJvcCBTZW5kIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRhaWxkcm9wc2VuZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnIyMzMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhaWxkcm9wc2VuZCIsCiAgInV1aWQiOiAidGFpbGRyb3BzZW5keHV3dW1pbmcyMDE0QG91dGxvb2suY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "1w2nydglm2n0kyzwd4rh5q0x8h2d1ycy4ygxj00qfpxxnw477xda", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlbmQgZmlsZXMgdmlhIHRhaWxzY2FsZSIsCiAgImdldHRleHQtZG9tYWluIjogInRhaWxkcm9wLXNlbmQtZXh0ZW5zaW9uIiwKICAibmFtZSI6ICJUYWlsRHJvcCBTZW5kIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRhaWxkcm9wc2VuZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnIyMzMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhaWxkcm9wc2VuZCIsCiAgInV1aWQiOiAidGFpbGRyb3BzZW5keHV3dW1pbmcyMDE0QG91dGxvb2suY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
+, {"uuid": "taildropsendxuwuming2014@outlook.com", "name": "TailDrop Send", "pname": "taildrop-send", "description": "Send files via tailscale", "link": "https://extensions.gnome.org/extension/4533/taildrop-send/", "shell_version_map": {"40": {"version": "5", "sha256": "0gmpxf5v3ph40hx5ycna81z5ln8h0yi81zhvy3z80vvglgvmi4zh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlbmQgZmlsZXMgdmlhIHRhaWxzY2FsZSIsCiAgImdldHRleHQtZG9tYWluIjogInRhaWxkcm9wLXNlbmQtZXh0ZW5zaW9uIiwKICAibmFtZSI6ICJUYWlsRHJvcCBTZW5kIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRhaWxkcm9wc2VuZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ZyMjMzL2dub21lLXNoZWxsLWV4dGVuc2lvbi10YWlsZHJvcHNlbmQiLAogICJ1dWlkIjogInRhaWxkcm9wc2VuZHh1d3VtaW5nMjAxNEBvdXRsb29rLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}, "41": {"version": "5", "sha256": "0gmpxf5v3ph40hx5ycna81z5ln8h0yi81zhvy3z80vvglgvmi4zh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlbmQgZmlsZXMgdmlhIHRhaWxzY2FsZSIsCiAgImdldHRleHQtZG9tYWluIjogInRhaWxkcm9wLXNlbmQtZXh0ZW5zaW9uIiwKICAibmFtZSI6ICJUYWlsRHJvcCBTZW5kIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRhaWxkcm9wc2VuZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ZyMjMzL2dub21lLXNoZWxsLWV4dGVuc2lvbi10YWlsZHJvcHNlbmQiLAogICJ1dWlkIjogInRhaWxkcm9wc2VuZHh1d3VtaW5nMjAxNEBvdXRsb29rLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}, "42": {"version": "5", "sha256": "0gmpxf5v3ph40hx5ycna81z5ln8h0yi81zhvy3z80vvglgvmi4zh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlbmQgZmlsZXMgdmlhIHRhaWxzY2FsZSIsCiAgImdldHRleHQtZG9tYWluIjogInRhaWxkcm9wLXNlbmQtZXh0ZW5zaW9uIiwKICAibmFtZSI6ICJUYWlsRHJvcCBTZW5kIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRhaWxkcm9wc2VuZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ZyMjMzL2dub21lLXNoZWxsLWV4dGVuc2lvbi10YWlsZHJvcHNlbmQiLAogICJ1dWlkIjogInRhaWxkcm9wc2VuZHh1d3VtaW5nMjAxNEBvdXRsb29rLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"uuid": "toggle-mute-on-middle-click-updated@konradmb", "name": "Toggle Mute on Middle Click", "pname": "toggle-mute-on-middle-click", "description": "Toggle mute by middle-clicking the volume indicator. Updated for Gnome 40 from: https://extensions.gnome.org/extension/1473/toggle-mute-on-middle-click/", "link": "https://extensions.gnome.org/extension/4538/toggle-mute-on-middle-click/", "shell_version_map": {"40": {"version": "1", "sha256": "0ag52arddv2dypfr1bs28c6dnfq0lrccibbl6cdzjx4d26j4cv4z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSBtdXRlIGJ5IG1pZGRsZS1jbGlja2luZyB0aGUgdm9sdW1lIGluZGljYXRvci4gVXBkYXRlZCBmb3IgR25vbWUgNDAgZnJvbTogaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vMTQ3My90b2dnbGUtbXV0ZS1vbi1taWRkbGUtY2xpY2svIiwKICAibmFtZSI6ICJUb2dnbGUgTXV0ZSBvbiBNaWRkbGUgQ2xpY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInRvZ2dsZS1tdXRlLW9uLW1pZGRsZS1jbGljay11cGRhdGVkQGtvbnJhZG1iIiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
 , {"uuid": "autohide-volume@unboiled.info", "name": "Autohide Volume", "pname": "autohide-volume", "description": "Autohide volume indicator when muted\n\nI'm not interested in the fact my output audio device is muted: this is how it's supposed to be. But if it's unmuted, then I want to see the icon.\n\nExcept when the mic is on, then I'm probably in a call, frantically figuring out what's wrong.", "link": "https://extensions.gnome.org/extension/4539/autohide-volume/", "shell_version_map": {"41": {"version": "2", "sha256": "1mxzrj5a9zdnkb2hvlmqnwnshnnyw43al59x466jp2pa7si6qy17", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9oaWRlIHZvbHVtZSBpbmRpY2F0b3Igd2hlbiBtdXRlZFxuXG5JJ20gbm90IGludGVyZXN0ZWQgaW4gdGhlIGZhY3QgbXkgb3V0cHV0IGF1ZGlvIGRldmljZSBpcyBtdXRlZDogdGhpcyBpcyBob3cgaXQncyBzdXBwb3NlZCB0byBiZS4gQnV0IGlmIGl0J3MgdW5tdXRlZCwgdGhlbiBJIHdhbnQgdG8gc2VlIHRoZSBpY29uLlxuXG5FeGNlcHQgd2hlbiB0aGUgbWljIGlzIG9uLCB0aGVuIEknbSBwcm9iYWJseSBpbiBhIGNhbGwsIGZyYW50aWNhbGx5IGZpZ3VyaW5nIG91dCB3aGF0J3Mgd3JvbmcuIiwKICAibmFtZSI6ICJBdXRvaGlkZSBWb2x1bWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cDovL2dpdGh1Yi5jb20vdDE4NDI1Ni9nbm9tZS1zaGVsbC1leHRlbnNpb24tYXV0b2hpZGUtdm9sdW1lIiwKICAidXVpZCI6ICJhdXRvaGlkZS12b2x1bWVAdW5ib2lsZWQuaW5mbyIsCiAgInZlcnNpb24iOiAyCn0="}, "42": {"version": "2", "sha256": "1mxzrj5a9zdnkb2hvlmqnwnshnnyw43al59x466jp2pa7si6qy17", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9oaWRlIHZvbHVtZSBpbmRpY2F0b3Igd2hlbiBtdXRlZFxuXG5JJ20gbm90IGludGVyZXN0ZWQgaW4gdGhlIGZhY3QgbXkgb3V0cHV0IGF1ZGlvIGRldmljZSBpcyBtdXRlZDogdGhpcyBpcyBob3cgaXQncyBzdXBwb3NlZCB0byBiZS4gQnV0IGlmIGl0J3MgdW5tdXRlZCwgdGhlbiBJIHdhbnQgdG8gc2VlIHRoZSBpY29uLlxuXG5FeGNlcHQgd2hlbiB0aGUgbWljIGlzIG9uLCB0aGVuIEknbSBwcm9iYWJseSBpbiBhIGNhbGwsIGZyYW50aWNhbGx5IGZpZ3VyaW5nIG91dCB3aGF0J3Mgd3JvbmcuIiwKICAibmFtZSI6ICJBdXRvaGlkZSBWb2x1bWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cDovL2dpdGh1Yi5jb20vdDE4NDI1Ni9nbm9tZS1zaGVsbC1leHRlbnNpb24tYXV0b2hpZGUtdm9sdW1lIiwKICAidXVpZCI6ICJhdXRvaGlkZS12b2x1bWVAdW5ib2lsZWQuaW5mbyIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"uuid": "cloudflare@adam.gadmz", "name": "Cloudflare", "pname": "cloudflare", "description": "Warp Connect", "link": "https://extensions.gnome.org/extension/4542/cloudflare/", "shell_version_map": {"38": {"version": "10", "sha256": "0lr2g0hmaw7v4h538rg3mxmnds8nnmbs0h0k816s4dkwmx45pyb5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJBZGFtIiwKICAiZGVzY3JpcHRpb24iOiAiV2FycCBDb25uZWN0IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWNsb3VkZmxhcmUiLAogICJuYW1lIjogIkNsb3VkZmxhcmUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9kdW9uZ2dpYWtoYW5oYi9DbG91ZGZsYXJlX0dOT01FX0V4dGVuc2lvbiIsCiAgInV1aWQiOiAiY2xvdWRmbGFyZUBhZGFtLmdhZG16IiwKICAidmVyc2lvbiI6IDEwCn0="}, "40": {"version": "10", "sha256": "0lr2g0hmaw7v4h538rg3mxmnds8nnmbs0h0k816s4dkwmx45pyb5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJBZGFtIiwKICAiZGVzY3JpcHRpb24iOiAiV2FycCBDb25uZWN0IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWNsb3VkZmxhcmUiLAogICJuYW1lIjogIkNsb3VkZmxhcmUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9kdW9uZ2dpYWtoYW5oYi9DbG91ZGZsYXJlX0dOT01FX0V4dGVuc2lvbiIsCiAgInV1aWQiOiAiY2xvdWRmbGFyZUBhZGFtLmdhZG16IiwKICAidmVyc2lvbiI6IDEwCn0="}, "41": {"version": "10", "sha256": "0lr2g0hmaw7v4h538rg3mxmnds8nnmbs0h0k816s4dkwmx45pyb5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJBZGFtIiwKICAiZGVzY3JpcHRpb24iOiAiV2FycCBDb25uZWN0IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWNsb3VkZmxhcmUiLAogICJuYW1lIjogIkNsb3VkZmxhcmUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9kdW9uZ2dpYWtoYW5oYi9DbG91ZGZsYXJlX0dOT01FX0V4dGVuc2lvbiIsCiAgInV1aWQiOiAiY2xvdWRmbGFyZUBhZGFtLmdhZG16IiwKICAidmVyc2lvbiI6IDEwCn0="}, "42": {"version": "10", "sha256": "0lr2g0hmaw7v4h538rg3mxmnds8nnmbs0h0k816s4dkwmx45pyb5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJBZGFtIiwKICAiZGVzY3JpcHRpb24iOiAiV2FycCBDb25uZWN0IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWNsb3VkZmxhcmUiLAogICJuYW1lIjogIkNsb3VkZmxhcmUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9kdW9uZ2dpYWtoYW5oYi9DbG91ZGZsYXJlX0dOT01FX0V4dGVuc2lvbiIsCiAgInV1aWQiOiAiY2xvdWRmbGFyZUBhZGFtLmdhZG16IiwKICAidmVyc2lvbiI6IDEwCn0="}}}
@@ -624,9 +624,9 @@
 , {"uuid": "focus-changer@heartmire", "name": "Focus changer", "pname": "focus-changer", "description": "Change focus between windows in all directions.\n\nThe extension will first try to find a suitable window within the same monitor. If there is none, it will try to find one on the next monitor in that direction (in a multi-monitor setup).\n\nDefault shortcuts (can be changed in preferences):\n<Super>+h = Focus left\n<Super>+j = Focus down\n<Super>+k = Focus up\n<Super>+l = Focus right", "link": "https://extensions.gnome.org/extension/4627/focus-changer/", "shell_version_map": {"38": {"version": "9", "sha256": "0ngn0bw0f2fpp0vv4hq7gb0vx2xq2gk3nkkb6p393i9qbr42l3y1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSBmb2N1cyBiZXR3ZWVuIHdpbmRvd3MgaW4gYWxsIGRpcmVjdGlvbnMuXG5cblRoZSBleHRlbnNpb24gd2lsbCBmaXJzdCB0cnkgdG8gZmluZCBhIHN1aXRhYmxlIHdpbmRvdyB3aXRoaW4gdGhlIHNhbWUgbW9uaXRvci4gSWYgdGhlcmUgaXMgbm9uZSwgaXQgd2lsbCB0cnkgdG8gZmluZCBvbmUgb24gdGhlIG5leHQgbW9uaXRvciBpbiB0aGF0IGRpcmVjdGlvbiAoaW4gYSBtdWx0aS1tb25pdG9yIHNldHVwKS5cblxuRGVmYXVsdCBzaG9ydGN1dHMgKGNhbiBiZSBjaGFuZ2VkIGluIHByZWZlcmVuY2VzKTpcbjxTdXBlcj4raCA9IEZvY3VzIGxlZnRcbjxTdXBlcj4raiA9IEZvY3VzIGRvd25cbjxTdXBlcj4rayA9IEZvY3VzIHVwXG48U3VwZXI+K2wgPSBGb2N1cyByaWdodCIsCiAgIm5hbWUiOiAiRm9jdXMgY2hhbmdlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21hcnRpbmhqYXJ0bXlyL2dub21lLXNoZWxsLWV4dGVuc2lvbi1mb2N1cy1jaGFuZ2VyIiwKICAidXVpZCI6ICJmb2N1cy1jaGFuZ2VyQGhlYXJ0bWlyZSIsCiAgInZlcnNpb24iOiA5Cn0="}, "40": {"version": "12", "sha256": "0lzz8850wy0vqxjv8lc792p59r1qpyy39v3iv9zcy95ra2h8mxs3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSBmb2N1cyBiZXR3ZWVuIHdpbmRvd3MgaW4gYWxsIGRpcmVjdGlvbnMuXG5cblRoZSBleHRlbnNpb24gd2lsbCBmaXJzdCB0cnkgdG8gZmluZCBhIHN1aXRhYmxlIHdpbmRvdyB3aXRoaW4gdGhlIHNhbWUgbW9uaXRvci4gSWYgdGhlcmUgaXMgbm9uZSwgaXQgd2lsbCB0cnkgdG8gZmluZCBvbmUgb24gdGhlIG5leHQgbW9uaXRvciBpbiB0aGF0IGRpcmVjdGlvbiAoaW4gYSBtdWx0aS1tb25pdG9yIHNldHVwKS5cblxuRGVmYXVsdCBzaG9ydGN1dHMgKGNhbiBiZSBjaGFuZ2VkIGluIHByZWZlcmVuY2VzKTpcbjxTdXBlcj4raCA9IEZvY3VzIGxlZnRcbjxTdXBlcj4raiA9IEZvY3VzIGRvd25cbjxTdXBlcj4rayA9IEZvY3VzIHVwXG48U3VwZXI+K2wgPSBGb2N1cyByaWdodCIsCiAgIm5hbWUiOiAiRm9jdXMgY2hhbmdlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21hcnRpbmhqYXJ0bXlyL2dub21lLXNoZWxsLWV4dGVuc2lvbi1mb2N1cy1jaGFuZ2VyIiwKICAidXVpZCI6ICJmb2N1cy1jaGFuZ2VyQGhlYXJ0bWlyZSIsCiAgInZlcnNpb24iOiAxMgp9"}, "41": {"version": "12", "sha256": "0lzz8850wy0vqxjv8lc792p59r1qpyy39v3iv9zcy95ra2h8mxs3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSBmb2N1cyBiZXR3ZWVuIHdpbmRvd3MgaW4gYWxsIGRpcmVjdGlvbnMuXG5cblRoZSBleHRlbnNpb24gd2lsbCBmaXJzdCB0cnkgdG8gZmluZCBhIHN1aXRhYmxlIHdpbmRvdyB3aXRoaW4gdGhlIHNhbWUgbW9uaXRvci4gSWYgdGhlcmUgaXMgbm9uZSwgaXQgd2lsbCB0cnkgdG8gZmluZCBvbmUgb24gdGhlIG5leHQgbW9uaXRvciBpbiB0aGF0IGRpcmVjdGlvbiAoaW4gYSBtdWx0aS1tb25pdG9yIHNldHVwKS5cblxuRGVmYXVsdCBzaG9ydGN1dHMgKGNhbiBiZSBjaGFuZ2VkIGluIHByZWZlcmVuY2VzKTpcbjxTdXBlcj4raCA9IEZvY3VzIGxlZnRcbjxTdXBlcj4raiA9IEZvY3VzIGRvd25cbjxTdXBlcj4rayA9IEZvY3VzIHVwXG48U3VwZXI+K2wgPSBGb2N1cyByaWdodCIsCiAgIm5hbWUiOiAiRm9jdXMgY2hhbmdlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21hcnRpbmhqYXJ0bXlyL2dub21lLXNoZWxsLWV4dGVuc2lvbi1mb2N1cy1jaGFuZ2VyIiwKICAidXVpZCI6ICJmb2N1cy1jaGFuZ2VyQGhlYXJ0bWlyZSIsCiAgInZlcnNpb24iOiAxMgp9"}, "42": {"version": "12", "sha256": "0lzz8850wy0vqxjv8lc792p59r1qpyy39v3iv9zcy95ra2h8mxs3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSBmb2N1cyBiZXR3ZWVuIHdpbmRvd3MgaW4gYWxsIGRpcmVjdGlvbnMuXG5cblRoZSBleHRlbnNpb24gd2lsbCBmaXJzdCB0cnkgdG8gZmluZCBhIHN1aXRhYmxlIHdpbmRvdyB3aXRoaW4gdGhlIHNhbWUgbW9uaXRvci4gSWYgdGhlcmUgaXMgbm9uZSwgaXQgd2lsbCB0cnkgdG8gZmluZCBvbmUgb24gdGhlIG5leHQgbW9uaXRvciBpbiB0aGF0IGRpcmVjdGlvbiAoaW4gYSBtdWx0aS1tb25pdG9yIHNldHVwKS5cblxuRGVmYXVsdCBzaG9ydGN1dHMgKGNhbiBiZSBjaGFuZ2VkIGluIHByZWZlcmVuY2VzKTpcbjxTdXBlcj4raCA9IEZvY3VzIGxlZnRcbjxTdXBlcj4raiA9IEZvY3VzIGRvd25cbjxTdXBlcj4rayA9IEZvY3VzIHVwXG48U3VwZXI+K2wgPSBGb2N1cyByaWdodCIsCiAgIm5hbWUiOiAiRm9jdXMgY2hhbmdlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21hcnRpbmhqYXJ0bXlyL2dub21lLXNoZWxsLWV4dGVuc2lvbi1mb2N1cy1jaGFuZ2VyIiwKICAidXVpZCI6ICJmb2N1cy1jaGFuZ2VyQGhlYXJ0bWlyZSIsCiAgInZlcnNpb24iOiAxMgp9"}}}
 , {"uuid": "no-titlebar-when-maximized@alec.ninja", "name": "No Titlebar When Maximized", "pname": "no-titlebar-when-maximized", "description": "Hides the classic title bar of maximized X.Org windows", "link": "https://extensions.gnome.org/extension/4630/no-titlebar-when-maximized/", "shell_version_map": {"41": {"version": "5", "sha256": "0gawpvbybkm4mlvx4h9d2bzqgll6rdgbmd9m1ia90bb2rzplmhii", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSBjbGFzc2ljIHRpdGxlIGJhciBvZiBtYXhpbWl6ZWQgWC5Pcmcgd2luZG93cyIsCiAgIm5hbWUiOiAiTm8gVGl0bGViYXIgV2hlbiBNYXhpbWl6ZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FsZWNkb3RuaW5qYS9uby10aXRsZWJhci13aGVuLW1heGltaXplZCIsCiAgInV1aWQiOiAibm8tdGl0bGViYXItd2hlbi1tYXhpbWl6ZWRAYWxlYy5uaW5qYSIsCiAgInZlcnNpb24iOiA1Cn0="}, "42": {"version": "5", "sha256": "0gawpvbybkm4mlvx4h9d2bzqgll6rdgbmd9m1ia90bb2rzplmhii", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSBjbGFzc2ljIHRpdGxlIGJhciBvZiBtYXhpbWl6ZWQgWC5Pcmcgd2luZG93cyIsCiAgIm5hbWUiOiAiTm8gVGl0bGViYXIgV2hlbiBNYXhpbWl6ZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FsZWNkb3RuaW5qYS9uby10aXRsZWJhci13aGVuLW1heGltaXplZCIsCiAgInV1aWQiOiAibm8tdGl0bGViYXItd2hlbi1tYXhpbWl6ZWRAYWxlYy5uaW5qYSIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"uuid": "cryptowatch@d0x2f.github.com", "name": "CryptoWatch", "pname": "cryptowatch", "description": "Display live crypto portfolio balances.", "link": "https://extensions.gnome.org/extension/4633/cryptowatch/", "shell_version_map": {"40": {"version": "9", "sha256": "18gq0ylx5s0y71fr9pd67nd27dzkhgr5ympw39ijh763hnx2nlpw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgbGl2ZSBjcnlwdG8gcG9ydGZvbGlvIGJhbGFuY2VzLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJjcnlwdG93YXRjaCIsCiAgImdldHRleHQtZG9tYWluIjogImNyeXB0b3dhdGNoIiwKICAibmFtZSI6ICJDcnlwdG9XYXRjaCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jcnlwdG93YXRjaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2QweDJmL0NyeXB0b1dhdGNoIiwKICAidXVpZCI6ICJjcnlwdG93YXRjaEBkMHgyZi5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "41": {"version": "9", "sha256": "18gq0ylx5s0y71fr9pd67nd27dzkhgr5ympw39ijh763hnx2nlpw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgbGl2ZSBjcnlwdG8gcG9ydGZvbGlvIGJhbGFuY2VzLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJjcnlwdG93YXRjaCIsCiAgImdldHRleHQtZG9tYWluIjogImNyeXB0b3dhdGNoIiwKICAibmFtZSI6ICJDcnlwdG9XYXRjaCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jcnlwdG93YXRjaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2QweDJmL0NyeXB0b1dhdGNoIiwKICAidXVpZCI6ICJjcnlwdG93YXRjaEBkMHgyZi5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "42": {"version": "9", "sha256": "18gq0ylx5s0y71fr9pd67nd27dzkhgr5ympw39ijh763hnx2nlpw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgbGl2ZSBjcnlwdG8gcG9ydGZvbGlvIGJhbGFuY2VzLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJjcnlwdG93YXRjaCIsCiAgImdldHRleHQtZG9tYWluIjogImNyeXB0b3dhdGNoIiwKICAibmFtZSI6ICJDcnlwdG9XYXRjaCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jcnlwdG93YXRjaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2QweDJmL0NyeXB0b1dhdGNoIiwKICAidXVpZCI6ICJjcnlwdG93YXRjaEBkMHgyZi5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
-, {"uuid": "mousefollowsfocus@matthes.biz", "name": "Mouse Follows Focus", "pname": "mouse-follows-focus", "description": "Are you a power-user?\nDo you like using Super+1,2,3 to access your favorite apps?\nAre you annoyed that you have to manually move your mouse between screens because it can't keep up with your keyboard shortcuts?\nThen this extension is for you!\n\nThis simple GNOME shell extension does the opposite of the 'focus follows mouse' setting. It makes the mouse follow your keyboard focus. Whenever you focus a window, if the cursor isn't already in it, it will jump to the windows center, making it easy to interact with it.", "link": "https://extensions.gnome.org/extension/4642/mouse-follows-focus/", "shell_version_map": {"41": {"version": "4", "sha256": "1zsy76sab87s74p30sxdp1cki1w956gm0sw27anpx1z6yih50rdv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFyZSB5b3UgYSBwb3dlci11c2VyP1xuRG8geW91IGxpa2UgdXNpbmcgU3VwZXIrMSwyLDMgdG8gYWNjZXNzIHlvdXIgZmF2b3JpdGUgYXBwcz9cbkFyZSB5b3UgYW5ub3llZCB0aGF0IHlvdSBoYXZlIHRvIG1hbnVhbGx5IG1vdmUgeW91ciBtb3VzZSBiZXR3ZWVuIHNjcmVlbnMgYmVjYXVzZSBpdCBjYW4ndCBrZWVwIHVwIHdpdGggeW91ciBrZXlib2FyZCBzaG9ydGN1dHM/XG5UaGVuIHRoaXMgZXh0ZW5zaW9uIGlzIGZvciB5b3UhXG5cblRoaXMgc2ltcGxlIEdOT01FIHNoZWxsIGV4dGVuc2lvbiBkb2VzIHRoZSBvcHBvc2l0ZSBvZiB0aGUgJ2ZvY3VzIGZvbGxvd3MgbW91c2UnIHNldHRpbmcuIEl0IG1ha2VzIHRoZSBtb3VzZSBmb2xsb3cgeW91ciBrZXlib2FyZCBmb2N1cy4gV2hlbmV2ZXIgeW91IGZvY3VzIGEgd2luZG93LCBpZiB0aGUgY3Vyc29yIGlzbid0IGFscmVhZHkgaW4gaXQsIGl0IHdpbGwganVtcCB0byB0aGUgd2luZG93cyBjZW50ZXIsIG1ha2luZyBpdCBlYXN5IHRvIGludGVyYWN0IHdpdGggaXQuIiwKICAibmFtZSI6ICJNb3VzZSBGb2xsb3dzIEZvY3VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0xlb25NYXR0aGVzL21vdXNlZm9sbG93c2ZvY3VzIiwKICAidXVpZCI6ICJtb3VzZWZvbGxvd3Nmb2N1c0BtYXR0aGVzLmJpeiIsCiAgInZlcnNpb24iOiA0Cn0="}}}
+, {"uuid": "mousefollowsfocus@matthes.biz", "name": "Mouse Follows Focus", "pname": "mouse-follows-focus", "description": "Are you a power-user?\nDo you like using Super+1,2,3 to access your favorite apps?\nAre you annoyed that you have to manually move your mouse between screens because it can't keep up with your keyboard shortcuts?\nThen this extension is for you!\n\nThis simple GNOME shell extension does the opposite of the 'focus follows mouse' setting. It makes the mouse follow your keyboard focus. Whenever you focus a window, if the cursor isn't already in it, it will jump to the windows center, making it easy to interact with it.", "link": "https://extensions.gnome.org/extension/4642/mouse-follows-focus/", "shell_version_map": {"41": {"version": "5", "sha256": "1ppwh8vs8hizx2w7kyysm88817pmdszpx09s8f26wkhif6yri5ib", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFyZSB5b3UgYSBwb3dlci11c2VyP1xuRG8geW91IGxpa2UgdXNpbmcgU3VwZXIrMSwyLDMgdG8gYWNjZXNzIHlvdXIgZmF2b3JpdGUgYXBwcz9cbkFyZSB5b3UgYW5ub3llZCB0aGF0IHlvdSBoYXZlIHRvIG1hbnVhbGx5IG1vdmUgeW91ciBtb3VzZSBiZXR3ZWVuIHNjcmVlbnMgYmVjYXVzZSBpdCBjYW4ndCBrZWVwIHVwIHdpdGggeW91ciBrZXlib2FyZCBzaG9ydGN1dHM/XG5UaGVuIHRoaXMgZXh0ZW5zaW9uIGlzIGZvciB5b3UhXG5cblRoaXMgc2ltcGxlIEdOT01FIHNoZWxsIGV4dGVuc2lvbiBkb2VzIHRoZSBvcHBvc2l0ZSBvZiB0aGUgJ2ZvY3VzIGZvbGxvd3MgbW91c2UnIHNldHRpbmcuIEl0IG1ha2VzIHRoZSBtb3VzZSBmb2xsb3cgeW91ciBrZXlib2FyZCBmb2N1cy4gV2hlbmV2ZXIgeW91IGZvY3VzIGEgd2luZG93LCBpZiB0aGUgY3Vyc29yIGlzbid0IGFscmVhZHkgaW4gaXQsIGl0IHdpbGwganVtcCB0byB0aGUgd2luZG93cyBjZW50ZXIsIG1ha2luZyBpdCBlYXN5IHRvIGludGVyYWN0IHdpdGggaXQuIiwKICAibmFtZSI6ICJNb3VzZSBGb2xsb3dzIEZvY3VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9MZW9uTWF0dGhlcy9tb3VzZWZvbGxvd3Nmb2N1cyIsCiAgInV1aWQiOiAibW91c2Vmb2xsb3dzZm9jdXNAbWF0dGhlcy5iaXoiLAogICJ2ZXJzaW9uIjogNQp9"}, "42": {"version": "5", "sha256": "1ppwh8vs8hizx2w7kyysm88817pmdszpx09s8f26wkhif6yri5ib", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFyZSB5b3UgYSBwb3dlci11c2VyP1xuRG8geW91IGxpa2UgdXNpbmcgU3VwZXIrMSwyLDMgdG8gYWNjZXNzIHlvdXIgZmF2b3JpdGUgYXBwcz9cbkFyZSB5b3UgYW5ub3llZCB0aGF0IHlvdSBoYXZlIHRvIG1hbnVhbGx5IG1vdmUgeW91ciBtb3VzZSBiZXR3ZWVuIHNjcmVlbnMgYmVjYXVzZSBpdCBjYW4ndCBrZWVwIHVwIHdpdGggeW91ciBrZXlib2FyZCBzaG9ydGN1dHM/XG5UaGVuIHRoaXMgZXh0ZW5zaW9uIGlzIGZvciB5b3UhXG5cblRoaXMgc2ltcGxlIEdOT01FIHNoZWxsIGV4dGVuc2lvbiBkb2VzIHRoZSBvcHBvc2l0ZSBvZiB0aGUgJ2ZvY3VzIGZvbGxvd3MgbW91c2UnIHNldHRpbmcuIEl0IG1ha2VzIHRoZSBtb3VzZSBmb2xsb3cgeW91ciBrZXlib2FyZCBmb2N1cy4gV2hlbmV2ZXIgeW91IGZvY3VzIGEgd2luZG93LCBpZiB0aGUgY3Vyc29yIGlzbid0IGFscmVhZHkgaW4gaXQsIGl0IHdpbGwganVtcCB0byB0aGUgd2luZG93cyBjZW50ZXIsIG1ha2luZyBpdCBlYXN5IHRvIGludGVyYWN0IHdpdGggaXQuIiwKICAibmFtZSI6ICJNb3VzZSBGb2xsb3dzIEZvY3VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9MZW9uTWF0dGhlcy9tb3VzZWZvbGxvd3Nmb2N1cyIsCiAgInV1aWQiOiAibW91c2Vmb2xsb3dzZm9jdXNAbWF0dGhlcy5iaXoiLAogICJ2ZXJzaW9uIjogNQp9"}}}
 , {"uuid": "gnome-extension-pass-search-provider.lavrov.github.com", "name": "Pass Search Provider", "pname": "pass-search-provider", "description": "Shows matching pass entries in gnome search", "link": "https://extensions.gnome.org/extension/4645/pass-search-provider/", "shell_version_map": {"40": {"version": "6", "sha256": "06msk4zds1q6jjdw6g7akbsiyfz0avwvydpykcylhhc9ribzsncn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIG1hdGNoaW5nIHBhc3MgZW50cmllcyBpbiBnbm9tZSBzZWFyY2giLAogICJuYW1lIjogIlBhc3MgU2VhcmNoIFByb3ZpZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2xhdnJvdi9nbm9tZS1leHRlbnNpb24tcGFzcy1zZWFyY2gtcHJvdmlkZXIiLAogICJ1dWlkIjogImdub21lLWV4dGVuc2lvbi1wYXNzLXNlYXJjaC1wcm92aWRlci5sYXZyb3YuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA2Cn0="}}}
-, {"uuid": "desktop-cube@schneegans.github.com", "name": "Desktop Cube", "pname": "desktop-cube", "description": "Indulge in nostalgia with useless 3D effects.", "link": "https://extensions.gnome.org/extension/4648/desktop-cube/", "shell_version_map": {"40": {"version": "12", "sha256": "032kkbxzy3jkvic9wcwaw4wjrwmf2kfkam9jnq1yrp5516m7lawc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZHVsZ2UgaW4gbm9zdGFsZ2lhIHdpdGggdXNlbGVzcyAzRCBlZmZlY3RzLiIsCiAgImdldHRleHQtZG9tYWluIjogImRlc2t0b3AtY3ViZSIsCiAgIm5hbWUiOiAiRGVza3RvcCBDdWJlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRlc2t0b3AtY3ViZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0Rlc2t0b3AtQ3ViZSIsCiAgInV1aWQiOiAiZGVza3RvcC1jdWJlQHNjaG5lZWdhbnMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}, "41": {"version": "12", "sha256": "032kkbxzy3jkvic9wcwaw4wjrwmf2kfkam9jnq1yrp5516m7lawc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZHVsZ2UgaW4gbm9zdGFsZ2lhIHdpdGggdXNlbGVzcyAzRCBlZmZlY3RzLiIsCiAgImdldHRleHQtZG9tYWluIjogImRlc2t0b3AtY3ViZSIsCiAgIm5hbWUiOiAiRGVza3RvcCBDdWJlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRlc2t0b3AtY3ViZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0Rlc2t0b3AtQ3ViZSIsCiAgInV1aWQiOiAiZGVza3RvcC1jdWJlQHNjaG5lZWdhbnMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}, "42": {"version": "12", "sha256": "032kkbxzy3jkvic9wcwaw4wjrwmf2kfkam9jnq1yrp5516m7lawc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZHVsZ2UgaW4gbm9zdGFsZ2lhIHdpdGggdXNlbGVzcyAzRCBlZmZlY3RzLiIsCiAgImdldHRleHQtZG9tYWluIjogImRlc2t0b3AtY3ViZSIsCiAgIm5hbWUiOiAiRGVza3RvcCBDdWJlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRlc2t0b3AtY3ViZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0Rlc2t0b3AtQ3ViZSIsCiAgInV1aWQiOiAiZGVza3RvcC1jdWJlQHNjaG5lZWdhbnMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}, "43": {"version": "12", "sha256": "032kkbxzy3jkvic9wcwaw4wjrwmf2kfkam9jnq1yrp5516m7lawc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZHVsZ2UgaW4gbm9zdGFsZ2lhIHdpdGggdXNlbGVzcyAzRCBlZmZlY3RzLiIsCiAgImdldHRleHQtZG9tYWluIjogImRlc2t0b3AtY3ViZSIsCiAgIm5hbWUiOiAiRGVza3RvcCBDdWJlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRlc2t0b3AtY3ViZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0Rlc2t0b3AtQ3ViZSIsCiAgInV1aWQiOiAiZGVza3RvcC1jdWJlQHNjaG5lZWdhbnMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}}}
+, {"uuid": "desktop-cube@schneegans.github.com", "name": "Desktop Cube", "pname": "desktop-cube", "description": "Indulge in nostalgia with useless 3D effects.", "link": "https://extensions.gnome.org/extension/4648/desktop-cube/", "shell_version_map": {"40": {"version": "13", "sha256": "027jz7h07340ayqvzji8l33x2y7jxrzf64wr4gvh16dbgw1229fa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZHVsZ2UgaW4gbm9zdGFsZ2lhIHdpdGggdXNlbGVzcyAzRCBlZmZlY3RzLiIsCiAgImdldHRleHQtZG9tYWluIjogImRlc2t0b3AtY3ViZSIsCiAgIm5hbWUiOiAiRGVza3RvcCBDdWJlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRlc2t0b3AtY3ViZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0Rlc2t0b3AtQ3ViZSIsCiAgInV1aWQiOiAiZGVza3RvcC1jdWJlQHNjaG5lZWdhbnMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMwp9"}, "41": {"version": "13", "sha256": "027jz7h07340ayqvzji8l33x2y7jxrzf64wr4gvh16dbgw1229fa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZHVsZ2UgaW4gbm9zdGFsZ2lhIHdpdGggdXNlbGVzcyAzRCBlZmZlY3RzLiIsCiAgImdldHRleHQtZG9tYWluIjogImRlc2t0b3AtY3ViZSIsCiAgIm5hbWUiOiAiRGVza3RvcCBDdWJlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRlc2t0b3AtY3ViZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0Rlc2t0b3AtQ3ViZSIsCiAgInV1aWQiOiAiZGVza3RvcC1jdWJlQHNjaG5lZWdhbnMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMwp9"}, "42": {"version": "13", "sha256": "027jz7h07340ayqvzji8l33x2y7jxrzf64wr4gvh16dbgw1229fa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZHVsZ2UgaW4gbm9zdGFsZ2lhIHdpdGggdXNlbGVzcyAzRCBlZmZlY3RzLiIsCiAgImdldHRleHQtZG9tYWluIjogImRlc2t0b3AtY3ViZSIsCiAgIm5hbWUiOiAiRGVza3RvcCBDdWJlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRlc2t0b3AtY3ViZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0Rlc2t0b3AtQ3ViZSIsCiAgInV1aWQiOiAiZGVza3RvcC1jdWJlQHNjaG5lZWdhbnMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMwp9"}, "43": {"version": "13", "sha256": "027jz7h07340ayqvzji8l33x2y7jxrzf64wr4gvh16dbgw1229fa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZHVsZ2UgaW4gbm9zdGFsZ2lhIHdpdGggdXNlbGVzcyAzRCBlZmZlY3RzLiIsCiAgImdldHRleHQtZG9tYWluIjogImRlc2t0b3AtY3ViZSIsCiAgIm5hbWUiOiAiRGVza3RvcCBDdWJlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRlc2t0b3AtY3ViZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0Rlc2t0b3AtQ3ViZSIsCiAgInV1aWQiOiAiZGVza3RvcC1jdWJlQHNjaG5lZWdhbnMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMwp9"}}}
 , {"uuid": "notification-banner-reloaded@marcinjakubowski.github.com", "name": "Notification Banner Reloaded", "pname": "notification-banner-reloaded", "description": "Configure notification banner position and animation to your liking", "link": "https://extensions.gnome.org/extension/4651/notification-banner-reloaded/", "shell_version_map": {"40": {"version": "5", "sha256": "1sc8s3qiwcvwydva7biaw2val5ki1cqrpybhpk9by1p6kk1cg5vg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbmZpZ3VyZSBub3RpZmljYXRpb24gYmFubmVyIHBvc2l0aW9uIGFuZCBhbmltYXRpb24gdG8geW91ciBsaWtpbmciLAogICJuYW1lIjogIk5vdGlmaWNhdGlvbiBCYW5uZXIgUmVsb2FkZWQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubm90aWZpY2F0aW9uLWJhbm5lci1yZWxvYWRlZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21hcmNpbmpha3Vib3dza2kvbm90aWZpY2F0aW9uLXBvc2l0aW9uLXJlbG9hZGVkIiwKICAidXVpZCI6ICJub3RpZmljYXRpb24tYmFubmVyLXJlbG9hZGVkQG1hcmNpbmpha3Vib3dza2kuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}, "41": {"version": "5", "sha256": "1sc8s3qiwcvwydva7biaw2val5ki1cqrpybhpk9by1p6kk1cg5vg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbmZpZ3VyZSBub3RpZmljYXRpb24gYmFubmVyIHBvc2l0aW9uIGFuZCBhbmltYXRpb24gdG8geW91ciBsaWtpbmciLAogICJuYW1lIjogIk5vdGlmaWNhdGlvbiBCYW5uZXIgUmVsb2FkZWQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubm90aWZpY2F0aW9uLWJhbm5lci1yZWxvYWRlZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21hcmNpbmpha3Vib3dza2kvbm90aWZpY2F0aW9uLXBvc2l0aW9uLXJlbG9hZGVkIiwKICAidXVpZCI6ICJub3RpZmljYXRpb24tYmFubmVyLXJlbG9hZGVkQG1hcmNpbmpha3Vib3dza2kuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}, "42": {"version": "5", "sha256": "1sc8s3qiwcvwydva7biaw2val5ki1cqrpybhpk9by1p6kk1cg5vg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbmZpZ3VyZSBub3RpZmljYXRpb24gYmFubmVyIHBvc2l0aW9uIGFuZCBhbmltYXRpb24gdG8geW91ciBsaWtpbmciLAogICJuYW1lIjogIk5vdGlmaWNhdGlvbiBCYW5uZXIgUmVsb2FkZWQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubm90aWZpY2F0aW9uLWJhbm5lci1yZWxvYWRlZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21hcmNpbmpha3Vib3dza2kvbm90aWZpY2F0aW9uLXBvc2l0aW9uLXJlbG9hZGVkIiwKICAidXVpZCI6ICJub3RpZmljYXRpb24tYmFubmVyLXJlbG9hZGVkQG1hcmNpbmpha3Vib3dza2kuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"uuid": "gnome-extension-brightness@bruno.englert.gitlab.com", "name": "Adjust Display Brightness", "pname": "adjust-display-brightness", "description": "Simple GNOME extension to control displays' brightness via DDC. It requires ddcutil to be installed, I2C permissions for non-root users configured.", "link": "https://extensions.gnome.org/extension/4652/adjust-display-brightness/", "shell_version_map": {"40": {"version": "22", "sha256": "1rxym6ms3zks60h08lab35bv0wbvkl4l1azgahfavnp753schdmj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBHTk9NRSBleHRlbnNpb24gdG8gY29udHJvbCBkaXNwbGF5cycgYnJpZ2h0bmVzcyB2aWEgRERDLiBJdCByZXF1aXJlcyBkZGN1dGlsIHRvIGJlIGluc3RhbGxlZCwgSTJDIHBlcm1pc3Npb25zIGZvciBub24tcm9vdCB1c2VycyBjb25maWd1cmVkLiIsCiAgIm5hbWUiOiAiQWRqdXN0IERpc3BsYXkgQnJpZ2h0bmVzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2JydW5vLmVuZ2xlcnQvZ25vbWUtZXh0ZW5zaW9uLWJyaWdodG5lc3MiLAogICJ1dWlkIjogImdub21lLWV4dGVuc2lvbi1icmlnaHRuZXNzQGJydW5vLmVuZ2xlcnQuZ2l0bGFiLmNvbSIsCiAgInZlcnNpb24iOiAyMgp9"}, "41": {"version": "22", "sha256": "1rxym6ms3zks60h08lab35bv0wbvkl4l1azgahfavnp753schdmj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBHTk9NRSBleHRlbnNpb24gdG8gY29udHJvbCBkaXNwbGF5cycgYnJpZ2h0bmVzcyB2aWEgRERDLiBJdCByZXF1aXJlcyBkZGN1dGlsIHRvIGJlIGluc3RhbGxlZCwgSTJDIHBlcm1pc3Npb25zIGZvciBub24tcm9vdCB1c2VycyBjb25maWd1cmVkLiIsCiAgIm5hbWUiOiAiQWRqdXN0IERpc3BsYXkgQnJpZ2h0bmVzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2JydW5vLmVuZ2xlcnQvZ25vbWUtZXh0ZW5zaW9uLWJyaWdodG5lc3MiLAogICJ1dWlkIjogImdub21lLWV4dGVuc2lvbi1icmlnaHRuZXNzQGJydW5vLmVuZ2xlcnQuZ2l0bGFiLmNvbSIsCiAgInZlcnNpb24iOiAyMgp9"}, "42": {"version": "22", "sha256": "1rxym6ms3zks60h08lab35bv0wbvkl4l1azgahfavnp753schdmj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBHTk9NRSBleHRlbnNpb24gdG8gY29udHJvbCBkaXNwbGF5cycgYnJpZ2h0bmVzcyB2aWEgRERDLiBJdCByZXF1aXJlcyBkZGN1dGlsIHRvIGJlIGluc3RhbGxlZCwgSTJDIHBlcm1pc3Npb25zIGZvciBub24tcm9vdCB1c2VycyBjb25maWd1cmVkLiIsCiAgIm5hbWUiOiAiQWRqdXN0IERpc3BsYXkgQnJpZ2h0bmVzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2JydW5vLmVuZ2xlcnQvZ25vbWUtZXh0ZW5zaW9uLWJyaWdodG5lc3MiLAogICJ1dWlkIjogImdub21lLWV4dGVuc2lvbi1icmlnaHRuZXNzQGJydW5vLmVuZ2xlcnQuZ2l0bGFiLmNvbSIsCiAgInZlcnNpb24iOiAyMgp9"}}}
 , {"uuid": "date-menu-formatter@marcinjakubowski.github.com", "name": "Date Menu Formatter", "pname": "date-menu-formatter", "description": "Allows customization of the date display in the panel.\n\nMight be especially useful if you're using a horizontal panel which does not at all work well with the default date display.\n\nCHANGELOG\nVersion 5: added support for multiple Dash To Panel panels\nVersion 6: fixed issues on earlier Gnome Shell versions", "link": "https://extensions.gnome.org/extension/4655/date-menu-formatter/", "shell_version_map": {"40": {"version": "7", "sha256": "0l6fx4dfqr1pkpg7ckiynicwjzjrdn31mcbksk1a199scivkhilk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyBjdXN0b21pemF0aW9uIG9mIHRoZSBkYXRlIGRpc3BsYXkgaW4gdGhlIHBhbmVsLlxuXG5NaWdodCBiZSBlc3BlY2lhbGx5IHVzZWZ1bCBpZiB5b3UncmUgdXNpbmcgYSBob3Jpem9udGFsIHBhbmVsIHdoaWNoIGRvZXMgbm90IGF0IGFsbCB3b3JrIHdlbGwgd2l0aCB0aGUgZGVmYXVsdCBkYXRlIGRpc3BsYXkuXG5cbkNIQU5HRUxPR1xuVmVyc2lvbiA1OiBhZGRlZCBzdXBwb3J0IGZvciBtdWx0aXBsZSBEYXNoIFRvIFBhbmVsIHBhbmVsc1xuVmVyc2lvbiA2OiBmaXhlZCBpc3N1ZXMgb24gZWFybGllciBHbm9tZSBTaGVsbCB2ZXJzaW9ucyIsCiAgIm5hbWUiOiAiRGF0ZSBNZW51IEZvcm1hdHRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXRlLW1lbnUtZm9ybWF0dGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImRhdGUtbWVudS1mb3JtYXR0ZXJAbWFyY2luamFrdWJvd3NraS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "41": {"version": "7", "sha256": "0l6fx4dfqr1pkpg7ckiynicwjzjrdn31mcbksk1a199scivkhilk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyBjdXN0b21pemF0aW9uIG9mIHRoZSBkYXRlIGRpc3BsYXkgaW4gdGhlIHBhbmVsLlxuXG5NaWdodCBiZSBlc3BlY2lhbGx5IHVzZWZ1bCBpZiB5b3UncmUgdXNpbmcgYSBob3Jpem9udGFsIHBhbmVsIHdoaWNoIGRvZXMgbm90IGF0IGFsbCB3b3JrIHdlbGwgd2l0aCB0aGUgZGVmYXVsdCBkYXRlIGRpc3BsYXkuXG5cbkNIQU5HRUxPR1xuVmVyc2lvbiA1OiBhZGRlZCBzdXBwb3J0IGZvciBtdWx0aXBsZSBEYXNoIFRvIFBhbmVsIHBhbmVsc1xuVmVyc2lvbiA2OiBmaXhlZCBpc3N1ZXMgb24gZWFybGllciBHbm9tZSBTaGVsbCB2ZXJzaW9ucyIsCiAgIm5hbWUiOiAiRGF0ZSBNZW51IEZvcm1hdHRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXRlLW1lbnUtZm9ybWF0dGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImRhdGUtbWVudS1mb3JtYXR0ZXJAbWFyY2luamFrdWJvd3NraS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "42": {"version": "7", "sha256": "0l6fx4dfqr1pkpg7ckiynicwjzjrdn31mcbksk1a199scivkhilk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyBjdXN0b21pemF0aW9uIG9mIHRoZSBkYXRlIGRpc3BsYXkgaW4gdGhlIHBhbmVsLlxuXG5NaWdodCBiZSBlc3BlY2lhbGx5IHVzZWZ1bCBpZiB5b3UncmUgdXNpbmcgYSBob3Jpem9udGFsIHBhbmVsIHdoaWNoIGRvZXMgbm90IGF0IGFsbCB3b3JrIHdlbGwgd2l0aCB0aGUgZGVmYXVsdCBkYXRlIGRpc3BsYXkuXG5cbkNIQU5HRUxPR1xuVmVyc2lvbiA1OiBhZGRlZCBzdXBwb3J0IGZvciBtdWx0aXBsZSBEYXNoIFRvIFBhbmVsIHBhbmVsc1xuVmVyc2lvbiA2OiBmaXhlZCBpc3N1ZXMgb24gZWFybGllciBHbm9tZSBTaGVsbCB2ZXJzaW9ucyIsCiAgIm5hbWUiOiAiRGF0ZSBNZW51IEZvcm1hdHRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXRlLW1lbnUtZm9ybWF0dGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImRhdGUtbWVudS1mb3JtYXR0ZXJAbWFyY2luamFrdWJvd3NraS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
@@ -640,7 +640,7 @@
 , {"uuid": "burn-my-windows@schneegans.github.com", "name": "Burn My Windows", "pname": "burn-my-windows", "description": "Disintegrate your windows with style.", "link": "https://extensions.gnome.org/extension/4679/burn-my-windows/", "shell_version_map": {"38": {"version": "21", "sha256": "0jsb89vysc2l5vnj5qf9wk2y61ymwpm0qg3vqpw2nnv45wblwvjc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2ludGVncmF0ZSB5b3VyIHdpbmRvd3Mgd2l0aCBzdHlsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJidXJuLW15LXdpbmRvd3MiLAogICJuYW1lIjogIkJ1cm4gTXkgV2luZG93cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5idXJuLW15LXdpbmRvd3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vU2NobmVlZ2Fucy9CdXJuLU15LVdpbmRvd3MiLAogICJ1dWlkIjogImJ1cm4tbXktd2luZG93c0BzY2huZWVnYW5zLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMjEKfQ=="}, "40": {"version": "21", "sha256": "0jsb89vysc2l5vnj5qf9wk2y61ymwpm0qg3vqpw2nnv45wblwvjc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2ludGVncmF0ZSB5b3VyIHdpbmRvd3Mgd2l0aCBzdHlsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJidXJuLW15LXdpbmRvd3MiLAogICJuYW1lIjogIkJ1cm4gTXkgV2luZG93cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5idXJuLW15LXdpbmRvd3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vU2NobmVlZ2Fucy9CdXJuLU15LVdpbmRvd3MiLAogICJ1dWlkIjogImJ1cm4tbXktd2luZG93c0BzY2huZWVnYW5zLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMjEKfQ=="}, "41": {"version": "21", "sha256": "0jsb89vysc2l5vnj5qf9wk2y61ymwpm0qg3vqpw2nnv45wblwvjc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2ludGVncmF0ZSB5b3VyIHdpbmRvd3Mgd2l0aCBzdHlsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJidXJuLW15LXdpbmRvd3MiLAogICJuYW1lIjogIkJ1cm4gTXkgV2luZG93cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5idXJuLW15LXdpbmRvd3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vU2NobmVlZ2Fucy9CdXJuLU15LVdpbmRvd3MiLAogICJ1dWlkIjogImJ1cm4tbXktd2luZG93c0BzY2huZWVnYW5zLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMjEKfQ=="}, "42": {"version": "21", "sha256": "0jsb89vysc2l5vnj5qf9wk2y61ymwpm0qg3vqpw2nnv45wblwvjc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2ludGVncmF0ZSB5b3VyIHdpbmRvd3Mgd2l0aCBzdHlsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJidXJuLW15LXdpbmRvd3MiLAogICJuYW1lIjogIkJ1cm4gTXkgV2luZG93cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5idXJuLW15LXdpbmRvd3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vU2NobmVlZ2Fucy9CdXJuLU15LVdpbmRvd3MiLAogICJ1dWlkIjogImJ1cm4tbXktd2luZG93c0BzY2huZWVnYW5zLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMjEKfQ=="}, "43": {"version": "21", "sha256": "0jsb89vysc2l5vnj5qf9wk2y61ymwpm0qg3vqpw2nnv45wblwvjc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2ludGVncmF0ZSB5b3VyIHdpbmRvd3Mgd2l0aCBzdHlsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJidXJuLW15LXdpbmRvd3MiLAogICJuYW1lIjogIkJ1cm4gTXkgV2luZG93cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5idXJuLW15LXdpbmRvd3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vU2NobmVlZ2Fucy9CdXJuLU15LVdpbmRvd3MiLAogICJ1dWlkIjogImJ1cm4tbXktd2luZG93c0BzY2huZWVnYW5zLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMjEKfQ=="}}}
 , {"uuid": "babar-lite@fthx", "name": "BaBar Lite", "pname": "babar-task-bar-lite-for-gnome-40", "description": "Task bar. App grid, favorites, workspaces and tasks in panel. Light extension.\n\n Replace 'Activities' button by all current workspaces and apps buttons. Switch workspace/app or toggle overview by clicking on these buttons. Drag and drop favorite, task, dash item or app grid item to any workspace (you cannot reorder tasks inside a workspace). Change 'Places' label to an icon. No settings, use BaBar classic for that.\n\n You can use names for workspaces: there are two ways for that. 1) Edit the string array 'org.gnome.desktop.wm.preferences.workspace-names' gsettings key (through dconf editor, e.g.). 2) Use official GNOME extension Workspaces Indicator's settings. You don't have to write a long enough list: numbers are displayed if no workspace name is defined.", "link": "https://extensions.gnome.org/extension/4681/babar-task-bar-lite-for-gnome-40/", "shell_version_map": {"40": {"version": "2", "sha256": "01m48bwpn1as90ahpnl9ari3s2bj8423032nw12ac45wwcnb9yvj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gTm8gc2V0dGluZ3MsIHVzZSBCYUJhciBjbGFzc2ljIGZvciB0aGF0LlxuXG4gWW91IGNhbiB1c2UgbmFtZXMgZm9yIHdvcmtzcGFjZXM6IHRoZXJlIGFyZSB0d28gd2F5cyBmb3IgdGhhdC4gMSkgRWRpdCB0aGUgc3RyaW5nIGFycmF5ICdvcmcuZ25vbWUuZGVza3RvcC53bS5wcmVmZXJlbmNlcy53b3Jrc3BhY2UtbmFtZXMnIGdzZXR0aW5ncyBrZXkgKHRocm91Z2ggZGNvbmYgZWRpdG9yLCBlLmcuKS4gMikgVXNlIG9mZmljaWFsIEdOT01FIGV4dGVuc2lvbiBXb3Jrc3BhY2VzIEluZGljYXRvcidzIHNldHRpbmdzLiBZb3UgZG9uJ3QgaGF2ZSB0byB3cml0ZSBhIGxvbmcgZW5vdWdoIGxpc3Q6IG51bWJlcnMgYXJlIGRpc3BsYXllZCBpZiBubyB3b3Jrc3BhY2UgbmFtZSBpcyBkZWZpbmVkLiIsCiAgIm5hbWUiOiAiQmFCYXIgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvYmFiYXItbGl0ZSIsCiAgInV1aWQiOiAiYmFiYXItbGl0ZUBmdGh4IiwKICAidmVyc2lvbiI6IDIKfQ=="}, "41": {"version": "2", "sha256": "01m48bwpn1as90ahpnl9ari3s2bj8423032nw12ac45wwcnb9yvj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gTm8gc2V0dGluZ3MsIHVzZSBCYUJhciBjbGFzc2ljIGZvciB0aGF0LlxuXG4gWW91IGNhbiB1c2UgbmFtZXMgZm9yIHdvcmtzcGFjZXM6IHRoZXJlIGFyZSB0d28gd2F5cyBmb3IgdGhhdC4gMSkgRWRpdCB0aGUgc3RyaW5nIGFycmF5ICdvcmcuZ25vbWUuZGVza3RvcC53bS5wcmVmZXJlbmNlcy53b3Jrc3BhY2UtbmFtZXMnIGdzZXR0aW5ncyBrZXkgKHRocm91Z2ggZGNvbmYgZWRpdG9yLCBlLmcuKS4gMikgVXNlIG9mZmljaWFsIEdOT01FIGV4dGVuc2lvbiBXb3Jrc3BhY2VzIEluZGljYXRvcidzIHNldHRpbmdzLiBZb3UgZG9uJ3QgaGF2ZSB0byB3cml0ZSBhIGxvbmcgZW5vdWdoIGxpc3Q6IG51bWJlcnMgYXJlIGRpc3BsYXllZCBpZiBubyB3b3Jrc3BhY2UgbmFtZSBpcyBkZWZpbmVkLiIsCiAgIm5hbWUiOiAiQmFCYXIgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvYmFiYXItbGl0ZSIsCiAgInV1aWQiOiAiYmFiYXItbGl0ZUBmdGh4IiwKICAidmVyc2lvbiI6IDIKfQ=="}, "42": {"version": "2", "sha256": "01m48bwpn1as90ahpnl9ari3s2bj8423032nw12ac45wwcnb9yvj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gTm8gc2V0dGluZ3MsIHVzZSBCYUJhciBjbGFzc2ljIGZvciB0aGF0LlxuXG4gWW91IGNhbiB1c2UgbmFtZXMgZm9yIHdvcmtzcGFjZXM6IHRoZXJlIGFyZSB0d28gd2F5cyBmb3IgdGhhdC4gMSkgRWRpdCB0aGUgc3RyaW5nIGFycmF5ICdvcmcuZ25vbWUuZGVza3RvcC53bS5wcmVmZXJlbmNlcy53b3Jrc3BhY2UtbmFtZXMnIGdzZXR0aW5ncyBrZXkgKHRocm91Z2ggZGNvbmYgZWRpdG9yLCBlLmcuKS4gMikgVXNlIG9mZmljaWFsIEdOT01FIGV4dGVuc2lvbiBXb3Jrc3BhY2VzIEluZGljYXRvcidzIHNldHRpbmdzLiBZb3UgZG9uJ3QgaGF2ZSB0byB3cml0ZSBhIGxvbmcgZW5vdWdoIGxpc3Q6IG51bWJlcnMgYXJlIGRpc3BsYXllZCBpZiBubyB3b3Jrc3BhY2UgbmFtZSBpcyBkZWZpbmVkLiIsCiAgIm5hbWUiOiAiQmFCYXIgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvYmFiYXItbGl0ZSIsCiAgInV1aWQiOiAiYmFiYXItbGl0ZUBmdGh4IiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "useless-gaps@pimsnel.com", "name": "Useless Gaps", "pname": "useless-gaps", "description": "For aesthetic purposes adds useless gaps around tiled and maximized windows\n\nFeature requests and bug reports on github get my attention ealier.\nIf you like this extension please star it on Github.", "link": "https://extensions.gnome.org/extension/4684/useless-gaps/", "shell_version_map": {"38": {"version": "8", "sha256": "16md01fp6mvizak8a59rxq1m2bx0s4k9h48097915r5xmfc0vpd8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvciBhZXN0aGV0aWMgcHVycG9zZXMgYWRkcyB1c2VsZXNzIGdhcHMgYXJvdW5kIHRpbGVkIGFuZCBtYXhpbWl6ZWQgd2luZG93c1xuXG5GZWF0dXJlIHJlcXVlc3RzIGFuZCBidWcgcmVwb3J0cyBvbiBnaXRodWIgZ2V0IG15IGF0dGVudGlvbiBlYWxpZXIuXG5JZiB5b3UgbGlrZSB0aGlzIGV4dGVuc2lvbiBwbGVhc2Ugc3RhciBpdCBvbiBHaXRodWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidXNlbGVzcy1nYXBzIiwKICAibmFtZSI6ICJVc2VsZXNzIEdhcHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudXNlbGVzcy1nYXBzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWlwbWlwL2dub21lLXNoZWxsLWV4dGVuc2lvbnMtdXNlbGVzcy1nYXBzIiwKICAidXVpZCI6ICJ1c2VsZXNzLWdhcHNAcGltc25lbC5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}, "40": {"version": "8", "sha256": "16md01fp6mvizak8a59rxq1m2bx0s4k9h48097915r5xmfc0vpd8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvciBhZXN0aGV0aWMgcHVycG9zZXMgYWRkcyB1c2VsZXNzIGdhcHMgYXJvdW5kIHRpbGVkIGFuZCBtYXhpbWl6ZWQgd2luZG93c1xuXG5GZWF0dXJlIHJlcXVlc3RzIGFuZCBidWcgcmVwb3J0cyBvbiBnaXRodWIgZ2V0IG15IGF0dGVudGlvbiBlYWxpZXIuXG5JZiB5b3UgbGlrZSB0aGlzIGV4dGVuc2lvbiBwbGVhc2Ugc3RhciBpdCBvbiBHaXRodWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidXNlbGVzcy1nYXBzIiwKICAibmFtZSI6ICJVc2VsZXNzIEdhcHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudXNlbGVzcy1nYXBzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWlwbWlwL2dub21lLXNoZWxsLWV4dGVuc2lvbnMtdXNlbGVzcy1nYXBzIiwKICAidXVpZCI6ICJ1c2VsZXNzLWdhcHNAcGltc25lbC5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}, "41": {"version": "8", "sha256": "16md01fp6mvizak8a59rxq1m2bx0s4k9h48097915r5xmfc0vpd8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvciBhZXN0aGV0aWMgcHVycG9zZXMgYWRkcyB1c2VsZXNzIGdhcHMgYXJvdW5kIHRpbGVkIGFuZCBtYXhpbWl6ZWQgd2luZG93c1xuXG5GZWF0dXJlIHJlcXVlc3RzIGFuZCBidWcgcmVwb3J0cyBvbiBnaXRodWIgZ2V0IG15IGF0dGVudGlvbiBlYWxpZXIuXG5JZiB5b3UgbGlrZSB0aGlzIGV4dGVuc2lvbiBwbGVhc2Ugc3RhciBpdCBvbiBHaXRodWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidXNlbGVzcy1nYXBzIiwKICAibmFtZSI6ICJVc2VsZXNzIEdhcHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudXNlbGVzcy1nYXBzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWlwbWlwL2dub21lLXNoZWxsLWV4dGVuc2lvbnMtdXNlbGVzcy1nYXBzIiwKICAidXVpZCI6ICJ1c2VsZXNzLWdhcHNAcGltc25lbC5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}, "42": {"version": "8", "sha256": "16md01fp6mvizak8a59rxq1m2bx0s4k9h48097915r5xmfc0vpd8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvciBhZXN0aGV0aWMgcHVycG9zZXMgYWRkcyB1c2VsZXNzIGdhcHMgYXJvdW5kIHRpbGVkIGFuZCBtYXhpbWl6ZWQgd2luZG93c1xuXG5GZWF0dXJlIHJlcXVlc3RzIGFuZCBidWcgcmVwb3J0cyBvbiBnaXRodWIgZ2V0IG15IGF0dGVudGlvbiBlYWxpZXIuXG5JZiB5b3UgbGlrZSB0aGlzIGV4dGVuc2lvbiBwbGVhc2Ugc3RhciBpdCBvbiBHaXRodWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidXNlbGVzcy1nYXBzIiwKICAibmFtZSI6ICJVc2VsZXNzIEdhcHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudXNlbGVzcy1nYXBzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWlwbWlwL2dub21lLXNoZWxsLWV4dGVuc2lvbnMtdXNlbGVzcy1nYXBzIiwKICAidXVpZCI6ICJ1c2VsZXNzLWdhcHNAcGltc25lbC5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}}}
-, {"uuid": "serverstatus@footeware.ca", "name": "Server Status Indicator", "pname": "server-status-indicator", "description": "Indicator displaying status of entered web server urls, green for up, red for down.", "link": "https://extensions.gnome.org/extension/4687/server-status-indicator/", "shell_version_map": {"40": {"version": "8", "sha256": "1mm2b6fwx58yvcq8fkxrkcb5bcm4ak8al5jw0939mwr8fjhgd13s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZGljYXRvciBkaXNwbGF5aW5nIHN0YXR1cyBvZiBlbnRlcmVkIHdlYiBzZXJ2ZXIgdXJscywgZ3JlZW4gZm9yIHVwLCByZWQgZm9yIGRvd24uIiwKICAibmFtZSI6ICJTZXJ2ZXIgU3RhdHVzIEluZGljYXRvciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zZXJ2ZXJzdGF0dXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0NyYWlnRm9vdGUvY2EuZm9vdGV3YXJlLmdub21lc2hlbGwuc2VydmVyc3RhdHVzLmdpdCIsCiAgInV1aWQiOiAic2VydmVyc3RhdHVzQGZvb3Rld2FyZS5jYSIsCiAgInZlcnNpb24iOiA4Cn0="}, "42": {"version": "8", "sha256": "1mm2b6fwx58yvcq8fkxrkcb5bcm4ak8al5jw0939mwr8fjhgd13s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZGljYXRvciBkaXNwbGF5aW5nIHN0YXR1cyBvZiBlbnRlcmVkIHdlYiBzZXJ2ZXIgdXJscywgZ3JlZW4gZm9yIHVwLCByZWQgZm9yIGRvd24uIiwKICAibmFtZSI6ICJTZXJ2ZXIgU3RhdHVzIEluZGljYXRvciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zZXJ2ZXJzdGF0dXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0NyYWlnRm9vdGUvY2EuZm9vdGV3YXJlLmdub21lc2hlbGwuc2VydmVyc3RhdHVzLmdpdCIsCiAgInV1aWQiOiAic2VydmVyc3RhdHVzQGZvb3Rld2FyZS5jYSIsCiAgInZlcnNpb24iOiA4Cn0="}}}
+, {"uuid": "serverstatus@footeware.ca", "name": "Server Status Indicator", "pname": "server-status-indicator", "description": "Indicator displaying status of entered web server urls, green for up, red for down.", "link": "https://extensions.gnome.org/extension/4687/server-status-indicator/", "shell_version_map": {"40": {"version": "8", "sha256": "1mm2b6fwx58yvcq8fkxrkcb5bcm4ak8al5jw0939mwr8fjhgd13s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZGljYXRvciBkaXNwbGF5aW5nIHN0YXR1cyBvZiBlbnRlcmVkIHdlYiBzZXJ2ZXIgdXJscywgZ3JlZW4gZm9yIHVwLCByZWQgZm9yIGRvd24uIiwKICAibmFtZSI6ICJTZXJ2ZXIgU3RhdHVzIEluZGljYXRvciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zZXJ2ZXJzdGF0dXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0NyYWlnRm9vdGUvY2EuZm9vdGV3YXJlLmdub21lc2hlbGwuc2VydmVyc3RhdHVzLmdpdCIsCiAgInV1aWQiOiAic2VydmVyc3RhdHVzQGZvb3Rld2FyZS5jYSIsCiAgInZlcnNpb24iOiA4Cn0="}, "42": {"version": "8", "sha256": "1mm2b6fwx58yvcq8fkxrkcb5bcm4ak8al5jw0939mwr8fjhgd13s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZGljYXRvciBkaXNwbGF5aW5nIHN0YXR1cyBvZiBlbnRlcmVkIHdlYiBzZXJ2ZXIgdXJscywgZ3JlZW4gZm9yIHVwLCByZWQgZm9yIGRvd24uIiwKICAibmFtZSI6ICJTZXJ2ZXIgU3RhdHVzIEluZGljYXRvciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zZXJ2ZXJzdGF0dXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0NyYWlnRm9vdGUvY2EuZm9vdGV3YXJlLmdub21lc2hlbGwuc2VydmVyc3RhdHVzLmdpdCIsCiAgInV1aWQiOiAic2VydmVyc3RhdHVzQGZvb3Rld2FyZS5jYSIsCiAgInZlcnNpb24iOiA4Cn0="}, "43": {"version": "9", "sha256": "19afjjkkga6ky7ixc03ga7fyg49jkqld01v05pq5jrbf1bhzgvcf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZGljYXRvciBkaXNwbGF5aW5nIHN0YXR1cyBvZiBlbnRlcmVkIHdlYiBzZXJ2ZXIgdXJscywgZ3JlZW4gZm9yIHVwLCByZWQgZm9yIGRvd24uIiwKICAibmFtZSI6ICJTZXJ2ZXIgU3RhdHVzIEluZGljYXRvciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zZXJ2ZXJzdGF0dXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQzIiwKICAgICI0My4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQ3JhaWdGb290ZS9jYS5mb290ZXdhcmUuZ25vbWVzaGVsbC5zZXJ2ZXJzdGF0dXMuZ2l0IiwKICAidXVpZCI6ICJzZXJ2ZXJzdGF0dXNAZm9vdGV3YXJlLmNhIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
 , {"uuid": "focus-follows-workspace@christopher.luebbemeier.gmail.com", "name": "Focus Follows Workspace", "pname": "focus-follows-workspace", "description": "Focus the primary monitor after switching workspaces via keyboard.\n\nThis extension is meant to be used with a multi-monitor setup with the setting \"Workspaces on primary display only\". It enables quick switching to an application on a given workspace via keyboard by preventing the focus from being restored to a window on a secondary monitor.", "link": "https://extensions.gnome.org/extension/4688/focus-follows-workspace/", "shell_version_map": {"41": {"version": "1", "sha256": "1xllg9wp7phrqa9897m9al740k60v01zird49vwwm24wzpmyby9k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvY3VzIHRoZSBwcmltYXJ5IG1vbml0b3IgYWZ0ZXIgc3dpdGNoaW5nIHdvcmtzcGFjZXMgdmlhIGtleWJvYXJkLlxuXG5UaGlzIGV4dGVuc2lvbiBpcyBtZWFudCB0byBiZSB1c2VkIHdpdGggYSBtdWx0aS1tb25pdG9yIHNldHVwIHdpdGggdGhlIHNldHRpbmcgXCJXb3Jrc3BhY2VzIG9uIHByaW1hcnkgZGlzcGxheSBvbmx5XCIuIEl0IGVuYWJsZXMgcXVpY2sgc3dpdGNoaW5nIHRvIGFuIGFwcGxpY2F0aW9uIG9uIGEgZ2l2ZW4gd29ya3NwYWNlIHZpYSBrZXlib2FyZCBieSBwcmV2ZW50aW5nIHRoZSBmb2N1cyBmcm9tIGJlaW5nIHJlc3RvcmVkIHRvIGEgd2luZG93IG9uIGEgc2Vjb25kYXJ5IG1vbml0b3IuIiwKICAibmFtZSI6ICJGb2N1cyBGb2xsb3dzIFdvcmtzcGFjZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9jaHJpc3RvcGhlci1sL2ZvY3VzLWZvbGxvd3Mtd29ya3NwYWNlIiwKICAidXVpZCI6ICJmb2N1cy1mb2xsb3dzLXdvcmtzcGFjZUBjaHJpc3RvcGhlci5sdWViYmVtZWllci5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"uuid": "pip-on-top@rafostar.github.com", "name": "PiP on top", "pname": "pip-on-top", "description": "Makes \"Picture-in-Picture\" windows stay on top (even on Wayland session). Compatible with Firefox and Clapper media player.", "link": "https://extensions.gnome.org/extension/4691/pip-on-top/", "shell_version_map": {"38": {"version": "2", "sha256": "1920nd7dr2159606mlv3c4fkambw1yx0a65rr961qx3w6jwd1pym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIFwiUGljdHVyZS1pbi1QaWN0dXJlXCIgd2luZG93cyBzdGF5IG9uIHRvcCAoZXZlbiBvbiBXYXlsYW5kIHNlc3Npb24pLiBDb21wYXRpYmxlIHdpdGggRmlyZWZveCBhbmQgQ2xhcHBlciBtZWRpYSBwbGF5ZXIuIiwKICAiZXh0ZW5zaW9uLWlkIjogInBpcC1vbi10b3AiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJwaXAtb24tdG9wIiwKICAibmFtZSI6ICJQaVAgb24gdG9wIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBpcC1vbi10b3AiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9SYWZvc3Rhci9nbm9tZS1zaGVsbC1leHRlbnNpb24tcGlwLW9uLXRvcCIsCiAgInV1aWQiOiAicGlwLW9uLXRvcEByYWZvc3Rhci5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "1920nd7dr2159606mlv3c4fkambw1yx0a65rr961qx3w6jwd1pym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIFwiUGljdHVyZS1pbi1QaWN0dXJlXCIgd2luZG93cyBzdGF5IG9uIHRvcCAoZXZlbiBvbiBXYXlsYW5kIHNlc3Npb24pLiBDb21wYXRpYmxlIHdpdGggRmlyZWZveCBhbmQgQ2xhcHBlciBtZWRpYSBwbGF5ZXIuIiwKICAiZXh0ZW5zaW9uLWlkIjogInBpcC1vbi10b3AiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJwaXAtb24tdG9wIiwKICAibmFtZSI6ICJQaVAgb24gdG9wIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBpcC1vbi10b3AiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9SYWZvc3Rhci9nbm9tZS1zaGVsbC1leHRlbnNpb24tcGlwLW9uLXRvcCIsCiAgInV1aWQiOiAicGlwLW9uLXRvcEByYWZvc3Rhci5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "41": {"version": "2", "sha256": "1920nd7dr2159606mlv3c4fkambw1yx0a65rr961qx3w6jwd1pym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIFwiUGljdHVyZS1pbi1QaWN0dXJlXCIgd2luZG93cyBzdGF5IG9uIHRvcCAoZXZlbiBvbiBXYXlsYW5kIHNlc3Npb24pLiBDb21wYXRpYmxlIHdpdGggRmlyZWZveCBhbmQgQ2xhcHBlciBtZWRpYSBwbGF5ZXIuIiwKICAiZXh0ZW5zaW9uLWlkIjogInBpcC1vbi10b3AiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJwaXAtb24tdG9wIiwKICAibmFtZSI6ICJQaVAgb24gdG9wIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBpcC1vbi10b3AiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9SYWZvc3Rhci9nbm9tZS1zaGVsbC1leHRlbnNpb24tcGlwLW9uLXRvcCIsCiAgInV1aWQiOiAicGlwLW9uLXRvcEByYWZvc3Rhci5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "42": {"version": "4", "sha256": "1gppfxk8nrg4zk18hmlnkn1q0vbm1rgykm9pibl6n7pbf30snp5m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIFwiUGljdHVyZS1pbi1QaWN0dXJlXCIgd2luZG93cyBzdGF5IG9uIHRvcCAoZXZlbiBvbiBXYXlsYW5kIHNlc3Npb24pLiBDb21wYXRpYmxlIHdpdGggRmlyZWZveCBhbmQgQ2xhcHBlciBtZWRpYSBwbGF5ZXIuIiwKICAiZXh0ZW5zaW9uLWlkIjogInBpcC1vbi10b3AiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJwaXAtb24tdG9wIiwKICAibmFtZSI6ICJQaVAgb24gdG9wIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBpcC1vbi10b3AiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUmFmb3N0YXIvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXBpcC1vbi10b3AiLAogICJ1dWlkIjogInBpcC1vbi10b3BAcmFmb3N0YXIuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "roundedSystemMenuButtons@pratap.fastmail.fm", "name": "Rounded System Menu Buttons", "pname": "rounded-system-menu-buttons", "description": "Rounded System Menu Buttons", "link": "https://extensions.gnome.org/extension/4693/rounded-system-menu-buttons/", "shell_version_map": {"38": {"version": "17", "sha256": "1cwjyw4sc4i4vdm458qdnjzvmiqyz9vscicwarsd9cvik57p44f5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJvdW5kZWQgU3lzdGVtIE1lbnUgQnV0dG9ucyIsCiAgIm5hbWUiOiAiUm91bmRlZCBTeXN0ZW0gTWVudSBCdXR0b25zIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnJvdW5kLXN5c3RlbS1tZW51LWJ1dHRvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1BSQVRBUC1LVU1BUi9yb3VuZGVkLXN5c3RlbS1tZW51LWJ1dHRvbnMiLAogICJ1dWlkIjogInJvdW5kZWRTeXN0ZW1NZW51QnV0dG9uc0BwcmF0YXAuZmFzdG1haWwuZm0iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "40": {"version": "20", "sha256": "044a1vp619lvxrnxiv4af2z4m9x18aqhp97g22wh4y3h8ns5ds8h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJvdW5kZWQgU3lzdGVtIE1lbnUgQnV0dG9ucyIsCiAgIm5hbWUiOiAiUm91bmRlZCBTeXN0ZW0gTWVudSBCdXR0b25zIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnJvdW5kLXN5c3RlbS1tZW51LWJ1dHRvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9QUkFUQVAtS1VNQVIvcm91bmRlZC1zeXN0ZW0tbWVudS1idXR0b25zIiwKICAidXVpZCI6ICJyb3VuZGVkU3lzdGVtTWVudUJ1dHRvbnNAcHJhdGFwLmZhc3RtYWlsLmZtIiwKICAidmVyc2lvbiI6IDIwCn0="}, "41": {"version": "20", "sha256": "044a1vp619lvxrnxiv4af2z4m9x18aqhp97g22wh4y3h8ns5ds8h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJvdW5kZWQgU3lzdGVtIE1lbnUgQnV0dG9ucyIsCiAgIm5hbWUiOiAiUm91bmRlZCBTeXN0ZW0gTWVudSBCdXR0b25zIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnJvdW5kLXN5c3RlbS1tZW51LWJ1dHRvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9QUkFUQVAtS1VNQVIvcm91bmRlZC1zeXN0ZW0tbWVudS1idXR0b25zIiwKICAidXVpZCI6ICJyb3VuZGVkU3lzdGVtTWVudUJ1dHRvbnNAcHJhdGFwLmZhc3RtYWlsLmZtIiwKICAidmVyc2lvbiI6IDIwCn0="}, "42": {"version": "20", "sha256": "044a1vp619lvxrnxiv4af2z4m9x18aqhp97g22wh4y3h8ns5ds8h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJvdW5kZWQgU3lzdGVtIE1lbnUgQnV0dG9ucyIsCiAgIm5hbWUiOiAiUm91bmRlZCBTeXN0ZW0gTWVudSBCdXR0b25zIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnJvdW5kLXN5c3RlbS1tZW51LWJ1dHRvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9QUkFUQVAtS1VNQVIvcm91bmRlZC1zeXN0ZW0tbWVudS1idXR0b25zIiwKICAidXVpZCI6ICJyb3VuZGVkU3lzdGVtTWVudUJ1dHRvbnNAcHJhdGFwLmZhc3RtYWlsLmZtIiwKICAidmVyc2lvbiI6IDIwCn0="}}}
@@ -658,7 +658,7 @@
 , {"uuid": "primary_input_on_lockscreen@sagidayan.com", "name": "Primary Input on LockScreen", "pname": "primary-input-on-lockscreen", "description": "Automatically change input layout to primary on lock screen", "link": "https://extensions.gnome.org/extension/4727/primary-input-on-lockscreen/", "shell_version_map": {"40": {"version": "3", "sha256": "00i0wl4yb5gmj35zzj0b8kbdbm7y50b0kls6dlackdxbqgh88ji3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgY2hhbmdlIGlucHV0IGxheW91dCB0byBwcmltYXJ5IG9uIGxvY2sgc2NyZWVuIiwKICAibmFtZSI6ICJQcmltYXJ5IElucHV0IG9uIExvY2tTY3JlZW4iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9zYWdpZGF5YW4vcHJpbWFyeS1pbnB1dC1vbi1sb2Nrc2NyZWVuIiwKICAidXVpZCI6ICJwcmltYXJ5X2lucHV0X29uX2xvY2tzY3JlZW5Ac2FnaWRheWFuLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}, "41": {"version": "3", "sha256": "00i0wl4yb5gmj35zzj0b8kbdbm7y50b0kls6dlackdxbqgh88ji3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgY2hhbmdlIGlucHV0IGxheW91dCB0byBwcmltYXJ5IG9uIGxvY2sgc2NyZWVuIiwKICAibmFtZSI6ICJQcmltYXJ5IElucHV0IG9uIExvY2tTY3JlZW4iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9zYWdpZGF5YW4vcHJpbWFyeS1pbnB1dC1vbi1sb2Nrc2NyZWVuIiwKICAidXVpZCI6ICJwcmltYXJ5X2lucHV0X29uX2xvY2tzY3JlZW5Ac2FnaWRheWFuLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}, "42": {"version": "3", "sha256": "00i0wl4yb5gmj35zzj0b8kbdbm7y50b0kls6dlackdxbqgh88ji3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgY2hhbmdlIGlucHV0IGxheW91dCB0byBwcmltYXJ5IG9uIGxvY2sgc2NyZWVuIiwKICAibmFtZSI6ICJQcmltYXJ5IElucHV0IG9uIExvY2tTY3JlZW4iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9zYWdpZGF5YW4vcHJpbWFyeS1pbnB1dC1vbi1sb2Nrc2NyZWVuIiwKICAidXVpZCI6ICJwcmltYXJ5X2lucHV0X29uX2xvY2tzY3JlZW5Ac2FnaWRheWFuLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"uuid": "browser-tabs@com.github.harshadgavali", "name": "Browser tabs", "pname": "browser-tabs", "description": "Search and switch to browser tabs using GNOME overview/ArcMenu\n\nSee following github link for installing necessary browser extension and host app!", "link": "https://extensions.gnome.org/extension/4733/browser-tabs/", "shell_version_map": {"40": {"version": "4", "sha256": "1r1m6cfi9pv0sz651b95ji2rk40rhwmdnivq2jaf030w3qrkwysf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlYXJjaCBhbmQgc3dpdGNoIHRvIGJyb3dzZXIgdGFicyB1c2luZyBHTk9NRSBvdmVydmlldy9BcmNNZW51XG5cblNlZSBmb2xsb3dpbmcgZ2l0aHViIGxpbmsgZm9yIGluc3RhbGxpbmcgbmVjZXNzYXJ5IGJyb3dzZXIgZXh0ZW5zaW9uIGFuZCBob3N0IGFwcCEiLAogICJuYW1lIjogIkJyb3dzZXIgdGFicyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hhcnNoYWRnYXZhbGkvc2VhcmNocHJvdmlkZXItZm9yLWJyb3dzZXItdGFicy5naXQvIiwKICAidXVpZCI6ICJicm93c2VyLXRhYnNAY29tLmdpdGh1Yi5oYXJzaGFkZ2F2YWxpIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "1r1m6cfi9pv0sz651b95ji2rk40rhwmdnivq2jaf030w3qrkwysf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlYXJjaCBhbmQgc3dpdGNoIHRvIGJyb3dzZXIgdGFicyB1c2luZyBHTk9NRSBvdmVydmlldy9BcmNNZW51XG5cblNlZSBmb2xsb3dpbmcgZ2l0aHViIGxpbmsgZm9yIGluc3RhbGxpbmcgbmVjZXNzYXJ5IGJyb3dzZXIgZXh0ZW5zaW9uIGFuZCBob3N0IGFwcCEiLAogICJuYW1lIjogIkJyb3dzZXIgdGFicyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hhcnNoYWRnYXZhbGkvc2VhcmNocHJvdmlkZXItZm9yLWJyb3dzZXItdGFicy5naXQvIiwKICAidXVpZCI6ICJicm93c2VyLXRhYnNAY29tLmdpdGh1Yi5oYXJzaGFkZ2F2YWxpIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "42": {"version": "4", "sha256": "1r1m6cfi9pv0sz651b95ji2rk40rhwmdnivq2jaf030w3qrkwysf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlYXJjaCBhbmQgc3dpdGNoIHRvIGJyb3dzZXIgdGFicyB1c2luZyBHTk9NRSBvdmVydmlldy9BcmNNZW51XG5cblNlZSBmb2xsb3dpbmcgZ2l0aHViIGxpbmsgZm9yIGluc3RhbGxpbmcgbmVjZXNzYXJ5IGJyb3dzZXIgZXh0ZW5zaW9uIGFuZCBob3N0IGFwcCEiLAogICJuYW1lIjogIkJyb3dzZXIgdGFicyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hhcnNoYWRnYXZhbGkvc2VhcmNocHJvdmlkZXItZm9yLWJyb3dzZXItdGFicy5naXQvIiwKICAidXVpZCI6ICJicm93c2VyLXRhYnNAY29tLmdpdGh1Yi5oYXJzaGFkZ2F2YWxpIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "smart-auto-move@khimaros.com", "name": "Smart Auto Move", "pname": "smart-auto-move", "description": "Smart Auto Move learns the size and position of your application windows and restores them to the correct place on subsequent launches. Supports Wayland.\n\nNOTE: Optimized for use with static workspaces. For more control, can be set to default IGNORE and then selectively RESTORE only desired apps.", "link": "https://extensions.gnome.org/extension/4736/smart-auto-move/", "shell_version_map": {"41": {"version": "16", "sha256": "1lzz38qplz2qgfrkjnx72mkjixcmv8ydna3kfnysbisr0ab9klh6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNtYXJ0IEF1dG8gTW92ZSBsZWFybnMgdGhlIHNpemUgYW5kIHBvc2l0aW9uIG9mIHlvdXIgYXBwbGljYXRpb24gd2luZG93cyBhbmQgcmVzdG9yZXMgdGhlbSB0byB0aGUgY29ycmVjdCBwbGFjZSBvbiBzdWJzZXF1ZW50IGxhdW5jaGVzLiBTdXBwb3J0cyBXYXlsYW5kLlxuXG5OT1RFOiBPcHRpbWl6ZWQgZm9yIHVzZSB3aXRoIHN0YXRpYyB3b3Jrc3BhY2VzLiBGb3IgbW9yZSBjb250cm9sLCBjYW4gYmUgc2V0IHRvIGRlZmF1bHQgSUdOT1JFIGFuZCB0aGVuIHNlbGVjdGl2ZWx5IFJFU1RPUkUgb25seSBkZXNpcmVkIGFwcHMuIiwKICAibmFtZSI6ICJTbWFydCBBdXRvIE1vdmUiLAogICJvcmlnaW5hbC1hdXRob3IiOiAia2hpbWFyb3MiLAogICJzZXR0aW5ncy1wYXRoIjogIi9vcmcvZ25vbWUvc2hlbGwvZXh0ZW5zaW9ucy9zbWFydC1hdXRvLW1vdmUvIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNtYXJ0LWF1dG8tbW92ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2hpbWFyb3Mvc21hcnQtYXV0by1tb3ZlIiwKICAidXVpZCI6ICJzbWFydC1hdXRvLW1vdmVAa2hpbWFyb3MuY29tIiwKICAidmVyc2lvbiI6IDE2Cn0="}, "42": {"version": "16", "sha256": "1lzz38qplz2qgfrkjnx72mkjixcmv8ydna3kfnysbisr0ab9klh6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNtYXJ0IEF1dG8gTW92ZSBsZWFybnMgdGhlIHNpemUgYW5kIHBvc2l0aW9uIG9mIHlvdXIgYXBwbGljYXRpb24gd2luZG93cyBhbmQgcmVzdG9yZXMgdGhlbSB0byB0aGUgY29ycmVjdCBwbGFjZSBvbiBzdWJzZXF1ZW50IGxhdW5jaGVzLiBTdXBwb3J0cyBXYXlsYW5kLlxuXG5OT1RFOiBPcHRpbWl6ZWQgZm9yIHVzZSB3aXRoIHN0YXRpYyB3b3Jrc3BhY2VzLiBGb3IgbW9yZSBjb250cm9sLCBjYW4gYmUgc2V0IHRvIGRlZmF1bHQgSUdOT1JFIGFuZCB0aGVuIHNlbGVjdGl2ZWx5IFJFU1RPUkUgb25seSBkZXNpcmVkIGFwcHMuIiwKICAibmFtZSI6ICJTbWFydCBBdXRvIE1vdmUiLAogICJvcmlnaW5hbC1hdXRob3IiOiAia2hpbWFyb3MiLAogICJzZXR0aW5ncy1wYXRoIjogIi9vcmcvZ25vbWUvc2hlbGwvZXh0ZW5zaW9ucy9zbWFydC1hdXRvLW1vdmUvIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNtYXJ0LWF1dG8tbW92ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2hpbWFyb3Mvc21hcnQtYXV0by1tb3ZlIiwKICAidXVpZCI6ICJzbWFydC1hdXRvLW1vdmVAa2hpbWFyb3MuY29tIiwKICAidmVyc2lvbiI6IDE2Cn0="}}}
-, {"uuid": "hplip-menu2@grizzlysmit.smit.id.au", "name": "Alternate Menu for Hplip2", "pname": "alternate-menu-for-hplip2", "description": "control your hp printers by calling the device manager hp-toolbox, also some useful links\nMotivation: the hp-systray doesn't work reliably under gnome shell\nyou need to have installed hplip in order to use this\nChoice of using a printer icon or a hp_logo.png if it's installed in the same place as mine on Ubuntu\nyou could use symbolic links to fake the path.\nThis is a replacement for the old \"Alternate Menu for Hplip\" which doesn't work under the new Gome-Shell I have cleaned it up a bit and it has a few new menu's but it is still basically the same thing.\n Added even more menus all most all system settings ones.\n\nNote: the menu will be too big if your resolution is way too low like 800x600 I have no soln for this just now.", "link": "https://extensions.gnome.org/extension/4739/alternate-menu-for-hplip2/", "shell_version_map": {"40": {"version": "5", "sha256": "1r6iv02zlkkcq0h57agirm6sqi17pcqkyjlsd5bn8h4hykc7bwb7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImNvbnRyb2wgeW91ciBocCBwcmludGVycyBieSBjYWxsaW5nIHRoZSBkZXZpY2UgbWFuYWdlciBocC10b29sYm94LCBhbHNvIHNvbWUgdXNlZnVsIGxpbmtzXG5Nb3RpdmF0aW9uOiB0aGUgaHAtc3lzdHJheSBkb2Vzbid0IHdvcmsgcmVsaWFibHkgdW5kZXIgZ25vbWUgc2hlbGxcbnlvdSBuZWVkIHRvIGhhdmUgaW5zdGFsbGVkIGhwbGlwIGluIG9yZGVyIHRvIHVzZSB0aGlzXG5DaG9pY2Ugb2YgdXNpbmcgYSBwcmludGVyIGljb24gb3IgYSBocF9sb2dvLnBuZyBpZiBpdCdzIGluc3RhbGxlZCBpbiB0aGUgc2FtZSBwbGFjZSBhcyBtaW5lIG9uIFVidW50dVxueW91IGNvdWxkIHVzZSBzeW1ib2xpYyBsaW5rcyB0byBmYWtlIHRoZSBwYXRoLlxuVGhpcyBpcyBhIHJlcGxhY2VtZW50IGZvciB0aGUgb2xkIFwiQWx0ZXJuYXRlIE1lbnUgZm9yIEhwbGlwXCIgd2hpY2ggZG9lc24ndCB3b3JrIHVuZGVyIHRoZSBuZXcgR29tZS1TaGVsbCBJIGhhdmUgY2xlYW5lZCBpdCB1cCBhIGJpdCBhbmQgaXQgaGFzIGEgZmV3IG5ldyBtZW51J3MgYnV0IGl0IGlzIHN0aWxsIGJhc2ljYWxseSB0aGUgc2FtZSB0aGluZy5cbiBBZGRlZCBldmVuIG1vcmUgbWVudXMgYWxsIG1vc3QgYWxsIHN5c3RlbSBzZXR0aW5ncyBvbmVzLlxuXG5Ob3RlOiB0aGUgbWVudSB3aWxsIGJlIHRvbyBiaWcgaWYgeW91ciByZXNvbHV0aW9uIGlzIHdheSB0b28gbG93IGxpa2UgODAweDYwMCBJIGhhdmUgbm8gc29sbiBmb3IgdGhpcyBqdXN0IG5vdy4iLAogICJuYW1lIjogIkFsdGVybmF0ZSBNZW51IGZvciBIcGxpcDIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaHBsaXAtbWVudTIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ncml6emx5c21pdC9ocGxpcC1tZW51Mi1ncml6emx5c21pdC5zbWl0LmlkLmF1IiwKICAidXVpZCI6ICJocGxpcC1tZW51MkBncml6emx5c21pdC5zbWl0LmlkLmF1IiwKICAidmVyc2lvbiI6IDUKfQ=="}, "41": {"version": "5", "sha256": "1r6iv02zlkkcq0h57agirm6sqi17pcqkyjlsd5bn8h4hykc7bwb7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImNvbnRyb2wgeW91ciBocCBwcmludGVycyBieSBjYWxsaW5nIHRoZSBkZXZpY2UgbWFuYWdlciBocC10b29sYm94LCBhbHNvIHNvbWUgdXNlZnVsIGxpbmtzXG5Nb3RpdmF0aW9uOiB0aGUgaHAtc3lzdHJheSBkb2Vzbid0IHdvcmsgcmVsaWFibHkgdW5kZXIgZ25vbWUgc2hlbGxcbnlvdSBuZWVkIHRvIGhhdmUgaW5zdGFsbGVkIGhwbGlwIGluIG9yZGVyIHRvIHVzZSB0aGlzXG5DaG9pY2Ugb2YgdXNpbmcgYSBwcmludGVyIGljb24gb3IgYSBocF9sb2dvLnBuZyBpZiBpdCdzIGluc3RhbGxlZCBpbiB0aGUgc2FtZSBwbGFjZSBhcyBtaW5lIG9uIFVidW50dVxueW91IGNvdWxkIHVzZSBzeW1ib2xpYyBsaW5rcyB0byBmYWtlIHRoZSBwYXRoLlxuVGhpcyBpcyBhIHJlcGxhY2VtZW50IGZvciB0aGUgb2xkIFwiQWx0ZXJuYXRlIE1lbnUgZm9yIEhwbGlwXCIgd2hpY2ggZG9lc24ndCB3b3JrIHVuZGVyIHRoZSBuZXcgR29tZS1TaGVsbCBJIGhhdmUgY2xlYW5lZCBpdCB1cCBhIGJpdCBhbmQgaXQgaGFzIGEgZmV3IG5ldyBtZW51J3MgYnV0IGl0IGlzIHN0aWxsIGJhc2ljYWxseSB0aGUgc2FtZSB0aGluZy5cbiBBZGRlZCBldmVuIG1vcmUgbWVudXMgYWxsIG1vc3QgYWxsIHN5c3RlbSBzZXR0aW5ncyBvbmVzLlxuXG5Ob3RlOiB0aGUgbWVudSB3aWxsIGJlIHRvbyBiaWcgaWYgeW91ciByZXNvbHV0aW9uIGlzIHdheSB0b28gbG93IGxpa2UgODAweDYwMCBJIGhhdmUgbm8gc29sbiBmb3IgdGhpcyBqdXN0IG5vdy4iLAogICJuYW1lIjogIkFsdGVybmF0ZSBNZW51IGZvciBIcGxpcDIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaHBsaXAtbWVudTIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ncml6emx5c21pdC9ocGxpcC1tZW51Mi1ncml6emx5c21pdC5zbWl0LmlkLmF1IiwKICAidXVpZCI6ICJocGxpcC1tZW51MkBncml6emx5c21pdC5zbWl0LmlkLmF1IiwKICAidmVyc2lvbiI6IDUKfQ=="}, "42": {"version": "5", "sha256": "1r6iv02zlkkcq0h57agirm6sqi17pcqkyjlsd5bn8h4hykc7bwb7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImNvbnRyb2wgeW91ciBocCBwcmludGVycyBieSBjYWxsaW5nIHRoZSBkZXZpY2UgbWFuYWdlciBocC10b29sYm94LCBhbHNvIHNvbWUgdXNlZnVsIGxpbmtzXG5Nb3RpdmF0aW9uOiB0aGUgaHAtc3lzdHJheSBkb2Vzbid0IHdvcmsgcmVsaWFibHkgdW5kZXIgZ25vbWUgc2hlbGxcbnlvdSBuZWVkIHRvIGhhdmUgaW5zdGFsbGVkIGhwbGlwIGluIG9yZGVyIHRvIHVzZSB0aGlzXG5DaG9pY2Ugb2YgdXNpbmcgYSBwcmludGVyIGljb24gb3IgYSBocF9sb2dvLnBuZyBpZiBpdCdzIGluc3RhbGxlZCBpbiB0aGUgc2FtZSBwbGFjZSBhcyBtaW5lIG9uIFVidW50dVxueW91IGNvdWxkIHVzZSBzeW1ib2xpYyBsaW5rcyB0byBmYWtlIHRoZSBwYXRoLlxuVGhpcyBpcyBhIHJlcGxhY2VtZW50IGZvciB0aGUgb2xkIFwiQWx0ZXJuYXRlIE1lbnUgZm9yIEhwbGlwXCIgd2hpY2ggZG9lc24ndCB3b3JrIHVuZGVyIHRoZSBuZXcgR29tZS1TaGVsbCBJIGhhdmUgY2xlYW5lZCBpdCB1cCBhIGJpdCBhbmQgaXQgaGFzIGEgZmV3IG5ldyBtZW51J3MgYnV0IGl0IGlzIHN0aWxsIGJhc2ljYWxseSB0aGUgc2FtZSB0aGluZy5cbiBBZGRlZCBldmVuIG1vcmUgbWVudXMgYWxsIG1vc3QgYWxsIHN5c3RlbSBzZXR0aW5ncyBvbmVzLlxuXG5Ob3RlOiB0aGUgbWVudSB3aWxsIGJlIHRvbyBiaWcgaWYgeW91ciByZXNvbHV0aW9uIGlzIHdheSB0b28gbG93IGxpa2UgODAweDYwMCBJIGhhdmUgbm8gc29sbiBmb3IgdGhpcyBqdXN0IG5vdy4iLAogICJuYW1lIjogIkFsdGVybmF0ZSBNZW51IGZvciBIcGxpcDIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaHBsaXAtbWVudTIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ncml6emx5c21pdC9ocGxpcC1tZW51Mi1ncml6emx5c21pdC5zbWl0LmlkLmF1IiwKICAidXVpZCI6ICJocGxpcC1tZW51MkBncml6emx5c21pdC5zbWl0LmlkLmF1IiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
+, {"uuid": "hplip-menu2@grizzlysmit.smit.id.au", "name": "Alternate Menu for Hplip2", "pname": "alternate-menu-for-hplip2", "description": "control your hp printers by calling the device manager hp-toolbox, also some useful links\nMotivation: the hp-systray doesn't work reliably under gnome shell\nyou need to have installed hplip in order to use this\nChoice of using a printer icon or a hp_logo.png if it's installed in the same place as mine on Ubuntu\nyou could use symbolic links to fake the path.\nThis is a replacement for the old \"Alternate Menu for Hplip\" which doesn't work under the new Gome-Shell I have cleaned it up a bit and it has a few new menu's but it is still basically the same thing.\n Added even more menus all most all system settings ones.\n\nNote: the menu will be too big if your resolution is way too low like 800x600 I have no soln for this just now.", "link": "https://extensions.gnome.org/extension/4739/alternate-menu-for-hplip2/", "shell_version_map": {"40": {"version": "6", "sha256": "1rm6iq4yb9nh89bjzi1sya2fx9kklfhmkcwyz976ws8m22y4c88j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImNvbnRyb2wgeW91ciBocCBwcmludGVycyBieSBjYWxsaW5nIHRoZSBkZXZpY2UgbWFuYWdlciBocC10b29sYm94LCBhbHNvIHNvbWUgdXNlZnVsIGxpbmtzXG5Nb3RpdmF0aW9uOiB0aGUgaHAtc3lzdHJheSBkb2Vzbid0IHdvcmsgcmVsaWFibHkgdW5kZXIgZ25vbWUgc2hlbGxcbnlvdSBuZWVkIHRvIGhhdmUgaW5zdGFsbGVkIGhwbGlwIGluIG9yZGVyIHRvIHVzZSB0aGlzXG5DaG9pY2Ugb2YgdXNpbmcgYSBwcmludGVyIGljb24gb3IgYSBocF9sb2dvLnBuZyBpZiBpdCdzIGluc3RhbGxlZCBpbiB0aGUgc2FtZSBwbGFjZSBhcyBtaW5lIG9uIFVidW50dVxueW91IGNvdWxkIHVzZSBzeW1ib2xpYyBsaW5rcyB0byBmYWtlIHRoZSBwYXRoLlxuVGhpcyBpcyBhIHJlcGxhY2VtZW50IGZvciB0aGUgb2xkIFwiQWx0ZXJuYXRlIE1lbnUgZm9yIEhwbGlwXCIgd2hpY2ggZG9lc24ndCB3b3JrIHVuZGVyIHRoZSBuZXcgR29tZS1TaGVsbCBJIGhhdmUgY2xlYW5lZCBpdCB1cCBhIGJpdCBhbmQgaXQgaGFzIGEgZmV3IG5ldyBtZW51J3MgYnV0IGl0IGlzIHN0aWxsIGJhc2ljYWxseSB0aGUgc2FtZSB0aGluZy5cbiBBZGRlZCBldmVuIG1vcmUgbWVudXMgYWxsIG1vc3QgYWxsIHN5c3RlbSBzZXR0aW5ncyBvbmVzLlxuXG5Ob3RlOiB0aGUgbWVudSB3aWxsIGJlIHRvbyBiaWcgaWYgeW91ciByZXNvbHV0aW9uIGlzIHdheSB0b28gbG93IGxpa2UgODAweDYwMCBJIGhhdmUgbm8gc29sbiBmb3IgdGhpcyBqdXN0IG5vdy4iLAogICJuYW1lIjogIkFsdGVybmF0ZSBNZW51IGZvciBIcGxpcDIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaHBsaXAtbWVudTIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ3JpenpseXNtaXQvaHBsaXAtbWVudTItZ3JpenpseXNtaXQuc21pdC5pZC5hdSIsCiAgInV1aWQiOiAiaHBsaXAtbWVudTJAZ3JpenpseXNtaXQuc21pdC5pZC5hdSIsCiAgInZlcnNpb24iOiA2Cn0="}, "41": {"version": "6", "sha256": "1rm6iq4yb9nh89bjzi1sya2fx9kklfhmkcwyz976ws8m22y4c88j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImNvbnRyb2wgeW91ciBocCBwcmludGVycyBieSBjYWxsaW5nIHRoZSBkZXZpY2UgbWFuYWdlciBocC10b29sYm94LCBhbHNvIHNvbWUgdXNlZnVsIGxpbmtzXG5Nb3RpdmF0aW9uOiB0aGUgaHAtc3lzdHJheSBkb2Vzbid0IHdvcmsgcmVsaWFibHkgdW5kZXIgZ25vbWUgc2hlbGxcbnlvdSBuZWVkIHRvIGhhdmUgaW5zdGFsbGVkIGhwbGlwIGluIG9yZGVyIHRvIHVzZSB0aGlzXG5DaG9pY2Ugb2YgdXNpbmcgYSBwcmludGVyIGljb24gb3IgYSBocF9sb2dvLnBuZyBpZiBpdCdzIGluc3RhbGxlZCBpbiB0aGUgc2FtZSBwbGFjZSBhcyBtaW5lIG9uIFVidW50dVxueW91IGNvdWxkIHVzZSBzeW1ib2xpYyBsaW5rcyB0byBmYWtlIHRoZSBwYXRoLlxuVGhpcyBpcyBhIHJlcGxhY2VtZW50IGZvciB0aGUgb2xkIFwiQWx0ZXJuYXRlIE1lbnUgZm9yIEhwbGlwXCIgd2hpY2ggZG9lc24ndCB3b3JrIHVuZGVyIHRoZSBuZXcgR29tZS1TaGVsbCBJIGhhdmUgY2xlYW5lZCBpdCB1cCBhIGJpdCBhbmQgaXQgaGFzIGEgZmV3IG5ldyBtZW51J3MgYnV0IGl0IGlzIHN0aWxsIGJhc2ljYWxseSB0aGUgc2FtZSB0aGluZy5cbiBBZGRlZCBldmVuIG1vcmUgbWVudXMgYWxsIG1vc3QgYWxsIHN5c3RlbSBzZXR0aW5ncyBvbmVzLlxuXG5Ob3RlOiB0aGUgbWVudSB3aWxsIGJlIHRvbyBiaWcgaWYgeW91ciByZXNvbHV0aW9uIGlzIHdheSB0b28gbG93IGxpa2UgODAweDYwMCBJIGhhdmUgbm8gc29sbiBmb3IgdGhpcyBqdXN0IG5vdy4iLAogICJuYW1lIjogIkFsdGVybmF0ZSBNZW51IGZvciBIcGxpcDIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaHBsaXAtbWVudTIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ3JpenpseXNtaXQvaHBsaXAtbWVudTItZ3JpenpseXNtaXQuc21pdC5pZC5hdSIsCiAgInV1aWQiOiAiaHBsaXAtbWVudTJAZ3JpenpseXNtaXQuc21pdC5pZC5hdSIsCiAgInZlcnNpb24iOiA2Cn0="}, "42": {"version": "6", "sha256": "1rm6iq4yb9nh89bjzi1sya2fx9kklfhmkcwyz976ws8m22y4c88j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImNvbnRyb2wgeW91ciBocCBwcmludGVycyBieSBjYWxsaW5nIHRoZSBkZXZpY2UgbWFuYWdlciBocC10b29sYm94LCBhbHNvIHNvbWUgdXNlZnVsIGxpbmtzXG5Nb3RpdmF0aW9uOiB0aGUgaHAtc3lzdHJheSBkb2Vzbid0IHdvcmsgcmVsaWFibHkgdW5kZXIgZ25vbWUgc2hlbGxcbnlvdSBuZWVkIHRvIGhhdmUgaW5zdGFsbGVkIGhwbGlwIGluIG9yZGVyIHRvIHVzZSB0aGlzXG5DaG9pY2Ugb2YgdXNpbmcgYSBwcmludGVyIGljb24gb3IgYSBocF9sb2dvLnBuZyBpZiBpdCdzIGluc3RhbGxlZCBpbiB0aGUgc2FtZSBwbGFjZSBhcyBtaW5lIG9uIFVidW50dVxueW91IGNvdWxkIHVzZSBzeW1ib2xpYyBsaW5rcyB0byBmYWtlIHRoZSBwYXRoLlxuVGhpcyBpcyBhIHJlcGxhY2VtZW50IGZvciB0aGUgb2xkIFwiQWx0ZXJuYXRlIE1lbnUgZm9yIEhwbGlwXCIgd2hpY2ggZG9lc24ndCB3b3JrIHVuZGVyIHRoZSBuZXcgR29tZS1TaGVsbCBJIGhhdmUgY2xlYW5lZCBpdCB1cCBhIGJpdCBhbmQgaXQgaGFzIGEgZmV3IG5ldyBtZW51J3MgYnV0IGl0IGlzIHN0aWxsIGJhc2ljYWxseSB0aGUgc2FtZSB0aGluZy5cbiBBZGRlZCBldmVuIG1vcmUgbWVudXMgYWxsIG1vc3QgYWxsIHN5c3RlbSBzZXR0aW5ncyBvbmVzLlxuXG5Ob3RlOiB0aGUgbWVudSB3aWxsIGJlIHRvbyBiaWcgaWYgeW91ciByZXNvbHV0aW9uIGlzIHdheSB0b28gbG93IGxpa2UgODAweDYwMCBJIGhhdmUgbm8gc29sbiBmb3IgdGhpcyBqdXN0IG5vdy4iLAogICJuYW1lIjogIkFsdGVybmF0ZSBNZW51IGZvciBIcGxpcDIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaHBsaXAtbWVudTIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ3JpenpseXNtaXQvaHBsaXAtbWVudTItZ3JpenpseXNtaXQuc21pdC5pZC5hdSIsCiAgInV1aWQiOiAiaHBsaXAtbWVudTJAZ3JpenpseXNtaXQuc21pdC5pZC5hdSIsCiAgInZlcnNpb24iOiA2Cn0="}, "43": {"version": "6", "sha256": "1rm6iq4yb9nh89bjzi1sya2fx9kklfhmkcwyz976ws8m22y4c88j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImNvbnRyb2wgeW91ciBocCBwcmludGVycyBieSBjYWxsaW5nIHRoZSBkZXZpY2UgbWFuYWdlciBocC10b29sYm94LCBhbHNvIHNvbWUgdXNlZnVsIGxpbmtzXG5Nb3RpdmF0aW9uOiB0aGUgaHAtc3lzdHJheSBkb2Vzbid0IHdvcmsgcmVsaWFibHkgdW5kZXIgZ25vbWUgc2hlbGxcbnlvdSBuZWVkIHRvIGhhdmUgaW5zdGFsbGVkIGhwbGlwIGluIG9yZGVyIHRvIHVzZSB0aGlzXG5DaG9pY2Ugb2YgdXNpbmcgYSBwcmludGVyIGljb24gb3IgYSBocF9sb2dvLnBuZyBpZiBpdCdzIGluc3RhbGxlZCBpbiB0aGUgc2FtZSBwbGFjZSBhcyBtaW5lIG9uIFVidW50dVxueW91IGNvdWxkIHVzZSBzeW1ib2xpYyBsaW5rcyB0byBmYWtlIHRoZSBwYXRoLlxuVGhpcyBpcyBhIHJlcGxhY2VtZW50IGZvciB0aGUgb2xkIFwiQWx0ZXJuYXRlIE1lbnUgZm9yIEhwbGlwXCIgd2hpY2ggZG9lc24ndCB3b3JrIHVuZGVyIHRoZSBuZXcgR29tZS1TaGVsbCBJIGhhdmUgY2xlYW5lZCBpdCB1cCBhIGJpdCBhbmQgaXQgaGFzIGEgZmV3IG5ldyBtZW51J3MgYnV0IGl0IGlzIHN0aWxsIGJhc2ljYWxseSB0aGUgc2FtZSB0aGluZy5cbiBBZGRlZCBldmVuIG1vcmUgbWVudXMgYWxsIG1vc3QgYWxsIHN5c3RlbSBzZXR0aW5ncyBvbmVzLlxuXG5Ob3RlOiB0aGUgbWVudSB3aWxsIGJlIHRvbyBiaWcgaWYgeW91ciByZXNvbHV0aW9uIGlzIHdheSB0b28gbG93IGxpa2UgODAweDYwMCBJIGhhdmUgbm8gc29sbiBmb3IgdGhpcyBqdXN0IG5vdy4iLAogICJuYW1lIjogIkFsdGVybmF0ZSBNZW51IGZvciBIcGxpcDIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaHBsaXAtbWVudTIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ3JpenpseXNtaXQvaHBsaXAtbWVudTItZ3JpenpseXNtaXQuc21pdC5pZC5hdSIsCiAgInV1aWQiOiAiaHBsaXAtbWVudTJAZ3JpenpseXNtaXQuc21pdC5pZC5hdSIsCiAgInZlcnNpb24iOiA2Cn0="}}}
 , {"uuid": "dash-from-panel@fthx", "name": "Dash from Panel", "pname": "dash-from-panel", "description": "Top dock for GNOME 40+. Hover top panel and GNOME Shell dash appears without overview.\n\n Scroll on dock or panel changes workspace. Preferences UI.\n\n Does use native GNOME Shell Dash. Very light extension.\n\n Please report bugs through GitHub.", "link": "https://extensions.gnome.org/extension/4741/dash-from-panel/", "shell_version_map": {"40": {"version": "3", "sha256": "10lcxqkg9i7gjvgdb01b6fahj5yr7c614yj4jcz9ywi5v571b1hw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvcCBkb2NrIGZvciBHTk9NRSA0MCsuIEhvdmVyIHRvcCBwYW5lbCBhbmQgR05PTUUgU2hlbGwgZGFzaCBhcHBlYXJzIHdpdGhvdXQgb3ZlcnZpZXcuXG5cbiBTY3JvbGwgb24gZG9jayBvciBwYW5lbCBjaGFuZ2VzIHdvcmtzcGFjZS4gUHJlZmVyZW5jZXMgVUkuXG5cbiBEb2VzIHVzZSBuYXRpdmUgR05PTUUgU2hlbGwgRGFzaC4gVmVyeSBsaWdodCBleHRlbnNpb24uXG5cbiBQbGVhc2UgcmVwb3J0IGJ1Z3MgdGhyb3VnaCBHaXRIdWIuIiwKICAibmFtZSI6ICJEYXNoIGZyb20gUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2Rhc2gtZnJvbS1wYW5lbCIsCiAgInV1aWQiOiAiZGFzaC1mcm9tLXBhbmVsQGZ0aHgiLAogICJ2ZXJzaW9uIjogMwp9"}, "41": {"version": "3", "sha256": "10lcxqkg9i7gjvgdb01b6fahj5yr7c614yj4jcz9ywi5v571b1hw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvcCBkb2NrIGZvciBHTk9NRSA0MCsuIEhvdmVyIHRvcCBwYW5lbCBhbmQgR05PTUUgU2hlbGwgZGFzaCBhcHBlYXJzIHdpdGhvdXQgb3ZlcnZpZXcuXG5cbiBTY3JvbGwgb24gZG9jayBvciBwYW5lbCBjaGFuZ2VzIHdvcmtzcGFjZS4gUHJlZmVyZW5jZXMgVUkuXG5cbiBEb2VzIHVzZSBuYXRpdmUgR05PTUUgU2hlbGwgRGFzaC4gVmVyeSBsaWdodCBleHRlbnNpb24uXG5cbiBQbGVhc2UgcmVwb3J0IGJ1Z3MgdGhyb3VnaCBHaXRIdWIuIiwKICAibmFtZSI6ICJEYXNoIGZyb20gUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2Rhc2gtZnJvbS1wYW5lbCIsCiAgInV1aWQiOiAiZGFzaC1mcm9tLXBhbmVsQGZ0aHgiLAogICJ2ZXJzaW9uIjogMwp9"}, "42": {"version": "3", "sha256": "10lcxqkg9i7gjvgdb01b6fahj5yr7c614yj4jcz9ywi5v571b1hw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvcCBkb2NrIGZvciBHTk9NRSA0MCsuIEhvdmVyIHRvcCBwYW5lbCBhbmQgR05PTUUgU2hlbGwgZGFzaCBhcHBlYXJzIHdpdGhvdXQgb3ZlcnZpZXcuXG5cbiBTY3JvbGwgb24gZG9jayBvciBwYW5lbCBjaGFuZ2VzIHdvcmtzcGFjZS4gUHJlZmVyZW5jZXMgVUkuXG5cbiBEb2VzIHVzZSBuYXRpdmUgR05PTUUgU2hlbGwgRGFzaC4gVmVyeSBsaWdodCBleHRlbnNpb24uXG5cbiBQbGVhc2UgcmVwb3J0IGJ1Z3MgdGhyb3VnaCBHaXRIdWIuIiwKICAibmFtZSI6ICJEYXNoIGZyb20gUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2Rhc2gtZnJvbS1wYW5lbCIsCiAgInV1aWQiOiAiZGFzaC1mcm9tLXBhbmVsQGZ0aHgiLAogICJ2ZXJzaW9uIjogMwp9"}}}
 , {"uuid": "clip-translator@eexpss.gmail.com", "name": "Clip Translator", "pname": "clip-translator", "description": "* Translate from Clipboard content", "link": "https://extensions.gnome.org/extension/4744/clip-translator/", "shell_version_map": {"40": {"version": "13", "sha256": "0i5gcmxxl8p0zfh6jbdrhb6s4dw7wrfl74h0z527zwfzb454yj20", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiogVHJhbnNsYXRlIGZyb20gQ2xpcGJvYXJkIGNvbnRlbnQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjbGlwLXRyYW5zbGF0b3IiLAogICJuYW1lIjogIkNsaXAgVHJhbnNsYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VleHByZXNzL2dzLWNsaXAtdHJhbnNsYXRvciIsCiAgInV1aWQiOiAiY2xpcC10cmFuc2xhdG9yQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "41": {"version": "13", "sha256": "0i5gcmxxl8p0zfh6jbdrhb6s4dw7wrfl74h0z527zwfzb454yj20", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiogVHJhbnNsYXRlIGZyb20gQ2xpcGJvYXJkIGNvbnRlbnQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjbGlwLXRyYW5zbGF0b3IiLAogICJuYW1lIjogIkNsaXAgVHJhbnNsYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VleHByZXNzL2dzLWNsaXAtdHJhbnNsYXRvciIsCiAgInV1aWQiOiAiY2xpcC10cmFuc2xhdG9yQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "42": {"version": "13", "sha256": "0i5gcmxxl8p0zfh6jbdrhb6s4dw7wrfl74h0z527zwfzb454yj20", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiogVHJhbnNsYXRlIGZyb20gQ2xpcGJvYXJkIGNvbnRlbnQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjbGlwLXRyYW5zbGF0b3IiLAogICJuYW1lIjogIkNsaXAgVHJhbnNsYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VleHByZXNzL2dzLWNsaXAtdHJhbnNsYXRvciIsCiAgInV1aWQiOiAiY2xpcC10cmFuc2xhdG9yQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}}}
 , {"uuid": "hidedate@hidedate.com", "name": "Hide Date", "pname": "hide-date", "description": "hides date and clocks", "link": "https://extensions.gnome.org/extension/4747/hide-date/", "shell_version_map": {"38": {"version": "5", "sha256": "0bg0dsmx89ndf6gkhhqy8av6jvcgfzdnnalj51vvcgcprz5msm5j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImhpZGVzIGRhdGUgYW5kIGNsb2NrcyIsCiAgIm5hbWUiOiAiSGlkZSBEYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYnVzcmFjYWdsaXlhbi9Hbm9tZS1FeHRlbnNpb24tRXhhbXBsZXMvdHJlZS9tYWluL2hpZGVkYXRlJTQwaGlkZWRhdGUuY29tIiwKICAidXVpZCI6ICJoaWRlZGF0ZUBoaWRlZGF0ZS5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "5", "sha256": "0bg0dsmx89ndf6gkhhqy8av6jvcgfzdnnalj51vvcgcprz5msm5j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImhpZGVzIGRhdGUgYW5kIGNsb2NrcyIsCiAgIm5hbWUiOiAiSGlkZSBEYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYnVzcmFjYWdsaXlhbi9Hbm9tZS1FeHRlbnNpb24tRXhhbXBsZXMvdHJlZS9tYWluL2hpZGVkYXRlJTQwaGlkZWRhdGUuY29tIiwKICAidXVpZCI6ICJoaWRlZGF0ZUBoaWRlZGF0ZS5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}, "41": {"version": "5", "sha256": "0bg0dsmx89ndf6gkhhqy8av6jvcgfzdnnalj51vvcgcprz5msm5j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImhpZGVzIGRhdGUgYW5kIGNsb2NrcyIsCiAgIm5hbWUiOiAiSGlkZSBEYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYnVzcmFjYWdsaXlhbi9Hbm9tZS1FeHRlbnNpb24tRXhhbXBsZXMvdHJlZS9tYWluL2hpZGVkYXRlJTQwaGlkZWRhdGUuY29tIiwKICAidXVpZCI6ICJoaWRlZGF0ZUBoaWRlZGF0ZS5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}, "42": {"version": "5", "sha256": "0bg0dsmx89ndf6gkhhqy8av6jvcgfzdnnalj51vvcgcprz5msm5j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImhpZGVzIGRhdGUgYW5kIGNsb2NrcyIsCiAgIm5hbWUiOiAiSGlkZSBEYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYnVzcmFjYWdsaXlhbi9Hbm9tZS1FeHRlbnNpb24tRXhhbXBsZXMvdHJlZS9tYWluL2hpZGVkYXRlJTQwaGlkZWRhdGUuY29tIiwKICAidXVpZCI6ICJoaWRlZGF0ZUBoaWRlZGF0ZS5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}}}
@@ -680,7 +680,7 @@
 , {"uuid": "pop-launcher-super-key@ManeLippert", "name": "Pop Launcher Super-Key", "pname": "pop-launcher-super-key", "description": "Binds Pop-Launcher on Super-Key (Fork of Pop-Cosmic Extension)\n\n! Requirements ! -> Pop-Launcher and Pop-Shell have to be installed on used OS", "link": "https://extensions.gnome.org/extension/4797/pop-launcher-super-key/", "shell_version_map": {"38": {"version": "5", "sha256": "1x34hvnycy0an3pb0ljymknpqy2grr4y398fwwv4hx7rx1qbvdwk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJpbmRzIFBvcC1MYXVuY2hlciBvbiBTdXBlci1LZXkgKEZvcmsgb2YgUG9wLUNvc21pYyBFeHRlbnNpb24pXG5cbiEgUmVxdWlyZW1lbnRzICEgLT4gUG9wLUxhdW5jaGVyIGFuZCBQb3AtU2hlbGwgaGF2ZSB0byBiZSBpbnN0YWxsZWQgb24gdXNlZCBPUyIsCiAgIm5hbWUiOiAiUG9wIExhdW5jaGVyIFN1cGVyLUtleSIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiU3lzdGVtNzYiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucG9wLWxhdW5jaGVyLXN1cGVyLWtleSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9NYW5lTGlwcGVydC9wb3AtbGF1bmNoZXItc3VwZXIta2V5IiwKICAidXVpZCI6ICJwb3AtbGF1bmNoZXItc3VwZXIta2V5QE1hbmVMaXBwZXJ0IiwKICAidmVyc2lvbiI6IDUKfQ=="}, "40": {"version": "5", "sha256": "1x34hvnycy0an3pb0ljymknpqy2grr4y398fwwv4hx7rx1qbvdwk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJpbmRzIFBvcC1MYXVuY2hlciBvbiBTdXBlci1LZXkgKEZvcmsgb2YgUG9wLUNvc21pYyBFeHRlbnNpb24pXG5cbiEgUmVxdWlyZW1lbnRzICEgLT4gUG9wLUxhdW5jaGVyIGFuZCBQb3AtU2hlbGwgaGF2ZSB0byBiZSBpbnN0YWxsZWQgb24gdXNlZCBPUyIsCiAgIm5hbWUiOiAiUG9wIExhdW5jaGVyIFN1cGVyLUtleSIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiU3lzdGVtNzYiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucG9wLWxhdW5jaGVyLXN1cGVyLWtleSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9NYW5lTGlwcGVydC9wb3AtbGF1bmNoZXItc3VwZXIta2V5IiwKICAidXVpZCI6ICJwb3AtbGF1bmNoZXItc3VwZXIta2V5QE1hbmVMaXBwZXJ0IiwKICAidmVyc2lvbiI6IDUKfQ=="}, "41": {"version": "5", "sha256": "1x34hvnycy0an3pb0ljymknpqy2grr4y398fwwv4hx7rx1qbvdwk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJpbmRzIFBvcC1MYXVuY2hlciBvbiBTdXBlci1LZXkgKEZvcmsgb2YgUG9wLUNvc21pYyBFeHRlbnNpb24pXG5cbiEgUmVxdWlyZW1lbnRzICEgLT4gUG9wLUxhdW5jaGVyIGFuZCBQb3AtU2hlbGwgaGF2ZSB0byBiZSBpbnN0YWxsZWQgb24gdXNlZCBPUyIsCiAgIm5hbWUiOiAiUG9wIExhdW5jaGVyIFN1cGVyLUtleSIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiU3lzdGVtNzYiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucG9wLWxhdW5jaGVyLXN1cGVyLWtleSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9NYW5lTGlwcGVydC9wb3AtbGF1bmNoZXItc3VwZXIta2V5IiwKICAidXVpZCI6ICJwb3AtbGF1bmNoZXItc3VwZXIta2V5QE1hbmVMaXBwZXJ0IiwKICAidmVyc2lvbiI6IDUKfQ=="}, "42": {"version": "5", "sha256": "1x34hvnycy0an3pb0ljymknpqy2grr4y398fwwv4hx7rx1qbvdwk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJpbmRzIFBvcC1MYXVuY2hlciBvbiBTdXBlci1LZXkgKEZvcmsgb2YgUG9wLUNvc21pYyBFeHRlbnNpb24pXG5cbiEgUmVxdWlyZW1lbnRzICEgLT4gUG9wLUxhdW5jaGVyIGFuZCBQb3AtU2hlbGwgaGF2ZSB0byBiZSBpbnN0YWxsZWQgb24gdXNlZCBPUyIsCiAgIm5hbWUiOiAiUG9wIExhdW5jaGVyIFN1cGVyLUtleSIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiU3lzdGVtNzYiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucG9wLWxhdW5jaGVyLXN1cGVyLWtleSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9NYW5lTGlwcGVydC9wb3AtbGF1bmNoZXItc3VwZXIta2V5IiwKICAidXVpZCI6ICJwb3AtbGF1bmNoZXItc3VwZXIta2V5QE1hbmVMaXBwZXJ0IiwKICAidmVyc2lvbiI6IDUKfQ=="}, "43": {"version": "5", "sha256": "1x34hvnycy0an3pb0ljymknpqy2grr4y398fwwv4hx7rx1qbvdwk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJpbmRzIFBvcC1MYXVuY2hlciBvbiBTdXBlci1LZXkgKEZvcmsgb2YgUG9wLUNvc21pYyBFeHRlbnNpb24pXG5cbiEgUmVxdWlyZW1lbnRzICEgLT4gUG9wLUxhdW5jaGVyIGFuZCBQb3AtU2hlbGwgaGF2ZSB0byBiZSBpbnN0YWxsZWQgb24gdXNlZCBPUyIsCiAgIm5hbWUiOiAiUG9wIExhdW5jaGVyIFN1cGVyLUtleSIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiU3lzdGVtNzYiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucG9wLWxhdW5jaGVyLXN1cGVyLWtleSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9NYW5lTGlwcGVydC9wb3AtbGF1bmNoZXItc3VwZXIta2V5IiwKICAidXVpZCI6ICJwb3AtbGF1bmNoZXItc3VwZXIta2V5QE1hbmVMaXBwZXJ0IiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
 , {"uuid": "thinkpad-battery-threshold@marcosdalvarez.org", "name": "Thinkpad Battery Threshold", "pname": "thinkpad-battery-threshold", "description": "Enable/Disable battery threshold on Lenovo Thinkpad laptops.\n\nIf you mainly use the system with the AC power adapter connected and only use the battery sporadically, you can increase battery life by setting the maximum charge value to less than 100%. This is useful because batteries that are used sporadically have a longer lifespan when kept at less than full charge.", "link": "https://extensions.gnome.org/extension/4798/thinkpad-battery-threshold/", "shell_version_map": {"41": {"version": "11", "sha256": "1m4d92v7ym8as25kpm3l00dnf5rzp36m2p9jdjmbk3i5xk1dk61a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZS9EaXNhYmxlIGJhdHRlcnkgdGhyZXNob2xkIG9uIExlbm92byBUaGlua3BhZCBsYXB0b3BzLlxuXG5JZiB5b3UgbWFpbmx5IHVzZSB0aGUgc3lzdGVtIHdpdGggdGhlIEFDIHBvd2VyIGFkYXB0ZXIgY29ubmVjdGVkIGFuZCBvbmx5IHVzZSB0aGUgYmF0dGVyeSBzcG9yYWRpY2FsbHksIHlvdSBjYW4gaW5jcmVhc2UgYmF0dGVyeSBsaWZlIGJ5IHNldHRpbmcgdGhlIG1heGltdW0gY2hhcmdlIHZhbHVlIHRvIGxlc3MgdGhhbiAxMDAlLiBUaGlzIGlzIHVzZWZ1bCBiZWNhdXNlIGJhdHRlcmllcyB0aGF0IGFyZSB1c2VkIHNwb3JhZGljYWxseSBoYXZlIGEgbG9uZ2VyIGxpZmVzcGFuIHdoZW4ga2VwdCBhdCBsZXNzIHRoYW4gZnVsbCBjaGFyZ2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidGhpbmtwYWQtYmF0dGVyeS10aHJlc2hvbGRAbWFyY29zZGFsdmFyZXoub3JnIiwKICAibmFtZSI6ICJUaGlua3BhZCBCYXR0ZXJ5IFRocmVzaG9sZCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50aGlua3BhZC1iYXR0ZXJ5LXRocmVzaG9sZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vbWFyY29zZGFsdmFyZXovdGhpbmtwYWQtYmF0dGVyeS10aHJlc2hvbGQtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJ0aGlua3BhZC1iYXR0ZXJ5LXRocmVzaG9sZEBtYXJjb3NkYWx2YXJlei5vcmciLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "42": {"version": "11", "sha256": "1m4d92v7ym8as25kpm3l00dnf5rzp36m2p9jdjmbk3i5xk1dk61a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZS9EaXNhYmxlIGJhdHRlcnkgdGhyZXNob2xkIG9uIExlbm92byBUaGlua3BhZCBsYXB0b3BzLlxuXG5JZiB5b3UgbWFpbmx5IHVzZSB0aGUgc3lzdGVtIHdpdGggdGhlIEFDIHBvd2VyIGFkYXB0ZXIgY29ubmVjdGVkIGFuZCBvbmx5IHVzZSB0aGUgYmF0dGVyeSBzcG9yYWRpY2FsbHksIHlvdSBjYW4gaW5jcmVhc2UgYmF0dGVyeSBsaWZlIGJ5IHNldHRpbmcgdGhlIG1heGltdW0gY2hhcmdlIHZhbHVlIHRvIGxlc3MgdGhhbiAxMDAlLiBUaGlzIGlzIHVzZWZ1bCBiZWNhdXNlIGJhdHRlcmllcyB0aGF0IGFyZSB1c2VkIHNwb3JhZGljYWxseSBoYXZlIGEgbG9uZ2VyIGxpZmVzcGFuIHdoZW4ga2VwdCBhdCBsZXNzIHRoYW4gZnVsbCBjaGFyZ2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidGhpbmtwYWQtYmF0dGVyeS10aHJlc2hvbGRAbWFyY29zZGFsdmFyZXoub3JnIiwKICAibmFtZSI6ICJUaGlua3BhZCBCYXR0ZXJ5IFRocmVzaG9sZCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50aGlua3BhZC1iYXR0ZXJ5LXRocmVzaG9sZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vbWFyY29zZGFsdmFyZXovdGhpbmtwYWQtYmF0dGVyeS10aHJlc2hvbGQtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJ0aGlua3BhZC1iYXR0ZXJ5LXRocmVzaG9sZEBtYXJjb3NkYWx2YXJlei5vcmciLAogICJ2ZXJzaW9uIjogMTEKfQ=="}}}
 , {"uuid": "lock-screen-message@advendradeswanta.gitlab.com", "name": "Lock Screen Message", "pname": "lock-screen-message", "description": "Simple extension that let's you add your message to the lock screen (unlockDialog)", "link": "https://extensions.gnome.org/extension/4801/lock-screen-message/", "shell_version_map": {"40": {"version": "3", "sha256": "0hkr6gm7kr69fc4zjb8rddwj75jpbpvqz4wpkfl659wjn4980s3c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBleHRlbnNpb24gdGhhdCBsZXQncyB5b3UgYWRkIHlvdXIgbWVzc2FnZSB0byB0aGUgbG9jayBzY3JlZW4gKHVubG9ja0RpYWxvZykiLAogICJuYW1lIjogIkxvY2sgU2NyZWVuIE1lc3NhZ2UiLAogICJzZXNzaW9uLW1vZGVzIjogWwogICAgInVzZXIiLAogICAgInVubG9jay1kaWFsb2ciCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmxvY2stc2NyZWVuLW1lc3NhZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9BZHZlbmRyYURlc3dhbnRhL2xvY2stc2NyZWVuLW1lc3NhZ2UiLAogICJ1dWlkIjogImxvY2stc2NyZWVuLW1lc3NhZ2VAYWR2ZW5kcmFkZXN3YW50YS5naXRsYWIuY29tIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "41": {"version": "3", "sha256": "0hkr6gm7kr69fc4zjb8rddwj75jpbpvqz4wpkfl659wjn4980s3c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBleHRlbnNpb24gdGhhdCBsZXQncyB5b3UgYWRkIHlvdXIgbWVzc2FnZSB0byB0aGUgbG9jayBzY3JlZW4gKHVubG9ja0RpYWxvZykiLAogICJuYW1lIjogIkxvY2sgU2NyZWVuIE1lc3NhZ2UiLAogICJzZXNzaW9uLW1vZGVzIjogWwogICAgInVzZXIiLAogICAgInVubG9jay1kaWFsb2ciCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmxvY2stc2NyZWVuLW1lc3NhZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9BZHZlbmRyYURlc3dhbnRhL2xvY2stc2NyZWVuLW1lc3NhZ2UiLAogICJ1dWlkIjogImxvY2stc2NyZWVuLW1lc3NhZ2VAYWR2ZW5kcmFkZXN3YW50YS5naXRsYWIuY29tIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "42": {"version": "3", "sha256": "0hkr6gm7kr69fc4zjb8rddwj75jpbpvqz4wpkfl659wjn4980s3c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBleHRlbnNpb24gdGhhdCBsZXQncyB5b3UgYWRkIHlvdXIgbWVzc2FnZSB0byB0aGUgbG9jayBzY3JlZW4gKHVubG9ja0RpYWxvZykiLAogICJuYW1lIjogIkxvY2sgU2NyZWVuIE1lc3NhZ2UiLAogICJzZXNzaW9uLW1vZGVzIjogWwogICAgInVzZXIiLAogICAgInVubG9jay1kaWFsb2ciCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmxvY2stc2NyZWVuLW1lc3NhZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9BZHZlbmRyYURlc3dhbnRhL2xvY2stc2NyZWVuLW1lc3NhZ2UiLAogICJ1dWlkIjogImxvY2stc2NyZWVuLW1lc3NhZ2VAYWR2ZW5kcmFkZXN3YW50YS5naXRsYWIuY29tIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
-, {"uuid": "panel-corners@aunetx", "name": "Panel corners", "pname": "panel-corners", "description": "A GNOME shell extension to keep the old topbar corners, which were removed for GNOME 42. It also allows you to customize the rounded corners, even if you use GNOME 40 or 41.\n\nIt is widely based on already existing gnome-shell code, and on a merge request by Alexander Mikhaylenko: https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1328", "link": "https://extensions.gnome.org/extension/4805/panel-corners/", "shell_version_map": {"40": {"version": "3", "sha256": "0piacfxwa5ca5cnvrz0s8pqykfixynmvvdmh1rznfsh407v1kw1v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgc2hlbGwgZXh0ZW5zaW9uIHRvIGtlZXAgdGhlIG9sZCB0b3BiYXIgY29ybmVycywgd2hpY2ggd2VyZSByZW1vdmVkIGZvciBHTk9NRSA0Mi4gSXQgYWxzbyBhbGxvd3MgeW91IHRvIGN1c3RvbWl6ZSB0aGUgcm91bmRlZCBjb3JuZXJzLCBldmVuIGlmIHlvdSB1c2UgR05PTUUgNDAgb3IgNDEuXG5cbkl0IGlzIHdpZGVseSBiYXNlZCBvbiBhbHJlYWR5IGV4aXN0aW5nIGdub21lLXNoZWxsIGNvZGUsIGFuZCBvbiBhIG1lcmdlIHJlcXVlc3QgYnkgQWxleGFuZGVyIE1pa2hheWxlbmtvOiBodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwvLS9tZXJnZV9yZXF1ZXN0cy8xMzI4IiwKICAibmFtZSI6ICJQYW5lbCBjb3JuZXJzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWNvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hdW5ldHgvcGFuZWwtY29ybmVycyIsCiAgInV1aWQiOiAicGFuZWwtY29ybmVyc0BhdW5ldHgiLAogICJ2ZXJzaW9uIjogMwp9"}, "41": {"version": "3", "sha256": "0piacfxwa5ca5cnvrz0s8pqykfixynmvvdmh1rznfsh407v1kw1v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgc2hlbGwgZXh0ZW5zaW9uIHRvIGtlZXAgdGhlIG9sZCB0b3BiYXIgY29ybmVycywgd2hpY2ggd2VyZSByZW1vdmVkIGZvciBHTk9NRSA0Mi4gSXQgYWxzbyBhbGxvd3MgeW91IHRvIGN1c3RvbWl6ZSB0aGUgcm91bmRlZCBjb3JuZXJzLCBldmVuIGlmIHlvdSB1c2UgR05PTUUgNDAgb3IgNDEuXG5cbkl0IGlzIHdpZGVseSBiYXNlZCBvbiBhbHJlYWR5IGV4aXN0aW5nIGdub21lLXNoZWxsIGNvZGUsIGFuZCBvbiBhIG1lcmdlIHJlcXVlc3QgYnkgQWxleGFuZGVyIE1pa2hheWxlbmtvOiBodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwvLS9tZXJnZV9yZXF1ZXN0cy8xMzI4IiwKICAibmFtZSI6ICJQYW5lbCBjb3JuZXJzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWNvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hdW5ldHgvcGFuZWwtY29ybmVycyIsCiAgInV1aWQiOiAicGFuZWwtY29ybmVyc0BhdW5ldHgiLAogICJ2ZXJzaW9uIjogMwp9"}, "42": {"version": "5", "sha256": "1vlczr70865jw672wq1hjxx0y5jn23nydgqp7rzjd6j90l32kb46", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgc2hlbGwgZXh0ZW5zaW9uIHRvIGtlZXAgdGhlIG9sZCB0b3BiYXIgY29ybmVycywgd2hpY2ggd2VyZSByZW1vdmVkIGZvciBHTk9NRSA0Mi4gSXQgYWxzbyBhbGxvd3MgeW91IHRvIGN1c3RvbWl6ZSB0aGUgcm91bmRlZCBjb3JuZXJzLCBldmVuIGlmIHlvdSB1c2UgR05PTUUgNDAgb3IgNDEuXG5cbkl0IGlzIHdpZGVseSBiYXNlZCBvbiBhbHJlYWR5IGV4aXN0aW5nIGdub21lLXNoZWxsIGNvZGUsIGFuZCBvbiBhIG1lcmdlIHJlcXVlc3QgYnkgQWxleGFuZGVyIE1pa2hheWxlbmtvOiBodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwvLS9tZXJnZV9yZXF1ZXN0cy8xMzI4IiwKICAibmFtZSI6ICJQYW5lbCBjb3JuZXJzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWNvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXVuZXR4L3BhbmVsLWNvcm5lcnMiLAogICJ1dWlkIjogInBhbmVsLWNvcm5lcnNAYXVuZXR4IiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
+, {"uuid": "panel-corners@aunetx", "name": "Panel corners", "pname": "panel-corners", "description": "A GNOME shell extension to keep the old topbar corners, which were removed for GNOME 42. It also allows you to customize the rounded corners, even if you use GNOME 40 or 41.\n\nIt is widely based on already existing gnome-shell code, and on a merge request by Alexander Mikhaylenko: https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1328", "link": "https://extensions.gnome.org/extension/4805/panel-corners/", "shell_version_map": {"40": {"version": "3", "sha256": "0piacfxwa5ca5cnvrz0s8pqykfixynmvvdmh1rznfsh407v1kw1v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgc2hlbGwgZXh0ZW5zaW9uIHRvIGtlZXAgdGhlIG9sZCB0b3BiYXIgY29ybmVycywgd2hpY2ggd2VyZSByZW1vdmVkIGZvciBHTk9NRSA0Mi4gSXQgYWxzbyBhbGxvd3MgeW91IHRvIGN1c3RvbWl6ZSB0aGUgcm91bmRlZCBjb3JuZXJzLCBldmVuIGlmIHlvdSB1c2UgR05PTUUgNDAgb3IgNDEuXG5cbkl0IGlzIHdpZGVseSBiYXNlZCBvbiBhbHJlYWR5IGV4aXN0aW5nIGdub21lLXNoZWxsIGNvZGUsIGFuZCBvbiBhIG1lcmdlIHJlcXVlc3QgYnkgQWxleGFuZGVyIE1pa2hheWxlbmtvOiBodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwvLS9tZXJnZV9yZXF1ZXN0cy8xMzI4IiwKICAibmFtZSI6ICJQYW5lbCBjb3JuZXJzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWNvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hdW5ldHgvcGFuZWwtY29ybmVycyIsCiAgInV1aWQiOiAicGFuZWwtY29ybmVyc0BhdW5ldHgiLAogICJ2ZXJzaW9uIjogMwp9"}, "41": {"version": "3", "sha256": "0piacfxwa5ca5cnvrz0s8pqykfixynmvvdmh1rznfsh407v1kw1v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgc2hlbGwgZXh0ZW5zaW9uIHRvIGtlZXAgdGhlIG9sZCB0b3BiYXIgY29ybmVycywgd2hpY2ggd2VyZSByZW1vdmVkIGZvciBHTk9NRSA0Mi4gSXQgYWxzbyBhbGxvd3MgeW91IHRvIGN1c3RvbWl6ZSB0aGUgcm91bmRlZCBjb3JuZXJzLCBldmVuIGlmIHlvdSB1c2UgR05PTUUgNDAgb3IgNDEuXG5cbkl0IGlzIHdpZGVseSBiYXNlZCBvbiBhbHJlYWR5IGV4aXN0aW5nIGdub21lLXNoZWxsIGNvZGUsIGFuZCBvbiBhIG1lcmdlIHJlcXVlc3QgYnkgQWxleGFuZGVyIE1pa2hheWxlbmtvOiBodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwvLS9tZXJnZV9yZXF1ZXN0cy8xMzI4IiwKICAibmFtZSI6ICJQYW5lbCBjb3JuZXJzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWNvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hdW5ldHgvcGFuZWwtY29ybmVycyIsCiAgInV1aWQiOiAicGFuZWwtY29ybmVyc0BhdW5ldHgiLAogICJ2ZXJzaW9uIjogMwp9"}, "42": {"version": "6", "sha256": "1fzfl8c28cmc0a26gx9xyyk78lapgfc2x2ykgwaq8mgz86vap4f6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgc2hlbGwgZXh0ZW5zaW9uIHRvIGtlZXAgdGhlIG9sZCB0b3BiYXIgY29ybmVycywgd2hpY2ggd2VyZSByZW1vdmVkIGZvciBHTk9NRSA0Mi4gSXQgYWxzbyBhbGxvd3MgeW91IHRvIGN1c3RvbWl6ZSB0aGUgcm91bmRlZCBjb3JuZXJzLCBldmVuIGlmIHlvdSB1c2UgR05PTUUgNDAgb3IgNDEuXG5cbkl0IGlzIHdpZGVseSBiYXNlZCBvbiBhbHJlYWR5IGV4aXN0aW5nIGdub21lLXNoZWxsIGNvZGUsIGFuZCBvbiBhIG1lcmdlIHJlcXVlc3QgYnkgQWxleGFuZGVyIE1pa2hheWxlbmtvOiBodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwvLS9tZXJnZV9yZXF1ZXN0cy8xMzI4IiwKICAibmFtZSI6ICJQYW5lbCBjb3JuZXJzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWNvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2F1bmV0eC9wYW5lbC1jb3JuZXJzIiwKICAidXVpZCI6ICJwYW5lbC1jb3JuZXJzQGF1bmV0eCIsCiAgInZlcnNpb24iOiA2Cn0="}, "43": {"version": "6", "sha256": "1fzfl8c28cmc0a26gx9xyyk78lapgfc2x2ykgwaq8mgz86vap4f6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgc2hlbGwgZXh0ZW5zaW9uIHRvIGtlZXAgdGhlIG9sZCB0b3BiYXIgY29ybmVycywgd2hpY2ggd2VyZSByZW1vdmVkIGZvciBHTk9NRSA0Mi4gSXQgYWxzbyBhbGxvd3MgeW91IHRvIGN1c3RvbWl6ZSB0aGUgcm91bmRlZCBjb3JuZXJzLCBldmVuIGlmIHlvdSB1c2UgR05PTUUgNDAgb3IgNDEuXG5cbkl0IGlzIHdpZGVseSBiYXNlZCBvbiBhbHJlYWR5IGV4aXN0aW5nIGdub21lLXNoZWxsIGNvZGUsIGFuZCBvbiBhIG1lcmdlIHJlcXVlc3QgYnkgQWxleGFuZGVyIE1pa2hheWxlbmtvOiBodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwvLS9tZXJnZV9yZXF1ZXN0cy8xMzI4IiwKICAibmFtZSI6ICJQYW5lbCBjb3JuZXJzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWNvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2F1bmV0eC9wYW5lbC1jb3JuZXJzIiwKICAidXVpZCI6ICJwYW5lbC1jb3JuZXJzQGF1bmV0eCIsCiAgInZlcnNpb24iOiA2Cn0="}}}
 , {"uuid": "WhatWatch@Zappo-II.github.io", "name": "What Watch", "pname": "what-watch", "description": "Shows a customizeable analog desktop clock.\nPlease visit the GitHub repository for documentation and to report any issues.", "link": "https://extensions.gnome.org/extension/4806/what-watch/", "shell_version_map": {"38": {"version": "5", "sha256": "0pvbsf7497s9bnvsvk4axh5jynk9axflmc915qla76w1xkinqv9w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGEgY3VzdG9taXplYWJsZSBhbmFsb2cgZGVza3RvcCBjbG9jay5cblBsZWFzZSB2aXNpdCB0aGUgR2l0SHViIHJlcG9zaXRvcnkgZm9yIGRvY3VtZW50YXRpb24gYW5kIHRvIHJlcG9ydCBhbnkgaXNzdWVzLiIsCiAgIm5hbWUiOiAiV2hhdCBXYXRjaCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy56YXBwb2lpLndoYXR3YXRjaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1phcHBvLUlJL1doYXRXYXRjaCIsCiAgInV1aWQiOiAiV2hhdFdhdGNoQFphcHBvLUlJLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA1Cn0="}, "40": {"version": "5", "sha256": "0pvbsf7497s9bnvsvk4axh5jynk9axflmc915qla76w1xkinqv9w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGEgY3VzdG9taXplYWJsZSBhbmFsb2cgZGVza3RvcCBjbG9jay5cblBsZWFzZSB2aXNpdCB0aGUgR2l0SHViIHJlcG9zaXRvcnkgZm9yIGRvY3VtZW50YXRpb24gYW5kIHRvIHJlcG9ydCBhbnkgaXNzdWVzLiIsCiAgIm5hbWUiOiAiV2hhdCBXYXRjaCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy56YXBwb2lpLndoYXR3YXRjaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1phcHBvLUlJL1doYXRXYXRjaCIsCiAgInV1aWQiOiAiV2hhdFdhdGNoQFphcHBvLUlJLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA1Cn0="}, "41": {"version": "5", "sha256": "0pvbsf7497s9bnvsvk4axh5jynk9axflmc915qla76w1xkinqv9w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGEgY3VzdG9taXplYWJsZSBhbmFsb2cgZGVza3RvcCBjbG9jay5cblBsZWFzZSB2aXNpdCB0aGUgR2l0SHViIHJlcG9zaXRvcnkgZm9yIGRvY3VtZW50YXRpb24gYW5kIHRvIHJlcG9ydCBhbnkgaXNzdWVzLiIsCiAgIm5hbWUiOiAiV2hhdCBXYXRjaCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy56YXBwb2lpLndoYXR3YXRjaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1phcHBvLUlJL1doYXRXYXRjaCIsCiAgInV1aWQiOiAiV2hhdFdhdGNoQFphcHBvLUlJLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA1Cn0="}, "42": {"version": "5", "sha256": "0pvbsf7497s9bnvsvk4axh5jynk9axflmc915qla76w1xkinqv9w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGEgY3VzdG9taXplYWJsZSBhbmFsb2cgZGVza3RvcCBjbG9jay5cblBsZWFzZSB2aXNpdCB0aGUgR2l0SHViIHJlcG9zaXRvcnkgZm9yIGRvY3VtZW50YXRpb24gYW5kIHRvIHJlcG9ydCBhbnkgaXNzdWVzLiIsCiAgIm5hbWUiOiAiV2hhdCBXYXRjaCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy56YXBwb2lpLndoYXR3YXRjaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1phcHBvLUlJL1doYXRXYXRjaCIsCiAgInV1aWQiOiAiV2hhdFdhdGNoQFphcHBvLUlJLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"uuid": "cairo@eexpss.gmail.com", "name": "Cairo Clock", "pname": "cairo-clock", "description": "Cairo Clock. \n Click the clock face to set the alarm, click the center circle to enable the alarm.\n Alt + click on main icon, background of icon become green, this enable Popup per hour function. \n Ctrl + click on main icon, can test the alarm effect.\n In case of alarm, the clock will swing dynamically.", "link": "https://extensions.gnome.org/extension/4809/cairo-clock/", "shell_version_map": {"40": {"version": "17", "sha256": "161nflaca6l269m4v0g62yci3ffbahfk0id9f0215wqgnm1paap9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNhaXJvIENsb2NrLiBcbiBDbGljayB0aGUgY2xvY2sgZmFjZSB0byBzZXQgdGhlIGFsYXJtLCBjbGljayB0aGUgY2VudGVyIGNpcmNsZSB0byBlbmFibGUgdGhlIGFsYXJtLlxuIEFsdCArIGNsaWNrIG9uIG1haW4gaWNvbiwgYmFja2dyb3VuZCBvZiBpY29uIGJlY29tZSBncmVlbiwgdGhpcyBlbmFibGUgUG9wdXAgcGVyIGhvdXIgZnVuY3Rpb24uIFxuIEN0cmwgKyBjbGljayBvbiBtYWluIGljb24sIGNhbiB0ZXN0IHRoZSBhbGFybSBlZmZlY3QuXG4gSW4gY2FzZSBvZiBhbGFybSwgdGhlIGNsb2NrIHdpbGwgc3dpbmcgZHluYW1pY2FsbHkuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY2Fpcm8tY2xvY2siLAogICJuYW1lIjogIkNhaXJvIENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtY2Fpcm8iLAogICJ1dWlkIjogImNhaXJvQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "41": {"version": "17", "sha256": "161nflaca6l269m4v0g62yci3ffbahfk0id9f0215wqgnm1paap9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNhaXJvIENsb2NrLiBcbiBDbGljayB0aGUgY2xvY2sgZmFjZSB0byBzZXQgdGhlIGFsYXJtLCBjbGljayB0aGUgY2VudGVyIGNpcmNsZSB0byBlbmFibGUgdGhlIGFsYXJtLlxuIEFsdCArIGNsaWNrIG9uIG1haW4gaWNvbiwgYmFja2dyb3VuZCBvZiBpY29uIGJlY29tZSBncmVlbiwgdGhpcyBlbmFibGUgUG9wdXAgcGVyIGhvdXIgZnVuY3Rpb24uIFxuIEN0cmwgKyBjbGljayBvbiBtYWluIGljb24sIGNhbiB0ZXN0IHRoZSBhbGFybSBlZmZlY3QuXG4gSW4gY2FzZSBvZiBhbGFybSwgdGhlIGNsb2NrIHdpbGwgc3dpbmcgZHluYW1pY2FsbHkuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY2Fpcm8tY2xvY2siLAogICJuYW1lIjogIkNhaXJvIENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtY2Fpcm8iLAogICJ1dWlkIjogImNhaXJvQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "42": {"version": "17", "sha256": "161nflaca6l269m4v0g62yci3ffbahfk0id9f0215wqgnm1paap9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNhaXJvIENsb2NrLiBcbiBDbGljayB0aGUgY2xvY2sgZmFjZSB0byBzZXQgdGhlIGFsYXJtLCBjbGljayB0aGUgY2VudGVyIGNpcmNsZSB0byBlbmFibGUgdGhlIGFsYXJtLlxuIEFsdCArIGNsaWNrIG9uIG1haW4gaWNvbiwgYmFja2dyb3VuZCBvZiBpY29uIGJlY29tZSBncmVlbiwgdGhpcyBlbmFibGUgUG9wdXAgcGVyIGhvdXIgZnVuY3Rpb24uIFxuIEN0cmwgKyBjbGljayBvbiBtYWluIGljb24sIGNhbiB0ZXN0IHRoZSBhbGFybSBlZmZlY3QuXG4gSW4gY2FzZSBvZiBhbGFybSwgdGhlIGNsb2NrIHdpbGwgc3dpbmcgZHluYW1pY2FsbHkuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY2Fpcm8tY2xvY2siLAogICJuYW1lIjogIkNhaXJvIENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtY2Fpcm8iLAogICJ1dWlkIjogImNhaXJvQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}}}
 , {"uuid": "WallpaperSwitcher@Rishu", "name": "Wallpaper Switcher", "pname": "wallpaper-switcher", "description": "Extension to automatically Change wallpaper after a given interval", "link": "https://extensions.gnome.org/extension/4812/wallpaper-switcher/", "shell_version_map": {"38": {"version": "3", "sha256": "0a1zkl3dfdbql6d1n7f2l2xi77p8f6vq1f96gyny17vxpjbhghbv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4dGVuc2lvbiB0byBhdXRvbWF0aWNhbGx5IENoYW5nZSB3YWxscGFwZXIgYWZ0ZXIgYSBnaXZlbiBpbnRlcnZhbCIsCiAgIm5hbWUiOiAiV2FsbHBhcGVyIFN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmlzaHVpbmZpbml0eS9XYWxscGFwZXJTd2l0Y2hlciIsCiAgInV1aWQiOiAiV2FsbHBhcGVyU3dpdGNoZXJAUmlzaHUiLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "3", "sha256": "0a1zkl3dfdbql6d1n7f2l2xi77p8f6vq1f96gyny17vxpjbhghbv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4dGVuc2lvbiB0byBhdXRvbWF0aWNhbGx5IENoYW5nZSB3YWxscGFwZXIgYWZ0ZXIgYSBnaXZlbiBpbnRlcnZhbCIsCiAgIm5hbWUiOiAiV2FsbHBhcGVyIFN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmlzaHVpbmZpbml0eS9XYWxscGFwZXJTd2l0Y2hlciIsCiAgInV1aWQiOiAiV2FsbHBhcGVyU3dpdGNoZXJAUmlzaHUiLAogICJ2ZXJzaW9uIjogMwp9"}, "41": {"version": "3", "sha256": "0a1zkl3dfdbql6d1n7f2l2xi77p8f6vq1f96gyny17vxpjbhghbv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4dGVuc2lvbiB0byBhdXRvbWF0aWNhbGx5IENoYW5nZSB3YWxscGFwZXIgYWZ0ZXIgYSBnaXZlbiBpbnRlcnZhbCIsCiAgIm5hbWUiOiAiV2FsbHBhcGVyIFN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmlzaHVpbmZpbml0eS9XYWxscGFwZXJTd2l0Y2hlciIsCiAgInV1aWQiOiAiV2FsbHBhcGVyU3dpdGNoZXJAUmlzaHUiLAogICJ2ZXJzaW9uIjogMwp9"}, "42": {"version": "8", "sha256": "1gbli5yyh5d4ijl76j1qkg59qb3k6265s8bqscxkvlgpvxdwb9fi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4dGVuc2lvbiB0byBhdXRvbWF0aWNhbGx5IENoYW5nZSB3YWxscGFwZXIgYWZ0ZXIgYSBnaXZlbiBpbnRlcnZhbCIsCiAgIm5hbWUiOiAiV2FsbHBhcGVyIFN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yaXNodWluZmluaXR5L1dhbGxwYXBlclN3aXRjaGVyIiwKICAidXVpZCI6ICJXYWxscGFwZXJTd2l0Y2hlckBSaXNodSIsCiAgInZlcnNpb24iOiA4Cn0="}, "43": {"version": "8", "sha256": "1gbli5yyh5d4ijl76j1qkg59qb3k6265s8bqscxkvlgpvxdwb9fi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4dGVuc2lvbiB0byBhdXRvbWF0aWNhbGx5IENoYW5nZSB3YWxscGFwZXIgYWZ0ZXIgYSBnaXZlbiBpbnRlcnZhbCIsCiAgIm5hbWUiOiAiV2FsbHBhcGVyIFN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yaXNodWluZmluaXR5L1dhbGxwYXBlclN3aXRjaGVyIiwKICAidXVpZCI6ICJXYWxscGFwZXJTd2l0Y2hlckBSaXNodSIsCiAgInZlcnNpb24iOiA4Cn0="}}}
@@ -734,21 +734,21 @@
 , {"uuid": "nextcloud-folder@cosinus.org", "name": "Nextcloud Folder", "pname": "nextcloud-folder", "description": "Simple and lightweight GNOME 42+ extension to open Nextcloud folder in one click.", "link": "https://extensions.gnome.org/extension/4983/nextcloud-folder/", "shell_version_map": {"42": {"version": "4", "sha256": "1cdkfd03y0bfh09m40zikl51mcli311sarjqicnnqw6bzj1zqskj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBhbmQgbGlnaHR3ZWlnaHQgR05PTUUgNDIrIGV4dGVuc2lvbiB0byBvcGVuIE5leHRjbG91ZCBmb2xkZXIgaW4gb25lIGNsaWNrLiIsCiAgIm5hbWUiOiAiTmV4dGNsb3VkIEZvbGRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5uZXh0Y2xvdWQtZm9sZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FsZXNjZGIvbmV4dGNsb3VkLWZvbGRlciIsCiAgInV1aWQiOiAibmV4dGNsb3VkLWZvbGRlckBjb3NpbnVzLm9yZyIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "php-laravel-valet@rahulhaque", "name": "PHP Laravel Valet", "pname": "php-laravel-valet", "description": "A PHP Laravel Valet status indicator and manager.", "link": "https://extensions.gnome.org/extension/4985/php-laravel-valet/", "shell_version_map": {"40": {"version": "4", "sha256": "0h1hfh8i6sqzi0dy0sbh35s7flncqwpsxha4yr1bgrmg2a0gshzw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgUEhQIExhcmF2ZWwgVmFsZXQgc3RhdHVzIGluZGljYXRvciBhbmQgbWFuYWdlci4iLAogICJuYW1lIjogIlBIUCBMYXJhdmVsIFZhbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmFodWxoYXF1ZS9waHAtbGFyYXZlbC12YWxldC1nbm9tZS1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogInBocC1sYXJhdmVsLXZhbGV0QHJhaHVsaGFxdWUiLAogICJ2ZXJzaW9uIjogNAp9"}, "41": {"version": "4", "sha256": "0h1hfh8i6sqzi0dy0sbh35s7flncqwpsxha4yr1bgrmg2a0gshzw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgUEhQIExhcmF2ZWwgVmFsZXQgc3RhdHVzIGluZGljYXRvciBhbmQgbWFuYWdlci4iLAogICJuYW1lIjogIlBIUCBMYXJhdmVsIFZhbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmFodWxoYXF1ZS9waHAtbGFyYXZlbC12YWxldC1nbm9tZS1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogInBocC1sYXJhdmVsLXZhbGV0QHJhaHVsaGFxdWUiLAogICJ2ZXJzaW9uIjogNAp9"}, "42": {"version": "4", "sha256": "0h1hfh8i6sqzi0dy0sbh35s7flncqwpsxha4yr1bgrmg2a0gshzw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgUEhQIExhcmF2ZWwgVmFsZXQgc3RhdHVzIGluZGljYXRvciBhbmQgbWFuYWdlci4iLAogICJuYW1lIjogIlBIUCBMYXJhdmVsIFZhbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmFodWxoYXF1ZS9waHAtbGFyYXZlbC12YWxldC1nbm9tZS1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogInBocC1sYXJhdmVsLXZhbGV0QHJhaHVsaGFxdWUiLAogICJ2ZXJzaW9uIjogNAp9"}}}
 , {"uuid": "Home-Server@sven.kramer", "name": "Home-Server", "pname": "home-server", "description": "A simple Indicator that shows my home-server status (online / offline) on the main panel. Furthermore a wake on lan can be triggered. For WOL functionality, its necessary that you have 'wakeonlan' installed.", "link": "https://extensions.gnome.org/extension/4989/home-server/", "shell_version_map": {"38": {"version": "1", "sha256": "05cwv23w1438pg38ixhrvm360g3s11vrl8wqk84ai2xgydy94z2f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc2ltcGxlIEluZGljYXRvciB0aGF0IHNob3dzIG15IGhvbWUtc2VydmVyIHN0YXR1cyAob25saW5lIC8gb2ZmbGluZSkgb24gdGhlIG1haW4gcGFuZWwuIEZ1cnRoZXJtb3JlIGEgd2FrZSBvbiBsYW4gY2FuIGJlIHRyaWdnZXJlZC4gRm9yIFdPTCBmdW5jdGlvbmFsaXR5LCBpdHMgbmVjZXNzYXJ5IHRoYXQgeW91IGhhdmUgJ3dha2VvbmxhbicgaW5zdGFsbGVkLiIsCiAgIm1pbm9yIjogMSwKICAibmFtZSI6ICJIb21lLVNlcnZlciIsCiAgInJldmlzaW9uIjogMSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLkhvbWUtU2VydmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL3d3dy5zdmVuLWtyYW1lci5ldS9saW51eC9nbm9tZS1zaGVsbC1leHRlbnNpb24vaG9tZS1zZXJ2ZXIvIiwKICAidXVpZCI6ICJIb21lLVNlcnZlckBzdmVuLmtyYW1lciIsCiAgInZlcnNpb24iOiAxCn0="}, "40": {"version": "1", "sha256": "05cwv23w1438pg38ixhrvm360g3s11vrl8wqk84ai2xgydy94z2f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc2ltcGxlIEluZGljYXRvciB0aGF0IHNob3dzIG15IGhvbWUtc2VydmVyIHN0YXR1cyAob25saW5lIC8gb2ZmbGluZSkgb24gdGhlIG1haW4gcGFuZWwuIEZ1cnRoZXJtb3JlIGEgd2FrZSBvbiBsYW4gY2FuIGJlIHRyaWdnZXJlZC4gRm9yIFdPTCBmdW5jdGlvbmFsaXR5LCBpdHMgbmVjZXNzYXJ5IHRoYXQgeW91IGhhdmUgJ3dha2VvbmxhbicgaW5zdGFsbGVkLiIsCiAgIm1pbm9yIjogMSwKICAibmFtZSI6ICJIb21lLVNlcnZlciIsCiAgInJldmlzaW9uIjogMSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLkhvbWUtU2VydmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL3d3dy5zdmVuLWtyYW1lci5ldS9saW51eC9nbm9tZS1zaGVsbC1leHRlbnNpb24vaG9tZS1zZXJ2ZXIvIiwKICAidXVpZCI6ICJIb21lLVNlcnZlckBzdmVuLmtyYW1lciIsCiAgInZlcnNpb24iOiAxCn0="}, "41": {"version": "1", "sha256": "05cwv23w1438pg38ixhrvm360g3s11vrl8wqk84ai2xgydy94z2f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc2ltcGxlIEluZGljYXRvciB0aGF0IHNob3dzIG15IGhvbWUtc2VydmVyIHN0YXR1cyAob25saW5lIC8gb2ZmbGluZSkgb24gdGhlIG1haW4gcGFuZWwuIEZ1cnRoZXJtb3JlIGEgd2FrZSBvbiBsYW4gY2FuIGJlIHRyaWdnZXJlZC4gRm9yIFdPTCBmdW5jdGlvbmFsaXR5LCBpdHMgbmVjZXNzYXJ5IHRoYXQgeW91IGhhdmUgJ3dha2VvbmxhbicgaW5zdGFsbGVkLiIsCiAgIm1pbm9yIjogMSwKICAibmFtZSI6ICJIb21lLVNlcnZlciIsCiAgInJldmlzaW9uIjogMSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLkhvbWUtU2VydmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL3d3dy5zdmVuLWtyYW1lci5ldS9saW51eC9nbm9tZS1zaGVsbC1leHRlbnNpb24vaG9tZS1zZXJ2ZXIvIiwKICAidXVpZCI6ICJIb21lLVNlcnZlckBzdmVuLmtyYW1lciIsCiAgInZlcnNpb24iOiAxCn0="}, "42": {"version": "1", "sha256": "05cwv23w1438pg38ixhrvm360g3s11vrl8wqk84ai2xgydy94z2f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc2ltcGxlIEluZGljYXRvciB0aGF0IHNob3dzIG15IGhvbWUtc2VydmVyIHN0YXR1cyAob25saW5lIC8gb2ZmbGluZSkgb24gdGhlIG1haW4gcGFuZWwuIEZ1cnRoZXJtb3JlIGEgd2FrZSBvbiBsYW4gY2FuIGJlIHRyaWdnZXJlZC4gRm9yIFdPTCBmdW5jdGlvbmFsaXR5LCBpdHMgbmVjZXNzYXJ5IHRoYXQgeW91IGhhdmUgJ3dha2VvbmxhbicgaW5zdGFsbGVkLiIsCiAgIm1pbm9yIjogMSwKICAibmFtZSI6ICJIb21lLVNlcnZlciIsCiAgInJldmlzaW9uIjogMSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLkhvbWUtU2VydmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL3d3dy5zdmVuLWtyYW1lci5ldS9saW51eC9nbm9tZS1zaGVsbC1leHRlbnNpb24vaG9tZS1zZXJ2ZXIvIiwKICAidXVpZCI6ICJIb21lLVNlcnZlckBzdmVuLmtyYW1lciIsCiAgInZlcnNpb24iOiAxCn0="}}}
-, {"uuid": "dash2dock-lite@icedman.github.com", "name": "Dash2Dock Lite", "pname": "dash2dock-lite", "description": "minimal implementation of dash to dock", "link": "https://extensions.gnome.org/extension/4994/dash2dock-lite/", "shell_version_map": {"40": {"version": "11", "sha256": "0gdn1m41zchzlz1lcksmd9lbdg6w1c9pdxmsym97j7gxbxkxnggd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIm1pbmltYWwgaW1wbGVtZW50YXRpb24gb2YgZGFzaCB0byBkb2NrIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGFzaDJkb2NrLWxpdGUiLAogICJuYW1lIjogIkRhc2gyRG9jayBMaXRlIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJpY2VkbWFuIgogIF0sCiAgInNjaGVtYS1pZCI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXNoMmRvY2stbGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ljZWRtYW4vZGFzaDJkb2NrLWxpdGUiLAogICJ1dWlkIjogImRhc2gyZG9jay1saXRlQGljZWRtYW4uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMQp9"}, "41": {"version": "11", "sha256": "0gdn1m41zchzlz1lcksmd9lbdg6w1c9pdxmsym97j7gxbxkxnggd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIm1pbmltYWwgaW1wbGVtZW50YXRpb24gb2YgZGFzaCB0byBkb2NrIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGFzaDJkb2NrLWxpdGUiLAogICJuYW1lIjogIkRhc2gyRG9jayBMaXRlIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJpY2VkbWFuIgogIF0sCiAgInNjaGVtYS1pZCI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXNoMmRvY2stbGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ljZWRtYW4vZGFzaDJkb2NrLWxpdGUiLAogICJ1dWlkIjogImRhc2gyZG9jay1saXRlQGljZWRtYW4uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMQp9"}, "42": {"version": "11", "sha256": "0gdn1m41zchzlz1lcksmd9lbdg6w1c9pdxmsym97j7gxbxkxnggd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIm1pbmltYWwgaW1wbGVtZW50YXRpb24gb2YgZGFzaCB0byBkb2NrIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGFzaDJkb2NrLWxpdGUiLAogICJuYW1lIjogIkRhc2gyRG9jayBMaXRlIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJpY2VkbWFuIgogIF0sCiAgInNjaGVtYS1pZCI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXNoMmRvY2stbGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ljZWRtYW4vZGFzaDJkb2NrLWxpdGUiLAogICJ1dWlkIjogImRhc2gyZG9jay1saXRlQGljZWRtYW4uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMQp9"}}}
+, {"uuid": "dash2dock-lite@icedman.github.com", "name": "Dash2Dock Lite", "pname": "dash2dock-lite", "description": "A minimal and animated implementation of dash to dock", "link": "https://extensions.gnome.org/extension/4994/dash2dock-lite/", "shell_version_map": {"40": {"version": "12", "sha256": "1vwdy9hghaqzkgagkc4n1w1np7vpnixjw9ckxkx7ppqg0ss1v9gs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgbWluaW1hbCBhbmQgYW5pbWF0ZWQgaW1wbGVtZW50YXRpb24gb2YgZGFzaCB0byBkb2NrIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGFzaDJkb2NrLWxpdGUiLAogICJuYW1lIjogIkRhc2gyRG9jayBMaXRlIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJpY2VkbWFuIgogIF0sCiAgInNjaGVtYS1pZCI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXNoMmRvY2stbGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pY2VkbWFuL2Rhc2gyZG9jay1saXRlIiwKICAidXVpZCI6ICJkYXNoMmRvY2stbGl0ZUBpY2VkbWFuLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "41": {"version": "12", "sha256": "1vwdy9hghaqzkgagkc4n1w1np7vpnixjw9ckxkx7ppqg0ss1v9gs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgbWluaW1hbCBhbmQgYW5pbWF0ZWQgaW1wbGVtZW50YXRpb24gb2YgZGFzaCB0byBkb2NrIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGFzaDJkb2NrLWxpdGUiLAogICJuYW1lIjogIkRhc2gyRG9jayBMaXRlIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJpY2VkbWFuIgogIF0sCiAgInNjaGVtYS1pZCI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXNoMmRvY2stbGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pY2VkbWFuL2Rhc2gyZG9jay1saXRlIiwKICAidXVpZCI6ICJkYXNoMmRvY2stbGl0ZUBpY2VkbWFuLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "42": {"version": "12", "sha256": "1vwdy9hghaqzkgagkc4n1w1np7vpnixjw9ckxkx7ppqg0ss1v9gs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgbWluaW1hbCBhbmQgYW5pbWF0ZWQgaW1wbGVtZW50YXRpb24gb2YgZGFzaCB0byBkb2NrIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGFzaDJkb2NrLWxpdGUiLAogICJuYW1lIjogIkRhc2gyRG9jayBMaXRlIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJpY2VkbWFuIgogIF0sCiAgInNjaGVtYS1pZCI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXNoMmRvY2stbGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pY2VkbWFuL2Rhc2gyZG9jay1saXRlIiwKICAidXVpZCI6ICJkYXNoMmRvY2stbGl0ZUBpY2VkbWFuLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "43": {"version": "12", "sha256": "1vwdy9hghaqzkgagkc4n1w1np7vpnixjw9ckxkx7ppqg0ss1v9gs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgbWluaW1hbCBhbmQgYW5pbWF0ZWQgaW1wbGVtZW50YXRpb24gb2YgZGFzaCB0byBkb2NrIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGFzaDJkb2NrLWxpdGUiLAogICJuYW1lIjogIkRhc2gyRG9jayBMaXRlIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJpY2VkbWFuIgogIF0sCiAgInNjaGVtYS1pZCI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXNoMmRvY2stbGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pY2VkbWFuL2Rhc2gyZG9jay1saXRlIiwKICAidXVpZCI6ICJkYXNoMmRvY2stbGl0ZUBpY2VkbWFuLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}}}
 , {"uuid": "animate@eexpss.gmail.com", "name": "animate", "pname": "animate", "description": "Animated small man run through the screen. Scroll mouse can change deferent character. You can use your PNG characters instead of the original ones.", "link": "https://extensions.gnome.org/extension/4995/animate/", "shell_version_map": {"40": {"version": "4", "sha256": "1p110wz7wdr51z2fsn6z72lcnln13h8lfbw9a00hs9qb0y71qf5q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuaW1hdGVkIHNtYWxsIG1hbiBydW4gdGhyb3VnaCB0aGUgc2NyZWVuLiBTY3JvbGwgbW91c2UgY2FuIGNoYW5nZSBkZWZlcmVudCBjaGFyYWN0ZXIuIFlvdSBjYW4gdXNlIHlvdXIgUE5HIGNoYXJhY3RlcnMgaW5zdGVhZCBvZiB0aGUgb3JpZ2luYWwgb25lcy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhbmltYXRlIiwKICAibmFtZSI6ICJhbmltYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ3MtYW5pbWF0ZSIsCiAgInV1aWQiOiAiYW5pbWF0ZUBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "1p110wz7wdr51z2fsn6z72lcnln13h8lfbw9a00hs9qb0y71qf5q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuaW1hdGVkIHNtYWxsIG1hbiBydW4gdGhyb3VnaCB0aGUgc2NyZWVuLiBTY3JvbGwgbW91c2UgY2FuIGNoYW5nZSBkZWZlcmVudCBjaGFyYWN0ZXIuIFlvdSBjYW4gdXNlIHlvdXIgUE5HIGNoYXJhY3RlcnMgaW5zdGVhZCBvZiB0aGUgb3JpZ2luYWwgb25lcy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhbmltYXRlIiwKICAibmFtZSI6ICJhbmltYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ3MtYW5pbWF0ZSIsCiAgInV1aWQiOiAiYW5pbWF0ZUBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "42": {"version": "4", "sha256": "1p110wz7wdr51z2fsn6z72lcnln13h8lfbw9a00hs9qb0y71qf5q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuaW1hdGVkIHNtYWxsIG1hbiBydW4gdGhyb3VnaCB0aGUgc2NyZWVuLiBTY3JvbGwgbW91c2UgY2FuIGNoYW5nZSBkZWZlcmVudCBjaGFyYWN0ZXIuIFlvdSBjYW4gdXNlIHlvdXIgUE5HIGNoYXJhY3RlcnMgaW5zdGVhZCBvZiB0aGUgb3JpZ2luYWwgb25lcy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhbmltYXRlIiwKICAibmFtZSI6ICJhbmltYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ3MtYW5pbWF0ZSIsCiAgInV1aWQiOiAiYW5pbWF0ZUBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "legacyschemeautoswitcher@joshimukul29.gmail.com", "name": "Legacy (GTK3) Theme Scheme Auto Switcher", "pname": "legacy-gtk3-theme-scheme-auto-switcher", "description": "Change the GTK3 theme to light/dark variant based on the system color scheme on Gnome 42", "link": "https://extensions.gnome.org/extension/4998/legacy-gtk3-theme-scheme-auto-switcher/", "shell_version_map": {"42": {"version": "4", "sha256": "022drnhrqmgpgfsikxwhy82bds27mr8h1wxm2hh4pry6smmdgx2d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB0aGUgR1RLMyB0aGVtZSB0byBsaWdodC9kYXJrIHZhcmlhbnQgYmFzZWQgb24gdGhlIHN5c3RlbSBjb2xvciBzY2hlbWUgb24gR25vbWUgNDIiLAogICJuYW1lIjogIkxlZ2FjeSAoR1RLMykgVGhlbWUgU2NoZW1lIEF1dG8gU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL211a3VsMjkvbGVnYWN5LXRoZW1lLWF1dG8tc3dpdGNoZXItZ25vbWUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJsZWdhY3lzY2hlbWVhdXRvc3dpdGNoZXJAam9zaGltdWt1bDI5LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}, "43": {"version": "4", "sha256": "022drnhrqmgpgfsikxwhy82bds27mr8h1wxm2hh4pry6smmdgx2d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB0aGUgR1RLMyB0aGVtZSB0byBsaWdodC9kYXJrIHZhcmlhbnQgYmFzZWQgb24gdGhlIHN5c3RlbSBjb2xvciBzY2hlbWUgb24gR25vbWUgNDIiLAogICJuYW1lIjogIkxlZ2FjeSAoR1RLMykgVGhlbWUgU2NoZW1lIEF1dG8gU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL211a3VsMjkvbGVnYWN5LXRoZW1lLWF1dG8tc3dpdGNoZXItZ25vbWUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJsZWdhY3lzY2hlbWVhdXRvc3dpdGNoZXJAam9zaGltdWt1bDI5LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "dash-to-dock-cosmic-@halfmexicanhalfamazing@gmail.com", "name": "Dash to Dock for COSMIC", "pname": "dash-to-dock-for-cosmic", "description": "A Dash to Dock fork for the COSMIC/GNOME Shell, fixes conflict with Cosmic Workspace.  It prevents Cosmic Workspaces from breaking after suspend. \n\nMake sure to disable Cosmic-Dock\n\nAdded features include:\nCustom Dock Border Radius\nCustom Dock Margins\nDifferent Alignment Settings for Dock and Panel Mode", "link": "https://extensions.gnome.org/extension/5004/dash-to-dock-for-cosmic/", "shell_version_map": {"40": {"version": "18", "sha256": "1wrff2kvxbzavdghwi1gsq645cxv5ksr9yfdhwmi7p6j299bgb7v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgRGFzaCB0byBEb2NrIGZvcmsgZm9yIHRoZSBDT1NNSUMvR05PTUUgU2hlbGwsIGZpeGVzIGNvbmZsaWN0IHdpdGggQ29zbWljIFdvcmtzcGFjZS4gIEl0IHByZXZlbnRzIENvc21pYyBXb3Jrc3BhY2VzIGZyb20gYnJlYWtpbmcgYWZ0ZXIgc3VzcGVuZC4gXG5cbk1ha2Ugc3VyZSB0byBkaXNhYmxlIENvc21pYy1Eb2NrXG5cbkFkZGVkIGZlYXR1cmVzIGluY2x1ZGU6XG5DdXN0b20gRG9jayBCb3JkZXIgUmFkaXVzXG5DdXN0b20gRG9jayBNYXJnaW5zXG5EaWZmZXJlbnQgQWxpZ25tZW50IFNldHRpbmdzIGZvciBEb2NrIGFuZCBQYW5lbCBNb2RlIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGFzaHRvZG9jayIsCiAgIm5hbWUiOiAiRGFzaCB0byBEb2NrIGZvciBDT1NNSUMiLAogICJvcmlnaW5hbC1hdXRob3IiOiAiaGFsZm1leGljYW5oYWxmYW1hemluZ0BnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYWxmbWV4aWNhbi9kYXNoLXRvLWRvY2stcG9wL3RyZWUvdWJ1bnR1LWRvY2siLAogICJ1dWlkIjogImRhc2gtdG8tZG9jay1jb3NtaWMtQGhhbGZtZXhpY2FuaGFsZmFtYXppbmdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDE4Cn0="}, "41": {"version": "18", "sha256": "1wrff2kvxbzavdghwi1gsq645cxv5ksr9yfdhwmi7p6j299bgb7v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgRGFzaCB0byBEb2NrIGZvcmsgZm9yIHRoZSBDT1NNSUMvR05PTUUgU2hlbGwsIGZpeGVzIGNvbmZsaWN0IHdpdGggQ29zbWljIFdvcmtzcGFjZS4gIEl0IHByZXZlbnRzIENvc21pYyBXb3Jrc3BhY2VzIGZyb20gYnJlYWtpbmcgYWZ0ZXIgc3VzcGVuZC4gXG5cbk1ha2Ugc3VyZSB0byBkaXNhYmxlIENvc21pYy1Eb2NrXG5cbkFkZGVkIGZlYXR1cmVzIGluY2x1ZGU6XG5DdXN0b20gRG9jayBCb3JkZXIgUmFkaXVzXG5DdXN0b20gRG9jayBNYXJnaW5zXG5EaWZmZXJlbnQgQWxpZ25tZW50IFNldHRpbmdzIGZvciBEb2NrIGFuZCBQYW5lbCBNb2RlIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGFzaHRvZG9jayIsCiAgIm5hbWUiOiAiRGFzaCB0byBEb2NrIGZvciBDT1NNSUMiLAogICJvcmlnaW5hbC1hdXRob3IiOiAiaGFsZm1leGljYW5oYWxmYW1hemluZ0BnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYWxmbWV4aWNhbi9kYXNoLXRvLWRvY2stcG9wL3RyZWUvdWJ1bnR1LWRvY2siLAogICJ1dWlkIjogImRhc2gtdG8tZG9jay1jb3NtaWMtQGhhbGZtZXhpY2FuaGFsZmFtYXppbmdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDE4Cn0="}, "42": {"version": "18", "sha256": "1wrff2kvxbzavdghwi1gsq645cxv5ksr9yfdhwmi7p6j299bgb7v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgRGFzaCB0byBEb2NrIGZvcmsgZm9yIHRoZSBDT1NNSUMvR05PTUUgU2hlbGwsIGZpeGVzIGNvbmZsaWN0IHdpdGggQ29zbWljIFdvcmtzcGFjZS4gIEl0IHByZXZlbnRzIENvc21pYyBXb3Jrc3BhY2VzIGZyb20gYnJlYWtpbmcgYWZ0ZXIgc3VzcGVuZC4gXG5cbk1ha2Ugc3VyZSB0byBkaXNhYmxlIENvc21pYy1Eb2NrXG5cbkFkZGVkIGZlYXR1cmVzIGluY2x1ZGU6XG5DdXN0b20gRG9jayBCb3JkZXIgUmFkaXVzXG5DdXN0b20gRG9jayBNYXJnaW5zXG5EaWZmZXJlbnQgQWxpZ25tZW50IFNldHRpbmdzIGZvciBEb2NrIGFuZCBQYW5lbCBNb2RlIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGFzaHRvZG9jayIsCiAgIm5hbWUiOiAiRGFzaCB0byBEb2NrIGZvciBDT1NNSUMiLAogICJvcmlnaW5hbC1hdXRob3IiOiAiaGFsZm1leGljYW5oYWxmYW1hemluZ0BnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYWxmbWV4aWNhbi9kYXNoLXRvLWRvY2stcG9wL3RyZWUvdWJ1bnR1LWRvY2siLAogICJ1dWlkIjogImRhc2gtdG8tZG9jay1jb3NtaWMtQGhhbGZtZXhpY2FuaGFsZmFtYXppbmdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDE4Cn0="}}}
-, {"uuid": "rclone-manager@germanztz.com", "name": "rclone-manager", "pname": "rclone-manager", "description": "Is like Dropbox sync client but for more than 30 services, adds an indicator to the top panel so you can manage the rclone profiles configured in your system, perform operations such as mount as remote, watch for file modifications, sync with remote storage, navigate it's main folder. Also, it shows the status of each profile so you can supervise the operations, and provides an easy access log of events. Backup and restore the rclone configuration file, so you won't have to configure all your devices one by one", "link": "https://extensions.gnome.org/extension/5006/rclone-manager/", "shell_version_map": {"40": {"version": "5", "sha256": "1zl4m9mqy8xxxxqa47z40w0rhyspj39rzaav3q1mlm23r0aj5gni", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklzIGxpa2UgRHJvcGJveCBzeW5jIGNsaWVudCBidXQgZm9yIG1vcmUgdGhhbiAzMCBzZXJ2aWNlcywgYWRkcyBhbiBpbmRpY2F0b3IgdG8gdGhlIHRvcCBwYW5lbCBzbyB5b3UgY2FuIG1hbmFnZSB0aGUgcmNsb25lIHByb2ZpbGVzIGNvbmZpZ3VyZWQgaW4geW91ciBzeXN0ZW0sIHBlcmZvcm0gb3BlcmF0aW9ucyBzdWNoIGFzIG1vdW50IGFzIHJlbW90ZSwgd2F0Y2ggZm9yIGZpbGUgbW9kaWZpY2F0aW9ucywgc3luYyB3aXRoIHJlbW90ZSBzdG9yYWdlLCBuYXZpZ2F0ZSBpdCdzIG1haW4gZm9sZGVyLiBBbHNvLCBpdCBzaG93cyB0aGUgc3RhdHVzIG9mIGVhY2ggcHJvZmlsZSBzbyB5b3UgY2FuIHN1cGVydmlzZSB0aGUgb3BlcmF0aW9ucywgYW5kIHByb3ZpZGVzIGFuIGVhc3kgYWNjZXNzIGxvZyBvZiBldmVudHMuIEJhY2t1cCBhbmQgcmVzdG9yZSB0aGUgcmNsb25lIGNvbmZpZ3VyYXRpb24gZmlsZSwgc28geW91IHdvbid0IGhhdmUgdG8gY29uZmlndXJlIGFsbCB5b3VyIGRldmljZXMgb25lIGJ5IG9uZSIsCiAgIm5hbWUiOiAicmNsb25lLW1hbmFnZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dlcm1hbnp0ei9nbm9tZS1zaGVsbC1leHRlbnNpb24tcmNsb25lLW1hbmFnZXIiLAogICJ1dWlkIjogInJjbG9uZS1tYW5hZ2VyQGdlcm1hbnp0ei5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}, "42": {"version": "5", "sha256": "1zl4m9mqy8xxxxqa47z40w0rhyspj39rzaav3q1mlm23r0aj5gni", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklzIGxpa2UgRHJvcGJveCBzeW5jIGNsaWVudCBidXQgZm9yIG1vcmUgdGhhbiAzMCBzZXJ2aWNlcywgYWRkcyBhbiBpbmRpY2F0b3IgdG8gdGhlIHRvcCBwYW5lbCBzbyB5b3UgY2FuIG1hbmFnZSB0aGUgcmNsb25lIHByb2ZpbGVzIGNvbmZpZ3VyZWQgaW4geW91ciBzeXN0ZW0sIHBlcmZvcm0gb3BlcmF0aW9ucyBzdWNoIGFzIG1vdW50IGFzIHJlbW90ZSwgd2F0Y2ggZm9yIGZpbGUgbW9kaWZpY2F0aW9ucywgc3luYyB3aXRoIHJlbW90ZSBzdG9yYWdlLCBuYXZpZ2F0ZSBpdCdzIG1haW4gZm9sZGVyLiBBbHNvLCBpdCBzaG93cyB0aGUgc3RhdHVzIG9mIGVhY2ggcHJvZmlsZSBzbyB5b3UgY2FuIHN1cGVydmlzZSB0aGUgb3BlcmF0aW9ucywgYW5kIHByb3ZpZGVzIGFuIGVhc3kgYWNjZXNzIGxvZyBvZiBldmVudHMuIEJhY2t1cCBhbmQgcmVzdG9yZSB0aGUgcmNsb25lIGNvbmZpZ3VyYXRpb24gZmlsZSwgc28geW91IHdvbid0IGhhdmUgdG8gY29uZmlndXJlIGFsbCB5b3VyIGRldmljZXMgb25lIGJ5IG9uZSIsCiAgIm5hbWUiOiAicmNsb25lLW1hbmFnZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dlcm1hbnp0ei9nbm9tZS1zaGVsbC1leHRlbnNpb24tcmNsb25lLW1hbmFnZXIiLAogICJ1dWlkIjogInJjbG9uZS1tYW5hZ2VyQGdlcm1hbnp0ei5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}}}
-, {"uuid": "GPU_profile_selector@lorenzo9904.gmail.com", "name": "GPU profile selector", "pname": "gpu-profile-selector", "description": "You need also envycontrol(https://github.com/geminis3/envycontrol) for making this extension working. This is a simple gnome-shell extension which provides a simple way to switch between GPU profiles on Nvidia Optimus systems (i.e laptops with Intel + Nvidia or AMD + Nvidia configurations) in a few clicks.", "link": "https://extensions.gnome.org/extension/5009/gpu-profile-selector/", "shell_version_map": {"38": {"version": "8", "sha256": "0hbljdwamhrznzsqxwj8msi0y43qrhafirms15srkpxhgc6rlsqp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIllvdSBuZWVkIGFsc28gZW52eWNvbnRyb2woaHR0cHM6Ly9naXRodWIuY29tL2dlbWluaXMzL2Vudnljb250cm9sKSBmb3IgbWFraW5nIHRoaXMgZXh0ZW5zaW9uIHdvcmtpbmcuIFRoaXMgaXMgYSBzaW1wbGUgZ25vbWUtc2hlbGwgZXh0ZW5zaW9uIHdoaWNoIHByb3ZpZGVzIGEgc2ltcGxlIHdheSB0byBzd2l0Y2ggYmV0d2VlbiBHUFUgcHJvZmlsZXMgb24gTnZpZGlhIE9wdGltdXMgc3lzdGVtcyAoaS5lIGxhcHRvcHMgd2l0aCBJbnRlbCArIE52aWRpYSBvciBBTUQgKyBOdmlkaWEgY29uZmlndXJhdGlvbnMpIGluIGEgZmV3IGNsaWNrcy4iLAogICJuYW1lIjogIkdQVSBwcm9maWxlIHNlbGVjdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTG9yZW56b01vcmVsbGkvR1BVX3Byb2ZpbGVfc2VsZWN0b3IiLAogICJ1dWlkIjogIkdQVV9wcm9maWxlX3NlbGVjdG9yQGxvcmVuem85OTA0LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "40": {"version": "8", "sha256": "0hbljdwamhrznzsqxwj8msi0y43qrhafirms15srkpxhgc6rlsqp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIllvdSBuZWVkIGFsc28gZW52eWNvbnRyb2woaHR0cHM6Ly9naXRodWIuY29tL2dlbWluaXMzL2Vudnljb250cm9sKSBmb3IgbWFraW5nIHRoaXMgZXh0ZW5zaW9uIHdvcmtpbmcuIFRoaXMgaXMgYSBzaW1wbGUgZ25vbWUtc2hlbGwgZXh0ZW5zaW9uIHdoaWNoIHByb3ZpZGVzIGEgc2ltcGxlIHdheSB0byBzd2l0Y2ggYmV0d2VlbiBHUFUgcHJvZmlsZXMgb24gTnZpZGlhIE9wdGltdXMgc3lzdGVtcyAoaS5lIGxhcHRvcHMgd2l0aCBJbnRlbCArIE52aWRpYSBvciBBTUQgKyBOdmlkaWEgY29uZmlndXJhdGlvbnMpIGluIGEgZmV3IGNsaWNrcy4iLAogICJuYW1lIjogIkdQVSBwcm9maWxlIHNlbGVjdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTG9yZW56b01vcmVsbGkvR1BVX3Byb2ZpbGVfc2VsZWN0b3IiLAogICJ1dWlkIjogIkdQVV9wcm9maWxlX3NlbGVjdG9yQGxvcmVuem85OTA0LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "41": {"version": "8", "sha256": "0hbljdwamhrznzsqxwj8msi0y43qrhafirms15srkpxhgc6rlsqp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIllvdSBuZWVkIGFsc28gZW52eWNvbnRyb2woaHR0cHM6Ly9naXRodWIuY29tL2dlbWluaXMzL2Vudnljb250cm9sKSBmb3IgbWFraW5nIHRoaXMgZXh0ZW5zaW9uIHdvcmtpbmcuIFRoaXMgaXMgYSBzaW1wbGUgZ25vbWUtc2hlbGwgZXh0ZW5zaW9uIHdoaWNoIHByb3ZpZGVzIGEgc2ltcGxlIHdheSB0byBzd2l0Y2ggYmV0d2VlbiBHUFUgcHJvZmlsZXMgb24gTnZpZGlhIE9wdGltdXMgc3lzdGVtcyAoaS5lIGxhcHRvcHMgd2l0aCBJbnRlbCArIE52aWRpYSBvciBBTUQgKyBOdmlkaWEgY29uZmlndXJhdGlvbnMpIGluIGEgZmV3IGNsaWNrcy4iLAogICJuYW1lIjogIkdQVSBwcm9maWxlIHNlbGVjdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTG9yZW56b01vcmVsbGkvR1BVX3Byb2ZpbGVfc2VsZWN0b3IiLAogICJ1dWlkIjogIkdQVV9wcm9maWxlX3NlbGVjdG9yQGxvcmVuem85OTA0LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "42": {"version": "8", "sha256": "0hbljdwamhrznzsqxwj8msi0y43qrhafirms15srkpxhgc6rlsqp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIllvdSBuZWVkIGFsc28gZW52eWNvbnRyb2woaHR0cHM6Ly9naXRodWIuY29tL2dlbWluaXMzL2Vudnljb250cm9sKSBmb3IgbWFraW5nIHRoaXMgZXh0ZW5zaW9uIHdvcmtpbmcuIFRoaXMgaXMgYSBzaW1wbGUgZ25vbWUtc2hlbGwgZXh0ZW5zaW9uIHdoaWNoIHByb3ZpZGVzIGEgc2ltcGxlIHdheSB0byBzd2l0Y2ggYmV0d2VlbiBHUFUgcHJvZmlsZXMgb24gTnZpZGlhIE9wdGltdXMgc3lzdGVtcyAoaS5lIGxhcHRvcHMgd2l0aCBJbnRlbCArIE52aWRpYSBvciBBTUQgKyBOdmlkaWEgY29uZmlndXJhdGlvbnMpIGluIGEgZmV3IGNsaWNrcy4iLAogICJuYW1lIjogIkdQVSBwcm9maWxlIHNlbGVjdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTG9yZW56b01vcmVsbGkvR1BVX3Byb2ZpbGVfc2VsZWN0b3IiLAogICJ1dWlkIjogIkdQVV9wcm9maWxlX3NlbGVjdG9yQGxvcmVuem85OTA0LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}}}
+, {"uuid": "rclone-manager@germanztz.com", "name": "rclone-manager", "pname": "rclone-manager", "description": "Is like Dropbox sync client but for more than 30 services, adds an indicator to the top panel so you can manage the rclone profiles configured in your system, perform operations such as mount as remote, watch for file modifications, sync with remote storage, navigate it's main folder. Also, it shows the status of each profile so you can supervise the operations, and provides an easy access log of events. Backup and restore the rclone configuration file, so you won't have to configure all your devices one by one", "link": "https://extensions.gnome.org/extension/5006/rclone-manager/", "shell_version_map": {"40": {"version": "7", "sha256": "04wpr0qjlgwsdax3j91sp2ihwpprk5imfahmhbcvy1pcc5a68b94", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklzIGxpa2UgRHJvcGJveCBzeW5jIGNsaWVudCBidXQgZm9yIG1vcmUgdGhhbiAzMCBzZXJ2aWNlcywgYWRkcyBhbiBpbmRpY2F0b3IgdG8gdGhlIHRvcCBwYW5lbCBzbyB5b3UgY2FuIG1hbmFnZSB0aGUgcmNsb25lIHByb2ZpbGVzIGNvbmZpZ3VyZWQgaW4geW91ciBzeXN0ZW0sIHBlcmZvcm0gb3BlcmF0aW9ucyBzdWNoIGFzIG1vdW50IGFzIHJlbW90ZSwgd2F0Y2ggZm9yIGZpbGUgbW9kaWZpY2F0aW9ucywgc3luYyB3aXRoIHJlbW90ZSBzdG9yYWdlLCBuYXZpZ2F0ZSBpdCdzIG1haW4gZm9sZGVyLiBBbHNvLCBpdCBzaG93cyB0aGUgc3RhdHVzIG9mIGVhY2ggcHJvZmlsZSBzbyB5b3UgY2FuIHN1cGVydmlzZSB0aGUgb3BlcmF0aW9ucywgYW5kIHByb3ZpZGVzIGFuIGVhc3kgYWNjZXNzIGxvZyBvZiBldmVudHMuIEJhY2t1cCBhbmQgcmVzdG9yZSB0aGUgcmNsb25lIGNvbmZpZ3VyYXRpb24gZmlsZSwgc28geW91IHdvbid0IGhhdmUgdG8gY29uZmlndXJlIGFsbCB5b3VyIGRldmljZXMgb25lIGJ5IG9uZSIsCiAgIm5hbWUiOiAicmNsb25lLW1hbmFnZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dlcm1hbnp0ei9nbm9tZS1zaGVsbC1leHRlbnNpb24tcmNsb25lLW1hbmFnZXIiLAogICJ1dWlkIjogInJjbG9uZS1tYW5hZ2VyQGdlcm1hbnp0ei5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}, "42": {"version": "7", "sha256": "04wpr0qjlgwsdax3j91sp2ihwpprk5imfahmhbcvy1pcc5a68b94", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklzIGxpa2UgRHJvcGJveCBzeW5jIGNsaWVudCBidXQgZm9yIG1vcmUgdGhhbiAzMCBzZXJ2aWNlcywgYWRkcyBhbiBpbmRpY2F0b3IgdG8gdGhlIHRvcCBwYW5lbCBzbyB5b3UgY2FuIG1hbmFnZSB0aGUgcmNsb25lIHByb2ZpbGVzIGNvbmZpZ3VyZWQgaW4geW91ciBzeXN0ZW0sIHBlcmZvcm0gb3BlcmF0aW9ucyBzdWNoIGFzIG1vdW50IGFzIHJlbW90ZSwgd2F0Y2ggZm9yIGZpbGUgbW9kaWZpY2F0aW9ucywgc3luYyB3aXRoIHJlbW90ZSBzdG9yYWdlLCBuYXZpZ2F0ZSBpdCdzIG1haW4gZm9sZGVyLiBBbHNvLCBpdCBzaG93cyB0aGUgc3RhdHVzIG9mIGVhY2ggcHJvZmlsZSBzbyB5b3UgY2FuIHN1cGVydmlzZSB0aGUgb3BlcmF0aW9ucywgYW5kIHByb3ZpZGVzIGFuIGVhc3kgYWNjZXNzIGxvZyBvZiBldmVudHMuIEJhY2t1cCBhbmQgcmVzdG9yZSB0aGUgcmNsb25lIGNvbmZpZ3VyYXRpb24gZmlsZSwgc28geW91IHdvbid0IGhhdmUgdG8gY29uZmlndXJlIGFsbCB5b3VyIGRldmljZXMgb25lIGJ5IG9uZSIsCiAgIm5hbWUiOiAicmNsb25lLW1hbmFnZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dlcm1hbnp0ei9nbm9tZS1zaGVsbC1leHRlbnNpb24tcmNsb25lLW1hbmFnZXIiLAogICJ1dWlkIjogInJjbG9uZS1tYW5hZ2VyQGdlcm1hbnp0ei5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}}}
+, {"uuid": "GPU_profile_selector@lorenzo9904.gmail.com", "name": "GPU profile selector", "pname": "gpu-profile-selector", "description": "You need also envycontrol(https://github.com/geminis3/envycontrol) for making this extension working. This is a simple gnome-shell extension which provides a simple way to switch between GPU profiles on Nvidia Optimus systems (i.e laptops with Intel + Nvidia or AMD + Nvidia configurations) in a few clicks.", "link": "https://extensions.gnome.org/extension/5009/gpu-profile-selector/", "shell_version_map": {"38": {"version": "11", "sha256": "1lpifpyl35njacan260lvcyarr64gf54kcskq74kfp0h5p56cxss", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIllvdSBuZWVkIGFsc28gZW52eWNvbnRyb2woaHR0cHM6Ly9naXRodWIuY29tL2dlbWluaXMzL2Vudnljb250cm9sKSBmb3IgbWFraW5nIHRoaXMgZXh0ZW5zaW9uIHdvcmtpbmcuIFRoaXMgaXMgYSBzaW1wbGUgZ25vbWUtc2hlbGwgZXh0ZW5zaW9uIHdoaWNoIHByb3ZpZGVzIGEgc2ltcGxlIHdheSB0byBzd2l0Y2ggYmV0d2VlbiBHUFUgcHJvZmlsZXMgb24gTnZpZGlhIE9wdGltdXMgc3lzdGVtcyAoaS5lIGxhcHRvcHMgd2l0aCBJbnRlbCArIE52aWRpYSBvciBBTUQgKyBOdmlkaWEgY29uZmlndXJhdGlvbnMpIGluIGEgZmV3IGNsaWNrcy4iLAogICJuYW1lIjogIkdQVSBwcm9maWxlIHNlbGVjdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTG9yZW56b01vcmVsbGkvR1BVX3Byb2ZpbGVfc2VsZWN0b3IiLAogICJ1dWlkIjogIkdQVV9wcm9maWxlX3NlbGVjdG9yQGxvcmVuem85OTA0LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMQp9"}, "40": {"version": "11", "sha256": "1lpifpyl35njacan260lvcyarr64gf54kcskq74kfp0h5p56cxss", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIllvdSBuZWVkIGFsc28gZW52eWNvbnRyb2woaHR0cHM6Ly9naXRodWIuY29tL2dlbWluaXMzL2Vudnljb250cm9sKSBmb3IgbWFraW5nIHRoaXMgZXh0ZW5zaW9uIHdvcmtpbmcuIFRoaXMgaXMgYSBzaW1wbGUgZ25vbWUtc2hlbGwgZXh0ZW5zaW9uIHdoaWNoIHByb3ZpZGVzIGEgc2ltcGxlIHdheSB0byBzd2l0Y2ggYmV0d2VlbiBHUFUgcHJvZmlsZXMgb24gTnZpZGlhIE9wdGltdXMgc3lzdGVtcyAoaS5lIGxhcHRvcHMgd2l0aCBJbnRlbCArIE52aWRpYSBvciBBTUQgKyBOdmlkaWEgY29uZmlndXJhdGlvbnMpIGluIGEgZmV3IGNsaWNrcy4iLAogICJuYW1lIjogIkdQVSBwcm9maWxlIHNlbGVjdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTG9yZW56b01vcmVsbGkvR1BVX3Byb2ZpbGVfc2VsZWN0b3IiLAogICJ1dWlkIjogIkdQVV9wcm9maWxlX3NlbGVjdG9yQGxvcmVuem85OTA0LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMQp9"}, "41": {"version": "11", "sha256": "1lpifpyl35njacan260lvcyarr64gf54kcskq74kfp0h5p56cxss", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIllvdSBuZWVkIGFsc28gZW52eWNvbnRyb2woaHR0cHM6Ly9naXRodWIuY29tL2dlbWluaXMzL2Vudnljb250cm9sKSBmb3IgbWFraW5nIHRoaXMgZXh0ZW5zaW9uIHdvcmtpbmcuIFRoaXMgaXMgYSBzaW1wbGUgZ25vbWUtc2hlbGwgZXh0ZW5zaW9uIHdoaWNoIHByb3ZpZGVzIGEgc2ltcGxlIHdheSB0byBzd2l0Y2ggYmV0d2VlbiBHUFUgcHJvZmlsZXMgb24gTnZpZGlhIE9wdGltdXMgc3lzdGVtcyAoaS5lIGxhcHRvcHMgd2l0aCBJbnRlbCArIE52aWRpYSBvciBBTUQgKyBOdmlkaWEgY29uZmlndXJhdGlvbnMpIGluIGEgZmV3IGNsaWNrcy4iLAogICJuYW1lIjogIkdQVSBwcm9maWxlIHNlbGVjdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTG9yZW56b01vcmVsbGkvR1BVX3Byb2ZpbGVfc2VsZWN0b3IiLAogICJ1dWlkIjogIkdQVV9wcm9maWxlX3NlbGVjdG9yQGxvcmVuem85OTA0LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMQp9"}, "42": {"version": "11", "sha256": "1lpifpyl35njacan260lvcyarr64gf54kcskq74kfp0h5p56cxss", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIllvdSBuZWVkIGFsc28gZW52eWNvbnRyb2woaHR0cHM6Ly9naXRodWIuY29tL2dlbWluaXMzL2Vudnljb250cm9sKSBmb3IgbWFraW5nIHRoaXMgZXh0ZW5zaW9uIHdvcmtpbmcuIFRoaXMgaXMgYSBzaW1wbGUgZ25vbWUtc2hlbGwgZXh0ZW5zaW9uIHdoaWNoIHByb3ZpZGVzIGEgc2ltcGxlIHdheSB0byBzd2l0Y2ggYmV0d2VlbiBHUFUgcHJvZmlsZXMgb24gTnZpZGlhIE9wdGltdXMgc3lzdGVtcyAoaS5lIGxhcHRvcHMgd2l0aCBJbnRlbCArIE52aWRpYSBvciBBTUQgKyBOdmlkaWEgY29uZmlndXJhdGlvbnMpIGluIGEgZmV3IGNsaWNrcy4iLAogICJuYW1lIjogIkdQVSBwcm9maWxlIHNlbGVjdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTG9yZW56b01vcmVsbGkvR1BVX3Byb2ZpbGVfc2VsZWN0b3IiLAogICJ1dWlkIjogIkdQVV9wcm9maWxlX3NlbGVjdG9yQGxvcmVuem85OTA0LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMQp9"}}}
 , {"uuid": "username-to-activities@deserts", "name": "Replace Activities text with username", "pname": "replce-activities-text-with-username", "description": "Replace Activities text with username.\nThis is a fork of Replace Activities Text by pratap@fastmail.fm", "link": "https://extensions.gnome.org/extension/5010/replce-activities-text-with-username/", "shell_version_map": {"38": {"version": "3", "sha256": "1zmg8xlwfcf82cd2l226b4kqcybcs8nrx916i3sqbpwdnwpc0d68", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgQWN0aXZpdGllcyB0ZXh0IHdpdGggdXNlcm5hbWUuXG5UaGlzIGlzIGEgZm9yayBvZiBSZXBsYWNlIEFjdGl2aXRpZXMgVGV4dCBieSBwcmF0YXBAZmFzdG1haWwuZm0iLAogICJuYW1lIjogIlJlcGxhY2UgQWN0aXZpdGllcyB0ZXh0IHdpdGggdXNlcm5hbWUiLAogICJvcmlnaW5hbC1hdXRob3IiOiAicHJhdGFwQGZhc3RtYWlsLmZtIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGVzZXJ0c3RzdW5nL3VzZXJuYW1lLXRvLWFjdGl2aXRpZXMiLAogICJ1dWlkIjogInVzZXJuYW1lLXRvLWFjdGl2aXRpZXNAZGVzZXJ0cyIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "3", "sha256": "1zmg8xlwfcf82cd2l226b4kqcybcs8nrx916i3sqbpwdnwpc0d68", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgQWN0aXZpdGllcyB0ZXh0IHdpdGggdXNlcm5hbWUuXG5UaGlzIGlzIGEgZm9yayBvZiBSZXBsYWNlIEFjdGl2aXRpZXMgVGV4dCBieSBwcmF0YXBAZmFzdG1haWwuZm0iLAogICJuYW1lIjogIlJlcGxhY2UgQWN0aXZpdGllcyB0ZXh0IHdpdGggdXNlcm5hbWUiLAogICJvcmlnaW5hbC1hdXRob3IiOiAicHJhdGFwQGZhc3RtYWlsLmZtIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGVzZXJ0c3RzdW5nL3VzZXJuYW1lLXRvLWFjdGl2aXRpZXMiLAogICJ1dWlkIjogInVzZXJuYW1lLXRvLWFjdGl2aXRpZXNAZGVzZXJ0cyIsCiAgInZlcnNpb24iOiAzCn0="}, "41": {"version": "3", "sha256": "1zmg8xlwfcf82cd2l226b4kqcybcs8nrx916i3sqbpwdnwpc0d68", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgQWN0aXZpdGllcyB0ZXh0IHdpdGggdXNlcm5hbWUuXG5UaGlzIGlzIGEgZm9yayBvZiBSZXBsYWNlIEFjdGl2aXRpZXMgVGV4dCBieSBwcmF0YXBAZmFzdG1haWwuZm0iLAogICJuYW1lIjogIlJlcGxhY2UgQWN0aXZpdGllcyB0ZXh0IHdpdGggdXNlcm5hbWUiLAogICJvcmlnaW5hbC1hdXRob3IiOiAicHJhdGFwQGZhc3RtYWlsLmZtIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGVzZXJ0c3RzdW5nL3VzZXJuYW1lLXRvLWFjdGl2aXRpZXMiLAogICJ1dWlkIjogInVzZXJuYW1lLXRvLWFjdGl2aXRpZXNAZGVzZXJ0cyIsCiAgInZlcnNpb24iOiAzCn0="}, "42": {"version": "3", "sha256": "1zmg8xlwfcf82cd2l226b4kqcybcs8nrx916i3sqbpwdnwpc0d68", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgQWN0aXZpdGllcyB0ZXh0IHdpdGggdXNlcm5hbWUuXG5UaGlzIGlzIGEgZm9yayBvZiBSZXBsYWNlIEFjdGl2aXRpZXMgVGV4dCBieSBwcmF0YXBAZmFzdG1haWwuZm0iLAogICJuYW1lIjogIlJlcGxhY2UgQWN0aXZpdGllcyB0ZXh0IHdpdGggdXNlcm5hbWUiLAogICJvcmlnaW5hbC1hdXRob3IiOiAicHJhdGFwQGZhc3RtYWlsLmZtIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGVzZXJ0c3RzdW5nL3VzZXJuYW1lLXRvLWFjdGl2aXRpZXMiLAogICJ1dWlkIjogInVzZXJuYW1lLXRvLWFjdGl2aXRpZXNAZGVzZXJ0cyIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"uuid": "overview-dash-hide@rokenz05.github.com", "name": "Overview Dash Hide", "pname": "overview-dash-hide", "description": "Hide dash to dock in activities overview", "link": "https://extensions.gnome.org/extension/5013/overview-dash-hide/", "shell_version_map": {"42": {"version": "1", "sha256": "1i0s0gjyml0q8lz08pwh1nva2yrf5vydpcrz2ncz46qvpjhik7dm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgZGFzaCB0byBkb2NrIGluIGFjdGl2aXRpZXMgb3ZlcnZpZXciLAogICJuYW1lIjogIk92ZXJ2aWV3IERhc2ggSGlkZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAib3ZlcnZpZXctZGFzaC1oaWRlQHJva2VuejA1LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}}}
-, {"uuid": "simple-message@freddez", "name": "Simple Message", "pname": "simple-message", "description": "Show a message written by the user on the top bar.", "link": "https://extensions.gnome.org/extension/5018/simple-message/", "shell_version_map": {"40": {"version": "9", "sha256": "19k4s70kfaixwmxgla6dnpg934f0arbi4qv1mj2wzkf08fa007wr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgYSBtZXNzYWdlIHdyaXR0ZW4gYnkgdGhlIHVzZXIgb24gdGhlIHRvcCBiYXIuIiwKICAibmFtZSI6ICJTaW1wbGUgTWVzc2FnZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaW1wbGUtbWVzc2FnZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ZyZWRkZXovZ25vbWUtc2hlbGwtc2ltcGxlLW1lc3NhZ2UiLAogICJ1dWlkIjogInNpbXBsZS1tZXNzYWdlQGZyZWRkZXoiLAogICJ2ZXJzaW9uIjogOQp9"}, "41": {"version": "9", "sha256": "19k4s70kfaixwmxgla6dnpg934f0arbi4qv1mj2wzkf08fa007wr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgYSBtZXNzYWdlIHdyaXR0ZW4gYnkgdGhlIHVzZXIgb24gdGhlIHRvcCBiYXIuIiwKICAibmFtZSI6ICJTaW1wbGUgTWVzc2FnZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaW1wbGUtbWVzc2FnZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ZyZWRkZXovZ25vbWUtc2hlbGwtc2ltcGxlLW1lc3NhZ2UiLAogICJ1dWlkIjogInNpbXBsZS1tZXNzYWdlQGZyZWRkZXoiLAogICJ2ZXJzaW9uIjogOQp9"}, "42": {"version": "9", "sha256": "19k4s70kfaixwmxgla6dnpg934f0arbi4qv1mj2wzkf08fa007wr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgYSBtZXNzYWdlIHdyaXR0ZW4gYnkgdGhlIHVzZXIgb24gdGhlIHRvcCBiYXIuIiwKICAibmFtZSI6ICJTaW1wbGUgTWVzc2FnZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaW1wbGUtbWVzc2FnZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ZyZWRkZXovZ25vbWUtc2hlbGwtc2ltcGxlLW1lc3NhZ2UiLAogICJ1dWlkIjogInNpbXBsZS1tZXNzYWdlQGZyZWRkZXoiLAogICJ2ZXJzaW9uIjogOQp9"}}}
+, {"uuid": "simple-message@freddez", "name": "Simple Message", "pname": "simple-message", "description": "Show a message written by the user on the top bar.", "link": "https://extensions.gnome.org/extension/5018/simple-message/", "shell_version_map": {"40": {"version": "10", "sha256": "1sjlqnfmprfp6jhyb2835nz53s1bcp00bfris6y60lm9g7sji387", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgYSBtZXNzYWdlIHdyaXR0ZW4gYnkgdGhlIHVzZXIgb24gdGhlIHRvcCBiYXIuIiwKICAibmFtZSI6ICJTaW1wbGUgTWVzc2FnZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaW1wbGUtbWVzc2FnZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mcmVkZGV6L2dub21lLXNoZWxsLXNpbXBsZS1tZXNzYWdlIiwKICAidXVpZCI6ICJzaW1wbGUtbWVzc2FnZUBmcmVkZGV6IiwKICAidmVyc2lvbiI6IDEwCn0="}, "41": {"version": "10", "sha256": "1sjlqnfmprfp6jhyb2835nz53s1bcp00bfris6y60lm9g7sji387", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgYSBtZXNzYWdlIHdyaXR0ZW4gYnkgdGhlIHVzZXIgb24gdGhlIHRvcCBiYXIuIiwKICAibmFtZSI6ICJTaW1wbGUgTWVzc2FnZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaW1wbGUtbWVzc2FnZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mcmVkZGV6L2dub21lLXNoZWxsLXNpbXBsZS1tZXNzYWdlIiwKICAidXVpZCI6ICJzaW1wbGUtbWVzc2FnZUBmcmVkZGV6IiwKICAidmVyc2lvbiI6IDEwCn0="}, "42": {"version": "10", "sha256": "1sjlqnfmprfp6jhyb2835nz53s1bcp00bfris6y60lm9g7sji387", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgYSBtZXNzYWdlIHdyaXR0ZW4gYnkgdGhlIHVzZXIgb24gdGhlIHRvcCBiYXIuIiwKICAibmFtZSI6ICJTaW1wbGUgTWVzc2FnZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaW1wbGUtbWVzc2FnZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mcmVkZGV6L2dub21lLXNoZWxsLXNpbXBsZS1tZXNzYWdlIiwKICAidXVpZCI6ICJzaW1wbGUtbWVzc2FnZUBmcmVkZGV6IiwKICAidmVyc2lvbiI6IDEwCn0="}, "43": {"version": "10", "sha256": "1sjlqnfmprfp6jhyb2835nz53s1bcp00bfris6y60lm9g7sji387", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgYSBtZXNzYWdlIHdyaXR0ZW4gYnkgdGhlIHVzZXIgb24gdGhlIHRvcCBiYXIuIiwKICAibmFtZSI6ICJTaW1wbGUgTWVzc2FnZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaW1wbGUtbWVzc2FnZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mcmVkZGV6L2dub21lLXNoZWxsLXNpbXBsZS1tZXNzYWdlIiwKICAidXVpZCI6ICJzaW1wbGUtbWVzc2FnZUBmcmVkZGV6IiwKICAidmVyc2lvbiI6IDEwCn0="}}}
 , {"uuid": "activate-window-by-title@lucaswerkmeister.de", "name": "Activate Window By Title", "pname": "activate-window-by-title", "description": "Expose a D-Bus interface to activate a window by its title or WM_CLASS", "link": "https://extensions.gnome.org/extension/5021/activate-window-by-title/", "shell_version_map": {"42": {"version": "2", "sha256": "0w1msr6lk87vv3rkldn2mkz15l4lk5wnilf4vhx2cak95b2ycvbh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4cG9zZSBhIEQtQnVzIGludGVyZmFjZSB0byBhY3RpdmF0ZSBhIHdpbmRvdyBieSBpdHMgdGl0bGUgb3IgV01fQ0xBU1MiLAogICJuYW1lIjogIkFjdGl2YXRlIFdpbmRvdyBCeSBUaXRsZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sdWNhc3dlcmttZWlzdGVyL2FjdGl2YXRlLXdpbmRvdy1ieS10aXRsZSIsCiAgInV1aWQiOiAiYWN0aXZhdGUtd2luZG93LWJ5LXRpdGxlQGx1Y2Fzd2Vya21laXN0ZXIuZGUiLAogICJ2ZXJzaW9uIjogMgp9"}}}
 , {"uuid": "nano-system-monitor@eeeeeio", "name": "Nano System Monitor", "pname": "nano-system-monitor", "description": "Show current status on GNOME Shell panel\n\nbar shows CPU|memory|swap usages,then the download|upload speed and CPU temperature and fan speed\n\nDifferent colors represent different percentage states and CPU temperature\n\nplease use monospaced font for best experience", "link": "https://extensions.gnome.org/extension/5037/nano-system-monitor/", "shell_version_map": {"38": {"version": "6", "sha256": "1kd3c9bml1qh6djjmd4qr393z4zp7il0p3sz9bb7qv2smsg582lf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBzdGF0dXMgb24gR05PTUUgU2hlbGwgcGFuZWxcblxuYmFyIHNob3dzIENQVXxtZW1vcnl8c3dhcCB1c2FnZXMsdGhlbiB0aGUgZG93bmxvYWR8dXBsb2FkIHNwZWVkIGFuZCBDUFUgdGVtcGVyYXR1cmUgYW5kIGZhbiBzcGVlZFxuXG5EaWZmZXJlbnQgY29sb3JzIHJlcHJlc2VudCBkaWZmZXJlbnQgcGVyY2VudGFnZSBzdGF0ZXMgYW5kIENQVSB0ZW1wZXJhdHVyZVxuXG5wbGVhc2UgdXNlIG1vbm9zcGFjZWQgZm9udCBmb3IgYmVzdCBleHBlcmllbmNlIiwKICAibmFtZSI6ICJOYW5vIFN5c3RlbSBNb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWVlZWVpby9nbm9tZS1zaGVsbC1leHRlbnNpb24tbmFuby1zeXN0ZW0tbW9uaXRvciIsCiAgInV1aWQiOiAibmFuby1zeXN0ZW0tbW9uaXRvckBlZWVlZWlvIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "40": {"version": "6", "sha256": "1kd3c9bml1qh6djjmd4qr393z4zp7il0p3sz9bb7qv2smsg582lf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBzdGF0dXMgb24gR05PTUUgU2hlbGwgcGFuZWxcblxuYmFyIHNob3dzIENQVXxtZW1vcnl8c3dhcCB1c2FnZXMsdGhlbiB0aGUgZG93bmxvYWR8dXBsb2FkIHNwZWVkIGFuZCBDUFUgdGVtcGVyYXR1cmUgYW5kIGZhbiBzcGVlZFxuXG5EaWZmZXJlbnQgY29sb3JzIHJlcHJlc2VudCBkaWZmZXJlbnQgcGVyY2VudGFnZSBzdGF0ZXMgYW5kIENQVSB0ZW1wZXJhdHVyZVxuXG5wbGVhc2UgdXNlIG1vbm9zcGFjZWQgZm9udCBmb3IgYmVzdCBleHBlcmllbmNlIiwKICAibmFtZSI6ICJOYW5vIFN5c3RlbSBNb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWVlZWVpby9nbm9tZS1zaGVsbC1leHRlbnNpb24tbmFuby1zeXN0ZW0tbW9uaXRvciIsCiAgInV1aWQiOiAibmFuby1zeXN0ZW0tbW9uaXRvckBlZWVlZWlvIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "41": {"version": "6", "sha256": "1kd3c9bml1qh6djjmd4qr393z4zp7il0p3sz9bb7qv2smsg582lf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBzdGF0dXMgb24gR05PTUUgU2hlbGwgcGFuZWxcblxuYmFyIHNob3dzIENQVXxtZW1vcnl8c3dhcCB1c2FnZXMsdGhlbiB0aGUgZG93bmxvYWR8dXBsb2FkIHNwZWVkIGFuZCBDUFUgdGVtcGVyYXR1cmUgYW5kIGZhbiBzcGVlZFxuXG5EaWZmZXJlbnQgY29sb3JzIHJlcHJlc2VudCBkaWZmZXJlbnQgcGVyY2VudGFnZSBzdGF0ZXMgYW5kIENQVSB0ZW1wZXJhdHVyZVxuXG5wbGVhc2UgdXNlIG1vbm9zcGFjZWQgZm9udCBmb3IgYmVzdCBleHBlcmllbmNlIiwKICAibmFtZSI6ICJOYW5vIFN5c3RlbSBNb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWVlZWVpby9nbm9tZS1zaGVsbC1leHRlbnNpb24tbmFuby1zeXN0ZW0tbW9uaXRvciIsCiAgInV1aWQiOiAibmFuby1zeXN0ZW0tbW9uaXRvckBlZWVlZWlvIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "42": {"version": "6", "sha256": "1kd3c9bml1qh6djjmd4qr393z4zp7il0p3sz9bb7qv2smsg582lf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBzdGF0dXMgb24gR05PTUUgU2hlbGwgcGFuZWxcblxuYmFyIHNob3dzIENQVXxtZW1vcnl8c3dhcCB1c2FnZXMsdGhlbiB0aGUgZG93bmxvYWR8dXBsb2FkIHNwZWVkIGFuZCBDUFUgdGVtcGVyYXR1cmUgYW5kIGZhbiBzcGVlZFxuXG5EaWZmZXJlbnQgY29sb3JzIHJlcHJlc2VudCBkaWZmZXJlbnQgcGVyY2VudGFnZSBzdGF0ZXMgYW5kIENQVSB0ZW1wZXJhdHVyZVxuXG5wbGVhc2UgdXNlIG1vbm9zcGFjZWQgZm9udCBmb3IgYmVzdCBleHBlcmllbmNlIiwKICAibmFtZSI6ICJOYW5vIFN5c3RlbSBNb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWVlZWVpby9nbm9tZS1zaGVsbC1leHRlbnNpb24tbmFuby1zeXN0ZW0tbW9uaXRvciIsCiAgInV1aWQiOiAibmFuby1zeXN0ZW0tbW9uaXRvckBlZWVlZWlvIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
 , {"uuid": "start-overlay-in-application-view@Hex_cz", "name": "Start Overlay in Application View", "pname": "start-overlay-in-application-view", "description": "When activating overview (Super button), the application view is shown instead of the view with the windows.", "link": "https://extensions.gnome.org/extension/5040/start-overlay-in-application-view/", "shell_version_map": {"40": {"version": "3", "sha256": "1mk058ayvyiank9iisvdwkhlwh1sgm17viax4jd0kwfjwf7vvxvb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldoZW4gYWN0aXZhdGluZyBvdmVydmlldyAoU3VwZXIgYnV0dG9uKSwgdGhlIGFwcGxpY2F0aW9uIHZpZXcgaXMgc2hvd24gaW5zdGVhZCBvZiB0aGUgdmlldyB3aXRoIHRoZSB3aW5kb3dzLiIsCiAgIm5hbWUiOiAiU3RhcnQgT3ZlcmxheSBpbiBBcHBsaWNhdGlvbiBWaWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vSGV4Y3ovU3RhcnQtT3ZlcmxheS1pbi1BcHBsaWNhdGlvbi1WaWV3LWZvci1Hbm9tZS00MC0iLAogICJ1dWlkIjogInN0YXJ0LW92ZXJsYXktaW4tYXBwbGljYXRpb24tdmlld0BIZXhfY3oiLAogICJ2ZXJzaW9uIjogMwp9"}, "41": {"version": "3", "sha256": "1mk058ayvyiank9iisvdwkhlwh1sgm17viax4jd0kwfjwf7vvxvb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldoZW4gYWN0aXZhdGluZyBvdmVydmlldyAoU3VwZXIgYnV0dG9uKSwgdGhlIGFwcGxpY2F0aW9uIHZpZXcgaXMgc2hvd24gaW5zdGVhZCBvZiB0aGUgdmlldyB3aXRoIHRoZSB3aW5kb3dzLiIsCiAgIm5hbWUiOiAiU3RhcnQgT3ZlcmxheSBpbiBBcHBsaWNhdGlvbiBWaWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vSGV4Y3ovU3RhcnQtT3ZlcmxheS1pbi1BcHBsaWNhdGlvbi1WaWV3LWZvci1Hbm9tZS00MC0iLAogICJ1dWlkIjogInN0YXJ0LW92ZXJsYXktaW4tYXBwbGljYXRpb24tdmlld0BIZXhfY3oiLAogICJ2ZXJzaW9uIjogMwp9"}, "42": {"version": "3", "sha256": "1mk058ayvyiank9iisvdwkhlwh1sgm17viax4jd0kwfjwf7vvxvb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldoZW4gYWN0aXZhdGluZyBvdmVydmlldyAoU3VwZXIgYnV0dG9uKSwgdGhlIGFwcGxpY2F0aW9uIHZpZXcgaXMgc2hvd24gaW5zdGVhZCBvZiB0aGUgdmlldyB3aXRoIHRoZSB3aW5kb3dzLiIsCiAgIm5hbWUiOiAiU3RhcnQgT3ZlcmxheSBpbiBBcHBsaWNhdGlvbiBWaWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vSGV4Y3ovU3RhcnQtT3ZlcmxheS1pbi1BcHBsaWNhdGlvbi1WaWV3LWZvci1Hbm9tZS00MC0iLAogICJ1dWlkIjogInN0YXJ0LW92ZXJsYXktaW4tYXBwbGljYXRpb24tdmlld0BIZXhfY3oiLAogICJ2ZXJzaW9uIjogMwp9"}}}
 , {"uuid": "eortologio@danchris.github.io", "name": "Eortologio", "pname": "eortologio-extension", "description": "Simple gnome extension to display the greek namedays", "link": "https://extensions.gnome.org/extension/5046/eortologio-extension/", "shell_version_map": {"41": {"version": "3", "sha256": "0gfg8i0rd83xqf9gqdxx02pl4kj34sn17nkws2d24l1pm55zz7g7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBnbm9tZSBleHRlbnNpb24gdG8gZGlzcGxheSB0aGUgZ3JlZWsgbmFtZWRheXMiLAogICJuYW1lIjogIkVvcnRvbG9naW8iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJlb3J0b2xvZ2lvQGRhbmNocmlzLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAzCn0="}, "42": {"version": "3", "sha256": "0gfg8i0rd83xqf9gqdxx02pl4kj34sn17nkws2d24l1pm55zz7g7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBnbm9tZSBleHRlbnNpb24gdG8gZGlzcGxheSB0aGUgZ3JlZWsgbmFtZWRheXMiLAogICJuYW1lIjogIkVvcnRvbG9naW8iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJlb3J0b2xvZ2lvQGRhbmNocmlzLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"uuid": "wallpaper-changer@ghostkeeper.github.com", "name": "Wallpaper Changer Continued", "pname": "wallpaper-changer-continued", "description": "Fork of wallpaper-changer@jomik.org, updated for Gnome 4", "link": "https://extensions.gnome.org/extension/5049/wallpaper-changer-continued/", "shell_version_map": {"40": {"version": "3", "sha256": "0kvjljwppdz95napbczb0zskmr5x2xsib3y5yk3qm3ig26k00j56", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvcmsgb2Ygd2FsbHBhcGVyLWNoYW5nZXJAam9taWsub3JnLCB1cGRhdGVkIGZvciBHbm9tZSA0IiwKICAibmFtZSI6ICJXYWxscGFwZXIgQ2hhbmdlciBDb250aW51ZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9HaG9zdGtlZXBlci9nbm9tZS13YWxscGFwZXItY2hhbmdlciIsCiAgInV1aWQiOiAid2FsbHBhcGVyLWNoYW5nZXJAZ2hvc3RrZWVwZXIuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}, "41": {"version": "3", "sha256": "0kvjljwppdz95napbczb0zskmr5x2xsib3y5yk3qm3ig26k00j56", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvcmsgb2Ygd2FsbHBhcGVyLWNoYW5nZXJAam9taWsub3JnLCB1cGRhdGVkIGZvciBHbm9tZSA0IiwKICAibmFtZSI6ICJXYWxscGFwZXIgQ2hhbmdlciBDb250aW51ZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9HaG9zdGtlZXBlci9nbm9tZS13YWxscGFwZXItY2hhbmdlciIsCiAgInV1aWQiOiAid2FsbHBhcGVyLWNoYW5nZXJAZ2hvc3RrZWVwZXIuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}, "42": {"version": "3", "sha256": "0kvjljwppdz95napbczb0zskmr5x2xsib3y5yk3qm3ig26k00j56", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvcmsgb2Ygd2FsbHBhcGVyLWNoYW5nZXJAam9taWsub3JnLCB1cGRhdGVkIGZvciBHbm9tZSA0IiwKICAibmFtZSI6ICJXYWxscGFwZXIgQ2hhbmdlciBDb250aW51ZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9HaG9zdGtlZXBlci9nbm9tZS13YWxscGFwZXItY2hhbmdlciIsCiAgInV1aWQiOiAid2FsbHBhcGVyLWNoYW5nZXJAZ2hvc3RrZWVwZXIuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}}}
-, {"uuid": "xremap@k0kubun.com", "name": "Xremap", "pname": "xremap", "description": "Allow xremap to fetch the focused app name using D-Bus", "link": "https://extensions.gnome.org/extension/5060/xremap/", "shell_version_map": {"38": {"version": "2", "sha256": "1r0ywdxr674bd36va1c96fs7ryd8v6qni6sv3ksr22xygpvripcc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHhyZW1hcCB0byBmZXRjaCB0aGUgZm9jdXNlZCBhcHAgbmFtZSB1c2luZyBELUJ1cyIsCiAgIm5hbWUiOiAiWHJlbWFwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20veHJlbWFwL3hyZW1hcC1nbm9tZSIsCiAgInV1aWQiOiAieHJlbWFwQGswa3VidW4uY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "1r0ywdxr674bd36va1c96fs7ryd8v6qni6sv3ksr22xygpvripcc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHhyZW1hcCB0byBmZXRjaCB0aGUgZm9jdXNlZCBhcHAgbmFtZSB1c2luZyBELUJ1cyIsCiAgIm5hbWUiOiAiWHJlbWFwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20veHJlbWFwL3hyZW1hcC1nbm9tZSIsCiAgInV1aWQiOiAieHJlbWFwQGswa3VidW4uY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "41": {"version": "2", "sha256": "1r0ywdxr674bd36va1c96fs7ryd8v6qni6sv3ksr22xygpvripcc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHhyZW1hcCB0byBmZXRjaCB0aGUgZm9jdXNlZCBhcHAgbmFtZSB1c2luZyBELUJ1cyIsCiAgIm5hbWUiOiAiWHJlbWFwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20veHJlbWFwL3hyZW1hcC1nbm9tZSIsCiAgInV1aWQiOiAieHJlbWFwQGswa3VidW4uY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "42": {"version": "2", "sha256": "1r0ywdxr674bd36va1c96fs7ryd8v6qni6sv3ksr22xygpvripcc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHhyZW1hcCB0byBmZXRjaCB0aGUgZm9jdXNlZCBhcHAgbmFtZSB1c2luZyBELUJ1cyIsCiAgIm5hbWUiOiAiWHJlbWFwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20veHJlbWFwL3hyZW1hcC1nbm9tZSIsCiAgInV1aWQiOiAieHJlbWFwQGswa3VidW4uY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
+, {"uuid": "xremap@k0kubun.com", "name": "Xremap", "pname": "xremap", "description": "Allow xremap to fetch the focused app name using D-Bus", "link": "https://extensions.gnome.org/extension/5060/xremap/", "shell_version_map": {"38": {"version": "4", "sha256": "01kx3ljy383p0rr0i4wdji30w6px2vjbvz4476pn6vrh6g2yzj7r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHhyZW1hcCB0byBmZXRjaCB0aGUgZm9jdXNlZCBhcHAgbmFtZSB1c2luZyBELUJ1cyIsCiAgIm5hbWUiOiAiWHJlbWFwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3hyZW1hcC94cmVtYXAtZ25vbWUiLAogICJ1dWlkIjogInhyZW1hcEBrMGt1YnVuLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "4", "sha256": "01kx3ljy383p0rr0i4wdji30w6px2vjbvz4476pn6vrh6g2yzj7r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHhyZW1hcCB0byBmZXRjaCB0aGUgZm9jdXNlZCBhcHAgbmFtZSB1c2luZyBELUJ1cyIsCiAgIm5hbWUiOiAiWHJlbWFwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3hyZW1hcC94cmVtYXAtZ25vbWUiLAogICJ1dWlkIjogInhyZW1hcEBrMGt1YnVuLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "01kx3ljy383p0rr0i4wdji30w6px2vjbvz4476pn6vrh6g2yzj7r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHhyZW1hcCB0byBmZXRjaCB0aGUgZm9jdXNlZCBhcHAgbmFtZSB1c2luZyBELUJ1cyIsCiAgIm5hbWUiOiAiWHJlbWFwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3hyZW1hcC94cmVtYXAtZ25vbWUiLAogICJ1dWlkIjogInhyZW1hcEBrMGt1YnVuLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}, "42": {"version": "4", "sha256": "01kx3ljy383p0rr0i4wdji30w6px2vjbvz4476pn6vrh6g2yzj7r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHhyZW1hcCB0byBmZXRjaCB0aGUgZm9jdXNlZCBhcHAgbmFtZSB1c2luZyBELUJ1cyIsCiAgIm5hbWUiOiAiWHJlbWFwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3hyZW1hcC94cmVtYXAtZ25vbWUiLAogICJ1dWlkIjogInhyZW1hcEBrMGt1YnVuLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}, "43": {"version": "4", "sha256": "01kx3ljy383p0rr0i4wdji30w6px2vjbvz4476pn6vrh6g2yzj7r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHhyZW1hcCB0byBmZXRjaCB0aGUgZm9jdXNlZCBhcHAgbmFtZSB1c2luZyBELUJ1cyIsCiAgIm5hbWUiOiAiWHJlbWFwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3hyZW1hcC94cmVtYXAtZ25vbWUiLAogICJ1dWlkIjogInhyZW1hcEBrMGt1YnVuLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "SomaFm-Radio@cajhne.gmail.com", "name": "SomaFM internet radio", "pname": "somafm-internet-radio", "description": "Listen to SomaFm free internet radio in your GNOME desktop\n\n* Featues:\n- 32+ Channels\n- Volume slider\n- Favorites menu\n- Good sound quality\n- Supports most gnome-shell versions\n- Channel logos\n\n* Requirements:\n- Gstreamer and plugins:\nYou need to install 'gstreamer' and multimedia codecs/plugins for your distro.\n\n* Donation\nYou can donate if you like my work :)\n\nBTC: 1KXJPJSmXUocieC3neRZEDakpzfcyumLqS\nBCH : qzzmzegfy76r5glpj26jzq2xly2cczsmfyrn66ax8q\nETHER: 0xb6178080c8f0792e6370959909199647e26b8457", "link": "https://extensions.gnome.org/extension/5064/somafm-internet-radio/", "shell_version_map": {"38": {"version": "1", "sha256": "0k92wz17isih4sph7ssidcjddi7r4xvcha1pi9vb7dnwrhc6x1hg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpc3RlbiB0byBTb21hRm0gZnJlZSBpbnRlcm5ldCByYWRpbyBpbiB5b3VyIEdOT01FIGRlc2t0b3BcblxuKiBGZWF0dWVzOlxuLSAzMisgQ2hhbm5lbHNcbi0gVm9sdW1lIHNsaWRlclxuLSBGYXZvcml0ZXMgbWVudVxuLSBHb29kIHNvdW5kIHF1YWxpdHlcbi0gU3VwcG9ydHMgbW9zdCBnbm9tZS1zaGVsbCB2ZXJzaW9uc1xuLSBDaGFubmVsIGxvZ29zXG5cbiogUmVxdWlyZW1lbnRzOlxuLSBHc3RyZWFtZXIgYW5kIHBsdWdpbnM6XG5Zb3UgbmVlZCB0byBpbnN0YWxsICdnc3RyZWFtZXInIGFuZCBtdWx0aW1lZGlhIGNvZGVjcy9wbHVnaW5zIGZvciB5b3VyIGRpc3Ryby5cblxuKiBEb25hdGlvblxuWW91IGNhbiBkb25hdGUgaWYgeW91IGxpa2UgbXkgd29yayA6KVxuXG5CVEM6IDFLWEpQSlNtWFVvY2llQzNuZVJaRURha3B6ZmN5dW1McVNcbkJDSCA6IHF6em16ZWdmeTc2cjVnbHBqMjZqenEyeGx5MmNjenNtZnlybjY2YXg4cVxuRVRIRVI6IDB4YjYxNzgwODBjOGYwNzkyZTYzNzA5NTk5MDkxOTk2NDdlMjZiODQ1NyIsCiAgIm5hbWUiOiAiU29tYUZNIGludGVybmV0IHJhZGlvIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MS4wIiwKICAgICI0Mi4wIgogIF0sCiAgInVybCI6ICJodHRwOi8vZ2l0aHViLmNvbS9UaGVXZWlyZERldi9zb21hZm0tcmFkaW8tZ25vbWUtZXh0IiwKICAidXVpZCI6ICJTb21hRm0tUmFkaW9AY2FqaG5lLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxCn0="}, "40": {"version": "1", "sha256": "0k92wz17isih4sph7ssidcjddi7r4xvcha1pi9vb7dnwrhc6x1hg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpc3RlbiB0byBTb21hRm0gZnJlZSBpbnRlcm5ldCByYWRpbyBpbiB5b3VyIEdOT01FIGRlc2t0b3BcblxuKiBGZWF0dWVzOlxuLSAzMisgQ2hhbm5lbHNcbi0gVm9sdW1lIHNsaWRlclxuLSBGYXZvcml0ZXMgbWVudVxuLSBHb29kIHNvdW5kIHF1YWxpdHlcbi0gU3VwcG9ydHMgbW9zdCBnbm9tZS1zaGVsbCB2ZXJzaW9uc1xuLSBDaGFubmVsIGxvZ29zXG5cbiogUmVxdWlyZW1lbnRzOlxuLSBHc3RyZWFtZXIgYW5kIHBsdWdpbnM6XG5Zb3UgbmVlZCB0byBpbnN0YWxsICdnc3RyZWFtZXInIGFuZCBtdWx0aW1lZGlhIGNvZGVjcy9wbHVnaW5zIGZvciB5b3VyIGRpc3Ryby5cblxuKiBEb25hdGlvblxuWW91IGNhbiBkb25hdGUgaWYgeW91IGxpa2UgbXkgd29yayA6KVxuXG5CVEM6IDFLWEpQSlNtWFVvY2llQzNuZVJaRURha3B6ZmN5dW1McVNcbkJDSCA6IHF6em16ZWdmeTc2cjVnbHBqMjZqenEyeGx5MmNjenNtZnlybjY2YXg4cVxuRVRIRVI6IDB4YjYxNzgwODBjOGYwNzkyZTYzNzA5NTk5MDkxOTk2NDdlMjZiODQ1NyIsCiAgIm5hbWUiOiAiU29tYUZNIGludGVybmV0IHJhZGlvIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MS4wIiwKICAgICI0Mi4wIgogIF0sCiAgInVybCI6ICJodHRwOi8vZ2l0aHViLmNvbS9UaGVXZWlyZERldi9zb21hZm0tcmFkaW8tZ25vbWUtZXh0IiwKICAidXVpZCI6ICJTb21hRm0tUmFkaW9AY2FqaG5lLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxCn0="}, "41": {"version": "1", "sha256": "0k92wz17isih4sph7ssidcjddi7r4xvcha1pi9vb7dnwrhc6x1hg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpc3RlbiB0byBTb21hRm0gZnJlZSBpbnRlcm5ldCByYWRpbyBpbiB5b3VyIEdOT01FIGRlc2t0b3BcblxuKiBGZWF0dWVzOlxuLSAzMisgQ2hhbm5lbHNcbi0gVm9sdW1lIHNsaWRlclxuLSBGYXZvcml0ZXMgbWVudVxuLSBHb29kIHNvdW5kIHF1YWxpdHlcbi0gU3VwcG9ydHMgbW9zdCBnbm9tZS1zaGVsbCB2ZXJzaW9uc1xuLSBDaGFubmVsIGxvZ29zXG5cbiogUmVxdWlyZW1lbnRzOlxuLSBHc3RyZWFtZXIgYW5kIHBsdWdpbnM6XG5Zb3UgbmVlZCB0byBpbnN0YWxsICdnc3RyZWFtZXInIGFuZCBtdWx0aW1lZGlhIGNvZGVjcy9wbHVnaW5zIGZvciB5b3VyIGRpc3Ryby5cblxuKiBEb25hdGlvblxuWW91IGNhbiBkb25hdGUgaWYgeW91IGxpa2UgbXkgd29yayA6KVxuXG5CVEM6IDFLWEpQSlNtWFVvY2llQzNuZVJaRURha3B6ZmN5dW1McVNcbkJDSCA6IHF6em16ZWdmeTc2cjVnbHBqMjZqenEyeGx5MmNjenNtZnlybjY2YXg4cVxuRVRIRVI6IDB4YjYxNzgwODBjOGYwNzkyZTYzNzA5NTk5MDkxOTk2NDdlMjZiODQ1NyIsCiAgIm5hbWUiOiAiU29tYUZNIGludGVybmV0IHJhZGlvIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MS4wIiwKICAgICI0Mi4wIgogIF0sCiAgInVybCI6ICJodHRwOi8vZ2l0aHViLmNvbS9UaGVXZWlyZERldi9zb21hZm0tcmFkaW8tZ25vbWUtZXh0IiwKICAidXVpZCI6ICJTb21hRm0tUmFkaW9AY2FqaG5lLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxCn0="}, "42": {"version": "1", "sha256": "0k92wz17isih4sph7ssidcjddi7r4xvcha1pi9vb7dnwrhc6x1hg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpc3RlbiB0byBTb21hRm0gZnJlZSBpbnRlcm5ldCByYWRpbyBpbiB5b3VyIEdOT01FIGRlc2t0b3BcblxuKiBGZWF0dWVzOlxuLSAzMisgQ2hhbm5lbHNcbi0gVm9sdW1lIHNsaWRlclxuLSBGYXZvcml0ZXMgbWVudVxuLSBHb29kIHNvdW5kIHF1YWxpdHlcbi0gU3VwcG9ydHMgbW9zdCBnbm9tZS1zaGVsbCB2ZXJzaW9uc1xuLSBDaGFubmVsIGxvZ29zXG5cbiogUmVxdWlyZW1lbnRzOlxuLSBHc3RyZWFtZXIgYW5kIHBsdWdpbnM6XG5Zb3UgbmVlZCB0byBpbnN0YWxsICdnc3RyZWFtZXInIGFuZCBtdWx0aW1lZGlhIGNvZGVjcy9wbHVnaW5zIGZvciB5b3VyIGRpc3Ryby5cblxuKiBEb25hdGlvblxuWW91IGNhbiBkb25hdGUgaWYgeW91IGxpa2UgbXkgd29yayA6KVxuXG5CVEM6IDFLWEpQSlNtWFVvY2llQzNuZVJaRURha3B6ZmN5dW1McVNcbkJDSCA6IHF6em16ZWdmeTc2cjVnbHBqMjZqenEyeGx5MmNjenNtZnlybjY2YXg4cVxuRVRIRVI6IDB4YjYxNzgwODBjOGYwNzkyZTYzNzA5NTk5MDkxOTk2NDdlMjZiODQ1NyIsCiAgIm5hbWUiOiAiU29tYUZNIGludGVybmV0IHJhZGlvIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MS4wIiwKICAgICI0Mi4wIgogIF0sCiAgInVybCI6ICJodHRwOi8vZ2l0aHViLmNvbS9UaGVXZWlyZERldi9zb21hZm0tcmFkaW8tZ25vbWUtZXh0IiwKICAidXVpZCI6ICJTb21hRm0tUmFkaW9AY2FqaG5lLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxCn0="}}}
 , {"uuid": "dollar-clp@albolea.github.com", "name": "Dollar-CLP", "pname": "dollar-clp", "description": "(USD US Dollar) converted to (CLP Peso Chileno). Updates are received every 30 seconds and are based on information provided by AwesomeAPI API, which can be consulted directly by accessing the address https://docs.awesomeapi.com.br. (based on michael.mattos's Dollar https://extensions.gnome.org/extension/4573/dollar/)", "link": "https://extensions.gnome.org/extension/5066/dollar-clp/", "shell_version_map": {"38": {"version": "2", "sha256": "0lc7mx77qvxx2q04bljza8pv1p98sv5qyi7rpbmr572yalxmsyv7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIihVU0QgVVMgRG9sbGFyKSBjb252ZXJ0ZWQgdG8gKENMUCBQZXNvIENoaWxlbm8pLiBVcGRhdGVzIGFyZSByZWNlaXZlZCBldmVyeSAzMCBzZWNvbmRzIGFuZCBhcmUgYmFzZWQgb24gaW5mb3JtYXRpb24gcHJvdmlkZWQgYnkgQXdlc29tZUFQSSBBUEksIHdoaWNoIGNhbiBiZSBjb25zdWx0ZWQgZGlyZWN0bHkgYnkgYWNjZXNzaW5nIHRoZSBhZGRyZXNzIGh0dHBzOi8vZG9jcy5hd2Vzb21lYXBpLmNvbS5ici4gKGJhc2VkIG9uIG1pY2hhZWwubWF0dG9zJ3MgRG9sbGFyIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzQ1NzMvZG9sbGFyLykiLAogICJuYW1lIjogIkRvbGxhci1DTFAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGJvbGVhL2RvbGxhci1jbHAiLAogICJ1dWlkIjogImRvbGxhci1jbHBAYWxib2xlYS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "0lc7mx77qvxx2q04bljza8pv1p98sv5qyi7rpbmr572yalxmsyv7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIihVU0QgVVMgRG9sbGFyKSBjb252ZXJ0ZWQgdG8gKENMUCBQZXNvIENoaWxlbm8pLiBVcGRhdGVzIGFyZSByZWNlaXZlZCBldmVyeSAzMCBzZWNvbmRzIGFuZCBhcmUgYmFzZWQgb24gaW5mb3JtYXRpb24gcHJvdmlkZWQgYnkgQXdlc29tZUFQSSBBUEksIHdoaWNoIGNhbiBiZSBjb25zdWx0ZWQgZGlyZWN0bHkgYnkgYWNjZXNzaW5nIHRoZSBhZGRyZXNzIGh0dHBzOi8vZG9jcy5hd2Vzb21lYXBpLmNvbS5ici4gKGJhc2VkIG9uIG1pY2hhZWwubWF0dG9zJ3MgRG9sbGFyIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzQ1NzMvZG9sbGFyLykiLAogICJuYW1lIjogIkRvbGxhci1DTFAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGJvbGVhL2RvbGxhci1jbHAiLAogICJ1dWlkIjogImRvbGxhci1jbHBAYWxib2xlYS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "41": {"version": "2", "sha256": "0lc7mx77qvxx2q04bljza8pv1p98sv5qyi7rpbmr572yalxmsyv7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIihVU0QgVVMgRG9sbGFyKSBjb252ZXJ0ZWQgdG8gKENMUCBQZXNvIENoaWxlbm8pLiBVcGRhdGVzIGFyZSByZWNlaXZlZCBldmVyeSAzMCBzZWNvbmRzIGFuZCBhcmUgYmFzZWQgb24gaW5mb3JtYXRpb24gcHJvdmlkZWQgYnkgQXdlc29tZUFQSSBBUEksIHdoaWNoIGNhbiBiZSBjb25zdWx0ZWQgZGlyZWN0bHkgYnkgYWNjZXNzaW5nIHRoZSBhZGRyZXNzIGh0dHBzOi8vZG9jcy5hd2Vzb21lYXBpLmNvbS5ici4gKGJhc2VkIG9uIG1pY2hhZWwubWF0dG9zJ3MgRG9sbGFyIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzQ1NzMvZG9sbGFyLykiLAogICJuYW1lIjogIkRvbGxhci1DTFAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGJvbGVhL2RvbGxhci1jbHAiLAogICJ1dWlkIjogImRvbGxhci1jbHBAYWxib2xlYS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "42": {"version": "2", "sha256": "0lc7mx77qvxx2q04bljza8pv1p98sv5qyi7rpbmr572yalxmsyv7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIihVU0QgVVMgRG9sbGFyKSBjb252ZXJ0ZWQgdG8gKENMUCBQZXNvIENoaWxlbm8pLiBVcGRhdGVzIGFyZSByZWNlaXZlZCBldmVyeSAzMCBzZWNvbmRzIGFuZCBhcmUgYmFzZWQgb24gaW5mb3JtYXRpb24gcHJvdmlkZWQgYnkgQXdlc29tZUFQSSBBUEksIHdoaWNoIGNhbiBiZSBjb25zdWx0ZWQgZGlyZWN0bHkgYnkgYWNjZXNzaW5nIHRoZSBhZGRyZXNzIGh0dHBzOi8vZG9jcy5hd2Vzb21lYXBpLmNvbS5ici4gKGJhc2VkIG9uIG1pY2hhZWwubWF0dG9zJ3MgRG9sbGFyIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzQ1NzMvZG9sbGFyLykiLAogICJuYW1lIjogIkRvbGxhci1DTFAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGJvbGVhL2RvbGxhci1jbHAiLAogICJ1dWlkIjogImRvbGxhci1jbHBAYWxib2xlYS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "real-clp@albolea.github.com", "name": "Real-CLP", "pname": "real-clp", "description": "(BRL Brazil Real) converted to (CLP Peso Chileno). Updates are received every 30 seconds and are based on information provided by AwesomeAPI API, which can be consulted directly by accessing the address https://docs.awesomeapi.com.br. (based on michael.mattos's Dollar https://extensions.gnome.org/extension/4573/dollar/)", "link": "https://extensions.gnome.org/extension/5069/real-clp/", "shell_version_map": {"38": {"version": "1", "sha256": "1kapkrz86qgxssas6wvf2rqmja0528j70b0dm9lhr88ya8rv4y93", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIihCUkwgQnJhemlsIFJlYWwpIGNvbnZlcnRlZCB0byAoQ0xQIFBlc28gQ2hpbGVubykuIFVwZGF0ZXMgYXJlIHJlY2VpdmVkIGV2ZXJ5IDMwIHNlY29uZHMgYW5kIGFyZSBiYXNlZCBvbiBpbmZvcm1hdGlvbiBwcm92aWRlZCBieSBBd2Vzb21lQVBJIEFQSSwgd2hpY2ggY2FuIGJlIGNvbnN1bHRlZCBkaXJlY3RseSBieSBhY2Nlc3NpbmcgdGhlIGFkZHJlc3MgaHR0cHM6Ly9kb2NzLmF3ZXNvbWVhcGkuY29tLmJyLiAoYmFzZWQgb24gbWljaGFlbC5tYXR0b3MncyBEb2xsYXIgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNDU3My9kb2xsYXIvKSIsCiAgIm5hbWUiOiAiUmVhbC1DTFAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGJvbGVhL3JlYWwtY2xwIiwKICAidXVpZCI6ICJyZWFsLWNscEBhbGJvbGVhLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}, "40": {"version": "1", "sha256": "1kapkrz86qgxssas6wvf2rqmja0528j70b0dm9lhr88ya8rv4y93", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIihCUkwgQnJhemlsIFJlYWwpIGNvbnZlcnRlZCB0byAoQ0xQIFBlc28gQ2hpbGVubykuIFVwZGF0ZXMgYXJlIHJlY2VpdmVkIGV2ZXJ5IDMwIHNlY29uZHMgYW5kIGFyZSBiYXNlZCBvbiBpbmZvcm1hdGlvbiBwcm92aWRlZCBieSBBd2Vzb21lQVBJIEFQSSwgd2hpY2ggY2FuIGJlIGNvbnN1bHRlZCBkaXJlY3RseSBieSBhY2Nlc3NpbmcgdGhlIGFkZHJlc3MgaHR0cHM6Ly9kb2NzLmF3ZXNvbWVhcGkuY29tLmJyLiAoYmFzZWQgb24gbWljaGFlbC5tYXR0b3MncyBEb2xsYXIgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNDU3My9kb2xsYXIvKSIsCiAgIm5hbWUiOiAiUmVhbC1DTFAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGJvbGVhL3JlYWwtY2xwIiwKICAidXVpZCI6ICJyZWFsLWNscEBhbGJvbGVhLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}, "41": {"version": "1", "sha256": "1kapkrz86qgxssas6wvf2rqmja0528j70b0dm9lhr88ya8rv4y93", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIihCUkwgQnJhemlsIFJlYWwpIGNvbnZlcnRlZCB0byAoQ0xQIFBlc28gQ2hpbGVubykuIFVwZGF0ZXMgYXJlIHJlY2VpdmVkIGV2ZXJ5IDMwIHNlY29uZHMgYW5kIGFyZSBiYXNlZCBvbiBpbmZvcm1hdGlvbiBwcm92aWRlZCBieSBBd2Vzb21lQVBJIEFQSSwgd2hpY2ggY2FuIGJlIGNvbnN1bHRlZCBkaXJlY3RseSBieSBhY2Nlc3NpbmcgdGhlIGFkZHJlc3MgaHR0cHM6Ly9kb2NzLmF3ZXNvbWVhcGkuY29tLmJyLiAoYmFzZWQgb24gbWljaGFlbC5tYXR0b3MncyBEb2xsYXIgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNDU3My9kb2xsYXIvKSIsCiAgIm5hbWUiOiAiUmVhbC1DTFAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGJvbGVhL3JlYWwtY2xwIiwKICAidXVpZCI6ICJyZWFsLWNscEBhbGJvbGVhLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}, "42": {"version": "1", "sha256": "1kapkrz86qgxssas6wvf2rqmja0528j70b0dm9lhr88ya8rv4y93", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIihCUkwgQnJhemlsIFJlYWwpIGNvbnZlcnRlZCB0byAoQ0xQIFBlc28gQ2hpbGVubykuIFVwZGF0ZXMgYXJlIHJlY2VpdmVkIGV2ZXJ5IDMwIHNlY29uZHMgYW5kIGFyZSBiYXNlZCBvbiBpbmZvcm1hdGlvbiBwcm92aWRlZCBieSBBd2Vzb21lQVBJIEFQSSwgd2hpY2ggY2FuIGJlIGNvbnN1bHRlZCBkaXJlY3RseSBieSBhY2Nlc3NpbmcgdGhlIGFkZHJlc3MgaHR0cHM6Ly9kb2NzLmF3ZXNvbWVhcGkuY29tLmJyLiAoYmFzZWQgb24gbWljaGFlbC5tYXR0b3MncyBEb2xsYXIgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNDU3My9kb2xsYXIvKSIsCiAgIm5hbWUiOiAiUmVhbC1DTFAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGJvbGVhL3JlYWwtY2xwIiwKICAidXVpZCI6ICJyZWFsLWNscEBhbGJvbGVhLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}}}
@@ -774,13 +774,13 @@
 , {"uuid": "audio-selector@harald65.simon.gmail.com", "name": "Audio Selector", "pname": "audio-selector", "description": "Select audio output and/or input port", "link": "https://extensions.gnome.org/extension/5135/audio-selector/", "shell_version_map": {"42": {"version": "5", "sha256": "00ww12j34fpbrqlxkc6d47s0i542byz6r39yrshyf8xrcs8r7ifm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlbGVjdCBhdWRpbyBvdXRwdXQgYW5kL29yIGlucHV0IHBvcnQiLAogICJuYW1lIjogIkF1ZGlvIFNlbGVjdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hzNjUvR25vbWUtU2hlbGwtRXh0ZW5zaW9uLUF1ZGlvLVNlbGVjdG9yLmdpdCIsCiAgInV1aWQiOiAiYXVkaW8tc2VsZWN0b3JAaGFyYWxkNjUuc2ltb24uZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
 , {"uuid": "dashbar@fthx", "name": "DashBar", "pname": "dashbar", "description": "Task bar. Very light extension.\n\n Features:\n\n - Hide overview at start-up.\n\n - Scroll on taskbar to change workspace.\n\n - Show desktop button. Left click to minimize all windows. Right click to activate all windows.\n\n - Show apps button. Left click to enter overview. Right click to show apps overview.\n\n - GNOME Shell dash items in top bar. Left click to toggle (or cycle if many app windows). Right click to show app menu. Middle click to open new window. Drag'n'drop favorites.\n\n - Remove 'Activities' button.\n\n - Change 'Places' extension label to an icon.\n\n No settings. If you want customization through preferences UI, please consider BaBar or Dash to Panel.\n\n ----------\n\n Please report any bug only through GitHub, I'm not notified here.", "link": "https://extensions.gnome.org/extension/5143/dashbar/", "shell_version_map": {"42": {"version": "8", "sha256": "043g41llm6s18ijbm3sz5ya0hdrpdd03h6wmydvyaq26xlimh7cb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBWZXJ5IGxpZ2h0IGV4dGVuc2lvbi5cblxuIEZlYXR1cmVzOlxuXG4gLSBIaWRlIG92ZXJ2aWV3IGF0IHN0YXJ0LXVwLlxuXG4gLSBTY3JvbGwgb24gdGFza2JhciB0byBjaGFuZ2Ugd29ya3NwYWNlLlxuXG4gLSBTaG93IGRlc2t0b3AgYnV0dG9uLiBMZWZ0IGNsaWNrIHRvIG1pbmltaXplIGFsbCB3aW5kb3dzLiBSaWdodCBjbGljayB0byBhY3RpdmF0ZSBhbGwgd2luZG93cy5cblxuIC0gU2hvdyBhcHBzIGJ1dHRvbi4gTGVmdCBjbGljayB0byBlbnRlciBvdmVydmlldy4gUmlnaHQgY2xpY2sgdG8gc2hvdyBhcHBzIG92ZXJ2aWV3LlxuXG4gLSBHTk9NRSBTaGVsbCBkYXNoIGl0ZW1zIGluIHRvcCBiYXIuIExlZnQgY2xpY2sgdG8gdG9nZ2xlIChvciBjeWNsZSBpZiBtYW55IGFwcCB3aW5kb3dzKS4gUmlnaHQgY2xpY2sgdG8gc2hvdyBhcHAgbWVudS4gTWlkZGxlIGNsaWNrIHRvIG9wZW4gbmV3IHdpbmRvdy4gRHJhZyduJ2Ryb3AgZmF2b3JpdGVzLlxuXG4gLSBSZW1vdmUgJ0FjdGl2aXRpZXMnIGJ1dHRvbi5cblxuIC0gQ2hhbmdlICdQbGFjZXMnIGV4dGVuc2lvbiBsYWJlbCB0byBhbiBpY29uLlxuXG4gTm8gc2V0dGluZ3MuIElmIHlvdSB3YW50IGN1c3RvbWl6YXRpb24gdGhyb3VnaCBwcmVmZXJlbmNlcyBVSSwgcGxlYXNlIGNvbnNpZGVyIEJhQmFyIG9yIERhc2ggdG8gUGFuZWwuXG5cbiAtLS0tLS0tLS0tXG5cbiBQbGVhc2UgcmVwb3J0IGFueSBidWcgb25seSB0aHJvdWdoIEdpdEh1YiwgSSdtIG5vdCBub3RpZmllZCBoZXJlLiIsCiAgIm5hbWUiOiAiRGFzaEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2Rhc2hiYXIiLAogICJ1dWlkIjogImRhc2hiYXJAZnRoeCIsCiAgInZlcnNpb24iOiA4Cn0="}}}
 , {"uuid": "extended-screen@free-bots.github.io", "name": "Extended Screen", "pname": "extended-screen", "description": "Enables Gnome 42 hidden extending screen feature... please make sure that gnome-remote-desktop is installed", "link": "https://extensions.gnome.org/extension/5146/extended-screen/", "shell_version_map": {"42": {"version": "2", "sha256": "156zzlkfwgl36wj946yhm9s5v7jig0a2f6prgxq0qm7hhcdvwhap", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgR25vbWUgNDIgaGlkZGVuIGV4dGVuZGluZyBzY3JlZW4gZmVhdHVyZS4uLiBwbGVhc2UgbWFrZSBzdXJlIHRoYXQgZ25vbWUtcmVtb3RlLWRlc2t0b3AgaXMgaW5zdGFsbGVkIiwKICAibmFtZSI6ICJFeHRlbmRlZCBTY3JlZW4iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnJlZS1ib3RzL2V4dGVuZGVkLXNjcmVlbiIsCiAgInV1aWQiOiAiZXh0ZW5kZWQtc2NyZWVuQGZyZWUtYm90cy5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMgp9"}}}
-, {"uuid": "waylandorx11@injcristianrojas.github.com", "name": "Wayland or X11", "pname": "wayland-or-x11", "description": "Am I using Wayland or X11?", "link": "https://extensions.gnome.org/extension/5149/wayland-or-x11/", "shell_version_map": {"40": {"version": "5", "sha256": "0gjj2xlimw5qlkxqwfgmiw14acwzzvnvbi5zahxap9hyr9c4s167", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFtIEkgdXNpbmcgV2F5bGFuZCBvciBYMTE/IiwKICAibmFtZSI6ICJXYXlsYW5kIG9yIFgxMSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pbmpjcmlzdGlhbnJvamFzL3dheWxhbmRvcngxMSIsCiAgInV1aWQiOiAid2F5bGFuZG9yeDExQGluamNyaXN0aWFucm9qYXMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}, "41": {"version": "5", "sha256": "0gjj2xlimw5qlkxqwfgmiw14acwzzvnvbi5zahxap9hyr9c4s167", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFtIEkgdXNpbmcgV2F5bGFuZCBvciBYMTE/IiwKICAibmFtZSI6ICJXYXlsYW5kIG9yIFgxMSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pbmpjcmlzdGlhbnJvamFzL3dheWxhbmRvcngxMSIsCiAgInV1aWQiOiAid2F5bGFuZG9yeDExQGluamNyaXN0aWFucm9qYXMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}, "42": {"version": "5", "sha256": "0gjj2xlimw5qlkxqwfgmiw14acwzzvnvbi5zahxap9hyr9c4s167", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFtIEkgdXNpbmcgV2F5bGFuZCBvciBYMTE/IiwKICAibmFtZSI6ICJXYXlsYW5kIG9yIFgxMSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pbmpjcmlzdGlhbnJvamFzL3dheWxhbmRvcngxMSIsCiAgInV1aWQiOiAid2F5bGFuZG9yeDExQGluamNyaXN0aWFucm9qYXMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}, "43": {"version": "5", "sha256": "0gjj2xlimw5qlkxqwfgmiw14acwzzvnvbi5zahxap9hyr9c4s167", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFtIEkgdXNpbmcgV2F5bGFuZCBvciBYMTE/IiwKICAibmFtZSI6ICJXYXlsYW5kIG9yIFgxMSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pbmpjcmlzdGlhbnJvamFzL3dheWxhbmRvcngxMSIsCiAgInV1aWQiOiAid2F5bGFuZG9yeDExQGluamNyaXN0aWFucm9qYXMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}}}
+, {"uuid": "waylandorx11@injcristianrojas.github.com", "name": "Wayland or X11", "pname": "wayland-or-x11", "description": "Am I using Wayland or X11?", "link": "https://extensions.gnome.org/extension/5149/wayland-or-x11/", "shell_version_map": {"40": {"version": "8", "sha256": "0lq5cxv6v3qf31yd4mdj58s32dk9xnr0b244k86xrdafpd4xjp9h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFtIEkgdXNpbmcgV2F5bGFuZCBvciBYMTE/IiwKICAibmFtZSI6ICJXYXlsYW5kIG9yIFgxMSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pbmpjcmlzdGlhbnJvamFzL3dheWxhbmRvcngxMSIsCiAgInV1aWQiOiAid2F5bGFuZG9yeDExQGluamNyaXN0aWFucm9qYXMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "41": {"version": "8", "sha256": "0lq5cxv6v3qf31yd4mdj58s32dk9xnr0b244k86xrdafpd4xjp9h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFtIEkgdXNpbmcgV2F5bGFuZCBvciBYMTE/IiwKICAibmFtZSI6ICJXYXlsYW5kIG9yIFgxMSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pbmpjcmlzdGlhbnJvamFzL3dheWxhbmRvcngxMSIsCiAgInV1aWQiOiAid2F5bGFuZG9yeDExQGluamNyaXN0aWFucm9qYXMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "42": {"version": "8", "sha256": "0lq5cxv6v3qf31yd4mdj58s32dk9xnr0b244k86xrdafpd4xjp9h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFtIEkgdXNpbmcgV2F5bGFuZCBvciBYMTE/IiwKICAibmFtZSI6ICJXYXlsYW5kIG9yIFgxMSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pbmpjcmlzdGlhbnJvamFzL3dheWxhbmRvcngxMSIsCiAgInV1aWQiOiAid2F5bGFuZG9yeDExQGluamNyaXN0aWFucm9qYXMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "43": {"version": "8", "sha256": "0lq5cxv6v3qf31yd4mdj58s32dk9xnr0b244k86xrdafpd4xjp9h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFtIEkgdXNpbmcgV2F5bGFuZCBvciBYMTE/IiwKICAibmFtZSI6ICJXYXlsYW5kIG9yIFgxMSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pbmpjcmlzdGlhbnJvamFzL3dheWxhbmRvcngxMSIsCiAgInV1aWQiOiAid2F5bGFuZG9yeDExQGluamNyaXN0aWFucm9qYXMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}}}
 , {"uuid": "azclock@azclock.gitlab.com", "name": "Desktop Clock", "pname": "desktop-clock", "description": "Add a clock to the desktop!\n\nNote: Desktop Icons extension prevents the ability to move the clock. Turn off Desktop Icons extensions temporarily to move the clock around.", "link": "https://extensions.gnome.org/extension/5156/desktop-clock/", "shell_version_map": {"42": {"version": "1", "sha256": "0j8q97a4lv70by0c4383caa2i363gm7l1wsmrjs1iwppc7qmlm0d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGNsb2NrIHRvIHRoZSBkZXNrdG9wIVxuXG5Ob3RlOiBEZXNrdG9wIEljb25zIGV4dGVuc2lvbiBwcmV2ZW50cyB0aGUgYWJpbGl0eSB0byBtb3ZlIHRoZSBjbG9jay4gVHVybiBvZmYgRGVza3RvcCBJY29ucyBleHRlbnNpb25zIHRlbXBvcmFyaWx5IHRvIG1vdmUgdGhlIGNsb2NrIGFyb3VuZC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhemNsb2NrIiwKICAibmFtZSI6ICJEZXNrdG9wIENsb2NrIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmF6Y2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vQW5kcmV3WmFlY2gvYXpjbG9jayIsCiAgInV1aWQiOiAiYXpjbG9ja0BhemNsb2NrLmdpdGxhYi5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"uuid": "since-indicator@atareao.es", "name": "Since Indicator", "pname": "since-indicator", "description": "A simple menubar app for GNOME Shell that tracks how long you've been using your computer uninterruptedly", "link": "https://extensions.gnome.org/extension/5158/since-indicator/", "shell_version_map": {"40": {"version": "3", "sha256": "0ddrbs8c95v3lhgs1pllhb89ddwlkzavdfgsijw1w5pjcxrq4hn7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dG9yIjogIkxvcmVuem8gQ2FyYm9uZWxsIiwKICAiY29weXJpZ2h0IjogIjIwMjIiLAogICJkZXNjcmlwdGlvbiI6ICJBIHNpbXBsZSBtZW51YmFyIGFwcCBmb3IgR05PTUUgU2hlbGwgdGhhdCB0cmFja3MgaG93IGxvbmcgeW91J3ZlIGJlZW4gdXNpbmcgeW91ciBjb21wdXRlciB1bmludGVycnVwdGVkbHkiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzaW5jZS1pbmRpY2F0b3JAYXRhcmVhby5lcyIsCiAgImljb24iOiAic2luY2UtaW5kaWNhdG9yIiwKICAibmFtZSI6ICJTaW5jZSBJbmRpY2F0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2luY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL3d3dy5hdGFyZWFvLmVzL2FwbGljYWNpb24vc2luY2UtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJzaW5jZS1pbmRpY2F0b3JAYXRhcmVhby5lcyIsCiAgInZlcnNpb24iOiAzCn0="}, "41": {"version": "3", "sha256": "0ddrbs8c95v3lhgs1pllhb89ddwlkzavdfgsijw1w5pjcxrq4hn7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dG9yIjogIkxvcmVuem8gQ2FyYm9uZWxsIiwKICAiY29weXJpZ2h0IjogIjIwMjIiLAogICJkZXNjcmlwdGlvbiI6ICJBIHNpbXBsZSBtZW51YmFyIGFwcCBmb3IgR05PTUUgU2hlbGwgdGhhdCB0cmFja3MgaG93IGxvbmcgeW91J3ZlIGJlZW4gdXNpbmcgeW91ciBjb21wdXRlciB1bmludGVycnVwdGVkbHkiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzaW5jZS1pbmRpY2F0b3JAYXRhcmVhby5lcyIsCiAgImljb24iOiAic2luY2UtaW5kaWNhdG9yIiwKICAibmFtZSI6ICJTaW5jZSBJbmRpY2F0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2luY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL3d3dy5hdGFyZWFvLmVzL2FwbGljYWNpb24vc2luY2UtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJzaW5jZS1pbmRpY2F0b3JAYXRhcmVhby5lcyIsCiAgInZlcnNpb24iOiAzCn0="}, "42": {"version": "3", "sha256": "0ddrbs8c95v3lhgs1pllhb89ddwlkzavdfgsijw1w5pjcxrq4hn7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dG9yIjogIkxvcmVuem8gQ2FyYm9uZWxsIiwKICAiY29weXJpZ2h0IjogIjIwMjIiLAogICJkZXNjcmlwdGlvbiI6ICJBIHNpbXBsZSBtZW51YmFyIGFwcCBmb3IgR05PTUUgU2hlbGwgdGhhdCB0cmFja3MgaG93IGxvbmcgeW91J3ZlIGJlZW4gdXNpbmcgeW91ciBjb21wdXRlciB1bmludGVycnVwdGVkbHkiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzaW5jZS1pbmRpY2F0b3JAYXRhcmVhby5lcyIsCiAgImljb24iOiAic2luY2UtaW5kaWNhdG9yIiwKICAibmFtZSI6ICJTaW5jZSBJbmRpY2F0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2luY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL3d3dy5hdGFyZWFvLmVzL2FwbGljYWNpb24vc2luY2UtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJzaW5jZS1pbmRpY2F0b3JAYXRhcmVhby5lcyIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"uuid": "dollar-to-brl", "name": "Dollar", "pname": "dollar", "description": "Convert Dollar USD to Real BRL using API AWESOMEAPI https://docs.awesomeapi.com.br.", "link": "https://extensions.gnome.org/extension/5159/dollar/", "shell_version_map": {"41": {"version": "3", "sha256": "0i09dr1mymbp57jx3247rzgc2lmfb2b5cbfq2dcpw65b7i8l83c4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnZlcnQgRG9sbGFyIFVTRCB0byBSZWFsIEJSTCB1c2luZyBBUEkgQVdFU09NRUFQSSBodHRwczovL2RvY3MuYXdlc29tZWFwaS5jb20uYnIuIiwKICAibmFtZSI6ICJEb2xsYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDIuNCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL01pY2hhZWxEZU1hdHRvcy9kb2xsYXItdG8tYnJsIiwKICAidXVpZCI6ICJkb2xsYXItdG8tYnJsIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "42": {"version": "3", "sha256": "0i09dr1mymbp57jx3247rzgc2lmfb2b5cbfq2dcpw65b7i8l83c4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnZlcnQgRG9sbGFyIFVTRCB0byBSZWFsIEJSTCB1c2luZyBBUEkgQVdFU09NRUFQSSBodHRwczovL2RvY3MuYXdlc29tZWFwaS5jb20uYnIuIiwKICAibmFtZSI6ICJEb2xsYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDIuNCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL01pY2hhZWxEZU1hdHRvcy9kb2xsYXItdG8tYnJsIiwKICAidXVpZCI6ICJkb2xsYXItdG8tYnJsIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
 , {"uuid": "noa11y@popov895.ukr.net", "name": "No a11y", "pname": "no-a11y", "description": "Hide the accessibility button on the top bar.", "link": "https://extensions.gnome.org/extension/5162/no-a11y/", "shell_version_map": {"42": {"version": "1", "sha256": "0nv9iwyx0pqf81jhdgfm5dsjh7ryp8y25w32l1ll1w7223chz2v7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdGhlIGFjY2Vzc2liaWxpdHkgYnV0dG9uIG9uIHRoZSB0b3AgYmFyLiIsCiAgIm5hbWUiOiAiTm8gYTExeSIsCiAgInNlc3Npb24tbW9kZXMiOiBbCiAgICAidXNlciIsCiAgICAidW5sb2NrLWRpYWxvZyIKICBdLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcG9wb3Y4OTUvbm9hMTF5IiwKICAidXVpZCI6ICJub2ExMXlAcG9wb3Y4OTUudWtyLm5ldCIsCiAgInZlcnNpb24iOiAxCn0="}}}
-, {"uuid": "upower-battery@codilia.com", "name": "UPower Battery", "pname": "upower-battery", "description": "UPower Battery Indicator.", "link": "https://extensions.gnome.org/extension/5165/upower-battery/", "shell_version_map": {"42": {"version": "5", "sha256": "1ffbhwzkp2s4v6653g61i9l60zx74xil8j0k9wrwch80zjd0nfbz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVQb3dlciBCYXR0ZXJ5IEluZGljYXRvci4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ1cG93ZXJfYmF0dGVyeV9pbmRpY2F0b3IiLAogICJuYW1lIjogIlVQb3dlciBCYXR0ZXJ5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NvZGlsaWEvdXBvd2VyLWJhdHRlcnkiLAogICJ1dWlkIjogInVwb3dlci1iYXR0ZXJ5QGNvZGlsaWEuY29tIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
-, {"uuid": "vertical-workspaces@G-dH.github.com", "name": "Vertical Workspaces", "pname": "vertical-workspaces", "description": "Vertical workspace orientation for GNOME 40+ that adds options to customize Activities overview layout and content.\n\nGreat complementary extension to VW is my 'OFP - Overview Feature Pack' which extends capabilities of Activities overview.\n\nIf you find this extension useful, please leave a comment, your feedback is important to me and helps to keep me motivated.\n\nPlease report bugs and feature requests on the GitHub page linked below as Extension Homepage.", "link": "https://extensions.gnome.org/extension/5177/vertical-workspaces/", "shell_version_map": {"40": {"version": "12", "sha256": "0a7fxig1qn9k62i2gvvs5h04zqnmvwhagqrc6jcrmcdnanjbfw0z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlZlcnRpY2FsIHdvcmtzcGFjZSBvcmllbnRhdGlvbiBmb3IgR05PTUUgNDArIHRoYXQgYWRkcyBvcHRpb25zIHRvIGN1c3RvbWl6ZSBBY3Rpdml0aWVzIG92ZXJ2aWV3IGxheW91dCBhbmQgY29udGVudC5cblxuR3JlYXQgY29tcGxlbWVudGFyeSBleHRlbnNpb24gdG8gVlcgaXMgbXkgJ09GUCAtIE92ZXJ2aWV3IEZlYXR1cmUgUGFjaycgd2hpY2ggZXh0ZW5kcyBjYXBhYmlsaXRpZXMgb2YgQWN0aXZpdGllcyBvdmVydmlldy5cblxuSWYgeW91IGZpbmQgdGhpcyBleHRlbnNpb24gdXNlZnVsLCBwbGVhc2UgbGVhdmUgYSBjb21tZW50LCB5b3VyIGZlZWRiYWNrIGlzIGltcG9ydGFudCB0byBtZSBhbmQgaGVscHMgdG8ga2VlcCBtZSBtb3RpdmF0ZWQuXG5cblBsZWFzZSByZXBvcnQgYnVncyBhbmQgZmVhdHVyZSByZXF1ZXN0cyBvbiB0aGUgR2l0SHViIHBhZ2UgbGlua2VkIGJlbG93IGFzIEV4dGVuc2lvbiBIb21lcGFnZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ2ZXJ0aWNhbC13b3Jrc3BhY2VzIiwKICAibmFtZSI6ICJWZXJ0aWNhbCBXb3Jrc3BhY2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0ctZEgvdmVydGljYWwtd29ya3NwYWNlcyIsCiAgInV1aWQiOiAidmVydGljYWwtd29ya3NwYWNlc0BHLWRILmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "41": {"version": "12", "sha256": "0a7fxig1qn9k62i2gvvs5h04zqnmvwhagqrc6jcrmcdnanjbfw0z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlZlcnRpY2FsIHdvcmtzcGFjZSBvcmllbnRhdGlvbiBmb3IgR05PTUUgNDArIHRoYXQgYWRkcyBvcHRpb25zIHRvIGN1c3RvbWl6ZSBBY3Rpdml0aWVzIG92ZXJ2aWV3IGxheW91dCBhbmQgY29udGVudC5cblxuR3JlYXQgY29tcGxlbWVudGFyeSBleHRlbnNpb24gdG8gVlcgaXMgbXkgJ09GUCAtIE92ZXJ2aWV3IEZlYXR1cmUgUGFjaycgd2hpY2ggZXh0ZW5kcyBjYXBhYmlsaXRpZXMgb2YgQWN0aXZpdGllcyBvdmVydmlldy5cblxuSWYgeW91IGZpbmQgdGhpcyBleHRlbnNpb24gdXNlZnVsLCBwbGVhc2UgbGVhdmUgYSBjb21tZW50LCB5b3VyIGZlZWRiYWNrIGlzIGltcG9ydGFudCB0byBtZSBhbmQgaGVscHMgdG8ga2VlcCBtZSBtb3RpdmF0ZWQuXG5cblBsZWFzZSByZXBvcnQgYnVncyBhbmQgZmVhdHVyZSByZXF1ZXN0cyBvbiB0aGUgR2l0SHViIHBhZ2UgbGlua2VkIGJlbG93IGFzIEV4dGVuc2lvbiBIb21lcGFnZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ2ZXJ0aWNhbC13b3Jrc3BhY2VzIiwKICAibmFtZSI6ICJWZXJ0aWNhbCBXb3Jrc3BhY2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0ctZEgvdmVydGljYWwtd29ya3NwYWNlcyIsCiAgInV1aWQiOiAidmVydGljYWwtd29ya3NwYWNlc0BHLWRILmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "42": {"version": "12", "sha256": "0a7fxig1qn9k62i2gvvs5h04zqnmvwhagqrc6jcrmcdnanjbfw0z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlZlcnRpY2FsIHdvcmtzcGFjZSBvcmllbnRhdGlvbiBmb3IgR05PTUUgNDArIHRoYXQgYWRkcyBvcHRpb25zIHRvIGN1c3RvbWl6ZSBBY3Rpdml0aWVzIG92ZXJ2aWV3IGxheW91dCBhbmQgY29udGVudC5cblxuR3JlYXQgY29tcGxlbWVudGFyeSBleHRlbnNpb24gdG8gVlcgaXMgbXkgJ09GUCAtIE92ZXJ2aWV3IEZlYXR1cmUgUGFjaycgd2hpY2ggZXh0ZW5kcyBjYXBhYmlsaXRpZXMgb2YgQWN0aXZpdGllcyBvdmVydmlldy5cblxuSWYgeW91IGZpbmQgdGhpcyBleHRlbnNpb24gdXNlZnVsLCBwbGVhc2UgbGVhdmUgYSBjb21tZW50LCB5b3VyIGZlZWRiYWNrIGlzIGltcG9ydGFudCB0byBtZSBhbmQgaGVscHMgdG8ga2VlcCBtZSBtb3RpdmF0ZWQuXG5cblBsZWFzZSByZXBvcnQgYnVncyBhbmQgZmVhdHVyZSByZXF1ZXN0cyBvbiB0aGUgR2l0SHViIHBhZ2UgbGlua2VkIGJlbG93IGFzIEV4dGVuc2lvbiBIb21lcGFnZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ2ZXJ0aWNhbC13b3Jrc3BhY2VzIiwKICAibmFtZSI6ICJWZXJ0aWNhbCBXb3Jrc3BhY2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0ctZEgvdmVydGljYWwtd29ya3NwYWNlcyIsCiAgInV1aWQiOiAidmVydGljYWwtd29ya3NwYWNlc0BHLWRILmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "43": {"version": "12", "sha256": "0a7fxig1qn9k62i2gvvs5h04zqnmvwhagqrc6jcrmcdnanjbfw0z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlZlcnRpY2FsIHdvcmtzcGFjZSBvcmllbnRhdGlvbiBmb3IgR05PTUUgNDArIHRoYXQgYWRkcyBvcHRpb25zIHRvIGN1c3RvbWl6ZSBBY3Rpdml0aWVzIG92ZXJ2aWV3IGxheW91dCBhbmQgY29udGVudC5cblxuR3JlYXQgY29tcGxlbWVudGFyeSBleHRlbnNpb24gdG8gVlcgaXMgbXkgJ09GUCAtIE92ZXJ2aWV3IEZlYXR1cmUgUGFjaycgd2hpY2ggZXh0ZW5kcyBjYXBhYmlsaXRpZXMgb2YgQWN0aXZpdGllcyBvdmVydmlldy5cblxuSWYgeW91IGZpbmQgdGhpcyBleHRlbnNpb24gdXNlZnVsLCBwbGVhc2UgbGVhdmUgYSBjb21tZW50LCB5b3VyIGZlZWRiYWNrIGlzIGltcG9ydGFudCB0byBtZSBhbmQgaGVscHMgdG8ga2VlcCBtZSBtb3RpdmF0ZWQuXG5cblBsZWFzZSByZXBvcnQgYnVncyBhbmQgZmVhdHVyZSByZXF1ZXN0cyBvbiB0aGUgR2l0SHViIHBhZ2UgbGlua2VkIGJlbG93IGFzIEV4dGVuc2lvbiBIb21lcGFnZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ2ZXJ0aWNhbC13b3Jrc3BhY2VzIiwKICAibmFtZSI6ICJWZXJ0aWNhbCBXb3Jrc3BhY2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0ctZEgvdmVydGljYWwtd29ya3NwYWNlcyIsCiAgInV1aWQiOiAidmVydGljYWwtd29ya3NwYWNlc0BHLWRILmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}}}
+, {"uuid": "upower-battery@codilia.com", "name": "UPower Battery", "pname": "upower-battery", "description": "UPower Battery Indicator.", "link": "https://extensions.gnome.org/extension/5165/upower-battery/", "shell_version_map": {"42": {"version": "6", "sha256": "14kcpf4iw7gyhdcjz1v19kggsjs3dhxmhqq7lw96k621j76snvbw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVQb3dlciBCYXR0ZXJ5IEluZGljYXRvci4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ1cG93ZXJfYmF0dGVyeV9pbmRpY2F0b3IiLAogICJuYW1lIjogIlVQb3dlciBCYXR0ZXJ5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9jb2RpbGlhL3Vwb3dlci1iYXR0ZXJ5IiwKICAidXVpZCI6ICJ1cG93ZXItYmF0dGVyeUBjb2RpbGlhLmNvbSIsCiAgInZlcnNpb24iOiA2Cn0="}, "43": {"version": "6", "sha256": "14kcpf4iw7gyhdcjz1v19kggsjs3dhxmhqq7lw96k621j76snvbw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVQb3dlciBCYXR0ZXJ5IEluZGljYXRvci4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ1cG93ZXJfYmF0dGVyeV9pbmRpY2F0b3IiLAogICJuYW1lIjogIlVQb3dlciBCYXR0ZXJ5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9jb2RpbGlhL3Vwb3dlci1iYXR0ZXJ5IiwKICAidXVpZCI6ICJ1cG93ZXItYmF0dGVyeUBjb2RpbGlhLmNvbSIsCiAgInZlcnNpb24iOiA2Cn0="}}}
+, {"uuid": "vertical-workspaces@G-dH.github.com", "name": "Vertical Workspaces", "pname": "vertical-workspaces", "description": "Vertical orientation of workspaces and options to customize Activities overview layout and content for GNOME 40+.\n\nGreat complementary extension to VW is my 'OFP - Overview Feature Pack' that extends capabilities of Activities overview and Dash.\n\nIf you find this extension useful, please leave a comment, your feedback is important to me and helps to keep me motivated.\n\nPlease report bugs and feature requests on the GitHub page linked below as Extension Homepage.", "link": "https://extensions.gnome.org/extension/5177/vertical-workspaces/", "shell_version_map": {"40": {"version": "12", "sha256": "18l0aqglfff7jdd9nkdwwb4fh9ajyfw1724m7sf0b27890xq1max", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlZlcnRpY2FsIG9yaWVudGF0aW9uIG9mIHdvcmtzcGFjZXMgYW5kIG9wdGlvbnMgdG8gY3VzdG9taXplIEFjdGl2aXRpZXMgb3ZlcnZpZXcgbGF5b3V0IGFuZCBjb250ZW50IGZvciBHTk9NRSA0MCsuXG5cbkdyZWF0IGNvbXBsZW1lbnRhcnkgZXh0ZW5zaW9uIHRvIFZXIGlzIG15ICdPRlAgLSBPdmVydmlldyBGZWF0dXJlIFBhY2snIHRoYXQgZXh0ZW5kcyBjYXBhYmlsaXRpZXMgb2YgQWN0aXZpdGllcyBvdmVydmlldyBhbmQgRGFzaC5cblxuSWYgeW91IGZpbmQgdGhpcyBleHRlbnNpb24gdXNlZnVsLCBwbGVhc2UgbGVhdmUgYSBjb21tZW50LCB5b3VyIGZlZWRiYWNrIGlzIGltcG9ydGFudCB0byBtZSBhbmQgaGVscHMgdG8ga2VlcCBtZSBtb3RpdmF0ZWQuXG5cblBsZWFzZSByZXBvcnQgYnVncyBhbmQgZmVhdHVyZSByZXF1ZXN0cyBvbiB0aGUgR2l0SHViIHBhZ2UgbGlua2VkIGJlbG93IGFzIEV4dGVuc2lvbiBIb21lcGFnZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ2ZXJ0aWNhbC13b3Jrc3BhY2VzIiwKICAibmFtZSI6ICJWZXJ0aWNhbCBXb3Jrc3BhY2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0ctZEgvdmVydGljYWwtd29ya3NwYWNlcyIsCiAgInV1aWQiOiAidmVydGljYWwtd29ya3NwYWNlc0BHLWRILmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "41": {"version": "12", "sha256": "18l0aqglfff7jdd9nkdwwb4fh9ajyfw1724m7sf0b27890xq1max", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlZlcnRpY2FsIG9yaWVudGF0aW9uIG9mIHdvcmtzcGFjZXMgYW5kIG9wdGlvbnMgdG8gY3VzdG9taXplIEFjdGl2aXRpZXMgb3ZlcnZpZXcgbGF5b3V0IGFuZCBjb250ZW50IGZvciBHTk9NRSA0MCsuXG5cbkdyZWF0IGNvbXBsZW1lbnRhcnkgZXh0ZW5zaW9uIHRvIFZXIGlzIG15ICdPRlAgLSBPdmVydmlldyBGZWF0dXJlIFBhY2snIHRoYXQgZXh0ZW5kcyBjYXBhYmlsaXRpZXMgb2YgQWN0aXZpdGllcyBvdmVydmlldyBhbmQgRGFzaC5cblxuSWYgeW91IGZpbmQgdGhpcyBleHRlbnNpb24gdXNlZnVsLCBwbGVhc2UgbGVhdmUgYSBjb21tZW50LCB5b3VyIGZlZWRiYWNrIGlzIGltcG9ydGFudCB0byBtZSBhbmQgaGVscHMgdG8ga2VlcCBtZSBtb3RpdmF0ZWQuXG5cblBsZWFzZSByZXBvcnQgYnVncyBhbmQgZmVhdHVyZSByZXF1ZXN0cyBvbiB0aGUgR2l0SHViIHBhZ2UgbGlua2VkIGJlbG93IGFzIEV4dGVuc2lvbiBIb21lcGFnZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ2ZXJ0aWNhbC13b3Jrc3BhY2VzIiwKICAibmFtZSI6ICJWZXJ0aWNhbCBXb3Jrc3BhY2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0ctZEgvdmVydGljYWwtd29ya3NwYWNlcyIsCiAgInV1aWQiOiAidmVydGljYWwtd29ya3NwYWNlc0BHLWRILmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "42": {"version": "12", "sha256": "18l0aqglfff7jdd9nkdwwb4fh9ajyfw1724m7sf0b27890xq1max", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlZlcnRpY2FsIG9yaWVudGF0aW9uIG9mIHdvcmtzcGFjZXMgYW5kIG9wdGlvbnMgdG8gY3VzdG9taXplIEFjdGl2aXRpZXMgb3ZlcnZpZXcgbGF5b3V0IGFuZCBjb250ZW50IGZvciBHTk9NRSA0MCsuXG5cbkdyZWF0IGNvbXBsZW1lbnRhcnkgZXh0ZW5zaW9uIHRvIFZXIGlzIG15ICdPRlAgLSBPdmVydmlldyBGZWF0dXJlIFBhY2snIHRoYXQgZXh0ZW5kcyBjYXBhYmlsaXRpZXMgb2YgQWN0aXZpdGllcyBvdmVydmlldyBhbmQgRGFzaC5cblxuSWYgeW91IGZpbmQgdGhpcyBleHRlbnNpb24gdXNlZnVsLCBwbGVhc2UgbGVhdmUgYSBjb21tZW50LCB5b3VyIGZlZWRiYWNrIGlzIGltcG9ydGFudCB0byBtZSBhbmQgaGVscHMgdG8ga2VlcCBtZSBtb3RpdmF0ZWQuXG5cblBsZWFzZSByZXBvcnQgYnVncyBhbmQgZmVhdHVyZSByZXF1ZXN0cyBvbiB0aGUgR2l0SHViIHBhZ2UgbGlua2VkIGJlbG93IGFzIEV4dGVuc2lvbiBIb21lcGFnZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ2ZXJ0aWNhbC13b3Jrc3BhY2VzIiwKICAibmFtZSI6ICJWZXJ0aWNhbCBXb3Jrc3BhY2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0ctZEgvdmVydGljYWwtd29ya3NwYWNlcyIsCiAgInV1aWQiOiAidmVydGljYWwtd29ya3NwYWNlc0BHLWRILmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "43": {"version": "12", "sha256": "18l0aqglfff7jdd9nkdwwb4fh9ajyfw1724m7sf0b27890xq1max", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlZlcnRpY2FsIG9yaWVudGF0aW9uIG9mIHdvcmtzcGFjZXMgYW5kIG9wdGlvbnMgdG8gY3VzdG9taXplIEFjdGl2aXRpZXMgb3ZlcnZpZXcgbGF5b3V0IGFuZCBjb250ZW50IGZvciBHTk9NRSA0MCsuXG5cbkdyZWF0IGNvbXBsZW1lbnRhcnkgZXh0ZW5zaW9uIHRvIFZXIGlzIG15ICdPRlAgLSBPdmVydmlldyBGZWF0dXJlIFBhY2snIHRoYXQgZXh0ZW5kcyBjYXBhYmlsaXRpZXMgb2YgQWN0aXZpdGllcyBvdmVydmlldyBhbmQgRGFzaC5cblxuSWYgeW91IGZpbmQgdGhpcyBleHRlbnNpb24gdXNlZnVsLCBwbGVhc2UgbGVhdmUgYSBjb21tZW50LCB5b3VyIGZlZWRiYWNrIGlzIGltcG9ydGFudCB0byBtZSBhbmQgaGVscHMgdG8ga2VlcCBtZSBtb3RpdmF0ZWQuXG5cblBsZWFzZSByZXBvcnQgYnVncyBhbmQgZmVhdHVyZSByZXF1ZXN0cyBvbiB0aGUgR2l0SHViIHBhZ2UgbGlua2VkIGJlbG93IGFzIEV4dGVuc2lvbiBIb21lcGFnZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ2ZXJ0aWNhbC13b3Jrc3BhY2VzIiwKICAibmFtZSI6ICJWZXJ0aWNhbCBXb3Jrc3BhY2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0ctZEgvdmVydGljYWwtd29ya3NwYWNlcyIsCiAgInV1aWQiOiAidmVydGljYWwtd29ya3NwYWNlc0BHLWRILmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}}}
 , {"uuid": "rocketbar@chepkun.github.com", "name": "Rocketbar", "pname": "rocketbar", "description": "Taskbar and misc additions for the GNOME Shell.", "link": "https://extensions.gnome.org/extension/5180/rocketbar/", "shell_version_map": {"42": {"version": "5", "sha256": "1hbiy9bbxr0k3bvq5mqkz0dvc7cqrz1mya4alipfsrc29qdxyj97", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2tiYXIgYW5kIG1pc2MgYWRkaXRpb25zIGZvciB0aGUgR05PTUUgU2hlbGwuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAicm9ja2V0YmFyIiwKICAibmFtZSI6ICJSb2NrZXRiYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucm9ja2V0YmFyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2xpbnV4LWlzLWF3ZXNvbWUvZ25vbWVfZXh0ZW5zaW9uX3JvY2tldGJhciIsCiAgInV1aWQiOiAicm9ja2V0YmFyQGNoZXBrdW4uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"uuid": "contestcountdown@raghav", "name": "Contest Countdown", "pname": "contest-countdown", "description": "Countdown to next codeforces contest. This extension uses the API of codeforces.com to get the list of all upcoming contests. A countdown to the closest upcoming contest (that you are participating in) is shown in the panel, which can be clicked on to view the list of all upcoming contests.", "link": "https://extensions.gnome.org/extension/5183/contest-countdown/", "shell_version_map": {"40": {"version": "3", "sha256": "096vwrc9b5lxg1zk7v8w6ynwnp7x3n3h9f3r5p02rdqy73ybsqia", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvdW50ZG93biB0byBuZXh0IGNvZGVmb3JjZXMgY29udGVzdC4gVGhpcyBleHRlbnNpb24gdXNlcyB0aGUgQVBJIG9mIGNvZGVmb3JjZXMuY29tIHRvIGdldCB0aGUgbGlzdCBvZiBhbGwgdXBjb21pbmcgY29udGVzdHMuIEEgY291bnRkb3duIHRvIHRoZSBjbG9zZXN0IHVwY29taW5nIGNvbnRlc3QgKHRoYXQgeW91IGFyZSBwYXJ0aWNpcGF0aW5nIGluKSBpcyBzaG93biBpbiB0aGUgcGFuZWwsIHdoaWNoIGNhbiBiZSBjbGlja2VkIG9uIHRvIHZpZXcgdGhlIGxpc3Qgb2YgYWxsIHVwY29taW5nIGNvbnRlc3RzLiIsCiAgIm5hbWUiOiAiQ29udGVzdCBDb3VudGRvd24iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY29udGVzdC1jb3VudGRvd24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3JhZy1oYXYvY29udGVzdGNvdW50ZG93biIsCiAgInV1aWQiOiAiY29udGVzdGNvdW50ZG93bkByYWdoYXYiLAogICJ2ZXJzaW9uIjogMwp9"}, "42": {"version": "3", "sha256": "096vwrc9b5lxg1zk7v8w6ynwnp7x3n3h9f3r5p02rdqy73ybsqia", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvdW50ZG93biB0byBuZXh0IGNvZGVmb3JjZXMgY29udGVzdC4gVGhpcyBleHRlbnNpb24gdXNlcyB0aGUgQVBJIG9mIGNvZGVmb3JjZXMuY29tIHRvIGdldCB0aGUgbGlzdCBvZiBhbGwgdXBjb21pbmcgY29udGVzdHMuIEEgY291bnRkb3duIHRvIHRoZSBjbG9zZXN0IHVwY29taW5nIGNvbnRlc3QgKHRoYXQgeW91IGFyZSBwYXJ0aWNpcGF0aW5nIGluKSBpcyBzaG93biBpbiB0aGUgcGFuZWwsIHdoaWNoIGNhbiBiZSBjbGlja2VkIG9uIHRvIHZpZXcgdGhlIGxpc3Qgb2YgYWxsIHVwY29taW5nIGNvbnRlc3RzLiIsCiAgIm5hbWUiOiAiQ29udGVzdCBDb3VudGRvd24iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY29udGVzdC1jb3VudGRvd24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3JhZy1oYXYvY29udGVzdGNvdW50ZG93biIsCiAgInV1aWQiOiAiY29udGVzdGNvdW50ZG93bkByYWdoYXYiLAogICJ2ZXJzaW9uIjogMwp9"}}}
 , {"uuid": "toggle-window@togglewindow.com", "name": "Toggle Window", "pname": "toggle-window", "description": "For security reasons, since Gnome 41, cann't invoke '**org.gnome.Shell.Eval**' to control the behavior of window, we expose a D-Bus interface to activate/minimized a window by WMclass name.", "link": "https://extensions.gnome.org/extension/5185/toggle-window/", "shell_version_map": {"42": {"version": "3", "sha256": "03d53mf46jdypbqvw5720cc4ii39q87jscnnnwmqcd2x6sn6c0xs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvciBzZWN1cml0eSByZWFzb25zLCBzaW5jZSBHbm9tZSA0MSwgY2Fubid0IGludm9rZSAnKipvcmcuZ25vbWUuU2hlbGwuRXZhbCoqJyB0byBjb250cm9sIHRoZSBiZWhhdmlvciBvZiB3aW5kb3csIHdlIGV4cG9zZSBhIEQtQnVzIGludGVyZmFjZSB0byBhY3RpdmF0ZS9taW5pbWl6ZWQgYSB3aW5kb3cgYnkgV01jbGFzcyBuYW1lLiIsCiAgIm5hbWUiOiAiVG9nZ2xlIFdpbmRvdyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS96aGFuZ2ppYWtvdXpmL3RvZ2dsZV93aW5kb3ciLAogICJ1dWlkIjogInRvZ2dsZS13aW5kb3dAdG9nZ2xld2luZG93LmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}}}
@@ -792,12 +792,12 @@
 , {"uuid": "suspend-to-topbar@madebysteven.nl", "name": "Suspend button in topbar", "pname": "suspend-button-in-top-bar", "description": "Suspend your computer via a topbar button, added settings to the fork for asking to suspend or cancel. Original project: https://github.com/trofosila/suspend-to-topbar", "link": "https://extensions.gnome.org/extension/5213/suspend-button-in-top-bar/", "shell_version_map": {"38": {"version": "4", "sha256": "1gwf4axjwvwmlribsv6g0w1xdifdxxbr5mjjp6yl3xkz6rkbip9w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN1c3BlbmQgeW91ciBjb21wdXRlciB2aWEgYSB0b3BiYXIgYnV0dG9uLCBhZGRlZCBzZXR0aW5ncyB0byB0aGUgZm9yayBmb3IgYXNraW5nIHRvIHN1c3BlbmQgb3IgY2FuY2VsLiBPcmlnaW5hbCBwcm9qZWN0OiBodHRwczovL2dpdGh1Yi5jb20vdHJvZm9zaWxhL3N1c3BlbmQtdG8tdG9wYmFyIiwKICAibmFtZSI6ICJTdXNwZW5kIGJ1dHRvbiBpbiB0b3BiYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3VzcGVuZC10by10b3BiYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdGV2ZW5kZWpvbmdubC9zdXNwZW5kLXRvLXRvcGJhciIsCiAgInV1aWQiOiAic3VzcGVuZC10by10b3BiYXJAbWFkZWJ5c3RldmVuLm5sIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "mutter-primary-gpu@zaidka.github.io", "name": "Mutter Primary GPU", "pname": "mutter-primary-gpu", "description": "Override primary GPU selection for Wayland", "link": "https://extensions.gnome.org/extension/5218/mutter-primary-gpu/", "shell_version_map": {"42": {"version": "3", "sha256": "0i7q860mzk65cbqsm9q29sjg8k6ai8kv715rkw1wb2lx2xig434a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk92ZXJyaWRlIHByaW1hcnkgR1BVIHNlbGVjdGlvbiBmb3IgV2F5bGFuZCIsCiAgIm5hbWUiOiAiTXV0dGVyIFByaW1hcnkgR1BVIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3phaWRrYS9tdXR0ZXItcHJpbWFyeS1ncHUiLAogICJ1dWlkIjogIm11dHRlci1wcmltYXJ5LWdwdUB6YWlka2EuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
 , {"uuid": "tophat@fflewddur.github.io", "name": "TopHat", "pname": "tophat", "description": "An elegant system resource monitor. View real-time details about your computer's CPU, memory, and network usage.\n", "link": "https://extensions.gnome.org/extension/5219/tophat/", "shell_version_map": {"38": {"version": "4", "sha256": "07lcbr53f0xfkrl0svihdrsh96j0w44z8wmz3w0d8qgh0xs6g54r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGVsZWdhbnQgc3lzdGVtIHJlc291cmNlIG1vbml0b3IuIFZpZXcgcmVhbC10aW1lIGRldGFpbHMgYWJvdXQgeW91ciBjb21wdXRlcidzIENQVSwgbWVtb3J5LCBhbmQgbmV0d29yayB1c2FnZS5cbiIsCiAgImdldHRleHQtZG9tYWluIjogInRvcGhhdEBmZmxld2RkdXIuZ2l0aHViLmlvIiwKICAibmFtZSI6ICJUb3BIYXQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudG9waGF0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ZmbGV3ZGR1ci90b3BoYXQiLAogICJ1dWlkIjogInRvcGhhdEBmZmxld2RkdXIuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "4", "sha256": "07lcbr53f0xfkrl0svihdrsh96j0w44z8wmz3w0d8qgh0xs6g54r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGVsZWdhbnQgc3lzdGVtIHJlc291cmNlIG1vbml0b3IuIFZpZXcgcmVhbC10aW1lIGRldGFpbHMgYWJvdXQgeW91ciBjb21wdXRlcidzIENQVSwgbWVtb3J5LCBhbmQgbmV0d29yayB1c2FnZS5cbiIsCiAgImdldHRleHQtZG9tYWluIjogInRvcGhhdEBmZmxld2RkdXIuZ2l0aHViLmlvIiwKICAibmFtZSI6ICJUb3BIYXQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudG9waGF0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ZmbGV3ZGR1ci90b3BoYXQiLAogICJ1dWlkIjogInRvcGhhdEBmZmxld2RkdXIuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "07lcbr53f0xfkrl0svihdrsh96j0w44z8wmz3w0d8qgh0xs6g54r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGVsZWdhbnQgc3lzdGVtIHJlc291cmNlIG1vbml0b3IuIFZpZXcgcmVhbC10aW1lIGRldGFpbHMgYWJvdXQgeW91ciBjb21wdXRlcidzIENQVSwgbWVtb3J5LCBhbmQgbmV0d29yayB1c2FnZS5cbiIsCiAgImdldHRleHQtZG9tYWluIjogInRvcGhhdEBmZmxld2RkdXIuZ2l0aHViLmlvIiwKICAibmFtZSI6ICJUb3BIYXQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudG9waGF0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ZmbGV3ZGR1ci90b3BoYXQiLAogICJ1dWlkIjogInRvcGhhdEBmZmxld2RkdXIuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "42": {"version": "4", "sha256": "07lcbr53f0xfkrl0svihdrsh96j0w44z8wmz3w0d8qgh0xs6g54r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGVsZWdhbnQgc3lzdGVtIHJlc291cmNlIG1vbml0b3IuIFZpZXcgcmVhbC10aW1lIGRldGFpbHMgYWJvdXQgeW91ciBjb21wdXRlcidzIENQVSwgbWVtb3J5LCBhbmQgbmV0d29yayB1c2FnZS5cbiIsCiAgImdldHRleHQtZG9tYWluIjogInRvcGhhdEBmZmxld2RkdXIuZ2l0aHViLmlvIiwKICAibmFtZSI6ICJUb3BIYXQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudG9waGF0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ZmbGV3ZGR1ci90b3BoYXQiLAogICJ1dWlkIjogInRvcGhhdEBmZmxld2RkdXIuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "43": {"version": "4", "sha256": "07lcbr53f0xfkrl0svihdrsh96j0w44z8wmz3w0d8qgh0xs6g54r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGVsZWdhbnQgc3lzdGVtIHJlc291cmNlIG1vbml0b3IuIFZpZXcgcmVhbC10aW1lIGRldGFpbHMgYWJvdXQgeW91ciBjb21wdXRlcidzIENQVSwgbWVtb3J5LCBhbmQgbmV0d29yayB1c2FnZS5cbiIsCiAgImdldHRleHQtZG9tYWluIjogInRvcGhhdEBmZmxld2RkdXIuZ2l0aHViLmlvIiwKICAibmFtZSI6ICJUb3BIYXQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudG9waGF0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ZmbGV3ZGR1ci90b3BoYXQiLAogICJ1dWlkIjogInRvcGhhdEBmZmxld2RkdXIuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
-, {"uuid": "dash-animator@icedman.github.com", "name": "Dash to Dock Animator", "pname": "dash-to-dock-animator", "description": "Animate the icons of dash to dock", "link": "https://extensions.gnome.org/extension/5222/dash-to-dock-animator/", "shell_version_map": {"40": {"version": "2", "sha256": "1lf0kf6n4v2hqs15lfnk6dxvqf71p347730qpzb0h17b621bybfc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuaW1hdGUgdGhlIGljb25zIG9mIGRhc2ggdG8gZG9jayIsCiAgImdldHRleHQtZG9tYWluIjogImRhc2gtYW5pbWF0b3IiLAogICJuYW1lIjogIkRhc2ggdG8gRG9jayBBbmltYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiaWNlZG1hbiIKICBdLAogICJzY2hlbWEtaWQiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZGFzaC1hbmltYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ljZWRtYW4vZGFzaC1hbmltYXRvciIsCiAgInV1aWQiOiAiZGFzaC1hbmltYXRvckBpY2VkbWFuLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}, "41": {"version": "2", "sha256": "1lf0kf6n4v2hqs15lfnk6dxvqf71p347730qpzb0h17b621bybfc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuaW1hdGUgdGhlIGljb25zIG9mIGRhc2ggdG8gZG9jayIsCiAgImdldHRleHQtZG9tYWluIjogImRhc2gtYW5pbWF0b3IiLAogICJuYW1lIjogIkRhc2ggdG8gRG9jayBBbmltYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiaWNlZG1hbiIKICBdLAogICJzY2hlbWEtaWQiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZGFzaC1hbmltYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ljZWRtYW4vZGFzaC1hbmltYXRvciIsCiAgInV1aWQiOiAiZGFzaC1hbmltYXRvckBpY2VkbWFuLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}, "42": {"version": "2", "sha256": "1lf0kf6n4v2hqs15lfnk6dxvqf71p347730qpzb0h17b621bybfc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuaW1hdGUgdGhlIGljb25zIG9mIGRhc2ggdG8gZG9jayIsCiAgImdldHRleHQtZG9tYWluIjogImRhc2gtYW5pbWF0b3IiLAogICJuYW1lIjogIkRhc2ggdG8gRG9jayBBbmltYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiaWNlZG1hbiIKICBdLAogICJzY2hlbWEtaWQiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZGFzaC1hbmltYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ljZWRtYW4vZGFzaC1hbmltYXRvciIsCiAgInV1aWQiOiAiZGFzaC1hbmltYXRvckBpY2VkbWFuLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}}}
+, {"uuid": "dash-animator@icedman.github.com", "name": "Dash to Dock Animator", "pname": "dash-to-dock-animator", "description": "Animate the icons of dash to dock", "link": "https://extensions.gnome.org/extension/5222/dash-to-dock-animator/", "shell_version_map": {"40": {"version": "4", "sha256": "0smk63na0rxikb8vavgj0d22n6lmna3pp4v8q6z5bpkv4039qdps", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuaW1hdGUgdGhlIGljb25zIG9mIGRhc2ggdG8gZG9jayIsCiAgImdldHRleHQtZG9tYWluIjogImRhc2gtYW5pbWF0b3IiLAogICJuYW1lIjogIkRhc2ggdG8gRG9jayBBbmltYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiaWNlZG1hbiIKICBdLAogICJzY2hlbWEtaWQiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZGFzaC1hbmltYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pY2VkbWFuL2Rhc2gtYW5pbWF0b3IiLAogICJ1dWlkIjogImRhc2gtYW5pbWF0b3JAaWNlZG1hbi5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "0smk63na0rxikb8vavgj0d22n6lmna3pp4v8q6z5bpkv4039qdps", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuaW1hdGUgdGhlIGljb25zIG9mIGRhc2ggdG8gZG9jayIsCiAgImdldHRleHQtZG9tYWluIjogImRhc2gtYW5pbWF0b3IiLAogICJuYW1lIjogIkRhc2ggdG8gRG9jayBBbmltYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiaWNlZG1hbiIKICBdLAogICJzY2hlbWEtaWQiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZGFzaC1hbmltYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pY2VkbWFuL2Rhc2gtYW5pbWF0b3IiLAogICJ1dWlkIjogImRhc2gtYW5pbWF0b3JAaWNlZG1hbi5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "42": {"version": "4", "sha256": "0smk63na0rxikb8vavgj0d22n6lmna3pp4v8q6z5bpkv4039qdps", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuaW1hdGUgdGhlIGljb25zIG9mIGRhc2ggdG8gZG9jayIsCiAgImdldHRleHQtZG9tYWluIjogImRhc2gtYW5pbWF0b3IiLAogICJuYW1lIjogIkRhc2ggdG8gRG9jayBBbmltYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiaWNlZG1hbiIKICBdLAogICJzY2hlbWEtaWQiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZGFzaC1hbmltYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pY2VkbWFuL2Rhc2gtYW5pbWF0b3IiLAogICJ1dWlkIjogImRhc2gtYW5pbWF0b3JAaWNlZG1hbi5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "43": {"version": "4", "sha256": "0smk63na0rxikb8vavgj0d22n6lmna3pp4v8q6z5bpkv4039qdps", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuaW1hdGUgdGhlIGljb25zIG9mIGRhc2ggdG8gZG9jayIsCiAgImdldHRleHQtZG9tYWluIjogImRhc2gtYW5pbWF0b3IiLAogICJuYW1lIjogIkRhc2ggdG8gRG9jayBBbmltYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiaWNlZG1hbiIKICBdLAogICJzY2hlbWEtaWQiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZGFzaC1hbmltYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pY2VkbWFuL2Rhc2gtYW5pbWF0b3IiLAogICJ1dWlkIjogImRhc2gtYW5pbWF0b3JAaWNlZG1hbi5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "swap-finger-gestures-3-4@icedman.github.com", "name": "Swap Finger Gestures (3 to 4)", "pname": "swap-finger-gestures-3-to-4", "description": "Use 4 fingers swipe to change workspace instead of 3.", "link": "https://extensions.gnome.org/extension/5233/swap-finger-gestures-3-to-4/", "shell_version_map": {"42": {"version": "2", "sha256": "0dyjzqijgx96dzj76hl2n1cnpv67lmm29qa4g7800a43dyg4d3f5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVzZSA0IGZpbmdlcnMgc3dpcGUgdG8gY2hhbmdlIHdvcmtzcGFjZSBpbnN0ZWFkIG9mIDMuIiwKICAibmFtZSI6ICJTd2FwIEZpbmdlciBHZXN0dXJlcyAoMyB0byA0KSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pY2VkbWFuL3N3YXAtZmluZ2VyLWdlc3R1cmVzLTMtNCIsCiAgInV1aWQiOiAic3dhcC1maW5nZXItZ2VzdHVyZXMtMy00QGljZWRtYW4uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"uuid": "material-you-theme@asubbiah.com", "name": "Material You Color Theming", "pname": "material-you-color-theming", "description": "Applies generated libadwaita theme from wallpaper using Material You", "link": "https://extensions.gnome.org/extension/5236/material-you-color-theming/", "shell_version_map": {"42": {"version": "13", "sha256": "10cp641m70q8v7wdqk3w6h0pj5yr8fkxxcrwm602rwby8ylm6v40", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcGxpZXMgZ2VuZXJhdGVkIGxpYmFkd2FpdGEgdGhlbWUgZnJvbSB3YWxscGFwZXIgdXNpbmcgTWF0ZXJpYWwgWW91IiwKICAiZ2V0dGV4dC1kb21haW4iOiAibWF0ZXJpYWwteW91LXRoZW1lIiwKICAibmFtZSI6ICJNYXRlcmlhbCBZb3UgQ29sb3IgVGhlbWluZyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hdmFuaXNoc3ViYmlhaC9tYXRlcmlhbC15b3UtdGhlbWUiLAogICJ1dWlkIjogIm1hdGVyaWFsLXlvdS10aGVtZUBhc3ViYmlhaC5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}}}
 , {"uuid": "rounded-window-corners@yilozt", "name": "Rounded Window Corners", "pname": "rounded-window-corners", "description": "Add rounded corners for all windows", "link": "https://extensions.gnome.org/extension/5237/rounded-window-corners/", "shell_version_map": {"40": {"version": "8", "sha256": "1a3l61l3p180am28ya7g5fpmzgf1mg98fi6g6cd20mh7iwgjnzla", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCByb3VuZGVkIGNvcm5lcnMgZm9yIGFsbCB3aW5kb3dzIiwKICAibmFtZSI6ICJSb3VuZGVkIFdpbmRvdyBDb3JuZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3lpbG96dC9yb3VuZGVkLXdpbmRvdy1jb3JuZXJzIiwKICAidXVpZCI6ICJyb3VuZGVkLXdpbmRvdy1jb3JuZXJzQHlpbG96dCIsCiAgInZlcnNpb24iOiA4Cn0="}, "41": {"version": "8", "sha256": "1a3l61l3p180am28ya7g5fpmzgf1mg98fi6g6cd20mh7iwgjnzla", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCByb3VuZGVkIGNvcm5lcnMgZm9yIGFsbCB3aW5kb3dzIiwKICAibmFtZSI6ICJSb3VuZGVkIFdpbmRvdyBDb3JuZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3lpbG96dC9yb3VuZGVkLXdpbmRvdy1jb3JuZXJzIiwKICAidXVpZCI6ICJyb3VuZGVkLXdpbmRvdy1jb3JuZXJzQHlpbG96dCIsCiAgInZlcnNpb24iOiA4Cn0="}, "42": {"version": "8", "sha256": "1a3l61l3p180am28ya7g5fpmzgf1mg98fi6g6cd20mh7iwgjnzla", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCByb3VuZGVkIGNvcm5lcnMgZm9yIGFsbCB3aW5kb3dzIiwKICAibmFtZSI6ICJSb3VuZGVkIFdpbmRvdyBDb3JuZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3lpbG96dC9yb3VuZGVkLXdpbmRvdy1jb3JuZXJzIiwKICAidXVpZCI6ICJyb3VuZGVkLXdpbmRvdy1jb3JuZXJzQHlpbG96dCIsCiAgInZlcnNpb24iOiA4Cn0="}, "43": {"version": "8", "sha256": "1a3l61l3p180am28ya7g5fpmzgf1mg98fi6g6cd20mh7iwgjnzla", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCByb3VuZGVkIGNvcm5lcnMgZm9yIGFsbCB3aW5kb3dzIiwKICAibmFtZSI6ICJSb3VuZGVkIFdpbmRvdyBDb3JuZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3lpbG96dC9yb3VuZGVkLXdpbmRvdy1jb3JuZXJzIiwKICAidXVpZCI6ICJyb3VuZGVkLXdpbmRvdy1jb3JuZXJzQHlpbG96dCIsCiAgInZlcnNpb24iOiA4Cn0="}}}
 , {"uuid": "ideapad-controls@azzamalsharafi.gmail.com", "name": "IdeaPad Controls", "pname": "ideapad-controls", "description": "Control Lenovo IdeaPad laptops options: Conservation Mode, Camera Lock, Fn Lock, Touchpad Lock, USB charging", "link": "https://extensions.gnome.org/extension/5260/ideapad-controls/", "shell_version_map": {"42": {"version": "7", "sha256": "0l4chkpyk06ax6jb99vdz9365jn1mvinbcj3lq83df6yq9cwgc19", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgTGVub3ZvIElkZWFQYWQgbGFwdG9wcyBvcHRpb25zOiBDb25zZXJ2YXRpb24gTW9kZSwgQ2FtZXJhIExvY2ssIEZuIExvY2ssIFRvdWNocGFkIExvY2ssIFVTQiBjaGFyZ2luZyIsCiAgIm5hbWUiOiAiSWRlYVBhZCBDb250cm9scyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5pZGVhcGFkLUNvbnRyb2xzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9BenphbUFsc2hhcmFmaS9pZGVhcGFkLWNvbnRyb2xzLWdub21lLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiaWRlYXBhZC1jb250cm9sc0BhenphbWFsc2hhcmFmaS5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}, "43": {"version": "7", "sha256": "0l4chkpyk06ax6jb99vdz9365jn1mvinbcj3lq83df6yq9cwgc19", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgTGVub3ZvIElkZWFQYWQgbGFwdG9wcyBvcHRpb25zOiBDb25zZXJ2YXRpb24gTW9kZSwgQ2FtZXJhIExvY2ssIEZuIExvY2ssIFRvdWNocGFkIExvY2ssIFVTQiBjaGFyZ2luZyIsCiAgIm5hbWUiOiAiSWRlYVBhZCBDb250cm9scyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5pZGVhcGFkLUNvbnRyb2xzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9BenphbUFsc2hhcmFmaS9pZGVhcGFkLWNvbnRyb2xzLWdub21lLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiaWRlYXBhZC1jb250cm9sc0BhenphbWFsc2hhcmFmaS5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}}}
-, {"uuid": "gtk4-ding@smedius.gitlab.com", "name": "Gtk4 Desktop Icons NG (DING)", "pname": "gtk4-desktop-icons-ng-ding", "description": "Adds Gtk4 icons to the Gnome desktop. Gtk4 Fork of the original Desktop Icons extension, with several enhancements - see Readme.md for full set of features.\n\nImproved multi monitor support with option to add icons to second monitor by default.\n\nCurrently on works on Wayland. Fails on X11 because of regression/bug in GJS, please see Readme.md\n\nThis page is not monitored for issues. Please report all issues on the gitlab homepage.", "link": "https://extensions.gnome.org/extension/5263/gtk4-desktop-icons-ng-ding/", "shell_version_map": {"40": {"version": "11", "sha256": "0jdkz0nzw2da38xqgdnsr0581r5fzq5qq3s6lp85py97za4vlv7p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgR3RrNCBpY29ucyB0byB0aGUgR25vbWUgZGVza3RvcC4gR3RrNCBGb3JrIG9mIHRoZSBvcmlnaW5hbCBEZXNrdG9wIEljb25zIGV4dGVuc2lvbiwgd2l0aCBzZXZlcmFsIGVuaGFuY2VtZW50cyAtIHNlZSBSZWFkbWUubWQgZm9yIGZ1bGwgc2V0IG9mIGZlYXR1cmVzLlxuXG5JbXByb3ZlZCBtdWx0aSBtb25pdG9yIHN1cHBvcnQgd2l0aCBvcHRpb24gdG8gYWRkIGljb25zIHRvIHNlY29uZCBtb25pdG9yIGJ5IGRlZmF1bHQuXG5cbkN1cnJlbnRseSBvbiB3b3JrcyBvbiBXYXlsYW5kLiBGYWlscyBvbiBYMTEgYmVjYXVzZSBvZiByZWdyZXNzaW9uL2J1ZyBpbiBHSlMsIHBsZWFzZSBzZWUgUmVhZG1lLm1kXG5cblRoaXMgcGFnZSBpcyBub3QgbW9uaXRvcmVkIGZvciBpc3N1ZXMuIFBsZWFzZSByZXBvcnQgYWxsIGlzc3VlcyBvbiB0aGUgZ2l0bGFiIGhvbWVwYWdlLiIsCiAgImdldHRleHQtZG9tYWluIjogImd0azQtZGluZ0BzbWVkaXVzLmdpdGxhYi5jb20iLAogICJuYW1lIjogIkd0azQgRGVza3RvcCBJY29ucyBORyAoRElORykiLAogICJzZXNzaW9uLW1vZGVzIjogWwogICAgInVzZXIiLAogICAgInVubG9jay1kaWFsb2ciCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0azQtZGluZyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9zbWVkaXVzL2Rlc2t0b3AtaWNvbnMtbmciLAogICJ1dWlkIjogImd0azQtZGluZ0BzbWVkaXVzLmdpdGxhYi5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "41": {"version": "11", "sha256": "0jdkz0nzw2da38xqgdnsr0581r5fzq5qq3s6lp85py97za4vlv7p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgR3RrNCBpY29ucyB0byB0aGUgR25vbWUgZGVza3RvcC4gR3RrNCBGb3JrIG9mIHRoZSBvcmlnaW5hbCBEZXNrdG9wIEljb25zIGV4dGVuc2lvbiwgd2l0aCBzZXZlcmFsIGVuaGFuY2VtZW50cyAtIHNlZSBSZWFkbWUubWQgZm9yIGZ1bGwgc2V0IG9mIGZlYXR1cmVzLlxuXG5JbXByb3ZlZCBtdWx0aSBtb25pdG9yIHN1cHBvcnQgd2l0aCBvcHRpb24gdG8gYWRkIGljb25zIHRvIHNlY29uZCBtb25pdG9yIGJ5IGRlZmF1bHQuXG5cbkN1cnJlbnRseSBvbiB3b3JrcyBvbiBXYXlsYW5kLiBGYWlscyBvbiBYMTEgYmVjYXVzZSBvZiByZWdyZXNzaW9uL2J1ZyBpbiBHSlMsIHBsZWFzZSBzZWUgUmVhZG1lLm1kXG5cblRoaXMgcGFnZSBpcyBub3QgbW9uaXRvcmVkIGZvciBpc3N1ZXMuIFBsZWFzZSByZXBvcnQgYWxsIGlzc3VlcyBvbiB0aGUgZ2l0bGFiIGhvbWVwYWdlLiIsCiAgImdldHRleHQtZG9tYWluIjogImd0azQtZGluZ0BzbWVkaXVzLmdpdGxhYi5jb20iLAogICJuYW1lIjogIkd0azQgRGVza3RvcCBJY29ucyBORyAoRElORykiLAogICJzZXNzaW9uLW1vZGVzIjogWwogICAgInVzZXIiLAogICAgInVubG9jay1kaWFsb2ciCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0azQtZGluZyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9zbWVkaXVzL2Rlc2t0b3AtaWNvbnMtbmciLAogICJ1dWlkIjogImd0azQtZGluZ0BzbWVkaXVzLmdpdGxhYi5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "42": {"version": "11", "sha256": "0jdkz0nzw2da38xqgdnsr0581r5fzq5qq3s6lp85py97za4vlv7p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgR3RrNCBpY29ucyB0byB0aGUgR25vbWUgZGVza3RvcC4gR3RrNCBGb3JrIG9mIHRoZSBvcmlnaW5hbCBEZXNrdG9wIEljb25zIGV4dGVuc2lvbiwgd2l0aCBzZXZlcmFsIGVuaGFuY2VtZW50cyAtIHNlZSBSZWFkbWUubWQgZm9yIGZ1bGwgc2V0IG9mIGZlYXR1cmVzLlxuXG5JbXByb3ZlZCBtdWx0aSBtb25pdG9yIHN1cHBvcnQgd2l0aCBvcHRpb24gdG8gYWRkIGljb25zIHRvIHNlY29uZCBtb25pdG9yIGJ5IGRlZmF1bHQuXG5cbkN1cnJlbnRseSBvbiB3b3JrcyBvbiBXYXlsYW5kLiBGYWlscyBvbiBYMTEgYmVjYXVzZSBvZiByZWdyZXNzaW9uL2J1ZyBpbiBHSlMsIHBsZWFzZSBzZWUgUmVhZG1lLm1kXG5cblRoaXMgcGFnZSBpcyBub3QgbW9uaXRvcmVkIGZvciBpc3N1ZXMuIFBsZWFzZSByZXBvcnQgYWxsIGlzc3VlcyBvbiB0aGUgZ2l0bGFiIGhvbWVwYWdlLiIsCiAgImdldHRleHQtZG9tYWluIjogImd0azQtZGluZ0BzbWVkaXVzLmdpdGxhYi5jb20iLAogICJuYW1lIjogIkd0azQgRGVza3RvcCBJY29ucyBORyAoRElORykiLAogICJzZXNzaW9uLW1vZGVzIjogWwogICAgInVzZXIiLAogICAgInVubG9jay1kaWFsb2ciCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0azQtZGluZyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9zbWVkaXVzL2Rlc2t0b3AtaWNvbnMtbmciLAogICJ1dWlkIjogImd0azQtZGluZ0BzbWVkaXVzLmdpdGxhYi5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "43": {"version": "11", "sha256": "0jdkz0nzw2da38xqgdnsr0581r5fzq5qq3s6lp85py97za4vlv7p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgR3RrNCBpY29ucyB0byB0aGUgR25vbWUgZGVza3RvcC4gR3RrNCBGb3JrIG9mIHRoZSBvcmlnaW5hbCBEZXNrdG9wIEljb25zIGV4dGVuc2lvbiwgd2l0aCBzZXZlcmFsIGVuaGFuY2VtZW50cyAtIHNlZSBSZWFkbWUubWQgZm9yIGZ1bGwgc2V0IG9mIGZlYXR1cmVzLlxuXG5JbXByb3ZlZCBtdWx0aSBtb25pdG9yIHN1cHBvcnQgd2l0aCBvcHRpb24gdG8gYWRkIGljb25zIHRvIHNlY29uZCBtb25pdG9yIGJ5IGRlZmF1bHQuXG5cbkN1cnJlbnRseSBvbiB3b3JrcyBvbiBXYXlsYW5kLiBGYWlscyBvbiBYMTEgYmVjYXVzZSBvZiByZWdyZXNzaW9uL2J1ZyBpbiBHSlMsIHBsZWFzZSBzZWUgUmVhZG1lLm1kXG5cblRoaXMgcGFnZSBpcyBub3QgbW9uaXRvcmVkIGZvciBpc3N1ZXMuIFBsZWFzZSByZXBvcnQgYWxsIGlzc3VlcyBvbiB0aGUgZ2l0bGFiIGhvbWVwYWdlLiIsCiAgImdldHRleHQtZG9tYWluIjogImd0azQtZGluZ0BzbWVkaXVzLmdpdGxhYi5jb20iLAogICJuYW1lIjogIkd0azQgRGVza3RvcCBJY29ucyBORyAoRElORykiLAogICJzZXNzaW9uLW1vZGVzIjogWwogICAgInVzZXIiLAogICAgInVubG9jay1kaWFsb2ciCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0azQtZGluZyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9zbWVkaXVzL2Rlc2t0b3AtaWNvbnMtbmciLAogICJ1dWlkIjogImd0azQtZGluZ0BzbWVkaXVzLmdpdGxhYi5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}}}
+, {"uuid": "gtk4-ding@smedius.gitlab.com", "name": "Gtk4 Desktop Icons NG (DING)", "pname": "gtk4-desktop-icons-ng-ding", "description": "Adds Gtk4 icons to the Gnome desktop. Gtk4 Fork of the original Desktop Icons extension, with several enhancements.\n\nSeveral Fixes for Dual Monitor Support.\n\nDoes not work with X11 because of bug in GJS, please see ReadMe.\n\nPlease see Readme for full set of features.\n\nThis page is not monitored for issues, please report all issues on GitLab homepage below.", "link": "https://extensions.gnome.org/extension/5263/gtk4-desktop-icons-ng-ding/", "shell_version_map": {"40": {"version": "12", "sha256": "0ir4gvjs30h2i0ghp1llbb5n6cypbmw1xdbyl1g9nivhby75nqki", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgR3RrNCBpY29ucyB0byB0aGUgR25vbWUgZGVza3RvcC4gR3RrNCBGb3JrIG9mIHRoZSBvcmlnaW5hbCBEZXNrdG9wIEljb25zIGV4dGVuc2lvbiwgd2l0aCBzZXZlcmFsIGVuaGFuY2VtZW50cy5cblxuU2V2ZXJhbCBGaXhlcyBmb3IgRHVhbCBNb25pdG9yIFN1cHBvcnQuXG5cbkRvZXMgbm90IHdvcmsgd2l0aCBYMTEgYmVjYXVzZSBvZiBidWcgaW4gR0pTLCBwbGVhc2Ugc2VlIFJlYWRNZS5cblxuUGxlYXNlIHNlZSBSZWFkbWUgZm9yIGZ1bGwgc2V0IG9mIGZlYXR1cmVzLlxuXG5UaGlzIHBhZ2UgaXMgbm90IG1vbml0b3JlZCBmb3IgaXNzdWVzLCBwbGVhc2UgcmVwb3J0IGFsbCBpc3N1ZXMgb24gR2l0TGFiIGhvbWVwYWdlIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImd0azQtZGluZ0BzbWVkaXVzLmdpdGxhYi5jb20iLAogICJuYW1lIjogIkd0azQgRGVza3RvcCBJY29ucyBORyAoRElORykiLAogICJzZXNzaW9uLW1vZGVzIjogWwogICAgInVzZXIiLAogICAgInVubG9jay1kaWFsb2ciCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0azQtZGluZyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9zbWVkaXVzL2Rlc2t0b3AtaWNvbnMtbmciLAogICJ1dWlkIjogImd0azQtZGluZ0BzbWVkaXVzLmdpdGxhYi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "41": {"version": "12", "sha256": "0ir4gvjs30h2i0ghp1llbb5n6cypbmw1xdbyl1g9nivhby75nqki", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgR3RrNCBpY29ucyB0byB0aGUgR25vbWUgZGVza3RvcC4gR3RrNCBGb3JrIG9mIHRoZSBvcmlnaW5hbCBEZXNrdG9wIEljb25zIGV4dGVuc2lvbiwgd2l0aCBzZXZlcmFsIGVuaGFuY2VtZW50cy5cblxuU2V2ZXJhbCBGaXhlcyBmb3IgRHVhbCBNb25pdG9yIFN1cHBvcnQuXG5cbkRvZXMgbm90IHdvcmsgd2l0aCBYMTEgYmVjYXVzZSBvZiBidWcgaW4gR0pTLCBwbGVhc2Ugc2VlIFJlYWRNZS5cblxuUGxlYXNlIHNlZSBSZWFkbWUgZm9yIGZ1bGwgc2V0IG9mIGZlYXR1cmVzLlxuXG5UaGlzIHBhZ2UgaXMgbm90IG1vbml0b3JlZCBmb3IgaXNzdWVzLCBwbGVhc2UgcmVwb3J0IGFsbCBpc3N1ZXMgb24gR2l0TGFiIGhvbWVwYWdlIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImd0azQtZGluZ0BzbWVkaXVzLmdpdGxhYi5jb20iLAogICJuYW1lIjogIkd0azQgRGVza3RvcCBJY29ucyBORyAoRElORykiLAogICJzZXNzaW9uLW1vZGVzIjogWwogICAgInVzZXIiLAogICAgInVubG9jay1kaWFsb2ciCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0azQtZGluZyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9zbWVkaXVzL2Rlc2t0b3AtaWNvbnMtbmciLAogICJ1dWlkIjogImd0azQtZGluZ0BzbWVkaXVzLmdpdGxhYi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "42": {"version": "12", "sha256": "0ir4gvjs30h2i0ghp1llbb5n6cypbmw1xdbyl1g9nivhby75nqki", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgR3RrNCBpY29ucyB0byB0aGUgR25vbWUgZGVza3RvcC4gR3RrNCBGb3JrIG9mIHRoZSBvcmlnaW5hbCBEZXNrdG9wIEljb25zIGV4dGVuc2lvbiwgd2l0aCBzZXZlcmFsIGVuaGFuY2VtZW50cy5cblxuU2V2ZXJhbCBGaXhlcyBmb3IgRHVhbCBNb25pdG9yIFN1cHBvcnQuXG5cbkRvZXMgbm90IHdvcmsgd2l0aCBYMTEgYmVjYXVzZSBvZiBidWcgaW4gR0pTLCBwbGVhc2Ugc2VlIFJlYWRNZS5cblxuUGxlYXNlIHNlZSBSZWFkbWUgZm9yIGZ1bGwgc2V0IG9mIGZlYXR1cmVzLlxuXG5UaGlzIHBhZ2UgaXMgbm90IG1vbml0b3JlZCBmb3IgaXNzdWVzLCBwbGVhc2UgcmVwb3J0IGFsbCBpc3N1ZXMgb24gR2l0TGFiIGhvbWVwYWdlIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImd0azQtZGluZ0BzbWVkaXVzLmdpdGxhYi5jb20iLAogICJuYW1lIjogIkd0azQgRGVza3RvcCBJY29ucyBORyAoRElORykiLAogICJzZXNzaW9uLW1vZGVzIjogWwogICAgInVzZXIiLAogICAgInVubG9jay1kaWFsb2ciCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0azQtZGluZyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9zbWVkaXVzL2Rlc2t0b3AtaWNvbnMtbmciLAogICJ1dWlkIjogImd0azQtZGluZ0BzbWVkaXVzLmdpdGxhYi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "43": {"version": "12", "sha256": "0ir4gvjs30h2i0ghp1llbb5n6cypbmw1xdbyl1g9nivhby75nqki", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgR3RrNCBpY29ucyB0byB0aGUgR25vbWUgZGVza3RvcC4gR3RrNCBGb3JrIG9mIHRoZSBvcmlnaW5hbCBEZXNrdG9wIEljb25zIGV4dGVuc2lvbiwgd2l0aCBzZXZlcmFsIGVuaGFuY2VtZW50cy5cblxuU2V2ZXJhbCBGaXhlcyBmb3IgRHVhbCBNb25pdG9yIFN1cHBvcnQuXG5cbkRvZXMgbm90IHdvcmsgd2l0aCBYMTEgYmVjYXVzZSBvZiBidWcgaW4gR0pTLCBwbGVhc2Ugc2VlIFJlYWRNZS5cblxuUGxlYXNlIHNlZSBSZWFkbWUgZm9yIGZ1bGwgc2V0IG9mIGZlYXR1cmVzLlxuXG5UaGlzIHBhZ2UgaXMgbm90IG1vbml0b3JlZCBmb3IgaXNzdWVzLCBwbGVhc2UgcmVwb3J0IGFsbCBpc3N1ZXMgb24gR2l0TGFiIGhvbWVwYWdlIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImd0azQtZGluZ0BzbWVkaXVzLmdpdGxhYi5jb20iLAogICJuYW1lIjogIkd0azQgRGVza3RvcCBJY29ucyBORyAoRElORykiLAogICJzZXNzaW9uLW1vZGVzIjogWwogICAgInVzZXIiLAogICAgInVubG9jay1kaWFsb2ciCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0azQtZGluZyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9zbWVkaXVzL2Rlc2t0b3AtaWNvbnMtbmciLAogICJ1dWlkIjogImd0azQtZGluZ0BzbWVkaXVzLmdpdGxhYi5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}}}
 , {"uuid": "fig-gnome-integration@fig.io", "name": "Fig GNOME Integration", "pname": "fig-gnome-integration", "description": "Tightly integrates Fig with GNOME shell", "link": "https://extensions.gnome.org/extension/5266/fig-gnome-integration/", "shell_version_map": {"41": {"version": "5", "sha256": "17h04ypqmmsbkd8ski7rznv6adsd1y3jlabxjvmshjqy7w9xqbsv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpZ2h0bHkgaW50ZWdyYXRlcyBGaWcgd2l0aCBHTk9NRSBzaGVsbCIsCiAgImdldHRleHQtZG9tYWluIjogImZpZy1nbm9tZS1pbnRlZ3JhdGlvbiIsCiAgIm5hbWUiOiAiRmlnIEdOT01FIEludGVncmF0aW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZpZy1nbm9tZS1pbnRlZ3JhdGlvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vd2l0aGZpZy9nbm9tZS1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogImZpZy1nbm9tZS1pbnRlZ3JhdGlvbkBmaWcuaW8iLAogICJ2ZXJzaW9uIjogNQp9"}, "42": {"version": "5", "sha256": "17h04ypqmmsbkd8ski7rznv6adsd1y3jlabxjvmshjqy7w9xqbsv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpZ2h0bHkgaW50ZWdyYXRlcyBGaWcgd2l0aCBHTk9NRSBzaGVsbCIsCiAgImdldHRleHQtZG9tYWluIjogImZpZy1nbm9tZS1pbnRlZ3JhdGlvbiIsCiAgIm5hbWUiOiAiRmlnIEdOT01FIEludGVncmF0aW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZpZy1nbm9tZS1pbnRlZ3JhdGlvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vd2l0aGZpZy9nbm9tZS1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogImZpZy1nbm9tZS1pbnRlZ3JhdGlvbkBmaWcuaW8iLAogICJ2ZXJzaW9uIjogNQp9"}}}
 , {"uuid": "walkpaper2@walkpaper.massimiliano-dalcero.github.com", "name": "Walkpaper2", "pname": "walkpaper2", "description": "Set different wallpaper for each workspace by having the wallpaper switch on workspace change. Forked from the BlinkBP'project (https://github.com/BlinkBP/walkpaper)\n\nUnlike the previous extension is added a delay during transition. Is need for avoid flickering during switch using shortcuts :)", "link": "https://extensions.gnome.org/extension/5267/walkpaper2/", "shell_version_map": {"42": {"version": "7", "sha256": "00z56wfsvw4821siywgg83r9xhyq1sp0dijvd6y2lgg1zf08xkvb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNldCBkaWZmZXJlbnQgd2FsbHBhcGVyIGZvciBlYWNoIHdvcmtzcGFjZSBieSBoYXZpbmcgdGhlIHdhbGxwYXBlciBzd2l0Y2ggb24gd29ya3NwYWNlIGNoYW5nZS4gRm9ya2VkIGZyb20gdGhlIEJsaW5rQlAncHJvamVjdCAoaHR0cHM6Ly9naXRodWIuY29tL0JsaW5rQlAvd2Fsa3BhcGVyKVxuXG5Vbmxpa2UgdGhlIHByZXZpb3VzIGV4dGVuc2lvbiBpcyBhZGRlZCBhIGRlbGF5IGR1cmluZyB0cmFuc2l0aW9uLiBJcyBuZWVkIGZvciBhdm9pZCBmbGlja2VyaW5nIGR1cmluZyBzd2l0Y2ggdXNpbmcgc2hvcnRjdXRzIDopIiwKICAiZXh0ZW5zaW9uLWlkIjogIndhbGtwYXBlcjIiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ3YWxrcGFwZXIyQHdhbGtwYXBlci5tYXNzaW1pbGlhbm8tZGFsY2Vyby5naXRodWIuY29tIiwKICAibmFtZSI6ICJXYWxrcGFwZXIyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndhbGtwYXBlcjIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWFzc2ltaWxpYW5vLWRhbGNlcm8vd2Fsa3BhcGVyIiwKICAidXVpZCI6ICJ3YWxrcGFwZXIyQHdhbGtwYXBlci5tYXNzaW1pbGlhbm8tZGFsY2Vyby5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
 , {"uuid": "dock-reloaded@selfmade.pl", "name": "Dock: Reloaded", "pname": "dock-reloaded", "description": "Few tweaks to GNOME dock: top position, autohide - reveals under cursor pressure, only favorites apps", "link": "https://extensions.gnome.org/extension/5269/dock-reloaded/", "shell_version_map": {"42": {"version": "2", "sha256": "1cs766qr77i68s53dvaswlyv3jh1sv51d19jgigd7m71qndxwv70", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZldyB0d2Vha3MgdG8gR05PTUUgZG9jazogdG9wIHBvc2l0aW9uLCBhdXRvaGlkZSAtIHJldmVhbHMgdW5kZXIgY3Vyc29yIHByZXNzdXJlLCBvbmx5IGZhdm9yaXRlcyBhcHBzIiwKICAibmFtZSI6ICJEb2NrOiBSZWxvYWRlZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9NYXJ0aW5QTC9Eb2NrLVJlbG9hZGVkIiwKICAidXVpZCI6ICJkb2NrLXJlbG9hZGVkQHNlbGZtYWRlLnBsIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "43": {"version": "3", "sha256": "1zs2imsp8jw6z1x5q4c7b6qnrih11d8j09xs1zvfj65dm5ag2nz9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZldyB0d2Vha3MgdG8gR05PTUUgZG9jazogdG9wIHBvc2l0aW9uLCBhdXRvaGlkZSAtIHJldmVhbHMgdW5kZXIgY3Vyc29yIHByZXNzdXJlLCBvbmx5IGZhdm9yaXRlcyBhcHBzIiwKICAibmFtZSI6ICJEb2NrOiBSZWxvYWRlZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9NYXJ0aW5QTC9Eb2NrLVJlbG9hZGVkIiwKICAidXVpZCI6ICJkb2NrLXJlbG9hZGVkQHNlbGZtYWRlLnBsIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
@@ -817,13 +817,17 @@
 , {"uuid": "webfeed@xynium.github.com", "name": "WebFeed", "pname": "webfeed", "description": "RSS and Atom Feed reader for GNOME Shell", "link": "https://extensions.gnome.org/extension/5321/webfeed/", "shell_version_map": {"42": {"version": "6", "sha256": "0p6cv0hrpd52s215w3ilhkdyqb2x97j1kijcpw4byiajfkvqc1i6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJTUyBhbmQgQXRvbSBGZWVkIHJlYWRlciBmb3IgR05PTUUgU2hlbGwiLAogICJuYW1lIjogIldlYkZlZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3h5bml1bS93ZWJmZWVkIiwKICAidXVpZCI6ICJ3ZWJmZWVkQHh5bml1bS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "43": {"version": "6", "sha256": "0p6cv0hrpd52s215w3ilhkdyqb2x97j1kijcpw4byiajfkvqc1i6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJTUyBhbmQgQXRvbSBGZWVkIHJlYWRlciBmb3IgR05PTUUgU2hlbGwiLAogICJuYW1lIjogIldlYkZlZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3h5bml1bS93ZWJmZWVkIiwKICAidXVpZCI6ICJ3ZWJmZWVkQHh5bml1bS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
 , {"uuid": "pingindic@xynium.github.com", "name": "PingIndic", "pname": "pingindic", "description": "show network ping delay", "link": "https://extensions.gnome.org/extension/5330/pingindic/", "shell_version_map": {"42": {"version": "3", "sha256": "0f4kgq5qagv39s98bdyncfs9jwcd6lm5bnjb1qcfhr3364rd0yab", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInNob3cgbmV0d29yayBwaW5nIGRlbGF5IiwKICAibmFtZSI6ICJQaW5nSW5kaWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3h5bml1bS9waW5naW5kaWMiLAogICJ1dWlkIjogInBpbmdpbmRpY0B4eW5pdW0uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}, "43": {"version": "3", "sha256": "0f4kgq5qagv39s98bdyncfs9jwcd6lm5bnjb1qcfhr3364rd0yab", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInNob3cgbmV0d29yayBwaW5nIGRlbGF5IiwKICAibmFtZSI6ICJQaW5nSW5kaWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3h5bml1bS9waW5naW5kaWMiLAogICJ1dWlkIjogInBpbmdpbmRpY0B4eW5pdW0uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"uuid": "power-profile-indicator@laux.wtf", "name": "Power Profiles Indicator", "pname": "power-profile-indicator", "description": "a simple indicator in the system icons area of the top panel that represent the current power profile", "link": "https://extensions.gnome.org/extension/5335/power-profile-indicator/", "shell_version_map": {"40": {"version": "9", "sha256": "0011yqa1v2ymfczzmd2vckmqdpk1wapdzhg6l7453fnd25v7xxa9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImEgc2ltcGxlIGluZGljYXRvciBpbiB0aGUgc3lzdGVtIGljb25zIGFyZWEgb2YgdGhlIHRvcCBwYW5lbCB0aGF0IHJlcHJlc2VudCB0aGUgY3VycmVudCBwb3dlciBwcm9maWxlIiwKICAibmFtZSI6ICJQb3dlciBQcm9maWxlcyBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInBvd2VyLXByb2ZpbGUtaW5kaWNhdG9yQGxhdXgud3RmIiwKICAidXVpZC1kZXYiOiAicG93ZXItcHJvZmlsZS1pbmRpY2F0b3ItZGV2QGxhdXgud3RmIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "41": {"version": "9", "sha256": "0011yqa1v2ymfczzmd2vckmqdpk1wapdzhg6l7453fnd25v7xxa9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImEgc2ltcGxlIGluZGljYXRvciBpbiB0aGUgc3lzdGVtIGljb25zIGFyZWEgb2YgdGhlIHRvcCBwYW5lbCB0aGF0IHJlcHJlc2VudCB0aGUgY3VycmVudCBwb3dlciBwcm9maWxlIiwKICAibmFtZSI6ICJQb3dlciBQcm9maWxlcyBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInBvd2VyLXByb2ZpbGUtaW5kaWNhdG9yQGxhdXgud3RmIiwKICAidXVpZC1kZXYiOiAicG93ZXItcHJvZmlsZS1pbmRpY2F0b3ItZGV2QGxhdXgud3RmIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "42": {"version": "9", "sha256": "0011yqa1v2ymfczzmd2vckmqdpk1wapdzhg6l7453fnd25v7xxa9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImEgc2ltcGxlIGluZGljYXRvciBpbiB0aGUgc3lzdGVtIGljb25zIGFyZWEgb2YgdGhlIHRvcCBwYW5lbCB0aGF0IHJlcHJlc2VudCB0aGUgY3VycmVudCBwb3dlciBwcm9maWxlIiwKICAibmFtZSI6ICJQb3dlciBQcm9maWxlcyBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInBvd2VyLXByb2ZpbGUtaW5kaWNhdG9yQGxhdXgud3RmIiwKICAidXVpZC1kZXYiOiAicG93ZXItcHJvZmlsZS1pbmRpY2F0b3ItZGV2QGxhdXgud3RmIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "43": {"version": "9", "sha256": "0011yqa1v2ymfczzmd2vckmqdpk1wapdzhg6l7453fnd25v7xxa9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImEgc2ltcGxlIGluZGljYXRvciBpbiB0aGUgc3lzdGVtIGljb25zIGFyZWEgb2YgdGhlIHRvcCBwYW5lbCB0aGF0IHJlcHJlc2VudCB0aGUgY3VycmVudCBwb3dlciBwcm9maWxlIiwKICAibmFtZSI6ICJQb3dlciBQcm9maWxlcyBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInBvd2VyLXByb2ZpbGUtaW5kaWNhdG9yQGxhdXgud3RmIiwKICAidXVpZC1kZXYiOiAicG93ZXItcHJvZmlsZS1pbmRpY2F0b3ItZGV2QGxhdXgud3RmIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
-, {"uuid": "widgets@aylur", "name": "Aylur's Widgets", "pname": "aylurs-widgets", "description": "My set of extensions: Battery Bar, Dash Board, DateMenu Mod, Media Player, Power Menu, Workspace Indicator.\n\n Battery-Bar only works on laptops, on desktop it only hides the shutdown icon.\n Dash Boards shortcut is Super+d by default, however, you can change it through dconf. You can change the links aswell through dconf editor, if you want your own icon find an svg and name it theNameYouGaveItInDconf-symbolic.svg.\n You can set what source Media Player prefers, it is the players d-bus name, though the full name is not needed, but capitals matter(? im not sure), examples: Amberol, firefox, spotify, Spot.\n Workspace Indicator is a fork of this: https://github.com/fthx/workspaces-bar.\n Disclaimer: this extension contains copyrighted icons.", "link": "https://extensions.gnome.org/extension/5338/aylurs-widgets/", "shell_version_map": {"42": {"version": "5", "sha256": "04wdz6xmza7z4bqaafncz6qvx3vvgp1ryw52ykvmj3v4zcb82fni", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk15IHNldCBvZiBleHRlbnNpb25zOiBCYXR0ZXJ5IEJhciwgRGFzaCBCb2FyZCwgRGF0ZU1lbnUgTW9kLCBNZWRpYSBQbGF5ZXIsIFBvd2VyIE1lbnUsIFdvcmtzcGFjZSBJbmRpY2F0b3IuXG5cbiBCYXR0ZXJ5LUJhciBvbmx5IHdvcmtzIG9uIGxhcHRvcHMsIG9uIGRlc2t0b3AgaXQgb25seSBoaWRlcyB0aGUgc2h1dGRvd24gaWNvbi5cbiBEYXNoIEJvYXJkcyBzaG9ydGN1dCBpcyBTdXBlcitkIGJ5IGRlZmF1bHQsIGhvd2V2ZXIsIHlvdSBjYW4gY2hhbmdlIGl0IHRocm91Z2ggZGNvbmYuIFlvdSBjYW4gY2hhbmdlIHRoZSBsaW5rcyBhc3dlbGwgdGhyb3VnaCBkY29uZiBlZGl0b3IsIGlmIHlvdSB3YW50IHlvdXIgb3duIGljb24gZmluZCBhbiBzdmcgYW5kIG5hbWUgaXQgdGhlTmFtZVlvdUdhdmVJdEluRGNvbmYtc3ltYm9saWMuc3ZnLlxuIFlvdSBjYW4gc2V0IHdoYXQgc291cmNlIE1lZGlhIFBsYXllciBwcmVmZXJzLCBpdCBpcyB0aGUgcGxheWVycyBkLWJ1cyBuYW1lLCB0aG91Z2ggdGhlIGZ1bGwgbmFtZSBpcyBub3QgbmVlZGVkLCBidXQgY2FwaXRhbHMgbWF0dGVyKD8gaW0gbm90IHN1cmUpLCBleGFtcGxlczogQW1iZXJvbCwgZmlyZWZveCwgc3BvdGlmeSwgU3BvdC5cbiBXb3Jrc3BhY2UgSW5kaWNhdG9yIGlzIGEgZm9yayBvZiB0aGlzOiBodHRwczovL2dpdGh1Yi5jb20vZnRoeC93b3Jrc3BhY2VzLWJhci5cbiBEaXNjbGFpbWVyOiB0aGlzIGV4dGVuc2lvbiBjb250YWlucyBjb3B5cmlnaHRlZCBpY29ucy4iLAogICJuYW1lIjogIkF5bHVyJ3MgV2lkZ2V0cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5heWx1cnMtd2lkZ2V0cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQXlsdXIvZ25vbWUtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid2lkZ2V0c0BheWx1ciIsCiAgInZlcnNpb24iOiA1Cn0="}, "43": {"version": "5", "sha256": "04wdz6xmza7z4bqaafncz6qvx3vvgp1ryw52ykvmj3v4zcb82fni", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk15IHNldCBvZiBleHRlbnNpb25zOiBCYXR0ZXJ5IEJhciwgRGFzaCBCb2FyZCwgRGF0ZU1lbnUgTW9kLCBNZWRpYSBQbGF5ZXIsIFBvd2VyIE1lbnUsIFdvcmtzcGFjZSBJbmRpY2F0b3IuXG5cbiBCYXR0ZXJ5LUJhciBvbmx5IHdvcmtzIG9uIGxhcHRvcHMsIG9uIGRlc2t0b3AgaXQgb25seSBoaWRlcyB0aGUgc2h1dGRvd24gaWNvbi5cbiBEYXNoIEJvYXJkcyBzaG9ydGN1dCBpcyBTdXBlcitkIGJ5IGRlZmF1bHQsIGhvd2V2ZXIsIHlvdSBjYW4gY2hhbmdlIGl0IHRocm91Z2ggZGNvbmYuIFlvdSBjYW4gY2hhbmdlIHRoZSBsaW5rcyBhc3dlbGwgdGhyb3VnaCBkY29uZiBlZGl0b3IsIGlmIHlvdSB3YW50IHlvdXIgb3duIGljb24gZmluZCBhbiBzdmcgYW5kIG5hbWUgaXQgdGhlTmFtZVlvdUdhdmVJdEluRGNvbmYtc3ltYm9saWMuc3ZnLlxuIFlvdSBjYW4gc2V0IHdoYXQgc291cmNlIE1lZGlhIFBsYXllciBwcmVmZXJzLCBpdCBpcyB0aGUgcGxheWVycyBkLWJ1cyBuYW1lLCB0aG91Z2ggdGhlIGZ1bGwgbmFtZSBpcyBub3QgbmVlZGVkLCBidXQgY2FwaXRhbHMgbWF0dGVyKD8gaW0gbm90IHN1cmUpLCBleGFtcGxlczogQW1iZXJvbCwgZmlyZWZveCwgc3BvdGlmeSwgU3BvdC5cbiBXb3Jrc3BhY2UgSW5kaWNhdG9yIGlzIGEgZm9yayBvZiB0aGlzOiBodHRwczovL2dpdGh1Yi5jb20vZnRoeC93b3Jrc3BhY2VzLWJhci5cbiBEaXNjbGFpbWVyOiB0aGlzIGV4dGVuc2lvbiBjb250YWlucyBjb3B5cmlnaHRlZCBpY29ucy4iLAogICJuYW1lIjogIkF5bHVyJ3MgV2lkZ2V0cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5heWx1cnMtd2lkZ2V0cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQXlsdXIvZ25vbWUtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid2lkZ2V0c0BheWx1ciIsCiAgInZlcnNpb24iOiA1Cn0="}}}
+, {"uuid": "widgets@aylur", "name": "Aylur's Widgets", "pname": "aylurs-widgets", "description": "My set of extensions: Battery Bar, Dash Board, DateMenu Mod, Media Player, Power Menu, Workspace Indicator, Notification Indicator, Modified Quick Settings.\n\n Battery-Bar only works on laptops, on desktop it only hides the shutdown icon.\n Dash Boards shortcut is Super+d by default, however, you can change it through dconf. You can change the links aswell through dconf editor, if you want your own icon find an svg and name it theNameYouGaveItInDconf-symbolic.svg.\n You can set what source Media Player prefers, it is the players d-bus name, though the full name is not needed, but capitals matter(? im not sure), examples: Amberol, firefox, spotify, Spot.\n Disclaimer: this extension contains copyrighted icons.", "link": "https://extensions.gnome.org/extension/5338/aylurs-widgets/", "shell_version_map": {"42": {"version": "5", "sha256": "1wci9ij48nhak3f2clsm373wxnsiwz4fm7vv9npbl455asgdvkfd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk15IHNldCBvZiBleHRlbnNpb25zOiBCYXR0ZXJ5IEJhciwgRGFzaCBCb2FyZCwgRGF0ZU1lbnUgTW9kLCBNZWRpYSBQbGF5ZXIsIFBvd2VyIE1lbnUsIFdvcmtzcGFjZSBJbmRpY2F0b3IsIE5vdGlmaWNhdGlvbiBJbmRpY2F0b3IsIE1vZGlmaWVkIFF1aWNrIFNldHRpbmdzLlxuXG4gQmF0dGVyeS1CYXIgb25seSB3b3JrcyBvbiBsYXB0b3BzLCBvbiBkZXNrdG9wIGl0IG9ubHkgaGlkZXMgdGhlIHNodXRkb3duIGljb24uXG4gRGFzaCBCb2FyZHMgc2hvcnRjdXQgaXMgU3VwZXIrZCBieSBkZWZhdWx0LCBob3dldmVyLCB5b3UgY2FuIGNoYW5nZSBpdCB0aHJvdWdoIGRjb25mLiBZb3UgY2FuIGNoYW5nZSB0aGUgbGlua3MgYXN3ZWxsIHRocm91Z2ggZGNvbmYgZWRpdG9yLCBpZiB5b3Ugd2FudCB5b3VyIG93biBpY29uIGZpbmQgYW4gc3ZnIGFuZCBuYW1lIGl0IHRoZU5hbWVZb3VHYXZlSXRJbkRjb25mLXN5bWJvbGljLnN2Zy5cbiBZb3UgY2FuIHNldCB3aGF0IHNvdXJjZSBNZWRpYSBQbGF5ZXIgcHJlZmVycywgaXQgaXMgdGhlIHBsYXllcnMgZC1idXMgbmFtZSwgdGhvdWdoIHRoZSBmdWxsIG5hbWUgaXMgbm90IG5lZWRlZCwgYnV0IGNhcGl0YWxzIG1hdHRlcig/IGltIG5vdCBzdXJlKSwgZXhhbXBsZXM6IEFtYmVyb2wsIGZpcmVmb3gsIHNwb3RpZnksIFNwb3QuXG4gRGlzY2xhaW1lcjogdGhpcyBleHRlbnNpb24gY29udGFpbnMgY29weXJpZ2h0ZWQgaWNvbnMuIiwKICAibmFtZSI6ICJBeWx1cidzIFdpZGdldHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXlsdXJzLXdpZGdldHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIiwKICAgICI0MyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0F5bHVyL2dub21lLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogIndpZGdldHNAYXlsdXIiLAogICJ2ZXJzaW9uIjogNQp9"}, "43": {"version": "8", "sha256": "1m4r94r2hgryrx9vniaykjyhwclhxsh8ml6yjc2yx5f2kygfp3d6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk15IHNldCBvZiBleHRlbnNpb25zOiBCYXR0ZXJ5IEJhciwgRGFzaCBCb2FyZCwgRGF0ZU1lbnUgTW9kLCBNZWRpYSBQbGF5ZXIsIFBvd2VyIE1lbnUsIFdvcmtzcGFjZSBJbmRpY2F0b3IsIE5vdGlmaWNhdGlvbiBJbmRpY2F0b3IsIE1vZGlmaWVkIFF1aWNrIFNldHRpbmdzLlxuXG4gQmF0dGVyeS1CYXIgb25seSB3b3JrcyBvbiBsYXB0b3BzLCBvbiBkZXNrdG9wIGl0IG9ubHkgaGlkZXMgdGhlIHNodXRkb3duIGljb24uXG4gRGFzaCBCb2FyZHMgc2hvcnRjdXQgaXMgU3VwZXIrZCBieSBkZWZhdWx0LCBob3dldmVyLCB5b3UgY2FuIGNoYW5nZSBpdCB0aHJvdWdoIGRjb25mLiBZb3UgY2FuIGNoYW5nZSB0aGUgbGlua3MgYXN3ZWxsIHRocm91Z2ggZGNvbmYgZWRpdG9yLCBpZiB5b3Ugd2FudCB5b3VyIG93biBpY29uIGZpbmQgYW4gc3ZnIGFuZCBuYW1lIGl0IHRoZU5hbWVZb3VHYXZlSXRJbkRjb25mLXN5bWJvbGljLnN2Zy5cbiBZb3UgY2FuIHNldCB3aGF0IHNvdXJjZSBNZWRpYSBQbGF5ZXIgcHJlZmVycywgaXQgaXMgdGhlIHBsYXllcnMgZC1idXMgbmFtZSwgdGhvdWdoIHRoZSBmdWxsIG5hbWUgaXMgbm90IG5lZWRlZCwgYnV0IGNhcGl0YWxzIG1hdHRlcig/IGltIG5vdCBzdXJlKSwgZXhhbXBsZXM6IEFtYmVyb2wsIGZpcmVmb3gsIHNwb3RpZnksIFNwb3QuXG4gRGlzY2xhaW1lcjogdGhpcyBleHRlbnNpb24gY29udGFpbnMgY29weXJpZ2h0ZWQgaWNvbnMuIiwKICAibmFtZSI6ICJBeWx1cidzIFdpZGdldHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXlsdXJzLXdpZGdldHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQXlsdXIvZ25vbWUtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid2lkZ2V0c0BheWx1ciIsCiAgInZlcnNpb24iOiA4Cn0="}}}
 , {"uuid": "supergfxctl-gex@asus-linux.org", "name": "Super Graphics Control", "pname": "supergfxctl-gex", "description": "supergfxctl-gex is a frontend for supergfxctl that was born inside the asus-linux.org community. supergfxctl is required for this extension to work. It is tested on a variaty of laptops including Intel / Nvidia, AMD / Nvidia, Intel / AMD and AMD / AMD GPU combinations.\n\nIt is a platform agnostic tool for hybrid graphics laptops.\n\nsupergfxctl gets packages by the community for Fedora and Arch. But without much of a hastle can be compiled for every systemd based Linux distribution.\n\nTo learn more about it, please have a look at:\n\nhttps://gitlab.com/asus-linux/supergfxctl\nhttps://asus-linux.org/", "link": "https://extensions.gnome.org/extension/5344/supergfxctl-gex/", "shell_version_map": {"40": {"version": "14", "sha256": "04nqgpay9j7jcin85rjbnpbn7nppf995pr8hrczhj1jnk51ij769", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInN1cGVyZ2Z4Y3RsLWdleCBpcyBhIGZyb250ZW5kIGZvciBzdXBlcmdmeGN0bCB0aGF0IHdhcyBib3JuIGluc2lkZSB0aGUgYXN1cy1saW51eC5vcmcgY29tbXVuaXR5LiBzdXBlcmdmeGN0bCBpcyByZXF1aXJlZCBmb3IgdGhpcyBleHRlbnNpb24gdG8gd29yay4gSXQgaXMgdGVzdGVkIG9uIGEgdmFyaWF0eSBvZiBsYXB0b3BzIGluY2x1ZGluZyBJbnRlbCAvIE52aWRpYSwgQU1EIC8gTnZpZGlhLCBJbnRlbCAvIEFNRCBhbmQgQU1EIC8gQU1EIEdQVSBjb21iaW5hdGlvbnMuXG5cbkl0IGlzIGEgcGxhdGZvcm0gYWdub3N0aWMgdG9vbCBmb3IgaHlicmlkIGdyYXBoaWNzIGxhcHRvcHMuXG5cbnN1cGVyZ2Z4Y3RsIGdldHMgcGFja2FnZXMgYnkgdGhlIGNvbW11bml0eSBmb3IgRmVkb3JhIGFuZCBBcmNoLiBCdXQgd2l0aG91dCBtdWNoIG9mIGEgaGFzdGxlIGNhbiBiZSBjb21waWxlZCBmb3IgZXZlcnkgc3lzdGVtZCBiYXNlZCBMaW51eCBkaXN0cmlidXRpb24uXG5cblRvIGxlYXJuIG1vcmUgYWJvdXQgaXQsIHBsZWFzZSBoYXZlIGEgbG9vayBhdDpcblxuaHR0cHM6Ly9naXRsYWIuY29tL2FzdXMtbGludXgvc3VwZXJnZnhjdGxcbmh0dHBzOi8vYXN1cy1saW51eC5vcmcvIiwKICAibmFtZSI6ICJTdXBlciBHcmFwaGljcyBDb250cm9sIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnN1cGVyZ2Z4Y3RsLWdleCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJzdXBlcmdmeGN0bC1nZXhAYXN1cy1saW51eC5vcmciLAogICJ1dWlkLWRldiI6ICJzdXBlcmdmeGN0bC1nZXgtZGV2QGFzdXMtbGludXgub3JnIiwKICAidmVyc2lvbiI6IDE0Cn0="}, "41": {"version": "14", "sha256": "04nqgpay9j7jcin85rjbnpbn7nppf995pr8hrczhj1jnk51ij769", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInN1cGVyZ2Z4Y3RsLWdleCBpcyBhIGZyb250ZW5kIGZvciBzdXBlcmdmeGN0bCB0aGF0IHdhcyBib3JuIGluc2lkZSB0aGUgYXN1cy1saW51eC5vcmcgY29tbXVuaXR5LiBzdXBlcmdmeGN0bCBpcyByZXF1aXJlZCBmb3IgdGhpcyBleHRlbnNpb24gdG8gd29yay4gSXQgaXMgdGVzdGVkIG9uIGEgdmFyaWF0eSBvZiBsYXB0b3BzIGluY2x1ZGluZyBJbnRlbCAvIE52aWRpYSwgQU1EIC8gTnZpZGlhLCBJbnRlbCAvIEFNRCBhbmQgQU1EIC8gQU1EIEdQVSBjb21iaW5hdGlvbnMuXG5cbkl0IGlzIGEgcGxhdGZvcm0gYWdub3N0aWMgdG9vbCBmb3IgaHlicmlkIGdyYXBoaWNzIGxhcHRvcHMuXG5cbnN1cGVyZ2Z4Y3RsIGdldHMgcGFja2FnZXMgYnkgdGhlIGNvbW11bml0eSBmb3IgRmVkb3JhIGFuZCBBcmNoLiBCdXQgd2l0aG91dCBtdWNoIG9mIGEgaGFzdGxlIGNhbiBiZSBjb21waWxlZCBmb3IgZXZlcnkgc3lzdGVtZCBiYXNlZCBMaW51eCBkaXN0cmlidXRpb24uXG5cblRvIGxlYXJuIG1vcmUgYWJvdXQgaXQsIHBsZWFzZSBoYXZlIGEgbG9vayBhdDpcblxuaHR0cHM6Ly9naXRsYWIuY29tL2FzdXMtbGludXgvc3VwZXJnZnhjdGxcbmh0dHBzOi8vYXN1cy1saW51eC5vcmcvIiwKICAibmFtZSI6ICJTdXBlciBHcmFwaGljcyBDb250cm9sIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnN1cGVyZ2Z4Y3RsLWdleCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJzdXBlcmdmeGN0bC1nZXhAYXN1cy1saW51eC5vcmciLAogICJ1dWlkLWRldiI6ICJzdXBlcmdmeGN0bC1nZXgtZGV2QGFzdXMtbGludXgub3JnIiwKICAidmVyc2lvbiI6IDE0Cn0="}, "42": {"version": "14", "sha256": "04nqgpay9j7jcin85rjbnpbn7nppf995pr8hrczhj1jnk51ij769", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInN1cGVyZ2Z4Y3RsLWdleCBpcyBhIGZyb250ZW5kIGZvciBzdXBlcmdmeGN0bCB0aGF0IHdhcyBib3JuIGluc2lkZSB0aGUgYXN1cy1saW51eC5vcmcgY29tbXVuaXR5LiBzdXBlcmdmeGN0bCBpcyByZXF1aXJlZCBmb3IgdGhpcyBleHRlbnNpb24gdG8gd29yay4gSXQgaXMgdGVzdGVkIG9uIGEgdmFyaWF0eSBvZiBsYXB0b3BzIGluY2x1ZGluZyBJbnRlbCAvIE52aWRpYSwgQU1EIC8gTnZpZGlhLCBJbnRlbCAvIEFNRCBhbmQgQU1EIC8gQU1EIEdQVSBjb21iaW5hdGlvbnMuXG5cbkl0IGlzIGEgcGxhdGZvcm0gYWdub3N0aWMgdG9vbCBmb3IgaHlicmlkIGdyYXBoaWNzIGxhcHRvcHMuXG5cbnN1cGVyZ2Z4Y3RsIGdldHMgcGFja2FnZXMgYnkgdGhlIGNvbW11bml0eSBmb3IgRmVkb3JhIGFuZCBBcmNoLiBCdXQgd2l0aG91dCBtdWNoIG9mIGEgaGFzdGxlIGNhbiBiZSBjb21waWxlZCBmb3IgZXZlcnkgc3lzdGVtZCBiYXNlZCBMaW51eCBkaXN0cmlidXRpb24uXG5cblRvIGxlYXJuIG1vcmUgYWJvdXQgaXQsIHBsZWFzZSBoYXZlIGEgbG9vayBhdDpcblxuaHR0cHM6Ly9naXRsYWIuY29tL2FzdXMtbGludXgvc3VwZXJnZnhjdGxcbmh0dHBzOi8vYXN1cy1saW51eC5vcmcvIiwKICAibmFtZSI6ICJTdXBlciBHcmFwaGljcyBDb250cm9sIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnN1cGVyZ2Z4Y3RsLWdleCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJzdXBlcmdmeGN0bC1nZXhAYXN1cy1saW51eC5vcmciLAogICJ1dWlkLWRldiI6ICJzdXBlcmdmeGN0bC1nZXgtZGV2QGFzdXMtbGludXgub3JnIiwKICAidmVyc2lvbiI6IDE0Cn0="}, "43": {"version": "15", "sha256": "1yicf1ivdl0jrl3kijjgbvvmvqr0kz2hf9y7dqgxcj9w5ynsmaqm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInN1cGVyZ2Z4Y3RsLWdleCBpcyBhIGZyb250ZW5kIGZvciBzdXBlcmdmeGN0bCB0aGF0IHdhcyBib3JuIGluc2lkZSB0aGUgYXN1cy1saW51eC5vcmcgY29tbXVuaXR5LiBzdXBlcmdmeGN0bCBpcyByZXF1aXJlZCBmb3IgdGhpcyBleHRlbnNpb24gdG8gd29yay4gSXQgaXMgdGVzdGVkIG9uIGEgdmFyaWF0eSBvZiBsYXB0b3BzIGluY2x1ZGluZyBJbnRlbCAvIE52aWRpYSwgQU1EIC8gTnZpZGlhLCBJbnRlbCAvIEFNRCBhbmQgQU1EIC8gQU1EIEdQVSBjb21iaW5hdGlvbnMuXG5cbkl0IGlzIGEgcGxhdGZvcm0gYWdub3N0aWMgdG9vbCBmb3IgaHlicmlkIGdyYXBoaWNzIGxhcHRvcHMuXG5cbnN1cGVyZ2Z4Y3RsIGdldHMgcGFja2FnZXMgYnkgdGhlIGNvbW11bml0eSBmb3IgRmVkb3JhIGFuZCBBcmNoLiBCdXQgd2l0aG91dCBtdWNoIG9mIGEgaGFzdGxlIGNhbiBiZSBjb21waWxlZCBmb3IgZXZlcnkgc3lzdGVtZCBiYXNlZCBMaW51eCBkaXN0cmlidXRpb24uXG5cblRvIGxlYXJuIG1vcmUgYWJvdXQgaXQsIHBsZWFzZSBoYXZlIGEgbG9vayBhdDpcblxuaHR0cHM6Ly9naXRsYWIuY29tL2FzdXMtbGludXgvc3VwZXJnZnhjdGxcbmh0dHBzOi8vYXN1cy1saW51eC5vcmcvIiwKICAibmFtZSI6ICJTdXBlciBHcmFwaGljcyBDb250cm9sIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnN1cGVyZ2Z4Y3RsLWdleCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDMiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic3VwZXJnZnhjdGwtZ2V4QGFzdXMtbGludXgub3JnIiwKICAidXVpZC1kZXYiOiAic3VwZXJnZnhjdGwtZ2V4LWRldkBhc3VzLWxpbnV4Lm9yZyIsCiAgInZlcnNpb24iOiAxNQp9"}}}
 , {"uuid": "dotspaces@charlieqle", "name": "Dotspaces", "pname": "dotspaces", "description": "A simple workspace switcher", "link": "https://extensions.gnome.org/extension/5347/dotspaces/", "shell_version_map": {"42": {"version": "4", "sha256": "1v783xic2qj73lgkgkfngjw3gi34227cxqilgr4g11my21a553jd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc2ltcGxlIHdvcmtzcGFjZSBzd2l0Y2hlciIsCiAgIm5hbWUiOiAiRG90c3BhY2VzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRvdHNwYWNlcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQ2hhcmxpZVFMZS9nbm9tZS1leHRlbnNpb24tZG90c3BhY2VzIiwKICAidXVpZCI6ICJkb3RzcGFjZXNAY2hhcmxpZXFsZSIsCiAgInZlcnNpb24iOiA0Cn0="}, "43": {"version": "4", "sha256": "1v783xic2qj73lgkgkfngjw3gi34227cxqilgr4g11my21a553jd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc2ltcGxlIHdvcmtzcGFjZSBzd2l0Y2hlciIsCiAgIm5hbWUiOiAiRG90c3BhY2VzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRvdHNwYWNlcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQ2hhcmxpZVFMZS9nbm9tZS1leHRlbnNpb24tZG90c3BhY2VzIiwKICAidXVpZCI6ICJkb3RzcGFjZXNAY2hhcmxpZXFsZSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "window-state-manager@kishorv06.github.io", "name": "Window State Manager", "pname": "window-state-manager", "description": "Automatically remember and restore window state and positions. Useful when using Gnome with wayland in a multi-monitor setup. Some applications won't remember their location when monitors are connected or disconnected. This extension solves that problem by saving window state periodically and restoring it when screen arrangement is changed.", "link": "https://extensions.gnome.org/extension/5353/window-state-manager/", "shell_version_map": {"42": {"version": "2", "sha256": "1p6rwpqnysv2kb4yyjmivfpr09jn3g0zf6020fkm84azh3gp5ccb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgcmVtZW1iZXIgYW5kIHJlc3RvcmUgd2luZG93IHN0YXRlIGFuZCBwb3NpdGlvbnMuIFVzZWZ1bCB3aGVuIHVzaW5nIEdub21lIHdpdGggd2F5bGFuZCBpbiBhIG11bHRpLW1vbml0b3Igc2V0dXAuIFNvbWUgYXBwbGljYXRpb25zIHdvbid0IHJlbWVtYmVyIHRoZWlyIGxvY2F0aW9uIHdoZW4gbW9uaXRvcnMgYXJlIGNvbm5lY3RlZCBvciBkaXNjb25uZWN0ZWQuIFRoaXMgZXh0ZW5zaW9uIHNvbHZlcyB0aGF0IHByb2JsZW0gYnkgc2F2aW5nIHdpbmRvdyBzdGF0ZSBwZXJpb2RpY2FsbHkgYW5kIHJlc3RvcmluZyBpdCB3aGVuIHNjcmVlbiBhcnJhbmdlbWVudCBpcyBjaGFuZ2VkLiIsCiAgIm5hbWUiOiAiV2luZG93IFN0YXRlIE1hbmFnZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2lzaG9ydjA2L3dpbmRvdy1zdGF0ZS1tYW5hZ2VyIiwKICAidXVpZCI6ICJ3aW5kb3ctc3RhdGUtbWFuYWdlckBraXNob3J2MDYuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "vpn-status@peterroux.com", "name": "VPN Status", "pname": "vpn-status", "description": "A VPN Status indicator.", "link": "https://extensions.gnome.org/extension/5356/vpn-status/", "shell_version_map": {"38": {"version": "2", "sha256": "09qfrs7wi5sn8dgz7806x3wqfyq62f1gfl0jfwwnypkmcqc7rigv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgVlBOIFN0YXR1cyBpbmRpY2F0b3IuIiwKICAibmFtZSI6ICJWUE4gU3RhdHVzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAidnBuLXN0YXR1c0BwZXRlcnJvdXguY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "09qfrs7wi5sn8dgz7806x3wqfyq62f1gfl0jfwwnypkmcqc7rigv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgVlBOIFN0YXR1cyBpbmRpY2F0b3IuIiwKICAibmFtZSI6ICJWUE4gU3RhdHVzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAidnBuLXN0YXR1c0BwZXRlcnJvdXguY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "42": {"version": "2", "sha256": "09qfrs7wi5sn8dgz7806x3wqfyq62f1gfl0jfwwnypkmcqc7rigv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgVlBOIFN0YXR1cyBpbmRpY2F0b3IuIiwKICAibmFtZSI6ICJWUE4gU3RhdHVzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAidnBuLXN0YXR1c0BwZXRlcnJvdXguY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
-, {"uuid": "smartlock@huy.im", "name": "Bluetooth Smart Lock", "pname": "bluetooth-smart-lock", "description": "Dynamic lock for GNOME. Use your smart phone/watch/band to lock your desktop automatically when you step away.\n\nWhen your device is out of bluetooth range or get disconnected, it will lock your desktop automatically.", "link": "https://extensions.gnome.org/extension/5359/bluetooth-smart-lock/", "shell_version_map": {"42": {"version": "10", "sha256": "0mdj6w84lv0nb9r38w6pgc1102kzc9s35068jhlalrgk1fi07wn0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkR5bmFtaWMgbG9jayBmb3IgR05PTUUuIFVzZSB5b3VyIHNtYXJ0IHBob25lL3dhdGNoL2JhbmQgdG8gbG9jayB5b3VyIGRlc2t0b3AgYXV0b21hdGljYWxseSB3aGVuIHlvdSBzdGVwIGF3YXkuXG5cbldoZW4geW91ciBkZXZpY2UgaXMgb3V0IG9mIGJsdWV0b290aCByYW5nZSBvciBnZXQgZGlzY29ubmVjdGVkLCBpdCB3aWxsIGxvY2sgeW91ciBkZXNrdG9wIGF1dG9tYXRpY2FsbHkuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmx1ZXRvb3RoLXNtYXJ0bG9jayIsCiAgIm5hbWUiOiAiQmx1ZXRvb3RoIFNtYXJ0IExvY2siLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYmx1ZXRvb3RoX3NtYXJ0bG9jayIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iYTBmMy9nbm9tZS1ibHVldG9vdGgtc21hcnRsb2NrIiwKICAidXVpZCI6ICJzbWFydGxvY2tAaHV5LmltIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
-, {"uuid": "gnome-wireguard-extension@SJBERTRAND.github.com", "name": "WireGuard-VPN-extension", "pname": "wireguard-vpn-extension", "description": "Enable/Disable Wireguard tunnels", "link": "https://extensions.gnome.org/extension/5362/wireguard-vpn-extension/", "shell_version_map": {"42": {"version": "3", "sha256": "1sl91ixz4bas8wbwxbjcsdawax43kynywxmwnkhnwdzq282a9rdv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZS9EaXNhYmxlIFdpcmVndWFyZCB0dW5uZWxzIiwKICAibmFtZSI6ICJXaXJlR3VhcmQtVlBOLWV4dGVuc2lvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vU0pCRVJUUkFORC9nbm9tZS13aXJlZ3VhcmQtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJnbm9tZS13aXJlZ3VhcmQtZXh0ZW5zaW9uQFNKQkVSVFJBTkQuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}, "43": {"version": "3", "sha256": "1sl91ixz4bas8wbwxbjcsdawax43kynywxmwnkhnwdzq282a9rdv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZS9EaXNhYmxlIFdpcmVndWFyZCB0dW5uZWxzIiwKICAibmFtZSI6ICJXaXJlR3VhcmQtVlBOLWV4dGVuc2lvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vU0pCRVJUUkFORC9nbm9tZS13aXJlZ3VhcmQtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJnbm9tZS13aXJlZ3VhcmQtZXh0ZW5zaW9uQFNKQkVSVFJBTkQuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}}}
-, {"uuid": "memento-mori@paveloom", "name": "Memento Mori", "pname": "memento-mori", "description": "Make every second of your life count. Literally!\n\nThis extension adds a counter to the panel which counts down the time you have left based on your birthday and life expectancy.", "link": "https://extensions.gnome.org/extension/5365/memento-mori/", "shell_version_map": {"42": {"version": "3", "sha256": "0ddqh45ha600ghzaxs59gf2nmgxswxmbcyrkjg4zxfm41345wfsi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgZXZlcnkgc2Vjb25kIG9mIHlvdXIgbGlmZSBjb3VudC4gTGl0ZXJhbGx5IVxuXG5UaGlzIGV4dGVuc2lvbiBhZGRzIGEgY291bnRlciB0byB0aGUgcGFuZWwgd2hpY2ggY291bnRzIGRvd24gdGhlIHRpbWUgeW91IGhhdmUgbGVmdCBiYXNlZCBvbiB5b3VyIGJpcnRoZGF5IGFuZCBsaWZlIGV4cGVjdGFuY3kuIiwKICAibmFtZSI6ICJNZW1lbnRvIE1vcmkiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubWVtZW50by1tb3JpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9wYXZlbG9vbS10L2dub21lLXNoZWxsLW1lbWVudG8tbW9yaSIsCiAgInV1aWQiOiAibWVtZW50by1tb3JpQHBhdmVsb29tIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "43": {"version": "3", "sha256": "0ddqh45ha600ghzaxs59gf2nmgxswxmbcyrkjg4zxfm41345wfsi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgZXZlcnkgc2Vjb25kIG9mIHlvdXIgbGlmZSBjb3VudC4gTGl0ZXJhbGx5IVxuXG5UaGlzIGV4dGVuc2lvbiBhZGRzIGEgY291bnRlciB0byB0aGUgcGFuZWwgd2hpY2ggY291bnRzIGRvd24gdGhlIHRpbWUgeW91IGhhdmUgbGVmdCBiYXNlZCBvbiB5b3VyIGJpcnRoZGF5IGFuZCBsaWZlIGV4cGVjdGFuY3kuIiwKICAibmFtZSI6ICJNZW1lbnRvIE1vcmkiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubWVtZW50by1tb3JpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9wYXZlbG9vbS10L2dub21lLXNoZWxsLW1lbWVudG8tbW9yaSIsCiAgInV1aWQiOiAibWVtZW50by1tb3JpQHBhdmVsb29tIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
-, {"uuid": "external-ip-extension@ipcan.cyou", "name": "Show External IP", "pname": "show-external-ip-thisipcancyou", "description": "Displays your external IP in the Toolbar and sends a system notification if changed.\n\nThe extension uses the free thisipcan.cyou service and refreshes every 2 mins. This extension is handy for those work at different locations or with different VPNs to quickly see your public IP.", "link": "https://extensions.gnome.org/extension/5368/show-external-ip-thisipcancyou/", "shell_version_map": {"40": {"version": "4", "sha256": "01bkf1ylylq6jx4ipa8lv71q084hk8m5dfinkksp4lsa85ra4wkx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHlvdXIgZXh0ZXJuYWwgSVAgaW4gdGhlIFRvb2xiYXIgYW5kIHNlbmRzIGEgc3lzdGVtIG5vdGlmaWNhdGlvbiBpZiBjaGFuZ2VkLlxuXG5UaGUgZXh0ZW5zaW9uIHVzZXMgdGhlIGZyZWUgdGhpc2lwY2FuLmN5b3Ugc2VydmljZSBhbmQgcmVmcmVzaGVzIGV2ZXJ5IDIgbWlucy4gVGhpcyBleHRlbnNpb24gaXMgaGFuZHkgZm9yIHRob3NlIHdvcmsgYXQgZGlmZmVyZW50IGxvY2F0aW9ucyBvciB3aXRoIGRpZmZlcmVudCBWUE5zIHRvIHF1aWNrbHkgc2VlIHlvdXIgcHVibGljIElQLiIsCiAgImdldHRleHQtZG9tYWluIjogImV4dGVybmFsLWlwLW5vdGlmaWNhdGlvbiIsCiAgIm5hbWUiOiAiU2hvdyBFeHRlcm5hbCBJUCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2N3aXR0ZW5iZXJnL3RoaXNpcGNhbi5jeW91IiwKICAidXVpZCI6ICJleHRlcm5hbC1pcC1leHRlbnNpb25AaXBjYW4uY3lvdSIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "01bkf1ylylq6jx4ipa8lv71q084hk8m5dfinkksp4lsa85ra4wkx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHlvdXIgZXh0ZXJuYWwgSVAgaW4gdGhlIFRvb2xiYXIgYW5kIHNlbmRzIGEgc3lzdGVtIG5vdGlmaWNhdGlvbiBpZiBjaGFuZ2VkLlxuXG5UaGUgZXh0ZW5zaW9uIHVzZXMgdGhlIGZyZWUgdGhpc2lwY2FuLmN5b3Ugc2VydmljZSBhbmQgcmVmcmVzaGVzIGV2ZXJ5IDIgbWlucy4gVGhpcyBleHRlbnNpb24gaXMgaGFuZHkgZm9yIHRob3NlIHdvcmsgYXQgZGlmZmVyZW50IGxvY2F0aW9ucyBvciB3aXRoIGRpZmZlcmVudCBWUE5zIHRvIHF1aWNrbHkgc2VlIHlvdXIgcHVibGljIElQLiIsCiAgImdldHRleHQtZG9tYWluIjogImV4dGVybmFsLWlwLW5vdGlmaWNhdGlvbiIsCiAgIm5hbWUiOiAiU2hvdyBFeHRlcm5hbCBJUCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2N3aXR0ZW5iZXJnL3RoaXNpcGNhbi5jeW91IiwKICAidXVpZCI6ICJleHRlcm5hbC1pcC1leHRlbnNpb25AaXBjYW4uY3lvdSIsCiAgInZlcnNpb24iOiA0Cn0="}, "42": {"version": "4", "sha256": "01bkf1ylylq6jx4ipa8lv71q084hk8m5dfinkksp4lsa85ra4wkx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHlvdXIgZXh0ZXJuYWwgSVAgaW4gdGhlIFRvb2xiYXIgYW5kIHNlbmRzIGEgc3lzdGVtIG5vdGlmaWNhdGlvbiBpZiBjaGFuZ2VkLlxuXG5UaGUgZXh0ZW5zaW9uIHVzZXMgdGhlIGZyZWUgdGhpc2lwY2FuLmN5b3Ugc2VydmljZSBhbmQgcmVmcmVzaGVzIGV2ZXJ5IDIgbWlucy4gVGhpcyBleHRlbnNpb24gaXMgaGFuZHkgZm9yIHRob3NlIHdvcmsgYXQgZGlmZmVyZW50IGxvY2F0aW9ucyBvciB3aXRoIGRpZmZlcmVudCBWUE5zIHRvIHF1aWNrbHkgc2VlIHlvdXIgcHVibGljIElQLiIsCiAgImdldHRleHQtZG9tYWluIjogImV4dGVybmFsLWlwLW5vdGlmaWNhdGlvbiIsCiAgIm5hbWUiOiAiU2hvdyBFeHRlcm5hbCBJUCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2N3aXR0ZW5iZXJnL3RoaXNpcGNhbi5jeW91IiwKICAidXVpZCI6ICJleHRlcm5hbC1pcC1leHRlbnNpb25AaXBjYW4uY3lvdSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
+, {"uuid": "smartlock@huy.im", "name": "Bluetooth Smart Lock", "pname": "bluetooth-smart-lock", "description": "Dynamic lock for GNOME. Use your smart phone/watch/band to lock your desktop automatically when you step away.\n\nWhen your device is out of bluetooth range or get disconnected, it will lock your desktop automatically.", "link": "https://extensions.gnome.org/extension/5359/bluetooth-smart-lock/", "shell_version_map": {"42": {"version": "12", "sha256": "0qqwzxnk32zxfbj71wcp4rvpc3qvrz8iq4m6q1gmqmj5hhx9mqlm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkR5bmFtaWMgbG9jayBmb3IgR05PTUUuIFVzZSB5b3VyIHNtYXJ0IHBob25lL3dhdGNoL2JhbmQgdG8gbG9jayB5b3VyIGRlc2t0b3AgYXV0b21hdGljYWxseSB3aGVuIHlvdSBzdGVwIGF3YXkuXG5cbldoZW4geW91ciBkZXZpY2UgaXMgb3V0IG9mIGJsdWV0b290aCByYW5nZSBvciBnZXQgZGlzY29ubmVjdGVkLCBpdCB3aWxsIGxvY2sgeW91ciBkZXNrdG9wIGF1dG9tYXRpY2FsbHkuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmx1ZXRvb3RoLXNtYXJ0bG9jayIsCiAgIm5hbWUiOiAiQmx1ZXRvb3RoIFNtYXJ0IExvY2siLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYmx1ZXRvb3RoX3NtYXJ0bG9jayIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYmEwZjMvZ25vbWUtYmx1ZXRvb3RoLXNtYXJ0bG9jayIsCiAgInV1aWQiOiAic21hcnRsb2NrQGh1eS5pbSIsCiAgInZlcnNpb24iOiAxMgp9"}, "43": {"version": "12", "sha256": "0qqwzxnk32zxfbj71wcp4rvpc3qvrz8iq4m6q1gmqmj5hhx9mqlm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkR5bmFtaWMgbG9jayBmb3IgR05PTUUuIFVzZSB5b3VyIHNtYXJ0IHBob25lL3dhdGNoL2JhbmQgdG8gbG9jayB5b3VyIGRlc2t0b3AgYXV0b21hdGljYWxseSB3aGVuIHlvdSBzdGVwIGF3YXkuXG5cbldoZW4geW91ciBkZXZpY2UgaXMgb3V0IG9mIGJsdWV0b290aCByYW5nZSBvciBnZXQgZGlzY29ubmVjdGVkLCBpdCB3aWxsIGxvY2sgeW91ciBkZXNrdG9wIGF1dG9tYXRpY2FsbHkuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmx1ZXRvb3RoLXNtYXJ0bG9jayIsCiAgIm5hbWUiOiAiQmx1ZXRvb3RoIFNtYXJ0IExvY2siLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYmx1ZXRvb3RoX3NtYXJ0bG9jayIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYmEwZjMvZ25vbWUtYmx1ZXRvb3RoLXNtYXJ0bG9jayIsCiAgInV1aWQiOiAic21hcnRsb2NrQGh1eS5pbSIsCiAgInZlcnNpb24iOiAxMgp9"}}}
+, {"uuid": "gnome-wireguard-extension@SJBERTRAND.github.com", "name": "WireGuard-VPN-extension", "pname": "wireguard-vpn-extension", "description": "Enable/Disable Wireguard tunnels", "link": "https://extensions.gnome.org/extension/5362/wireguard-vpn-extension/", "shell_version_map": {"42": {"version": "5", "sha256": "0xl60kd28kvsdgci2kr80chxpybhwf9fxjzrmxjp6p04icrmy68z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZS9EaXNhYmxlIFdpcmVndWFyZCB0dW5uZWxzIiwKICAibmFtZSI6ICJXaXJlR3VhcmQtVlBOLWV4dGVuc2lvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vU0pCRVJUUkFORC9nbm9tZS13aXJlZ3VhcmQtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJnbm9tZS13aXJlZ3VhcmQtZXh0ZW5zaW9uQFNKQkVSVFJBTkQuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}, "43": {"version": "5", "sha256": "0xl60kd28kvsdgci2kr80chxpybhwf9fxjzrmxjp6p04icrmy68z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZS9EaXNhYmxlIFdpcmVndWFyZCB0dW5uZWxzIiwKICAibmFtZSI6ICJXaXJlR3VhcmQtVlBOLWV4dGVuc2lvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiLAogICAgIjQzIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vU0pCRVJUUkFORC9nbm9tZS13aXJlZ3VhcmQtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJnbm9tZS13aXJlZ3VhcmQtZXh0ZW5zaW9uQFNKQkVSVFJBTkQuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}}}
+, {"uuid": "memento-mori@paveloom", "name": "Memento Mori", "pname": "memento-mori", "description": "Make every second of your life count. Literally!\n\nThis extension adds a counter to the panel which counts down the time you have left based on your birthday and life expectancy.", "link": "https://extensions.gnome.org/extension/5365/memento-mori/", "shell_version_map": {"42": {"version": "4", "sha256": "1ykkq518z5611zkhl03323zjx0dsnng76grndahr7izzag4qf78s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgZXZlcnkgc2Vjb25kIG9mIHlvdXIgbGlmZSBjb3VudC4gTGl0ZXJhbGx5IVxuXG5UaGlzIGV4dGVuc2lvbiBhZGRzIGEgY291bnRlciB0byB0aGUgcGFuZWwgd2hpY2ggY291bnRzIGRvd24gdGhlIHRpbWUgeW91IGhhdmUgbGVmdCBiYXNlZCBvbiB5b3VyIGJpcnRoZGF5IGFuZCBsaWZlIGV4cGVjdGFuY3kuIiwKICAibmFtZSI6ICJNZW1lbnRvIE1vcmkiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubWVtZW50by1tb3JpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9wYXZlbG9vbS10L2dub21lLXNoZWxsLW1lbWVudG8tbW9yaSIsCiAgInV1aWQiOiAibWVtZW50by1tb3JpQHBhdmVsb29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "43": {"version": "4", "sha256": "1ykkq518z5611zkhl03323zjx0dsnng76grndahr7izzag4qf78s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgZXZlcnkgc2Vjb25kIG9mIHlvdXIgbGlmZSBjb3VudC4gTGl0ZXJhbGx5IVxuXG5UaGlzIGV4dGVuc2lvbiBhZGRzIGEgY291bnRlciB0byB0aGUgcGFuZWwgd2hpY2ggY291bnRzIGRvd24gdGhlIHRpbWUgeW91IGhhdmUgbGVmdCBiYXNlZCBvbiB5b3VyIGJpcnRoZGF5IGFuZCBsaWZlIGV4cGVjdGFuY3kuIiwKICAibmFtZSI6ICJNZW1lbnRvIE1vcmkiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubWVtZW50by1tb3JpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIsCiAgICAiNDMiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9wYXZlbG9vbS10L2dub21lLXNoZWxsLW1lbWVudG8tbW9yaSIsCiAgInV1aWQiOiAibWVtZW50by1tb3JpQHBhdmVsb29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
+, {"uuid": "external-ip-extension@ipcan.cyou", "name": "Show External IP", "pname": "show-external-ip-thisipcancyou", "description": "Displays your external IP in the Toolbar and sends a system notification if changed. \n\nThis extension is handy for those work at different locations or with different VPNs to quickly see your public IP and country. It uses the free thisipcan.cyou service to check at regular intervals and whenever computer network events occur (like switching networks or locations).", "link": "https://extensions.gnome.org/extension/5368/show-external-ip-thisipcancyou/", "shell_version_map": {"40": {"version": "11", "sha256": "0s97cahyfdbzf7mj56grb4b5k3d1z8wrj8q16grr89hcmlzz79kp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHlvdXIgZXh0ZXJuYWwgSVAgaW4gdGhlIFRvb2xiYXIgYW5kIHNlbmRzIGEgc3lzdGVtIG5vdGlmaWNhdGlvbiBpZiBjaGFuZ2VkLiBcblxuVGhpcyBleHRlbnNpb24gaXMgaGFuZHkgZm9yIHRob3NlIHdvcmsgYXQgZGlmZmVyZW50IGxvY2F0aW9ucyBvciB3aXRoIGRpZmZlcmVudCBWUE5zIHRvIHF1aWNrbHkgc2VlIHlvdXIgcHVibGljIElQIGFuZCBjb3VudHJ5LiBJdCB1c2VzIHRoZSBmcmVlIHRoaXNpcGNhbi5jeW91IHNlcnZpY2UgdG8gY2hlY2sgYXQgcmVndWxhciBpbnRlcnZhbHMgYW5kIHdoZW5ldmVyIGNvbXB1dGVyIG5ldHdvcmsgZXZlbnRzIG9jY3VyIChsaWtlIHN3aXRjaGluZyBuZXR3b3JrcyBvciBsb2NhdGlvbnMpLiIsCiAgImdldHRleHQtZG9tYWluIjogImV4dGVybmFsLWlwLW5vdGlmaWNhdGlvbiIsCiAgIm5hbWUiOiAiU2hvdyBFeHRlcm5hbCBJUCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2N3aXR0ZW5iZXJnL3RoaXNpcGNhbi5jeW91IiwKICAidXVpZCI6ICJleHRlcm5hbC1pcC1leHRlbnNpb25AaXBjYW4uY3lvdSIsCiAgInZlcnNpb24iOiAxMQp9"}, "41": {"version": "11", "sha256": "0s97cahyfdbzf7mj56grb4b5k3d1z8wrj8q16grr89hcmlzz79kp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHlvdXIgZXh0ZXJuYWwgSVAgaW4gdGhlIFRvb2xiYXIgYW5kIHNlbmRzIGEgc3lzdGVtIG5vdGlmaWNhdGlvbiBpZiBjaGFuZ2VkLiBcblxuVGhpcyBleHRlbnNpb24gaXMgaGFuZHkgZm9yIHRob3NlIHdvcmsgYXQgZGlmZmVyZW50IGxvY2F0aW9ucyBvciB3aXRoIGRpZmZlcmVudCBWUE5zIHRvIHF1aWNrbHkgc2VlIHlvdXIgcHVibGljIElQIGFuZCBjb3VudHJ5LiBJdCB1c2VzIHRoZSBmcmVlIHRoaXNpcGNhbi5jeW91IHNlcnZpY2UgdG8gY2hlY2sgYXQgcmVndWxhciBpbnRlcnZhbHMgYW5kIHdoZW5ldmVyIGNvbXB1dGVyIG5ldHdvcmsgZXZlbnRzIG9jY3VyIChsaWtlIHN3aXRjaGluZyBuZXR3b3JrcyBvciBsb2NhdGlvbnMpLiIsCiAgImdldHRleHQtZG9tYWluIjogImV4dGVybmFsLWlwLW5vdGlmaWNhdGlvbiIsCiAgIm5hbWUiOiAiU2hvdyBFeHRlcm5hbCBJUCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2N3aXR0ZW5iZXJnL3RoaXNpcGNhbi5jeW91IiwKICAidXVpZCI6ICJleHRlcm5hbC1pcC1leHRlbnNpb25AaXBjYW4uY3lvdSIsCiAgInZlcnNpb24iOiAxMQp9"}, "42": {"version": "11", "sha256": "0s97cahyfdbzf7mj56grb4b5k3d1z8wrj8q16grr89hcmlzz79kp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHlvdXIgZXh0ZXJuYWwgSVAgaW4gdGhlIFRvb2xiYXIgYW5kIHNlbmRzIGEgc3lzdGVtIG5vdGlmaWNhdGlvbiBpZiBjaGFuZ2VkLiBcblxuVGhpcyBleHRlbnNpb24gaXMgaGFuZHkgZm9yIHRob3NlIHdvcmsgYXQgZGlmZmVyZW50IGxvY2F0aW9ucyBvciB3aXRoIGRpZmZlcmVudCBWUE5zIHRvIHF1aWNrbHkgc2VlIHlvdXIgcHVibGljIElQIGFuZCBjb3VudHJ5LiBJdCB1c2VzIHRoZSBmcmVlIHRoaXNpcGNhbi5jeW91IHNlcnZpY2UgdG8gY2hlY2sgYXQgcmVndWxhciBpbnRlcnZhbHMgYW5kIHdoZW5ldmVyIGNvbXB1dGVyIG5ldHdvcmsgZXZlbnRzIG9jY3VyIChsaWtlIHN3aXRjaGluZyBuZXR3b3JrcyBvciBsb2NhdGlvbnMpLiIsCiAgImdldHRleHQtZG9tYWluIjogImV4dGVybmFsLWlwLW5vdGlmaWNhdGlvbiIsCiAgIm5hbWUiOiAiU2hvdyBFeHRlcm5hbCBJUCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2N3aXR0ZW5iZXJnL3RoaXNpcGNhbi5jeW91IiwKICAidXVpZCI6ICJleHRlcm5hbC1pcC1leHRlbnNpb25AaXBjYW4uY3lvdSIsCiAgInZlcnNpb24iOiAxMQp9"}}}
+, {"uuid": "usd-bra@bramba.github.com", "name": "USD-BRA", "pname": "usd-bra", "description": "An easy and clean viewer of USD -> BRL currency. In which it is easy to understand if the currency is increasing or decreasing.", "link": "https://extensions.gnome.org/extension/5371/usd-bra/", "shell_version_map": {"42": {"version": "4", "sha256": "125ch4b675zddx46lj59f4jb8g5s6mq4aqv3vk21bbmnb05zzk5r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGVhc3kgYW5kIGNsZWFuIHZpZXdlciBvZiBVU0QgLT4gQlJMIGN1cnJlbmN5LiBJbiB3aGljaCBpdCBpcyBlYXN5IHRvIHVuZGVyc3RhbmQgaWYgdGhlIGN1cnJlbmN5IGlzIGluY3JlYXNpbmcgb3IgZGVjcmVhc2luZy4iLAogICJuYW1lIjogIlVTRC1CUkEiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQnJhbWJhNy9VU0QtQlJBIiwKICAidXVpZCI6ICJ1c2QtYnJhQGJyYW1iYS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
+, {"uuid": "gnome-pushover-messages-unofficial@iwont.cyou", "name": "Pushover Message Notifications", "pname": "pushover-message-notifications", "description": "Displays Pushover Notifications within GNOME and within your tray. Privacy respecting unofficial client.", "link": "https://extensions.gnome.org/extension/5377/pushover-message-notifications/", "shell_version_map": {"40": {"version": "6", "sha256": "0b5wwk9iqag2fgp5rxzgpgmblbgx8amzj6xwsk3r259i2m90agdp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIFB1c2hvdmVyIE5vdGlmaWNhdGlvbnMgd2l0aGluIEdOT01FIGFuZCB3aXRoaW4geW91ciB0cmF5LiBQcml2YWN5IHJlc3BlY3RpbmcgdW5vZmZpY2lhbCBjbGllbnQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtcHVzaG92ZXItbWVzc2FnZXMtdW5vZmZpY2lhbCIsCiAgIm5hbWUiOiAiUHVzaG92ZXIgTWVzc2FnZSBOb3RpZmljYXRpb25zIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY3dpdHRlbmJlcmcvZ25vbWUtcHVzaG92ZXItbWVzc2FnZXMtdW5vZmZpY2lhbCIsCiAgInV1aWQiOiAiZ25vbWUtcHVzaG92ZXItbWVzc2FnZXMtdW5vZmZpY2lhbEBpd29udC5jeW91IiwKICAidmVyc2lvbiI6IDYKfQ=="}, "41": {"version": "6", "sha256": "0b5wwk9iqag2fgp5rxzgpgmblbgx8amzj6xwsk3r259i2m90agdp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIFB1c2hvdmVyIE5vdGlmaWNhdGlvbnMgd2l0aGluIEdOT01FIGFuZCB3aXRoaW4geW91ciB0cmF5LiBQcml2YWN5IHJlc3BlY3RpbmcgdW5vZmZpY2lhbCBjbGllbnQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtcHVzaG92ZXItbWVzc2FnZXMtdW5vZmZpY2lhbCIsCiAgIm5hbWUiOiAiUHVzaG92ZXIgTWVzc2FnZSBOb3RpZmljYXRpb25zIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY3dpdHRlbmJlcmcvZ25vbWUtcHVzaG92ZXItbWVzc2FnZXMtdW5vZmZpY2lhbCIsCiAgInV1aWQiOiAiZ25vbWUtcHVzaG92ZXItbWVzc2FnZXMtdW5vZmZpY2lhbEBpd29udC5jeW91IiwKICAidmVyc2lvbiI6IDYKfQ=="}, "42": {"version": "6", "sha256": "0b5wwk9iqag2fgp5rxzgpgmblbgx8amzj6xwsk3r259i2m90agdp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIFB1c2hvdmVyIE5vdGlmaWNhdGlvbnMgd2l0aGluIEdOT01FIGFuZCB3aXRoaW4geW91ciB0cmF5LiBQcml2YWN5IHJlc3BlY3RpbmcgdW5vZmZpY2lhbCBjbGllbnQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtcHVzaG92ZXItbWVzc2FnZXMtdW5vZmZpY2lhbCIsCiAgIm5hbWUiOiAiUHVzaG92ZXIgTWVzc2FnZSBOb3RpZmljYXRpb25zIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY3dpdHRlbmJlcmcvZ25vbWUtcHVzaG92ZXItbWVzc2FnZXMtdW5vZmZpY2lhbCIsCiAgInV1aWQiOiAiZ25vbWUtcHVzaG92ZXItbWVzc2FnZXMtdW5vZmZpY2lhbEBpd29udC5jeW91IiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
+, {"uuid": "notification-filter@asynclink.org", "name": "Notification Filter", "pname": "notification-filter", "description": "Filter out notifications by their text content to block them from appearing.\nIf you've ever been annoyed by certain notifications distracting you, this extension gives you more fine tuned control of which notifications to prevent from showing up.\n\nGives you the ability to filter by both the title and body content, use regex matching, and add multiple different filters.\n\nNote: Only prevents new notifications from appearing, does not remove existing notifications.", "link": "https://extensions.gnome.org/extension/5380/notification-filter/", "shell_version_map": {"40": {"version": "2", "sha256": "1933q2vywyc26kggdrhy0p3p137k0zb2rav4cdzqlz1hz9savjw5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZpbHRlciBvdXQgbm90aWZpY2F0aW9ucyBieSB0aGVpciB0ZXh0IGNvbnRlbnQgdG8gYmxvY2sgdGhlbSBmcm9tIGFwcGVhcmluZy5cbklmIHlvdSd2ZSBldmVyIGJlZW4gYW5ub3llZCBieSBjZXJ0YWluIG5vdGlmaWNhdGlvbnMgZGlzdHJhY3RpbmcgeW91LCB0aGlzIGV4dGVuc2lvbiBnaXZlcyB5b3UgbW9yZSBmaW5lIHR1bmVkIGNvbnRyb2wgb2Ygd2hpY2ggbm90aWZpY2F0aW9ucyB0byBwcmV2ZW50IGZyb20gc2hvd2luZyB1cC5cblxuR2l2ZXMgeW91IHRoZSBhYmlsaXR5IHRvIGZpbHRlciBieSBib3RoIHRoZSB0aXRsZSBhbmQgYm9keSBjb250ZW50LCB1c2UgcmVnZXggbWF0Y2hpbmcsIGFuZCBhZGQgbXVsdGlwbGUgZGlmZmVyZW50IGZpbHRlcnMuXG5cbk5vdGU6IE9ubHkgcHJldmVudHMgbmV3IG5vdGlmaWNhdGlvbnMgZnJvbSBhcHBlYXJpbmcsIGRvZXMgbm90IHJlbW92ZSBleGlzdGluZyBub3RpZmljYXRpb25zLiIsCiAgIm5hbWUiOiAiTm90aWZpY2F0aW9uIEZpbHRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ub3RpZmljYXRpb24tZmlsdGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3B5YnVnL05vdGlmeUZpbHRlci1Hbm9tZUV4dGVuc2lvbiIsCiAgInV1aWQiOiAibm90aWZpY2F0aW9uLWZpbHRlckBhc3luY2xpbmsub3JnIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "41": {"version": "2", "sha256": "1933q2vywyc26kggdrhy0p3p137k0zb2rav4cdzqlz1hz9savjw5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZpbHRlciBvdXQgbm90aWZpY2F0aW9ucyBieSB0aGVpciB0ZXh0IGNvbnRlbnQgdG8gYmxvY2sgdGhlbSBmcm9tIGFwcGVhcmluZy5cbklmIHlvdSd2ZSBldmVyIGJlZW4gYW5ub3llZCBieSBjZXJ0YWluIG5vdGlmaWNhdGlvbnMgZGlzdHJhY3RpbmcgeW91LCB0aGlzIGV4dGVuc2lvbiBnaXZlcyB5b3UgbW9yZSBmaW5lIHR1bmVkIGNvbnRyb2wgb2Ygd2hpY2ggbm90aWZpY2F0aW9ucyB0byBwcmV2ZW50IGZyb20gc2hvd2luZyB1cC5cblxuR2l2ZXMgeW91IHRoZSBhYmlsaXR5IHRvIGZpbHRlciBieSBib3RoIHRoZSB0aXRsZSBhbmQgYm9keSBjb250ZW50LCB1c2UgcmVnZXggbWF0Y2hpbmcsIGFuZCBhZGQgbXVsdGlwbGUgZGlmZmVyZW50IGZpbHRlcnMuXG5cbk5vdGU6IE9ubHkgcHJldmVudHMgbmV3IG5vdGlmaWNhdGlvbnMgZnJvbSBhcHBlYXJpbmcsIGRvZXMgbm90IHJlbW92ZSBleGlzdGluZyBub3RpZmljYXRpb25zLiIsCiAgIm5hbWUiOiAiTm90aWZpY2F0aW9uIEZpbHRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ub3RpZmljYXRpb24tZmlsdGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3B5YnVnL05vdGlmeUZpbHRlci1Hbm9tZUV4dGVuc2lvbiIsCiAgInV1aWQiOiAibm90aWZpY2F0aW9uLWZpbHRlckBhc3luY2xpbmsub3JnIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "42": {"version": "2", "sha256": "1933q2vywyc26kggdrhy0p3p137k0zb2rav4cdzqlz1hz9savjw5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZpbHRlciBvdXQgbm90aWZpY2F0aW9ucyBieSB0aGVpciB0ZXh0IGNvbnRlbnQgdG8gYmxvY2sgdGhlbSBmcm9tIGFwcGVhcmluZy5cbklmIHlvdSd2ZSBldmVyIGJlZW4gYW5ub3llZCBieSBjZXJ0YWluIG5vdGlmaWNhdGlvbnMgZGlzdHJhY3RpbmcgeW91LCB0aGlzIGV4dGVuc2lvbiBnaXZlcyB5b3UgbW9yZSBmaW5lIHR1bmVkIGNvbnRyb2wgb2Ygd2hpY2ggbm90aWZpY2F0aW9ucyB0byBwcmV2ZW50IGZyb20gc2hvd2luZyB1cC5cblxuR2l2ZXMgeW91IHRoZSBhYmlsaXR5IHRvIGZpbHRlciBieSBib3RoIHRoZSB0aXRsZSBhbmQgYm9keSBjb250ZW50LCB1c2UgcmVnZXggbWF0Y2hpbmcsIGFuZCBhZGQgbXVsdGlwbGUgZGlmZmVyZW50IGZpbHRlcnMuXG5cbk5vdGU6IE9ubHkgcHJldmVudHMgbmV3IG5vdGlmaWNhdGlvbnMgZnJvbSBhcHBlYXJpbmcsIGRvZXMgbm90IHJlbW92ZSBleGlzdGluZyBub3RpZmljYXRpb25zLiIsCiAgIm5hbWUiOiAiTm90aWZpY2F0aW9uIEZpbHRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ub3RpZmljYXRpb24tZmlsdGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3B5YnVnL05vdGlmeUZpbHRlci1Hbm9tZUV4dGVuc2lvbiIsCiAgInV1aWQiOiAibm90aWZpY2F0aW9uLWZpbHRlckBhc3luY2xpbmsub3JnIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
+, {"uuid": "evpn-assistant@xytrexl.com", "name": "EVPN Shell Assistant", "pname": "evpn-shell-assistant", "description": "Allows ExpressVPN to be controlled through the GNOME shell.", "link": "https://extensions.gnome.org/extension/5385/evpn-shell-assistant/", "shell_version_map": {"42": {"version": "3", "sha256": "1n020daf3fpjgk9fpqiw5ns125cd52c3cdwfcxkkhy2mkkrvw3yw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyBFeHByZXNzVlBOIHRvIGJlIGNvbnRyb2xsZWQgdGhyb3VnaCB0aGUgR05PTUUgc2hlbGwuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWV2cG4tYXNzaXN0YW50IiwKICAibmFtZSI6ICJFVlBOIFNoZWxsIEFzc2lzdGFudCIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJTdHVhcnQgR2lsbW91ciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ldnBuLWFzc2lzdGFudCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRqYW1lc2dpbG1vdXIvZXZwbi1hc3Npc3RhbnQiLAogICJ1dWlkIjogImV2cG4tYXNzaXN0YW50QHh5dHJleGwuY29tIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
 ]
diff --git a/pkgs/desktops/gnome/misc/gtkhtml/default.nix b/pkgs/desktops/gnome/misc/gtkhtml/default.nix
index 88fb31c4333b2..f4454e15bb9e6 100644
--- a/pkgs/desktops/gnome/misc/gtkhtml/default.nix
+++ b/pkgs/desktops/gnome/misc/gtkhtml/default.nix
@@ -14,8 +14,8 @@ stdenv.mkDerivation rec {
     updateScript = gnome.updateScript { packageName = "gtkhtml"; attrPath = "gnome.gtkhtml"; };
   };
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ gtk3 intltool gnome.adwaita-icon-theme
+  nativeBuildInputs = [ pkg-config intltool ];
+  buildInputs = [ gtk3 gnome.adwaita-icon-theme
                   gsettings-desktop-schemas ];
 
   propagatedBuildInputs = [ enchant isocodes ];
diff --git a/pkgs/desktops/gnome/nixos/gsettings-overrides/default.nix b/pkgs/desktops/gnome/nixos/gsettings-overrides/default.nix
new file mode 100644
index 0000000000000..e75e2eb1e8874
--- /dev/null
+++ b/pkgs/desktops/gnome/nixos/gsettings-overrides/default.nix
@@ -0,0 +1,55 @@
+{ lib
+, runCommand
+, gsettings-desktop-schemas
+, gnome-shell
+, glib
+, gnome-flashback
+, nixos-artwork
+, nixos-background-light ? nixos-artwork.wallpapers.simple-blue
+, nixos-background-dark ? nixos-artwork.wallpapers.simple-dark-gray
+, extraGSettingsOverrides ? ""
+, extraGSettingsOverridePackages ? [ ]
+, favoriteAppsOverride ? ""
+, flashbackEnabled ? false
+}:
+
+let
+
+  inherit (lib) concatMapStringsSep;
+
+  gsettingsOverridePackages = [
+    gsettings-desktop-schemas
+    gnome-shell
+  ] ++ lib.optionals flashbackEnabled [
+    gnome-flashback
+  ] ++ extraGSettingsOverridePackages;
+
+  gsettingsOverrides = ''
+    [org.gnome.desktop.background]
+    picture-uri='file://${nixos-background-light.gnomeFilePath}'
+    picture-uri-dark='file://${nixos-background-dark.gnomeFilePath}'
+
+    [org.gnome.desktop.screensaver]
+    picture-uri='file://${nixos-background-dark.gnomeFilePath}'
+
+    ${favoriteAppsOverride}
+
+    ${extraGSettingsOverrides}
+  '';
+
+in
+
+runCommand "gnome-gsettings-overrides" { preferLocalBuild = true; } ''
+  data_dir="$out/share/gsettings-schemas/nixos-gsettings-overrides"
+  schema_dir="$data_dir/glib-2.0/schemas"
+  mkdir -p "$schema_dir"
+
+  ${concatMapStringsSep "\n" (pkg: "cp -rf \"${glib.getSchemaPath pkg}\"/*.xml \"${glib.getSchemaPath pkg}\"/*.gschema.override \"$schema_dir\"") gsettingsOverridePackages}
+
+  chmod -R a+w "$data_dir"
+  cat - > "$schema_dir/nixos-defaults.gschema.override" <<- EOF
+  ${gsettingsOverrides}
+  EOF
+
+  ${glib.dev}/bin/glib-compile-schemas --strict "$schema_dir"
+''
diff --git a/pkgs/desktops/lxde/core/lxmenu-data/default.nix b/pkgs/desktops/lxde/core/lxmenu-data/default.nix
index e52445aa0b049..fc00c4cdad1e9 100644
--- a/pkgs/desktops/lxde/core/lxmenu-data/default.nix
+++ b/pkgs/desktops/lxde/core/lxmenu-data/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "9fe3218d2ef50b91190162f4f923d6524c364849f87bcda8b4ed8eb59b80bab8";
   };
 
-  buildInputs = [ intltool ];
+  nativeBuildInputs = [ intltool ];
 
   meta = {
     homepage = "https://lxde.org/";
diff --git a/pkgs/desktops/mate/mate-tweak/default.nix b/pkgs/desktops/mate/mate-tweak/default.nix
index 644a1aa35ca57..19d8f1f5312f7 100644
--- a/pkgs/desktops/mate/mate-tweak/default.nix
+++ b/pkgs/desktops/mate/mate-tweak/default.nix
@@ -14,13 +14,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "mate-tweak";
-  version = "22.04.8";
+  version = "22.10.0";
 
   src = fetchFromGitHub {
     owner = "ubuntu-mate";
     repo = pname;
     rev = version;
-    sha256 = "eaOEe/tvpDBBPVuZhSWWLZBXXjqt05ukGLUmVMY1hZU=";
+    sha256 = "emeNgCzMhHMeLOyUkXe+8OzQMEWuwNdD4xkGXIFgbh4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/pantheon/apps/elementary-iconbrowser/default.nix b/pkgs/desktops/pantheon/apps/elementary-iconbrowser/default.nix
new file mode 100644
index 0000000000000..64b9b67cb7882
--- /dev/null
+++ b/pkgs/desktops/pantheon/apps/elementary-iconbrowser/default.nix
@@ -0,0 +1,75 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, nix-update-script
+, meson
+, ninja
+, pkg-config
+, python3
+, vala
+, wrapGAppsHook4
+, elementary-gtk-theme
+, elementary-icon-theme
+, glib
+, granite7
+, gtk4
+, gtksourceview5
+}:
+
+stdenv.mkDerivation rec {
+  pname = "elementary-iconbrowser";
+  version = "2.0.0";
+
+  src = fetchFromGitHub {
+    owner = "elementary";
+    repo = "iconbrowser";
+    rev = version;
+    sha256 = "sha256-aXFgL5l9jnOZJJgMOYwiE7W//1sq23CbLEDmhYFJT38=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    python3
+    vala
+    wrapGAppsHook4
+  ];
+
+  buildInputs = [
+    elementary-icon-theme
+    glib
+    granite7
+    gtk4
+    gtksourceview5
+  ];
+
+  postPatch = ''
+    chmod +x meson/post_install.py
+    patchShebangs meson/post_install.py
+  '';
+
+  preFixup = ''
+    gappsWrapperArgs+=(
+      # The GTK theme is hardcoded.
+      --prefix XDG_DATA_DIRS : "${elementary-gtk-theme}/share"
+      # The icon theme is hardcoded.
+      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS"
+    )
+  '';
+
+  passthru = {
+    updateScript = nix-update-script {
+      attrPath = "pantheon.${pname}";
+    };
+  };
+
+  meta = with lib; {
+    homepage = "https://github.com/elementary/iconbrowser";
+    description = "Browse and find system icons";
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = teams.pantheon.members;
+    mainProgram = "io.elementary.iconbrowser";
+  };
+}
diff --git a/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix b/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix
index 7be3b6d44c15e..97fa6fc1ea65b 100644
--- a/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix
+++ b/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix
@@ -13,13 +13,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "elementary-icon-theme";
-  version = "7.0.0";
+  version = "7.1.0";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = "icons";
     rev = version;
-    sha256 = "sha256-tyhKhZPoZ8xVy1KVUWd8BK2meTT3Z6qM787spjE+NL8=";
+    sha256 = "sha256-SMeVu4RbXodbxtVkQE2tvv6LaVWzrq7UBlwmi30ns2Q=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/pantheon/default.nix b/pkgs/desktops/pantheon/default.nix
index 77f8d35680379..defa583e98a2a 100644
--- a/pkgs/desktops/pantheon/default.nix
+++ b/pkgs/desktops/pantheon/default.nix
@@ -67,6 +67,8 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   elementary-feedback = callPackage ./apps/elementary-feedback { };
 
+  elementary-iconbrowser = callPackage ./apps/elementary-iconbrowser { };
+
   elementary-mail = callPackage ./apps/elementary-mail { };
 
   elementary-music = callPackage ./apps/elementary-music { };
diff --git a/pkgs/desktops/pantheon/desktop/elementary-gsettings-schemas/default.nix b/pkgs/desktops/pantheon/desktop/elementary-gsettings-schemas/default.nix
index dd6b10f5c830a..41c4c099cf2d9 100644
--- a/pkgs/desktops/pantheon/desktop/elementary-gsettings-schemas/default.nix
+++ b/pkgs/desktops/pantheon/desktop/elementary-gsettings-schemas/default.nix
@@ -10,11 +10,13 @@
 , elementary-dock
 , gsettings-desktop-schemas
 , extraGSettingsOverrides ? ""
-, extraGSettingsOverridePackages ? []
+, extraGSettingsOverridePackages ? [ ]
 }:
 
 let
 
+  inherit (lib) concatMapStringsSep;
+
   gsettingsOverridePackages = [
     elementary-dock
     gnome-settings-daemon
@@ -27,25 +29,24 @@ let
 
 in
 
-with lib;
 
 # TODO: Having https://github.com/NixOS/nixpkgs/issues/54150 would supersede this
-runCommand "elementary-gsettings-desktop-schemas" {}
+runCommand "elementary-gsettings-desktop-schemas" { preferLocalBuild = true; }
   ''
-     schema_dir=$out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas
-
-     mkdir -p $schema_dir
+    data_dir="$out/share/gsettings-schemas/nixos-gsettings-overrides"
+    schema_dir="$data_dir/glib-2.0/schemas"
 
-     cp -rf ${glib.getSchemaPath gala}/*.gschema.override $schema_dir
+    mkdir -p "$schema_dir"
+    cp -rf "${glib.getSchemaPath gala}"/*.gschema.override "$schema_dir"
 
-     ${concatMapStrings (pkg: "cp -rf ${glib.getSchemaPath pkg}/*.xml $schema_dir\n") gsettingsOverridePackages}
+    ${concatMapStringsSep "\n" (pkg: "cp -rf \"${glib.getSchemaPath pkg}\"/*.xml \"$schema_dir\"") gsettingsOverridePackages}
 
-     chmod -R a+w $out/share/gsettings-schemas/nixos-gsettings-overrides
-     cp ${glib.getSchemaPath elementary-default-settings}/* $schema_dir
+    chmod -R a+w "$data_dir"
+    cp "${glib.getSchemaPath elementary-default-settings}"/* "$schema_dir"
 
-     cat - > $schema_dir/nixos-defaults.gschema.override <<- EOF
-     ${extraGSettingsOverrides}
-     EOF
+    cat - > "$schema_dir/nixos-defaults.gschema.override" <<- EOF
+    ${extraGSettingsOverrides}
+    EOF
 
-     ${glib.dev}/bin/glib-compile-schemas $schema_dir
+    ${glib.dev}/bin/glib-compile-schemas $schema_dir
   ''
diff --git a/pkgs/desktops/surf-display/default.nix b/pkgs/desktops/surf-display/default.nix
index c1f5f7165095e..918f715341a17 100644
--- a/pkgs/desktops/surf-display/default.nix
+++ b/pkgs/desktops/surf-display/default.nix
@@ -4,12 +4,12 @@
 
 stdenv.mkDerivation rec {
   pname = "surf-display";
-  version = "unstable-2019-04-15";
+  version = "unstable-2022-10-07";
 
   src = fetchgit {
     url = "https://code.it-zukunft-schule.de/cgit/surf-display";
-    rev = "972d6c4b7c4503dbb63fa6c92cdc24d1e32064a4";
-    sha256 = "03c68gg4kfmkri1gn5b7m1g8vh9ciawhajb29c17kkc7mn388hjm";
+    rev = "ad0bd30642f8334d42bb08ea5c1b9dd03fccc4d1";
+    hash = "sha256-wiyFh1te3afASIODn0cA5QXcqnrP/8Bk6hBAZYbKJQQ=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/desktops/xfce/default.nix b/pkgs/desktops/xfce/default.nix
index 811ed736e7a52..7cbf02fef8dd7 100644
--- a/pkgs/desktops/xfce/default.nix
+++ b/pkgs/desktops/xfce/default.nix
@@ -137,6 +137,8 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   xfce4-systemload-plugin = callPackage ./panel-plugins/xfce4-systemload-plugin { };
 
+  xfce4-time-out-plugin = callPackage ./panel-plugins/xfce4-time-out-plugin { };
+
   xfce4-timer-plugin = callPackage ./panel-plugins/xfce4-timer-plugin { };
 
   xfce4-verve-plugin = callPackage ./panel-plugins/xfce4-verve-plugin { };
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-datetime-plugin/default.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-datetime-plugin/default.nix
index 70b3eca4137a6..5202f7f54c245 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-datetime-plugin/default.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-datetime-plugin/default.nix
@@ -9,10 +9,10 @@
 mkXfceDerivation {
   category = "panel-plugins";
   pname = "xfce4-datetime-plugin";
-  version = "0.8.1";
+  version = "0.8.2";
 
   rev-prefix = "xfce4-datetime-plugin-";
-  sha256 = "sha256-qmZit7cCGnVTzdzPTiAiruBWlMLWzZEXJtFqAesaARo=";
+  sha256 = "sha256-ov4Wh9Pj01u0NrjDn5p+qXlD2LY3gEUC1e/jPjkn4xQ=";
 
   nativeBuildInputs = [
     gettext
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-time-out-plugin/default.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-time-out-plugin/default.nix
new file mode 100644
index 0000000000000..6939dc42b31c8
--- /dev/null
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-time-out-plugin/default.nix
@@ -0,0 +1,20 @@
+{ lib, mkXfceDerivation, gtk3, libxfce4ui, libxfce4util, xfce4-panel, xfconf }:
+
+mkXfceDerivation {
+  category = "panel-plugins";
+  pname = "xfce4-time-out-plugin";
+  version = "1.1.2";
+  rev-prefix = "xfce4-time-out-plugin-";
+  odd-unstable = false;
+  sha256 = "sha256-xfkQjlUfvm0YXs3bRJD4W/71VkaPq3Y+cDFVNiL/bjc=";
+
+  buildInputs = [
+    gtk3 libxfce4ui libxfce4util xfce4-panel xfconf
+  ];
+
+  meta = with lib; {
+    description = "Panel plug-in to take periodical breaks from the computer";
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ ] ++ teams.xfce.members;
+  };
+}
diff --git a/pkgs/development/compilers/cudatoolkit/redist/extension.nix b/pkgs/development/compilers/cudatoolkit/redist/extension.nix
index 65057b90a03c0..17327efb40135 100644
--- a/pkgs/development/compilers/cudatoolkit/redist/extension.nix
+++ b/pkgs/development/compilers/cudatoolkit/redist/extension.nix
@@ -11,6 +11,7 @@ final: prev: let
     "11.4" = ./manifests/redistrib_11.4.4.json;
     "11.5" = ./manifests/redistrib_11.5.2.json;
     "11.6" = ./manifests/redistrib_11.6.2.json;
+    "11.7" = ./manifests/redistrib_11.7.0.json;
   };
 
   # Function to build a single cudatoolkit redist package
diff --git a/pkgs/development/compilers/cudatoolkit/redist/manifests/redistrib_11.7.0.json b/pkgs/development/compilers/cudatoolkit/redist/manifests/redistrib_11.7.0.json
new file mode 100644
index 0000000000000..2fc999afd700a
--- /dev/null
+++ b/pkgs/development/compilers/cudatoolkit/redist/manifests/redistrib_11.7.0.json
@@ -0,0 +1,879 @@
+{
+    "release_date": "2022-05-11",
+    "cuda_cccl": {
+        "name": "CXX Core Compute Libraries",
+        "license": "CUDA Toolkit",
+        "version": "11.7.58",
+        "linux-x86_64": {
+            "relative_path": "cuda_cccl/linux-x86_64/cuda_cccl-linux-x86_64-11.7.58-archive.tar.xz",
+            "sha256": "a66261d174a3f8fea87e0dc91e5cd084dda89be8bb0a1f5ca0ab5d05a93ade4a",
+            "md5": "674edc3ec85126c08f78e4e3280789fd",
+            "size": "1004048"
+        },
+        "linux-ppc64le": {
+            "relative_path": "cuda_cccl/linux-ppc64le/cuda_cccl-linux-ppc64le-11.7.58-archive.tar.xz",
+            "sha256": "5482355647143e61b15cb6193f33a317dce94bb2475123d4b08eebbd7a801802",
+            "md5": "64c9f42b84cb64a7f67645cb74d2153f",
+            "size": "1004332"
+        },
+        "linux-sbsa": {
+            "relative_path": "cuda_cccl/linux-sbsa/cuda_cccl-linux-sbsa-11.7.58-archive.tar.xz",
+            "sha256": "70a8a42135e4ab817cd3c3413dd993bfc7920a42f057838d2a4a2ff0966258bd",
+            "md5": "f6ac243b4b8d182941025040b0c375c3",
+            "size": "1003936"
+        },
+        "windows-x86_64": {
+            "relative_path": "cuda_cccl/windows-x86_64/cuda_cccl-windows-x86_64-11.7.58-archive.zip",
+            "sha256": "29958e300229c7af43df57bed0519f34f3aa64332c84fb80e481c131e4594938",
+            "md5": "3a40e674c975fc35376e66b08b93a42c",
+            "size": "2563581"
+        }
+    },
+    "cuda_cudart": {
+        "name": "CUDA Runtime (cudart)",
+        "license": "CUDA Toolkit",
+        "version": "11.7.60",
+        "linux-x86_64": {
+            "relative_path": "cuda_cudart/linux-x86_64/cuda_cudart-linux-x86_64-11.7.60-archive.tar.xz",
+            "sha256": "1c079add60a107f6dd9e72a0cc9cde03eb9d833506f355c22b9177c47a977552",
+            "md5": "1ef515eb31691f2c43fb0de1443893a3",
+            "size": "854744"
+        },
+        "linux-ppc64le": {
+            "relative_path": "cuda_cudart/linux-ppc64le/cuda_cudart-linux-ppc64le-11.7.60-archive.tar.xz",
+            "sha256": "95ea51eb4d60754a080920105aa578cc8da8772295912f198fcaa13fafce6d24",
+            "md5": "ce9c3ac2d0a25de182e5519354e0e01b",
+            "size": "795244"
+        },
+        "linux-sbsa": {
+            "relative_path": "cuda_cudart/linux-sbsa/cuda_cudart-linux-sbsa-11.7.60-archive.tar.xz",
+            "sha256": "bdfdb8467a0d1a5c6aeb696ec0c203d1da732093b5e5ee0a79b03ef53f5ab622",
+            "md5": "7d6290b6e7a0086c5dbf5706013dfdda",
+            "size": "798208"
+        },
+        "windows-x86_64": {
+            "relative_path": "cuda_cudart/windows-x86_64/cuda_cudart-windows-x86_64-11.7.60-archive.zip",
+            "sha256": "e1c72413c42e9bda52d1868bb67136d66d03b394b9accdfd9224080bb5a9663e",
+            "md5": "bbeee57a158e8ce3abce79b19eae7110",
+            "size": "2884824"
+        }
+    },
+    "cuda_cuobjdump": {
+        "name": "cuobjdump",
+        "license": "CUDA Toolkit",
+        "version": "11.7.50",
+        "linux-x86_64": {
+            "relative_path": "cuda_cuobjdump/linux-x86_64/cuda_cuobjdump-linux-x86_64-11.7.50-archive.tar.xz",
+            "sha256": "f901085d83f83ae549de45e4410c74c3adddd2d541ba2780c23105df39008820",
+            "md5": "76a614c84b7221cc9282a3bf009ca401",
+            "size": "127416"
+        },
+        "linux-ppc64le": {
+            "relative_path": "cuda_cuobjdump/linux-ppc64le/cuda_cuobjdump-linux-ppc64le-11.7.50-archive.tar.xz",
+            "sha256": "2fe257ab7027c7598d1351bb473d6a67a8da81fec17f60b389d16ef076c31da7",
+            "md5": "9ffb04f10fced993411d0601709c80fd",
+            "size": "140924"
+        },
+        "linux-sbsa": {
+            "relative_path": "cuda_cuobjdump/linux-sbsa/cuda_cuobjdump-linux-sbsa-11.7.50-archive.tar.xz",
+            "sha256": "d44352344de0408d175b045401865ab82db4a53f3894e50c01445f42bbebdf8f",
+            "md5": "0b3bb58d13089bea74b3351cd7ed03d2",
+            "size": "123968"
+        },
+        "windows-x86_64": {
+            "relative_path": "cuda_cuobjdump/windows-x86_64/cuda_cuobjdump-windows-x86_64-11.7.50-archive.zip",
+            "sha256": "3e7072d0a09c021252925ff9644d67294793afc5dc55ff2fac291528711ba0f9",
+            "md5": "070b5f13066888c471b90868485767ae",
+            "size": "2523866"
+        }
+    },
+    "cuda_cupti": {
+        "name": "CUPTI",
+        "license": "CUDA Toolkit",
+        "version": "11.7.50",
+        "linux-x86_64": {
+            "relative_path": "cuda_cupti/linux-x86_64/cuda_cupti-linux-x86_64-11.7.50-archive.tar.xz",
+            "sha256": "441f7da2608d1965f0e3e2e03aeea86b0a3454cbea8e7af8112529c9acef3853",
+            "md5": "6433be7629030ddbcf37f5286464bb0d",
+            "size": "16577596"
+        },
+        "linux-ppc64le": {
+            "relative_path": "cuda_cupti/linux-ppc64le/cuda_cupti-linux-ppc64le-11.7.50-archive.tar.xz",
+            "sha256": "df70ad634864572b4eff7ebe15b768d48d909aabddf3b54da05cf7e27442bd8f",
+            "md5": "011ea37fd2f4af0755414c5432ba2649",
+            "size": "8627816"
+        },
+        "linux-sbsa": {
+            "relative_path": "cuda_cupti/linux-sbsa/cuda_cupti-linux-sbsa-11.7.50-archive.tar.xz",
+            "sha256": "4615695d9240a423926238640c69d4b39044acc44d3d513bc08c51f16bea371e",
+            "md5": "53cefdd716d8c40ff7143822341c09b7",
+            "size": "8436580"
+        },
+        "windows-x86_64": {
+            "relative_path": "cuda_cupti/windows-x86_64/cuda_cupti-windows-x86_64-11.7.50-archive.zip",
+            "sha256": "42a04b9ef71e4d95bc235a68dd4a75d1501a44e9964371435994f7a7c59cd489",
+            "md5": "4c61155dc79555ef6b389284a4f7b65a",
+            "size": "11546349"
+        }
+    },
+    "cuda_cuxxfilt": {
+        "name": "CUDA cuxxfilt (demangler)",
+        "license": "CUDA Toolkit",
+        "version": "11.7.50",
+        "linux-x86_64": {
+            "relative_path": "cuda_cuxxfilt/linux-x86_64/cuda_cuxxfilt-linux-x86_64-11.7.50-archive.tar.xz",
+            "sha256": "8a9cb0af698fe39c1b92d179e9ac22e8acb752eb8c531dbfdd049ddcd3c2caa6",
+            "md5": "0f7eb48184c16e51ad76574cc112e01c",
+            "size": "186432"
+        },
+        "linux-ppc64le": {
+            "relative_path": "cuda_cuxxfilt/linux-ppc64le/cuda_cuxxfilt-linux-ppc64le-11.7.50-archive.tar.xz",
+            "sha256": "a2a9a5ace0908071f0bcf4fa1e537c8373d7ef6a18d086d85a2c72cb8dc245b7",
+            "md5": "6be41e32ff0274c1be4cb3b6a6429b21",
+            "size": "181612"
+        },
+        "linux-sbsa": {
+            "relative_path": "cuda_cuxxfilt/linux-sbsa/cuda_cuxxfilt-linux-sbsa-11.7.50-archive.tar.xz",
+            "sha256": "c7c014ec407c77eae16451559a7499c8ff371606abc8e1b40e47eedab8d5a5b8",
+            "md5": "2a7553a48f6c8048d1667c16fec03035",
+            "size": "172292"
+        },
+        "windows-x86_64": {
+            "relative_path": "cuda_cuxxfilt/windows-x86_64/cuda_cuxxfilt-windows-x86_64-11.7.50-archive.zip",
+            "sha256": "e93e1d37332ad5adf663a712250710d03a718f4d85702aec4e24b5bf98e2fe7a",
+            "md5": "f34c83f9a81d0fdae3950a9778442345",
+            "size": "168940"
+        }
+    },
+    "cuda_demo_suite": {
+        "name": "CUDA Demo Suite",
+        "license": "CUDA Toolkit",
+        "version": "11.7.50",
+        "linux-x86_64": {
+            "relative_path": "cuda_demo_suite/linux-x86_64/cuda_demo_suite-linux-x86_64-11.7.50-archive.tar.xz",
+            "sha256": "10dec9f42f7c60ba8d2e839bedf155addb6a02ebf9a3b2b1c7acbcc47e6e4721",
+            "md5": "4501fa48dcf450f1de5e7b0352859dfa",
+            "size": "3985972"
+        },
+        "windows-x86_64": {
+            "relative_path": "cuda_demo_suite/windows-x86_64/cuda_demo_suite-windows-x86_64-11.7.50-archive.zip",
+            "sha256": "803bab94b1b4f304ddba4c2adcc013a1aaf5251f962d154287f6d880cb3f16a1",
+            "md5": "a240da5cbf8ddcbf44ec969a7c57d68d",
+            "size": "5023822"
+        }
+    },
+    "cuda_documentation": {
+        "name": "CUDA Documentation",
+        "license": "CUDA Toolkit",
+        "version": "11.7.50",
+        "linux-x86_64": {
+            "relative_path": "cuda_documentation/linux-x86_64/cuda_documentation-linux-x86_64-11.7.50-archive.tar.xz",
+            "sha256": "90a169f4c1c782cdd1b1bf1e13f3e9f4ef57f731d87d8fefae115b166032a084",
+            "md5": "1d5f61928ed525f7324e1f600719a786",
+            "size": "67056"
+        },
+        "linux-ppc64le": {
+            "relative_path": "cuda_documentation/linux-ppc64le/cuda_documentation-linux-ppc64le-11.7.50-archive.tar.xz",
+            "sha256": "8c799c128afcf870ea63e73b8a33d924d60bc4281ef77c32c92d0081a7d523c8",
+            "md5": "e5f4d0b477f90698adb4919e1341c407",
+            "size": "67060"
+        },
+        "linux-sbsa": {
+            "relative_path": "cuda_documentation/linux-sbsa/cuda_documentation-linux-sbsa-11.7.50-archive.tar.xz",
+            "sha256": "a2f50b49fe31b0637602743a756df16e6ec3dfc95279d4bb25a9eb1f6de3a80b",
+            "md5": "9316169eca11c975157e77e3649f8a1f",
+            "size": "67060"
+        },
+        "windows-x86_64": {
+            "relative_path": "cuda_documentation/windows-x86_64/cuda_documentation-windows-x86_64-11.7.50-archive.zip",
+            "sha256": "2c497e6ca5ffb440d0504adef51d4e979273959d42a6a22b20cd702085b71f39",
+            "md5": "957cde6fd6211919ac4ca823d3cc90e9",
+            "size": "105283"
+        }
+    },
+    "cuda_gdb": {
+        "name": "CUDA GDB",
+        "license": "CUDA Toolkit",
+        "version": "11.7.50",
+        "linux-x86_64": {
+            "relative_path": "cuda_gdb/linux-x86_64/cuda_gdb-linux-x86_64-11.7.50-archive.tar.xz",
+            "sha256": "ff44bffb8034a694ba6a2c5e171fc766ddc6d9e328b29eab8dd02177d6914f6c",
+            "md5": "72b1fa5a914443acc3eeda12da0aa059",
+            "size": "64209508"
+        },
+        "linux-ppc64le": {
+            "relative_path": "cuda_gdb/linux-ppc64le/cuda_gdb-linux-ppc64le-11.7.50-archive.tar.xz",
+            "sha256": "e442ef2eaaa778ffadb6af3ed92316eddff0dff15b69e334338da5f450203f43",
+            "md5": "6a02488128531898f252163a41c84f93",
+            "size": "64109072"
+        },
+        "linux-sbsa": {
+            "relative_path": "cuda_gdb/linux-sbsa/cuda_gdb-linux-sbsa-11.7.50-archive.tar.xz",
+            "sha256": "f67bae946aaa60a57d7b781a2fe044bde267da58c418067d8be6cbb63959966b",
+            "md5": "3a654d775d9b1466ca00585adc179744",
+            "size": "64025944"
+        }
+    },
+    "cuda_memcheck": {
+        "name": "CUDA Memcheck",
+        "license": "CUDA Toolkit",
+        "version": "11.7.50",
+        "linux-x86_64": {
+            "relative_path": "cuda_memcheck/linux-x86_64/cuda_memcheck-linux-x86_64-11.7.50-archive.tar.xz",
+            "sha256": "12fa99422d9a7ce1714e100cc9faa4c9d37590d79d0af93abc8321217cbf5abd",
+            "md5": "5b29092a20eb8501651f64af028623aa",
+            "size": "139652"
+        },
+        "linux-ppc64le": {
+            "relative_path": "cuda_memcheck/linux-ppc64le/cuda_memcheck-linux-ppc64le-11.7.50-archive.tar.xz",
+            "sha256": "3bed410c4fcaf106f1411a9373bb0091ee46a29f2e980eba4ee274710d8e4f19",
+            "md5": "952e68b3e321df1bdc94327ea186603d",
+            "size": "148036"
+        },
+        "windows-x86_64": {
+            "relative_path": "cuda_memcheck/windows-x86_64/cuda_memcheck-windows-x86_64-11.7.50-archive.zip",
+            "sha256": "79294688bdbed786b68873bc02f8a279b6ce7a468486da365642e3c727cedd9e",
+            "md5": "a6512b0c6fe6aa4f81a6027a64110860",
+            "size": "172868"
+        }
+    },
+    "cuda_nsight": {
+        "name": "Nsight Eclipse Edition Plugin",
+        "license": "CUDA Toolkit",
+        "version": "11.7.50",
+        "linux-x86_64": {
+            "relative_path": "cuda_nsight/linux-x86_64/cuda_nsight-linux-x86_64-11.7.50-archive.tar.xz",
+            "sha256": "483a4970a38c9366c2d3bf7d2ea9d2e2486a13ecaa3bd6ed143a4b18a8fe84b9",
+            "md5": "50eaa0de2047b89aa358682c6937a83a",
+            "size": "118603148"
+        },
+        "linux-ppc64le": {
+            "relative_path": "cuda_nsight/linux-ppc64le/cuda_nsight-linux-ppc64le-11.7.50-archive.tar.xz",
+            "sha256": "93ece42ff578135e10cc7d8bfa4c42449f259d955cf1b71652b7436e2f6854f2",
+            "md5": "9e2cfb70f748efcc22c611938099ccbf",
+            "size": "118603136"
+        }
+    },
+    "cuda_nvcc": {
+        "name": "CUDA NVCC",
+        "license": "CUDA Toolkit",
+        "version": "11.7.64",
+        "linux-x86_64": {
+            "relative_path": "cuda_nvcc/linux-x86_64/cuda_nvcc-linux-x86_64-11.7.64-archive.tar.xz",
+            "sha256": "7721fcfa3eb183ecb1d7fe138ce52d8238f0a6ecf1e9964cf8cfe5d8b7ec3c92",
+            "md5": "640e1e412e0ff6d7eee95e513f67cadb",
+            "size": "37056600"
+        },
+        "linux-ppc64le": {
+            "relative_path": "cuda_nvcc/linux-ppc64le/cuda_nvcc-linux-ppc64le-11.7.64-archive.tar.xz",
+            "sha256": "59792975fe7ba2cb75977965a1eebfc684d4e301a34c43f5f4295124d21c097c",
+            "md5": "0f409845cbe3ed70a6abc971024b1d72",
+            "size": "34873208"
+        },
+        "linux-sbsa": {
+            "relative_path": "cuda_nvcc/linux-sbsa/cuda_nvcc-linux-sbsa-11.7.64-archive.tar.xz",
+            "sha256": "4ba91cfcc7b12b997ed2ceced176f6aa1f7c101a65c0ab6faae9a8fee6d107f1",
+            "md5": "a3ef626196d63f7db7c3c62d80564ab3",
+            "size": "32632012"
+        },
+        "windows-x86_64": {
+            "relative_path": "cuda_nvcc/windows-x86_64/cuda_nvcc-windows-x86_64-11.7.64-archive.zip",
+            "sha256": "dcb47e8c04560a369cc6154242afdb29223e8ceaaf6ea6097e2add09ed64d386",
+            "md5": "de3eb321caac960358731fb07c26e2a2",
+            "size": "47659565"
+        }
+    },
+    "cuda_nvdisasm": {
+        "name": "CUDA nvdisasm",
+        "license": "CUDA Toolkit",
+        "version": "11.7.50",
+        "linux-x86_64": {
+            "relative_path": "cuda_nvdisasm/linux-x86_64/cuda_nvdisasm-linux-x86_64-11.7.50-archive.tar.xz",
+            "sha256": "4e22b735b9553a286390dc76b02e5a7f21dc71234852d7f4f8cf2572fef1a479",
+            "md5": "471deeab3bc3ce504c75b77670ad5140",
+            "size": "32776640"
+        },
+        "linux-ppc64le": {
+            "relative_path": "cuda_nvdisasm/linux-ppc64le/cuda_nvdisasm-linux-ppc64le-11.7.50-archive.tar.xz",
+            "sha256": "1111d62bd0baefdf86de2dd148e44815d04c53d66dff2a1f5a700dd6ec32cce5",
+            "md5": "a1ec03d58d37927080425425a820dee8",
+            "size": "32780884"
+        },
+        "linux-sbsa": {
+            "relative_path": "cuda_nvdisasm/linux-sbsa/cuda_nvdisasm-linux-sbsa-11.7.50-archive.tar.xz",
+            "sha256": "3a9ece8dfb6e93c0e9b6da6753c77c9fb815b42ffc91ee710fbc02b421b0d864",
+            "md5": "3e2cb3ff5390077d97d0d847c423d499",
+            "size": "32730316"
+        },
+        "windows-x86_64": {
+            "relative_path": "cuda_nvdisasm/windows-x86_64/cuda_nvdisasm-windows-x86_64-11.7.50-archive.zip",
+            "sha256": "03403fc8ea81178855e5338623700421c91606e71ef8747568554a0ab5b18355",
+            "md5": "03ea5bb697502568d5b9fb9577974cf7",
+            "size": "33004702"
+        }
+    },
+    "cuda_nvml_dev": {
+        "name": "CUDA NVML Headers",
+        "license": "CUDA Toolkit",
+        "version": "11.7.50",
+        "linux-x86_64": {
+            "relative_path": "cuda_nvml_dev/linux-x86_64/cuda_nvml_dev-linux-x86_64-11.7.50-archive.tar.xz",
+            "sha256": "b6f101106e5ed980bf89b2868cf0b32dd36a28c47e879ee70fca1b85de047fba",
+            "md5": "f8c3a8033eda7215cf2a7b0b1325b5f1",
+            "size": "76548"
+        },
+        "linux-ppc64le": {
+            "relative_path": "cuda_nvml_dev/linux-ppc64le/cuda_nvml_dev-linux-ppc64le-11.7.50-archive.tar.xz",
+            "sha256": "a3f4dbeeec6d6eb6562fd4c432c70a5071aa3e0bbf008118a1676079b4bf646f",
+            "md5": "cd92d1a16f3e60e9620320d18c0e5a6a",
+            "size": "76088"
+        },
+        "linux-sbsa": {
+            "relative_path": "cuda_nvml_dev/linux-sbsa/cuda_nvml_dev-linux-sbsa-11.7.50-archive.tar.xz",
+            "sha256": "ddc4d1c7dafa9a05e387048a561ec01cad16e33276358201f8682780e451037d",
+            "md5": "156e76ed54c7547a11fc6a725d212762",
+            "size": "76728"
+        },
+        "windows-x86_64": {
+            "relative_path": "cuda_nvml_dev/windows-x86_64/cuda_nvml_dev-windows-x86_64-11.7.50-archive.zip",
+            "sha256": "f3cea20a5c75dbe341b11c3fabfbafcc2da6d0d60654cdd46960e941e33dca50",
+            "md5": "2d92f9c4ef5dac8253f5e73e6f428251",
+            "size": "106750"
+        }
+    },
+    "cuda_nvprof": {
+        "name": "CUDA nvprof",
+        "license": "CUDA Toolkit",
+        "version": "11.7.50",
+        "linux-x86_64": {
+            "relative_path": "cuda_nvprof/linux-x86_64/cuda_nvprof-linux-x86_64-11.7.50-archive.tar.xz",
+            "sha256": "8222eebaf3fe6ca1e4df6fda09cbd58f11de6d5b80b5596dcf5c5c45ae246028",
+            "md5": "1fa983b921821b0d38dfc7c5b8234d88",
+            "size": "1944796"
+        },
+        "linux-ppc64le": {
+            "relative_path": "cuda_nvprof/linux-ppc64le/cuda_nvprof-linux-ppc64le-11.7.50-archive.tar.xz",
+            "sha256": "dbf2f41b1c42fe05c9ce0865dfefe867c91a22394acfb03606a4de9cbf07f236",
+            "md5": "865a189bcdc7900e55f1a3e545c312da",
+            "size": "1600116"
+        },
+        "linux-sbsa": {
+            "relative_path": "cuda_nvprof/linux-sbsa/cuda_nvprof-linux-sbsa-11.7.50-archive.tar.xz",
+            "sha256": "5894195fdaf1e550601649fdf93aa93fa042bd3e298867cf95007080b10757ac",
+            "md5": "e3e336dd70f215866864131b889a8261",
+            "size": "16148"
+        },
+        "windows-x86_64": {
+            "relative_path": "cuda_nvprof/windows-x86_64/cuda_nvprof-windows-x86_64-11.7.50-archive.zip",
+            "sha256": "3a115b5bc3bf733cb6fe9d414ae5375928ea75fb1f84112b897015434bc4fc25",
+            "md5": "7fc781f7e740bb6a7a45b593fe8c70a0",
+            "size": "1603305"
+        }
+    },
+    "cuda_nvprune": {
+        "name": "CUDA nvprune",
+        "license": "CUDA Toolkit",
+        "version": "11.7.50",
+        "linux-x86_64": {
+            "relative_path": "cuda_nvprune/linux-x86_64/cuda_nvprune-linux-x86_64-11.7.50-archive.tar.xz",
+            "sha256": "b5c13830f910979be229943cefe70297382ba6c1bddba91174d4837a94c7922d",
+            "md5": "d57409d45bd27a917b90e05e78941326",
+            "size": "55220"
+        },
+        "linux-ppc64le": {
+            "relative_path": "cuda_nvprune/linux-ppc64le/cuda_nvprune-linux-ppc64le-11.7.50-archive.tar.xz",
+            "sha256": "ecace952b4b4631fa347f77371de485f7611525773bc90587f4c639cd51362e7",
+            "md5": "5359a59af33523f5d5d58d0bf6cb6b9a",
+            "size": "55928"
+        },
+        "linux-sbsa": {
+            "relative_path": "cuda_nvprune/linux-sbsa/cuda_nvprune-linux-sbsa-11.7.50-archive.tar.xz",
+            "sha256": "dfc069568ca54425a8bb8c674f2d70218546f64a6836fb918d233becff046624",
+            "md5": "6fdc59145fe540946f9e3ea793f09152",
+            "size": "47656"
+        },
+        "windows-x86_64": {
+            "relative_path": "cuda_nvprune/windows-x86_64/cuda_nvprune-windows-x86_64-11.7.50-archive.zip",
+            "sha256": "605aed14b9832712c81cf36acf389a22023a0737604ff3a1cbdd7338b0780ea4",
+            "md5": "3f105e39da981703ab5a95bfeaf112b9",
+            "size": "144827"
+        }
+    },
+    "cuda_nvrtc": {
+        "name": "CUDA NVRTC",
+        "license": "CUDA Toolkit",
+        "version": "11.7.50",
+        "linux-x86_64": {
+            "relative_path": "cuda_nvrtc/linux-x86_64/cuda_nvrtc-linux-x86_64-11.7.50-archive.tar.xz",
+            "sha256": "a0891b98d5d38f6ae64833c483ccf51417e25b54f0242a5872fabc7c96300f3a",
+            "md5": "e1e1bdd085b979196fc87d2d7d20d237",
+            "size": "28103056"
+        },
+        "linux-ppc64le": {
+            "relative_path": "cuda_nvrtc/linux-ppc64le/cuda_nvrtc-linux-ppc64le-11.7.50-archive.tar.xz",
+            "sha256": "b801983bd480b6a75eeb3b4db41a840de66d3f764ca89440e135d62ae249144e",
+            "md5": "f39ef8fbca0ed175a4815b2c4482b676",
+            "size": "26239068"
+        },
+        "linux-sbsa": {
+            "relative_path": "cuda_nvrtc/linux-sbsa/cuda_nvrtc-linux-sbsa-11.7.50-archive.tar.xz",
+            "sha256": "5d4788a5b3c06d88179824976c8e5e7c76683dfe3bd1e5634ac2037de62b385f",
+            "md5": "609d991b06e17e9f0a85c6e93bbf052b",
+            "size": "26084572"
+        },
+        "windows-x86_64": {
+            "relative_path": "cuda_nvrtc/windows-x86_64/cuda_nvrtc-windows-x86_64-11.7.50-archive.zip",
+            "sha256": "252ae0cd65b1b73208454966f91239d0e8f11232de966c41d8cf3009fe402415",
+            "md5": "6476681ad45cfd18e7cc3f5b16c9111b",
+            "size": "93548358"
+        }
+    },
+    "cuda_nvtx": {
+        "name": "CUDA NVTX",
+        "license": "CUDA Toolkit",
+        "version": "11.7.50",
+        "linux-x86_64": {
+            "relative_path": "cuda_nvtx/linux-x86_64/cuda_nvtx-linux-x86_64-11.7.50-archive.tar.xz",
+            "sha256": "b90454efe80e4fcd328e6250279e4392a01db9035c7317355760c66048899568",
+            "md5": "b14a508a57f1311321b6cb552fde7a9f",
+            "size": "48176"
+        },
+        "linux-ppc64le": {
+            "relative_path": "cuda_nvtx/linux-ppc64le/cuda_nvtx-linux-ppc64le-11.7.50-archive.tar.xz",
+            "sha256": "3dc37a91b9a7769d4ab329d99d8779b7f6feaae63e8fc69d7d5da284cb82efe9",
+            "md5": "eae8b204b8af373dc52ec1cad399dce5",
+            "size": "48156"
+        },
+        "linux-sbsa": {
+            "relative_path": "cuda_nvtx/linux-sbsa/cuda_nvtx-linux-sbsa-11.7.50-archive.tar.xz",
+            "sha256": "b803160fe20715c23a6266849d2a23d298fe7c7e427ec77aca9121d667526441",
+            "md5": "5262caba03904cf79884266f30962f8b",
+            "size": "48768"
+        },
+        "windows-x86_64": {
+            "relative_path": "cuda_nvtx/windows-x86_64/cuda_nvtx-windows-x86_64-11.7.50-archive.zip",
+            "sha256": "cec2aabca78c95a2d6c793372684b060fc695035f568225fd735880331d71e25",
+            "md5": "27b8357312c82ee327b3ec86cb2cecec",
+            "size": "65690"
+        }
+    },
+    "cuda_nvvp": {
+        "name": "CUDA NVVP",
+        "license": "CUDA Toolkit",
+        "version": "11.7.50",
+        "linux-x86_64": {
+            "relative_path": "cuda_nvvp/linux-x86_64/cuda_nvvp-linux-x86_64-11.7.50-archive.tar.xz",
+            "sha256": "6489169df1a4f37cba0c00c3c0e24ac6265bfe06fcca1d4bf3f5824bc937ef9f",
+            "md5": "94951715e2f099553ddd57f40ab4f06c",
+            "size": "117571592"
+        },
+        "linux-ppc64le": {
+            "relative_path": "cuda_nvvp/linux-ppc64le/cuda_nvvp-linux-ppc64le-11.7.50-archive.tar.xz",
+            "sha256": "b54fa7fc79788f991332139ecf722cc834b544d111f476531a3db82b8c15c2b0",
+            "md5": "ece4a0e7524037f64cd81a9a6c85db0c",
+            "size": "117008156"
+        },
+        "windows-x86_64": {
+            "relative_path": "cuda_nvvp/windows-x86_64/cuda_nvvp-windows-x86_64-11.7.50-archive.zip",
+            "sha256": "8b8ddaca9958a58a78f7f50f87ecee3ecb148fe99b0cce6ed37e3ba0ecb6d14f",
+            "md5": "6880ab3d2ae9526e6d5a376fb24dea8e",
+            "size": "120360546"
+        }
+    },
+    "cuda_sanitizer_api": {
+        "name": "CUDA Compute Sanitizer API",
+        "license": "CUDA Toolkit",
+        "version": "11.7.50",
+        "linux-x86_64": {
+            "relative_path": "cuda_sanitizer_api/linux-x86_64/cuda_sanitizer_api-linux-x86_64-11.7.50-archive.tar.xz",
+            "sha256": "9555ae397290608c7a64c929fc80186860008cc8c4afb0bd49deece3a5ca2fc4",
+            "md5": "6b5910c5096decaa4b5c30f3bff3df38",
+            "size": "8314100"
+        },
+        "linux-ppc64le": {
+            "relative_path": "cuda_sanitizer_api/linux-ppc64le/cuda_sanitizer_api-linux-ppc64le-11.7.50-archive.tar.xz",
+            "sha256": "f303a56fd501ce13aa7f12c03137fefd823899b19c26ab53cd314baf47b9b3c7",
+            "md5": "6dc14023de7354aa6f17b833d3adf89e",
+            "size": "7739868"
+        },
+        "linux-sbsa": {
+            "relative_path": "cuda_sanitizer_api/linux-sbsa/cuda_sanitizer_api-linux-sbsa-11.7.50-archive.tar.xz",
+            "sha256": "14c5ffde6606c97a92b7e72dd0987509c3fe876ad57bfe3a88d2b897125a442e",
+            "md5": "84fd52cea0512e63d95ebf62038137f0",
+            "size": "6453516"
+        },
+        "windows-x86_64": {
+            "relative_path": "cuda_sanitizer_api/windows-x86_64/cuda_sanitizer_api-windows-x86_64-11.7.50-archive.zip",
+            "sha256": "090f657396b35d749f0f755b684151d274ae3f392790055f3b659daeee068622",
+            "md5": "685f72ea969afbbebeaba721310618ed",
+            "size": "13477221"
+        }
+    },
+    "fabricmanager": {
+        "name": "NVIDIA Fabric Manager",
+        "license": "NVIDIA Driver",
+        "version": "515.43.04",
+        "linux-x86_64": {
+            "relative_path": "fabricmanager/linux-x86_64/fabricmanager-linux-x86_64-515.43.04-archive.tar.xz",
+            "sha256": "2f4bce4620ce69683428d1752464adcaef466fc471d82618e28d554c7591efe6",
+            "md5": "3dfc3ea1f13a346cfc155c09d80fb48c",
+            "size": "1470572"
+        },
+        "linux-sbsa": {
+            "relative_path": "fabricmanager/linux-sbsa/fabricmanager-linux-sbsa-515.43.04-archive.tar.xz",
+            "sha256": "eb5cda2505cb5fcc3508ab84e8703d9cf318e0df5c2e5b0a832b4fa243b88bea",
+            "md5": "6fd2d3c94b8ccb826d4986fa970261f1",
+            "size": "1358156"
+        }
+    },
+    "libcublas": {
+        "name": "CUDA cuBLAS",
+        "license": "CUDA Toolkit",
+        "version": "11.10.1.25",
+        "linux-x86_64": {
+            "relative_path": "libcublas/linux-x86_64/libcublas-linux-x86_64-11.10.1.25-archive.tar.xz",
+            "sha256": "27f5975b0b373f5fc96ac2f4ec9f28de3eb07f674acc0b0a5262dd2c76ddc5ff",
+            "md5": "f183769621c14cd447bb50fa51088c7b",
+            "size": "432986132"
+        },
+        "linux-ppc64le": {
+            "relative_path": "libcublas/linux-ppc64le/libcublas-linux-ppc64le-11.10.1.25-archive.tar.xz",
+            "sha256": "85aa62b4c23f42f28bc428e84604b4dcb04960db1926c8c2216d5747f0366ab1",
+            "md5": "ca6ce43480df02cd6e5b96e416a02e64",
+            "size": "422295044"
+        },
+        "linux-sbsa": {
+            "relative_path": "libcublas/linux-sbsa/libcublas-linux-sbsa-11.10.1.25-archive.tar.xz",
+            "sha256": "76c50490afd19dc5fdab31281380e0d1a7217dfebecb31477e78e452cac4e0a6",
+            "md5": "748bd159248469f80f67edd4028ac2dd",
+            "size": "422563144"
+        },
+        "windows-x86_64": {
+            "relative_path": "libcublas/windows-x86_64/libcublas-windows-x86_64-11.10.1.25-archive.zip",
+            "sha256": "d1b47527b0fc33f1b185af38590a1d5d7d04c0c71c74c19a488547f9c0a62e7c",
+            "md5": "989c46ebd961d177f8bc2ba0a03955b7",
+            "size": "311249638"
+        }
+    },
+    "libcufft": {
+        "name": "CUDA cuFFT",
+        "license": "CUDA Toolkit",
+        "version": "10.7.2.50",
+        "linux-x86_64": {
+            "relative_path": "libcufft/linux-x86_64/libcufft-linux-x86_64-10.7.2.50-archive.tar.xz",
+            "sha256": "70c4c2abb9d77210a5d2313abfdddf1857d654d1cf925946a645793bc14714c5",
+            "md5": "fe80583fbf4ce9195db760dc9465da2f",
+            "size": "213404700"
+        },
+        "linux-ppc64le": {
+            "relative_path": "libcufft/linux-ppc64le/libcufft-linux-ppc64le-10.7.2.50-archive.tar.xz",
+            "sha256": "f229818bfee4d90aa4a9022a00d26efa749fdb4f61af1ba47b65a9f8dffd1521",
+            "md5": "66768c4e73bd0402be32486ef9ff4952",
+            "size": "213735112"
+        },
+        "linux-sbsa": {
+            "relative_path": "libcufft/linux-sbsa/libcufft-linux-sbsa-10.7.2.50-archive.tar.xz",
+            "sha256": "9aaeae3c1a53ee4cc17c05557f2e30b65581d5d590130d5e205193beceed345d",
+            "md5": "967617dbb350fdd19771bea836e68744",
+            "size": "212335968"
+        },
+        "windows-x86_64": {
+            "relative_path": "libcufft/windows-x86_64/libcufft-windows-x86_64-10.7.2.50-archive.zip",
+            "sha256": "931f380e666dd8dc44b72fb79224c27c720d37310312e9e421e71f16a5e312e1",
+            "md5": "24eb68afe151ab2d7a2c787aeb382d9a",
+            "size": "287120306"
+        }
+    },
+    "libcufile": {
+        "name": "CUDA cuFile",
+        "license": "CUDA Toolkit",
+        "version": "1.3.0.44",
+        "linux-x86_64": {
+            "relative_path": "libcufile/linux-x86_64/libcufile-linux-x86_64-1.3.0.44-archive.tar.xz",
+            "sha256": "2a0a9102596c84afa9afed014fee73630a534ceaef2857c43646f6c9ffba2b95",
+            "md5": "1bacdbc9a48e4e188dfffe15ab062358",
+            "size": "46784140"
+        }
+    },
+    "libcurand": {
+        "name": "CUDA cuRAND",
+        "license": "CUDA Toolkit",
+        "version": "10.2.10.50",
+        "linux-x86_64": {
+            "relative_path": "libcurand/linux-x86_64/libcurand-linux-x86_64-10.2.10.50-archive.tar.xz",
+            "sha256": "a05411f1775d5783800b71f6b43fae660e3baf900ae07efb853e615116ee479b",
+            "md5": "a9f272f6683a79c7b8fa02ae1149f3ad",
+            "size": "82110640"
+        },
+        "linux-ppc64le": {
+            "relative_path": "libcurand/linux-ppc64le/libcurand-linux-ppc64le-10.2.10.50-archive.tar.xz",
+            "sha256": "4c9bc79ab38c3aca8081ea4fcd05876742657659f640c87f7af2a00f4f968787",
+            "md5": "6c714d6725554dd57265812c7a721454",
+            "size": "82156504"
+        },
+        "linux-sbsa": {
+            "relative_path": "libcurand/linux-sbsa/libcurand-linux-sbsa-10.2.10.50-archive.tar.xz",
+            "sha256": "78577951e086501bb9222a55a07bd271dceae5fecdce17625bc453db549e96eb",
+            "md5": "911370c7ba791366d281e4ff62daa2b4",
+            "size": "82100856"
+        },
+        "windows-x86_64": {
+            "relative_path": "libcurand/windows-x86_64/libcurand-windows-x86_64-10.2.10.50-archive.zip",
+            "sha256": "c96a539a76e6062222e66abde64ca19ff6d89729af81a0efc157ba50277edfa9",
+            "md5": "6afa80c834b57ab398708e735b564592",
+            "size": "53656547"
+        }
+    },
+    "libcusolver": {
+        "name": "CUDA cuSOLVER",
+        "license": "CUDA Toolkit",
+        "version": "11.3.5.50",
+        "linux-x86_64": {
+            "relative_path": "libcusolver/linux-x86_64/libcusolver-linux-x86_64-11.3.5.50-archive.tar.xz",
+            "sha256": "7ed168c7fda04a4a640f6225cb76d5251a39e3d35db7630d3646cec58de724f8",
+            "md5": "cc6b0e4d97d7d73f302095cda1499167",
+            "size": "80742472"
+        },
+        "linux-ppc64le": {
+            "relative_path": "libcusolver/linux-ppc64le/libcusolver-linux-ppc64le-11.3.5.50-archive.tar.xz",
+            "sha256": "341889b3c3107f7e3700693fcf815f816a8ffdfc6f2a1ca0f132ea651cb51739",
+            "md5": "0f038f45a4d5195d771d812ba47a34fa",
+            "size": "80769552"
+        },
+        "linux-sbsa": {
+            "relative_path": "libcusolver/linux-sbsa/libcusolver-linux-sbsa-11.3.5.50-archive.tar.xz",
+            "sha256": "4832fd6dca50b2b05d07f086eaa44f953e9b1cd0f00b083f780e0ee1c17461db",
+            "md5": "a7361cc09dc63a6dee54937a12a8004b",
+            "size": "79972404"
+        },
+        "windows-x86_64": {
+            "relative_path": "libcusolver/windows-x86_64/libcusolver-windows-x86_64-11.3.5.50-archive.zip",
+            "sha256": "918a8ed855ef683fa2b4f38e50e8275246b48c266e1066fdcf2bf6db16c9fc6a",
+            "md5": "68c75bd8d556a24d6d204e8007eb1f38",
+            "size": "111712983"
+        }
+    },
+    "libcusparse": {
+        "name": "CUDA cuSPARSE",
+        "license": "CUDA Toolkit",
+        "version": "11.7.3.50",
+        "linux-x86_64": {
+            "relative_path": "libcusparse/linux-x86_64/libcusparse-linux-x86_64-11.7.3.50-archive.tar.xz",
+            "sha256": "c56ddd2d4deebb02bf1e082905f13cac7c685bfa415f1c489dd5fe382cf1f5de",
+            "md5": "04a62c2f92bc0608989bd82b4034d91f",
+            "size": "199048536"
+        },
+        "linux-ppc64le": {
+            "relative_path": "libcusparse/linux-ppc64le/libcusparse-linux-ppc64le-11.7.3.50-archive.tar.xz",
+            "sha256": "d756707e6c84c9ae4b174467d8afba10883f8f286aba26a9230698b73fd187e3",
+            "md5": "bf56661d346440de2242530fed4027b9",
+            "size": "199115552"
+        },
+        "linux-sbsa": {
+            "relative_path": "libcusparse/linux-sbsa/libcusparse-linux-sbsa-11.7.3.50-archive.tar.xz",
+            "sha256": "e2f8a0339739c3d7aa163d98452dcf3e6b71b164d7ff5b999dd35af31d950bc4",
+            "md5": "21ae0da8af1b60bb0e9f658c16730300",
+            "size": "198793236"
+        },
+        "windows-x86_64": {
+            "relative_path": "libcusparse/windows-x86_64/libcusparse-windows-x86_64-11.7.3.50-archive.zip",
+            "sha256": "e7044f4cbce8712f407d041f2116cf61a8831e21d96f28c4c9ca8512847afc28",
+            "md5": "b20eef48a3a956b8643eb7cf457764b9",
+            "size": "167174067"
+        }
+    },
+    "libnpp": {
+        "name": "CUDA NPP",
+        "license": "CUDA Toolkit",
+        "version": "11.7.3.21",
+        "linux-x86_64": {
+            "relative_path": "libnpp/linux-x86_64/libnpp-linux-x86_64-11.7.3.21-archive.tar.xz",
+            "sha256": "4d5f12e756304828cdbbe67dfa94a75432ee07cfe11f034aa4325e59e3c708f7",
+            "md5": "9c7ba42831e40f15b5b94543c659a74b",
+            "size": "164601168"
+        },
+        "linux-ppc64le": {
+            "relative_path": "libnpp/linux-ppc64le/libnpp-linux-ppc64le-11.7.3.21-archive.tar.xz",
+            "sha256": "e3064176e6e0843e5f2d1bd247512be76ca3018364fd7bf77fec34b0bfae37a2",
+            "md5": "4106d95423169f59b5af3bbe3a9e38bf",
+            "size": "164864392"
+        },
+        "linux-sbsa": {
+            "relative_path": "libnpp/linux-sbsa/libnpp-linux-sbsa-11.7.3.21-archive.tar.xz",
+            "sha256": "9cb63cd9d79a490a2504dbf8186d35d391d3e69f74353784955d33d550c83010",
+            "md5": "d5780f7e9a1ba1c3441f810fad68fc32",
+            "size": "163688528"
+        },
+        "windows-x86_64": {
+            "relative_path": "libnpp/windows-x86_64/libnpp-windows-x86_64-11.7.3.21-archive.zip",
+            "sha256": "490a171c6db5e42f67502c0774678166f8018fe464f7e6c8a7b47e10c9fa3861",
+            "md5": "db863d019ff3029a9a14855ff85f6958",
+            "size": "125480452"
+        }
+    },
+    "libnvidia_nscq": {
+        "name": "NVIDIA NSCQ API",
+        "license": "NVIDIA Driver",
+        "version": "515.43.04",
+        "linux-x86_64": {
+            "relative_path": "libnvidia_nscq/linux-x86_64/libnvidia_nscq-linux-x86_64-515.43.04-archive.tar.xz",
+            "sha256": "b0690b271e65cc2096a0de15aa7003c64e336bc5f4c48a7fc87a9b355d240e2a",
+            "md5": "03edfd4d08b358ec3cc98cef63e5138c",
+            "size": "334904"
+        }
+    },
+    "libnvjpeg": {
+        "name": "CUDA nvJPEG",
+        "license": "CUDA Toolkit",
+        "version": "11.7.2.34",
+        "linux-x86_64": {
+            "relative_path": "libnvjpeg/linux-x86_64/libnvjpeg-linux-x86_64-11.7.2.34-archive.tar.xz",
+            "sha256": "0457a11af6903d63aec942e2884e02002c3d579071eacd89f08a25cab339f5eb",
+            "md5": "d6acf73e518edb33c4b7e7f3cb85aa46",
+            "size": "2042120"
+        },
+        "linux-ppc64le": {
+            "relative_path": "libnvjpeg/linux-ppc64le/libnvjpeg-linux-ppc64le-11.7.2.34-archive.tar.xz",
+            "sha256": "70afb2d27b430dd4c43f1dc342e8725d148701093cdebc68a75d6dbaf6615d3f",
+            "md5": "acdf6594c58b6178cf0d83948e8c69b5",
+            "size": "2060012"
+        },
+        "linux-sbsa": {
+            "relative_path": "libnvjpeg/linux-sbsa/libnvjpeg-linux-sbsa-11.7.2.34-archive.tar.xz",
+            "sha256": "8638f70021ad0e9006ec78c0b4f88f787e9d7862176447288f84a2b7d68769f2",
+            "md5": "e3d6b429ab22b4c16476df2f936e46ba",
+            "size": "1893316"
+        },
+        "windows-x86_64": {
+            "relative_path": "libnvjpeg/windows-x86_64/libnvjpeg-windows-x86_64-11.7.2.34-archive.zip",
+            "sha256": "a3594ff7a5431495bc70763c2578ade0a32c74745803b820e49ef52cca2a872b",
+            "md5": "c4c259d4b7833e6cbe1505bf6b62229d",
+            "size": "2055730"
+        }
+    },
+    "nsight_compute": {
+        "name": "Nsight Compute",
+        "license": "NVIDIA SLA",
+        "version": "2022.2.0.13",
+        "linux-x86_64": {
+            "relative_path": "nsight_compute/linux-x86_64/nsight_compute-linux-x86_64-2022.2.0.13-archive.tar.xz",
+            "sha256": "426949d42646164b884ee3025bd5e6b6fef8e904ed69705b7cf3cab9af1fc531",
+            "md5": "0f5700c465c92210a1eadea199b9e07a",
+            "size": "420951860"
+        },
+        "linux-ppc64le": {
+            "relative_path": "nsight_compute/linux-ppc64le/nsight_compute-linux-ppc64le-2022.2.0.13-archive.tar.xz",
+            "sha256": "42c090ffe500b3a6c54c60a17b4f4856d230c558642841edb2b7bb725438be8c",
+            "md5": "ee1f8f57b827862c36bc6807e9a38424",
+            "size": "126737380"
+        },
+        "linux-sbsa": {
+            "relative_path": "nsight_compute/linux-sbsa/nsight_compute-linux-sbsa-2022.2.0.13-archive.tar.xz",
+            "sha256": "4a442d5b6d0b599669ae30d342f46a0c8d047b3a7476b4419435dfe7187e23b8",
+            "md5": "11eec62f941d071b9f7c46855cc75a0b",
+            "size": "246004808"
+        },
+        "windows-x86_64": {
+            "relative_path": "nsight_compute/windows-x86_64/nsight_compute-windows-x86_64-2022.2.0.13-archive.zip",
+            "sha256": "1f06f2d769c9c61c691c59f8c33f214aae6514d41f3eac5073c9310b7b487764",
+            "md5": "c2eb253d66b9258babc1bf9471033691",
+            "size": "354364680"
+        }
+    },
+    "nsight_nvtx": {
+        "name": "Nsight NVTX",
+        "license": "CUDA Toolkit",
+        "version": "1.21018621",
+        "windows-x86_64": {
+            "relative_path": "nsight_nvtx/windows-x86_64/nsight_nvtx-windows-x86_64-1.21018621-archive.zip",
+            "sha256": "d99b015bfb1308206f9d7c16ea401bf426fed3a5a99953b855fe4e68be5ed2d1",
+            "md5": "34ee04d45cfca1c4e3cbfba0ec8f6f80",
+            "size": "315692"
+        }
+    },
+    "nsight_systems": {
+        "name": "Nsight Systems",
+        "license": "NVIDIA SLA",
+        "version": "2022.1.3.3",
+        "linux-x86_64": {
+            "relative_path": "nsight_systems/linux-x86_64/nsight_systems-linux-x86_64-2022.1.3.3-archive.tar.xz",
+            "sha256": "bd95553d573f117be2e3b2bda6e79d14dbb038b136c12c6e5467bbd9a891681d",
+            "md5": "40d12d33aa2d496817d959a9551418aa",
+            "size": "166785296"
+        },
+        "linux-ppc64le": {
+            "relative_path": "nsight_systems/linux-ppc64le/nsight_systems-linux-ppc64le-2022.1.3.3-archive.tar.xz",
+            "sha256": "4c228bfbd38b80612afeb65a406cba829d2b2e2352ea4a810cd6a386d6190151",
+            "md5": "0d5da67cb5393a0e961509cd7dab98f1",
+            "size": "49700384"
+        },
+        "linux-sbsa": {
+            "relative_path": "nsight_systems/linux-sbsa/nsight_systems-linux-sbsa-2022.1.3.3-archive.tar.xz",
+            "sha256": "9025f56b9fe70288ee3f2d30477c9cfbe8c17a304b31f7f22caf7f78153d8d23",
+            "md5": "3559eeb8416d9a984012d2b397560740",
+            "size": "50415564"
+        },
+        "windows-x86_64": {
+            "relative_path": "nsight_systems/windows-x86_64/nsight_systems-windows-x86_64-2022.1.3.3-archive.zip",
+            "sha256": "294738ba0aa0621395740a6d039a490aa0bf5fceec449b1fd4135a97b81eda0f",
+            "md5": "91e316744714c168c1a75804c9a198c9",
+            "size": "315748009"
+        }
+    },
+    "nsight_vse": {
+        "name": "Nsight Visual Studio Edition (VSE)",
+        "license": "NVIDIA SLA",
+        "version": "2022.2.0.22095",
+        "windows-x86_64": {
+            "relative_path": "nsight_vse/windows-x86_64/nsight_vse-windows-x86_64-2022.2.0.22095-archive.zip",
+            "sha256": "b346aadf59d633b114b5e5b3ed437f8eee2bb2b8d532da0ee374ef8af9149cb2",
+            "md5": "63d3a5f0c9abaa027efbe0f476dc7c21",
+            "size": "459001482"
+        }
+    },
+    "nvidia_driver": {
+        "name": "NVIDIA Linux Driver",
+        "license": "NVIDIA Driver",
+        "version": "515.43.04",
+        "linux-x86_64": {
+            "relative_path": "nvidia_driver/linux-x86_64/nvidia_driver-linux-x86_64-515.43.04-archive.tar.xz",
+            "sha256": "933ffd8f73e86e78299daf0b8612f8c24fe4b55cc15c2be353fbfbda3f1d62ea",
+            "md5": "19cf2b2e3d3f6f7786791db89e3a193a",
+            "size": "361628336"
+        },
+        "linux-ppc64le": {
+            "relative_path": "nvidia_driver/linux-ppc64le/nvidia_driver-linux-ppc64le-515.43.04-archive.tar.xz",
+            "sha256": "369998c33a867945193cc3c1c3c78defa7c0309767d926bc871cc02ad659ed61",
+            "md5": "486f222d765d7ce5163d257a4b0e5420",
+            "size": "75667264"
+        },
+        "linux-sbsa": {
+            "relative_path": "nvidia_driver/linux-sbsa/nvidia_driver-linux-sbsa-515.43.04-archive.tar.xz",
+            "sha256": "a534d8112bc15deb5f0e1c471382d776f4daebef25244869eaf5c935016b8fb7",
+            "md5": "5e699844a414a6f40e8c1399dd0f4c9d",
+            "size": "221246660"
+        }
+    },
+    "nvidia_fs": {
+        "name": "NVIDIA filesystem",
+        "license": "CUDA Toolkit",
+        "version": "2.12.4",
+        "linux-x86_64": {
+            "relative_path": "nvidia_fs/linux-x86_64/nvidia_fs-linux-x86_64-2.12.4-archive.tar.xz",
+            "sha256": "913010942a7b6781a9e8fb8082654fda7ad0cce703f726e05d571fe6551f450a",
+            "md5": "48d30f73ec1b6c8df7e70139aefeec4e",
+            "size": "67152"
+        }
+    },
+    "visual_studio_integration": {
+        "name": "CUDA Visual Studio Integration",
+        "license": "CUDA Toolkit",
+        "version": "11.7.50",
+        "windows-x86_64": {
+            "relative_path": "visual_studio_integration/windows-x86_64/visual_studio_integration-windows-x86_64-11.7.50-archive.zip",
+            "sha256": "4eb993cfb46ec925b6907f1433102ae00f0141e57bcfd40489eeaf72e67f0eeb",
+            "md5": "d770d51465dc15345a1ca1307e269832",
+            "size": "517028"
+        }
+    }
+}
diff --git a/pkgs/development/compilers/cudatoolkit/redist/overrides.nix b/pkgs/development/compilers/cudatoolkit/redist/overrides.nix
index 588f2f2a0867d..bcf16db6e12eb 100644
--- a/pkgs/development/compilers/cudatoolkit/redist/overrides.nix
+++ b/pkgs/development/compilers/cudatoolkit/redist/overrides.nix
@@ -37,8 +37,14 @@ in (lib.filterAttrs (attr: _: (prev ? "${attr}")) {
   ];
 
   nsight_compute = prev.nsight_compute.overrideAttrs (oldAttrs: {
-    nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [ pkgs.qt5.wrapQtAppsHook ];
-    buildInputs = oldAttrs.buildInputs ++ [ pkgs.libsForQt5.qt5.qtwebview ];
+    nativeBuildInputs = oldAttrs.nativeBuildInputs
+    ++ (if (lib.versionOlder prev.nsight_compute.version "2022.2.0")
+       then [ pkgs.qt5.wrapQtAppsHook ]
+       else [ pkgs.qt6.wrapQtAppsHook ]);
+    buildInputs = oldAttrs.buildInputs
+    ++ (if (lib.versionOlder prev.nsight_compute.version "2022.2.0")
+       then [ pkgs.qt5.qtwebview ]
+       else [ pkgs.qt6.qtwebview ]);
   });
 
   nsight_systems = prev.nsight_systems.overrideAttrs (oldAttrs: {
diff --git a/pkgs/development/compilers/cudatoolkit/versions.toml b/pkgs/development/compilers/cudatoolkit/versions.toml
index 46173cca12cde..51b79ca97be69 100644
--- a/pkgs/development/compilers/cudatoolkit/versions.toml
+++ b/pkgs/development/compilers/cudatoolkit/versions.toml
@@ -59,3 +59,9 @@ version = "11.6.1"
 url = "https://developer.download.nvidia.com/compute/cuda/11.6.1/local_installers/cuda_11.6.1_510.47.03_linux.run"
 sha256 = "sha256-qyGa/OALdCABEyaYZvv/derQN7z8I1UagzjCaEyYTX4="
 gcc = "gcc11"
+
+["11.7"]
+version = "11.7.0"
+url = "https://developer.download.nvidia.com/compute/cuda/11.7.0/local_installers/cuda_11.7.0_515.43.04_linux.run"
+sha256 = "sha256-CH/fy7ofeVQ7H3jkOo39rF9tskLQQt3oIOFtwYWJLyY="
+gcc = "gcc11"
diff --git a/pkgs/development/compilers/dale/default.nix b/pkgs/development/compilers/dale/default.nix
index 0e4baf3ce57ec..7feb364976e56 100644
--- a/pkgs/development/compilers/dale/default.nix
+++ b/pkgs/development/compilers/dale/default.nix
@@ -3,26 +3,24 @@
 , cmake
 , pkg-config
 , libffi
-, llvm_6
-, doCheck ? false
+, llvm_13
 , perl
 }:
 
 stdenv.mkDerivation {
   pname = "dale";
-  version = "20181024";
+  version = "20220411";
 
   src = fetchFromGitHub {
     owner = "tomhrr";
     repo = "dale";
-    rev = "f5db8b486f4e7c423fc25941a8315f1209bc0e54";
-    sha256 = "0v4ajrzrqvf279kd7wsd9flrpsav57lzxlwwimk9vnfwh7xpzf9v";
+    rev = "7386ef2d8912c60c6fb157a1e5cd772e15eaf658";
+    sha256 = "sha256-LNWqrFuEjtL7zuPTBfe4qQWr8IrT/ldQWSeDTK3Wqmo=";
   };
 
-  nativeBuildInputs = [ cmake pkg-config llvm_6.dev ];
-  buildInputs = [ libffi llvm_6 ];
+  nativeBuildInputs = [ cmake pkg-config llvm_13.dev ];
+  buildInputs = [ libffi llvm_13 ];
 
-  inherit doCheck;
   checkInputs = [ perl ];
 
   checkTarget = "tests";
@@ -36,8 +34,7 @@ stdenv.mkDerivation {
     homepage = "https://github.com/tomhrr/dale";
     license = licenses.bsd3;
     maintainers = with maintainers; [ amiloradovsky ];
-    platforms = [ "i686-linux" "x86_64-linux" ];
+    platforms = [ "i686-linux" "x86_64-linux" "aarch64-linux" ];
     # failed on Darwin: linker couldn't find the FFI lib
-    # failed on AArch64: because LLVM 3.5 is failed there
   };
 }
diff --git a/pkgs/development/compilers/dotnet/build-dotnet.nix b/pkgs/development/compilers/dotnet/build-dotnet.nix
index b61adce0ad1dd..69f770900fdd4 100644
--- a/pkgs/development/compilers/dotnet/build-dotnet.nix
+++ b/pkgs/development/compilers/dotnet/build-dotnet.nix
@@ -72,9 +72,16 @@ stdenv.mkDerivation (finalAttrs: rec {
 
   installPhase = ''
     runHook preInstall
+
     mkdir -p $out/bin
     cp -r ./ $out
+
+    mkdir -p $out/share/doc/$pname/$version
+    mv $out/LICENSE.txt $out/share/doc/$pname/$version/
+    mv $out/ThirdPartyNotices.txt $out/share/doc/$pname/$version/
+
     ln -s $out/dotnet $out/bin/dotnet
+
     runHook postInstall
   '';
 
diff --git a/pkgs/development/compilers/flutter/default.nix b/pkgs/development/compilers/flutter/default.nix
index 4529d2adc1aac..676ef78e3b349 100644
--- a/pkgs/development/compilers/flutter/default.nix
+++ b/pkgs/development/compilers/flutter/default.nix
@@ -4,34 +4,50 @@ let
   getPatches = dir:
     let files = builtins.attrNames (builtins.readDir dir);
     in map (f: dir + ("/" + f)) files;
-  version = "3.0.4";
-  channel = "stable";
-  filename = "flutter_linux_${version}-${channel}.tar.xz";
-
-  # Decouples flutter derivation from dart derivation,
-  # use specific dart version to not need to bump dart derivation when bumping flutter.
-  dartVersion = "2.17.5";
-  dartSourceBase = "https://storage.googleapis.com/dart-archive/channels";
-  dartForFlutter = dart.override {
-    version = dartVersion;
-    sources = {
-      "${dartVersion}-x86_64-linux" = fetchurl {
-        url = "${dartSourceBase}/stable/release/${dartVersion}/sdk/dartsdk-linux-x64-release.zip";
-        sha256 = "sha256-AFJGeiPsjUZSO+DykmOIFETg2jIohg62tp3ghZrKJFk=";
+  flutterDrv = { version, pname, dartVersion, hash, dartHash, patches }: mkFlutter {
+    inherit version pname patches;
+    dart = dart.override {
+      version = dartVersion;
+      sources = {
+        "${dartVersion}-x86_64-linux" = fetchurl {
+          url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${dartVersion}/sdk/dartsdk-linux-x64-release.zip";
+          sha256 = dartHash.x86_64-linux;
+        };
+        "${dartVersion}-aarch64-linux" = fetchurl {
+          url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${dartVersion}/sdk/dartsdk-linux-arm64-release.zip";
+          sha256 = dartHash.aarch64-linux;
+        };
       };
     };
+    src = fetchurl {
+      url = "https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_${version}-stable.tar.xz";
+      sha256 = hash;
+    };
   };
 in
 {
   inherit mkFlutter;
-  stable = mkFlutter rec {
-    inherit version;
-    dart = dartForFlutter;
+  stable = flutterDrv {
     pname = "flutter";
-    src = fetchurl {
-      url = "https://storage.googleapis.com/flutter_infra_release/releases/${channel}/linux/${filename}";
-      sha256 = "sha256-vh3QjLGFBN321DUET9XhYqSkILjEj+ZqAALu/mxY+go=";
+    version = "3.3.3";
+    dartVersion = "2.18.2";
+    hash = "sha256-MTZeWQUp4/TcPzYIT6eqIKSPUPvn2Mp/thOQzNgpTXg=";
+    dartHash = {
+      x86_64-linux = "sha256-C3+YjecXLvSmJrLwi9H7TgD9Np0AArRWx3EdBrfQpTU";
+      aarch64-linux = "sha256-zyIK1i5/9P2C+sjzdArhFwpVO4P+It+/X50l+n9gekI=";
+    };
+    patches = getPatches ./patches/flutter3;
+  };
+
+  v2 = flutterDrv {
+    pname = "flutter";
+    version = "2.10.5";
+    dartVersion = "2.16.2";
+    hash = "sha256-DTZwxlMUYk8NS1SaWUJolXjD+JnRW73Ps5CdRHDGnt0=";
+    dartHash = {
+      x86_64-linux = "sha256-egrYd7B4XhkBiHPIFE2zopxKtQ58GqlogAKA/UeiXnI=";
+      aarch64-linux = "sha256-vmerjXkUAUnI8FjK+62qLqgETmA+BLPEZXFxwYpI+KY=";
     };
-    patches = getPatches ./patches;
+    patches = getPatches ./patches/flutter2;
   };
 }
diff --git a/pkgs/development/compilers/flutter/flutter.nix b/pkgs/development/compilers/flutter/flutter.nix
index 28a78c3e3060f..c9b8a21134915 100644
--- a/pkgs/development/compilers/flutter/flutter.nix
+++ b/pkgs/development/compilers/flutter/flutter.nix
@@ -65,7 +65,7 @@ let
       popd
 
       local revision="$(cd "$FLUTTER_ROOT"; git rev-parse HEAD)"
-      ${dart}/bin/dart --snapshot="$SNAPSHOT_PATH" --packages="$FLUTTER_TOOLS_DIR/.packages" "$SCRIPT_PATH"
+      ${dart}/bin/dart --snapshot="$SNAPSHOT_PATH" --packages="$FLUTTER_TOOLS_DIR/.dart_tool/package_config.json" "$SCRIPT_PATH"
       echo "$revision" > "$STAMP_PATH"
       echo -n "${version}" > version
 
@@ -174,7 +174,7 @@ runCommand drvName
     '';
     homepage = "https://flutter.dev";
     license = licenses.bsd3;
-    platforms = [ "x86_64-linux" ];
+    platforms = [ "x86_64-linux" "aarch64-linux" ];
     maintainers = with maintainers; [ babariviere ericdallo ];
   };
 } ''
diff --git a/pkgs/development/compilers/flutter/patches/disable-auto-update.patch b/pkgs/development/compilers/flutter/patches/flutter2/disable-auto-update.patch
index e799f6e1550b5..e799f6e1550b5 100644
--- a/pkgs/development/compilers/flutter/patches/disable-auto-update.patch
+++ b/pkgs/development/compilers/flutter/patches/flutter2/disable-auto-update.patch
diff --git a/pkgs/development/compilers/flutter/patches/flutter2/git-dir.patch b/pkgs/development/compilers/flutter/patches/flutter2/git-dir.patch
new file mode 100644
index 0000000000000..0136ef93106d1
--- /dev/null
+++ b/pkgs/development/compilers/flutter/patches/flutter2/git-dir.patch
@@ -0,0 +1,80 @@
+diff --git a/dev/bots/prepare_package.dart b/dev/bots/prepare_package.dart
+index 468a91a954..5def6897ce 100644
+--- a/dev/bots/prepare_package.dart
++++ b/dev/bots/prepare_package.dart
+@@ -525,7 +525,7 @@ class ArchiveCreator {
+ 
+   Future<String> _runGit(List<String> args, {Directory? workingDirectory}) {
+     return _processRunner.runProcess(
+-      <String>['git', ...args],
++      <String>['git', '--git-dir', '.git', ...args],
+       workingDirectory: workingDirectory ?? flutterRoot,
+     );
+   }
+diff --git a/packages/flutter_tools/lib/src/version.dart b/packages/flutter_tools/lib/src/version.dart
+index f2068a6ca2..99b161689e 100644
+--- a/packages/flutter_tools/lib/src/version.dart
++++ b/packages/flutter_tools/lib/src/version.dart
+@@ -106,7 +106,7 @@ class FlutterVersion {
+     String? channel = _channel;
+     if (channel == null) {
+       final String gitChannel = _runGit(
+-        'git rev-parse --abbrev-ref --symbolic @{u}',
++        'git --git-dir .git rev-parse --abbrev-ref --symbolic @{u}',
+         globals.processUtils,
+         _workingDirectory,
+       );
+@@ -114,7 +114,7 @@ class FlutterVersion {
+       if (slash != -1) {
+         final String remote = gitChannel.substring(0, slash);
+         _repositoryUrl = _runGit(
+-          'git ls-remote --get-url $remote',
++          'git --git-dir .git ls-remote --get-url $remote',
+           globals.processUtils,
+           _workingDirectory,
+         );
+@@ -326,7 +326,7 @@ class FlutterVersion {
+   /// the branch name will be returned as `'[user-branch]'`.
+   String getBranchName({ bool redactUnknownBranches = false }) {
+     _branch ??= () {
+-      final String branch = _runGit('git rev-parse --abbrev-ref HEAD', globals.processUtils);
++      final String branch = _runGit('git --git-dir .git rev-parse --abbrev-ref HEAD', globals.processUtils);
+       return branch == 'HEAD' ? channel : branch;
+     }();
+     if (redactUnknownBranches || _branch!.isEmpty) {
+@@ -359,7 +359,7 @@ class FlutterVersion {
+   /// wrapper that does that.
+   @visibleForTesting
+   static List<String> gitLog(List<String> args) {
+-    return <String>['git', '-c', 'log.showSignature=false', 'log'] + args;
++    return <String>['git', '-c', 'log.showSignature=false', '--git-dir', '.git', 'log'] + args;
+   }
+ 
+   /// Gets the release date of the latest available Flutter version.
+@@ -730,7 +730,7 @@ class GitTagVersion {
+ 
+   static GitTagVersion determine(ProcessUtils processUtils, {String? workingDirectory, bool fetchTags = false, String gitRef = 'HEAD'}) {
+     if (fetchTags) {
+-      final String channel = _runGit('git rev-parse --abbrev-ref HEAD', processUtils, workingDirectory);
++      final String channel = _runGit('git --git-dir .git rev-parse --abbrev-ref HEAD', processUtils, workingDirectory);
+       if (channel == 'dev' || channel == 'beta' || channel == 'stable') {
+         globals.printTrace('Skipping request to fetchTags - on well known channel $channel.');
+       } else {
+@@ -739,7 +739,7 @@ class GitTagVersion {
+     }
+     // find all tags attached to the given [gitRef]
+     final List<String> tags = _runGit(
+-      'git tag --points-at $gitRef', processUtils, workingDirectory).trim().split('\n');
++      'git --git-dir .git tag --points-at $gitRef', processUtils, workingDirectory).trim().split('\n');
+ 
+     // Check first for a stable tag
+     final RegExp stableTagPattern = RegExp(r'^\d+\.\d+\.\d+$');
+@@ -760,7 +760,7 @@ class GitTagVersion {
+     // recent tag and number of commits past.
+     return parse(
+       _runGit(
+-        'git describe --match *.*.* --long --tags $gitRef',
++        'git --git-dir .git describe --match *.*.* --long --tags $gitRef',
+         processUtils,
+         workingDirectory,
+       )
diff --git a/pkgs/development/compilers/flutter/patches/flutter2/move-cache.patch b/pkgs/development/compilers/flutter/patches/flutter2/move-cache.patch
new file mode 100644
index 0000000000000..a81d2def242c9
--- /dev/null
+++ b/pkgs/development/compilers/flutter/patches/flutter2/move-cache.patch
@@ -0,0 +1,72 @@
+diff --git a/packages/flutter_tools/lib/src/asset.dart b/packages/flutter_tools/lib/src/asset.dart
+index ed42baea29..12941f733a 100644
+--- a/packages/flutter_tools/lib/src/asset.dart
++++ b/packages/flutter_tools/lib/src/asset.dart
+@@ -11,11 +11,11 @@ import 'base/file_system.dart';
+ import 'base/logger.dart';
+ import 'base/platform.dart';
+ import 'build_info.dart';
+-import 'cache.dart';
+ import 'convert.dart';
+ import 'dart/package_map.dart';
+ import 'devfs.dart';
+ import 'flutter_manifest.dart';
++import 'globals.dart' as globals;
+ import 'license_collector.dart';
+ import 'project.dart';
+ 
+@@ -504,7 +504,7 @@ class ManifestAssetBundle implements AssetBundle {
+         }
+         final Uri entryUri = _fileSystem.path.toUri(asset);
+         result.add(_Asset(
+-          baseDir: _fileSystem.path.join(Cache.flutterRoot!, 'bin', 'cache', 'artifacts', 'material_fonts'),
++          baseDir: _fileSystem.path.join(globals.fsUtils.homeDirPath!, '.cache', 'flutter', 'artifacts', 'material_fonts'),
+           relativeUri: Uri(path: entryUri.pathSegments.last),
+           entryUri: entryUri,
+           package: null,
+diff --git a/packages/flutter_tools/lib/src/cache.dart b/packages/flutter_tools/lib/src/cache.dart
+index defc86cc20..7fdf14d112 100644
+--- a/packages/flutter_tools/lib/src/cache.dart
++++ b/packages/flutter_tools/lib/src/cache.dart
+@@ -22,6 +22,7 @@ import 'base/user_messages.dart';
+ import 'build_info.dart';
+ import 'convert.dart';
+ import 'features.dart';
++import 'globals.dart' as globals;
+ 
+ const String kFlutterRootEnvironmentVariableName = 'FLUTTER_ROOT'; // should point to //flutter/ (root of flutter/flutter repo)
+ const String kFlutterEngineEnvironmentVariableName = 'FLUTTER_ENGINE'; // should point to //engine/src/ (root of flutter/engine repo)
+@@ -322,8 +323,13 @@ class Cache {
+       return;
+     }
+     assert(_lock == null);
++    final Directory dir = _fileSystem.directory(_fileSystem.path.join(globals.fsUtils.homeDirPath!, '.cache', 'flutter'));
++    if (!dir.existsSync()) {
++      dir.createSync(recursive: true);
++      globals.os.chmod(dir, '755');
++    }
+     final File lockFile =
+-      _fileSystem.file(_fileSystem.path.join(flutterRoot!, 'bin', 'cache', 'lockfile'));
++      _fileSystem.file(_fileSystem.path.join(globals.fsUtils.homeDirPath!, '.cache', 'flutter', 'lockfile'));
+     try {
+       _lock = lockFile.openSync(mode: FileMode.write);
+     } on FileSystemException catch (e) {
+@@ -382,8 +388,7 @@ class Cache {
+ 
+   String get devToolsVersion {
+     if (_devToolsVersion == null) {
+-      const String devToolsDirPath = 'dart-sdk/bin/resources/devtools';
+-      final Directory devToolsDir = getCacheDir(devToolsDirPath, shouldCreate: false);
++      final Directory devToolsDir = _fileSystem.directory(_fileSystem.path.join(flutterRoot!, 'bin/cache/dart-sdk/bin/resources/devtools'));
+       if (!devToolsDir.existsSync()) {
+         throw Exception('Could not find directory at ${devToolsDir.path}');
+       }
+@@ -536,7 +541,7 @@ class Cache {
+     if (_rootOverride != null) {
+       return _fileSystem.directory(_fileSystem.path.join(_rootOverride!.path, 'bin', 'cache'));
+     } else {
+-      return _fileSystem.directory(_fileSystem.path.join(flutterRoot!, 'bin', 'cache'));
++      return _fileSystem.directory(_fileSystem.path.join(globals.fsUtils.homeDirPath!, '.cache', 'flutter'));
+     }
+   }
+ 
diff --git a/pkgs/development/compilers/flutter/patches/flutter3/disable-auto-update.patch b/pkgs/development/compilers/flutter/patches/flutter3/disable-auto-update.patch
new file mode 100644
index 0000000000000..21b676a2af390
--- /dev/null
+++ b/pkgs/development/compilers/flutter/patches/flutter3/disable-auto-update.patch
@@ -0,0 +1,36 @@
+diff --git a/bin/internal/shared.sh b/bin/internal/shared.sh
+index ab746724e9..1087983c87 100644
+--- a/bin/internal/shared.sh
++++ b/bin/internal/shared.sh
+@@ -215,8 +215,6 @@ function shared::execute() {
+     exit 1
+   fi
+ 
+-  upgrade_flutter 7< "$PROG_NAME"
+-
+   BIN_NAME="$(basename "$PROG_NAME")"
+   case "$BIN_NAME" in
+     flutter*)
+diff --git a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
+index 738fef987d..03a152e64f 100644
+--- a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
++++ b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
+@@ -241,7 +241,6 @@ class FlutterCommandRunner extends CommandRunner<void> {
+           globals.flutterUsage.suppressAnalytics = true;
+         }
+ 
+-        globals.flutterVersion.ensureVersionFile();
+         final bool machineFlag = topLevelResults['machine'] as bool? ?? false;
+         final bool ci = await globals.botDetector.isRunningOnBot;
+         final bool redirectedCompletion = !globals.stdio.hasTerminal &&
+@@ -250,10 +249,6 @@ class FlutterCommandRunner extends CommandRunner<void> {
+         final bool versionCheckFlag = topLevelResults['version-check'] as bool? ?? false;
+         final bool explicitVersionCheckPassed = topLevelResults.wasParsed('version-check') && versionCheckFlag;
+ 
+-        if (topLevelResults.command?.name != 'upgrade' &&
+-            (explicitVersionCheckPassed || (versionCheckFlag && !isMachine))) {
+-          await globals.flutterVersion.checkFlutterVersionFreshness();
+-        }
+ 
+         // See if the user specified a specific device.
+         globals.deviceManager?.specifiedDeviceId = topLevelResults['device-id'] as String?;
diff --git a/pkgs/development/compilers/flutter/patches/git-dir.patch b/pkgs/development/compilers/flutter/patches/flutter3/git-dir.patch
index 0c736f945ea97..42ad756f8ea4b 100644
--- a/pkgs/development/compilers/flutter/patches/git-dir.patch
+++ b/pkgs/development/compilers/flutter/patches/flutter3/git-dir.patch
@@ -1,8 +1,8 @@
 diff --git a/dev/bots/prepare_package.dart b/dev/bots/prepare_package.dart
-index 468a91a954..5def6897ce 100644
+index 8e4cb81340..2c20940423 100644
 --- a/dev/bots/prepare_package.dart
 +++ b/dev/bots/prepare_package.dart
-@@ -525,7 +525,7 @@ class ArchiveCreator {
+@@ -526,7 +526,7 @@ class ArchiveCreator {
  
    Future<String> _runGit(List<String> args, {Directory? workingDirectory}) {
      return _processRunner.runProcess(
@@ -12,7 +12,7 @@ index 468a91a954..5def6897ce 100644
      );
    }
 diff --git a/packages/flutter_tools/lib/src/commands/downgrade.dart b/packages/flutter_tools/lib/src/commands/downgrade.dart
-index bb0eb428a9..4a2a48bb5e 100644
+index 666c190067..b6c3761f6f 100644
 --- a/packages/flutter_tools/lib/src/commands/downgrade.dart
 +++ b/packages/flutter_tools/lib/src/commands/downgrade.dart
 @@ -118,7 +118,7 @@ class DowngradeCommand extends FlutterCommand {
@@ -34,19 +34,19 @@ index bb0eb428a9..4a2a48bb5e 100644
        if (parseResult.exitCode == 0) {
          buffer.writeln('Channel "${getNameForChannel(channel)}" was previously on: ${parseResult.stdout}.');
 diff --git a/packages/flutter_tools/lib/src/version.dart b/packages/flutter_tools/lib/src/version.dart
-index f2068a6ca2..99b161689e 100644
+index dc47f17057..8068e2d1f5 100644
 --- a/packages/flutter_tools/lib/src/version.dart
 +++ b/packages/flutter_tools/lib/src/version.dart
-@@ -106,7 +106,7 @@ class FlutterVersion {
+@@ -111,7 +111,7 @@ class FlutterVersion {
      String? channel = _channel;
      if (channel == null) {
        final String gitChannel = _runGit(
--        'git rev-parse --abbrev-ref --symbolic @{u}',
-+        'git --git-dir .git rev-parse --abbrev-ref --symbolic @{u}',
+-        'git rev-parse --abbrev-ref --symbolic $kGitTrackingUpstream',
++        'git --git-dir .git rev-parse --abbrev-ref --symbolic $kGitTrackingUpstream',
          globals.processUtils,
          _workingDirectory,
        );
-@@ -114,7 +114,7 @@ class FlutterVersion {
+@@ -119,7 +119,7 @@ class FlutterVersion {
        if (slash != -1) {
          final String remote = gitChannel.substring(0, slash);
          _repositoryUrl = _runGit(
@@ -55,7 +55,7 @@ index f2068a6ca2..99b161689e 100644
            globals.processUtils,
            _workingDirectory,
          );
-@@ -326,7 +326,7 @@ class FlutterVersion {
+@@ -298,7 +298,7 @@ class FlutterVersion {
    /// the branch name will be returned as `'[user-branch]'`.
    String getBranchName({ bool redactUnknownBranches = false }) {
      _branch ??= () {
@@ -64,7 +64,7 @@ index f2068a6ca2..99b161689e 100644
        return branch == 'HEAD' ? channel : branch;
      }();
      if (redactUnknownBranches || _branch!.isEmpty) {
-@@ -359,7 +359,7 @@ class FlutterVersion {
+@@ -331,7 +331,7 @@ class FlutterVersion {
    /// wrapper that does that.
    @visibleForTesting
    static List<String> gitLog(List<String> args) {
@@ -73,16 +73,16 @@ index f2068a6ca2..99b161689e 100644
    }
  
    /// Gets the release date of the latest available Flutter version.
-@@ -730,7 +730,7 @@ class GitTagVersion {
- 
-   static GitTagVersion determine(ProcessUtils processUtils, {String? workingDirectory, bool fetchTags = false, String gitRef = 'HEAD'}) {
+@@ -708,7 +708,7 @@ class GitTagVersion {
+     String gitRef = 'HEAD'
+   }) {
      if (fetchTags) {
 -      final String channel = _runGit('git rev-parse --abbrev-ref HEAD', processUtils, workingDirectory);
 +      final String channel = _runGit('git --git-dir .git rev-parse --abbrev-ref HEAD', processUtils, workingDirectory);
        if (channel == 'dev' || channel == 'beta' || channel == 'stable') {
          globals.printTrace('Skipping request to fetchTags - on well known channel $channel.');
        } else {
-@@ -739,7 +739,7 @@ class GitTagVersion {
+@@ -718,7 +718,7 @@ class GitTagVersion {
      }
      // find all tags attached to the given [gitRef]
      final List<String> tags = _runGit(
@@ -91,7 +91,7 @@ index f2068a6ca2..99b161689e 100644
  
      // Check first for a stable tag
      final RegExp stableTagPattern = RegExp(r'^\d+\.\d+\.\d+$');
-@@ -760,7 +760,7 @@ class GitTagVersion {
+@@ -739,7 +739,7 @@ class GitTagVersion {
      // recent tag and number of commits past.
      return parse(
        _runGit(
diff --git a/pkgs/development/compilers/flutter/patches/move-cache.patch b/pkgs/development/compilers/flutter/patches/flutter3/move-cache.patch
index 5cb7c71e9bd4c..008c5959e5b9b 100644
--- a/pkgs/development/compilers/flutter/patches/move-cache.patch
+++ b/pkgs/development/compilers/flutter/patches/flutter3/move-cache.patch
@@ -1,13 +1,9 @@
+diff --git a/packages/flutter_tools/lib/src/artifacts.dart b/packages/flutter_tools/lib/src/artifacts.dart
 diff --git a/packages/flutter_tools/lib/src/asset.dart b/packages/flutter_tools/lib/src/asset.dart
-index ed42baea29..12941f733a 100644
+index 9dd7272fbe..642c8e48e4 100644
 --- a/packages/flutter_tools/lib/src/asset.dart
 +++ b/packages/flutter_tools/lib/src/asset.dart
-@@ -11,11 +11,11 @@ import 'base/file_system.dart';
- import 'base/logger.dart';
- import 'base/platform.dart';
- import 'build_info.dart';
--import 'cache.dart';
- import 'convert.dart';
+@@ -16,6 +16,7 @@ import 'convert.dart';
  import 'dart/package_map.dart';
  import 'devfs.dart';
  import 'flutter_manifest.dart';
@@ -15,17 +11,18 @@ index ed42baea29..12941f733a 100644
  import 'license_collector.dart';
  import 'project.dart';
  
-@@ -504,7 +504,7 @@ class ManifestAssetBundle implements AssetBundle {
-         }
+@@ -530,8 +531,7 @@ class ManifestAssetBundle implements AssetBundle {
          final Uri entryUri = _fileSystem.path.toUri(asset);
          result.add(_Asset(
--          baseDir: _fileSystem.path.join(Cache.flutterRoot!, 'bin', 'cache', 'artifacts', 'material_fonts'),
-+          baseDir: _fileSystem.path.join(globals.fsUtils.homeDirPath!, '.cache', 'flutter', 'artifacts', 'material_fonts'),
+           baseDir: _fileSystem.path.join(
+-            Cache.flutterRoot!,
+-            'bin', 'cache', 'artifacts', 'material_fonts',
++            globals.fsUtils.homeDirPath!, '.cache', 'flutter', 'artifacts', 'material_fonts',
+           ),
            relativeUri: Uri(path: entryUri.pathSegments.last),
            entryUri: entryUri,
-           package: null,
 diff --git a/packages/flutter_tools/lib/src/cache.dart b/packages/flutter_tools/lib/src/cache.dart
-index defc86cc20..7fdf14d112 100644
+index dd80b1e46e..8e54517765 100644
 --- a/packages/flutter_tools/lib/src/cache.dart
 +++ b/packages/flutter_tools/lib/src/cache.dart
 @@ -22,6 +22,7 @@ import 'base/user_messages.dart';
@@ -36,7 +33,7 @@ index defc86cc20..7fdf14d112 100644
  
  const String kFlutterRootEnvironmentVariableName = 'FLUTTER_ROOT'; // should point to //flutter/ (root of flutter/flutter repo)
  const String kFlutterEngineEnvironmentVariableName = 'FLUTTER_ENGINE'; // should point to //engine/src/ (root of flutter/engine repo)
-@@ -322,8 +323,13 @@ class Cache {
+@@ -318,8 +319,13 @@ class Cache {
        return;
      }
      assert(_lock == null);
@@ -51,7 +48,7 @@ index defc86cc20..7fdf14d112 100644
      try {
        _lock = lockFile.openSync(mode: FileMode.write);
      } on FileSystemException catch (e) {
-@@ -382,8 +388,7 @@ class Cache {
+@@ -378,8 +384,7 @@ class Cache {
  
    String get devToolsVersion {
      if (_devToolsVersion == null) {
@@ -61,7 +58,7 @@ index defc86cc20..7fdf14d112 100644
        if (!devToolsDir.existsSync()) {
          throw Exception('Could not find directory at ${devToolsDir.path}');
        }
-@@ -536,7 +541,7 @@ class Cache {
+@@ -532,7 +537,7 @@ class Cache {
      if (_rootOverride != null) {
        return _fileSystem.directory(_fileSystem.path.join(_rootOverride!.path, 'bin', 'cache'));
      } else {
@@ -70,8 +67,7 @@ index defc86cc20..7fdf14d112 100644
      }
    }
  
-diff --git a/packages/flutter_tools/lib/src/artifacts.dart b/packages/flutter_tools/lib/src/artifacts.dart
-index 2aac9686e8..32c4b98b88 100644
+index c539d67156..4e0a64f7a9 100644
 --- a/packages/flutter_tools/lib/src/artifacts.dart
 +++ b/packages/flutter_tools/lib/src/artifacts.dart
 @@ -346,10 +346,10 @@ class CachedArtifacts implements Artifacts {
@@ -82,8 +78,8 @@ index 2aac9686e8..32c4b98b88 100644
 +        final String path = _dartSdkPath(_fileSystem);
          return _fileSystem.directory(path);
        case HostArtifact.engineDartBinary:
--        final String path = _fileSystem.path.join(_dartSdkPath(_cache), 'bin', _hostArtifactToFileName(artifact, _platform.isWindows));
-+        final String path = _fileSystem.path.join(_dartSdkPath(_fileSystem), 'bin', _hostArtifactToFileName(artifact, _platform.isWindows));
+-        final String path = _fileSystem.path.join(_dartSdkPath(_cache), 'bin', _hostArtifactToFileName(artifact, _platform));
++        final String path = _fileSystem.path.join(_dartSdkPath(_fileSystem), 'bin', _hostArtifactToFileName(artifact, _platform));
          return _fileSystem.file(path);
        case HostArtifact.flutterWebSdk:
          final String path = _getFlutterWebSdkPath();
@@ -91,12 +87,12 @@ index 2aac9686e8..32c4b98b88 100644
        case HostArtifact.dart2jsSnapshot:
        case HostArtifact.dartdevcSnapshot:
        case HostArtifact.kernelWorkerSnapshot:
--        final String path = _fileSystem.path.join(_dartSdkPath(_cache), 'bin', 'snapshots', _hostArtifactToFileName(artifact, _platform.isWindows));
-+        final String path = _fileSystem.path.join(_dartSdkPath(_fileSystem), 'bin', 'snapshots', _hostArtifactToFileName(artifact, _platform.isWindows));
+-        final String path = _fileSystem.path.join(_dartSdkPath(_cache), 'bin', 'snapshots', _hostArtifactToFileName(artifact, _platform));
++        final String path = _fileSystem.path.join(_dartSdkPath(_fileSystem), 'bin', 'snapshots', _hostArtifactToFileName(artifact, _platform));
          return _fileSystem.file(path);
        case HostArtifact.iosDeploy:
-         final String artifactFileName = _hostArtifactToFileName(artifact, _platform.isWindows);
-@@ -461,11 +461,13 @@ class CachedArtifacts implements Artifacts {
+         final String artifactFileName = _hostArtifactToFileName(artifact, _platform);
+@@ -465,11 +465,13 @@ class CachedArtifacts implements Artifacts {
    String _getAndroidArtifactPath(Artifact artifact, TargetPlatform platform, BuildMode mode) {
      final String engineDir = _getEngineArtifactsPath(platform, mode)!;
      switch (artifact) {
@@ -125,8 +121,8 @@ index 2aac9686e8..32c4b98b88 100644
 -      case Artifact.frontendServerSnapshotForEngineDartSdk:
        case Artifact.constFinder:
        case Artifact.flutterMacOSFramework:
-       case Artifact.flutterMacOSPodspec:
-@@ -594,14 +596,10 @@ class CachedArtifacts implements Artifacts {
+       case Artifact.flutterPatchedSdkPath:
+@@ -586,14 +588,10 @@ class CachedArtifacts implements Artifacts {
          // For script snapshots any gen_snapshot binary will do. Returning gen_snapshot for
          // android_arm in profile mode because it is available on all supported host platforms.
          return _getAndroidArtifactPath(artifact, TargetPlatform.android_arm, BuildMode.profile);
@@ -142,27 +138,27 @@ index 2aac9686e8..32c4b98b88 100644
        case Artifact.icuData:
          final String engineArtifactsPath = _cache.getArtifactDirectory('engine').path;
          final String platformDirName = _enginePlatformDirectoryName(platform);
-@@ -797,7 +795,7 @@ class CachedLocalEngineArtifacts implements LocalEngineArtifacts {
-         final String path = _fileSystem.path.join(_hostEngineOutPath, 'dart-sdk', 'bin', 'snapshots', _hostArtifactToFileName(artifact, _platform.isWindows));
+@@ -776,7 +774,7 @@ class CachedLocalEngineArtifacts implements LocalEngineArtifacts {
+         final String path = _fileSystem.path.join(_hostEngineOutPath, 'dart-sdk', 'bin', 'snapshots', _hostArtifactToFileName(artifact, _platform));
          return _fileSystem.file(path);
        case HostArtifact.dartdevcSnapshot:
--        final String path = _fileSystem.path.join(_dartSdkPath(_cache), 'bin', 'snapshots', _hostArtifactToFileName(artifact, _platform.isWindows));
-+        final String path = _fileSystem.path.join(_dartSdkPath(_fileSystem), 'bin', 'snapshots', _hostArtifactToFileName(artifact, _platform.isWindows));
+-        final String path = _fileSystem.path.join(_dartSdkPath(_cache), 'bin', 'snapshots', _hostArtifactToFileName(artifact, _platform));
++        final String path = _fileSystem.path.join(_dartSdkPath(_fileSystem), 'bin', 'snapshots', _hostArtifactToFileName(artifact, _platform));
          return _fileSystem.file(path);
        case HostArtifact.kernelWorkerSnapshot:
-         final String path = _fileSystem.path.join(_hostEngineOutPath, 'dart-sdk', 'bin', 'snapshots', _hostArtifactToFileName(artifact, _platform.isWindows));
-@@ -922,9 +920,7 @@ class CachedLocalEngineArtifacts implements LocalEngineArtifacts {
-       case Artifact.windowsUwpCppClientWrapper:
+         final String path = _fileSystem.path.join(_hostEngineOutPath, 'dart-sdk', 'bin', 'snapshots', _hostArtifactToFileName(artifact, _platform));
+@@ -901,9 +899,7 @@ class CachedLocalEngineArtifacts implements LocalEngineArtifacts {
+       case Artifact.windowsCppClientWrapper:
          return _fileSystem.path.join(_hostEngineOutPath, artifactFileName);
        case Artifact.frontendServerSnapshotForEngineDartSdk:
 -        return _fileSystem.path.join(
 -          _hostEngineOutPath, 'dart-sdk', 'bin', 'snapshots', artifactFileName,
 -        );
 +        return _fileSystem.path.join(_hostEngineOutPath, 'gen', artifactFileName);
-       case Artifact.uwptool:
-         return _fileSystem.path.join(_hostEngineOutPath, artifactFileName);
      }
-@@ -1034,8 +1030,8 @@ class OverrideArtifacts implements Artifacts {
+   }
+ 
+@@ -1011,8 +1007,8 @@ class OverrideArtifacts implements Artifacts {
  }
  
  /// Locate the Dart SDK.
@@ -174,12 +170,12 @@ index 2aac9686e8..32c4b98b88 100644
  
  class _TestArtifacts implements Artifacts {
 diff --git a/packages/flutter_tools/test/general.shard/artifacts_test.dart b/packages/flutter_tools/test/general.shard/artifacts_test.dart
-index d906511a15..adfdd4bb42 100644
+index aed3eb9285..81b8362648 100644
 --- a/packages/flutter_tools/test/general.shard/artifacts_test.dart
 +++ b/packages/flutter_tools/test/general.shard/artifacts_test.dart
-@@ -153,10 +153,6 @@ void main() {
-         artifacts.getArtifactPath(Artifact.windowsUwpDesktopPath, platform: TargetPlatform.windows_uwp_x64, mode: BuildMode.release),
-         fileSystem.path.join('root', 'bin', 'cache', 'artifacts', 'engine', 'windows-uwp-x64-release'),
+@@ -141,10 +141,6 @@ void main() {
+         artifacts.getArtifactPath(Artifact.flutterTester, platform: TargetPlatform.linux_arm64),
+         fileSystem.path.join('root', 'bin', 'cache', 'artifacts', 'engine', 'linux-arm64', 'flutter_tester'),
        );
 -      expect(
 -        artifacts.getArtifactPath(Artifact.frontendServerSnapshotForEngineDartSdk),
@@ -188,7 +184,7 @@ index d906511a15..adfdd4bb42 100644
      });
  
      testWithoutContext('precompiled web artifact paths are correct', () {
-@@ -322,11 +318,6 @@ void main() {
+@@ -310,11 +306,6 @@ void main() {
          artifacts.getHostArtifact(HostArtifact.engineDartSdkPath).path,
          fileSystem.path.join('/out', 'host_debug_unopt', 'dart-sdk'),
        );
@@ -197,6 +193,6 @@ index d906511a15..adfdd4bb42 100644
 -        fileSystem.path.join('/out', 'host_debug_unopt', 'dart-sdk', 'bin',
 -          'snapshots', 'frontend_server.dart.snapshot')
 -      );
-     });
- 
-     testWithoutContext('getEngineType', () {
+       expect(
+         artifacts.getHostArtifact(HostArtifact.impellerc).path,
+         fileSystem.path.join('/out', 'host_debug_unopt', 'impellerc'),
diff --git a/pkgs/development/compilers/gerbil/gerbil-crypto.nix b/pkgs/development/compilers/gerbil/gerbil-crypto.nix
index 12f4726f1c62e..38943471a376d 100644
--- a/pkgs/development/compilers/gerbil/gerbil-crypto.nix
+++ b/pkgs/development/compilers/gerbil/gerbil-crypto.nix
@@ -7,7 +7,8 @@ gerbil-support.gerbilPackage {
   gerbil-package = "clan/crypto";
   gerbil = gerbil-unstable;
   gerbilInputs = [gerbil-support.gerbilPackages-unstable.gerbil-utils];
-  buildInputs = [pkgs.secp256k1 pkgs.pkg-config];
+  nativeBuildInputs = [ pkgs.pkg-config ];
+  buildInputs = [pkgs.secp256k1 ];
   gambit-params = gambit-support.unstable-params;
   version-path = "version";
   softwareName = "Gerbil-crypto";
diff --git a/pkgs/development/compilers/gerbil/gerbil-support.nix b/pkgs/development/compilers/gerbil/gerbil-support.nix
index 9cb9954544c7e..f51076fd5d4d1 100644
--- a/pkgs/development/compilers/gerbil/gerbil-support.nix
+++ b/pkgs/development/compilers/gerbil/gerbil-support.nix
@@ -24,12 +24,13 @@ rec {
     gerbil ? pkgs.gerbil-unstable,
     gambit-params ? pkgs.gambit-support.stable-params,
     gerbilInputs ? [],
+    nativeBuildInputs ? [],
     buildInputs ? [],
     buildScript ? "./build.ss",
     softwareName ? ""} :
     let buildInputs_ = buildInputs; in
     gccStdenv.mkDerivation rec {
-      inherit src meta pname version;
+      inherit src meta pname version nativeBuildInputs;
       passthru = { inherit gerbil-package version-path ;};
       buildInputs = [ gerbil ] ++ gerbilInputs ++ buildInputs_;
       postPatch = ''
diff --git a/pkgs/development/compilers/ghdl/default.nix b/pkgs/development/compilers/ghdl/default.nix
index 758b04a7101e7..383fec786b916 100644
--- a/pkgs/development/compilers/ghdl/default.nix
+++ b/pkgs/development/compilers/ghdl/default.nix
@@ -1,40 +1,63 @@
-{ stdenv, fetchFromGitHub, fetchpatch, callPackage, gnat11, zlib, llvm, lib
-, backend ? "mcode" }:
+{ stdenv
+, fetchFromGitHub
+, fetchpatch
+, callPackage
+, gnat
+, zlib
+, llvm
+, lib
+, backend ? "mcode"
+}:
 
 assert backend == "mcode" || backend == "llvm";
 
 stdenv.mkDerivation rec {
   pname = "ghdl-${backend}";
-  version = "1.0.0";
+  version = "2.0.0";
 
   src = fetchFromGitHub {
     owner  = "ghdl";
     repo   = "ghdl";
     rev    = "v${version}";
-    sha256 = "1gyh0xckwbzgslbpw9yrpj4gqs9fm1a2qpbzl0sh143fk1kwjlly";
+    sha256 = "sha256-B/G3FGRzYy4Y9VNNB8yM3FohiIjPJhYSVbqsTN3cL5k=";
   };
 
   patches = [
-    # Allow compilation with GNAT 11, picked from master
+    # https://github.com/ghdl/ghdl/issues/2056
     (fetchpatch {
-      name = "fix-gnat-11-compilation.patch";
-      url = "https://github.com/ghdl/ghdl/commit/8356ea3bb4e8d0e5ad8638c3d50914b64fc360ec.patch";
-      sha256 = "04pzn8g7xha8000wbjjmry6h1grfqyn3bjvj47hi4qwgl21wfjra";
+      name = "fix-build-gcc-12.patch";
+      url = "https://github.com/ghdl/ghdl/commit/f8b87697e8b893b6293ebbfc34670c32bfb49397.patch";
+      hash = "sha256-tVbMm8veFkNPs6WFBHvaic5Jkp1niyg0LfFufa+hT/E=";
     })
   ];
 
   LIBRARY_PATH = "${stdenv.cc.libc}/lib";
 
-  buildInputs = [ gnat11 zlib ] ++ lib.optional (backend == "llvm") [ llvm ];
-  propagatedBuildInputs = lib.optionals (backend == "llvm") [ zlib ];
+  nativeBuildInputs = [
+    gnat
+  ];
+  buildInputs = [
+    zlib
+  ] ++ lib.optional (backend == "llvm") [
+    llvm
+  ];
+  propagatedBuildInputs = [
+  ] ++ lib.optionals (backend == "llvm") [
+    zlib
+  ];
 
   preConfigure = ''
     # If llvm 7.0 works, 7.x releases should work too.
     sed -i 's/check_version  7.0/check_version  7/g' configure
   '';
 
-  configureFlags = [ "--enable-synth" ] ++ lib.optional (backend == "llvm")
-    "--with-llvm-config=${llvm.dev}/bin/llvm-config";
+  configureFlags = [
+    # See https://github.com/ghdl/ghdl/pull/2058
+    "--disable-werror"
+    "--enable-synth"
+  ] ++ lib.optionals (backend == "llvm") [
+    "--with-llvm-config=${llvm.dev}/bin/llvm-config"
+  ];
 
   hardeningDisable = [ "format" ];
 
diff --git a/pkgs/development/compilers/go-jsonnet/default.nix b/pkgs/development/compilers/go-jsonnet/default.nix
index 3c4d90ccb054c..0fb18de59f232 100644
--- a/pkgs/development/compilers/go-jsonnet/default.nix
+++ b/pkgs/development/compilers/go-jsonnet/default.nix
@@ -1,4 +1,9 @@
-{ lib, buildGoModule, fetchFromGitHub, testers }:
+{ lib
+, buildGoModule
+, fetchFromGitHub
+, fetchpatch
+, testers
+}:
 
 let self = buildGoModule rec {
   pname = "go-jsonnet";
@@ -6,12 +11,20 @@ let self = buildGoModule rec {
 
   src = fetchFromGitHub {
     owner = "google";
-    repo = "go-jsonnet";
+    repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-o/IjXskGaMhvQmTsAS745anGBMI2bwHf/EOEp57H8LU=";
+    hash = "sha256-o/IjXskGaMhvQmTsAS745anGBMI2bwHf/EOEp57H8LU=";
   };
 
-  vendorSha256 = "sha256-fZBhlZrLcC4xj5uvb862lBOczGnJa9CceS3D8lUhBQo=";
+  patches = [
+    (fetchpatch {
+      name = "update-x-sys-for-go-1.18-on-aarch64-darwin.patch";
+      url = "https://github.com/google/go-jsonnet/commit/7032dd729f7e684dcfb2574f4fe99499165ef9cb.patch";
+      hash = "sha256-emUcuE9Q4qkXFXLyLvLHjzrKAaQhjcSWLNafABvHxhM=";
+    })
+  ];
+
+  vendorHash = "sha256-H4vLVXpuPkECB15LHoS9N9IwUD7Fzccshwbo5hjeXXc=";
 
   doCheck = false;
 
diff --git a/pkgs/development/compilers/go/1.19.nix b/pkgs/development/compilers/go/1.19.nix
index 34d4c0d9d2c25..0017bd8c482ca 100644
--- a/pkgs/development/compilers/go/1.19.nix
+++ b/pkgs/development/compilers/go/1.19.nix
@@ -45,11 +45,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "go";
-  version = "1.19.1";
+  version = "1.19.2";
 
   src = fetchurl {
     url = "https://go.dev/dl/go${version}.src.tar.gz";
-    sha256 = "sha256-J4cbqkkPNAFBSteT+6SQhvbIVbHFhDhe13ceEgTH4Xk=";
+    sha256 = "sha256-LOkw1wqTHeZg/a8nHXAZJ5OxskAnJkW/AnV3n2cE32s=";
   };
 
   strictDeps = true;
diff --git a/pkgs/development/compilers/heptagon/default.nix b/pkgs/development/compilers/heptagon/default.nix
new file mode 100644
index 0000000000000..e7a9360a64675
--- /dev/null
+++ b/pkgs/development/compilers/heptagon/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, stdenv
+, fetchFromGitLab
+, makeWrapper
+, ocamlPackages
+}:
+
+stdenv.mkDerivation rec {
+  pname = "heptagon";
+  version = "1.05.00";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.inria.fr";
+    owner = "synchrone";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-b4O48MQT3Neh8a1Z5wRgS701w6XrwpsbSMprlqTT+CE=";
+  };
+
+  nativeBuildInputs = [
+    makeWrapper
+  ];
+
+  buildInputs = with ocamlPackages; [
+    ocaml
+    findlib
+    menhir
+    menhirLib
+    ocamlgraph
+    camlp4
+    ocamlbuild
+    lablgtk
+  ];
+
+  # the heptagon library in lib/heptagon is not executable
+  postInstall = ''
+    find $out/lib/heptagon -type f -exec chmod -x {} \;
+  '';
+
+  postFixup = with ocamlPackages; ''
+    wrapProgram $out/bin/hepts \
+      --prefix CAML_LD_LIBRARY_PATH : "${lablgtk}/lib/ocaml/${ocaml.version}/site-lib/lablgtk2"
+  '';
+
+  meta = with lib; {
+    description = "Compiler for the Heptagon/BZR synchronous programming language";
+    homepage = "https://gitlab.inria.fr/synchrone/heptagon";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ wegank ];
+    mainProgram = "heptc";
+  };
+}
diff --git a/pkgs/development/compilers/jasmin-compiler/default.nix b/pkgs/development/compilers/jasmin-compiler/default.nix
index 140de42451928..bca3a166af397 100644
--- a/pkgs/development/compilers/jasmin-compiler/default.nix
+++ b/pkgs/development/compilers/jasmin-compiler/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "jasmin-compiler";
-  version = "2022.04.0";
+  version = "2022.09.0";
 
   src = fetchurl {
     url = "https://github.com/jasmin-lang/jasmin/releases/download/v${version}/jasmin-compiler-v${version}.tar.bz2";
-    sha256 = "sha256:0yf3lp469m8jdpqmqq3sw3h8l3psrzdp134wp3l1q31j3akskn2s";
+    sha256 = "sha256-QiOnDhh1VI5c6AZ4/uwLdGBkP76HxN4cfnPJD4R2hlA=";
   };
 
   sourceRoot = "jasmin-compiler-v${version}/compiler";
diff --git a/pkgs/development/compilers/julia/1.8-bin.nix b/pkgs/development/compilers/julia/1.8-bin.nix
index 67241bbdcfe07..59966f48fd3fb 100644
--- a/pkgs/development/compilers/julia/1.8-bin.nix
+++ b/pkgs/development/compilers/julia/1.8-bin.nix
@@ -2,16 +2,16 @@
 
 stdenv.mkDerivation rec {
   pname = "julia-bin";
-  version = "1.8.1";
+  version = "1.8.2";
 
   src = {
     x86_64-linux = fetchurl {
       url = "https://julialang-s3.julialang.org/bin/linux/x64/${lib.versions.majorMinor version}/julia-${version}-linux-x86_64.tar.gz";
-      sha256 = "sha256-MwVO5kfuik+1T8BREOB+C1PgRZH+U9Cky0x+16BekfE=";
+      sha256 = "sha256-ZxzzpFC2OnF+Hu3X9pCH44VvAVsuFGy1SSjxmjwF55Y=";
     };
     aarch64-linux = fetchurl {
       url = "https://julialang-s3.julialang.org/bin/linux/aarch64/${lib.versions.majorMinor version}/julia-${version}-linux-aarch64.tar.gz";
-      sha256 = "sha256-ugaDesKJlUe7t5mYnxFGT+zWeCImhxw7ekhhlIEEJnk=";
+      sha256 = "sha256-+RwnZCj/swrMIJ4Os+cLHJEmDoh+EdS2b1VFCEtTBUc=";
     };
   }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
 
diff --git a/pkgs/development/compilers/julia/1.8.nix b/pkgs/development/compilers/julia/1.8.nix
index f09e67f1518fa..e67a02b040abb 100644
--- a/pkgs/development/compilers/julia/1.8.nix
+++ b/pkgs/development/compilers/julia/1.8.nix
@@ -28,11 +28,11 @@
 
 stdenv.mkDerivation rec {
   pname = "julia";
-  version = "1.8.1";
+  version = "1.8.2";
 
   src = fetchurl {
     url = "https://github.com/JuliaLang/julia/releases/download/v${version}/julia-${version}-full.tar.gz";
-    sha256 = "sha256-MeRlX0s3fnPW9YPFOdAiHte0gKPqCRgz0ABTFhhcW2E=";
+    sha256 = "sha256-5Xz8Lm2JF1Ckf3zwNVmk6PchK/VJAPJqnxL9bQCdTKk=";
   };
 
   patches =
@@ -45,10 +45,6 @@ stdenv.mkDerivation rec {
         sha256 = "sha256-kppSpVA7bRohd0wXDs4Jgct9ocHnpbeiiSz7ElFom1U=";
       })
       (fetchurl {
-        url = path "julia-libgit-1.4.patch";
-        sha256 = "sha256-rcVXYoGpAxwAbAl33n0/Rkwsi8ZJz8cnHQ5CalUx+1o=";
-      })
-      (fetchurl {
         url = path "julia-libunwind-1.6.patch";
         sha256 = "sha256-zqMh9+Fjgd15XuINe9Xtpk+bRTwB0T6WCWLrJyOQfiQ=";
       })
diff --git a/pkgs/development/compilers/kotlin/default.nix b/pkgs/development/compilers/kotlin/default.nix
index 450659498f50f..bd3cd5a757344 100644
--- a/pkgs/development/compilers/kotlin/default.nix
+++ b/pkgs/development/compilers/kotlin/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "kotlin";
-  version = "1.7.10";
+  version = "1.7.20";
 
   src = fetchurl {
     url = "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-compiler-${version}.zip";
-    hash = "sha256-doP1RR7zCOt3Omhu53eadqle2LFDxprCR5N2GdfKOgk=";
+    hash = "sha256-XjyND5ZUEP8S6Q1vjcXfL8Cf1ZWmhNUUYWhRzn6Urn0=";
   };
 
   propagatedBuildInputs = [ jre ] ;
diff --git a/pkgs/development/compilers/ligo/default.nix b/pkgs/development/compilers/ligo/default.nix
index ab61043048af5..632737562f8ce 100644
--- a/pkgs/development/compilers/ligo/default.nix
+++ b/pkgs/development/compilers/ligo/default.nix
@@ -3,27 +3,27 @@
 , git
 , coq
 , cacert
+, ocaml-crunch
 }:
 
 coq.ocamlPackages.buildDunePackage rec {
   pname = "ligo";
-  version = "0.36.0";
+  version = "0.47.0";
   src = fetchFromGitLab {
     owner = "ligolang";
     repo = "ligo";
     rev = version;
-    sha256 = "0zx8ai79ha3npm3aybzgisil27v9i052cqdllfri0fsc67dig78b";
+    sha256 = "sha256-VJs0pKA99mZXhipK1bSAZmgAHvYbGbjxdI2XyJYjSm0=";
     fetchSubmodules = true;
   };
 
   # The build picks this up for ligo --version
   LIGO_VERSION = version;
 
-  useDune2 = true;
-
   strictDeps = true;
 
   nativeBuildInputs = [
+    ocaml-crunch
     git
     coq
     coq.ocamlPackages.menhir
@@ -49,6 +49,11 @@ coq.ocamlPackages.buildDunePackage rec {
     core_unix
     pprint
     linenoise
+    dune-configurator
+    ctypes_stubs_js
+    crunch
+    zarith_stubs_js
+    pure-splitmix
 
     # Test helpers deps
     qcheck
@@ -61,7 +66,7 @@ coq.ocamlPackages.buildDunePackage rec {
     hacl-star-raw
     lwt-canceler
     ipaddr
-    bls12-381-unix
+    bls12-381
     bls12-381-legacy
     ptime
     mtime
diff --git a/pkgs/development/compilers/ligo/ligo.patch b/pkgs/development/compilers/ligo/ligo.patch
index 1a076cf18ceed..644e158318f7c 100644
--- a/pkgs/development/compilers/ligo/ligo.patch
+++ b/pkgs/development/compilers/ligo/ligo.patch
@@ -1,23 +1,40 @@
+From 6926fed076c2f5aa3282dbca10538d156c045c6f Mon Sep 17 00:00:00 2001
+From: bezmuth <benkel97@protonmail.com>
+Date: Wed, 3 Aug 2022 15:53:10 +0100
+Subject: [PATCH] Compat with core v0.15.0
+
+---
+ ligo.opam                                  | 4 +++-
+ ligo.opam.locked                           | 5 +++--
+ src/bin/cli.ml                             | 4 ++--
+ src/bin/dune                               | 4 +++-
+ src/main/helpers/cli_helpers.ml            | 4 ++--
+ src/main/interpreter/dune                  | 2 +-
+ src/main/interpreter/interpreter.ml        | 2 ++
+ vendors/ligo-utils/simple-utils/dune       | 1 +
+ vendors/ligo-utils/simple-utils/snippet.ml | 2 +-
+ 9 files changed, 18 insertions(+), 10 deletions(-)
+
 diff --git a/ligo.opam b/ligo.opam
-index d561c74d1..3a8d34feb 100644
+index 47513217f..073f68ff5 100644
 --- a/ligo.opam
 +++ b/ligo.opam
 @@ -10,7 +10,9 @@ license: "MIT"
  # If you change the dependencies, run `opam lock` in the root
  depends: [
    # Jane Street Core
--  "core"
-+  "core" { >= "v0.14.0" & < "v0.16.0" }
-+  "core_kernel" { >= "v0.14.0" & "v0.16.0" }
-+  "core_unix" { >= "v0.14.0" & "v0.16.0" }
+-  "core" {= "v0.14.1"}
++  "core" {>= "v0.14.1" & < "v0.16.0"}
++  "core_kernel" { >= "v0.14.1" & "v0.16.0"}
++  "core_unix" { >= "v0.14.1"  & "v0.16.0"}
    # Tooling
    "odoc" { build }
    "ocamlfind" { build }
 diff --git a/ligo.opam.locked b/ligo.opam.locked
-index b4501cc76..c8ed8a41f 100644
+index fd6fccf03..458e11791 100644
 --- a/ligo.opam.locked
 +++ b/ligo.opam.locked
-@@ -50,8 +50,9 @@ depends: [
+@@ -47,8 +47,9 @@ depends: [
    "conf-rust" {= "0.1"}
    "conf-which" {= "1"}
    "coq" {= "8.13.2"}
@@ -28,12 +45,12 @@ index b4501cc76..c8ed8a41f 100644
 +  "core_unix" {= "v0.15.0"}
    "cppo" {= "1.6.8"}
    "csexp" {= "1.5.1"}
-   "cstruct" {= "6.0.1"}
+   "cstruct" {= "6.1.0"}
 diff --git a/src/bin/cli.ml b/src/bin/cli.ml
-index a6fc13e0d..ef5177868 100644
+index dcaa85621..e411d8f32 100644
 --- a/src/bin/cli.ml
 +++ b/src/bin/cli.ml
-@@ -12,7 +12,7 @@ let entry_point =
+@@ -14,7 +14,7 @@ let entry_point =
  let source_file =
      let name = "SOURCE_FILE" in
      let _doc = "the path to the smart contract file." in
@@ -42,7 +59,7 @@ index a6fc13e0d..ef5177868 100644
  
  let package_name =
    let name = "PACKAGE_NAME" in
-@@ -662,7 +662,7 @@ let main = Command.group ~preserve_subcommand_order:() ~summary:"the LigoLANG co
+@@ -783,7 +783,7 @@ let main = Command.group ~preserve_subcommand_order:() ~summary:"The LigoLANG co
    ]
  
  let run ?argv () =
@@ -51,27 +68,8 @@ index a6fc13e0d..ef5177868 100644
    (* Effect to error code *)
    match !return with
      Done -> 0;
-@@ -677,4 +677,3 @@ let run ?argv () =
-     match exn with
-     | Failure msg -> message msg
-     | exn -> message (Exn.to_string exn)
--  
-diff --git a/src/bin/cli_helpers.ml b/src/bin/cli_helpers.ml
-index b64a17d53..8c4c43dde 100644
---- a/src/bin/cli_helpers.ml
-+++ b/src/bin/cli_helpers.ml
-@@ -66,7 +66,7 @@ let run_command (cmd : command) =
-     (fun p -> Lwt.map  
-       (fun status -> 
-         match status with
--          Caml.Unix.WEXITED 0 -> Ok ()
-+          Caml_unix.WEXITED 0 -> Ok ()
-         | _ -> Error ("unknown error"))
-         p#status) in
-   Lwt_main.run status
-\ No newline at end of file
 diff --git a/src/bin/dune b/src/bin/dune
-index 295c056f3..08d980439 100644
+index 03e5f17b5..74340ae9d 100644
 --- a/src/bin/dune
 +++ b/src/bin/dune
 @@ -11,7 +11,9 @@
@@ -84,31 +82,47 @@ index 295c056f3..08d980439 100644
 +  core_unix.filename_unix)
   (modules cli version))
  
- (library
+ 
+diff --git a/src/main/helpers/cli_helpers.ml b/src/main/helpers/cli_helpers.ml
+index 3d09ee6b8..585cca6fa 100644
+--- a/src/main/helpers/cli_helpers.ml
++++ b/src/main/helpers/cli_helpers.ml
+@@ -71,7 +71,7 @@ let run_command (cmd : command) =
+     (fun p -> Lwt.map  
+       (fun status -> 
+         match status with
+-          Caml.Unix.WEXITED 0 -> Ok ()
++          Caml_unix.WEXITED 0 -> Ok ()
+         | _ -> Error ("unknown error"))
+         p#status) in
+-  Lwt_main.run status
+\ No newline at end of file
++  Lwt_main.run status
 diff --git a/src/main/interpreter/dune b/src/main/interpreter/dune
-index c55e24a88..f9762a297 100644
+index 6ccc74ff0..7d38bb822 100644
 --- a/src/main/interpreter/dune
 +++ b/src/main/interpreter/dune
 @@ -4,4 +4,4 @@
   (instrumentation
    (backend bisect_ppx))
-  (libraries tezos-011-PtHangz2-test-helpers ast_aggregated ligo_interpreter
--   main_errors ligo_compile build fuzz ligo_run self_ast_typed))
-+   main_errors ligo_compile build fuzz ligo_run self_ast_typed core_unix.sys_unix))
+  (libraries tezos-013-PtJakart-test-helpers ast_aggregated ligo_interpreter
+-   main_errors ligo_compile build fuzz ligo_run self_ast_typed bls12-381))
++   main_errors ligo_compile build fuzz ligo_run self_ast_typed bls12-381 core_unix.sys_unix))
 diff --git a/src/main/interpreter/interpreter.ml b/src/main/interpreter/interpreter.ml
-index b0379029c..530e08c3a 100644
+index 0f76a286c..d9a389a6b 100644
 --- a/src/main/interpreter/interpreter.ml
 +++ b/src/main/interpreter/interpreter.ml
-@@ -2,6 +2,7 @@ open Simple_utils.Trace
- open Simple_utils
+@@ -3,6 +3,8 @@ open Simple_utils
  open Ligo_interpreter.Types
  open Ligo_interpreter.Combinators
-+module Sys = Sys_unix
  
++module Sys = Sys_unix
++
  module AST = Ast_aggregated
  
+ include AST.Types
 diff --git a/vendors/ligo-utils/simple-utils/dune b/vendors/ligo-utils/simple-utils/dune
-index ca9f2bf5c..62c39087b 100644
+index becca2f86..a890dbf62 100644
 --- a/vendors/ligo-utils/simple-utils/dune
 +++ b/vendors/ligo-utils/simple-utils/dune
 @@ -6,6 +6,7 @@
@@ -132,3 +146,6 @@ index 658f115f2..f23000590 100644
    let start = l#start#line in
    let start_column = l#start#offset `Byte in
    let stop = l#stop#line in
+-- 
+2.36.1
+
diff --git a/pkgs/development/compilers/llvm/13/lldb/cpu_subtype_arm64e_replacement.patch b/pkgs/development/compilers/llvm/13/lldb/cpu_subtype_arm64e_replacement.patch
new file mode 100644
index 0000000000000..20d35c9f3ea91
--- /dev/null
+++ b/pkgs/development/compilers/llvm/13/lldb/cpu_subtype_arm64e_replacement.patch
@@ -0,0 +1,12 @@
+diff --git a/source/Host/macosx/objcxx/HostInfoMacOSX.mm b/source/Host/macosx/objcxx/HostInfoMacOSX.mm
+--- a/source/Host/macosx/objcxx/HostInfoMacOSX.mm
++++ b/source/Host/macosx/objcxx/HostInfoMacOSX.mm
+@@ -233,7 +233,7 @@ void HostInfoMacOSX::ComputeHostArchitectureSupport(ArchSpec &arch_32,
+     len = sizeof(is_64_bit_capable);
+     ::sysctlbyname("hw.cpu64bit_capable", &is_64_bit_capable, &len, NULL, 0);
+ 
+-    if (cputype == CPU_TYPE_ARM64 && cpusubtype == CPU_SUBTYPE_ARM64E) {
++    if (cputype == CPU_TYPE_ARM64 && cpusubtype == ((cpu_subtype_t) 2)) { // CPU_SUBTYPE_ARM64E is not available in the macOS 10.12 headers
+       // The arm64e architecture is a preview. Pretend the host architecture
+       // is arm64.
+       cpusubtype = CPU_SUBTYPE_ARM64_ALL;
diff --git a/pkgs/development/compilers/llvm/13/lldb/default.nix b/pkgs/development/compilers/llvm/13/lldb/default.nix
index d5a24753856af..d040e2b3975ee 100644
--- a/pkgs/development/compilers/llvm/13/lldb/default.nix
+++ b/pkgs/development/compilers/llvm/13/lldb/default.nix
@@ -20,6 +20,7 @@
 , Cocoa
 , lit
 , makeWrapper
+, darwin
 , enableManpages ? false
 }:
 
@@ -38,7 +39,22 @@ stdenv.mkDerivation (rec {
       substitute '${./resource-dir.patch}' "$out" --subst-var clangLibDir
     '')
     ./gnu-install-dirs.patch
-  ];
+  ]
+  # This is a stopgap solution if/until the macOS SDK used for x86_64 is
+  # updated.
+  #
+  # The older 10.12 SDK used on x86_64 as of this writing has a `mach/machine.h`
+  # header that does not define `CPU_SUBTYPE_ARM64E` so we replace the one use
+  # of this preprocessor symbol in `lldb` with its expansion.
+  #
+  # See here for some context:
+  # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132
+  ++ lib.optional (
+    stdenv.targetPlatform.isDarwin
+      && !stdenv.targetPlatform.isAarch64
+      && (lib.versionOlder darwin.apple_sdk.sdk.version "11.0")
+  ) ./cpu_subtype_arm64e_replacement.patch;
+
 
   outputs = [ "out" "lib" "dev" ];
 
@@ -102,7 +118,6 @@ stdenv.mkDerivation (rec {
   '';
 
   meta = llvm_meta // {
-    broken = stdenv.isDarwin;
     homepage = "https://lldb.llvm.org/";
     description = "A next-generation high-performance debugger";
     longDescription = ''
diff --git a/pkgs/development/compilers/llvm/14/lldb/cpu_subtype_arm64e_replacement.patch b/pkgs/development/compilers/llvm/14/lldb/cpu_subtype_arm64e_replacement.patch
new file mode 100644
index 0000000000000..20d35c9f3ea91
--- /dev/null
+++ b/pkgs/development/compilers/llvm/14/lldb/cpu_subtype_arm64e_replacement.patch
@@ -0,0 +1,12 @@
+diff --git a/source/Host/macosx/objcxx/HostInfoMacOSX.mm b/source/Host/macosx/objcxx/HostInfoMacOSX.mm
+--- a/source/Host/macosx/objcxx/HostInfoMacOSX.mm
++++ b/source/Host/macosx/objcxx/HostInfoMacOSX.mm
+@@ -233,7 +233,7 @@ void HostInfoMacOSX::ComputeHostArchitectureSupport(ArchSpec &arch_32,
+     len = sizeof(is_64_bit_capable);
+     ::sysctlbyname("hw.cpu64bit_capable", &is_64_bit_capable, &len, NULL, 0);
+ 
+-    if (cputype == CPU_TYPE_ARM64 && cpusubtype == CPU_SUBTYPE_ARM64E) {
++    if (cputype == CPU_TYPE_ARM64 && cpusubtype == ((cpu_subtype_t) 2)) { // CPU_SUBTYPE_ARM64E is not available in the macOS 10.12 headers
+       // The arm64e architecture is a preview. Pretend the host architecture
+       // is arm64.
+       cpusubtype = CPU_SUBTYPE_ARM64_ALL;
diff --git a/pkgs/development/compilers/llvm/14/lldb/default.nix b/pkgs/development/compilers/llvm/14/lldb/default.nix
index fdfb550c28024..2493dcde0c845 100644
--- a/pkgs/development/compilers/llvm/14/lldb/default.nix
+++ b/pkgs/development/compilers/llvm/14/lldb/default.nix
@@ -20,7 +20,9 @@
 , Cocoa
 , lit
 , makeWrapper
+, darwin
 , enableManpages ? false
+, lua5_3
 }:
 
 stdenv.mkDerivation (rec {
@@ -43,12 +45,26 @@ stdenv.mkDerivation (rec {
       substitute '${./resource-dir.patch}' "$out" --subst-var clangLibDir
     '')
     ./gnu-install-dirs.patch
-  ];
+  ]
+  # This is a stopgap solution if/until the macOS SDK used for x86_64 is
+  # updated.
+  #
+  # The older 10.12 SDK used on x86_64 as of this writing has a `mach/machine.h`
+  # header that does not define `CPU_SUBTYPE_ARM64E` so we replace the one use
+  # of this preprocessor symbol in `lldb` with its expansion.
+  #
+  # See here for some context:
+  # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132
+  ++ lib.optional (
+    stdenv.targetPlatform.isDarwin
+      && !stdenv.targetPlatform.isAarch64
+      && (lib.versionOlder darwin.apple_sdk.sdk.version "11.0")
+  ) ./cpu_subtype_arm64e_replacement.patch;
 
   outputs = [ "out" "lib" "dev" ];
 
   nativeBuildInputs = [
-    cmake python3 which swig lit makeWrapper
+    cmake python3 which swig lit makeWrapper lua5_3
   ] ++ lib.optionals enableManpages [
     python3.pkgs.sphinx python3.pkgs.recommonmark
   ];
@@ -115,7 +131,6 @@ stdenv.mkDerivation (rec {
       larger LLVM Project, such as the Clang expression parser and LLVM
       disassembler.
     '';
-    broken = stdenv.isDarwin; # error: use of undeclared identifier 'CPU_SUBTYPE_ARM64E'
   };
 } // lib.optionalAttrs enableManpages {
   pname = "lldb-manpages";
diff --git a/pkgs/development/compilers/llvm/git/lldb/default.nix b/pkgs/development/compilers/llvm/git/lldb/default.nix
index a2c68b224775e..6e6fe5cf0671d 100644
--- a/pkgs/development/compilers/llvm/git/lldb/default.nix
+++ b/pkgs/development/compilers/llvm/git/lldb/default.nix
@@ -21,6 +21,7 @@
 , lit
 , makeWrapper
 , enableManpages ? false
+, lua5_3
 }:
 
 stdenv.mkDerivation (rec {
@@ -48,7 +49,7 @@ stdenv.mkDerivation (rec {
   outputs = [ "out" "lib" "dev" ];
 
   nativeBuildInputs = [
-    cmake python3 which swig lit makeWrapper
+    cmake python3 which swig lit makeWrapper lua5_3
   ] ++ lib.optionals enableManpages [
     python3.pkgs.sphinx python3.pkgs.recommonmark
   ];
diff --git a/pkgs/development/compilers/nim/default.nix b/pkgs/development/compilers/nim/default.nix
index df26de4b56560..4fe8db4d2977d 100644
--- a/pkgs/development/compilers/nim/default.nix
+++ b/pkgs/development/compilers/nim/default.nix
@@ -71,39 +71,16 @@ let
 
   nimHost = parsePlatform stdenv.hostPlatform;
   nimTarget = parsePlatform stdenv.targetPlatform;
-
-  bootstrapCompiler = let
-    revision = "561b417c65791cd8356b5f73620914ceff845d10";
-  in stdenv.mkDerivation {
-    pname = "nim-bootstrap";
-    version = "g${lib.substring 0 7 revision}";
-
-    src = fetchFromGitHub {
-      owner = "nim-lang";
-      repo = "csources_v1";
-      rev = revision;
-      sha256 = "sha256-gwBFuR7lzO4zttR/6rgdjXMRxVhwKeLqDwpmOwMyU7A=";
-    };
-
-    enableParallelBuilding = true;
-
-    installPhase = ''
-      runHook preInstall
-      install -Dt $out/bin bin/nim
-      runHook postInstall
-    '';
-  };
-
 in {
 
   nim-unwrapped = stdenv.mkDerivation rec {
     pname = "nim-unwrapped";
-    version = "1.6.6";
+    version = "1.6.8";
     strictDeps = true;
 
     src = fetchurl {
       url = "https://nim-lang.org/download/nim-${version}.tar.xz";
-      hash = "sha256-Z7ERzm84YVA7n8wcrln8NNASJWbT7P7zoGSiF0EhpFI=";
+      hash = "sha256-D1tlzbYPeK9BywdcI4mDaJoeH34lyBnxeYYsGKSEz1c=";
     };
 
     buildInputs = [ boehmgc openssl pcre readline sqlite ];
@@ -118,7 +95,6 @@ in {
 
     configurePhase = ''
       runHook preConfigure
-      cp ${bootstrapCompiler}/bin/nim bin/
       echo 'define:nixbuild' >> config/nim.cfg
       runHook postConfigure
     '';
@@ -133,9 +109,11 @@ in {
     buildPhase = ''
       runHook preBuild
       local HOME=$TMPDIR
-      ./bin/nim c koch
+      make -j$NIX_BUILD_CORES
+      ./bin/nim c --parallelBuild:$NIX_BUILD_CORES koch
       ./koch boot $kochArgs --parallelBuild:$NIX_BUILD_CORES
       ./koch toolsNoExternal $kochArgs --parallelBuild:$NIX_BUILD_CORES
+      ./bin/nim js -d:release tools/dochack/dochack.nim
       runHook postBuild
     '';
 
@@ -145,6 +123,7 @@ in {
       ln -sf $out/nim/bin/nim $out/bin/nim
       ln -sf $out/nim/lib $out/lib
       ./install.sh $out
+      cp -a tools $out/nim/
       runHook postInstall
     '';
 
diff --git a/pkgs/development/compilers/nim/nixbuild.patch b/pkgs/development/compilers/nim/nixbuild.patch
index bdfd04744e16d..afadd16602bde 100644
--- a/pkgs/development/compilers/nim/nixbuild.patch
+++ b/pkgs/development/compilers/nim/nixbuild.patch
@@ -1,14 +1,3 @@
-commit 164ba50fc74b980f77047080b2ae1ea099ae9b27
-Author: Emery Hemingway <ehmry@posteo.net>
-Date:   Mon Sep 7 14:09:22 2020 +0200
-
-    Load libaries by absolute path on NixOS
-    
-    If "nixbuild" is defined then choose dynamic runtime libraries by
-    searching $NIX_LDFLAGS at compile-time.
-    
-    Fix #15194
-
 diff --git a/lib/pure/dynlib.nim b/lib/pure/dynlib.nim
 index f31ae94dd..debed9c07 100644
 --- a/lib/pure/dynlib.nim
@@ -37,7 +26,7 @@ index f31ae94dd..debed9c07 100644
 +    # to enable this behavior by default.
 +    #
 +    var libDirs = split(getEnv("LD_LIBRARY_PATH"), ':')
-+    for flag in split(getEnv("NIX_LDFLAGS")):
++    for flag in split(replace(getEnv("NIX_LDFLAGS"), "\\ ", " ")):
 +      if flag.startsWith("-L"):
 +        libDirs.add(flag[2..flag.high])
 +    for lib in dest:
diff --git a/pkgs/development/compilers/open-watcom/v2.nix b/pkgs/development/compilers/open-watcom/v2.nix
index bdef71006bd85..9d8a2367b9348 100644
--- a/pkgs/development/compilers/open-watcom/v2.nix
+++ b/pkgs/development/compilers/open-watcom/v2.nix
@@ -12,13 +12,14 @@
 
 stdenv.mkDerivation rec {
   pname = "${passthru.prettyName}-unwrapped";
-  version = "unstable-2022-08-02";
+  # nixpkgs-update: no auto update
+  version = "unstable-2022-10-03";
 
   src = fetchFromGitHub {
     owner = "open-watcom";
     repo = "open-watcom-v2";
-    rev = "4bdb73995b871982dd106838296903701ded29c2";
-    sha256 = "sha256-Ay/f+gnj8EklN8T/uP0a+Zji6HEHAoPLdkrSTQaC9Rs=";
+    rev = "61538429a501a09f369366d832799f2e3b196a02";
+    sha256 = "sha256-YvqRw0klSqOxIuO5QFKjcUp6aRWlO2j3L+T1ekx8SfA=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/compilers/openjdk/openjfx/17.nix b/pkgs/development/compilers/openjdk/openjfx/17.nix
index 12bac4c4d9d8f..734f4d079ef0d 100644
--- a/pkgs/development/compilers/openjdk/openjfx/17.nix
+++ b/pkgs/development/compilers/openjdk/openjfx/17.nix
@@ -1,6 +1,6 @@
 { stdenv, lib, fetchFromGitHub, writeText, openjdk17_headless, gradle_7
 , pkg-config, perl, cmake, gperf, gtk2, gtk3, libXtst, libXxf86vm, glib, alsa-lib
-, ffmpeg, python3, ruby, icu68 }:
+, ffmpeg_4, python3, ruby, icu68 }:
 
 let
   major = "17";
@@ -21,7 +21,7 @@ let
       sha256 = "sha256-PSiE9KbF/4u9VyBl9PAMLGzKyGFB86/XByeh7vhL6Kw=";
     };
 
-    buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg icu68 ];
+    buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg_4 icu68 ];
     nativeBuildInputs = [ gradle_ perl pkg-config cmake gperf python3 ruby ];
 
     dontUseCmakeConfigure = true;
diff --git a/pkgs/development/compilers/p4c/default.nix b/pkgs/development/compilers/p4c/default.nix
index dac9011f575aa..9233489b06aeb 100644
--- a/pkgs/development/compilers/p4c/default.nix
+++ b/pkgs/development/compilers/p4c/default.nix
@@ -27,13 +27,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "p4c";
-  version = "1.2.3.1";
+  version = "1.2.3.2";
 
   src = fetchFromGitHub {
     owner = "p4lang";
     repo = "p4c";
     rev = "v${version}";
-    sha256 = "sha256-mOswMUvr7LGN4GmczPUqNMUjs0c1Pc8SiC5k2Ou52Iw=";
+    sha256 = "sha256-EeTYH7CsmPPBL05zJ+g4aM677n0NqDD+H40lBuKpY6M=";
     fetchSubmodules = true;
   };
 
@@ -65,7 +65,6 @@ stdenv.mkDerivation rec {
     bison
     flex
     cmake
-    python3
   ]
   ++ lib.optional enableDocumentation [ doxygen graphviz ]
   ++ lib.optional enableBPF [ libllvm libbpf ];
@@ -76,6 +75,7 @@ stdenv.mkDerivation rec {
     boehmgc
     gmp
     flex
+    python3
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/compilers/polyml/5.6.nix b/pkgs/development/compilers/polyml/5.6.nix
index 4354ce7e2d671..bcd52380701ac 100644
--- a/pkgs/development/compilers/polyml/5.6.nix
+++ b/pkgs/development/compilers/polyml/5.6.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
     })
   ];
 
-  buildInputs = lib.optional stdenv.isDarwin autoreconfHook;
+  nativeBuildInputs = lib.optional stdenv.isDarwin autoreconfHook;
 
   src = fetchurl {
     url = "mirror://sourceforge/polyml/polyml.${version}.tar.gz";
diff --git a/pkgs/development/compilers/rust/1_63.nix b/pkgs/development/compilers/rust/1_64.nix
index a33576f9426c6..f93123fcd70ac 100644
--- a/pkgs/development/compilers/rust/1_63.nix
+++ b/pkgs/development/compilers/rust/1_64.nix
@@ -20,8 +20,8 @@
 } @ args:
 
 import ./default.nix {
-  rustcVersion = "1.63.0";
-  rustcSha256 = "1l4rrbzhxv88pnfq94nbyb9m6lfnjwixma3mwjkmvvs2aqlq158z";
+  rustcVersion = "1.64.0";
+  rustcSha256 = "sha256-s82fSB4aKQG/bzgI0wxpzE6oDZPEzE4u1SJYsYA4EgU=";
 
   llvmSharedForBuild = pkgsBuildBuild.llvmPackages_14.libllvm.override { enableSharedLibraries = true; };
   llvmSharedForHost = pkgsBuildHost.llvmPackages_14.libllvm.override { enableSharedLibraries = true; };
@@ -37,25 +37,25 @@ import ./default.nix {
 
   # Note: the version MUST be one version prior to the version we're
   # building
-  bootstrapVersion = "1.62.1";
+  bootstrapVersion = "1.63.0";
 
   # fetch hashes by running `print-hashes.sh ${bootstrapVersion}`
   bootstrapHashes = {
-    i686-unknown-linux-gnu = "1669163ffe01e252ffb62da7d84949378fc274931a65ac827d54059a5ffc542c";
-    x86_64-unknown-linux-gnu = "dd7d82b8fa8eae59729e1c31fe59a9de6ee61d08ab40ce016185653beebe04d2";
-    x86_64-unknown-linux-musl = "32bee487074b105e2582cddce35934a6019eec74bae3f9300fdc3edfcf5b66d4";
-    arm-unknown-linux-gnueabihf = "5c735e8174d394936d7b499c2d147ddadf3c4d77e652d1e0b0a72d9d09f81ea4";
-    armv7-unknown-linux-gnueabihf = "26fa731385f1a71211ba8e3c94f3bb3b1a82bde89f8d4dcf75b4b463b57b0f88";
-    aarch64-unknown-linux-gnu = "1311fa8204f895d054c23a3481de3b158a5cd3b3a6338761fee9cdf4dbf075a5";
-    aarch64-unknown-linux-musl = "73bbab4d8a9e3c416035d40406e656ab37e785df35fa069a33af52e931a24b12";
-    x86_64-apple-darwin = "0a04dcf2b521239826f3eaa66d77169d91e68087ccc3107b54e8aba7c02c9adf";
-    aarch64-apple-darwin = "6d1671ea31b05cab5e2587cc2b295b3e7232b0135f0977355618e2a01933ff0a";
-    powerpc64le-unknown-linux-gnu = "1d3248e1a673cda87cf443cd4334ff5fb53e6f87c72d3587b07e5c0cb507f3ae";
-    riscv64gc-unknown-linux-gnu = "fd378d0bf866689e8111aba0e2b020da87f32f70fb11d98a575d42dc05978c2a";
-    mips64el-unknown-linux-gnuabi64 = "b7c47dd94728161aa96762fb7bc51b6ab0feba7c5215d06eaea5b78649815a96";
+    i686-unknown-linux-gnu = "6ac6ca18f119e099749d67c6dc25ce3f70542b43cc05062d5138fc1052e44c54";
+    x86_64-unknown-linux-gnu = "536bcf16807a4ff49b7b29af6e573a2f1821055bfad72c275c60e56edc693984";
+    x86_64-unknown-linux-musl = "4516f1fa2a0d9ec9176cc734e5faaa0a3d439bd49f75553a484b6c3c6d7905ab";
+    arm-unknown-linux-gnueabihf = "8847d8482e1d5ec962e092a63c95618dc7e17a079a9bf58bec1da39cac0ba4ce";
+    armv7-unknown-linux-gnueabihf = "d9227bf6d93f49889c698d35adc7ab3e042988740b9d9d9c81fb54fc0f854474";
+    aarch64-unknown-linux-gnu = "26745b57500da293a8147122a5998926301350a610c164f053107cbe026d3a51";
+    aarch64-unknown-linux-musl = "8fee65f2bd7e010259763939cbef8ed0794773ec8959c5ef90273cf39dcba180";
+    x86_64-apple-darwin = "37f76a45b8616e764c2663850758ce822c730e96af60168a46b818f528c1467d";
+    aarch64-apple-darwin = "25c3f43459da9b8683292999c3522d88980b0ca3244fe830f5a87a8092aac5a6";
+    powerpc64le-unknown-linux-gnu = "781662048caa48b78540c2fb22f0aa7c06d6d8e81aede0f6ef900c11428056cf";
+    riscv64gc-unknown-linux-gnu = "a7f398b45229c5cca833f75421c32897174e365fbbdf78e19b87612736c918aa";
+    mips64el-unknown-linux-gnuabi64 = "19f04c576c9d6b171acba65cfe44edcbcf6134a75a853d2f1538fdb2128ec654";
   };
 
-  selectRustPackage = pkgs: pkgs.rust_1_63;
+  selectRustPackage = pkgs: pkgs.rust_1_64;
 
   rustcPatches = [
   ];
diff --git a/pkgs/development/compilers/rust/cargo.nix b/pkgs/development/compilers/rust/cargo.nix
index 01b219714382e..6a4d01de5ef42 100644
--- a/pkgs/development/compilers/rust/cargo.nix
+++ b/pkgs/development/compilers/rust/cargo.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, pkgsHostHost
 , file, curl, pkg-config, python3, openssl, cmake, zlib
 , installShellFiles, makeWrapper, cacert, rustPlatform, rustc
-, CoreFoundation, Security
+, libiconv, CoreFoundation, Security
 }:
 
 rustPlatform.buildRustPackage {
@@ -25,7 +25,7 @@ rustPlatform.buildRustPackage {
     (lib.getDev pkgsHostHost.curl)
   ];
   buildInputs = [ cacert file curl python3 openssl zlib ]
-    ++ lib.optionals stdenv.isDarwin [ CoreFoundation Security ];
+    ++ lib.optionals stdenv.isDarwin [ libiconv CoreFoundation Security ];
 
   # cargo uses git-rs which is made for a version of libgit2 from recent master that
   # is not compatible with the current version in nixpkgs.
diff --git a/pkgs/development/compilers/rust/default.nix b/pkgs/development/compilers/rust/default.nix
index 7c78a784575a4..ef01cbf2abc15 100644
--- a/pkgs/development/compilers/rust/default.nix
+++ b/pkgs/development/compilers/rust/default.nix
@@ -28,7 +28,7 @@ in
   lib = lib';
 
   # Backwards compat before `lib` was factored out.
-  inherit (lib') toTargetArch toTargetOs toRustTarget toRustTargetSpec;
+  inherit (lib') toTargetArch toTargetOs toRustTarget toRustTargetSpec IsNoStdTarget;
 
   # This just contains tools for now. But it would conceivably contain
   # libraries too, say if we picked some default/recommended versions from
diff --git a/pkgs/development/compilers/rust/rustc.nix b/pkgs/development/compilers/rust/rustc.nix
index bb5bc1bb1d733..e3c20bebd499c 100644
--- a/pkgs/development/compilers/rust/rustc.nix
+++ b/pkgs/development/compilers/rust/rustc.nix
@@ -107,6 +107,11 @@ in stdenv.mkDerivation rec {
     "${setHost}.musl-root=${pkgsBuildHost.targetPackages.stdenv.cc.libc}"
   ] ++ optionals stdenv.targetPlatform.isMusl [
     "${setTarget}.musl-root=${pkgsBuildTarget.targetPackages.stdenv.cc.libc}"
+  ] ++ optionals (rust.IsNoStdTarget stdenv.targetPlatform) [
+    "--disable-docs"
+  ] ++ optionals (stdenv.isDarwin && stdenv.isx86_64) [
+    # https://github.com/rust-lang/rust/issues/92173
+    "--set rust.jemalloc"
   ];
 
   # The bootstrap.py will generated a Makefile that then executes the build.
@@ -133,6 +138,10 @@ in stdenv.mkDerivation rec {
 
     # Useful debugging parameter
     # export VERBOSE=1
+  '' + lib.optionalString (stdenv.isDarwin && stdenv.isx86_64) ''
+    # See https://github.com/jemalloc/jemalloc/issues/1997
+    # Using a value of 48 should work on both emulated and native x86_64-darwin.
+    export JEMALLOC_SYS_WITH_LG_VADDR=48
   '';
 
   # rustc unfortunately needs cmake to compile llvm-rt but doesn't
@@ -145,9 +154,11 @@ in stdenv.mkDerivation rec {
   ];
 
   buildInputs = [ openssl ]
-    ++ optionals stdenv.isDarwin [ libiconv Security ]
+    ++ optionals stdenv.isDarwin [ Security ]
     ++ optional (!withBundledLLVM) llvmShared;
 
+  depsTargetTargetPropagated = optionals stdenv.isDarwin [ libiconv ];
+
   outputs = [ "out" "man" "doc" ];
   setOutputFlags = false;
 
diff --git a/pkgs/development/compilers/tinygo/0001-Makefile.patch b/pkgs/development/compilers/tinygo/0001-Makefile.patch
index 81774b6e0d6f1..342cce788ba37 100644
--- a/pkgs/development/compilers/tinygo/0001-Makefile.patch
+++ b/pkgs/development/compilers/tinygo/0001-Makefile.patch
@@ -1,11 +1,11 @@
-From fcae473c4b6ac2120ec75c321d6db850d8ecd6a9 Mon Sep 17 00:00:00 2001
+From ef066db7f5cb7f551f88fb218c82fc947e464425 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Mustafa=20=C3=87al=C4=B1=C5=9Fkan?= <muscaln@protonmail.com>
-Date: Sat, 30 Apr 2022 16:37:44 +0300
+Date: Sun, 3 Jul 2022 14:30:51 +0300
 Subject: [PATCH 1/3] Makefile
 
 
 diff --git a/Makefile b/Makefile
-index dc388c21..7efc9901 100644
+index 60a5a574..904d2db5 100644
 --- a/Makefile
 +++ b/Makefile
 @@ -14,11 +14,6 @@ LLVM_VERSIONS = 14 13 12 11
@@ -20,7 +20,7 @@ index dc388c21..7efc9901 100644
  # First search for a custom built copy, then move on to explicitly version-tagged binaries, then just see if the tool is in path with its normal name.
  findLLVMTool = $(call detect,$(1),$(abspath llvm-build/bin/$(1)) $(foreach ver,$(LLVM_VERSIONS),$(call toolSearchPathsVersion,$(1),$(ver))) $(1))
  CLANG ?= $(call findLLVMTool,clang)
-@@ -644,9 +639,8 @@ endif
+@@ -707,9 +702,8 @@ endif
  wasmtest:
  	$(GO) test ./tests/wasm
  
@@ -31,8 +31,13 @@ index dc388c21..7efc9901 100644
  	@mkdir -p build/release/tinygo/lib/CMSIS/CMSIS
  	@mkdir -p build/release/tinygo/lib/macos-minimal-sdk
  	@mkdir -p build/release/tinygo/lib/mingw-w64/mingw-w64-crt/lib-common
-@@ -663,10 +657,6 @@ build/release: tinygo gen-device wasi-libc $(if $(filter 1,$(USE_SYSTEM_BINARYEN
- 	@mkdir -p build/release/tinygo/pkg/thumbv7em-unknown-unknown-eabi-cortex-m4
+@@ -721,15 +715,8 @@ build/release: tinygo gen-device wasi-libc $(if $(filter 1,$(USE_SYSTEM_BINARYEN
+ 	@mkdir -p build/release/tinygo/lib/picolibc/newlib/libc
+ 	@mkdir -p build/release/tinygo/lib/picolibc/newlib/libm
+ 	@mkdir -p build/release/tinygo/lib/wasi-libc
+-	@mkdir -p build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0
+-	@mkdir -p build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0plus
+-	@mkdir -p build/release/tinygo/pkg/thumbv7em-unknown-unknown-eabi-cortex-m4
  	@echo copying source files
  	@cp -p  build/tinygo$(EXE)           build/release/tinygo/bin
 -ifneq ($(USE_SYSTEM_BINARYEN),1)
@@ -42,7 +47,7 @@ index dc388c21..7efc9901 100644
  	@cp -rp lib/CMSIS/CMSIS/Include      build/release/tinygo/lib/CMSIS/CMSIS
  	@cp -rp lib/CMSIS/README.md          build/release/tinygo/lib/CMSIS
  	@cp -rp lib/macos-minimal-sdk/*      build/release/tinygo/lib/macos-minimal-sdk
-@@ -705,8 +695,7 @@ endif
+@@ -768,16 +755,9 @@ endif
  	@cp -rp lib/picolibc/newlib/libm/common      build/release/tinygo/lib/picolibc/newlib/libm
  	@cp -rp lib/picolibc-stdio.c         build/release/tinygo/lib
  	@cp -rp lib/wasi-libc/sysroot        build/release/tinygo/lib/wasi-libc/sysroot
@@ -51,7 +56,15 @@ index dc388c21..7efc9901 100644
 +	@cp -rp lib/compiler-rt-builtins     build/release/tinygo/lib/compiler-rt-builtins
  	@cp -rp src                          build/release/tinygo/src
  	@cp -rp targets                      build/release/tinygo/targets
- 	./build/tinygo build-library -target=cortex-m0     -o build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0/compiler-rt     compiler-rt
+-	./build/release/tinygo/bin/tinygo build-library -target=cortex-m0     -o build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0/compiler-rt     compiler-rt
+-	./build/release/tinygo/bin/tinygo build-library -target=cortex-m0plus -o build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0plus/compiler-rt compiler-rt
+-	./build/release/tinygo/bin/tinygo build-library -target=cortex-m4     -o build/release/tinygo/pkg/thumbv7em-unknown-unknown-eabi-cortex-m4/compiler-rt    compiler-rt
+-	./build/release/tinygo/bin/tinygo build-library -target=cortex-m0     -o build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0/picolibc     picolibc
+-	./build/release/tinygo/bin/tinygo build-library -target=cortex-m0plus -o build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0plus/picolibc picolibc
+-	./build/release/tinygo/bin/tinygo build-library -target=cortex-m4     -o build/release/tinygo/pkg/thumbv7em-unknown-unknown-eabi-cortex-m4/picolibc    picolibc
+ 
+ release:
+ 	tar -czf build/release.tar.gz -C build/release tinygo
 -- 
-2.36.0
+2.37.2
 
diff --git a/pkgs/development/compilers/tinygo/0002-Add-clang-header-path.patch b/pkgs/development/compilers/tinygo/0002-Add-clang-header-path.patch
index 875a2521a9233..54e389fe1401f 100644
--- a/pkgs/development/compilers/tinygo/0002-Add-clang-header-path.patch
+++ b/pkgs/development/compilers/tinygo/0002-Add-clang-header-path.patch
@@ -1,14 +1,14 @@
-From 4ee942ccc7cdb06ee51490e9cb44ecb36b25378a Mon Sep 17 00:00:00 2001
+From 301b2d82cdbfaffe4dfba1d2cfed068a4115f730 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Mustafa=20=C3=87al=C4=B1=C5=9Fkan?= <muscaln@protonmail.com>
 Date: Sat, 30 Apr 2022 16:18:31 +0300
 Subject: [PATCH 2/3] Add clang header path
 
 
 diff --git a/builder/builtins.go b/builder/builtins.go
-index 479b541d..b35283c6 100644
+index 121398fa..a589988b 100644
 --- a/builder/builtins.go
 +++ b/builder/builtins.go
-@@ -164,7 +164,7 @@ var aeabiBuiltins = []string{
+@@ -170,7 +170,7 @@ var aeabiBuiltins = []string{
  var CompilerRT = Library{
  	name: "compiler-rt",
  	cflags: func(target, headerPath string) []string {
@@ -31,10 +31,10 @@ index f1b061ae..159f90cf 100644
  			"-I" + picolibcDir + "/tinystdio",
  			"-I" + headerPath,
 diff --git a/compileopts/config.go b/compileopts/config.go
-index b30e653e..7561b3f2 100644
+index a006b673..3a105b49 100644
 --- a/compileopts/config.go
 +++ b/compileopts/config.go
-@@ -288,6 +288,7 @@ func (c *Config) CFlags() []string {
+@@ -279,6 +279,7 @@ func (c *Config) CFlags() []string {
  		path, _ := c.LibcPath("picolibc")
  		cflags = append(cflags,
  			"--sysroot="+path,
@@ -42,7 +42,7 @@ index b30e653e..7561b3f2 100644
  			"-isystem", filepath.Join(path, "include"), // necessary for Xtensa
  			"-isystem", filepath.Join(picolibcDir, "include"),
  			"-isystem", filepath.Join(picolibcDir, "tinystdio"),
-@@ -297,7 +298,6 @@ func (c *Config) CFlags() []string {
+@@ -288,7 +289,6 @@ func (c *Config) CFlags() []string {
  		path, _ := c.LibcPath("musl")
  		arch := MuslArchitecture(c.Triple())
  		cflags = append(cflags,
@@ -51,5 +51,5 @@ index b30e653e..7561b3f2 100644
  			"-isystem", filepath.Join(root, "lib", "musl", "arch", arch),
  			"-isystem", filepath.Join(root, "lib", "musl", "include"),
 -- 
-2.36.0
+2.37.2
 
diff --git a/pkgs/development/compilers/tinygo/0003-Use-out-path-as-build-id-on-darwin.patch b/pkgs/development/compilers/tinygo/0003-Use-out-path-as-build-id-on-darwin.patch
new file mode 100644
index 0000000000000..a151c4ff880f7
--- /dev/null
+++ b/pkgs/development/compilers/tinygo/0003-Use-out-path-as-build-id-on-darwin.patch
@@ -0,0 +1,56 @@
+From e7357c383188dd735592bd9f2202d2afcfffa39d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Mustafa=20=C3=87al=C4=B1=C5=9Fkan?= <muscaln@protonmail.com>
+Date: Sun, 11 Sep 2022 17:08:33 +0300
+Subject: [PATCH 3/3] Use out path as build id on darwin
+
+
+diff --git a/builder/buildid.go b/builder/buildid.go
+index e6527700..65cb08e8 100644
+--- a/builder/buildid.go
++++ b/builder/buildid.go
+@@ -3,8 +3,6 @@ package builder
+ import (
+ 	"bytes"
+ 	"debug/elf"
+-	"debug/macho"
+-	"encoding/binary"
+ 	"fmt"
+ 	"io"
+ 	"os"
+@@ -53,30 +51,9 @@ func ReadBuildID() ([]byte, error) {
+ 			return goID, nil
+ 		}
+ 	case "darwin":
+-		// Read the LC_UUID load command, which contains the equivalent of a
+-		// build ID.
+-		file, err := macho.NewFile(f)
+-		if err != nil {
+-			return nil, err
+-		}
+-		for _, load := range file.Loads {
+-			// Unfortunately, the debug/macho package doesn't support the
+-			// LC_UUID command directly. So we have to read it from
+-			// macho.LoadBytes.
+-			load, ok := load.(macho.LoadBytes)
+-			if !ok {
+-				continue
+-			}
+-			raw := load.Raw()
+-			command := binary.LittleEndian.Uint32(raw)
+-			if command != 0x1b {
+-				// Looking for the LC_UUID load command.
+-				// LC_UUID is defined here as 0x1b:
+-				// https://opensource.apple.com/source/xnu/xnu-4570.71.2/EXTERNAL_HEADERS/mach-o/loader.h.auto.html
+-				continue
+-			}
+-			return raw[4:], nil
+-		}
++		// On darwin, os.Executable() returns broken path in nix build environment
++		// So we are using $out path as build id since its also unique
++		return []byte("OUT_PATH"), nil
+ 	default:
+ 		// On other platforms (such as Windows) there isn't such a convenient
+ 		// build ID. Luckily, Go does have an equivalent of the build ID, which
+-- 
+2.37.2
+
diff --git a/pkgs/development/compilers/tinygo/default.nix b/pkgs/development/compilers/tinygo/default.nix
index b335df487c867..43b981ffd068b 100644
--- a/pkgs/development/compilers/tinygo/default.nix
+++ b/pkgs/development/compilers/tinygo/default.nix
@@ -18,6 +18,7 @@
 , avrdude
 , gdb
 , openocd
+, tinygoTests ? [ "smoketest" ]
 }:
 
 let
@@ -27,17 +28,17 @@ in
 
 buildGoModule rec {
   pname = "tinygo";
-  version = "0.23.0";
+  version = "0.25.0";
 
   src = fetchFromGitHub {
     owner = "tinygo-org";
     repo = "tinygo";
     rev = "v${version}";
-    sha256 = "sha256-YgQGAQJw9Xyw5BF2d9uZTQHfjHsu2evZGo4RV9DtStE=";
+    sha256 = "sha256-Rxdxum1UIaz8tpEAGqpLvKd25nHdj4Se+IoN29EJEHg=";
     fetchSubmodules = true;
   };
 
-  vendorSha256 = "sha256-fK8BlCh+1NtHW6MwW68iSIB+Sw6AK+g3y4lMyMYrXkk=";
+  vendorSha256 = "sha256-QxLY4KT05PtA/W7d1vKxsq5w35YZ6MJL3Lh726b+E9w=";
 
   patches = [
     ./0001-Makefile.patch
@@ -46,17 +47,22 @@ buildGoModule rec {
       src = ./0002-Add-clang-header-path.patch;
       clang_include = "${clang.cc.lib}/lib/clang/${clang.cc.version}/include";
     })
+
+    #TODO(muscaln): Find a better way to fix build ID on darwin
+    ./0003-Use-out-path-as-build-id-on-darwin.patch
   ];
 
   checkInputs = [ avrgcc binaryen ];
-  nativeBuildInputs = [ go makeWrapper ];
+  nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ llvm clang.cc ]
     ++ lib.optionals stdenv.isDarwin [ zlib ncurses libffi libxml2 xar ];
 
-  doCheck = stdenv.buildPlatform == stdenv.hostPlatform;
+  doCheck = (stdenv.buildPlatform.canExecute stdenv.hostPlatform);
+  inherit tinygoTests;
 
   allowGoReference = true;
   tags = [ "llvm${llvmMajor}" ];
+  ldflags = [ "-X github.com/tinygo-org/tinygo/goenv.TINYGOROOT=${placeholder "out"}/share/tinygo" ];
   subPackages = [ "." ];
 
   # Output contains static libraries for different arm cpus
@@ -83,9 +89,13 @@ buildGoModule rec {
 
     substituteInPlace Makefile \
       --replace "\$(TINYGO)" "$(pwd)/build/tinygo" \
+      --replace "@\$(MD5SUM)" "md5sum" \
       --replace "build/release/tinygo/bin" "$out/bin" \
       --replace "build/release/" "$out/share/"
 
+    substituteInPlace builder/buildid.go \
+      --replace "OUT_PATH" "$out"
+
     # TODO: Fix mingw and darwin
     # Disable windows and darwin cross-compile tests
     sed -i "/GOOS=windows/d" Makefile
@@ -103,24 +113,34 @@ buildGoModule rec {
   '';
 
   preBuild = ''
-    export HOME=$TMPDIR
-    export GOCACHE=$TMPDIR/go-cache
-    export GOPATH=$TMPDIR/go
     export PATH=$out/libexec/tinygo:$PATH
+    export HOME=$TMPDIR
   '';
 
-  postBuild = ''
+  postBuild = let
+    tinygoForBuild = if (stdenv.buildPlatform.canExecute stdenv.hostPlatform)
+      then "build/tinygo"
+      else "${buildPackages.tinygo}/bin/tinygo";
+    in ''
     # Move binary
     mkdir -p build
     mv $GOPATH/bin/tinygo build/tinygo
 
     make gen-device
+
+    export TINYGOROOT=$(pwd)
+    finalRoot=$out/share/tinygo
+
+    for target in thumbv6m-unknown-unknown-eabi-cortex-m0 thumbv6m-unknown-unknown-eabi-cortex-m0plus thumbv7em-unknown-unknown-eabi-cortex-m4; do
+      mkdir -p $finalRoot/pkg/$target
+      for lib in compiler-rt picolibc; do
+        ${tinygoForBuild} build-library -target=''${target#*eabi-} -o $finalRoot/pkg/$target/$lib $lib
+      done
+    done
   '';
 
-  checkPhase = ''
-    runHook preCheck
-    make smoketest XTENSA=0
-    runHook postCheck
+  checkPhase = lib.optionalString (tinygoTests != [ ] && tinygoTests != null) ''
+    make ''${tinygoTests[@]} XTENSA=0 ${lib.optionalString stdenv.isDarwin "AVR=0"}
   '';
 
   installPhase = ''
@@ -129,7 +149,6 @@ buildGoModule rec {
     make build/release
 
     wrapProgram $out/bin/tinygo \
-      --set TINYGOROOT $out/share/tinygo \
       --prefix PATH : ${lib.makeBinPath [ go avrdude openocd avrgcc binaryen ]}:$out/libexec/tinygo
 
     runHook postInstall
@@ -142,6 +161,5 @@ buildGoModule rec {
     description = "Go compiler for small places";
     license = licenses.bsd3;
     maintainers = with maintainers; [ Madouura muscaln ];
-    broken = stdenv.isDarwin;
   };
 }
diff --git a/pkgs/development/compilers/yosys/plugins/ghdl.nix b/pkgs/development/compilers/yosys/plugins/ghdl.nix
index 0999f5ab34be8..718343f5fb8f3 100644
--- a/pkgs/development/compilers/yosys/plugins/ghdl.nix
+++ b/pkgs/development/compilers/yosys/plugins/ghdl.nix
@@ -1,21 +1,34 @@
-{ stdenv, lib, fetchFromGitHub, pkg-config
-, yosys, readline, zlib, ghdl
+{ stdenv
+, lib
+, fetchFromGitHub
+, pkg-config
+, yosys
+, readline
+, zlib
+, ghdl
 }:
 
 stdenv.mkDerivation {
   pname = "yosys-ghdl";
-  version = "2021.01.25";
-  plugin = "ghdl";
+  # This is not the latest commit, but it's the latest that builds with current stable ghdl 2.0.0
+  version = "2022.01.11";
 
   src = fetchFromGitHub {
     owner  = "ghdl";
     repo   = "ghdl-yosys-plugin";
-    rev    = "cba859cacf8c6631146dbdaa0f297c060b5a68cd";
-    sha256 = "01d9wb7sqkmkf2y9bnn3pmhy08khzs5m1d06whxsiwgwnjzfk9mx";
+    rev    = "c9b05e481423c55ffcbb856fd5296701f670808c";
+    sha256 = "sha256-tT2+DXUtbJIBzBUBcyG2sz+3G+dTkciLVIczcRPr0Jw=";
   };
 
-  buildInputs = [ yosys readline zlib ghdl ];
-  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [
+    yosys
+    readline
+    zlib
+    ghdl
+  ];
+  nativeBuildInputs = [
+    pkg-config
+  ];
 
   doCheck = true;
   installPhase = ''
@@ -25,6 +38,7 @@ stdenv.mkDerivation {
 
   meta = with lib; {
     description = "GHDL plugin for Yosys";
+    homepage    = "https://github.com/ghdl/ghdl-yosys-plugin";
     license     = licenses.isc;
     platforms   = platforms.all;
     maintainers = with maintainers; [ thoughtpolice ];
diff --git a/pkgs/development/coq-modules/VST/default.nix b/pkgs/development/coq-modules/VST/default.nix
index dea603b5e4f5a..8ffa99d29b4bc 100644
--- a/pkgs/development/coq-modules/VST/default.nix
+++ b/pkgs/development/coq-modules/VST/default.nix
@@ -25,7 +25,7 @@ mkCoqDerivation {
   repo = "VST";
   inherit version;
   defaultVersion = with versions; switch coq.coq-version [
-    { case = range "8.14" "8.15"; out = "2.10"; }
+    { case = range "8.14" "8.16"; out = "2.10"; }
     { case = range "8.13" "8.15"; out = "2.9"; }
     { case = range "8.12" "8.13"; out = "2.8"; }
   ] null;
@@ -39,7 +39,7 @@ mkCoqDerivation {
   preConfigure = ''
     patchShebangs util
     substituteInPlace Makefile \
-      --replace 'COQVERSION= ' 'COQVERSION= 8.15.2 or-else 8.15.1 or-else '\
+      --replace 'COQVERSION= ' 'COQVERSION= 8.16.0 or-else 8.15.2 or-else 8.15.1 or-else '\
       --replace 'FLOYD_FILES=' 'FLOYD_FILES= ${toString extra_floyd_files}'
   '';
 
diff --git a/pkgs/development/coq-modules/addition-chains/default.nix b/pkgs/development/coq-modules/addition-chains/default.nix
index 8de9a8e411cd8..63ba0e8050721 100644
--- a/pkgs/development/coq-modules/addition-chains/default.nix
+++ b/pkgs/development/coq-modules/addition-chains/default.nix
@@ -19,7 +19,7 @@ mkCoqDerivation {
 
   propagatedBuildInputs = [ mathcomp-ssreflect mathcomp-algebra mathcomp-fingroup paramcoq ];
 
-  useDune2 = true;
+  useDune = true;
 
   meta = {
     description = "Exponentiation algorithms following addition chains";
diff --git a/pkgs/development/coq-modules/category-theory/default.nix b/pkgs/development/coq-modules/category-theory/default.nix
index 7cff9ddef4b90..97feac90c3bd2 100644
--- a/pkgs/development/coq-modules/category-theory/default.nix
+++ b/pkgs/development/coq-modules/category-theory/default.nix
@@ -5,6 +5,7 @@ with lib; mkCoqDerivation {
   pname = "category-theory";
   owner = "jwiegley";
 
+  release."1.0.0".sha256 = "sha256-qPgho4/VcL3vyMPJAMXXdqhYPEbNeXSZsoWbA/lGek4=";
   release."20211213".rev    = "449e30e929d56f6f90c22af2c91ffcc4d79837be";
   release."20211213".sha256 = "sha256:0vgfmph5l1zn6j4b851rcm43s8y9r83swsz07rpzhmfg34pk0nl0";
   release."20210730".rev    = "d87937faaf7460bcd6985931ac36f551d67e11af";
@@ -16,6 +17,7 @@ with lib; mkCoqDerivation {
 
   inherit version;
   defaultVersion = with versions; switch coq.coq-version [
+    { case = range "8.14" "8.16"; out = "1.0.0"; }
     { case = range "8.10" "8.15"; out = "20211213"; }
     { case = range "8.8" "8.9"; out = "20190414"; }
     { case = range "8.6" "8.7"; out = "20180709"; }
diff --git a/pkgs/development/coq-modules/compcert/default.nix b/pkgs/development/coq-modules/compcert/default.nix
index 596c059f5018c..c8c66395c4281 100644
--- a/pkgs/development/coq-modules/compcert/default.nix
+++ b/pkgs/development/coq-modules/compcert/default.nix
@@ -16,7 +16,7 @@ let compcert = mkCoqDerivation rec {
   releaseRev = v: "v${v}";
 
   defaultVersion =  with versions; switch coq.version [
-      { case = range "8.14" "8.15"; out = "3.11"; }
+      { case = range "8.14" "8.16"; out = "3.11"; }
       { case = isEq "8.13"        ; out = "3.10"; }
       { case = isEq "8.12"       ; out = "3.9"; }
       { case = range "8.8" "8.11"; out = "3.8"; }
@@ -138,6 +138,15 @@ compcert.overrideAttrs (o:
           })
         ];
       }
+      { cases = [ (isEq "8.16") "3.11" ];
+        out = [
+          # Support for Coq 8.16.0
+          (fetchpatch {
+            url = "https://github.com/AbsInt/CompCert/commit/34be08a23d18d56f2dde24fd24b6dbe3bcb01ec3.patch";
+            sha256 = "sha256-a5YnftGVadVypEqrOYRRxI7YtGOEWyKnO4GqakFhvzI=";
+          })
+        ];
+      }
     ] [];
   }
 )
diff --git a/pkgs/development/coq-modules/coqide/default.nix b/pkgs/development/coq-modules/coqide/default.nix
index a827057a118b6..4e1f9e5f66628 100644
--- a/pkgs/development/coq-modules/coqide/default.nix
+++ b/pkgs/development/coq-modules/coqide/default.nix
@@ -22,7 +22,7 @@ with lib; mkCoqDerivation rec {
   '';
   prefixKey = "-prefix ";
 
-  useDune2 = true;
+  useDune = true;
 
   buildInputs = [
     copyDesktopItems
diff --git a/pkgs/development/coq-modules/gaia-hydras/default.nix b/pkgs/development/coq-modules/gaia-hydras/default.nix
index ce254aff78bb4..5377600caba42 100644
--- a/pkgs/development/coq-modules/gaia-hydras/default.nix
+++ b/pkgs/development/coq-modules/gaia-hydras/default.nix
@@ -21,7 +21,7 @@ with lib; mkCoqDerivation rec {
     mathcomp-zify
   ];
 
-  useDune2 = true;
+  useDune = true;
 
   meta = {
     description = "Comparison between ordinals in Gaia and Hydra battles";
diff --git a/pkgs/development/coq-modules/hydra-battles/default.nix b/pkgs/development/coq-modules/hydra-battles/default.nix
index d59afa53ac311..2729f7c213918 100644
--- a/pkgs/development/coq-modules/hydra-battles/default.nix
+++ b/pkgs/development/coq-modules/hydra-battles/default.nix
@@ -16,7 +16,7 @@ with lib;
     { case = range "8.11" "8.12"; out = "0.4"; }
   ] null;
 
-  useDune2 = true;
+  useDune = true;
 
   meta = {
     description = "Exploration of some properties of Kirby and Paris' hydra battles, with the help of Coq";
diff --git a/pkgs/development/coq-modules/mathcomp-analysis/default.nix b/pkgs/development/coq-modules/mathcomp-analysis/default.nix
index 99c760fce0cec..a42b551d18450 100644
--- a/pkgs/development/coq-modules/mathcomp-analysis/default.nix
+++ b/pkgs/development/coq-modules/mathcomp-analysis/default.nix
@@ -1,7 +1,8 @@
 { lib,
   mkCoqDerivation, recurseIntoAttrs,
-  mathcomp, mathcomp-finmap, mathcomp-bigenough, mathcomp-real-closed,
+  mathcomp, mathcomp-finmap, mathcomp-bigenough,
   hierarchy-builder,
+  single ? false,
   coqPackages, coq, version ? null }@args:
 with builtins // lib;
 let
@@ -36,20 +37,23 @@ let
   packages = [ "classical" "analysis" ];
 
   mathcomp_ = package: let
-      analysis-deps = map mathcomp_ (head (splitList (pred.equal package) packages));
-      pkgpath = if package == "analysis" then "theories" else "${package}";
-      pname = "mathcomp-${package}";
+      classical-deps = [ mathcomp.algebra mathcomp-finmap hierarchy-builder ];
+      analysis-deps = [ mathcomp.field mathcomp-bigenough ];
+      intra-deps = if package == "single" then []
+        else map mathcomp_ (head (splitList (pred.equal package) packages));
+      pkgpath = if package == "single" then "."
+        else if package == "analysis" then "theories" else "${package}";
+      pname = if package == "single" then "mathcomp-analysis-single"
+        else "mathcomp-${package}";
       derivation = mkCoqDerivation ({
         inherit version pname defaultVersion release repo owner;
 
         namePrefix = [ "coq" "mathcomp" ];
 
         propagatedBuildInputs =
-          (if package == "classical" then
-             [ mathcomp.ssreflect mathcomp.algebra mathcomp-finmap ]
-           else
-             [ mathcomp.field mathcomp-bigenough mathcomp-real-closed ])
-          ++ [ analysis-deps ];
+          intra-deps
+          ++ optionals (elem package [ "classical" "single" ]) classical-deps
+          ++ optionals (elem package [ "analysis" "single" ]) analysis-deps;
 
         preBuild = ''
           cd ${pkgpath}
@@ -83,4 +87,4 @@ let
     );
     in patched-derivation;
 in
-mathcomp_ "analysis"
+mathcomp_ (if single then "single" else "analysis")
diff --git a/pkgs/development/coq-modules/mathcomp-word/default.nix b/pkgs/development/coq-modules/mathcomp-word/default.nix
index f39fbe0ac6a6b..5f34434b50f9f 100644
--- a/pkgs/development/coq-modules/mathcomp-word/default.nix
+++ b/pkgs/development/coq-modules/mathcomp-word/default.nix
@@ -6,16 +6,17 @@ mkCoqDerivation {
   pname = "word";
   owner = "jasmin-lang";
   repo = "coqword";
-  useDune2 = true;
+  useDune = true;
 
   releaseRev = v: "v${v}";
 
+  release."2.0".sha256 = "sha256-x9AEFadlYiIIOxAhjv4Vc/dxdRZC7AdWQ6AByvLOFDk=";
   release."1.1".sha256 = "sha256:0jb28vgkr4xpg9d6k85rq7abpx5ch612iw9ps5w8q80q1jpjlc4z";
   release."1.0".sha256 = "sha256:0703m97rnivcbc7vvbd9rl2dxs6l8n52cbykynw61c6w9rhxspcg";
 
   inherit version;
   defaultVersion = with versions; switch [ coq.version mathcomp.version ] [
-    { cases = [ (range "8.12" "8.16") (isGe "1.12") ]; out = "1.1"; }
+    { cases = [ (range "8.12" "8.16") (isGe "1.12") ]; out = "2.0"; }
   ] null;
 
   propagatedBuildInputs = [ mathcomp.algebra mathcomp.ssreflect mathcomp.fingroup ];
diff --git a/pkgs/development/coq-modules/multinomials/default.nix b/pkgs/development/coq-modules/multinomials/default.nix
index 8144d87b9fbf4..57f4a381b2049 100644
--- a/pkgs/development/coq-modules/multinomials/default.nix
+++ b/pkgs/development/coq-modules/multinomials/default.nix
@@ -1,5 +1,5 @@
 { coq, mkCoqDerivation, mathcomp, mathcomp-finmap, mathcomp-bigenough,
-  lib, version ? null, useDune2 ? false }@args:
+  lib, version ? null, useDune ? false }@args:
 with lib; mkCoqDerivation {
 
   namePrefix = [ "coq" "mathcomp" ];
@@ -31,7 +31,7 @@ with lib; mkCoqDerivation {
     "1.0".sha256   = "1qmbxp1h81cy3imh627pznmng0kvv37k4hrwi2faa101s6bcx55m";
   };
 
-  useDune2ifVersion = v: versions.isGe "1.5.3" v || v == "dev";
+  useDuneifVersion = v: versions.isGe "1.5.3" v || v == "dev";
 
   preConfigure = ''
     patchShebangs configure || true
@@ -45,4 +45,4 @@ with lib; mkCoqDerivation {
     license = licenses.cecill-c;
   };
 }
-// optionalAttrs (args?useDune2) { inherit useDune2; }
+// optionalAttrs (args?useDune) { inherit useDune; }
diff --git a/pkgs/development/coq-modules/serapi/default.nix b/pkgs/development/coq-modules/serapi/default.nix
index 7c3b656da9138..e3ec9bfdc39ac 100644
--- a/pkgs/development/coq-modules/serapi/default.nix
+++ b/pkgs/development/coq-modules/serapi/default.nix
@@ -27,7 +27,7 @@ in
       { case = isEq "8.10"; out = "8.10.0+0.7.2";  }
     ] null;
 
-  useDune2 = true;
+  useDune = true;
 
   patches = [ ./janestreet-0.15.patch ];
 
diff --git a/pkgs/development/coq-modules/simple-io/default.nix b/pkgs/development/coq-modules/simple-io/default.nix
index 97371c19c0c7e..f9fe909d8caa5 100644
--- a/pkgs/development/coq-modules/simple-io/default.nix
+++ b/pkgs/development/coq-modules/simple-io/default.nix
@@ -1,4 +1,4 @@
-{ lib, mkCoqDerivation, coq, coq-ext-lib, version ? null }:
+{ lib, callPackage, mkCoqDerivation, coq, coq-ext-lib, version ? null }:
 
 with lib; mkCoqDerivation {
   pname = "simple-io";
@@ -13,11 +13,14 @@ with lib; mkCoqDerivation {
   release."1.3.0".sha256 = "1yp7ca36jyl9kz35ghxig45x6cd0bny2bpmy058359p94wc617ax";
   mlPlugin = true;
   nativeBuildInputs = [ coq.ocamlPackages.cppo ];
-  propagatedBuildInputs = [ coq-ext-lib coq.ocamlPackages.ocamlbuild ];
+  propagatedBuildInputs = [ coq-ext-lib ]
+  ++ (with coq.ocamlPackages; [ ocaml findlib ocamlbuild ]);
 
   doCheck = true;
   checkTarget = "test";
 
+  passthru.tests.HelloWorld = callPackage ./test.nix {};
+
   meta = {
     description = "Purely functional IO for Coq";
     license = licenses.mit;
diff --git a/pkgs/development/coq-modules/simple-io/test.nix b/pkgs/development/coq-modules/simple-io/test.nix
new file mode 100644
index 0000000000000..39db69d21a5f9
--- /dev/null
+++ b/pkgs/development/coq-modules/simple-io/test.nix
@@ -0,0 +1,21 @@
+{ stdenv, coq, simple-io }:
+
+stdenv.mkDerivation {
+  pname = "coq-simple-io-test";
+  inherit (simple-io) src version;
+  checkInputs = [ coq simple-io ];
+  dontConfigure = true;
+  dontBuild = true;
+  doCheck = true;
+
+  checkPhase = ''
+    cd test
+    for p in Argv.v Example.v HelloWorld.v TestExtraction.v TestPervasives.v
+    do
+      [ -f $p ] && echo $p && coqc $p
+    done
+  '';
+
+  installPhase = "touch $out";
+
+}
diff --git a/pkgs/development/coq-modules/topology/default.nix b/pkgs/development/coq-modules/topology/default.nix
index 37585eea8c79f..eb94912307a7f 100644
--- a/pkgs/development/coq-modules/topology/default.nix
+++ b/pkgs/development/coq-modules/topology/default.nix
@@ -25,7 +25,7 @@ mkCoqDerivation rec {
 
   propagatedBuildInputs = [ zorns-lemma ];
 
-  useDune2ifVersion = versions.isGe "9.0";
+  useDuneifVersion = versions.isGe "9.0";
 
   meta = {
     description = "General topology in Coq";
diff --git a/pkgs/development/coq-modules/zorns-lemma/default.nix b/pkgs/development/coq-modules/zorns-lemma/default.nix
index b003e15891d48..10f238ae6c110 100644
--- a/pkgs/development/coq-modules/zorns-lemma/default.nix
+++ b/pkgs/development/coq-modules/zorns-lemma/default.nix
@@ -25,7 +25,7 @@ with lib;
     { case = "8.5"; out = "8.5.0"; }
   ] null;
 
-  useDune2ifVersion = versions.isGe "9.0";
+  useDuneifVersion = versions.isGe "9.0";
 
   meta = {
     description = "Development of basic set theory";
diff --git a/pkgs/development/dotnet-modules/python-language-server/default.nix b/pkgs/development/dotnet-modules/python-language-server/default.nix
index a433840b7bca1..a197f158bb6b3 100644
--- a/pkgs/development/dotnet-modules/python-language-server/default.nix
+++ b/pkgs/development/dotnet-modules/python-language-server/default.nix
@@ -3,6 +3,7 @@
 , fetchFromGitHub
 , buildDotnetModule
 , dotnetCorePackages
+, stdenvNoCC
 , autoPatchelfHook
 , openssl
 , icu
@@ -25,6 +26,8 @@ buildDotnetModule rec {
   dotnet-sdk = dotnetCorePackages.sdk_3_1;
   dotnet-runtime = dotnetCorePackages.runtime_3_1;
 
+  dotnetRestoreFlags = [ "--runtime ${dotnet-sdk.systemToDotnetRid stdenvNoCC.targetPlatform.system}" ];
+
   nativeBuildInputs = [ autoPatchelfHook ];
   buildInputs = [ stdenv.cc.cc.lib ];
   runtimeDeps = [ openssl icu ];
diff --git a/pkgs/development/dotnet-modules/python-language-server/deps.nix b/pkgs/development/dotnet-modules/python-language-server/deps.nix
index 3f4e4fa3f2aa2..de012bfb0abbc 100644
--- a/pkgs/development/dotnet-modules/python-language-server/deps.nix
+++ b/pkgs/development/dotnet-modules/python-language-server/deps.nix
@@ -1,20 +1,12 @@
+# This file was automatically generated by passthru.fetch-deps.
+# Please dont edit it manually, your changes might get overwritten!
+
 { fetchNuGet }: [
   (fetchNuGet { pname = "MessagePack"; version = "2.1.90"; sha256 = "1j5wjl7aq7nn5ga3j6zaaivdf2wlfyd7w66ak0i7krgrmv26lb8i"; })
   (fetchNuGet { pname = "MessagePack.Annotations"; version = "2.1.90"; sha256 = "08sghhwbz8h7ji9lg0klhwcyndxg6v11pq9jac975sb38samnm11"; })
   (fetchNuGet { pname = "MicroBuild.Core"; version = "0.3.0"; sha256 = "190d755l60j3l5m1661wj19gj9w6ngza56q3vkijkkmbbabdmqln"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "3.1.26"; sha256 = "0rib2121wri6wj6h4f6w4yqw9qp2xsad3ind63fmp1sr649jifyh"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "3.1.26"; sha256 = "0z29rrhc87g0bi273lcqd608f7ngd16nv85v8549231yvf99n60x"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "3.1.26"; sha256 = "0pbm6hpibsvq5w8hyvvllz4qns287x3l8bc07krffv23yfbv8zwy"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x86"; version = "3.1.26"; sha256 = "1kiahv55qyqy7g772m0v731yb5jfpqxqb0wlyp5wa0jppkhdnqxc"; })
   (fetchNuGet { pname = "Microsoft.Bcl.AsyncInterfaces"; version = "1.0.0"; sha256 = "00dx5armvkqjxvkldz3invdlck9nj7w21dlsr2aqp1rqbyrbsbbh"; })
   (fetchNuGet { pname = "Microsoft.Extensions.FileSystemGlobbing"; version = "3.1.8"; sha256 = "1v2lr0vbssqayzgxvdwb54jmvz7mvlih4l9h7i71gm3c62nlbq8y"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "3.1.26"; sha256 = "1vk4dr2z72nmjg2skqvy2m2h5brqp21v51pnd7ldpm7asgr5ck8n"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "3.1.26"; sha256 = "0l5yfnpbd36n38rjlmhsnq4bniq1fcssv4qh8kb9h3qigz40qxj9"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x86"; version = "3.1.26"; sha256 = "0z8g5jp18r0k4klw4jch17ps4f78vxaxkcmnmj8wrr7qdp81jy44"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "3.1.26"; sha256 = "1h9b8fwgwbycvn1ngxnpdz3s1zh59wi2iy8n4y2nfkmz2rbldrrm"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "3.1.26"; sha256 = "0y06qz4pgflwia222mljg19nlfmhcg0qs1a8wm3zwj602wzy3nll"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "3.1.26"; sha256 = "1half7rywhxb1x19gzddvjqbll4whx9wmwdlk57iy68djas95lmy"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x86"; version = "3.1.26"; sha256 = "09grar210h1r6af15ng418vx6ln3pi4x22vn5n2889xldf4x2n56"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.1"; sha256 = "164wycgng4mi9zqi2pnsf1pq6gccbqvw6ib916mqizgjmd8f44pj"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "3.0.0"; sha256 = "1bk8r4r3ihmi6322jmcag14jmw11mjqys202azqjzglcx59pxh51"; })
@@ -62,11 +54,6 @@
   (fetchNuGet { pname = "runtime.unix.System.Net.Primitives"; version = "4.3.0"; sha256 = "0bdnglg59pzx9394sy4ic66kmxhqp8q8bvmykdxcbs5mm0ipwwm4"; })
   (fetchNuGet { pname = "runtime.unix.System.Private.Uri"; version = "4.3.0"; sha256 = "1jx02q6kiwlvfksq1q9qr17fj78y5v6mwsszav4qcz9z25d5g6vk"; })
   (fetchNuGet { pname = "runtime.unix.System.Runtime.Extensions"; version = "4.3.0"; sha256 = "0pnxxmm8whx38dp6yvwgmh22smknxmqs5n513fc7m4wxvs1bvi4p"; })
-  (fetchNuGet { pname = "runtime.win.Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0k1h8nnp1s0p8rjwgjyj1387cc1yycv0k22igxc963lqdzrx2z36"; })
-  (fetchNuGet { pname = "runtime.win.System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "16fbn4bcynad1ygdq0yk1wmckvs8jvrrf104xa5dc2hlc8y3x58f"; })
-  (fetchNuGet { pname = "runtime.win.System.IO.FileSystem"; version = "4.3.0"; sha256 = "1c01nklbxywszsbfaxc76hsz7gdxac3jkphrywfkdsi3v4bwd6g8"; })
-  (fetchNuGet { pname = "runtime.win.System.Net.Primitives"; version = "4.3.0"; sha256 = "1dixh195bi7473n17hspll6i562gghdz9m4jk8d4kzi1mlzjk9cf"; })
-  (fetchNuGet { pname = "runtime.win.System.Runtime.Extensions"; version = "4.3.0"; sha256 = "1700famsxndccfbcdz9q14qb20p49lax67mqwpgy4gx3vja1yczr"; })
   (fetchNuGet { pname = "StreamJsonRpc"; version = "2.5.46"; sha256 = "0rsgxfxcfgbx1w2jhllx1cwnbj9vra6034gv4kgzahh0v5vn8shf"; })
   (fetchNuGet { pname = "System.Buffers"; version = "4.3.0"; sha256 = "0fgns20ispwrfqll4q1zc1waqcmylb3zc50ys9x8zlwxh9pmd9jy"; })
   (fetchNuGet { pname = "System.Buffers"; version = "4.5.0"; sha256 = "1ywfqn4md6g3iilpxjn5dsr0f5lx6z0yvhqp4pgjcamygg73cz2c"; })
@@ -113,7 +100,6 @@
   (fetchNuGet { pname = "System.Text.Encoding"; version = "4.3.0"; sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr"; })
   (fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.3.0"; sha256 = "11q1y8hh5hrp5a3kw25cb6l00v5l5dvirkz8jr3sq00h1xgcgrxy"; })
   (fetchNuGet { pname = "System.Threading"; version = "4.3.0"; sha256 = "0rw9wfamvhayp5zh3j7p1yfmx9b5khbf4q50d8k5rk993rskfd34"; })
-  (fetchNuGet { pname = "System.Threading.Overlapped"; version = "4.3.0"; sha256 = "1nahikhqh9nk756dh8p011j36rlcp1bzz3vwi2b4m1l2s3vz8idm"; })
   (fetchNuGet { pname = "System.Threading.Tasks"; version = "4.3.0"; sha256 = "134z3v9abw3a6jsw17xl3f6hqjpak5l682k2vz39spj4kmydg6k7"; })
   (fetchNuGet { pname = "System.Threading.Tasks.Dataflow"; version = "4.9.0"; sha256 = "1g6s9pjg4z8iy98df60y9a01imdqy59zd767vz74rrng78jl2dk5"; })
   (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.5.3"; sha256 = "0g7r6hm572ax8v28axrdxz1gnsblg6kszq17g51pj14a5rn2af7i"; })
diff --git a/pkgs/development/embedded/blackmagic/helper.sh b/pkgs/development/embedded/blackmagic/helper.sh
index bae57f633cfbf..9185253b39d4b 100755
--- a/pkgs/development/embedded/blackmagic/helper.sh
+++ b/pkgs/development/embedded/blackmagic/helper.sh
@@ -11,7 +11,7 @@ out=${out:-/tmp}
 ################################################################################
 export CFLAGS=$NIX_CFLAGS_COMPILE
 export MAKEFLAGS="\
-  ${enableParallelBuilding:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}}"
+  ${enableParallelBuilding:+-j${NIX_BUILD_CORES}}"
 
 ################################################################################
 PRODUCTS="blackmagic.bin blackmagic.hex blackmagic_dfu.bin blackmagic_dfu.hex"
diff --git a/pkgs/development/embedded/svdtools/default.nix b/pkgs/development/embedded/svdtools/default.nix
index 0400270f5df0b..e902d837c9d5c 100644
--- a/pkgs/development/embedded/svdtools/default.nix
+++ b/pkgs/development/embedded/svdtools/default.nix
@@ -5,14 +5,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "svdtools";
-  version = "0.2.6";
+  version = "0.2.7";
 
   src = fetchCrate {
     inherit version pname;
-    sha256 = "sha256-y0RCUSk7YEE5bF/dVEuH/sTtHcVIT4+P0DVkPiNf54I=";
+    sha256 = "sha256-pRY9lL04BcZDYeFcdArIp2PcWiCZBurCYpYtYhPqFsg=";
   };
 
-  cargoSha256 = "sha256-PPoHTh8cjQMkD69BYk/HW/PwDV5j/OrHHpjFZdBqZxM=";
+  cargoSha256 = "sha256-9XymDE9ON11VfZObrMiARmpJay2g2mKEf0l2eojbjL8=";
 
   meta = with lib; {
     description = "Tools to handle vendor-supplied, often buggy SVD files";
diff --git a/pkgs/development/embedded/tytools/default.nix b/pkgs/development/embedded/tytools/default.nix
index 23bab058c594d..1669ec239ac79 100644
--- a/pkgs/development/embedded/tytools/default.nix
+++ b/pkgs/development/embedded/tytools/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "tytools";
-  version = "0.9.7";
+  version = "0.9.8";
 
   src = fetchFromGitHub {
     owner = "Koromix";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-iF2XyWSBBCO23iY/ni+QlpgtOuWKN2JTMTz+9OLEadk=";
+    sha256 = "sha256-MKhh0ooDZI1Ks8vVuPRiHhpOqStetGaAhE2ulvBstxA=";
   };
 
   nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook ];
diff --git a/pkgs/development/guile-modules/guile-gcrypt/default.nix b/pkgs/development/guile-modules/guile-gcrypt/default.nix
index 73152fb9d2c35..7c7e11e3d2b1d 100644
--- a/pkgs/development/guile-modules/guile-gcrypt/default.nix
+++ b/pkgs/development/guile-modules/guile-gcrypt/default.nix
@@ -20,11 +20,6 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-lAaiKBOdTFWEWsmwKgx0C67ACvtnEKUxti66dslzSVQ=";
   };
 
-  postConfigure = ''
-    sed -i '/moddir\s*=/s%=.*%=''${out}/share/guile/site%' Makefile;
-    sed -i '/godir\s*=/s%=.*%=''${out}/share/guile/ccache%' Makefile;
-  '';
-
   nativeBuildInputs = [
     autoreconfHook pkg-config texinfo
   ];
@@ -34,6 +29,8 @@ stdenv.mkDerivation rec {
   propagatedBuildInputs = [
     libgcrypt
   ];
+  makeFlags = [ "GUILE_AUTO_COMPILE=0" ];
+  doCheck = true;
 
   meta = with lib; {
     description = "Bindings to Libgcrypt for GNU Guile";
diff --git a/pkgs/development/guile-modules/guile-git/default.nix b/pkgs/development/guile-modules/guile-git/default.nix
index 0b3dfefcbe8c0..5487116b53afd 100644
--- a/pkgs/development/guile-modules/guile-git/default.nix
+++ b/pkgs/development/guile-modules/guile-git/default.nix
@@ -20,11 +20,6 @@ stdenv.mkDerivation rec {
     sha256 = "x6apF9fmwzrkyzAexKjClOTFrbE31+fVhSLyFZkKRYU=";
   };
 
-  postConfigure = ''
-    sed -i '/moddir\s*=/s%=.*%=''${out}/share/guile/site%' Makefile;
-    sed -i '/godir\s*=/s%=.*%=''${out}/share/guile/ccache%' Makefile;
-  '';
-
   nativeBuildInputs = [
     autoreconfHook pkg-config texinfo
   ];
@@ -34,9 +29,16 @@ stdenv.mkDerivation rec {
   propagatedBuildInputs = [
     libgit2 scheme-bytestructures
   ];
+  doCheck = true;
+  makeFlags = [ "GUILE_AUTO_COMPILE=0" ];
 
   enableParallelBuilding = true;
 
+  # Skipping proxy tests since it requires network access.
+  postConfigure = ''
+    sed -i -e '94i (test-skip 1)' ./tests/proxy.scm
+  '';
+
   meta = with lib; {
     description = "Bindings to Libgit2 for GNU Guile";
     homepage = "https://gitlab.com/guile-git/guile-git";
diff --git a/pkgs/development/guile-modules/guile-json/default.nix b/pkgs/development/guile-modules/guile-json/default.nix
index 1698614c426fa..dee81f2baebde 100644
--- a/pkgs/development/guile-modules/guile-json/default.nix
+++ b/pkgs/development/guile-modules/guile-json/default.nix
@@ -15,19 +15,14 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-lCq37FtAhWeZwMqfuBkhrxf8Q2CuvvHMjLH2rZIg1Rk=";
   };
 
-  postConfigure = ''
-    sed -i '/moddir\s*=/s%=.*%=''${out}/share/guile/site%' Makefile;
-    sed -i '/objdir\s*=/s%=.*%=''${out}/share/guile/ccache%' Makefile;
-    sed -i '/moddir\s*=/s%=.*%=''${out}/share/guile/site/json%' json/Makefile;
-    sed -i '/objdir\s*=/s%=.*%=''${out}/share/guile/ccache/json%' json/Makefile;
-  '';
-
   nativeBuildInputs = [
     pkg-config texinfo
   ];
   buildInputs = [
     guile
   ];
+  doCheck = true;
+  makeFlags = [ "GUILE_AUTO_COMPILE=0" ];
 
   meta = with lib; {
     description = "JSON Bindings for GNU Guile";
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index 5945737a15309..1f056ac25ef3c 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -2586,4 +2586,7 @@ in {
     url = "https://github.com/hackage-trustees/text-format/pull/4/commits/949383aa053497b8c251219c10506136c29b4d32.patch";
     sha256 = "QzpZ7lDedsz1mZcq6DL4x7LBnn58rx70+ZVvPh9shRo=";
   }) super.text-format;
+
+  # 2022-10-04: Needs newer tasty-dejafu than (currently) in stackage
+  rec-def = super.rec-def.override { tasty-dejafu = self.tasty-dejafu_2_1_0_0; };
 })
diff --git a/pkgs/development/haskell-modules/configuration-ghc-9.2.x.nix b/pkgs/development/haskell-modules/configuration-ghc-9.2.x.nix
index 0cebab8f4b8c9..7dd63c579934b 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-9.2.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-9.2.x.nix
@@ -169,9 +169,6 @@ self: super: {
   # lens >= 5.1 supports 9.2.1
   lens = doDistribute self.lens_5_2;
 
-  # Syntax error in tests fixed in https://github.com/simonmar/alex/commit/84b29475e057ef744f32a94bc0d3954b84160760
-  alex = dontCheck super.alex;
-
   # Apply patches from head.hackage.
   language-haskell-extract = appendPatch (pkgs.fetchpatch {
     url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/dfd024c9a336c752288ec35879017a43bd7e85a0/patches/language-haskell-extract-0.2.4.patch";
diff --git a/pkgs/development/haskell-modules/configuration-ghc-9.4.x.nix b/pkgs/development/haskell-modules/configuration-ghc-9.4.x.nix
index 6b78a528a05b0..6d2335fefe73c 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-9.4.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-9.4.x.nix
@@ -2,10 +2,17 @@
 
 let
   inherit (pkgs) fetchpatch lib;
-  inherit (lib) throwIfNot versionOlder;
+  checkAgainAfter = pkg: ver: msg: act:
+    if builtins.compareVersions pkg.version ver <= 0 then act
+    else
+      builtins.throw "Check if '${msg}' was resolved in ${pkg.pname} ${pkg.version} and update or remove this";
 in
 
-self: super: {
+with haskellLib;
+self: super: let
+  doctest_0_20_broken = p: checkAgainAfter self.doctest "0.20.0" "doctest broken on 9.4" (dontCheck p);
+  jailbreakForCurrentVersion = p: v: checkAgainAfter p v "bad bounds" (doJailbreak p);
+in {
   llvmPackages = lib.dontRecurseIntoAttrs self.ghc.llvmPackages;
 
   # Disable GHC core libraries.
@@ -48,4 +55,173 @@ self: super: {
   # GHC only bundles the xhtml library if haddock is enabled, check if this is
   # still the case when updating: https://gitlab.haskell.org/ghc/ghc/-/blob/0198841877f6f04269d6050892b98b5c3807ce4c/ghc.mk#L463
   xhtml = if self.ghc.hasHaddock or true then null else self.xhtml_3000_2_2_1;
+
+  # Tests fail because of typechecking changes
+  conduit = dontCheck super.conduit;
+
+  # 0.30 introduced support for GHC 9.2.
+  cryptonite = doDistribute self.cryptonite_0_30;
+
+  # Too strict bound on base
+  # https://github.com/haskell/cabal/issues/8509
+  # Requested versions of Cabal, Cabal-syntax and process match GHC 9.4's for now
+  cabal-install = doJailbreak super.cabal-install;
+  cabal-install-solver = doJailbreak super.cabal-install-solver;
+
+  # Test failure due to new Cabal 3.8 version. Since the failure only pertains
+  # to a change in how Cabal internally represents some platforms and we depend
+  # on the type of representation anywhere, this failure is harmless. Can be
+  # removed after https://github.com/NixOS/cabal2nix/pull/571 is merged.
+  # TODO(@sternenseemann): merge and release a fixed version
+  distribution-nixpkgs = dontCheck super.distribution-nixpkgs;
+  cabal2nix = dontCheck super.cabal2nix;
+  cabal2nix-unstable = dontCheck super.cabal2nix-unstable;
+
+  # build fails on due to ghc api changes
+  # unfinished PR that doesn't yet compile:
+  # https://github.com/sol/doctest/pull/375
+  doctest = markBroken super.doctest_0_20_0;
+  # consequences of doctest breakage follow:
+  http-types = doctest_0_20_broken super.http-types;
+  iproute = doctest_0_20_broken super.iproute;
+  foldl = doctest_0_20_broken super.foldl;
+  prettyprinter-ansi-terminal = doctest_0_20_broken super.prettyprinter-ansi-terminal;
+  pretty-simple = doctest_0_20_broken super.pretty-simple;
+  http-date = doctest_0_20_broken super.http-date;
+  network-byte-order = doctest_0_20_broken super.network-byte-order;
+  co-log-core = doctest_0_20_broken (doJailbreak super.co-log-core);
+  xml-conduit = doctest_0_20_broken (dontCheck super.xml-conduit);
+  validation-selective = doctest_0_20_broken (dontCheck super.validation-selective);
+
+  double-conversion = markBroken super.double-conversion;
+  blaze-textual = checkAgainAfter super.double-conversion "2.0.4.1" "double-conversion fails to build; required for testsuite" (dontCheck super.blaze-textual);
+  ghc-source-gen = checkAgainAfter super.ghc-source-gen "0.4.3.0" "fails to build" (markBroken super.ghc-source-gen);
+
+  lucid = jailbreakForCurrentVersion super.lucid "2.11.1";
+  invariant = jailbreakForCurrentVersion super.invariant "0.5.6";
+  implicit-hie-cradle = jailbreakForCurrentVersion super.implicit-hie-cradle "0.5.0.0";
+
+  haskell-src-meta = doJailbreak super.haskell-src-meta;
+
+  # Tests fail in GHC 9.2
+  extra = dontCheck super.extra;
+
+  # Jailbreaks & Version Updates
+
+  aeson = self.aeson_2_1_1_0;
+  aeson-diff = doctest_0_20_broken (dontCheck super.aeson-diff);
+  lens-aeson = self.lens-aeson_1_2_2;
+
+  assoc = doJailbreak super.assoc;
+  async = doJailbreak super.async;
+  base64-bytestring = doJailbreak super.base64-bytestring;
+  base-compat = self.base-compat_0_12_2;
+  base-compat-batteries = self.base-compat-batteries_0_12_2;
+  binary-instances = doJailbreak super.binary-instances;
+  ChasingBottoms = doJailbreak super.ChasingBottoms;
+  constraints = doJailbreak super.constraints;
+  cpphs = overrideCabal (drv: { postPatch = "sed -i -e 's,time >=1.5 && <1.11,time >=1.5 \\&\\& <1.12,' cpphs.cabal";}) super.cpphs;
+  data-fix = doJailbreak super.data-fix;
+  dec = doJailbreak super.dec;
+  ed25519 = doJailbreak super.ed25519;
+  ghc-byteorder = doJailbreak super.ghc-byteorder;
+  ghc-lib = doDistribute self.ghc-lib_9_4_2_20220822;
+  ghc-lib-parser = doDistribute self.ghc-lib-parser_9_4_2_20220822;
+  ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_4_0_0;
+  hackage-security = doJailbreak super.hackage-security;
+  hashable = super.hashable_1_4_1_0;
+  hashable-time = doJailbreak super.hashable-time;
+  HTTP = overrideCabal (drv: { postPatch = "sed -i -e 's,! Socket,!Socket,' Network/TCP.hs"; }) (doJailbreak super.HTTP);
+  integer-logarithms = overrideCabal (drv: { postPatch = "sed -i -e 's, <1.1, <1.3,' integer-logarithms.cabal"; }) (doJailbreak super.integer-logarithms);
+  indexed-traversable = doJailbreak super.indexed-traversable;
+  indexed-traversable-instances = doJailbreak super.indexed-traversable-instances;
+  lifted-async = doJailbreak super.lifted-async;
+  lukko = doJailbreak super.lukko;
+  lzma-conduit = doJailbreak super.lzma-conduit;
+  parallel = doJailbreak super.parallel;
+  path = doJailbreak super.path;
+  polyparse = overrideCabal (drv: { postPatch = "sed -i -e 's, <0.11, <0.12,' polyparse.cabal"; }) (doJailbreak super.polyparse);
+  primitive = dontCheck (doJailbreak self.primitive_0_7_4_0);
+  regex-posix = doJailbreak super.regex-posix;
+  resolv = doJailbreak super.resolv;
+  singleton-bool = doJailbreak super.singleton-bool;
+
+  # 2022-09-02: Too strict bounds on lens
+  # https://github.com/GetShopTV/swagger2/pull/242
+  swagger2 = doctest_0_20_broken (dontCheck (doJailbreak super.swagger2));
+
+  base-orphans = dontCheck super.base-orphans;
+
+  # Note: Any compilation fixes need to be done on the versioned attributes,
+  # since those are used for the internal dependencies between the versioned
+  # hspec packages in configuration-common.nix.
+  hspec = self.hspec_2_10_6;
+  hspec-core = self.hspec-core_2_10_6;
+  hspec-meta = self.hspec-meta_2_10_5;
+  hspec-discover = self.hspec-discover_2_10_6;
+
+  # the dontHaddock is due to a GHC panic. might be this bug, not sure.
+  # https://gitlab.haskell.org/ghc/ghc/-/issues/21619
+  #
+  # We need >= 1.1.2 for ghc-9.4 support, but we don't have 1.1.x in
+  # hackage-packages.nix
+  hedgehog = doDistribute (dontHaddock super.hedgehog_1_2);
+  # does not work with hedgehog 1.2 yet:
+  # https://github.com/qfpl/tasty-hedgehog/pull/63
+  tasty-hedgehog = markBroken super.tasty-hedgehog;
+  # due to tasty-hedgehog
+  retry = checkAgainAfter super.tasty-hedgehog "1.3.0.0" "tasty-hedgehog broken" (dontCheck super.retry);
+
+  # https://github.com/dreixel/syb/issues/38
+  syb = dontCheck super.syb;
+
+  splitmix = doJailbreak super.splitmix;
+  th-desugar = self.th-desugar_1_14;
+  time-compat = doJailbreak super.time-compat;
+  tomland = doJailbreak super.tomland;
+  type-equality = doJailbreak super.type-equality;
+  unordered-containers = doJailbreak super.unordered-containers;
+  vector = dontCheck super.vector;
+  vector-binary-instances = doJailbreak super.vector-binary-instances;
+
+  # fixed in 1.16.x but it's not in hackage-packages yet.
+  rebase = jailbreakForCurrentVersion super.rebase "1.15.0.3";
+  rerebase = jailbreakForCurrentVersion super.rerebase "1.15.0.3";
+
+  hpack = overrideCabal (drv: {
+    # Cabal 3.6 seems to preserve comments when reading, which makes this test fail
+    # 2021-10-10: 9.2.1 is not yet supported (also no issue)
+    testFlags = [
+      "--skip=/Hpack/renderCabalFile/is inverse to readCabalFile/"
+    ] ++ drv.testFlags or [];
+  }) (doJailbreak super.hpack);
+
+  # lens >= 5.1 supports 9.2.1
+  lens = doDistribute self.lens_5_2;
+
+  # Apply patches from head.hackage.
+  language-haskell-extract = appendPatch (pkgs.fetchpatch {
+    url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/dfd024c9a336c752288ec35879017a43bd7e85a0/patches/language-haskell-extract-0.2.4.patch";
+    sha256 = "0w4y3v69nd3yafpml4gr23l94bdhbmx8xky48a59lckmz5x9fgxv";
+  }) (doJailbreak super.language-haskell-extract);
+
+  # Tests depend on `parseTime` which is no longer available
+  hourglass = dontCheck super.hourglass;
+
+  memory = super.memory_0_18_0;
+
+  # https://github.com/sjakobi/bsb-http-chunked/issues/38
+  bsb-http-chunked = dontCheck super.bsb-http-chunked;
+
+  # need bytestring >= 0.11 which is only bundled with GHC >= 9.2
+  regex-rure = doDistribute (markUnbroken super.regex-rure);
+  jacinda = doDistribute super.jacinda;
+  some = doJailbreak super.some;
+
+  # 1.3 introduced support for GHC 9.2.x, so when this assert fails, the jailbreak can be removed
+  hashtables = assert super.hashtables.version == "1.2.4.2"; doJailbreak super.hashtables;
+
+  # 2022-08-01: Tests are broken on ghc 9.2.4: https://github.com/wz1000/HieDb/issues/46
+  hiedb = dontCheck super.hiedb;
+
 }
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
index 91d8f697b4f87..04684effd6fdc 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
@@ -450,6 +450,7 @@ broken-packages:
   - bottom
   - boundingboxes
   - bowntz
+  - box
   - bpath
   - BPS
   - braid
@@ -3906,6 +3907,7 @@ broken-packages:
   - platinum-parsing
   - PlayingCards
   - playlists
+  - plex
   - plist
   - plist-buddy
   - plivo
@@ -4220,7 +4222,6 @@ broken-packages:
   - reanimate-svg
   - reasonable-lens
   - reason-export
-  - rec-def
   - record
   - record-encode
   - record-impl
@@ -4429,7 +4430,6 @@ broken-packages:
   - sandman
   - sarasvati
   - sat
-  - satchmo
   - Saturnin
   - satyros
   - savage
@@ -4656,7 +4656,6 @@ broken-packages:
   - singnal
   - singular-factory
   - sink
-  - sint
   - sitepipe
   - sixfiguregroup
   - sized-grid
@@ -5033,6 +5032,7 @@ broken-packages:
   - tasty-mgolden
   - tasty-stats
   - tasty-test-vector
+  - TastyTLT
   - TBC
   - TBit
   - tcache-AWS
@@ -5180,6 +5180,7 @@ broken-packages:
   - time-w3c
   - timezone-detect
   - tintin
+  - tinyid
   - TinyLaunchbury
   - tiny-scheduler
   - tinytemplate
@@ -5567,7 +5568,6 @@ broken-packages:
   - web3-ipfs
   - webapi
   - webapp
-  - webauthn
   - WebBits
   - webcloud
   - webcrank
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
index a871d99cc9ab3..21009fa9cb215 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
@@ -324,6 +324,7 @@ package-maintainers:
     - leb128-cereal
     - tasty-expected-failure
     - lhs2tex
+    - rec-def
   pacien:
     - ldgallery-compiler
   peti:
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
index 754d81b34a86b..677566d60fb63 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
@@ -822,6 +822,8 @@ dont-distribute-packages:
  - boots-cloud
  - boots-web
  - borel
+ - box-csv
+ - box-socket
  - breakout
  - bricks
  - bricks-internal-test
@@ -1168,7 +1170,6 @@ dont-distribute-packages:
  - dep-t-advice
  - dep-t-dynamic
  - dep-t-value
- - dependent-literals
  - dependent-literals-plugin
  - dependent-state
  - depends
@@ -1372,6 +1373,7 @@ dont-distribute-packages:
  - fallingblocks
  - family-tree
  - fast-bech32
+ - fastcdc
  - fastirc
  - fastly
  - fastparser
@@ -1414,7 +1416,6 @@ dont-distribute-packages:
  - filepath-io-access
  - filesystem-abstractions
  - filesystem-enumerator
- - fin-int
  - find-clumpiness
  - findhttp
  - finitary-derive
@@ -1504,6 +1505,7 @@ dont-distribute-packages:
  - gbu
  - gdax
  - gdiff-ig
+ - gearhash
  - gedcom
  - geek
  - geek-server
@@ -2926,7 +2928,6 @@ dont-distribute-packages:
  - peparser
  - perdure
  - perf-analysis
- - perf_0_10_0
  - perfecthash
  - periodic-client
  - periodic-client-exe
@@ -3029,6 +3030,7 @@ dont-distribute-packages:
  - pred-trie
  - prednote-test
  - prefork
+ - prelate
  - presto-hdbc
  - preview
  - primal-memory
@@ -3255,6 +3257,10 @@ dont-distribute-packages:
  - rfc-redis
  - rfc-servant
  - rhythm-game-tutorial
+ - ribosome
+ - ribosome-app
+ - ribosome-host
+ - ribosome-host-test
  - ribosome-root
  - ridley-extras
  - rio-process-pool
@@ -3322,10 +3328,7 @@ dont-distribute-packages:
  - sarsi
  - sasl
  - sat-micro-hs
- - satchmo-backends
- - satchmo-examples
  - satchmo-funsat
- - satchmo-minisat
  - satchmo-toysat
  - sauron
  - sc2-lowlevel
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index fecfca2a04653..08b21ad0bd79a 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -2338,8 +2338,8 @@ self: {
      }:
      mkDerivation {
        pname = "C-structs";
-       version = "0.2.0.2";
-       sha256 = "0v70j2wlhj91cmlc2247z7i3yak04b28ig093xaihawlqyb6hxjg";
+       version = "0.2.0.3";
+       sha256 = "0r6clyl3vycdpwy55c37zlz4yvvl2xjgxc1fn3vwal83jp7cm74a";
        libraryHaskellDepends = [ base template-haskell ];
        testHaskellDepends = [
          base doctest Glob HUnit QuickCheck template-haskell test-framework
@@ -3630,8 +3630,8 @@ self: {
      }:
      mkDerivation {
        pname = "ConClusion";
-       version = "0.2.0";
-       sha256 = "1nz7xax1llc0v775kx0g6hsrfbmgy1gj0pgalwpblqms1ccpy04s";
+       version = "0.2.1";
+       sha256 = "095ygqh0si6ahv41hjkwnwfxwkz16pgriwwnw0v53bvbryjqfvja";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -20296,8 +20296,8 @@ self: {
      }:
      mkDerivation {
        pname = "TLT";
-       version = "0.3.0.0";
-       sha256 = "0pl9ga3vr9yj4f4k2pisq8yarhbsbfvj9q3n24f0db8csq363yc5";
+       version = "0.5.0.0";
+       sha256 = "10hman41jgzkdllcps0yabbym08ar9xislxk2dpj5y4ad5ajcyqy";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -20527,7 +20527,9 @@ self: {
        ];
        description = "Run TLT tests from Tasty";
        license = lib.licenses.lgpl3Only;
+       hydraPlatforms = lib.platforms.none;
        mainProgram = "TLT-exe";
+       broken = true;
      }) {};
 
   "Taxonomy" = callPackage
@@ -21380,6 +21382,8 @@ self: {
        pname = "ValveValueKeyvalue";
        version = "1.1.0.0";
        sha256 = "1hcgyv5fhpqvccpplrpi192vlk8dh1ds3w455fy3yvz14g5rfvkp";
+       revision = "1";
+       editedCabalFile = "0zgmnnh5dlsxlrqprz4q47s29jr9mdmc0pmaaplkn1x8q8xcl43k";
        libraryHaskellDepends = [ base parsec ];
        description = "A Valve Value-keyvalue parser for Haskell made with Parsec";
        license = lib.licenses.mit;
@@ -21570,8 +21574,8 @@ self: {
     ({ mkDerivation, base, bytestring, transformers, vector, vulkan }:
      mkDerivation {
        pname = "VulkanMemoryAllocator";
-       version = "0.10.2";
-       sha256 = "122r9za1vlgkm03lbq8yvpngacinick88vs9dpizd80rb2z4dy6k";
+       version = "0.10.3.1";
+       sha256 = "1ncjrn2dcxpi8gykn0axi7wwi35frpp5wqvbm7zyd2pp2wfi2f3i";
        libraryHaskellDepends = [
          base bytestring transformers vector vulkan
        ];
@@ -25855,15 +25859,16 @@ self: {
   "aeson-match-qq" = callPackage
     ({ mkDerivation, aeson, aeson-qq, attoparsec, base, bytestring
      , case-insensitive, containers, either, haskell-src-meta, hspec
-     , scientific, template-haskell, text, unordered-containers, vector
+     , pretty, scientific, template-haskell, text, unordered-containers
+     , vector
      }:
      mkDerivation {
        pname = "aeson-match-qq";
-       version = "1.5.1";
-       sha256 = "1m2brw8c1i0p32llng904lb893vkjfcqbmljkcx5m7iab0hvpvaw";
+       version = "1.5.3";
+       sha256 = "0j4qddxxr0pfjz2d4hwvxdgmb4vb343ysw6g1fms4shdk41h1kz5";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring case-insensitive containers either
-         haskell-src-meta scientific template-haskell text
+         haskell-src-meta pretty scientific template-haskell text
          unordered-containers vector
        ];
        testHaskellDepends = [
@@ -47987,20 +47992,23 @@ self: {
      }) {};
 
   "box" = callPackage
-    ({ mkDerivation, base, concurrency, containers, contravariant
+    ({ mkDerivation, async, base, bytestring, containers, contravariant
      , dlist, exceptions, kan-extensions, mtl, profunctors
-     , semigroupoids, text, time, transformers
+     , semigroupoids, stm, text, time, transformers
      }:
      mkDerivation {
        pname = "box";
-       version = "0.8.1";
-       sha256 = "18f7waxmnrfk205aacwlzzv18bhyff9vpq3xcna955p9qgm47lg5";
+       version = "0.9.0";
+       sha256 = "1b4lbagj0pp19sms4q6p4gq27sf7yrzlcgcgl3zlmh3hh0wrrw14";
        libraryHaskellDepends = [
-         base concurrency containers contravariant dlist exceptions
-         kan-extensions mtl profunctors semigroupoids text time transformers
+         async base bytestring containers contravariant dlist exceptions
+         kan-extensions mtl profunctors semigroupoids stm text time
+         transformers
        ];
        description = "boxes";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "box-csv" = callPackage
@@ -48012,26 +48020,27 @@ self: {
        libraryHaskellDepends = [ attoparsec base box text time ];
        description = "CSV parsing in a box";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "box-socket" = callPackage
-    ({ mkDerivation, async, base, box, bytestring, concurrency
-     , exceptions, network, network-simple, optparse-generic, text
-     , websockets
+    ({ mkDerivation, async, base, box, bytestring, exceptions, network
+     , network-simple, optparse-generic, text, websockets
      }:
      mkDerivation {
        pname = "box-socket";
-       version = "0.3.0";
-       sha256 = "1z9qlmpbq2ppc13viyf0sha95d7cm0jswnabjvg5fvx9ln1c5ivp";
+       version = "0.4.0";
+       sha256 = "0svbqs00db6kvd81b5zk7k6v7fmy12c11d933z12zsslxp8ncp91";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         async base box bytestring concurrency exceptions network
-         network-simple text websockets
+         async base box bytestring exceptions network network-simple text
+         websockets
        ];
        executableHaskellDepends = [ base optparse-generic ];
        description = "Box websockets";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
        mainProgram = "box-socket";
      }) {};
 
@@ -48361,22 +48370,22 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
-  "brick_1_2" = callPackage
+  "brick_1_3" = callPackage
     ({ mkDerivation, base, bimap, bytestring, config-ini, containers
-     , contravariant, data-clist, deepseq, directory, dlist, exceptions
+     , contravariant, data-clist, deepseq, directory, exceptions
      , filepath, microlens, microlens-mtl, microlens-th, mtl, QuickCheck
      , stm, template-haskell, text, text-zipper, unix, vector, vty
      , word-wrap
      }:
      mkDerivation {
        pname = "brick";
-       version = "1.2";
-       sha256 = "1gz42k0wb4adff3ddjfgc6jp3b5zrp8bg4jwksih6mbn6124zpyf";
+       version = "1.3";
+       sha256 = "0lpd6685ya0va0a6n7cw70f5b1s13y8ynzac0gkxyqb1ivzj0hsb";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          base bimap bytestring config-ini containers contravariant
-         data-clist deepseq directory dlist exceptions filepath microlens
+         data-clist deepseq directory exceptions filepath microlens
          microlens-mtl microlens-th mtl stm template-haskell text
          text-zipper unix vector vty word-wrap
        ];
@@ -63367,6 +63376,28 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "commonmark-extensions_0_2_3_3" = callPackage
+    ({ mkDerivation, base, commonmark, containers, emojis, filepath
+     , network-uri, parsec, tasty, tasty-bench, tasty-hunit, text
+     , transformers
+     }:
+     mkDerivation {
+       pname = "commonmark-extensions";
+       version = "0.2.3.3";
+       sha256 = "009yrsb2xxna73q6nnijfx5ngffaz369mildvqvn91qbrkrzq7pl";
+       libraryHaskellDepends = [
+         base commonmark containers emojis filepath network-uri parsec text
+         transformers
+       ];
+       testHaskellDepends = [
+         base commonmark parsec tasty tasty-hunit text
+       ];
+       benchmarkHaskellDepends = [ base commonmark tasty-bench text ];
+       description = "Pure Haskell commonmark parser";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "commonmark-pandoc" = callPackage
     ({ mkDerivation, base, commonmark, commonmark-extensions
      , pandoc-types, text
@@ -77927,7 +77958,6 @@ self: {
        ];
        description = "Library for dependent-literals-plugin";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "dependent-literals-plugin" = callPackage
@@ -89833,8 +89863,8 @@ self: {
      }:
      mkDerivation {
        pname = "elsa";
-       version = "0.2.1.2";
-       sha256 = "0qg80wck4zsia9fsih06283c47f3waiskgj1r5s0s4fms9rwg06y";
+       version = "0.2.2.0";
+       sha256 = "0389g6i5jkwlh218ywlysvadm4qqsk1kz4manjsz7xwnmz3m7jlm";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -93546,6 +93576,43 @@ self: {
        broken = true;
      }) {};
 
+  "eventuo11y" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, exceptions, resourcet
+     , text, time, unliftio-core, uuid
+     }:
+     mkDerivation {
+       pname = "eventuo11y";
+       version = "0.1.0.1";
+       sha256 = "1mrjmyn2dscn05n6il1h0n09kim1mihh9v6jimvipsfbm4kjxsb9";
+       libraryHaskellDepends = [
+         aeson base bytestring exceptions resourcet text time unliftio-core
+         uuid
+       ];
+       description = "An event-oriented observability library";
+       license = lib.licenses.asl20;
+     }) {};
+
+  "eventuo11y-batteries" = callPackage
+    ({ mkDerivation, aeson, async, base, binary, bytestring
+     , case-insensitive, containers, eventuo11y, exceptions, http-media
+     , http-types, monad-control, mtl, network, semigroupoids
+     , servant-client, servant-client-core, text, transformers-base
+     , unliftio-core, wai, warp
+     }:
+     mkDerivation {
+       pname = "eventuo11y-batteries";
+       version = "0.1.0.1";
+       sha256 = "135976nic8ficph20dani0m4clsv361324jwmhw8hywrla56mz36";
+       libraryHaskellDepends = [
+         aeson async base binary bytestring case-insensitive containers
+         eventuo11y exceptions http-media http-types monad-control mtl
+         network semigroupoids servant-client servant-client-core text
+         transformers-base unliftio-core wai warp
+       ];
+       description = "Grab bag of eventuo11y-enriched functionality";
+       license = lib.licenses.asl20;
+     }) {};
+
   "every" = callPackage
     ({ mkDerivation, async, base, stm }:
      mkDerivation {
@@ -94418,8 +94485,8 @@ self: {
      }:
      mkDerivation {
        pname = "exon";
-       version = "1.0.1.0";
-       sha256 = "17yfbj1hc2vm1vgsz3nngj06i67w6m0nzq1hm40n4q9w9fzaspvv";
+       version = "1.2.0.0";
+       sha256 = "1cayih5rp386cn1ig5g7flxjfh47451h095zx4av4i0c72j6q7s1";
        libraryHaskellDepends = [
          base flatparse generics-sop ghc-hs-meta incipit-base
          template-haskell type-errors-pretty
@@ -96165,6 +96232,26 @@ self: {
        broken = true;
      }) {};
 
+  "fastcdc" = callPackage
+    ({ mkDerivation, base, bv-little, bytestring, conduit, gearhash }:
+     mkDerivation {
+       pname = "fastcdc";
+       version = "0.0.0";
+       sha256 = "1rq2z5nf24za6a23bc75lsy96ab65xlhk2wr5lvvwsa24pr2miz5";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bv-little bytestring conduit gearhash
+       ];
+       executableHaskellDepends = [
+         base bv-little bytestring conduit gearhash
+       ];
+       description = "An implementation of FastCDC, a content-defined chunking algorithm based on the Gear hash rolling hash algorithm";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       mainProgram = "fastcdc";
+     }) {};
+
   "fastcgi" = callPackage
     ({ mkDerivation, base, bytestring, cgi, fcgi }:
      mkDerivation {
@@ -98615,7 +98702,6 @@ self: {
        ];
        description = "Finite sets of static size";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "final" = callPackage
@@ -106255,6 +106341,29 @@ self: {
        mainProgram = "gearbox";
      }) {};
 
+  "gearhash" = callPackage
+    ({ mkDerivation, array, base, bv-little, bytestring, conduit
+     , cryptonite, mtl, template-haskell, th-lift-instances
+     }:
+     mkDerivation {
+       pname = "gearhash";
+       version = "1.0.0";
+       sha256 = "1cwyl8pn1hq7gphg752qdc45x8vhcc0cnv2z26ymwyw8gw9p09xw";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         array base bv-little bytestring conduit cryptonite mtl
+         template-haskell th-lift-instances
+       ];
+       executableHaskellDepends = [
+         array base bv-little bytestring conduit cryptonite mtl
+         template-haskell th-lift-instances
+       ];
+       description = "An implementation of Gear hash, a fast rolling hash algorithm";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "gedcom" = callPackage
     ({ mkDerivation, array, base, bytestring, containers, hspec
      , megaparsec, monad-loops, mtl, text-all, time
@@ -118545,8 +118654,8 @@ self: {
      }:
      mkDerivation {
        pname = "gopro-plus";
-       version = "0.6.5.1";
-       sha256 = "06sasqagh4xa6gkhgjxf7jpvwfp9q27r0qnpr7rq0dxwsbrpqgnp";
+       version = "0.6.5.2";
+       sha256 = "0wxgwgsybc9vp4v4vx6064zh27kc3gn6rfclgpfavgvk3l9y5mrq";
        libraryHaskellDepends = [
          aeson base bytestring containers exceptions filepath
          generic-deriving generic-random lens lens-aeson monad-logger mtl
@@ -120042,8 +120151,8 @@ self: {
        pname = "graphviz";
        version = "2999.20.1.0";
        sha256 = "0l0zxgb938hh09qirggbaskq79mgj3s081cnr42y5vm1rp1jir2s";
-       revision = "1";
-       editedCabalFile = "1i0ayvs8iaq5vg38ximc23w1f1qvgmwmn5znqkjsrb96x0ssmdiw";
+       revision = "2";
+       editedCabalFile = "110yp1h2jrswllnx2ks772g10v9h4vqxc07b33wfaksyim9769bp";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -120513,10 +120622,8 @@ self: {
      }:
      mkDerivation {
        pname = "gridtables";
-       version = "0.0.3.0";
-       sha256 = "1akix9flnax6dx3s9c7yyzb19nw13y8rmh0kz7y3hpjlkaz659xy";
-       revision = "1";
-       editedCabalFile = "0m2651z81n8s6hb8id7y6k2kprsgwnj7pcd6p8lmdpkzzz3wwd0c";
+       version = "0.1.0.0";
+       sha256 = "1smhbb2jxysbqhxww5rikjfnhsdbf0gq3kgnn6ikjzcrqwdk9b6n";
        libraryHaskellDepends = [
          array base containers doclayout parsec text
        ];
@@ -127284,8 +127391,8 @@ self: {
      }:
      mkDerivation {
        pname = "hashes";
-       version = "0.2.2.0";
-       sha256 = "194r4zi3sz3dwd5qmrrf92y655v1vxl0xkzsmj4yjk9xpl85wpcl";
+       version = "0.2.2.1";
+       sha256 = "0ni9z93k89nsswzs4xmb78l7cq7142mg841b70lxgbf69i1wd8z8";
        libraryHaskellDepends = [ base bytestring ];
        librarySystemDepends = [ openssl ];
        testHaskellDepends = [
@@ -187297,16 +187404,17 @@ self: {
 
   "mealy" = callPackage
     ({ mkDerivation, adjunctions, base, containers, mwc-probability
-     , numhask, optics-core, primitive, profunctors, tdigest, text
-     , vector, vector-algorithms
+     , numhask, numhask-array, optics-core, primitive, profunctors
+     , tdigest, text, vector, vector-algorithms
      }:
      mkDerivation {
        pname = "mealy";
-       version = "0.3.0";
-       sha256 = "15p60a4kywazy5dlcs66bzyq8phcrpkrfl655p22bnqq1lsl7yjh";
+       version = "0.4.0";
+       sha256 = "06pl768xlg0jiqjs1m79zhdqk29sdh1jmcywdn7whq1sxwc5hlhn";
        libraryHaskellDepends = [
-         adjunctions base containers mwc-probability numhask optics-core
-         primitive profunctors tdigest text vector vector-algorithms
+         adjunctions base containers mwc-probability numhask numhask-array
+         optics-core primitive profunctors tdigest text vector
+         vector-algorithms
        ];
        description = "Mealy machines for processing time-series and ordered data";
        license = lib.licenses.bsd3;
@@ -191151,8 +191259,8 @@ self: {
        pname = "mmark-cli";
        version = "0.0.5.1";
        sha256 = "1an1rc7gdl2209d3agxx1dfl61zsc2wg5nx9cwdf50spmlgs3cr0";
-       revision = "1";
-       editedCabalFile = "0x4lpxga127f37z43w4rgccw9w05j23ppy7k19kz6gh3p43gnx1m";
+       revision = "2";
+       editedCabalFile = "1raxvhsv3b3lni4d2fqf9b1rs7lsqha13baizpg9hv7w0f8zss8m";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -191173,8 +191281,8 @@ self: {
        pname = "mmark-ext";
        version = "0.2.1.5";
        sha256 = "1dy3xnzpbbnp03k3r04q8y10pcj2r708dk8bff0pxzkvypm75g88";
-       revision = "1";
-       editedCabalFile = "1bfsbcxz0bvnhjcrismzkpaza8qn8g7hwswdb0gzyqj1hv6yv1nx";
+       revision = "2";
+       editedCabalFile = "0kz0389rrjd4wy6a5m89w7a4pcd4765kah7rwa7i649l8h5a5asm";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          base foldl ghc-syntax-highlighter lucid microlens mmark modern-uri
@@ -194797,7 +194905,7 @@ self: {
      }) {};
 
   "morpheus-graphql" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, containers
+    ({ mkDerivation, aeson, base, bytestring, containers, file-embed
      , morpheus-graphql-app, morpheus-graphql-code-gen
      , morpheus-graphql-core, morpheus-graphql-subscriptions
      , morpheus-graphql-tests, mtl, relude, tasty, tasty-hunit
@@ -194806,8 +194914,8 @@ self: {
      }:
      mkDerivation {
        pname = "morpheus-graphql";
-       version = "0.20.1";
-       sha256 = "0y1c43010spp70z2srfmln1nd7r286b8nprq851f2zgp0g3lbkfi";
+       version = "0.21.0";
+       sha256 = "1xvhrgjdfxqn8ck75b3hpgj12i4y94fkcp0gr7bvyh3cbhrbycnk";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson base bytestring containers morpheus-graphql-app
@@ -194815,7 +194923,7 @@ self: {
          template-haskell text transformers unordered-containers vector
        ];
        testHaskellDepends = [
-         aeson base bytestring containers morpheus-graphql-app
+         aeson base bytestring containers file-embed morpheus-graphql-app
          morpheus-graphql-code-gen morpheus-graphql-core
          morpheus-graphql-subscriptions morpheus-graphql-tests mtl relude
          tasty tasty-hunit template-haskell text transformers
@@ -194835,8 +194943,8 @@ self: {
      }:
      mkDerivation {
        pname = "morpheus-graphql-app";
-       version = "0.20.1";
-       sha256 = "0dc84pswgjl401nqx3127zn2r43a1n9kmhwx4xqy5l1favm1lfv0";
+       version = "0.21.0";
+       sha256 = "041a6rdbvs9g5ia384qgyppdkyq71xrlcqwz8szyyw2ra97sy0pg";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson base bytestring containers hashable megaparsec
@@ -194878,24 +194986,29 @@ self: {
 
   "morpheus-graphql-client" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, directory
-     , file-embed, morpheus-graphql-code-gen, morpheus-graphql-core, mtl
-     , relude, tasty, tasty-hunit, template-haskell, text, transformers
-     , unordered-containers
+     , file-embed, modern-uri, morpheus-graphql-code-gen
+     , morpheus-graphql-core, morpheus-graphql-subscriptions, mtl
+     , relude, req, tasty, tasty-hunit, template-haskell, text
+     , transformers, unliftio-core, unordered-containers, websockets
+     , wuss
      }:
      mkDerivation {
        pname = "morpheus-graphql-client";
-       version = "0.20.1";
-       sha256 = "0r2qp9nin5hlk1adflgn6s2x831d3g6y5d1pvdiahgjbn0mm580w";
+       version = "0.21.0";
+       sha256 = "1mn520aj62i9spby3ik0ynmjbj6baw6hmc3lcv4zp2v1ywypycci";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         aeson base bytestring containers file-embed
-         morpheus-graphql-code-gen morpheus-graphql-core mtl relude
-         template-haskell text transformers unordered-containers
+         aeson base bytestring containers file-embed modern-uri
+         morpheus-graphql-code-gen morpheus-graphql-core
+         morpheus-graphql-subscriptions mtl relude req template-haskell text
+         transformers unliftio-core unordered-containers websockets wuss
        ];
        testHaskellDepends = [
-         aeson base bytestring containers directory file-embed
-         morpheus-graphql-code-gen morpheus-graphql-core mtl relude tasty
-         tasty-hunit template-haskell text transformers unordered-containers
+         aeson base bytestring containers directory file-embed modern-uri
+         morpheus-graphql-code-gen morpheus-graphql-core
+         morpheus-graphql-subscriptions mtl relude req tasty tasty-hunit
+         template-haskell text transformers unliftio-core
+         unordered-containers websockets wuss
        ];
        description = "Morpheus GraphQL Client";
        license = lib.licenses.mit;
@@ -194909,8 +195022,8 @@ self: {
      }:
      mkDerivation {
        pname = "morpheus-graphql-code-gen";
-       version = "0.20.1";
-       sha256 = "08hzxxvnbrqnkhaahh5npjy637pjkhcf8dnh2zswq1c2pmyaw10s";
+       version = "0.21.0";
+       sha256 = "17z3zyk47pfs94i9lxjylxmx5c2m38nkhs4g3pf9qn129czjb48y";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -194936,8 +195049,8 @@ self: {
      }:
      mkDerivation {
        pname = "morpheus-graphql-core";
-       version = "0.20.1";
-       sha256 = "0rinp9zkdls07lr0606jxxijybq89xwxl6vgkx9wgfkrcd014wng";
+       version = "0.21.0";
+       sha256 = "1p5cirgqiv73ka0k4rb7dwky57dwj7nr0vpr6frfgvjsnmpbqq0s";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson base bytestring containers hashable megaparsec mtl relude
@@ -194964,8 +195077,8 @@ self: {
      }:
      mkDerivation {
        pname = "morpheus-graphql-subscriptions";
-       version = "0.20.1";
-       sha256 = "1wad97zjw8766920q26069qb1fi4w25i9pxibkadvc42j4vzkv0p";
+       version = "0.21.0";
+       sha256 = "0qf1jw8lgjph0is7irbj07f4dina9aqznzr18wp9gwywxn0mzvgi";
        libraryHaskellDepends = [
          aeson base bytestring morpheus-graphql-app morpheus-graphql-core
          mtl relude text transformers unliftio-core unordered-containers
@@ -194997,14 +195110,14 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "morpheus-graphql-tests_0_20_1" = callPackage
+  "morpheus-graphql-tests_0_21_0" = callPackage
     ({ mkDerivation, aeson, base, bytestring, directory, relude, tasty
      , tasty-hunit, text, unordered-containers
      }:
      mkDerivation {
        pname = "morpheus-graphql-tests";
-       version = "0.20.1";
-       sha256 = "1z977hyf1hsaal45m4jh938q3srw3kh75xhgb9m0zrph085wzr7f";
+       version = "0.21.0";
+       sha256 = "13xf8q7p32c549bih2133lcsikspnv4ay6c7bcm433dwvxf13rcm";
        libraryHaskellDepends = [
          aeson base bytestring directory relude tasty tasty-hunit text
          unordered-containers
@@ -205363,8 +205476,8 @@ self: {
        pname = "numeric-logarithms";
        version = "0.1.0.0";
        sha256 = "1izd7gc9xdrs7a1wbzmhhkv8s9rw2mcq77agvr351dc5jyzdnwiy";
-       revision = "4";
-       editedCabalFile = "0i4y8p6xyk7vnk9qwf496jb3y40fn8jxhkcszqfsgf7znjvlbhn2";
+       revision = "5";
+       editedCabalFile = "005n9ax9dkkcqx9qm5kbga1a69rf78zqf3ld486136379h6qdi0h";
        libraryHaskellDepends = [ base integer-gmp ];
        testHaskellDepends = [
          base integer-gmp QuickCheck test-framework
@@ -216265,22 +216378,20 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "perf_0_10_0" = callPackage
-    ({ mkDerivation, attoparsec, base, box, box-csv, chart-svg
-     , containers, deepseq, formatn, gauge, mtl, numhask-space
-     , optics-core, optparse-applicative, rdtsc, recursion-schemes, text
-     , time, vector
+  "perf_0_10_1" = callPackage
+    ({ mkDerivation, base, containers, deepseq, formatn, gauge, mtl
+     , numhask-space, optparse-applicative, rdtsc, recursion-schemes
+     , text, time, vector
      }:
      mkDerivation {
        pname = "perf";
-       version = "0.10.0";
-       sha256 = "1igdghqn80dxgx182yb89zm685wi6xka7gjcwqws1bq8p36v7i5j";
+       version = "0.10.1";
+       sha256 = "0r103y4xkl99ypiq3ps9cfplfpkd4lbs5w5cf6my2fpcza259zv2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         attoparsec base box box-csv chart-svg containers deepseq formatn
-         mtl numhask-space optics-core optparse-applicative rdtsc
-         recursion-schemes text time vector
+         base containers deepseq formatn mtl numhask-space
+         optparse-applicative rdtsc recursion-schemes text time vector
        ];
        executableHaskellDepends = [
          base containers deepseq formatn gauge mtl optparse-applicative text
@@ -221474,6 +221585,8 @@ self: {
        ];
        description = "run a subprocess, combining stdout and stderr";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "plist" = callPackage
@@ -222916,28 +223029,25 @@ self: {
      }) {};
 
   "polysemy-http" = callPackage
-    ({ mkDerivation, aeson, ansi-terminal, base, case-insensitive
-     , data-default, exon, hedgehog, http-client, http-client-tls
-     , http-types, incipit, lens, network, polysemy, polysemy-log
-     , polysemy-plugin, polysemy-time, servant, servant-client
-     , servant-server, tasty, tasty-hedgehog, template-haskell, time
-     , warp
+    ({ mkDerivation, aeson, base, case-insensitive, exon, hedgehog
+     , http-client, http-client-tls, http-types, network, polysemy
+     , polysemy-plugin, polysemy-time, prelate, servant, servant-client
+     , servant-server, tasty, tasty-hedgehog, time, warp
      }:
      mkDerivation {
        pname = "polysemy-http";
-       version = "0.7.0.0";
-       sha256 = "07p518xs4v1ca8p2bd394hbid6jqlkhpmz0cg9svagb48zg5bf96";
+       version = "0.8.0.0";
+       sha256 = "1ccd45ln80b0pbdpk2wmky3hlz89f8jjlrfbnxd4ycf2crap8wzl";
        libraryHaskellDepends = [
-         aeson ansi-terminal base case-insensitive data-default exon
-         http-client http-client-tls http-types incipit lens polysemy
-         polysemy-log polysemy-plugin polysemy-time template-haskell time
+         aeson base case-insensitive exon http-client http-client-tls
+         http-types polysemy polysemy-plugin prelate time
        ];
        testHaskellDepends = [
-         aeson base exon hedgehog http-client incipit lens network polysemy
-         polysemy-plugin polysemy-time servant servant-client servant-server
-         tasty tasty-hedgehog warp
+         aeson base exon hedgehog http-client network polysemy
+         polysemy-plugin polysemy-time prelate servant servant-client
+         servant-server tasty tasty-hedgehog warp
        ];
-       description = "Polysemy Effects for HTTP clients";
+       description = "Polysemy effects for HTTP clients";
        license = "BSD-2-Clause-Patent";
        hydraPlatforms = lib.platforms.none;
      }) {};
@@ -226498,6 +226608,26 @@ self: {
        broken = true;
      }) {};
 
+  "prelate" = callPackage
+    ({ mkDerivation, aeson, base, exon, extra, generic-lens, incipit
+     , microlens, microlens-ghc, polysemy-chronos, polysemy-conc
+     , polysemy-log, polysemy-process, polysemy-resume, polysemy-time
+     , template-haskell
+     }:
+     mkDerivation {
+       pname = "prelate";
+       version = "0.1.0.0";
+       sha256 = "149x6hmb25dd140kkpmcx60zqi6r4wc8yaj0jk75374b3gfqdvwz";
+       libraryHaskellDepends = [
+         aeson base exon extra generic-lens incipit microlens microlens-ghc
+         polysemy-chronos polysemy-conc polysemy-log polysemy-process
+         polysemy-resume polysemy-time template-haskell
+       ];
+       description = "A Prelude";
+       license = "BSD-2-Clause-Patent";
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "preliminaries" = callPackage
     ({ mkDerivation, abstract-par, base, bifunctors
      , classy-prelude-conduit, data-default, microlens-contra
@@ -229207,8 +229337,8 @@ self: {
      }:
      mkDerivation {
        pname = "prolude";
-       version = "0.0.0.26";
-       sha256 = "1pj6hk545jk2z2nxv9ian8y1057bziq72cljbv433zkvacb8j3dh";
+       version = "0.0.0.27";
+       sha256 = "14av500898qy24kjwnhlnllh6mdmwi458843wsmii2xc7c29rg4c";
        libraryHaskellDepends = [
          aeson base bytestring cassava containers esqueleto generic-random
          lens mongoDB network-uri persistent persistent-mongoDB QuickCheck
@@ -229685,7 +229815,7 @@ self: {
        hydraPlatforms = lib.platforms.none;
        mainProgram = "proteome";
        broken = true;
-     }) {prelate = null; ribosome-menu = null;};
+     }) {ribosome-menu = null;};
 
   "proto-lens" = callPackage
     ({ mkDerivation, base, bytestring, containers, deepseq, ghc-prim
@@ -237187,8 +237317,7 @@ self: {
        ];
        description = "Recursively defined values";
        license = lib.licenses.bsd2;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+       maintainers = [ lib.maintainers.nomeata ];
      }) {};
 
   "rec-smallarray" = callPackage
@@ -240275,8 +240404,8 @@ self: {
      }:
      mkDerivation {
        pname = "registry-messagepack";
-       version = "0.3.0.2";
-       sha256 = "1xp6b3w8gs702q27cg50gh5mcakgxdc23ahnbbgg2cw4mg4l9nqz";
+       version = "0.3.1.0";
+       sha256 = "0v1cwgcvs31vpwxpbrbbhfvql7ch99ifs47008wrcdvmahb9h9qz";
        libraryHaskellDepends = [
          base containers msgpack protolude registry template-haskell text
          transformers vector
@@ -243069,6 +243198,20 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "retry-effectful" = callPackage
+    ({ mkDerivation, base, effectful-core, exceptions, retry, tasty
+     , tasty-hunit
+     }:
+     mkDerivation {
+       pname = "retry-effectful";
+       version = "0.1.0.0";
+       sha256 = "0d9ja583y6vi4i1mcbyr85k7ffcnrzb23axnpl7khmbgiybwr85w";
+       libraryHaskellDepends = [ base effectful-core exceptions retry ];
+       testHaskellDepends = [ base effectful-core tasty tasty-hunit ];
+       description = "Adaptation of the retry library for the effectful ecosystem";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "retryer" = callPackage
     ({ mkDerivation, base, optparse-applicative, process }:
      mkDerivation {
@@ -243734,8 +243877,7 @@ self: {
        description = "Neovim plugin framework for Polysemy";
        license = "BSD-2-Clause-Patent";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {prelate = null;};
+     }) {};
 
   "ribosome-app" = callPackage
     ({ mkDerivation, base, chronos, exon, optparse-applicative, path
@@ -243763,8 +243905,7 @@ self: {
        license = "BSD-2-Clause-Patent";
        hydraPlatforms = lib.platforms.none;
        mainProgram = "ribosome";
-       broken = true;
-     }) {prelate = null;};
+     }) {};
 
   "ribosome-host" = callPackage
     ({ mkDerivation, aeson, base, casing, cereal, chronos, deepseq
@@ -243793,8 +243934,7 @@ self: {
        description = "Neovim plugin host for Polysemy";
        license = "BSD-2-Clause-Patent";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {prelate = null;};
+     }) {};
 
   "ribosome-host-test" = callPackage
     ({ mkDerivation, base, chronos, hedgehog, polysemy
@@ -243812,8 +243952,7 @@ self: {
        description = "Test tools for Ribosome";
        license = "BSD-2-Clause-Patent";
        hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {prelate = null;};
+     }) {};
 
   "ribosome-root" = callPackage
     ({ mkDerivation, aeson, ansi-terminal, base-noprelude, bytestring
@@ -243870,7 +244009,7 @@ self: {
        license = "BSD-2-Clause-Patent";
        hydraPlatforms = lib.platforms.none;
        broken = true;
-     }) {chiasma-test = null; prelate = null;};
+     }) {chiasma-test = null;};
 
   "richreports" = callPackage
     ({ mkDerivation, ascetic, base, MissingH }:
@@ -244430,8 +244569,8 @@ self: {
        pname = "rle";
        version = "0.1.0.1";
        sha256 = "05rbhm0lxrq7vdbq9s0q21m0f0hlzmknljmampcmdjnwbl4nvf3d";
-       revision = "3";
-       editedCabalFile = "1gl5igmac6qhfanfnr65i5g9y9cqpzrr429hkriqyp5xvsgg3qka";
+       revision = "4";
+       editedCabalFile = "10spdlsywcfljy0fxygd3ny0bw8g6icny9ymcbyvmvpihswqz7wi";
        libraryHaskellDepends = [
          base cereal deepseq portray portray-diff wrapped
        ];
@@ -247993,6 +248132,50 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "sandwich_0_1_1_1" = callPackage
+    ({ mkDerivation, aeson, ansi-terminal, async, base, brick
+     , bytestring, colour, containers, directory, exceptions, filepath
+     , free, haskell-src-exts, lifted-async, microlens, microlens-th
+     , monad-control, monad-logger, mtl, optparse-applicative
+     , pretty-show, process, safe, safe-exceptions, stm
+     , string-interpolate, template-haskell, text, time, transformers
+     , transformers-base, unix, unliftio-core, vector, vty
+     }:
+     mkDerivation {
+       pname = "sandwich";
+       version = "0.1.1.1";
+       sha256 = "0dbbjd0q5nilb40qmjl5ddcwpm1p00pclh53brnr6v4jypvxhj0z";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson ansi-terminal async base brick bytestring colour containers
+         directory exceptions filepath free haskell-src-exts lifted-async
+         microlens microlens-th monad-control monad-logger mtl
+         optparse-applicative pretty-show process safe safe-exceptions stm
+         string-interpolate template-haskell text time transformers
+         transformers-base unix unliftio-core vector vty
+       ];
+       executableHaskellDepends = [
+         aeson ansi-terminal async base brick bytestring colour containers
+         directory exceptions filepath free haskell-src-exts lifted-async
+         microlens microlens-th monad-control monad-logger mtl
+         optparse-applicative pretty-show process safe safe-exceptions stm
+         string-interpolate template-haskell text time transformers
+         transformers-base unix unliftio-core vector vty
+       ];
+       testHaskellDepends = [
+         aeson ansi-terminal async base brick bytestring colour containers
+         directory exceptions filepath free haskell-src-exts lifted-async
+         microlens microlens-th monad-control monad-logger mtl
+         optparse-applicative pretty-show process safe safe-exceptions stm
+         string-interpolate template-haskell text time transformers
+         transformers-base unix unliftio-core vector vty
+       ];
+       description = "Yet another test framework for Haskell";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "sandwich-hedgehog" = callPackage
     ({ mkDerivation, base, free, hedgehog, monad-control, mtl
      , safe-exceptions, sandwich, string-interpolate, text, time, vty
@@ -248000,8 +248183,8 @@ self: {
      }:
      mkDerivation {
        pname = "sandwich-hedgehog";
-       version = "0.1.0.10";
-       sha256 = "1yb27zfq1a2320bqxjqjfhyalgk6fy6lwaim1zddwpcw95cbc19g";
+       version = "0.1.1.0";
+       sha256 = "05zzsf3m2lc050aafb16x94dgprmhs8f5fx5l5nfrinki0zyjg04";
        libraryHaskellDepends = [
          base free hedgehog monad-control mtl safe-exceptions sandwich
          string-interpolate text time vty wl-pprint-annotated
@@ -248065,6 +248248,38 @@ self: {
        mainProgram = "sandwich-slack-exe";
      }) {};
 
+  "sandwich-slack_0_1_1_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, lens
+     , lens-aeson, monad-logger, mtl, safe, safe-exceptions, sandwich
+     , stm, string-interpolate, text, time, vector, wreq
+     }:
+     mkDerivation {
+       pname = "sandwich-slack";
+       version = "0.1.1.0";
+       sha256 = "1ffvkqxffyrl02w22xa3rg8y3lnsq57dhmprp9h6sgp5xwxyrhcb";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring containers lens lens-aeson monad-logger mtl
+         safe safe-exceptions sandwich stm string-interpolate text time
+         vector wreq
+       ];
+       executableHaskellDepends = [
+         aeson base bytestring containers lens lens-aeson monad-logger mtl
+         safe safe-exceptions sandwich stm string-interpolate text time
+         vector wreq
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers lens lens-aeson monad-logger mtl
+         safe safe-exceptions sandwich stm string-interpolate text time
+         vector wreq
+       ];
+       description = "Sandwich integration with Slack";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       mainProgram = "sandwich-slack-exe";
+     }) {};
+
   "sandwich-webdriver" = callPackage
     ({ mkDerivation, aeson, base, containers, data-default, directory
      , exceptions, filepath, http-client, http-client-tls, http-conduit
@@ -248076,8 +248291,8 @@ self: {
      }:
      mkDerivation {
        pname = "sandwich-webdriver";
-       version = "0.1.0.6";
-       sha256 = "1x8f9jvfcqwhjly9gnqsb9lv9b8dvyj4rd21x9alsqk44jlxhzkf";
+       version = "0.1.1.0";
+       sha256 = "01y8jy2fvph9kmh42zwnf8y9rca82arn2a6wgh3mzylfijni74lj";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -248219,8 +248434,6 @@ self: {
        testHaskellDepends = [ array base ];
        description = "SAT encoding monad";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "satchmo-backends" = callPackage
@@ -248236,7 +248449,6 @@ self: {
        ];
        description = "driver for external satchmo backends";
        license = "GPL";
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "satchmo-examples" = callPackage
@@ -248254,7 +248466,6 @@ self: {
        ];
        description = "examples that show how to use satchmo";
        license = "GPL";
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "satchmo-funsat" = callPackage
@@ -248282,7 +248493,6 @@ self: {
        libraryHaskellDepends = [ base containers process satchmo ];
        description = "minisat driver as backend for satchmo";
        license = "GPL";
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "satchmo-toysat" = callPackage
@@ -248446,7 +248656,7 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "sbp_4_7_0" = callPackage
+  "sbp_4_8_0" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, array, base
      , base64-bytestring, basic-prelude, binary, binary-conduit
      , bytestring, cmdargs, conduit, conduit-extra, data-binary-ieee754
@@ -248455,8 +248665,8 @@ self: {
      }:
      mkDerivation {
        pname = "sbp";
-       version = "4.7.0";
-       sha256 = "0xr9fxikhjnrbsvkfs591is0f0frcbn03dk1m7zs4imhxmvs2jsm";
+       version = "4.8.0";
+       sha256 = "11089yi2bj495h515la8bf9pwrsgbaffnx60kw2d6zk2xc312pic";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -260309,8 +260519,6 @@ self: {
        ];
        description = "Nat singletons represented by Int";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "siphash" = callPackage
@@ -261068,8 +261276,8 @@ self: {
      }:
      mkDerivation {
        pname = "skylighting-format-blaze-html";
-       version = "0.1";
-       sha256 = "0s996fn7acq3fign0kz2pg1rdw1cw5qs5l422s7rv33r41hrm67b";
+       version = "0.1.1";
+       sha256 = "04zg92x1jnzv6hac6wdgksgma7gi5g82x2kdxk8r7pk9yd6rn4xi";
        libraryHaskellDepends = [
          base blaze-html containers skylighting-core text
        ];
@@ -272153,6 +272361,23 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "string-variants" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, mono-traversable
+     , QuickCheck, refined, refinery, string-conversions
+     , template-haskell, text
+     }:
+     mkDerivation {
+       pname = "string-variants";
+       version = "0.1.0.1";
+       sha256 = "12frxk86kk3rmg927i381qajwsanz2iwhf5ryvdd1af2km4dl76a";
+       libraryHaskellDepends = [
+         aeson base bytestring mono-traversable QuickCheck refined refinery
+         string-conversions template-haskell text
+       ];
+       description = "Constrained text newtypes";
+       license = lib.licenses.mit;
+     }) {};
+
   "stringable" = callPackage
     ({ mkDerivation, base, bytestring, system-filepath, text }:
      mkDerivation {
@@ -274230,8 +274455,8 @@ self: {
     ({ mkDerivation, base, blaze-markup, blaze-svg, directory, text }:
      mkDerivation {
        pname = "svg-icons";
-       version = "2.1.0.1";
-       sha256 = "1xa9pyw567qcrphzr0srbxvmczdmg961gybaw66cv94l121h2bkl";
+       version = "2.2.0.0";
+       sha256 = "1paqpv99kwdphm508bka610g6wkm12yq8mfs20q6ayx1i9akm0rh";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -280413,8 +280638,8 @@ self: {
        pname = "ten";
        version = "0.1.0.2";
        sha256 = "0djvcb2l9dnnjbhivchi6yyaj5i96jmy7yhr9x3paiz1l54brrqx";
-       revision = "3";
-       editedCabalFile = "10ip8dcilycknr64nfhgki30xr73m19jbmv66dpslflkbrkx8ig3";
+       revision = "4";
+       editedCabalFile = "10gr23x4693nh4a3hd94gpf7mra2ghj9qzj9wpfxhl4ip65dc470";
        libraryHaskellDepends = [
          adjunctions base data-default-class deepseq distributive hashable
          portray portray-diff some text transformers wrapped
@@ -280454,8 +280679,8 @@ self: {
        pname = "ten-unordered-containers";
        version = "0.1.0.3";
        sha256 = "1kfww8xs5m802jcx309pp6lx9f7pn1hsbqq3mln4g9rcf0r24mwy";
-       revision = "1";
-       editedCabalFile = "051w5krkb6yyn9c28b3csvpikc6i02dypnkx4hmyylvan7bfdz6r";
+       revision = "2";
+       editedCabalFile = "1yv6255n2k4dl3hwrsrw76gf4gcf1k67j1sbk59z7la4jrscngww";
        libraryHaskellDepends = [
          base hashable portray portray-diff some ten unordered-containers
          wrapped
@@ -281887,15 +282112,15 @@ self: {
        license = lib.licenses.gpl2Only;
      }) {};
 
-  "texmath_0_12_5_2" = callPackage
+  "texmath_0_12_5_3" = callPackage
     ({ mkDerivation, base, bytestring, containers, directory, filepath
      , mtl, pandoc-types, parsec, pretty-show, split, syb, tagged, tasty
      , tasty-golden, text, xml
      }:
      mkDerivation {
        pname = "texmath";
-       version = "0.12.5.2";
-       sha256 = "13sfjm9yhasszjjaw7lc3gbglpnq6ga8gnq3b5x1kzjsm80nazzg";
+       version = "0.12.5.3";
+       sha256 = "1wv4cld2g1xb6qdbha85g4jjv07l9prcjpp72bwkrp33xyjizmhb";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -286215,6 +286440,19 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "tinyid" = callPackage
+    ({ mkDerivation, base, bytestring, entropy }:
+     mkDerivation {
+       pname = "tinyid";
+       version = "0.1.0.0";
+       sha256 = "01863iq39skw38x1c7v809shfgmxdnj680a6zxjviraqfzyk8h0z";
+       libraryHaskellDepends = [ base bytestring entropy ];
+       description = "A secure URL-friendly string ID generator";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "tinylog" = callPackage
     ({ mkDerivation, base, bytestring, containers, criterion
      , double-conversion, fast-logger, text, transformers, unix-time
@@ -295816,8 +296054,8 @@ self: {
        pname = "unix-compat";
        version = "0.5.4";
        sha256 = "1cd4lh2c16h7y5hzrcn5l9vir8aq2wcizwksppnagklsdsfmf942";
-       revision = "1";
-       editedCabalFile = "0v2cp1p7vswbwclai1c74vbwdapczlaqgshcb6l1j49jph1w1vnm";
+       revision = "2";
+       editedCabalFile = "0mik6xb1jdmb2jlxlmzf0517mxfj0c1j2i4r6h5212m4q6znqqcm";
        libraryHaskellDepends = [ base unix ];
        description = "Portable POSIX-compatibility layer";
        license = lib.licenses.bsd3;
@@ -295831,6 +296069,8 @@ self: {
        pname = "unix-compat";
        version = "0.6";
        sha256 = "1y6m8ix8np6vambabdaj2h7ydgda8igwy3kliv53mba3clx85kdl";
+       revision = "1";
+       editedCabalFile = "0g5mi6rh977idajgxnnlsd7dp28vf4xwiiwpsc4pj1rqv0lhjp8g";
        libraryHaskellDepends = [ base unix ];
        testHaskellDepends = [
          base directory extra hspec HUnit monad-parallel temporary
@@ -301633,8 +301873,8 @@ self: {
      }:
      mkDerivation {
        pname = "vulkan";
-       version = "3.22";
-       sha256 = "074qg7r78p427gar1zqx98r7ypy3b0r9flvpsqpm27w1d7rlxl21";
+       version = "3.22.1";
+       sha256 = "0v5x3kbw0z7cvw4s10f79i50i4yk415v0jdn0rw4m50bgl9y2icd";
        libraryHaskellDepends = [ base bytestring transformers vector ];
        libraryPkgconfigDepends = [ vulkan ];
        testHaskellDepends = [
@@ -301668,8 +301908,8 @@ self: {
      }:
      mkDerivation {
        pname = "vulkan-utils";
-       version = "0.5.9";
-       sha256 = "114kx06i58d6pzgd86qxqih7nv845nvf04isl83xbfzij4bf1p06";
+       version = "0.5.10";
+       sha256 = "0pa0vmwjjqwyiyrzz2bhzlbvv8y4wcwky51bnmshj7xsnqp755n5";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
          base bytestring containers dependent-map dependent-sum extra
@@ -304629,25 +304869,28 @@ self: {
      }) {};
 
   "web-rep" = callPackage
-    ({ mkDerivation, attoparsec, base, bifunctors, box, box-socket
-     , clay, concurrency, interpolatedstring-perl6, language-javascript
-     , lucid, mtl, optics-core, optics-extra, optparse-generic, scotty
-     , text, transformers, unordered-containers, wai-middleware-static
-     , wai-websockets, websockets
+    ({ mkDerivation, async, attoparsec, base, bifunctors, box
+     , box-socket, clay, interpolatedstring-perl6, language-javascript
+     , lucid, mtl, optics-core, optics-extra, optparse-applicative
+     , profunctors, scotty, text, transformers, unordered-containers
+     , wai-middleware-static, wai-websockets, websockets
      }:
      mkDerivation {
        pname = "web-rep";
-       version = "0.9.0";
-       sha256 = "1xcrmm5yk19nh08gllnfg6ck0jijkxzl3ma4klwlnxp2ky75q7ds";
+       version = "0.10.0";
+       sha256 = "02fm2bi0gd9nh9kp8a00d66b2g8fzgw9rjawydbifr0g3c3pv7v0";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         attoparsec base bifunctors box box-socket clay concurrency
+         async attoparsec base bifunctors box box-socket clay
          interpolatedstring-perl6 language-javascript lucid mtl optics-core
-         optics-extra scotty text transformers unordered-containers
-         wai-middleware-static wai-websockets websockets
+         optics-extra profunctors scotty text transformers
+         unordered-containers wai-middleware-static wai-websockets
+         websockets
+       ];
+       executableHaskellDepends = [
+         base box lucid optics-core optparse-applicative text
        ];
-       executableHaskellDepends = [ base optparse-generic ];
        description = "representations of a web page";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
@@ -305090,8 +305333,6 @@ self: {
        ];
        description = "Relying party (server) implementation of the WebAuthn 2 specification";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "webby" = callPackage
diff --git a/pkgs/development/interpreters/angelscript/default.nix b/pkgs/development/interpreters/angelscript/default.nix
index abd680ad23425..5aa19f665a82f 100644
--- a/pkgs/development/interpreters/angelscript/default.nix
+++ b/pkgs/development/interpreters/angelscript/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   pname = "angelscript";
-  version = "2.35.1";
+  version = "2.36.0";
 
   src = fetchurl {
     url = "https://www.angelcode.com/angelscript/sdk/files/angelscript_${version}.zip";
-    sha256 = "12x12fs2bjkbh73n2w84wnqhg6xn6mnp6g79gbkwfl6gssv9c42w";
+    sha256 = "sha256-M/lfdZe8DYiwl9NeexMg0VQZ/8V3mFHZ0qbMzsV4EbM=";
   };
 
   nativeBuildInputs = [ unzip cmake ];
diff --git a/pkgs/development/interpreters/bats/default.nix b/pkgs/development/interpreters/bats/default.nix
index 89539850163e4..3a10ce9445e32 100644
--- a/pkgs/development/interpreters/bats/default.nix
+++ b/pkgs/development/interpreters/bats/default.nix
@@ -10,7 +10,7 @@
 , hostname
 , parallel
 , flock
-, ps
+, procps
 , bats
 , lsof
 , callPackages
@@ -22,13 +22,13 @@
 
 resholve.mkDerivation rec {
   pname = "bats";
-  version = "1.7.0";
+  version = "1.8.0";
 
   src = fetchFromGitHub {
     owner = "bats-core";
     repo = "bats-core";
     rev = "v${version}";
-    sha256 = "sha256-joNne/dDVCNtzdTQ64rK8GimT+DOWUa7f410hml2s8Q=";
+    sha256 = "sha256-dnNB82vEv49xzmH3r9dLL4aMIi61HQDr0gVin2H+jOw=";
   };
 
   patchPhase = ''
@@ -58,11 +58,13 @@ resholve.mkDerivation rec {
         flock
         "lib/bats-core"
         "libexec/bats-core"
+        procps
       ];
       fake = {
         external = [
           "greadlink"
           "shlock"
+          "pkill" # procps doesn't supply this on darwin
         ];
       };
       fix = {
@@ -84,8 +86,8 @@ resholve.mkDerivation rec {
           "${placeholder "out"}/lib/bats-core/warnings.bash"
           "$setup_suite_file" # via cli arg
         ];
-        "$report_formatter" = true;
-        "$formatter" = true;
+        "$interpolated_report_formatter" = true;
+        "$interpolated_formatter" = true;
         "$pre_command" = true;
         "$BATS_TEST_NAME" = true;
         "${placeholder "out"}/libexec/bats-core/bats-exec-test" = true;
@@ -162,7 +164,7 @@ resholve.mkDerivation rec {
       ncurses
       parallel # skips some tests if it can't detect
       flock # skips some tests if it can't detect
-      ps
+      procps
     ] ++ lib.optionals stdenv.isDarwin [ lsof ];
     inherit doInstallCheck;
     installCheckPhase = ''
@@ -172,6 +174,12 @@ resholve.mkDerivation rec {
       # skip tests that assume bats `install.sh` will be in BATS_ROOT
       rm test/root.bats
 
+      '' + (lib.optionalString stdenv.hostPlatform.isDarwin ''
+      # skip new timeout tests which are failing on macOS for unclear reasons
+      # This might relate to procps not having a pkill?
+      rm test/timeout.bats
+      '') + ''
+
       # test generates file with absolute shebang dynamically
       substituteInPlace test/install.bats --replace \
         "/usr/bin/env bash" "${bash}/bin/bash"
diff --git a/pkgs/development/interpreters/bqn/cbqn/default.nix b/pkgs/development/interpreters/bqn/cbqn/default.nix
index 0426a72c81aad..f45dda4088faa 100644
--- a/pkgs/development/interpreters/bqn/cbqn/default.nix
+++ b/pkgs/development/interpreters/bqn/cbqn/default.nix
@@ -4,6 +4,7 @@
 , genBytecode ? false
 , bqn-path ? null
 , mbqn-source ? null
+, libffi
 }:
 
 let
@@ -11,23 +12,27 @@ let
     name = "cbqn-bytecode-files";
     owner = "dzaima";
     repo = "CBQN";
-    rev = "c39653c898531a2cdbf4cc5c764df6e37b1894a4";
-    hash = "sha256-JCEmkwh5Rv5+NQoxvefSrYnayU892/Wam+gjMgcQmO0=";
+    rev = "3df8ae563a626ff7ae0683643092f0c3bc2481e5";
+    hash = "sha256:0rh9qp1bdm9aa77l0kn9n4jdy08gl6l7898lncskxiq9id6xvyb8";
   };
 in
 assert genBytecode -> ((bqn-path != null) && (mbqn-source != null));
 
 stdenv.mkDerivation rec {
   pname = "cbqn" + lib.optionalString (!genBytecode) "-standalone";
-  version = "0.pre+date=2022-05-06";
+  version = "0.pre+date=2022-10-04";
 
   src = fetchFromGitHub {
     owner = "dzaima";
     repo = "CBQN";
-    rev = "3496a939b670f8c9ca2a04927378d6b7e9abd68e";
-    hash = "sha256-P+PoY4XF9oEw7VIpmybvPp+jxWHEo2zt1Lamayf1mHg=";
+    rev = "abcb575a537712763e9e53b6cb0eb415346b00e6";
+    hash = "sha256:05gqw2ppcykv36ji8mkp8mq502q84vk9algp9c2d3z495xqy8rn6";
   };
 
+  buildInputs = [
+    libffi
+  ];
+
   dontConfigure = true;
 
   postPatch = ''
@@ -44,8 +49,13 @@ stdenv.mkDerivation rec {
   '' + (if genBytecode then ''
     ${bqn-path} genRuntime ${mbqn-source}
   '' else ''
-    cp ${cbqn-bytecode-files}/src/gen/{compiles,formatter,runtime0,runtime1,src} src/gen/
-  '');
+    cp ${cbqn-bytecode-files}/src/gen/{compiles,explain,formatter,runtime0,runtime1,src} src/gen/
+  '')
+  # Need to adjust ld flags for darwin manually
+  # https://github.com/dzaima/CBQN/issues/26
+  + lib.optionalString stdenv.hostPlatform.isDarwin ''
+    makeFlagsArray+=(LD_LIBS="-ldl -lffi")
+  '';
 
   installPhase = ''
      runHook preInstall
diff --git a/pkgs/development/interpreters/bqn/mlochbaum-bqn/default.nix b/pkgs/development/interpreters/bqn/mlochbaum-bqn/default.nix
index fbb5b458d08b1..83d4a08e33dc2 100644
--- a/pkgs/development/interpreters/bqn/mlochbaum-bqn/default.nix
+++ b/pkgs/development/interpreters/bqn/mlochbaum-bqn/default.nix
@@ -7,13 +7,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "bqn";
-  version = "0.pre+date=2021-12-13";
+  version = "0.pre+date=2022-10-03";
 
   src = fetchFromGitHub {
     owner = "mlochbaum";
     repo = "BQN";
-    rev = "2c2e86e10ff963a6aefa14f76fd8833ce3c9157c";
-    hash = "sha256-iAlDXGlHTeI6+r/QKFiBHhj5A+FgUy7JFrCpAwpyVQU=";
+    rev = "1518205cceeb1fef27c584d24e92b189ffd234f4";
+    hash = "sha256:1pyk331ymbs2fv9jxmbv28yvk9mr2mcni1dsja6fzkk1jrd767hy";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/interpreters/cg3/default.nix b/pkgs/development/interpreters/cg3/default.nix
index 7f7a38185f9ee..8aa0d412c1cf3 100644
--- a/pkgs/development/interpreters/cg3/default.nix
+++ b/pkgs/development/interpreters/cg3/default.nix
@@ -10,13 +10,13 @@
 
 let cg3 = stdenv.mkDerivation rec {
   pname = "cg3";
-  version = "1.3.7";
+  version = "1.3.9";
 
   src = fetchFromGitHub {
     owner = "GrammarSoft";
     repo = "${pname}";
     rev = "v${version}";
-    sha256 = "Ena3dGoZsXOIY6mbvnfI0H7QqRifoxWIBKQrK3yQSmY=";
+    sha256 = "sha256-TiEhhk90w5GibGZ4yalIf+4qLA8NoU6+GIPN6QNTz2A=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/interpreters/dart/default.nix b/pkgs/development/interpreters/dart/default.nix
index a18ec6d7e8ae5..3f118243f22db 100644
--- a/pkgs/development/interpreters/dart/default.nix
+++ b/pkgs/development/interpreters/dart/default.nix
@@ -61,7 +61,7 @@ stdenv.mkDerivation {
 
   meta = with lib; {
     homepage = "https://www.dartlang.org/";
-    maintainers = with maintainers; [ grburst flexagoon ];
+    maintainers = with maintainers; [ grburst ];
     description = "Scalable programming language, with robust libraries and runtimes, for building web, server, and mobile apps";
     longDescription = ''
       Dart is a class-based, single inheritance, object-oriented language
diff --git a/pkgs/development/interpreters/io/default.nix b/pkgs/development/interpreters/io/default.nix
index 9f6ecb2516eda..0777fb8d48baa 100644
--- a/pkgs/development/interpreters/io/default.nix
+++ b/pkgs/development/interpreters/io/default.nix
@@ -24,13 +24,14 @@ stdenv.mkDerivation {
 
   nativeBuildInputs = [
     cmake
+    pkg-config
   ];
 
   buildInputs = [
     zlib sqlite gmp libffi cairo ncurses freetype
     libGLU libGL libpng libtiff libjpeg readline libsndfile libxml2
     freeglut libsamplerate pcre libevent libedit yajl
-    pkg-config glfw openssl libpthreadstubs libXdmcp
+    glfw openssl libpthreadstubs libXdmcp
     libmemcached python3
   ];
 
diff --git a/pkgs/development/interpreters/ivy/default.nix b/pkgs/development/interpreters/ivy/default.nix
index 1e994a7a603e9..81ddfbf238883 100644
--- a/pkgs/development/interpreters/ivy/default.nix
+++ b/pkgs/development/interpreters/ivy/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "ivy";
-  version = "0.1.13";
+  version = "0.2.8";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "robpike";
     repo = "ivy";
-    sha256 = "sha256-IiQrmmHitKUItm/ZSTQ3jGO3ls8vPPexyOtUvfq3yeU=";
+    sha256 = "sha256-pb/dJfEXz13myT6XadCg0kKd+n9bcHNBc84ES+hDw2Y=";
   };
 
   vendorSha256 = "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=";
diff --git a/pkgs/development/interpreters/php/8.0.nix b/pkgs/development/interpreters/php/8.0.nix
index c58c79415d406..97ef232135ec9 100644
--- a/pkgs/development/interpreters/php/8.0.nix
+++ b/pkgs/development/interpreters/php/8.0.nix
@@ -21,6 +21,7 @@ base.withExtensions ({ all, ... }: with all; ([
   gettext
   gmp
   iconv
+  imap
   intl
   ldap
   mbstring
@@ -49,4 +50,4 @@ base.withExtensions ({ all, ... }: with all; ([
   xmlwriter
   zip
   zlib
-] ++ lib.optionals (!stdenv.isDarwin) [ imap ]))
+]))
diff --git a/pkgs/development/interpreters/php/8.1.nix b/pkgs/development/interpreters/php/8.1.nix
index aa190bc3866c5..7e73787256d2d 100644
--- a/pkgs/development/interpreters/php/8.1.nix
+++ b/pkgs/development/interpreters/php/8.1.nix
@@ -21,6 +21,7 @@ base.withExtensions ({ all, ... }: with all; ([
   gettext
   gmp
   iconv
+  imap
   intl
   ldap
   mbstring
@@ -49,4 +50,4 @@ base.withExtensions ({ all, ... }: with all; ([
   xmlwriter
   zip
   zlib
-] ++ lib.optionals (!stdenv.isDarwin) [ imap ]))
+]))
diff --git a/pkgs/development/interpreters/python/update-python-libraries/default.nix b/pkgs/development/interpreters/python/update-python-libraries/default.nix
index 81975bc5250e1..497799e0a2af0 100644
--- a/pkgs/development/interpreters/python/update-python-libraries/default.nix
+++ b/pkgs/development/interpreters/python/update-python-libraries/default.nix
@@ -1,7 +1,8 @@
-{ python3, runCommand, git }:
+{ python3, runCommand, git, nix }:
 
 runCommand "update-python-libraries" {
   buildInputs = [
+    nix
     (python3.withPackages(ps: with ps; [ packaging requests toolz ]))
     git
   ];
diff --git a/pkgs/development/interpreters/qnial/default.nix b/pkgs/development/interpreters/qnial/default.nix
index 1173315192e10..74360daa87666 100644
--- a/pkgs/development/interpreters/qnial/default.nix
+++ b/pkgs/development/interpreters/qnial/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
     owner = "vrthra";
   };
 
-  nativeBuildInputs = [ makeWrapper unzip ];
+  nativeBuildInputs = [ makeWrapper unzip pkg-config ];
 
   preConfigure = ''
     cd build;
@@ -25,7 +25,6 @@ stdenv.mkDerivation {
   '';
 
   buildInputs = [
-     pkg-config
      ncurses
   ];
 
diff --git a/pkgs/development/libraries/SDL2/default.nix b/pkgs/development/libraries/SDL2/default.nix
index f73c5746cb71e..9900d8874b254 100644
--- a/pkgs/development/libraries/SDL2/default.nix
+++ b/pkgs/development/libraries/SDL2/default.nix
@@ -59,13 +59,13 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "SDL2";
-  version = "2.0.22";
+  version = "2.24.0";
 
   src = fetchurl {
     url = "https://www.libsdl.org/release/${pname}-${version}.tar.gz";
-    sha256 = "sha256-/ny/MSeILj/HJZp1oMtYViAnLFF0XThSq53YeWBpfy4=";
+    sha256 = "sha256-keTDSxdo+S05mweOFxRIxq8Yyv2nQ5h+0gZKKJVNbZc=";
   };
-  dontDisableStatic = withStatic;
+  dontDisableStatic = if withStatic then 1 else 0;
   outputs = [ "out" "dev" ];
   outputBin = "dev"; # sdl-config
 
diff --git a/pkgs/development/libraries/SDL2/find-headers.patch b/pkgs/development/libraries/SDL2/find-headers.patch
index 4792679deb117..8739da91eac18 100644
--- a/pkgs/development/libraries/SDL2/find-headers.patch
+++ b/pkgs/development/libraries/SDL2/find-headers.patch
@@ -1,22 +1,23 @@
 diff --git a/sdl2-config.cmake.in b/sdl2-config.cmake.in
-index c570511fa..ca694f595 100644
+index db864aab9..b94e16043 100644
 --- a/sdl2-config.cmake.in
 +++ b/sdl2-config.cmake.in
-@@ -7,7 +7,8 @@ set(includedir "@includedir@")
- set(SDL2_PREFIX "${prefix}")
- set(SDL2_EXEC_PREFIX "${exec_prefix}")
- set(SDL2_LIBDIR "${libdir}")
--set(SDL2_INCLUDE_DIRS "${includedir}/SDL2")
-+set(SDL2_INCLUDE_DIRS "${includedir}/SDL2" $ENV{SDL2_PATH})
+@@ -26,7 +26,9 @@ set_and_check(SDL2_EXEC_PREFIX    "${exec_prefix}")
+ set_and_check(SDL2_BINDIR         "${bindir}")
+ set_and_check(SDL2_INCLUDE_DIR    "${includedir}/SDL2")
+ set_and_check(SDL2_LIBDIR         "${libdir}")
+-set(SDL2_INCLUDE_DIRS             "${includedir};${SDL2_INCLUDE_DIR}")
++
++set(SDL2_INCLUDE_DIRS "${includedir};${SDL2_INCLUDE_DIR}" $ENV{SDL2_PATH})
 +separate_arguments(SDL2_INCLUDE_DIRS)
- set(SDL2_LIBRARIES "-L${SDL2_LIBDIR} @SDL_RLD_FLAGS@ @SDL_LIBS@")
- string(STRIP "${SDL2_LIBRARIES}" SDL2_LIBRARIES)
  
+ set(SDL2_LIBRARIES SDL2::SDL2)
+ set(SDL2_STATIC_LIBRARIES SDL2::SDL2-static)
 diff --git a/sdl2-config.in b/sdl2-config.in
-index 5a2aed292..7c55f0a28 100644
+index f6eca7668..c0cd94590 100644
 --- a/sdl2-config.in
 +++ b/sdl2-config.in
-@@ -42,7 +42,11 @@ while test $# -gt 0; do
+@@ -46,7 +46,11 @@ while test $# -gt 0; do
        echo @SDL_VERSION@
        ;;
      --cflags)
@@ -29,6 +30,3 @@ index 5a2aed292..7c55f0a28 100644
        ;;
  @ENABLE_SHARED_TRUE@    --libs)
  @ENABLE_SHARED_TRUE@      echo -L@libdir@ @SDL_RLD_FLAGS@ @SDL_LIBS@
--- 
-2.33.1
-
diff --git a/pkgs/development/libraries/SDL2_mixer/default.nix b/pkgs/development/libraries/SDL2_mixer/default.nix
index 2d1ef9853819d..7e562dddf0fda 100644
--- a/pkgs/development/libraries/SDL2_mixer/default.nix
+++ b/pkgs/development/libraries/SDL2_mixer/default.nix
@@ -47,6 +47,8 @@ stdenv.mkDerivation rec {
     timidity
   ];
 
+  outputs = [ "out" "dev" ];
+
   # fix default path to timidity.cfg so MIDI files could be played
   postPatch = ''
     substituteInPlace timidity/options.h \
diff --git a/pkgs/development/libraries/allegro/5.nix b/pkgs/development/libraries/allegro/5.nix
index 6bb1a70b86506..0ff8f0ea7fc02 100644
--- a/pkgs/development/libraries/allegro/5.nix
+++ b/pkgs/development/libraries/allegro/5.nix
@@ -18,14 +18,14 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-uNcaeTelFNfg+YjPYc7nK4TrFDxJsEuPhsF8x1cvIYQ=";
   };
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake pkg-config ];
   buildInputs = [
     texinfo libXext xorgproto libX11 libXpm libXt libXcursor
     alsa-lib zlib libpng libvorbis libXxf86dga libXxf86misc
     libXxf86vm openal libGLU libGL
     libjpeg flac
     libXi libXfixes
-    enet libtheora freetype physfs libopus pkg-config gtk3 pcre libXdmcp
+    enet libtheora freetype physfs libopus gtk3 pcre libXdmcp
     libpulseaudio libpthreadstubs
   ];
 
diff --git a/pkgs/development/libraries/apr-util/default.nix b/pkgs/development/libraries/apr-util/default.nix
index b9756e0e1a1ad..6f38bfa0d076d 100644
--- a/pkgs/development/libraries/apr-util/default.nix
+++ b/pkgs/development/libraries/apr-util/default.nix
@@ -26,8 +26,7 @@ stdenv.mkDerivation rec {
   outputs = [ "out" "dev" ];
   outputBin = "dev";
 
-  nativeBuildInputs = [ makeWrapper ];
-  buildInputs = optional stdenv.isFreeBSD autoreconfHook;
+  nativeBuildInputs = [ makeWrapper ] ++ optional stdenv.isFreeBSD autoreconfHook;
 
   configureFlags = [ "--with-apr=${apr.dev}" "--with-expat=${expat.dev}" ]
     ++ optional (!stdenv.isCygwin) "--with-crypto"
diff --git a/pkgs/development/libraries/arguments/default.nix b/pkgs/development/libraries/arguments/default.nix
index 85dafde83c27f..bacb7662386e9 100644
--- a/pkgs/development/libraries/arguments/default.nix
+++ b/pkgs/development/libraries/arguments/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "arguments";
-  name  = "${pname}-2015-11-30";
+  version = "unstable-2015-11-30";
 
   owner = "BIC-MNI";
 
diff --git a/pkgs/development/libraries/cosmopolitan/default.nix b/pkgs/development/libraries/cosmopolitan/default.nix
index 6947fcde68f06..63f45f62fd145 100644
--- a/pkgs/development/libraries/cosmopolitan/default.nix
+++ b/pkgs/development/libraries/cosmopolitan/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cosmopolitan";
-  version = "2.1";
+  version = "2.1.1";
 
   src = fetchFromGitHub {
     owner = "jart";
     repo = pname;
     rev = version;
-    sha256 = "sha256-qi82iGw0Sj2pgV9O4rr/q7jyd1XG3MpTr69dXdAUH0Q=";
+    sha256 = "sha256-2Q4lutSIQ6tBwTy01lPSMepNAww9Kb7BwNyEcsSdWZ0=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/dssi/default.nix b/pkgs/development/libraries/dssi/default.nix
index 4f7891910a7d3..697ff1a857b3f 100644
--- a/pkgs/development/libraries/dssi/default.nix
+++ b/pkgs/development/libraries/dssi/default.nix
@@ -11,10 +11,10 @@ stdenv.mkDerivation rec {
     sha256 = "0kl1hzhb7cykzkrqcqgq1dk4xcgrcxv0jja251aq4z4l783jpj7j";
   };
 
-  nativeBuildInputs = [ autoconf automake ];
+  nativeBuildInputs = [ autoconf automake pkg-config ];
   buildInputs =
     [ ladspaH libjack2 liblo alsa-lib qt4 libX11 libsndfile libSM
-      libsamplerate libtool xorgproto libICE pkg-config
+      libsamplerate libtool xorgproto libICE
     ];
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/exiv2/default.nix b/pkgs/development/libraries/exiv2/default.nix
index 6fc48c2d4e447..1e671c7b2e7d8 100644
--- a/pkgs/development/libraries/exiv2/default.nix
+++ b/pkgs/development/libraries/exiv2/default.nix
@@ -83,6 +83,8 @@ stdenv.mkDerivation rec {
       rm -f ../tests/bugfixes/redmine/test_issue_662.py
       rm -f ../tests/bugfixes/github/test_issue_1046.py
 
+      rm ../tests/bugfixes/redmine/test_issue_683.py
+
       # disable tests that requires loopback networking
       substituteInPlace  ../tests/bash_tests/testcases.py \
         --replace "def io_test(self):" "def io_disabled(self):"
diff --git a/pkgs/development/libraries/expat/default.nix b/pkgs/development/libraries/expat/default.nix
index f20abe0bfc35f..71841e0cfbc2f 100644
--- a/pkgs/development/libraries/expat/default.nix
+++ b/pkgs/development/libraries/expat/default.nix
@@ -16,11 +16,11 @@
 
 stdenv.mkDerivation rec {
   pname = "expat";
-  version = "2.4.8";
+  version = "2.4.9";
 
   src = fetchurl {
     url = "https://github.com/libexpat/libexpat/releases/download/R_${lib.replaceStrings ["."] ["_"] version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-95uPkEt0nj4NIK/q3s+CScVbLjLU67CJrjeN9HncryU=";
+    sha256 = "sha256-bowHKP5cfNP5OmrM5DBGxeRzbHtLaOAy6TUNqg78A1Q=";
   };
 
   strictDeps = true;
diff --git a/pkgs/development/libraries/ffmpeg/4.nix b/pkgs/development/libraries/ffmpeg/4.nix
index 9e7dcfd751cba..b518b7527ac0d 100644
--- a/pkgs/development/libraries/ffmpeg/4.nix
+++ b/pkgs/development/libraries/ffmpeg/4.nix
@@ -1,4 +1,4 @@
-{ callPackage
+{ callPackage, fetchpatch
 # Darwin frameworks
 , Cocoa, CoreMedia, VideoToolbox
 , stdenv, lib
@@ -10,4 +10,11 @@ callPackage ./generic.nix (rec {
   branch = version;
   sha256 = "sha256-+YpIJSDEdQdSGpB5FNqp77wThOBZG1r8PaGKqJfeKUg=";
   darwinFrameworks = [ Cocoa CoreMedia VideoToolbox ];
+  patches = [
+    #  sdl2 recently changed their versioning
+    (fetchpatch {
+      url = "https://git.videolan.org/?p=ffmpeg.git;a=patch;h=e5163b1d34381a3319214a902ef1df923dd2eeba";
+      hash = "sha256-nLhP2+34cj5EgpnUrePZp60nYAxmbhZAEDfay4pBVk0=";
+    })
+  ];
 } // args)
diff --git a/pkgs/development/libraries/frame/default.nix b/pkgs/development/libraries/frame/default.nix
index e96aa9394da91..f0b37b7e633c8 100644
--- a/pkgs/development/libraries/frame/default.nix
+++ b/pkgs/development/libraries/frame/default.nix
@@ -9,8 +9,9 @@ stdenv.mkDerivation rec {
     sha256 = "bc2a20cd3ac1e61fe0461bd3ee8cb250dbcc1fa511fad0686d267744e9c78f3a";
   };
 
+  nativeBuildInputs = [ pkg-config ];
   buildInputs = [
-    stdenv pkg-config
+    stdenv
   ] ++ lib.optionals enableX11 [xorg.xorgserver xorg.libX11 xorg.libXext xorg.libXi];
 
   configureFlags = lib.optional enableX11 "--with-x11";
diff --git a/pkgs/development/libraries/gdal/2.4.nix b/pkgs/development/libraries/gdal/2.4.nix
deleted file mode 100644
index 5d6e99e8bd7f4..0000000000000
--- a/pkgs/development/libraries/gdal/2.4.nix
+++ /dev/null
@@ -1,92 +0,0 @@
-{ lib, stdenv, fetchurl, fetchpatch, libjpeg, libtiff, zlib
-, postgresql, libmysqlclient, libgeotiff, python3Packages, proj, geos, openssl
-, libpng, sqlite, libspatialite, poppler, hdf4, qhull, giflib, expat
-, libiconv, libxml2
-, netcdfSupport ? true, netcdf, hdf5, curl
-}:
-
-with lib;
-
-stdenv.mkDerivation rec {
-  pname = "gdal";
-  version = "2.4.4";
-
-  src = fetchurl {
-    url = "https://download.osgeo.org/gdal/${version}/${pname}-${version}.tar.xz";
-    sha256 = "1n6w0m2603q9cldlz0wyscp75ci561dipc36jqbf3mjmylybv0x3";
-  };
-
-  patches = [
-    (fetchpatch {
-      url = "https://github.com/OSGeo/gdal/commit/7a18e2669a733ebe3544e4f5c735fd4d2ded5fa3.patch";
-      sha256 = "sha256-rBgIxJcgRzZR1gyzDWK/Sh7MdPWeczxEYVELbYEV8JY=";
-      relative = "gdal";
-      # this doesn't apply correctly because of line endings
-      excludes = [ "third_party/LercLib/Lerc2.h" ];
-    })
-  ];
-
-  buildInputs = [ libjpeg libtiff libgeotiff libpng proj openssl sqlite
-    libspatialite poppler hdf4 qhull giflib expat libxml2 proj ]
-  ++ (with python3Packages; [ python numpy wrapPython ])
-  ++ lib.optional stdenv.isDarwin libiconv
-  ++ lib.optionals netcdfSupport [ netcdf hdf5 curl ];
-
-  configureFlags = [
-    "--with-expat=${expat.dev}"
-    "--with-jpeg=${libjpeg.dev}"
-    "--with-libtiff=${libtiff.dev}" # optional (without largetiff support)
-    "--with-png=${libpng.dev}"      # optional
-    "--with-poppler=${poppler.dev}" # optional
-    "--with-libz=${zlib.dev}"       # optional
-    "--with-pg=${postgresql}/bin/pg_config"
-    "--with-mysql=${getDev libmysqlclient}/bin/mysql_config"
-    "--with-geotiff=${libgeotiff.dev}"
-    "--with-sqlite3=${sqlite.dev}"
-    "--with-spatialite=${libspatialite}"
-    "--with-python"               # optional
-    "--with-proj=${proj.dev}" # optional
-    "--with-geos=${geos}/bin/geos-config"# optional
-    "--with-hdf4=${hdf4.dev}" # optional
-    "--with-xml2=${libxml2.dev}/bin/xml2-config" # optional
-    (if netcdfSupport then "--with-netcdf=${netcdf}" else "")
-  ];
-
-  hardeningDisable = [ "format" ];
-
-  CXXFLAGS = "-fpermissive";
-
-  postPatch = ''
-    sed -i '/ifdef bool/i\
-      #ifdef swap\
-      #undef swap\
-      #endif' ogr/ogrsf_frmts/mysql/ogr_mysql.h
-  '';
-
-  # - Unset CC and CXX as they confuse libtool.
-  # - teach gdal that libdf is the legacy name for libhdf
-  preConfigure = ''
-      unset CC CXX
-      substituteInPlace configure \
-      --replace "-lmfhdf -ldf" "-lmfhdf -lhdf"
-    '';
-
-  preBuild = ''
-    substituteInPlace swig/python/GNUmakefile \
-      --replace "ifeq (\$(STD_UNIX_LAYOUT),\"TRUE\")" "ifeq (1,1)"
-  '';
-
-  postInstall = ''
-    wrapPythonPrograms
-  '';
-
-  enableParallelBuilding = true;
-
-  meta = {
-    description = "Translator library for raster geospatial data formats";
-    homepage = "https://www.gdal.org/";
-    license = lib.licenses.mit;
-    maintainers = [ lib.maintainers.marcweber ];
-    platforms = with lib.platforms; linux ++ darwin;
-  };
-}
diff --git a/pkgs/development/libraries/ggz_base_libs/default.nix b/pkgs/development/libraries/ggz_base_libs/default.nix
index 687b74fdb3ad9..162a64eeb5dad 100644
--- a/pkgs/development/libraries/ggz_base_libs/default.nix
+++ b/pkgs/development/libraries/ggz_base_libs/default.nix
@@ -9,7 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "1cw1vg0fbj36zyggnzidx9cbjwfc1yr4zqmsipxnvns7xa2awbdk";
   };
 
-  buildInputs = [ intltool openssl expat libgcrypt ];
+  nativeBuildInputs = [ intltool ];
+  buildInputs = [ openssl expat libgcrypt ];
 
   patchPhase = ''
     substituteInPlace configure \
diff --git a/pkgs/development/libraries/glew/1.10.nix b/pkgs/development/libraries/glew/1.10.nix
index ab2e740cd8646..dadab6e610ff1 100644
--- a/pkgs/development/libraries/glew/1.10.nix
+++ b/pkgs/development/libraries/glew/1.10.nix
@@ -16,6 +16,8 @@ stdenv.mkDerivation rec {
   buildInputs = if stdenv.isDarwin then [ AGL ] else [ xlibsWrapper libXmu libXi ];
   propagatedBuildInputs = if stdenv.isDarwin then [ OpenGL ] else [ libGLU ]; # GL/glew.h includes GL/glu.h
 
+  outputs = [ "out" "dev" ];
+
   patchPhase = ''
     sed -i 's|lib64|lib|' config/Makefile.linux
     ${optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
@@ -32,8 +34,8 @@ stdenv.mkDerivation rec {
 
   postInstall = ''
     mkdir -pv $out/share/doc/glew
-    mkdir -p $out/lib/pkgconfig
-    cp glew*.pc $out/lib/pkgconfig
+    mkdir -p $dev/lib/pkgconfig
+    cp glew*.pc $dev/lib/pkgconfig
     cp -r README.txt LICENSE.txt doc $out/share/doc/glew
   '';
 
diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix
index 942231ebb3ea9..c6da42738c6ae 100644
--- a/pkgs/development/libraries/glib/default.nix
+++ b/pkgs/development/libraries/glib/default.nix
@@ -96,6 +96,8 @@ stdenv.mkDerivation (finalAttrs: {
       url = "https://gitlab.gnome.org/qyliss/glib/-/commit/339a06d66685107280ca6bdca5da5d96b8222fb5.patch";
       sha256 = "sha256-/NdFkuiJvyass3jTDEJPeciA2Lwe53IUd3kAnKAvTaw=";
     })
+    # https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2867
+    ./tests-skip-shared-libs-if-default_library-static.patch
 
     ./skip-timer-test.patch
   ];
diff --git a/pkgs/development/libraries/glib/tests-skip-shared-libs-if-default_library-static.patch b/pkgs/development/libraries/glib/tests-skip-shared-libs-if-default_library-static.patch
new file mode 100644
index 0000000000000..681e361896e45
--- /dev/null
+++ b/pkgs/development/libraries/glib/tests-skip-shared-libs-if-default_library-static.patch
@@ -0,0 +1,141 @@
+From b804e4b82cd8e85631112d935543c62ef56783e5 Mon Sep 17 00:00:00 2001
+From: Alyssa Ross <hi@alyssa.is>
+Date: Tue, 23 Aug 2022 13:13:44 +0000
+Subject: [PATCH] tests: skip shared libs if default_library=static
+
+Otherwise, the build will fail when the toolchain is static-only, even
+with -Ddefault_library=static.  I talked to a Meson developer in their
+IRC channel, who told me that the correct fix was to ensure that
+shared_library is only used if default_library != static.
+
+Part-of: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2867
+[Backported to 2.72.3]
+---
+ gio/tests/meson.build  | 43 +++++++++++++++++++++++-------------------
+ glib/tests/meson.build |  2 +-
+ tests/meson.build      | 30 +++++++++++++++--------------
+ 3 files changed, 41 insertions(+), 34 deletions(-)
+
+diff --git a/gio/tests/meson.build b/gio/tests/meson.build
+index 3ed23a5f2..7b1aba80d 100644
+--- a/gio/tests/meson.build
++++ b/gio/tests/meson.build
+@@ -203,7 +203,7 @@ if host_machine.system() != 'windows'
+   }
+ 
+   # LD_PRELOAD modules don't work so well with AddressSanitizer
+-  if have_rtld_next and get_option('b_sanitize') == 'none'
++  if have_rtld_next and get_option('default_library') != 'static' and get_option('b_sanitize') == 'none'
+     gio_tests += {
+       'gsocketclient-slow' : {
+         'depends' : [
+@@ -607,24 +607,26 @@ if not meson.is_cross_build() or meson.has_exe_wrapper()
+ 
+   compiler_type = '--compiler=@0@'.format(cc.get_id())
+ 
+-  plugin_resources_c = custom_target('plugin-resources.c',
+-    input : 'test4.gresource.xml',
+-    output : 'plugin-resources.c',
+-    command : [glib_compile_resources,
+-               compiler_type,
+-               '--target=@OUTPUT@',
+-               '--sourcedir=' + meson.current_source_dir(),
+-               '--internal',
+-               '--generate-source',
+-               '--c-name', '_g_plugin',
+-               '@INPUT@'])
++  if get_option('default_library') != 'static'
++    plugin_resources_c = custom_target('plugin-resources.c',
++      input : 'test4.gresource.xml',
++      output : 'plugin-resources.c',
++      command : [glib_compile_resources,
++                 compiler_type,
++                 '--target=@OUTPUT@',
++                 '--sourcedir=' + meson.current_source_dir(),
++                 '--internal',
++                 '--generate-source',
++                 '--c-name', '_g_plugin',
++                 '@INPUT@'])
+ 
+-  shared_module('resourceplugin', 'resourceplugin.c', plugin_resources_c,
+-    link_args : export_dynamic_ldflags,
+-    dependencies : common_gio_tests_deps,
+-    install_dir : installed_tests_execdir,
+-    install : installed_tests_enabled
+-  )
++    shared_module('resourceplugin', 'resourceplugin.c', plugin_resources_c,
++      link_args : export_dynamic_ldflags,
++      dependencies : common_gio_tests_deps,
++      install_dir : installed_tests_execdir,
++      install : installed_tests_enabled
++    )
++  endif
+ 
+   # referenced by test2.gresource.xml
+   big_test_resource = custom_target(
+@@ -917,4 +919,7 @@ if installed_tests_enabled
+ endif
+ 
+ subdir('services')
+-subdir('modules')
++
++if get_option('default_library') != 'static'
++  subdir('modules')
++endif
+diff --git a/glib/tests/meson.build b/glib/tests/meson.build
+index 301158e0f..6203ff45e 100644
+--- a/glib/tests/meson.build
++++ b/glib/tests/meson.build
+@@ -172,7 +172,7 @@ else
+     'include' : {},
+     'unix' : {},
+   }
+-  if have_rtld_next
++  if have_rtld_next and get_option('default_library') != 'static'
+     glib_tests += {
+       'gutils-user-database' : {
+         'depends' : [
+diff --git a/tests/meson.build b/tests/meson.build
+index c95fa1d00..25144c941 100644
+--- a/tests/meson.build
++++ b/tests/meson.build
+@@ -72,20 +72,22 @@ if ['darwin', 'ios'].contains(host_machine.system())
+   module_suffix = 'so'
+ endif
+ 
+-foreach module : ['moduletestplugin_a', 'moduletestplugin_b']
+-  shared_module(module + '_plugin', 'lib@0@.c'.format(module),
+-    dependencies : [libglib_dep, libgmodule_dep],
+-    install_dir : installed_tests_execdir,
+-    install : installed_tests_enabled,
+-    name_suffix : module_suffix
+-  )
+-  shared_library(module + '_library', 'lib@0@.c'.format(module),
+-    dependencies : [libglib_dep, libgmodule_dep],
+-    install_dir : installed_tests_execdir,
+-    install : installed_tests_enabled,
+-    name_suffix : module_suffix
+-  )
+-endforeach
++if get_option('default_library') != 'static'
++  foreach module : ['moduletestplugin_a', 'moduletestplugin_b']
++    shared_module(module + '_plugin', 'lib@0@.c'.format(module),
++      dependencies : [libglib_dep, libgmodule_dep],
++      install_dir : installed_tests_execdir,
++      install : installed_tests_enabled,
++      name_suffix : module_suffix
++    )
++    shared_library(module + '_library', 'lib@0@.c'.format(module),
++      dependencies : [libglib_dep, libgmodule_dep],
++      install_dir : installed_tests_execdir,
++      install : installed_tests_enabled,
++      name_suffix : module_suffix
++    )
++  endforeach
++endif
+ 
+ common_c_args = test_cargs + ['-DGLIB_DISABLE_DEPRECATION_WARNINGS']
+ common_deps = [libm, thread_dep, libglib_dep]
+-- 
+2.37.1
+
diff --git a/pkgs/development/libraries/glibc/default.nix b/pkgs/development/libraries/glibc/default.nix
index ec57ef27e9460..728b97d2f5f4e 100644
--- a/pkgs/development/libraries/glibc/default.nix
+++ b/pkgs/development/libraries/glibc/default.nix
@@ -81,7 +81,7 @@ callPackage ./common.nix { inherit stdenv; } {
 
     postInstall = (if stdenv.hostPlatform == stdenv.buildPlatform then ''
       echo SUPPORTED-LOCALES=C.UTF-8/UTF-8 > ../glibc-2*/localedata/SUPPORTED
-      make -j''${NIX_BUILD_CORES:-1} -l''${NIX_BUILD_CORES:-1} localedata/install-locales
+      make -j''${NIX_BUILD_CORES:-1} localedata/install-locales
     '' else lib.optionalString stdenv.buildPlatform.isLinux ''
       # This is based on http://www.linuxfromscratch.org/lfs/view/development/chapter06/glibc.html
       # Instead of using their patch to build a build-native localedef,
diff --git a/pkgs/development/libraries/gnutls/default.nix b/pkgs/development/libraries/gnutls/default.nix
index 226b91b0ce541..d04fda98c7fe5 100644
--- a/pkgs/development/libraries/gnutls/default.nix
+++ b/pkgs/development/libraries/gnutls/default.nix
@@ -22,11 +22,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "gnutls";
-  version = "3.7.7";
+  version = "3.7.8";
 
   src = fetchurl {
     url = "mirror://gnupg/gnutls/v${lib.versions.majorMinor version}/gnutls-${version}.tar.xz";
-    sha256 = "sha256-vpFD0NWOq2TbqbdxFKqvrFKbbA1+gd5r3xybWQJ9IQY=";
+    sha256 = "sha256-xYrTmvBnDv5qiu5eOosjMaEgBBi2S3xRl3+zltRhcRQ=";
   };
 
   outputs = [ "bin" "dev" "out" "man" "devdoc" ];
diff --git a/pkgs/development/libraries/gstreamer/bad/default.nix b/pkgs/development/libraries/gstreamer/bad/default.nix
index b378c81c89f49..e9f324b245336 100644
--- a/pkgs/development/libraries/gstreamer/bad/default.nix
+++ b/pkgs/development/libraries/gstreamer/bad/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchurl
+, substituteAll
 , meson
 , ninja
 , gettext
@@ -19,6 +20,7 @@
 , libkate
 , lrdf
 , ladspaH
+, lcms2
 , libnice
 , webrtc-audio-processing
 , webrtc-audio-processing_1
@@ -77,6 +79,7 @@
 , mjpegtools
 , libGLU
 , libGL
+, addOpenGLRunpath
 , libintl
 , game-music-emu
 , openssl
@@ -108,6 +111,14 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-ehHBO1XdHSOG3ZAiGeQcv83ajh4Ko+c4GGyVB0s12k8=";
   };
 
+  patches = [
+    # Add fallback paths for nvidia userspace libraries
+    (substituteAll {
+      src = ./fix-paths.patch;
+      inherit (addOpenGLRunpath) driverLink;
+    })
+  ];
+
   nativeBuildInputs = [
     meson
     ninja
@@ -126,6 +137,7 @@ stdenv.mkDerivation rec {
     gst-plugins-base
     orc
     json-glib
+    lcms2
     ldacbt
     libass
     libkate
diff --git a/pkgs/development/libraries/gstreamer/bad/fix-paths.patch b/pkgs/development/libraries/gstreamer/bad/fix-paths.patch
new file mode 100644
index 0000000000000..dfb8f5462c454
--- /dev/null
+++ b/pkgs/development/libraries/gstreamer/bad/fix-paths.patch
@@ -0,0 +1,48 @@
+diff --git a/sys/nvcodec/gstcudaloader.c b/sys/nvcodec/gstcudaloader.c
+index 4223ba1fbd..ca8bb5ceb1 100644
+--- a/sys/nvcodec/gstcudaloader.c
++++ b/sys/nvcodec/gstcudaloader.c
+@@ -135,6 +135,11 @@ gst_cuda_load_library (void)
+     return TRUE;
+ 
+   module = g_module_open (filename, G_MODULE_BIND_LAZY);
++
++  if (module == NULL) {
++    module = g_module_open("@driverLink@/lib/" CUDA_LIBNAME, G_MODULE_BIND_LAZY);
++  }
++
+   if (module == NULL) {
+     GST_WARNING ("Could not open library %s, %s", filename, g_module_error ());
+     return FALSE;
+diff --git a/sys/nvcodec/gstcuvidloader.c b/sys/nvcodec/gstcuvidloader.c
+index 3c7505ca36..eeb376fa80 100644
+--- a/sys/nvcodec/gstcuvidloader.c
++++ b/sys/nvcodec/gstcuvidloader.c
+@@ -85,6 +85,11 @@ gst_cuvid_load_library (guint api_major_ver, guint api_minor_ver)
+     return TRUE;
+ 
+   module = g_module_open (filename, G_MODULE_BIND_LAZY);
++
++  if (module == NULL) {
++    module = g_module_open ("@driverLink@/lib/" NVCUVID_LIBNAME, G_MODULE_BIND_LAZY);
++  }
++
+   if (module == NULL) {
+     GST_WARNING ("Could not open library %s, %s", filename, g_module_error ());
+     return FALSE;
+diff --git a/sys/nvcodec/gstnvenc.c b/sys/nvcodec/gstnvenc.c
+index 19637671ad..39858ccdee 100644
+--- a/sys/nvcodec/gstnvenc.c
++++ b/sys/nvcodec/gstnvenc.c
+@@ -874,6 +874,11 @@ gst_nvenc_load_library (guint * api_major_ver, guint * api_minor_ver)
+   };
+ 
+   module = g_module_open (NVENC_LIBRARY_NAME, G_MODULE_BIND_LAZY);
++
++  if (module == NULL) {
++    module = g_module_open ("@driverLink@/lib/" NVENC_LIBRARY_NAME, G_MODULE_BIND_LAZY);
++  }
++
+   if (module == NULL) {
+     GST_WARNING ("Could not open library %s, %s",
+         NVENC_LIBRARY_NAME, g_module_error ());
diff --git a/pkgs/development/libraries/gtk-engines/default.nix b/pkgs/development/libraries/gtk-engines/default.nix
index e553efa5f2520..d722143b210e7 100644
--- a/pkgs/development/libraries/gtk-engines/default.nix
+++ b/pkgs/development/libraries/gtk-engines/default.nix
@@ -9,8 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "1db65pb0j0mijmswrvpgkdabilqd23x22d95hp5kwxvcramq1dhm";
   };
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ intltool gtk2 ];
+  nativeBuildInputs = [ pkg-config intltool ];
+  buildInputs = [ gtk2 ];
 
   meta = {
     description = "Theme engines for GTK 2";
diff --git a/pkgs/development/libraries/gtkspell/default.nix b/pkgs/development/libraries/gtkspell/default.nix
index aca6ccdcccbc8..6f48ba4e26687 100644
--- a/pkgs/development/libraries/gtkspell/default.nix
+++ b/pkgs/development/libraries/gtkspell/default.nix
@@ -9,8 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "00hdv28bp72kg1mq2jdz1sdw2b8mb9iclsp7jdqwpck705bdriwg";
   };
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [aspell gtk2 enchant intltool];
+  nativeBuildInputs = [ pkg-config intltool ];
+  buildInputs = [aspell gtk2 enchant];
 
   meta = with lib; {
     description = "Word-processor-style highlighting and replacement of misspelled words";
diff --git a/pkgs/development/libraries/imlib2/default.nix b/pkgs/development/libraries/imlib2/default.nix
index 12d972390630c..66092f4365098 100644
--- a/pkgs/development/libraries/imlib2/default.nix
+++ b/pkgs/development/libraries/imlib2/default.nix
@@ -5,10 +5,10 @@
 # imlib2 can load images from ID3 tags.
 , libid3tag, librsvg, libheif
 , freetype , bzip2, pkg-config
-, x11Support ? true, xlibsWrapper ? null
+, x11Support ? true
+, webpSupport ? true
 , svgSupport ? false
 , heifSupport ? false
-, webpSupport ? false
 , jxlSupport ? false
 , psSupport ? false
 
@@ -20,10 +20,11 @@
 , openbox
 , fluxbox
 , enlightenment
+, xorg
 }:
 
 let
-  inherit (lib) optional;
+  inherit (lib) optional optionals;
 in
 stdenv.mkDerivation rec {
   pname = "imlib2";
@@ -37,7 +38,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     libjpeg libtiff giflib libpng
     bzip2 freetype libid3tag
-  ] ++ optional x11Support xlibsWrapper
+  ] ++ optionals x11Support [ xorg.libXft xorg.libXext ]
     ++ optional heifSupport libheif
     ++ optional svgSupport librsvg
     ++ optional webpSupport libwebp
diff --git a/pkgs/development/libraries/jellyfin-ffmpeg/default.nix b/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
index 5df230b081add..23df659a689fd 100644
--- a/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
+++ b/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
@@ -8,13 +8,13 @@
   nv-codec-headers = nv-codec-headers-11;
 }).overrideAttrs (old: rec {
   pname = "jellyfin-ffmpeg";
-  version = "5.1.1-2";
+  version = "5.1.2-1";
 
   src = fetchFromGitHub {
     owner = "jellyfin";
     repo = "jellyfin-ffmpeg";
     rev = "v${version}";
-    sha256 = "sha256-aviluHVNGxbWkmJ6mnlFbtRKKb0FoKkNw0Bgl+tmqyA=";
+    sha256 = "sha256-56IDFZnHDL3jArNd/U/ZRdHyJ54oqhY+U4XcwOLTGqQ=";
   };
 
   configureFlags = old.configureFlags ++ [
diff --git a/pkgs/development/libraries/kerberos/krb5.nix b/pkgs/development/libraries/kerberos/krb5.nix
index 7397824f9a76e..a7197f9ff9846 100644
--- a/pkgs/development/libraries/kerberos/krb5.nix
+++ b/pkgs/development/libraries/kerberos/krb5.nix
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
   buildPhase = lib.optionalString libOnly ''
     runHook preBuild
 
-    MAKE="make -j $NIX_BUILD_CORES -l $NIX_BUILD_CORES"
+    MAKE="make -j $NIX_BUILD_CORES"
     for folder in $libFolders; do
       $MAKE -C $folder
     done
diff --git a/pkgs/development/libraries/libajantv2/default.nix b/pkgs/development/libraries/libajantv2/default.nix
new file mode 100644
index 0000000000000..d0d94c2d125a4
--- /dev/null
+++ b/pkgs/development/libraries/libajantv2/default.nix
@@ -0,0 +1,35 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, cmake
+, ninja
+, pkg-config
+}:
+
+stdenv.mkDerivation rec {
+  pname = "libajantv2";
+  version = "16.2-bugfix5";
+
+  src = fetchFromGitHub {
+    owner = "aja-video";
+    repo = "ntv2";
+    rev = "v${version}";
+    sha256 = "sha256-h5PKWMwqTeI5/EaTWkjYojuvDU0FyMpzIjWB98UOJwc=";
+  };
+
+  outputs = [ "out" "dev" ];
+
+  nativeBuildInputs = [
+    cmake
+    ninja
+    pkg-config
+  ];
+
+  meta = with lib; {
+    description = "AJA NTV2 Open Source Static Libs and Headers for building applications that only wish to statically link against";
+    homepage = "https://github.com/aja-video/ntv2";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ sebtm ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/libcec/default.nix b/pkgs/development/libraries/libcec/default.nix
index 039d3af37605f..1d6fd44acb69e 100644
--- a/pkgs/development/libraries/libcec/default.nix
+++ b/pkgs/development/libraries/libcec/default.nix
@@ -1,4 +1,13 @@
-{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, udev, libcec_platform, libraspberrypi ? null }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, pkg-config
+, udev
+, libcec_platform
+, withLibraspberrypi ? false
+, libraspberrypi
+}:
 
 stdenv.mkDerivation rec {
   pname = "libcec";
@@ -11,17 +20,17 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-OWqCn7Z0KG8sLlfMWd0btJIFJs79ET3Y1AV/y/Kj2TU=";
   };
 
+  # Fix dlopen path
+  postPatch = ''
+    substituteInPlace include/cecloader.h --replace "libcec.so" "$out/lib/libcec.so"
+  '';
+
   nativeBuildInputs = [ pkg-config cmake ];
   buildInputs = [ udev libcec_platform ] ++
-    lib.optional (libraspberrypi != null) libraspberrypi;
+    lib.optional withLibraspberrypi libraspberrypi;
 
   cmakeFlags = [ "-DBUILD_SHARED_LIBS=1" ];
 
-  # Fix dlopen path
-  patchPhase = ''
-    substituteInPlace include/cecloader.h --replace "libcec.so" "$out/lib/libcec.so"
-  '';
-
   meta = with lib; {
     description = "Allows you (with the right hardware) to control your device with your TV remote control using existing HDMI cabling";
     homepage = "http://libcec.pulse-eight.com";
diff --git a/pkgs/development/libraries/libdrm/default.nix b/pkgs/development/libraries/libdrm/default.nix
index e49a903730b95..72ecdc51ab13b 100644
--- a/pkgs/development/libraries/libdrm/default.nix
+++ b/pkgs/development/libraries/libdrm/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libdrm";
-  version = "2.4.112";
+  version = "2.4.113";
 
   src = fetchurl {
     url = "https://dri.freedesktop.org/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "1zr0hi7k5s7my4q9hyj6ryzg89zyjx24zbqfv3c5rcq9pl87gc00";
+    sha256 = "sha256-f9frKWf2O+tGBvItUOJ32ZNIDQXvdd2Iqb2OZ3Mj5eE=";
   };
 
   outputs = [ "out" "dev" "bin" ];
@@ -20,10 +20,11 @@ stdenv.mkDerivation rec {
 
   mesonFlags = [
     "-Dinstall-test-programs=true"
-    "-Domap=true"
+    "-Domap=enabled"
+    "-Dcairo-tests=disabled"
   ] ++ lib.optionals stdenv.hostPlatform.isAarch [
-    "-Dtegra=true"
-    "-Detnaviv=true"
+    "-Dtegra=enabled"
+    "-Detnaviv=enabled"
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/libdwarf/0.4.nix b/pkgs/development/libraries/libdwarf/0.4.nix
deleted file mode 100644
index c5b14f5a05efa..0000000000000
--- a/pkgs/development/libraries/libdwarf/0.4.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ callPackage, zlib }:
-callPackage ./common.nix rec {
-  version = "0.4.1";
-  url = "https://www.prevanders.net/libdwarf-${version}.tar.xz";
-  sha512 = "793fe487de80fe6878f022b90f49ec334a0d7db071ff22a11902db5e3457cc7f3f853945a9ac74de2c40f7f388277f21c5b2e62745bca92d2bb55c51e9577693";
-  buildInputs = [ zlib ];
-  knownVulnerabilities = [];
-}
diff --git a/pkgs/development/libraries/libdwarf/20210528.nix b/pkgs/development/libraries/libdwarf/20210528.nix
new file mode 100644
index 0000000000000..01ab2d720bf0f
--- /dev/null
+++ b/pkgs/development/libraries/libdwarf/20210528.nix
@@ -0,0 +1,8 @@
+{ callPackage, zlib, libelf }:
+callPackage ./common.nix rec {
+  version = "20210528";
+  url = "https://www.prevanders.net/libdwarf-${version}.tar.gz";
+  sha512 = "e0f9c88554053ee6c1b1333960891189e7820c4a4ddc302b7e63754a4cdcfc2acb1b4b6083a722d1204a75e994fff3401ecc251b8c3b24090f8cb4046d90f870";
+  buildInputs = [ zlib libelf ];
+  knownVulnerabilities = [ "CVE-2022-32200" "CVE-2022-39170" ];
+}
diff --git a/pkgs/development/libraries/libdwarf/default.nix b/pkgs/development/libraries/libdwarf/default.nix
index 5bb2d6aa6f727..2beb4efc4bcdb 100644
--- a/pkgs/development/libraries/libdwarf/default.nix
+++ b/pkgs/development/libraries/libdwarf/default.nix
@@ -1,8 +1,8 @@
-{ callPackage, zlib, libelf }:
+{ callPackage, zlib }:
 callPackage ./common.nix rec {
-  version = "20210528";
-  url = "https://www.prevanders.net/libdwarf-${version}.tar.gz";
-  sha512 = "e0f9c88554053ee6c1b1333960891189e7820c4a4ddc302b7e63754a4cdcfc2acb1b4b6083a722d1204a75e994fff3401ecc251b8c3b24090f8cb4046d90f870";
-  buildInputs = [ zlib libelf ];
-  knownVulnerabilities = [ "CVE-2022-32200" ];
+  version = "0.4.2";
+  url = "https://www.prevanders.net/libdwarf-${version}.tar.xz";
+  sha512 = "6d2a3ebf0104362dd9cecec272935684f977db119810eea0eec88c9f56a042f260a4f6ed3bbabde8592fe16f98cbd81b4ab2878005140e05c8f475df6380d1c2";
+  buildInputs = [ zlib ];
+  knownVulnerabilities = [];
 }
diff --git a/pkgs/development/libraries/liberfa/default.nix b/pkgs/development/libraries/liberfa/default.nix
index 8edc3d7b5a52b..b59d3aab4a336 100644
--- a/pkgs/development/libraries/liberfa/default.nix
+++ b/pkgs/development/libraries/liberfa/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   pname = "erfa";
   version = "2.0.0";
 
-  buildInputs = [ autoreconfHook ];
+  nativeBuildInputs = [ autoreconfHook ];
 
   src = fetchFromGitHub {
     owner = "liberfa";
diff --git a/pkgs/development/libraries/libextractor/default.nix b/pkgs/development/libraries/libextractor/default.nix
index 7251e5b645bee..29762e231f2d7 100644
--- a/pkgs/development/libraries/libextractor/default.nix
+++ b/pkgs/development/libraries/libextractor/default.nix
@@ -45,10 +45,11 @@ stdenv.mkDerivation rec {
            -e "s|pexe[[:blank:]]*=.*$|pexe = strdup(\"$out/lib/\");|g"
     '';
 
+  nativeBuildInputs = [ pkg-config ];
+
   buildInputs =
    [ libtool gettext zlib bzip2 flac libvorbis exiv2
      libgsf rpm
-     pkg-config
    ] ++ lib.optionals gstreamerSupport
           ([ gst_all_1.gstreamer ] ++ gstPlugins gst_all_1)
      ++ lib.optionals gtkSupport [ glib gtk3 ]
diff --git a/pkgs/development/libraries/libffi/default.nix b/pkgs/development/libraries/libffi/default.nix
index 4c3e00150abf3..2904e6e45671a 100644
--- a/pkgs/development/libraries/libffi/default.nix
+++ b/pkgs/development/libraries/libffi/default.nix
@@ -9,11 +9,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libffi";
-  version = "3.4.2";
+  version = "3.4.3";
 
   src = fetchurl {
     url = "https://github.com/libffi/libffi/releases/download/v${version}/${pname}-${version}.tar.gz";
-    sha256 = "081nx7wpzds168jbr59m34n6s3lyiq6r8zggvqxvlslsc4hvf3sl";
+    sha256 = "sha256-RBbdkrauj8tbEEIecRxNPLMSA9d1Iad9hdAQIxHmw7g=";
   };
 
   # Note: this package is used for bootstrapping fetchurl, and thus
@@ -21,7 +21,6 @@ stdenv.mkDerivation rec {
   # cgit) that are needed here should be included directly in Nixpkgs as
   # files.
   patches = [
-    ./libffi-powerpc64.patch
   ];
 
   strictDeps = true;
diff --git a/pkgs/development/libraries/libffi/libffi-powerpc64.patch b/pkgs/development/libraries/libffi/libffi-powerpc64.patch
deleted file mode 100644
index 5748ac0849829..0000000000000
--- a/pkgs/development/libraries/libffi/libffi-powerpc64.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-https://github.com/libffi/libffi/issues/668
---- a/src/powerpc/linux64.S
-+++ b/src/powerpc/linux64.S
-@@ -29,6 +29,8 @@
- #include <fficonfig.h>
- #include <ffi.h>
- 
-+	.machine altivec
-+
- #ifdef POWERPC64
- 	.hidden	ffi_call_LINUX64
- 	.globl	ffi_call_LINUX64
---- a/src/powerpc/linux64_closure.S
-+++ b/src/powerpc/linux64_closure.S
-@@ -30,6 +30,8 @@
- 
- 	.file	"linux64_closure.S"
- 
-+	.machine altivec
-+
- #ifdef POWERPC64
- 	FFI_HIDDEN (ffi_closure_LINUX64)
- 	.globl  ffi_closure_LINUX64
diff --git a/pkgs/development/libraries/libfido2/default.nix b/pkgs/development/libraries/libfido2/default.nix
index d7c034b9e98ba..bd4d21fe1b909 100644
--- a/pkgs/development/libraries/libfido2/default.nix
+++ b/pkgs/development/libraries/libfido2/default.nix
@@ -29,6 +29,8 @@ stdenv.mkDerivation rec {
 
   propagatedBuildInputs = [ openssl ];
 
+  outputs = [ "out" "dev" "man" ];
+
   cmakeFlags = [
     "-DUDEV_RULES_DIR=${placeholder "out"}/etc/udev/rules.d"
     "-DCMAKE_INSTALL_LIBDIR=lib"
diff --git a/pkgs/development/libraries/libinklevel/default.nix b/pkgs/development/libraries/libinklevel/default.nix
index dffbcdd69d10c..f9c711df70431 100644
--- a/pkgs/development/libraries/libinklevel/default.nix
+++ b/pkgs/development/libraries/libinklevel/default.nix
@@ -9,8 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-J0cEaC5v4naO4GGUzdfV55kB7KzA+q+v64i5y5Xbp9Q=";
   };
 
+  nativeBuildInputs = [ pkg-config ];
   buildInputs = [
-    pkg-config
     libusb1
   ];
 
diff --git a/pkgs/development/libraries/libmicrohttpd/0.9.70.nix b/pkgs/development/libraries/libmicrohttpd/0.9.69.nix
index c0321e327c52d..866658c224f3a 100644
--- a/pkgs/development/libraries/libmicrohttpd/0.9.70.nix
+++ b/pkgs/development/libraries/libmicrohttpd/0.9.69.nix
@@ -1,10 +1,10 @@
 { callPackage, fetchurl }:
 
 callPackage ./generic.nix ( rec {
-  version = "0.9.70";
+  version = "0.9.69";
 
   src = fetchurl {
     url = "mirror://gnu/libmicrohttpd/libmicrohttpd-${version}.tar.gz";
-    sha256 = "01vkjy89b1ylmh22dy5yza2r414nfwcfixxh3v29nvzrjv9s7l4h";
+    sha256 = "sha256-+5trFIt4dJPmN9MINYhxHmXLy3JvoCzuLNVDxd4n434=";
   };
 })
diff --git a/pkgs/development/libraries/libmicrohttpd/generic.nix b/pkgs/development/libraries/libmicrohttpd/generic.nix
index 336b66ac83230..0af066c71238a 100644
--- a/pkgs/development/libraries/libmicrohttpd/generic.nix
+++ b/pkgs/development/libraries/libmicrohttpd/generic.nix
@@ -1,4 +1,8 @@
-{ lib, stdenv, libgcrypt, curl, gnutls, pkg-config, libiconv, libintl, version, src }:
+{ lib, stdenv, libgcrypt, curl, gnutls, pkg-config, libiconv, libintl, version, src, meta ? {} }:
+
+let
+  meta_ = meta;
+in
 
 stdenv.mkDerivation rec {
   pname = "libmicrohttpd";
@@ -30,5 +34,5 @@ stdenv.mkDerivation rec {
 
     maintainers = with maintainers; [ eelco vrthra fpletz ];
     platforms = platforms.unix;
-  };
+  } // meta_;
 }
diff --git a/pkgs/development/libraries/libmikmod/default.nix b/pkgs/development/libraries/libmikmod/default.nix
index c7a00e7372dd3..29f64116b7a81 100644
--- a/pkgs/development/libraries/libmikmod/default.nix
+++ b/pkgs/development/libraries/libmikmod/default.nix
@@ -18,8 +18,14 @@ in stdenv.mkDerivation rec {
   propagatedBuildInputs =
     optional stdenv.isLinux libpulseaudio;
 
+  outputs = [ "out" "dev" "man" ];
+
   NIX_LDFLAGS = optionalString stdenv.isLinux "-lasound";
 
+  postInstall = ''
+    moveToOutput bin/libmikmod-config "$dev"
+  '';
+
   meta = with lib; {
     description = "A library for playing tracker music module files";
     homepage    = "https://mikmod.shlomifish.org/";
diff --git a/pkgs/development/libraries/libmx/default.nix b/pkgs/development/libraries/libmx/default.nix
index be4cdd62f6e1b..6cff9e3f03aa9 100644
--- a/pkgs/development/libraries/libmx/default.nix
+++ b/pkgs/development/libraries/libmx/default.nix
@@ -33,10 +33,9 @@ stdenv.mkDerivation rec {
 
   configureScript = "sh autogen.sh";
 
-  nativeBuildInputs = [ pkg-config automake autoconf ];
+  nativeBuildInputs = [ pkg-config automake autoconf intltool ];
   buildInputs = [
     libtool
-    intltool
     gobject-introspection glib
     gtk2 gtk-doc clutter clutter-gtk
   ];
diff --git a/pkgs/development/libraries/libpfm/default.nix b/pkgs/development/libraries/libpfm/default.nix
index 20c4c0a1c6e2a..3006efe9b2936 100644
--- a/pkgs/development/libraries/libpfm/default.nix
+++ b/pkgs/development/libraries/libpfm/default.nix
@@ -3,12 +3,12 @@
 }:
 
 stdenv.mkDerivation (rec {
-  version = "4.11.0";
+  version = "4.12.0";
   pname = "libpfm";
 
   src = fetchurl {
     url = "mirror://sourceforge/perfmon2/libpfm4/${pname}-${version}.tar.gz";
-    sha256 = "1k7yp6xfsglp2b6271r622sjinlbys0dk24n9iiv656y5f3zi9ax";
+    sha256 = "sha256-SwwfU/OaYVJbab6/UyxoBAwbmE11RKiuCESxPNkeHuQ=";
   };
 
   makeFlags = [
diff --git a/pkgs/development/libraries/libpipeline/default.nix b/pkgs/development/libraries/libpipeline/default.nix
index 9e2c834277629..f682d394c159e 100644
--- a/pkgs/development/libraries/libpipeline/default.nix
+++ b/pkgs/development/libraries/libpipeline/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libpipeline";
-  version = "1.5.4";
+  version = "1.5.6";
 
   src = fetchurl {
     url = "mirror://savannah/libpipeline/libpipeline-${version}.tar.gz";
-    sha256 = "sha256-23hb3boKN+8UtO+Cri0YuIJOaYPfuZEDGTheKN8/Gpw=";
+    sha256 = "sha256-YPu559w5hSjl86d2r1e7KMo/5dnwzYqWGsbOv+bpt5c=";
   };
 
   patches = lib.optionals stdenv.isDarwin [ ./fix-on-osx.patch ];
diff --git a/pkgs/development/libraries/libplctag/default.nix b/pkgs/development/libraries/libplctag/default.nix
index d391797659ea2..a569e881b9882 100644
--- a/pkgs/development/libraries/libplctag/default.nix
+++ b/pkgs/development/libraries/libplctag/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libplctag";
-  version = "2.5.1";
+  version = "2.5.2";
 
   src = fetchFromGitHub {
     owner = "libplctag";
     repo = "libplctag";
     rev = "v${version}";
-    sha256 = "sha256-ZD7mf6O1iBGmZ2bRWfnM0WPuP1itIi9TxZ5rK4uvBTw=";
+    sha256 = "sha256-HBhVPHkr21iT78lE0FRydZAY7kkH1s/EWP7lsWFC0xA=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/libressl/default.nix b/pkgs/development/libraries/libressl/default.nix
index 82974fe072838..000678652cad4 100644
--- a/pkgs/development/libraries/libressl/default.nix
+++ b/pkgs/development/libraries/libressl/default.nix
@@ -102,4 +102,18 @@ in {
       })
     ];
   };
+
+  libressl_3_6 = generic {
+    version = "3.6.0";
+    hash = "sha256-GxLe/Lvb2+2oaSnkIQAK8PQjM63UgX/SbA2aGuxHhAQ=";
+
+    patches = [
+      # Fix endianness detection on aarch64-darwin, issue #181187
+      (fetchpatch {
+        name = "fix-endian-header-detection.patch";
+        url = "https://patch-diff.githubusercontent.com/raw/libressl-portable/portable/pull/771.patch";
+        sha256 = "sha256-in5U6+sl0HB9qMAtUL6Py4X2rlv0HsqRMIQhhM1oThE=";
+      })
+    ];
+  };
 }
diff --git a/pkgs/development/libraries/librist/default.nix b/pkgs/development/libraries/librist/default.nix
new file mode 100644
index 0000000000000..134b3acf20572
--- /dev/null
+++ b/pkgs/development/libraries/librist/default.nix
@@ -0,0 +1,43 @@
+{ stdenv
+, lib
+, fetchFromGitLab
+, meson
+, ninja
+, pkg-config
+, cjson
+, cmocka
+, mbedtls
+}:
+
+stdenv.mkDerivation rec {
+  pname = "librist";
+  version = "0.2.7";
+
+  src = fetchFromGitLab {
+    domain = "code.videolan.org";
+    owner = "rist";
+    repo = "librist";
+    rev = "v${version}";
+    sha256 = "sha256-qQG2eRAPAQgxghMeUZk3nwyacX6jDl33F8BWW63nM3c=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+  ];
+
+  buildInputs = [
+    cjson
+    cmocka
+    mbedtls
+  ];
+
+  meta = with lib; {
+    description = "A library that can be used to easily add the RIST protocol to your application.";
+    homepage = "https://code.videolan.org/rist/librist";
+    license = with licenses; [ bsd2 mit isc ];
+    maintainers = with maintainers; [ raphaelr sebtm ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/development/libraries/libspectre/default.nix b/pkgs/development/libraries/libspectre/default.nix
index 81e661a942148..2d916fa9a9391 100644
--- a/pkgs/development/libraries/libspectre/default.nix
+++ b/pkgs/development/libraries/libspectre/default.nix
@@ -11,9 +11,11 @@ stdenv.mkDerivation rec {
 
   patches = [ ./libspectre-0.2.7-gs918.patch ];
 
+  nativeBuildInputs = [ pkg-config ];
+
   buildInputs = [
     # Need `libgs.so'.
-    pkg-config ghostscript cairo /*for tests*/
+    ghostscript cairo /*for tests*/
   ];
 
   doCheck = true;
diff --git a/pkgs/development/libraries/libspng/default.nix b/pkgs/development/libraries/libspng/default.nix
index dba098b4468a1..077b414a665d2 100644
--- a/pkgs/development/libraries/libspng/default.nix
+++ b/pkgs/development/libraries/libspng/default.nix
@@ -38,13 +38,13 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    pkg-config
     zlib
   ];
 
   nativeBuildInputs = [
     ninja
     meson
+    pkg-config
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/libssh2/default.nix b/pkgs/development/libraries/libssh2/default.nix
index 1b5d65335b8d0..ce496637fcc20 100644
--- a/pkgs/development/libraries/libssh2/default.nix
+++ b/pkgs/development/libraries/libssh2/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
     description = "A client-side C library implementing the SSH2 protocol";
     homepage = "https://www.libssh2.org";
     platforms = platforms.all;
-    license = licenses.bsd3;
+    license = with licenses; [ bsd3 libssh2 ];
     maintainers = with maintainers; [ SuperSandro2000 ];
   };
 }
diff --git a/pkgs/development/libraries/libtoxcore/default.nix b/pkgs/development/libraries/libtoxcore/default.nix
index 47bc9456d2f7d..65a68ffc08cdd 100644
--- a/pkgs/development/libraries/libtoxcore/default.nix
+++ b/pkgs/development/libraries/libtoxcore/default.nix
@@ -1,60 +1,48 @@
-{ lib, stdenv, fetchFromGitHub, cmake, libsodium, ncurses, libopus, msgpack
+{ lib, stdenv, fetchurl, cmake, libsodium, ncurses, libopus, msgpack
 , libvpx, check, libconfig, pkg-config }:
 
-let
-  generic = { version, sha256 }:
-  stdenv.mkDerivation {
-    pname = "libtoxcore";
-    inherit version;
-
-    src = fetchFromGitHub {
-      owner  = "TokTok";
-      repo   = "c-toxcore";
-      rev    = "v${version}";
-      inherit sha256;
+let buildToxAV = !stdenv.isAarch32;
+in stdenv.mkDerivation rec {
+  pname = "libtoxcore";
+  version = "0.2.18";
+
+  src =
+    # We need the prepared sources tarball.
+    fetchurl {
+      url =
+        "https://github.com/TokTok/c-toxcore/releases/download/v${version}/c-toxcore-${version}.tar.gz";
+      sha256 = "sha256-8pQFN5mIY1k+KLxqa19W8JZ19s2KKDJre8MbSDbAiUI=";
     };
 
-    cmakeFlags = [
-      "-DBUILD_NTOX=ON"
-      "-DDHT_BOOTSTRAP=ON"
-      "-DBOOTSTRAP_DAEMON=ON"
-    ];
-
-    buildInputs = [
-      libsodium msgpack ncurses libconfig
-    ] ++ lib.optionals (!stdenv.isAarch32) [
-      libopus libvpx
-    ];
-
-    nativeBuildInputs = [ cmake pkg-config ];
-
-    doCheck = false; # hangs, tries to access the net?
-    checkInputs = [ check ];
-
-    postFixup =''
-      sed -i $out/lib/pkgconfig/*.pc \
-        -e "s|^libdir=.*|libdir=$out/lib|" \
-        -e "s|^includedir=.*|includedir=$out/include|"
-    '';
-
-    meta = with lib; {
-      broken = stdenv.isDarwin;
-      description = "P2P FOSS instant messaging application aimed to replace Skype";
-      homepage = "https://tox.chat";
-      license = licenses.gpl3Plus;
-      maintainers = with maintainers; [ peterhoeg ];
-      platforms = platforms.all;
-    };
-  };
+  cmakeFlags =
+    [ "-DBUILD_NTOX=ON" "-DDHT_BOOTSTRAP=ON" "-DBOOTSTRAP_DAEMON=ON" ]
+    ++ lib.optional buildToxAV "-DMUST_BUILD_TOXAV=ON";
 
-in {
-  libtoxcore_0_1 = generic {
-    version = "0.1.11";
-    sha256 = "1fya5gfiwlpk6fxhalv95n945ymvp2iidiyksrjw1xw95fzsp1ij";
-  };
+  buildInputs = [
+    libsodium msgpack ncurses libconfig
+  ] ++ lib.optionals buildToxAV [
+    libopus libvpx
+  ];
+
+  nativeBuildInputs = [ cmake pkg-config ];
+
+  doCheck = true;
+  checkInputs = [ check ];
+
+  postInstall = ''
+    substituteInPlace $out/lib/pkgconfig/toxcore.pc \
+      --replace '=''${prefix}/' '=' \
+
+  '';
+  # We might be getting the wrong pkg-config file anyway:
+  # https://github.com/TokTok/c-toxcore/issues/2334
 
-  libtoxcore_0_2 = generic {
-    version = "0.2.17";
-    sha256 = "sha256-SOI6QKOSt/EK9JDrSaV6CrD5sx8aYb5ZL3StYq8u/Dg=";
+  meta = with lib; {
+    broken = stdenv.isDarwin;
+    description = "P2P FOSS instant messaging application aimed to replace Skype";
+    homepage = "https://tox.chat";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ peterhoeg ehmry ];
+    platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/libtoxcore/new-api.nix b/pkgs/development/libraries/libtoxcore/new-api.nix
deleted file mode 100644
index 831ff2447a21f..0000000000000
--- a/pkgs/development/libraries/libtoxcore/new-api.nix
+++ /dev/null
@@ -1,58 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook, libsodium, ncurses, libopus
-, libvpx, check, libconfig, pkg-config }:
-
-stdenv.mkDerivation {
-  pname = "tox-core-new";
-  version = "unstable-2016-07-27";
-
-  src = fetchFromGitHub {
-    owner  = "irungentoo";
-    repo   = "toxcore";
-    rev    = "755f084e8720b349026c85afbad58954cb7ff1d4";
-    sha256 = "0ap1gvlyihnfivv235dbrgsxsiiz70bhlmlr5gn1027w3h5kqz8w";
-  };
-
-  NIX_LDFLAGS = "-lgcc_s";
-
-  postPatch = ''
-    # within Nix chroot builds, localhost is unresolvable
-    sed -i -e '/DEFTESTCASE(addr_resolv_localhost)/d' \
-      auto_tests/network_test.c
-    # takes WAAAY too long (~10 minutes) and would timeout
-    sed -i -e '/DEFTESTCASE[^(]*(many_clients\>/d' \
-      auto_tests/tox_test.c
-  '';
-
-  configureFlags = [
-    "--with-libsodium-headers=${libsodium.dev}/include"
-    "--with-libsodium-libs=${libsodium.out}/lib"
-    "--enable-ntox"
-    "--enable-daemon"
-  ];
-
-
-  nativeBuildInputs = [ autoreconfHook pkg-config ];
-  buildInputs = [
-    autoreconfHook libsodium ncurses check libconfig
-  ] ++ lib.optionals (!stdenv.isAarch32) [
-    libopus
-  ];
-
-  propagatedBuildInputs = lib.optionals (!stdenv.isAarch32) [ libvpx ];
-
-  # Some tests fail randomly due to timeout. This kind of problem is well known
-  # by upstream: https://github.com/irungentoo/toxcore/issues/{950,1054}
-  # They don't recommend running tests on 50core machines with other cpu-bound
-  # tests running in parallel.
-  #
-  # NOTE: run the tests locally on your machine before upgrading this package!
-  doCheck = false;
-
-  meta = with lib; {
-    broken = stdenv.isDarwin;
-    description = "P2P FOSS instant messaging application aimed to replace Skype with crypto";
-    license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ ];
-    platforms = platforms.all;
-  };
-}
diff --git a/pkgs/development/libraries/libvirt/default.nix b/pkgs/development/libraries/libvirt/default.nix
index 4d0ef8bebd4ca..71e89e07d8f7e 100644
--- a/pkgs/development/libraries/libvirt/default.nix
+++ b/pkgs/development/libraries/libvirt/default.nix
@@ -113,18 +113,19 @@ stdenv.mkDerivation rec {
   # NOTE: You must also bump:
   # <nixpkgs/pkgs/development/python-modules/libvirt/default.nix>
   # SysVirt in <nixpkgs/pkgs/top-level/perl-packages.nix>
-  version = "8.7.0";
+  version = "8.8.0";
 
   src = fetchFromGitLab {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-5F6Ibp3k7I1mwv8DNZ7rsW0wOw5q3vHtCUc7jJUNzrs=";
+    sha256 = "sha256-p7z+paiSeIm2cWnc6n9Hrd++BDmccGj+EOhqHNsJiXw=";
     fetchSubmodules = true;
   };
 
   patches = [
     ./0001-meson-patch-in-an-install-prefix-for-building-on-nix.patch
+  ] ++ lib.optionals enableZfs [
     (substituteAll {
       src = ./0002-substitute-zfs-and-zpool-commands.patch;
       zfs = "${zfs}/bin/zfs";
diff --git a/pkgs/development/libraries/libvori/default.nix b/pkgs/development/libraries/libvori/default.nix
index 2eb7bffbdf128..78882374f3bb0 100644
--- a/pkgs/development/libraries/libvori/default.nix
+++ b/pkgs/development/libraries/libvori/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libvori";
-  version = "210412";
+  version = "220621";
 
   src = fetchurl {
     url = "https://brehm-research.de/files/${pname}-${version}.tar.gz";
-    sha256 = "1b4hpwibf3k7gl6n984l3wdi0zyl2fmpz84m9g2di4yhm6p8c61k";
+    hash = "sha256-HPqYxWSBS92s8cDn8RWCE311hmj2MH5us5LHIxeYTBQ=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/libwnck/2.nix b/pkgs/development/libraries/libwnck/2.nix
index fd7d80574a7d5..a1f54006beb58 100644
--- a/pkgs/development/libraries/libwnck/2.nix
+++ b/pkgs/development/libraries/libwnck/2.nix
@@ -12,8 +12,8 @@ stdenv.mkDerivation rec {
   outputs = [ "out" "dev" "devdoc" ];
   outputBin = "dev";
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ gtk2 intltool xorg.libX11 xorg.libXres ];
+  nativeBuildInputs = [ pkg-config intltool ];
+  buildInputs = [ gtk2 xorg.libX11 xorg.libXres ];
   # ?another optional: startup-notification
 
   configureFlags = [ "--disable-introspection" ]; # not needed anywhere AFAIK
diff --git a/pkgs/development/libraries/maeparser/default.nix b/pkgs/development/libraries/maeparser/default.nix
index cd7cc70907cc7..73b25bb014adc 100644
--- a/pkgs/development/libraries/maeparser/default.nix
+++ b/pkgs/development/libraries/maeparser/default.nix
@@ -8,21 +8,23 @@
 
 stdenv.mkDerivation rec {
   pname = "maeparser";
-  version = "1.2.4";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = "schrodinger";
     repo = "maeparser";
     rev = "v${version}";
-    sha256 = "1qzp8d58ksy88y4fx1b0x65wycslm7zxzbb8ns28gkjh12xpzhwz";
+    sha256 = "sha256-9KxCR/spIZzePjmZe8qihIi1hEhPvxg/9dAlYmHxZPs=";
   };
 
   nativeBuildInputs = [ cmake ];
   buildInputs = [ boost zlib ];
 
   meta = with lib; {
-    description = "maestro file parser";
+    homepage = "https://github.com/schrodinger/maeparser";
+    description = "Maestro file parser";
     maintainers = [ maintainers.rmcgibbo ];
     license = licenses.mit;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/matrix-sdk-crypto-nodejs/default.nix b/pkgs/development/libraries/matrix-sdk-crypto-nodejs/default.nix
new file mode 100644
index 0000000000000..afb52ddd6b3c8
--- /dev/null
+++ b/pkgs/development/libraries/matrix-sdk-crypto-nodejs/default.nix
@@ -0,0 +1,65 @@
+{ lib, stdenv, fetchFromGitHub, rustPlatform, napi-rs-cli, nodejs, libiconv }:
+
+stdenv.mkDerivation rec {
+  pname = "matrix-sdk-crypto-nodejs";
+  version = "0.1.0-beta.2";
+
+  src = fetchFromGitHub {
+    owner = "matrix-org";
+    repo = "matrix-rust-sdk";
+    rev = "${pname}-v${version}";
+    hash = "sha256-E++0tm/2d8/3zAXwovJ71uF2sxDORWyJNnA3e1Q3NLA=";
+  };
+
+  patches = [
+    # This is needed because two versions of indexed_db_futures are present (which will fail to vendor, see https://github.com/rust-lang/cargo/issues/10310).
+    # (matrix-sdk-crypto-nodejs doesn't use this dependency, we only need to remove it to vendor the dependencies successfully.)
+    ./remove-duplicate-dependency.patch
+  ];
+
+  cargoDeps = rustPlatform.fetchCargoTarball {
+    inherit src patches;
+    name = "${pname}-${version}";
+    hash = "sha256-G2Um7vHinOuOx9U2BH14LAx+s/0Sxtlc9Nz6nPJfmU8=";
+  };
+
+  postPatch = ''
+    cd bindings/${pname}
+  '';
+
+  nativeBuildInputs = [
+    rustPlatform.cargoSetupHook
+    rustPlatform.rust.cargo
+    rustPlatform.rust.rustc
+    napi-rs-cli
+    nodejs
+  ];
+
+  buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
+
+  buildPhase = ''
+    runHook preBuild
+
+    npm run release-build --offline
+
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    local -r outPath="$out/lib/node_modules/@matrix-org/${pname}"
+    mkdir -p "$outPath"
+    cp package.json index.js index.d.ts matrix-sdk-crypto.*.node "$outPath"
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "A no-network-IO implementation of a state machine that handles E2EE for Matrix clients";
+    homepage = "https://github.com/matrix-org/matrix-rust-sdk/tree/${src.rev}/bindings/matrix-sdk-crypto-nodejs";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ winter ];
+    inherit (nodejs.meta) platforms;
+  };
+}
diff --git a/pkgs/development/libraries/matrix-sdk-crypto-nodejs/remove-duplicate-dependency.patch b/pkgs/development/libraries/matrix-sdk-crypto-nodejs/remove-duplicate-dependency.patch
new file mode 100644
index 0000000000000..0b1ddabcede47
--- /dev/null
+++ b/pkgs/development/libraries/matrix-sdk-crypto-nodejs/remove-duplicate-dependency.patch
@@ -0,0 +1,47 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index 2ddfdd0..3fcca5f 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1985,20 +1985,6 @@ version = "0.3.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683"
+ 
+-[[package]]
+-name = "indexed_db_futures"
+-version = "0.2.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d26ac735f676c52305becf53264b91cea9866a8de61ccbf464405b377b9cbca9"
+-dependencies = [
+- "cfg-if",
+- "js-sys",
+- "uuid 0.8.2",
+- "wasm-bindgen",
+- "wasm-bindgen-futures",
+- "web-sys",
+-]
+-
+ [[package]]
+ name = "indexed_db_futures"
+ version = "0.2.3"
+@@ -2558,8 +2544,7 @@ dependencies = [
+  "derive_builder",
+  "futures-util",
+  "getrandom 0.2.7",
+- "indexed_db_futures 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "indexed_db_futures 0.2.3 (git+https://github.com/Hywan/rust-indexed-db?branch=feat-factory-nodejs)",
++ "indexed_db_futures",
+  "js-sys",
+  "matrix-sdk-base",
+  "matrix-sdk-common",
+diff --git a/crates/matrix-sdk-indexeddb/Cargo.toml b/crates/matrix-sdk-indexeddb/Cargo.toml
+index 7f23dfc..c57e29a 100644
+--- a/crates/matrix-sdk-indexeddb/Cargo.toml
++++ b/crates/matrix-sdk-indexeddb/Cargo.toml
+@@ -30,7 +30,6 @@ js-sys = { version = "0.3.58" }
+ matrix-sdk-base = { version = "0.6.0", path = "../matrix-sdk-base", features = ["js"] }
+ matrix-sdk-crypto = { version = "0.6.0", path = "../matrix-sdk-crypto", features = ["js"], optional = true }
+ matrix-sdk-store-encryption = { version = "0.2.0", path = "../matrix-sdk-store-encryption" }
+-indexed_db_futures = "0.2.3"
+ indexed_db_futures_nodejs = { package = "indexed_db_futures", git = "https://github.com/Hywan/rust-indexed-db", branch = "feat-factory-nodejs", optional = true }
+ ruma = "0.7.0"
+ serde = "1.0.136"
diff --git a/pkgs/development/libraries/mlt/qt-5.nix b/pkgs/development/libraries/mlt/qt-5.nix
index 9b312a2d5ef1d..dad94c29d7245 100644
--- a/pkgs/development/libraries/mlt/qt-5.nix
+++ b/pkgs/development/libraries/mlt/qt-5.nix
@@ -45,7 +45,6 @@ mkDerivation rec {
     libvorbis
     libxml2
     movit
-    pkg-config
     qtbase
     qtsvg
     sox
@@ -56,7 +55,7 @@ mkDerivation rec {
     ladspaPlugins
   ];
 
-  nativeBuildInputs = [ cmake which ];
+  nativeBuildInputs = [ cmake which pkg-config ];
 
   outputs = [ "out" "dev" ];
 
diff --git a/pkgs/development/libraries/nsync/default.nix b/pkgs/development/libraries/nsync/default.nix
index a00893c157326..5a60241894715 100644
--- a/pkgs/development/libraries/nsync/default.nix
+++ b/pkgs/development/libraries/nsync/default.nix
@@ -6,24 +6,26 @@
 
 stdenv.mkDerivation rec {
   pname = "nsync";
-  version = "1.24.0";
+  version = "1.25.0";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = pname;
     rev = version;
-    sha256 = "sha256-jQJtlBDR6efBe1tFOUOZ6awaMTT33qM/GbvbwiWTZxw=";
+    sha256 = "sha256-bdnYrMnBnpnEKGuMlDLILfzgwfu/e5tyMdSDWqreyto=";
   };
 
   nativeBuildInputs = [ cmake ];
 
+  # Needed for case-insensitive filesystems like on macOS
+  # because a file named BUILD exists already.
+  cmakeBuildDir = "build_dir";
+
   meta = {
     homepage = "https://github.com/google/nsync";
     description = "C library that exports various synchronization primitives";
     license = lib.licenses.asl20;
-    maintainers = with lib.maintainers; [ puffnfresh ];
-    # On macOS we get an error for some reason:
-    # > mkdir: cannot create directory 'build': File exists
-    platforms = lib.platforms.linux;
+    maintainers = with lib.maintainers; [ puffnfresh Luflosi ];
+    platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/ogre/default.nix b/pkgs/development/libraries/ogre/default.nix
index e93dfdfb144e7..2017d5435ea43 100644
--- a/pkgs/development/libraries/ogre/default.nix
+++ b/pkgs/development/libraries/ogre/default.nix
@@ -57,7 +57,6 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake unzip pkg-config ];
   buildInputs =
     [
-      cmake
       libGLU
       libGL
       freetype
diff --git a/pkgs/development/libraries/onnxruntime/default.nix b/pkgs/development/libraries/onnxruntime/default.nix
index e297f835f326e..48da747c30203 100644
--- a/pkgs/development/libraries/onnxruntime/default.nix
+++ b/pkgs/development/libraries/onnxruntime/default.nix
@@ -15,11 +15,18 @@
 , boost
 , oneDNN
 , gtest
-, pythonSupport ? true
+, pythonSupport ? false
 , nsync
 , flatbuffers
 }:
 
+# Python Support
+#
+# When enabling Python support a wheel is made and stored in a `dist` output.
+# This wheel is then installed in a separate derivation.
+
+assert pythonSupport -> lib.versionOlder protobuf.version "3.20";
+
 let
   # prefetch abseil
   # Note: keep URL in sync with `cmake/external/abseil-cpp.cmake`
@@ -58,26 +65,26 @@ stdenv.mkDerivation rec {
     setuptools
     wheel
     pip
+    pythonOutputDistHook
   ]);
 
   buildInputs = [
     libpng
     zlib
-    protobuf
     howard-hinnant-date
     nlohmann_json
     boost
     oneDNN
-  ] ++ lib.optionals pythonSupport ([
-    flatbuffers
+    protobuf
+  ] ++ lib.optionals pythonSupport [
     nsync
-  ] ++ (with python3Packages; [
-    numpy
-    pybind11
-  ]));
+    python3Packages.numpy
+    python3Packages.pybind11
+  ];
 
   # TODO: build server, and move .so's to lib output
-  outputs = [ "out" "dev" ] ++ lib.optionals pythonSupport [ "python" ];
+  # Python's wheel is stored in a separate dist output
+  outputs = [ "out" "dev" ] ++ lib.optionals pythonSupport [ "dist" ];
 
   enableParallelBuilding = true;
 
@@ -116,10 +123,15 @@ stdenv.mkDerivation rec {
       ../include/onnxruntime/core/framework/provider_options.h \
       ../include/onnxruntime/core/providers/cpu/cpu_provider_factory.h \
       ../include/onnxruntime/core/session/onnxruntime_*.h
-  '' + lib.optionalString pythonSupport ''
-    pip install dist/*.whl --no-index --no-warn-script-location --prefix="$python" --no-cache --no-deps
   '';
 
+  passthru = {
+    inherit protobuf;
+    tests = lib.optionalAttrs pythonSupport {
+      python = python3Packages.onnxruntime;
+    };
+  };
+
   meta = with lib; {
     description = "Cross-platform, high performance scoring engine for ML models";
     longDescription = ''
diff --git a/pkgs/development/libraries/openal-soft/default.nix b/pkgs/development/libraries/openal-soft/default.nix
index b9471d6819376..8164a4264e6e3 100644
--- a/pkgs/development/libraries/openal-soft/default.nix
+++ b/pkgs/development/libraries/openal-soft/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, cmake, pkg-config
+{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, removeReferencesTo
 , alsaSupport ? !stdenv.isDarwin, alsa-lib
 , dbusSupport ? !stdenv.isDarwin, dbus
 , pipewireSupport ? !stdenv.isDarwin, pipewire
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
 
   strictDeps = true;
 
-  nativeBuildInputs = [ cmake pkg-config ];
+  nativeBuildInputs = [ cmake pkg-config removeReferencesTo ];
 
   buildInputs = lib.optional alsaSupport alsa-lib
     ++ lib.optional dbusSupport dbus
@@ -46,6 +46,10 @@ stdenv.mkDerivation rec {
     "-DOSS_INCLUDE_DIR=${stdenv.cc.libc}/include"
   ];
 
+  postInstall = lib.optional pipewireSupport ''
+    remove-references-to -t ${pipewire.dev} $(readlink -f $out/lib/*.so)
+  '';
+
   meta = with lib; {
     description = "OpenAL alternative";
     homepage = "https://openal-soft.org/";
diff --git a/pkgs/development/libraries/opencl-headers/default.nix b/pkgs/development/libraries/opencl-headers/default.nix
index 879a916d3ea6d..273cdea6f8c9b 100644
--- a/pkgs/development/libraries/opencl-headers/default.nix
+++ b/pkgs/development/libraries/opencl-headers/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "opencl-headers";
-  version = "2021.06.30";
+  version = "2022.09.23";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "OpenCL-Headers";
     rev = "v${version}";
-    sha256 = "sha256-MdKC48f1zhVAcHrqzrgT9iaYrHXurV8vDt+GnDroO9s=";
+    sha256 = "sha256-kBXkevcapVfpFmI5C77DwULrC8zjcoto+veb49Ksixk=";
   };
 
   installPhase = ''
diff --git a/pkgs/development/libraries/openh264/default.nix b/pkgs/development/libraries/openh264/default.nix
index e85589af0c1ae..479ffbc78eeed 100644
--- a/pkgs/development/libraries/openh264/default.nix
+++ b/pkgs/development/libraries/openh264/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "openh264";
-  version = "2.3.0";
+  version = "2.3.1";
 
   src = fetchFromGitHub {
     owner = "cisco";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-OSTsU2E4UWiwBqq3NqD0lj8uqVXeyd3MJ/gre6W2Jvs=";
+    sha256 = "sha256-L5u0xkoza3G1ZHdtJH7ayVOgcVbPWYp7MC3lJd7LsSY=";
   };
 
   nativeBuildInputs = [ nasm ];
diff --git a/pkgs/development/libraries/openjpeg/default.nix b/pkgs/development/libraries/openjpeg/default.nix
index b26738c9ea154..8dd2415433a69 100644
--- a/pkgs/development/libraries/openjpeg/default.nix
+++ b/pkgs/development/libraries/openjpeg/default.nix
@@ -1,75 +1,64 @@
 { lib, stdenv, fetchFromGitHub, fetchpatch, cmake, pkg-config
-, libpng, libtiff, lcms2, jpylyzer
-, mj2Support ? true # MJ2 executables
-, jpwlLibSupport ? true # JPWL library & executables
+, libdeflate, libpng, libtiff, zlib, lcms2, jpylyzer
 , jpipLibSupport ? false # JPIP library & executables
-, jpipServerSupport ? false, curl ? null, fcgi ? null # JPIP Server
-#, opjViewerSupport ? false, wxGTK ? null # OPJViewer executable
+, jpipServerSupport ? false, curl, fcgi # JPIP Server
+, opjViewerSupport ? false, wxGTK # OPJViewer executable
 , openjpegJarSupport ? false # Openjpeg jar (Java)
-, jp3dSupport ? true # # JP3D comp
-, thirdPartySupport ? false # Third party libraries - OFF: only build when found, ON: always build
-, testsSupport ? true
-, jdk ? null
+, jdk
+, poppler
 }:
 
-assert jpipServerSupport -> jpipLibSupport && curl != null && fcgi != null;
-#assert opjViewerSupport -> (wxGTK != null);
-assert (openjpegJarSupport || jpipLibSupport) -> jdk != null;
-
 let
-  inherit (lib) optional optionals;
   mkFlag = optSet: flag: "-D${flag}=${if optSet then "ON" else "OFF"}";
 in
 
 stdenv.mkDerivation rec {
   pname = "openjpeg";
-  version = "2.4.0"; # don't forget to change passthru.incDir
+  version = "2.5.0";
 
   src = fetchFromGitHub {
     owner = "uclouvain";
     repo = "openjpeg";
     rev = "v${version}";
-    sha256 = "143dvy5g6v6129lzvl0r8mrgva2fppkn0zl099qmi9yi9l9h7yyf";
+    sha256 = "sha256-/0o3Fl6/jx5zu854TCqMyOz/8mnEyEC9lpZ6ij/tbHc=";
   };
 
+  outputs = [ "out" "dev" ];
+
   patches = [
-    ./fix-cmake-config-includedir.patch
+    # modernise cmake files, also fixes them for multiple outputs
     (fetchpatch {
-      url = "https://patch-diff.githubusercontent.com/raw/uclouvain/openjpeg/pull/1321.patch";
-      sha256 = "1cjpr76nf9g65nqkfnxnjzi3bv7ifbxpc74kxxibh58pzjlp6al8";
+      url = "https://github.com/uclouvain/openjpeg/pull/1424.patch";
+      sha256 = "sha256-CxVRt1u4HVOMUjWiZ2plmZC29t/zshCpSY+N4Wlrlvg=";
+    })
+    # fix cmake files cross compilation
+    (fetchpatch {
+      url = "https://github.com/uclouvain/openjpeg/commit/c6ceb84c221b5094f1e8a4c0c247dee3fb5074e8.patch";
+      sha256 = "sha256-gBUtmO/7RwSWEl7rc8HGr8gNtvNFdhjEwm0Dd51p5O8=";
     })
   ];
 
-  outputs = [ "out" "dev" ];
-
   cmakeFlags = [
     "-DCMAKE_INSTALL_NAME_DIR=\${CMAKE_INSTALL_PREFIX}/lib"
     "-DBUILD_SHARED_LIBS=ON"
     "-DBUILD_CODEC=ON"
-    (mkFlag mj2Support "BUILD_MJ2")
-    (mkFlag jpwlLibSupport "BUILD_JPWL")
+    "-DBUILD_THIRDPARTY=OFF"
     (mkFlag jpipLibSupport "BUILD_JPIP")
     (mkFlag jpipServerSupport "BUILD_JPIP_SERVER")
-    #(mkFlag opjViewerSupport "BUILD_VIEWER")
-    "-DBUILD_VIEWER=OFF"
+    (mkFlag opjViewerSupport "BUILD_VIEWER")
     (mkFlag openjpegJarSupport "BUILD_JAVA")
-    (mkFlag jp3dSupport "BUILD_JP3D")
-    (mkFlag thirdPartySupport "BUILD_THIRDPARTY")
-    (mkFlag testsSupport "BUILD_TESTING")
-    "-DOPENJPEG_INSTALL_INCLUDE_DIR=${placeholder "dev"}/include/${passthru.incDir}"
-    "-DOPENJPEG_INSTALL_PACKAGE_DIR=${placeholder "dev"}/lib/${passthru.incDir}"
+    (mkFlag doCheck "BUILD_TESTING")
   ];
 
   nativeBuildInputs = [ cmake pkg-config ];
 
-  buildInputs = [ ]
-    ++ optionals jpipServerSupport [ curl fcgi ]
-    #++ optional opjViewerSupport wxGTK
-    ++ optional (openjpegJarSupport || jpipLibSupport) jdk;
+  buildInputs = [ libdeflate libpng libtiff zlib lcms2 ]
+    ++ lib.optionals jpipServerSupport [ curl fcgi ]
+    ++ lib.optional opjViewerSupport wxGTK
+    ++ lib.optional (openjpegJarSupport || jpipLibSupport) jdk;
 
-  propagatedBuildInputs = [ libpng libtiff lcms2 ];
+  doCheck = (!stdenv.isAarch64 && !stdenv.hostPlatform.isPower64); # tests fail on aarch64-linux and powerpc64
 
-  doCheck = (testsSupport && !stdenv.isAarch64 && !stdenv.hostPlatform.isPower64); # tests fail on aarch64-linux and powerpc64
   checkPhase = ''
     substituteInPlace ../tools/ctest_scripts/travis-ci.cmake \
       --replace "JPYLYZER_EXECUTABLE=" "JPYLYZER_EXECUTABLE=\"${jpylyzer}/bin/jpylyzer\" # "
@@ -77,7 +66,10 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    incDir = "openjpeg-2.4";
+    incDir = "openjpeg-${lib.versions.majorMinor version}";
+    tests = {
+      inherit poppler;
+    };
   };
 
   meta = with lib; {
@@ -86,5 +78,7 @@ stdenv.mkDerivation rec {
     license = licenses.bsd2;
     maintainers = with maintainers; [ codyopel ];
     platforms = platforms.all;
+    # opj viewer fails to compile with lots of errors, jar requires openjpeg library already compiled and installed
+    broken = (opjViewerSupport || openjpegJarSupport);
   };
 }
diff --git a/pkgs/development/libraries/openjpeg/fix-cmake-config-includedir.patch b/pkgs/development/libraries/openjpeg/fix-cmake-config-includedir.patch
deleted file mode 100644
index 21306400dd46b..0000000000000
--- a/pkgs/development/libraries/openjpeg/fix-cmake-config-includedir.patch
+++ /dev/null
@@ -1,44 +0,0 @@
---- a/src/lib/openjp2/libopenjp2.pc.cmake.in
-+++ b/src/lib/openjp2/libopenjp2.pc.cmake.in
-@@ -3,7 +3,7 @@
- mandir=${prefix}/@OPENJPEG_INSTALL_MAN_DIR@
- docdir=${prefix}/@OPENJPEG_INSTALL_DOC_DIR@
- libdir=${prefix}/@OPENJPEG_INSTALL_LIB_DIR@
--includedir=${prefix}/@OPENJPEG_INSTALL_INCLUDE_DIR@
-+includedir=@OPENJPEG_INSTALL_INCLUDE_DIR@
- 
- Name: openjp2
- Description: JPEG2000 library (Part 1 and 2)
---- a/src/lib/openjp3d/libopenjp3d.pc.cmake.in
-+++ b/src/lib/openjp3d/libopenjp3d.pc.cmake.in
-@@ -3,7 +3,7 @@
- mandir=${prefix}/@OPENJPEG_INSTALL_MAN_DIR@
- docdir=${prefix}/@OPENJPEG_INSTALL_DOC_DIR@
- libdir=${prefix}/@OPENJPEG_INSTALL_LIB_DIR@
--includedir=${prefix}/@OPENJPEG_INSTALL_INCLUDE_DIR@
-+includedir=@OPENJPEG_INSTALL_INCLUDE_DIR@
- 
- Name: openjp3d
- Description: JPEG2000 Extensions for three-dimensional data (Part 10)
---- a/src/lib/openjpip/libopenjpip.pc.cmake.in
-+++ b/src/lib/openjpip/libopenjpip.pc.cmake.in
-@@ -3,7 +3,7 @@
- mandir=${prefix}/@OPENJPEG_INSTALL_MAN_DIR@
- docdir=${prefix}/@OPENJPEG_INSTALL_DOC_DIR@
- libdir=${prefix}/@OPENJPEG_INSTALL_LIB_DIR@
--includedir=${prefix}/@OPENJPEG_INSTALL_INCLUDE_DIR@
-+includedir=@OPENJPEG_INSTALL_INCLUDE_DIR@
- 
- Name: openjpip
- Description: JPEG2000 Interactivity tools, APIs and protocols (Part 9)
---- a/src/lib/openjpwl/libopenjpwl.pc.cmake.in
-+++ b/src/lib/openjpwl/libopenjpwl.pc.cmake.in
-@@ -3,7 +3,7 @@
- mandir=${prefix}/@OPENJPEG_INSTALL_MAN_DIR@
- docdir=${prefix}/@OPENJPEG_INSTALL_DOC_DIR@
- libdir=${prefix}/@OPENJPEG_INSTALL_LIB_DIR@
--includedir=${prefix}/@OPENJPEG_INSTALL_INCLUDE_DIR@
-+includedir=@OPENJPEG_INSTALL_INCLUDE_DIR@
- 
- Name: openjpwl
- Description: JPEG2000 Wireless library (Part 11)
diff --git a/pkgs/development/libraries/packr/default.nix b/pkgs/development/libraries/packr/default.nix
index e3abc6e5d62e4..5b04c168cf318 100644
--- a/pkgs/development/libraries/packr/default.nix
+++ b/pkgs/development/libraries/packr/default.nix
@@ -1,7 +1,7 @@
-{ buildGoModule
+{ stdenv
+, buildGoModule
 , fetchFromGitHub
 , lib
-
 , symlinkJoin
 }:
 
@@ -27,6 +27,14 @@ let p2 = buildGoModule rec {
     homepage = "https://github.com/gobuffalo/packr";
     license = licenses.mit;
     maintainers = with maintainers; [ mmahut ];
+
+    # golang.org/x/sys needs to be updated due to:
+    #
+    #   https://github.com/golang/go/issues/49219
+    #
+    # but this package is no longer maintained.
+    #
+    broken = stdenv.isDarwin;
   };
 };
 p1 = buildGoModule rec {
@@ -51,6 +59,14 @@ p1 = buildGoModule rec {
     homepage = "https://github.com/gobuffalo/packr";
     license = licenses.mit;
     maintainers = with maintainers; [ mmahut ];
+
+    # golang.org/x/sys needs to be updated due to:
+    #
+    #   https://github.com/golang/go/issues/49219
+    #
+    # but this package is no longer maintained.
+    #
+    broken = stdenv.isDarwin;
   };
 };
 in
diff --git a/pkgs/development/libraries/pipewire/wireplumber.nix b/pkgs/development/libraries/pipewire/wireplumber.nix
index d43a4331f98d1..5770866ebbedb 100644
--- a/pkgs/development/libraries/pipewire/wireplumber.nix
+++ b/pkgs/development/libraries/pipewire/wireplumber.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchFromGitLab
-, fetchpatch
 , nix-update-script
 , # base build deps
   meson
@@ -27,7 +26,7 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "wireplumber";
-  version = "0.4.11";
+  version = "0.4.12";
 
   outputs = [ "out" "dev" ] ++ lib.optional enableDocs "doc";
 
@@ -36,24 +35,9 @@ stdenv.mkDerivation rec {
     owner = "pipewire";
     repo = "wireplumber";
     rev = version;
-    sha256 = "sha256-3NrzOsL0MekxMMXCFubEkazzSWFNsjUsX8n2ECcr7yY=";
+    sha256 = "sha256-2qM6sX807v/3DZXTuBvUSGV8+cPB87rWYb+HTDCm3kw=";
   };
 
-  patches = [
-    # fix sound not working in VMs
-    # FIXME: drop in next release
-    (fetchpatch {
-      url = "https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/c16e637c329bc9dda8544b18f5bd47a8d63ee253.patch";
-      sha256 = "sha256-xhhAlhOovwIjwAxXxvHRTG4GzpIPYvKQE2F4ZP1Udq8=";
-    })
-    # fix bluetooth rescan loops
-    # FIXME: drop in next release
-    (fetchpatch {
-      url = "https://gitlab.freedesktop.org/pipewire/wireplumber/-/merge_requests/398.patch";
-      sha256 = "sha256-rEp/3fjBRbkFuw4rBW6h8O5hcy/oBP3DW7bPu5rVfNY=";
-    })
-  ];
-
   nativeBuildInputs = [
     meson
     pkg-config
diff --git a/pkgs/development/libraries/plasma-wayland-protocols/default.nix b/pkgs/development/libraries/plasma-wayland-protocols/default.nix
index 3f0980046d598..74e4f6c5100d5 100644
--- a/pkgs/development/libraries/plasma-wayland-protocols/default.nix
+++ b/pkgs/development/libraries/plasma-wayland-protocols/default.nix
@@ -7,11 +7,11 @@
 
 mkDerivation rec {
   pname = "plasma-wayland-protocols";
-  version = "1.8.0";
+  version = "1.9.0";
 
   src = fetchurl {
     url = "mirror://kde/stable/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-XQ+gyaC0SAAeCEJSQfI1/PuiW7xizkPAUK0dgI1X3Xo=";
+    sha256 = "sha256-pCdbmoVHFvpe2cK6LWl98rB0n8RaKK2WXmjQqjbF1Mg=";
   };
 
   nativeBuildInputs = [ extra-cmake-modules ];
diff --git a/pkgs/development/libraries/plib/default.nix b/pkgs/development/libraries/plib/default.nix
index da95f9ef698c8..49c50ed7bdc58 100644
--- a/pkgs/development/libraries/plib/default.nix
+++ b/pkgs/development/libraries/plib/default.nix
@@ -20,6 +20,10 @@ stdenv.mkDerivation rec {
       url = "https://sources.debian.net/data/main/p/plib/1.8.5-7/debian/patches/05_CVE-2012-4552.diff";
       sha256 = "0b6cwdwii5b5vy78sbw5cw1s96l4jyzr4dk69v63pa0wwi2b5dki";
     })
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/p/plib/1.8.5-13/debian/patches/08_CVE-2021-38714.patch";
+      sha256 = "sha256-3f1wZn0QqK/hPWCg1KEzbB95IGoxBjLZoCOFlW98t5w=";
+    })
   ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/libraries/protobuf/generic-v3-cmake.nix b/pkgs/development/libraries/protobuf/generic-v3-cmake.nix
index 07e84a2ae0666..207017b5edd5e 100644
--- a/pkgs/development/libraries/protobuf/generic-v3-cmake.nix
+++ b/pkgs/development/libraries/protobuf/generic-v3-cmake.nix
@@ -53,6 +53,8 @@ let
         url = "https://github.com/protocolbuffers/protobuf/commit/a7324f88e92bc16b57f3683403b6c993bf68070b.patch";
         sha256 = "sha256-SmwaUjOjjZulg/wgNmR/F5b8rhYA2wkKAjHIOxjcQdQ=";
       })
+    ] ++ lib.optionals stdenv.hostPlatform.isStatic [
+      ./static-executables-have-no-rpath.patch
     ];
 
     nativeBuildInputs = let
diff --git a/pkgs/development/libraries/protobuf/static-executables-have-no-rpath.patch b/pkgs/development/libraries/protobuf/static-executables-have-no-rpath.patch
new file mode 100644
index 0000000000000..cd2474e14590d
--- /dev/null
+++ b/pkgs/development/libraries/protobuf/static-executables-have-no-rpath.patch
@@ -0,0 +1,18 @@
+diff --git a/cmake/install.cmake b/cmake/install.cmake
+index 26a55be8b..b6823c3f9 100644
+--- a/cmake/install.cmake
++++ b/cmake/install.cmake
+@@ -32,13 +32,6 @@ if (protobuf_BUILD_PROTOC_BINARIES)
+   install(TARGETS protoc EXPORT protobuf-targets
+     RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT protoc
+     BUNDLE DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT protoc)
+-  if (UNIX AND NOT APPLE)
+-    set_property(TARGET protoc
+-      PROPERTY INSTALL_RPATH "$ORIGIN/../${CMAKE_INSTALL_LIBDIR}")
+-  elseif (APPLE)
+-    set_property(TARGET protoc
+-      PROPERTY INSTALL_RPATH "@loader_path/../lib")
+-  endif()
+ endif (protobuf_BUILD_PROTOC_BINARIES)
+ 
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/protobuf.pc ${CMAKE_CURRENT_BINARY_DIR}/protobuf-lite.pc DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
diff --git a/pkgs/development/libraries/pupnp/default.nix b/pkgs/development/libraries/pupnp/default.nix
index b3c76fba5dfb4..d407c3137efc0 100644
--- a/pkgs/development/libraries/pupnp/default.nix
+++ b/pkgs/development/libraries/pupnp/default.nix
@@ -6,7 +6,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libupnp";
-  version = "1.14.13";
+  version = "1.14.14";
 
   outputs = [ "out" "dev" ];
 
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     owner = "pupnp";
     repo = "pupnp";
     rev = "release-${version}";
-    sha256 = "sha256-3pvJDReyZilJ8pAHYw6d+6ammv4EliLgA+VOSBsvF20=";
+    sha256 = "sha256-LZFCfYz6MKMt0IDH22EbcmTRUXrrhQMaSjqAZH28nIQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/qt-5/5.15/srcs-generated.json b/pkgs/development/libraries/qt-5/5.15/srcs-generated.json
index 37685b07d3440..033331c474abf 100644
--- a/pkgs/development/libraries/qt-5/5.15/srcs-generated.json
+++ b/pkgs/development/libraries/qt-5/5.15/srcs-generated.json
@@ -1,207 +1,207 @@
 {
   "qt3d": {
     "url": "https://invent.kde.org/qt/qt/qt3d.git",
-    "rev": "3cc801c4ae41ff3f155258c4bf7e21bb5b3f6a3d",
-    "sha256": "0ia17cn59100n4qkxc1bdn36knqpdqy1dx06la4qlhvm6hzb7wpj"
+    "rev": "fe5fca853c09c7e03a2ff66dac21584e3307984d",
+    "sha256": "0z8vkr3a20sb428m5kizgj33fkrznqzhwc0mh1rdqivlcsfp4kfi"
   },
   "qtactiveqt": {
     "url": "https://invent.kde.org/qt/qt/qtactiveqt.git",
-    "rev": "a4211b21b09a1b98020522bc058e0ee2d6ed2e1d",
-    "sha256": "1gdnqhx75iwja50nhvdb8fxbdcpw18pc6xpd105kj4j62f73j1hq"
+    "rev": "ccc9a61d10404a4999dec61fdb513aa50f265cc3",
+    "sha256": "1l4h721shvc5cy5n2ykj0bhi5bgn3c8w1dmiwxh45rnb6qz971da"
   },
   "qtandroidextras": {
     "url": "https://invent.kde.org/qt/qt/qtandroidextras.git",
-    "rev": "45ce7b075b5dd19744b9446aa9e8ceb1d099d8b9",
-    "sha256": "15b7258mjdxbqpgr9bjhysagznnx97l2948c15xjpb77sc8l0wlh"
+    "rev": "1d9324ce38ce5100d827942eda67fe634753655b",
+    "sha256": "1k00pibnadgjnvv42kfq5pynr0gljv35hri6k5gfswqw347dr6f8"
   },
   "qtbase": {
     "url": "https://invent.kde.org/qt/qt/qtbase.git",
-    "rev": "aa0c6db334cf6f0887f42cbd82e4af258126bdc5",
-    "sha256": "0gxlqkag06fd7jbk7kjcjxxa3wxm27fa9vdd4hzq5gkq5y1hslaw"
+    "rev": "e44097b63d17ba3178a637df7fac51ddc51cb48b",
+    "sha256": "071q48qnszwqkmdpf14nqzbyqs62apfjhm0640fggv5ydgrbqw6j"
   },
   "qtcharts": {
     "url": "https://invent.kde.org/qt/qt/qtcharts.git",
-    "rev": "9a569795f0c3f41ec093e4aa5842a463e2755edb",
-    "sha256": "12w48q59xcr0l1s941pnsp5s8xk5knis9c1cry6kvybiq51hl77n"
+    "rev": "841083c263f16f8acb81e4915bf24bbed0461c9a",
+    "sha256": "1iic9q8qj6bz6qznfr0jdjdi3a72lb433d0k711cfz2np2i8ajz1"
   },
   "qtconnectivity": {
     "url": "https://invent.kde.org/qt/qt/qtconnectivity.git",
-    "rev": "42c25efeaa409f711af1bd9a8144b445741ee114",
-    "sha256": "0bj28j5ksr95bj9vmqcahvx3a5bc8kd9kkd6q8nsg7ak0bm0cm2p"
+    "rev": "01e8b04b121712ea0a2b2793ce13f4dd5e9cfcf8",
+    "sha256": "1mgm4dpsw7k79znw0h72h614i0lvivvbp8w67np2nqp411wghgaa"
   },
   "qtdatavis3d": {
     "url": "https://invent.kde.org/qt/qt/qtdatavis3d.git",
-    "rev": "a32c95d27224c6c9e41d6080ea54bc937c5d1455",
-    "sha256": "105cdvz8y48lhyn1s5w8ckcd0vk2gq7aqnmndiq45k1c8nikn2ry"
+    "rev": "502612c72a2cd3b3b0c4cff926e7764d74106d33",
+    "sha256": "0g9y0gi78v256zv70dl3fbpwr4ihs2i99pis3x4m3br5w1p7lknq"
   },
   "qtdeclarative": {
     "url": "https://invent.kde.org/qt/qt/qtdeclarative.git",
-    "rev": "c47f3d7b227c9bc86ca1702ae3291a62c2116cfa",
-    "sha256": "0izk3zxbf1h1k88qvq8p6yaza9pkm19w4f491mbazs87qwfh3dni"
+    "rev": "b3aaf1482c48bbc0ca4f7c7934597c055afe4b6a",
+    "sha256": "12ia5zr7ajlfxjsdc4qhwjcyyc7vwr4ihs244v40y8ym2p0hm02l"
   },
   "qtdoc": {
     "url": "https://invent.kde.org/qt/qt/qtdoc.git",
-    "rev": "a2a7f0f219ccedf1ecb2bc06760ef5439262aacd",
-    "sha256": "1s2jbwq83zfqg7d0mq4v60nvpg4zfa47xqgh7sglgk1s922jyj76"
+    "rev": "032bc4f434e1a914dfc29651533d491160d06add",
+    "sha256": "1r2az30pv2kvj6hif6ngmc8b2nf0rwv2rgss5mf9ks85kglvmy51"
   },
   "qtgamepad": {
     "url": "https://invent.kde.org/qt/qt/qtgamepad.git",
-    "rev": "5107ddf28177112cdbf505f92bb4191a91e6521a",
-    "sha256": "1fyyyljhl8h4rgik3i8gi2xg5r05xd2vf4qgn4ybf3yafjsra9am"
+    "rev": "0a2d4651362810600d2ff7272772d5908bb8714b",
+    "sha256": "1qzfyarc910rg308lydaniwbr49a6wl0hwh74a5w223bl9qqi5mj"
   },
   "qtgraphicaleffects": {
     "url": "https://invent.kde.org/qt/qt/qtgraphicaleffects.git",
-    "rev": "c25898224cd957491d10dbe48f2f0be66f2955de",
-    "sha256": "1cr3hykl79yr7x06hjfx9g6nq2wmb3q5hszby83hbzpf166h8zjf"
+    "rev": "e6e1e58ec28fd0f2e6426e6962cc4ccddb493349",
+    "sha256": "1780flyc57bvicvgp071590kmhgm4nfrfys2b0adbmnkwb3fm3ij"
   },
   "qtimageformats": {
     "url": "https://invent.kde.org/qt/qt/qtimageformats.git",
-    "rev": "0ee52083683c9fcd996118ef62d9e60b5431a520",
-    "sha256": "0ainvxp2sw13dx44j8waa89bni8ylxkykr6mwncsspi7da9dqxq2"
+    "rev": "9044695f4b1acdd7ec24e7b01f6a6ca61f982a75",
+    "sha256": "1rzshk2s4prglwcvr2wfr7qk0m3x3gq0d2wk741ifl7gb5nidsd5"
   },
   "qtlocation": {
     "url": "https://invent.kde.org/qt/qt/qtlocation.git",
-    "rev": "73db91329ae48f685fa3fdae1c3c63b0976dc751",
-    "sha256": "0l8amd9fsn8agxgvxmij59i12504bmzbvyc1rz6nqhcpib4z5w7l"
+    "rev": "ebdf5b38da6e3fe0a183702bcca395c589c459ed",
+    "sha256": "17igx94c3qx0ahpnkpxip4db4413q3hcr19hcs0j4wc03vkcmafr"
   },
   "qtlottie": {
     "url": "https://invent.kde.org/qt/qt/qtlottie.git",
-    "rev": "4b3d1e824fdde2c835041464a9f85feaed0b313d",
-    "sha256": "02g7znswwki86723d3p23n0hwdi6brch9whx526l92sfx308z380"
+    "rev": "d40b67401afe7156b03c62c9a4d517b07555fe64",
+    "sha256": "1w9qcx7aczkf03qwm2jzjlj9k0qb8j0x4lfrj4lw7pwggb16f6p0"
   },
   "qtmacextras": {
     "url": "https://invent.kde.org/qt/qt/qtmacextras.git",
-    "rev": "166cb4d6166cab60a66a074c848f6ed725e6755c",
-    "sha256": "09f34v5x4z3y58z6b4hriqclrf9mjncxyl4h9ph0cicam66575ms"
+    "rev": "c9bf2516187331033f0860976497eab0828cf25e",
+    "sha256": "0242gbj3rmkx4s1jzrb3kz07pl06xcfy0aqyb5xanzkg4sllrsaw"
   },
   "qtmultimedia": {
     "url": "https://invent.kde.org/qt/qt/qtmultimedia.git",
-    "rev": "16d9ea642bf7b9592a6c53321cc7ee9d9a3ed03f",
-    "sha256": "1xi2shsg0apk7rk7ccrbnjsg9j6p8svgs1pbml48ci57i36dgzfv"
+    "rev": "76f84c545429a1b988b79f971734ef4bc3e6643f",
+    "sha256": "1i1ca3n9i1rwpsxda2xm9ap3ys7a5jazbgzcwnwjb4qsxvjss6gz"
   },
   "qtnetworkauth": {
     "url": "https://invent.kde.org/qt/qt/qtnetworkauth.git",
-    "rev": "9e698881cb07ebf04319f5cfa7b065c8bc2c1afb",
-    "sha256": "0207z0mv6nfgw7vhh43sx7r8z4cmvilh31x1x24d7nxj9rggnm1b"
+    "rev": "01315e31c5164c896a524175854c4b6df17fe166",
+    "sha256": "03vpynmkcb58x13mxjsjl07kh3jymcf295z5vybssqimyijlfw0m"
   },
   "qtpurchasing": {
     "url": "https://invent.kde.org/qt/qt/qtpurchasing.git",
-    "rev": "87021fd1e50f0aa3589a2412cfa665a6d27cc740",
-    "sha256": "184mpjc0vnrmxl7z0x2c1xj2adrdx12l5swpzh51q1wb45j1lvna"
+    "rev": "fa07915d5b7c5ba16f2e8ba32a9066fe7eed0cb1",
+    "sha256": "1khpg9dfd0bgmqffzi4f2sgm8hnwzq9fqfg32y857mbc85f346bv"
   },
   "qtquick3d": {
     "url": "https://invent.kde.org/qt/qt/qtquick3d.git",
-    "rev": "1a8736a5834492aa8b7fc2dbc59a1eb4420a7330",
-    "sha256": "1byn9g46jd4krij0h1x7lfn7ac5v4rican0lppngm065is4c6c7p"
+    "rev": "5cf67a0a93026ffd41d2ea5a11b289f46a518376",
+    "sha256": "13yjb9y69by7jqw7l2qvmpi8835x7j0vxcy2slkjjw2msrj0mq2y"
   },
   "qtquickcontrols": {
     "url": "https://invent.kde.org/qt/qt/qtquickcontrols.git",
-    "rev": "4fb4e5942bfa1f92f1c759f182aa504ad52e8e3b",
-    "sha256": "1qkamv5p97p0lp7968cdjz4ah8mfqmrq23dikqvkwnirl3bffd83"
+    "rev": "e62b8b6d2f45a79652238b33f4bbe23023004ae7",
+    "sha256": "0598ckgkmqayq0c4c5fq6fyi098m74249qvz98m61bkk5629s24c"
   },
   "qtquickcontrols2": {
     "url": "https://invent.kde.org/qt/qt/qtquickcontrols2.git",
-    "rev": "59cc1cc5b3719713598a1f426d82a9d895b5dccb",
-    "sha256": "0i1k520080h0q85hifs5axnn4dysmvwhrsm0kxq28qgdpqjzkli6"
+    "rev": "74e8db97fdb9b55c4b4614b83f4bf17e00df55e9",
+    "sha256": "1f8hjsy3qyljyrpdjvwgq6a6ixlxyz3xjn32irzxx9vfxlp54wxf"
   },
   "qtquicktimeline": {
     "url": "https://invent.kde.org/qt/qt/qtquicktimeline.git",
-    "rev": "2da3c0efd5016bdba26b80789773238c2886fdf6",
-    "sha256": "0lmyw4cxgj5kcisd2pbcpl1zynj2rfa3nsfl1n2mcz6ca650ibys"
+    "rev": "87ad61716a7cba5a070d8a7b1756c8b2b48d5d53",
+    "sha256": "02rhr3qk2k3g8ydv7w3pkkk4vdlq0jbmsbp78k1difadsxhnw563"
   },
   "qtremoteobjects": {
     "url": "https://invent.kde.org/qt/qt/qtremoteobjects.git",
-    "rev": "89407ff20e4f76314887e2f3625f5126910031ac",
-    "sha256": "1qimf60hz1962l5wpdh33y6xz3h8zcnf5yj5b1i0gfyzg0c2ki5n"
+    "rev": "aa705010da0f658b78c1155babce7091ae44529a",
+    "sha256": "1lkrxjk11qwanr7l84hqxlgk9y4shgznnxhlmfkp61ysnqladilx"
   },
   "qtscript": {
     "url": "https://invent.kde.org/qt/qt/qtscript.git",
-    "rev": "5cec94b2c1503f106f4ef4778d016410ebb86211",
-    "sha256": "1xdri98cw7m78k9kfb53cgh8wyz98q3i623jhhcv01rvy1zsf8m1"
+    "rev": "197f10dad6213ec4bb2e1a8305f19ec7475a6266",
+    "sha256": "1hksdl3ran5nv0q0idrdq78nk2qqmszq911fgxwfhifqakdqxyvp"
   },
   "qtscxml": {
     "url": "https://invent.kde.org/qt/qt/qtscxml.git",
-    "rev": "bb5d10f926c51aa462a56ffb331afd4f9607855c",
-    "sha256": "0wkwkzfv5hxkhrpmy0knlxf9c7qkals5s9c0bw71k9dz8n24d7j8"
+    "rev": "631fd7bcc34802b7650c2b1dc73691463954d982",
+    "sha256": "17r19f5s2lmj6avic2sx2hm1xlcl3gnnmigvjla6gc1wr71wbgaw"
   },
   "qtsensors": {
     "url": "https://invent.kde.org/qt/qt/qtsensors.git",
-    "rev": "bce4b6231229e953c3961f3d9858e58555a55d56",
-    "sha256": "15b2scai53d10c8bv6kv4k9lc3z9bixr4364yw2pkm71mwir90ga"
+    "rev": "35eb5ac7eaef4745a38958c3ca780d7baa2e4f30",
+    "sha256": "0c6p495rmfw741xp8vfjxkac3d144id0gjccgshp8xh4syld52q9"
   },
   "qtserialbus": {
     "url": "https://invent.kde.org/qt/qt/qtserialbus.git",
-    "rev": "b6e22f07fb529736c9362d81de7f5c632bd1f439",
-    "sha256": "039kd0yk1am9s1yr39p7gwirjl3126arqf9r01xn5kcs4viizh1k"
+    "rev": "f9f7eee60adac72fcf6617d164e3bf61222bb5c5",
+    "sha256": "1ixnagxhxd54y9kn27jmhgb41zg5dzxywvai3gg7jh0v7gxr8pxp"
   },
   "qtserialport": {
     "url": "https://invent.kde.org/qt/qt/qtserialport.git",
-    "rev": "112fcd80658a52e6a2822ec79a7d724d0ad003cf",
-    "sha256": "1px0mm301401ha0qx5blhmcmbb17bd71q1smcdlxnl8a704n4nry"
+    "rev": "c9abfcd5d88cb43c2a7c1d5ddecbff4cdd320694",
+    "sha256": "180ypj7k36c64vgq5028hxh22vfc9bk8s4vczc1dzri8sw8pnpmm"
   },
   "qtspeech": {
     "url": "https://invent.kde.org/qt/qt/qtspeech.git",
-    "rev": "e76b23ad707077647cdb4282cf35a71776efa0f0",
-    "sha256": "0lnvbcx5rflx50wpbhxy7f15ax7cs4l7h44i8y9bb04njqswh0pa"
+    "rev": "d1273416f25a15a6edf6ea56a07602cd7d99fe48",
+    "sha256": "00ikp6zv96g253msfrcvxavpyw9lv2ia5pjsysmxb4vikrk7j8vr"
   },
   "qtsvg": {
     "url": "https://invent.kde.org/qt/qt/qtsvg.git",
-    "rev": "68de925ddc20dfb8900be4fa47fa5a5916836cc8",
-    "sha256": "0b0d70w2ycxac81dqd1yhswcn37055ra3jfqn5srk8wsbdhpjl1c"
+    "rev": "a9752b00a03438de8e5b080073816e12409404b7",
+    "sha256": "1m3bg2xb1sa0r3dv5jljk8hsj3gw71qqzk9bsa7j2jn50inb2fh5"
   },
   "qttools": {
     "url": "https://invent.kde.org/qt/qt/qttools.git",
-    "rev": "672ba9d902be3634a9fef80be65227aece9e0aed",
-    "sha256": "05rzr6hlipzcm0vs9k721y25hzhv916hv48gr0pbrfzljyvp2yhx"
+    "rev": "32912a06aadfc3dcbc34e0a668ce2c78351eee6e",
+    "sha256": "096gdp349n94d9y5zy9k3k1xrf5g7lbla3j1cm4dala8rrnachg5"
   },
   "qttranslations": {
     "url": "https://invent.kde.org/qt/qt/qttranslations.git",
-    "rev": "0e92fc4f19928387c341533ef3d259efaa752c0f",
-    "sha256": "0vwkf72gpn42g54lhcbgaxbx9awpzi4a0602yhssad0v3a6zrl11"
+    "rev": "d4db9d8a4893a70e7ba3a6d5fe62f24f9ce745ca",
+    "sha256": "0srprryw0fr13d3wqpdjbcc9n6mcq1cwsdd5mdilqr7bz375qz8d"
   },
   "qtvirtualkeyboard": {
     "url": "https://invent.kde.org/qt/qt/qtvirtualkeyboard.git",
-    "rev": "766c1b7acbdc9ff4e35f6eb341fd446b1c20b811",
-    "sha256": "0bdg98h5z0lwl61860iam6ixcvgis996qj8as739wn9y6k2sv904"
+    "rev": "9fbb837b55887bec5d73fad142c853ef68db35b3",
+    "sha256": "12769162183qyxgr5p1bx2p2wlnkqg3fgz86ya9g4iznx0nagx19"
   },
   "qtwayland": {
     "url": "https://invent.kde.org/qt/qt/qtwayland.git",
-    "rev": "64fa557eb30fc1219bec50a45107ea1a983411ed",
-    "sha256": "14p20mv2dwc3i0qhssl7sqa0bnk14mg0kaq7ai65fqkx5b8qn5xr"
+    "rev": "8faf74a7966b520f0ac3eb4d88235f8ec63b31b8",
+    "sha256": "1khbpg9wds1gg6z7nj58hflzhy2gjaiy3v6pa930hb1r8sisp154"
   },
   "qtwebchannel": {
     "url": "https://invent.kde.org/qt/qt/qtwebchannel.git",
-    "rev": "da9b7b0e059447dceb828bc02d40e30d26b012f2",
-    "sha256": "0kyzzz17d7s9ln6j4ply6hl3y8wky5wslpabbmwsy2952g1y3l99"
+    "rev": "fb1ca87aa1a12048199d2aabe9015b7222d2b773",
+    "sha256": "1rsx3zf0xnvayanxwpr5yniiyw2a8bwifhrkw2gzdczdyasxdfw7"
   },
   "qtwebglplugin": {
     "url": "https://invent.kde.org/qt/qt/qtwebglplugin.git",
-    "rev": "8feafc4b8e9af78175e2814523ef4f11e445fc93",
-    "sha256": "0ck9091bhgvhnwilfjrk9pjlf184bmhia9b92av0sg0m7yrg5wqd"
+    "rev": "68a322c391c2eb92876fce42b9fc23ad2f3a1ecb",
+    "sha256": "0rd1zr39nckqlxmmgxf4zhkrh8vb3098z33ajsizz9ld5ylwkyw7"
   },
   "qtwebsockets": {
     "url": "https://invent.kde.org/qt/qt/qtwebsockets.git",
-    "rev": "e5be9ba432929049da8f4788400c170bf71672da",
-    "sha256": "1jq11rhd0k880gabh839gs474psfc0j20sy65l1l7w1cffwi1zk2"
+    "rev": "a066371747a7eb9de9b1ae38fbc41b2059080802",
+    "sha256": "0cjy399xx15z2y00bvh7jn8m8wjpx65gwg4gwrn3r2zpdw8aqqrb"
   },
   "qtwebview": {
     "url": "https://invent.kde.org/qt/qt/qtwebview.git",
-    "rev": "429096eb954672d3727a3e8cc83832bc79cf7967",
-    "sha256": "0c0q3dcxz00y8wml141xk3lx91mzg4mg5qlka2k1j49cn1az6lx3"
+    "rev": "87577dde04ed219bda776dabca86176149736331",
+    "sha256": "070s9ml8ixbmd7a7b49mnc0fya4wy3mx174n50acb99mmi7ar6z3"
   },
   "qtwinextras": {
     "url": "https://invent.kde.org/qt/qt/qtwinextras.git",
-    "rev": "b41efc2b32a19da9fe369e243dcf3a2a31f7cde6",
-    "sha256": "1prsv3z51sbq9q8v1xj4v312hai6ampdcfnik28rdh7c9mpnq99m"
+    "rev": "a2ef397d1833c7417138a14ae23c880ae434d8a6",
+    "sha256": "1jqx03wwklqak8sjjlgmi55r2l07ylsfdar1j9kb0zn1krh7d9mw"
   },
   "qtx11extras": {
     "url": "https://invent.kde.org/qt/qt/qtx11extras.git",
-    "rev": "0dfaf36ec6f642a0fd583ce1cc33a31eb6b3328e",
-    "sha256": "13fzpipgvlxs9qw128hpnaxr8j4xi8v2fmyy39y1ghf66sfln1zn"
+    "rev": "982f20eb585d77e5b5c721e05a466d7161f7f2d1",
+    "sha256": "0zl4bdxvdx2kfjwkd0rxvh70580g6idrgj4m3pyyw7z2jbzawpv3"
   },
   "qtxmlpatterns": {
     "url": "https://invent.kde.org/qt/qt/qtxmlpatterns.git",
-    "rev": "a8edba5ad50d669aead4ddb769f171cba892d676",
-    "sha256": "1342b7qljjqpiq3xjwy0vblq8wqcqyp9s3751ja40n7ishhxd2yj"
+    "rev": "30e6c84fe2752cde8b53aff9d38c2095cd7c8761",
+    "sha256": "04i1282hyqqspdlvny1dz5006svq84rpqvnvlvsas83vxzhr1g1k"
   }
 }
diff --git a/pkgs/development/libraries/qt-5/5.15/srcs.nix b/pkgs/development/libraries/qt-5/5.15/srcs.nix
index 5ca0338161811..8c40a49ac0a7f 100644
--- a/pkgs/development/libraries/qt-5/5.15/srcs.nix
+++ b/pkgs/development/libraries/qt-5/5.15/srcs.nix
@@ -1,10 +1,8 @@
 { lib, fetchgit, fetchFromGitHub }:
 
 let
-  version = "5.15.5";
-  overrides = {
-    qtscript.version = "5.15.4";
-  };
+  version = "5.15.6";
+  overrides = {};
 
   mk = name: args:
     let
diff --git a/pkgs/development/libraries/qt-6/default.nix b/pkgs/development/libraries/qt-6/default.nix
index 7615c4f904311..754436cb0b962 100644
--- a/pkgs/development/libraries/qt-6/default.nix
+++ b/pkgs/development/libraries/qt-6/default.nix
@@ -49,6 +49,9 @@ let
         withGtk3 = true;
         inherit (srcs.qtbase) src version;
         inherit bison cups harfbuzz libGL dconf gtk3 developerBuild cmake;
+        patches = [
+          ./patches/qtbase-qmake-pkg-config.patch
+        ];
       };
 
       qt3d = callPackage ./modules/qt3d.nix { };
@@ -90,6 +93,14 @@ let
       wrapQtAppsHook = makeSetupHook {
           deps = [ buildPackages.makeWrapper ];
         } ./hooks/wrap-qt-apps-hook.sh;
+
+      qmake = makeSetupHook {
+        deps = [ self.qtbase.dev ];
+        substitutions = {
+          inherit debug;
+          fix_qmake_libtool = ./hooks/fix-qmake-libtool.sh;
+        };
+      } ./hooks/qmake-hook.sh;
     };
 
   self = lib.makeScope newScope addPackages;
diff --git a/pkgs/development/libraries/qt-6/hooks/fix-qmake-libtool.sh b/pkgs/development/libraries/qt-6/hooks/fix-qmake-libtool.sh
new file mode 100644
index 0000000000000..44bf10a0db068
--- /dev/null
+++ b/pkgs/development/libraries/qt-6/hooks/fix-qmake-libtool.sh
@@ -0,0 +1,25 @@
+# Fix libtool libraries generated by qmake.
+# qmake started inserting filenames of shared objects instead of the appropriate
+# linker flags. fixQmakeLibtool searches for broken libtool libraries and
+# replaces the filenames with the linker flags that should have been there.
+fixQmakeLibtool() {
+    if [ -d "$1" ]; then
+        find "$1" -name '*.la' | while read la; do
+            set +e
+            framework_libs=$(grep '^dependency_libs' "$la" | grep -Eo -- '-framework +\w+' | tr '\n' ' ')
+            set -e
+            sed -i "$la" \
+                -e '/^dependency_libs/ s,\(/[^ ]\+\)/lib\([^/ ]\+\)\.so,-L\1 -l\2,g' \
+                -e '/^dependency_libs/ s,-framework \+\w\+,,g'
+            if [ ! -z "$framework_libs" ]; then
+                if grep '^inherited_linker_flags=' $la >/dev/null; then
+                    sed -i "$la" -e "s/^\(inherited_linker_flags='[^']*\)/\1 $framework_libs/"
+                else
+                    echo "inherited_linker_flags='$framework_libs'" >>"$la"
+                fi
+            fi
+        done
+    fi
+}
+
+fixupOutputHooks+=('fixQmakeLibtool $prefix')
diff --git a/pkgs/development/libraries/qt-6/hooks/fix-qt-builtin-paths.sh b/pkgs/development/libraries/qt-6/hooks/fix-qt-builtin-paths.sh
new file mode 100644
index 0000000000000..0fd0aee7dbf9a
--- /dev/null
+++ b/pkgs/development/libraries/qt-6/hooks/fix-qt-builtin-paths.sh
@@ -0,0 +1,66 @@
+# fixQtBuiltinPaths
+#
+# Usage: fixQtBuiltinPaths _dir_ _pattern_
+#
+# Fix Qt builtin paths in files matching _pattern_ under _dir_.
+#
+fixQtBuiltinPaths() {
+    local dir="$1"
+    local pattern="$2"
+    local bin="${!outputBin}"
+    local dev="${!outputDev}"
+    local doc="${!outputDoc}"
+    local lib="${!outputLib}"
+
+    if [ -d "$dir" ]; then
+        find "$dir" -name "$pattern" | while read pr_; do
+            if grep -q '\$\$\[QT_' "${pr_:?}"; then
+                echo "fixQtBuiltinPaths: Fixing Qt builtin paths in \`${pr_:?}'..."
+                sed -i "${pr_:?}" \
+                    -e "s|\\\$\\\$\\[QT_HOST_BINS[^]]*\\]|$dev/bin|g" \
+                    -e "s|\\\$\\\$\\[QT_HOST_LIBEXECS[^]]*\\]|$dev/libexec|g" \
+                    -e "s|\\\$\\\$\\[QT_HOST_DATA[^]]*\\]/mkspecs|$dev/mkspecs|g" \
+                    -e "s|\\\$\\\$\\[QT_HOST_PREFIX[^]]*\\]|$dev|g" \
+                    -e "s|\\\$\\\$\\[QT_INSTALL_ARCHDATA[^]]*\\]|$lib|g" \
+                    -e "s|\\\$\\\$\\[QT_INSTALL_BINS[^]]*\\]|$bin/bin|g" \
+                    -e "s|\\\$\\\$\\[QT_INSTALL_CONFIGURATION[^]]*\\]|$bin|g" \
+                    -e "s|\\\$\\\$\\[QT_INSTALL_DATA[^]]*\\]|$lib|g" \
+                    -e "s|\\\$\\\$\\[QT_INSTALL_DOCS[^]]*\\]|$doc/share/doc|g" \
+                    -e "s|\\\$\\\$\\[QT_INSTALL_EXAMPLES[^]]*\\]|$doc/examples|g" \
+                    -e "s|\\\$\\\$\\[QT_INSTALL_HEADERS[^]]*\\]|$dev/include|g" \
+                    -e "s|\\\$\\\$\\[QT_INSTALL_LIBS[^]]*\\]|$lib/lib|g" \
+                    -e "s|\\\$\\\$\\[QT_INSTALL_LIBEXECS[^]]*\\]|$lib/libexec|g" \
+                    -e "s|\\\$\\\$\\[QT_INSTALL_PLUGINS[^]]*\\]|$bin/$qtPluginPrefix|g" \
+                    -e "s|\\\$\\\$\\[QT_INSTALL_PREFIX[^]]*\\]|$lib|g" \
+                    -e "s|\\\$\\\$\\[QT_INSTALL_TESTS[^]]*\\]|$dev/tests|g" \
+                    -e "s|\\\$\\\$\\[QT_INSTALL_TRANSLATIONS[^]]*\\]|$lib/translations|g" \
+                    -e "s|\\\$\\\$\\[QT_INSTALL_QML[^]]*\\]|$bin/$qtQmlPrefix|g"
+            fi
+        done
+    elif [ -e "$dir" ]; then
+        if grep -q '\$\$\[QT_' "${dir:?}"; then
+            echo "fixQtBuiltinPaths: Fixing Qt builtin paths in \`${dir:?}'..."
+            sed -i "${dir:?}" \
+                -e "s|\\\$\\\$\\[QT_HOST_BINS[^]]*\\]|$dev/bin|g" \
+                -e "s|\\\$\\\$\\[QT_HOST_LIBEXECS[^]]*\\]|$dev/libexec|g" \
+                -e "s|\\\$\\\$\\[QT_HOST_DATA[^]]*\\]/mkspecs|$dev/mkspecs|g" \
+                -e "s|\\\$\\\$\\[QT_HOST_PREFIX[^]]*\\]|$dev|g" \
+                -e "s|\\\$\\\$\\[QT_INSTALL_ARCHDATA[^]]*\\]|$lib|g" \
+                -e "s|\\\$\\\$\\[QT_INSTALL_BINS[^]]*\\]|$bin/bin|g" \
+                -e "s|\\\$\\\$\\[QT_INSTALL_CONFIGURATION[^]]*\\]|$bin|g" \
+                -e "s|\\\$\\\$\\[QT_INSTALL_DATA[^]]*\\]|$lib|g" \
+                -e "s|\\\$\\\$\\[QT_INSTALL_DOCS[^]]*\\]|$doc/share/doc|g" \
+                -e "s|\\\$\\\$\\[QT_INSTALL_EXAMPLES[^]]*\\]|$doc/examples|g" \
+                -e "s|\\\$\\\$\\[QT_INSTALL_HEADERS[^]]*\\]|$dev/include|g" \
+                -e "s|\\\$\\\$\\[QT_INSTALL_LIBS[^]]*\\]|$lib/lib|g" \
+                -e "s|\\\$\\\$\\[QT_INSTALL_LIBEXECS[^]]*\\]|$lib/libexec|g" \
+                -e "s|\\\$\\\$\\[QT_INSTALL_PLUGINS[^]]*\\]|$bin/$qtPluginPrefix|g" \
+                -e "s|\\\$\\\$\\[QT_INSTALL_PREFIX[^]]*\\]|$lib|g" \
+                -e "s|\\\$\\\$\\[QT_INSTALL_TESTS[^]]*\\]|$dev/tests|g" \
+                -e "s|\\\$\\\$\\[QT_INSTALL_TRANSLATIONS[^]]*\\]|$lib/translations|g" \
+                -e "s|\\\$\\\$\\[QT_INSTALL_QML[^]]*\\]|$bin/$qtQmlPrefix|g"
+        fi
+    else
+        echo "fixQtBuiltinPaths: Warning: \`$dir' does not exist"
+    fi
+}
diff --git a/pkgs/development/libraries/qt-6/hooks/fix-qt-module-paths.sh b/pkgs/development/libraries/qt-6/hooks/fix-qt-module-paths.sh
new file mode 100644
index 0000000000000..0a0e0d51e27da
--- /dev/null
+++ b/pkgs/development/libraries/qt-6/hooks/fix-qt-module-paths.sh
@@ -0,0 +1,36 @@
+# fixQtModulePaths
+#
+# Usage: fixQtModulePaths _dir_
+#
+# Find Qt module definitions in directory _dir_ and patch the module paths.
+#
+fixQtModulePaths() {
+    local dir="$1"
+    local bin="${!outputBin}"
+    local dev="${!outputDev}"
+    local lib="${!outputLib}"
+
+    if [ -d "$dir" ]; then
+        find "$dir" -name 'qt_*.pri' | while read pr; do
+            if grep -q '\$\$QT_MODULE_' "${pr:?}"; then
+                echo "fixQtModulePaths: Fixing module paths in \`${pr:?}'..."
+                sed -i "${pr:?}" \
+                    -e "s|\\\$\\\$QT_MODULE_LIB_BASE|$lib/lib|g" \
+                    -e "s|\\\$\\\$QT_MODULE_HOST_LIB_BASE|$lib/lib|g" \
+                    -e "s|\\\$\\\$QT_MODULE_INCLUDE_BASE|$dev/include|g" \
+                    -e "s|\\\$\\\$QT_MODULE_BIN_BASE|$dev/bin|g"
+            fi
+        done
+    elif [ -e "$dir" ]; then
+        echo "fixQtModulePaths: Warning: \`$dir' is not a directory"
+    else
+        echo "fixQtModulePaths: Warning: \`$dir' does not exist"
+    fi
+
+    if [ "z$bin" != "z$dev" ]; then
+        if [ -d "$bin/bin" ]; then
+            mkdir -p "$dev/bin"
+            lndir -silent "$bin/bin" "$dev/bin"
+        fi
+    fi
+}
diff --git a/pkgs/development/libraries/qt-6/hooks/move-qt-dev-tools.sh b/pkgs/development/libraries/qt-6/hooks/move-qt-dev-tools.sh
new file mode 100644
index 0000000000000..85489c85105bc
--- /dev/null
+++ b/pkgs/development/libraries/qt-6/hooks/move-qt-dev-tools.sh
@@ -0,0 +1,34 @@
+updateToolPath() {
+    local tool="$1"
+    local target="$2"
+    local original="${!outputBin}/$tool"
+    local actual="${!outputDev}/$tool"
+    if grep -q "$original" "$target"; then
+        echo "updateToolPath: Updating \`$original' in \`$target\'..."
+        sed -i "$target" -e "s|$original|$actual|"
+    fi
+}
+
+moveQtDevTools() {
+    if [ -n "$devTools" ]; then
+        for tool in $devTools; do
+            moveToOutput "$tool" "${!outputDev}"
+        done
+
+        if [ -d "${!outputDev}/mkspecs" ]; then
+            find "${!outputDev}/mkspecs" -name '*.pr?' | while read pr_; do
+                for tool in $devTools; do
+                    updateToolPath "$tool" "$pr_"
+                done
+            done
+        fi
+
+        if [ -d "${!outputDev}/lib/cmake" ]; then
+            find "${!outputDev}/lib/cmake" -name '*.cmake' | while read cmake; do
+                for tool in $devTools; do
+                    updateToolPath "$tool" "$cmake"
+                done
+            done
+        fi
+    fi
+}
diff --git a/pkgs/development/libraries/qt-6/hooks/qmake-hook.sh b/pkgs/development/libraries/qt-6/hooks/qmake-hook.sh
new file mode 100644
index 0000000000000..ec1d2ea6124ea
--- /dev/null
+++ b/pkgs/development/libraries/qt-6/hooks/qmake-hook.sh
@@ -0,0 +1,48 @@
+. @fix_qmake_libtool@
+
+qmakeFlags=(${qmakeFlags-})
+
+qmakePrePhase() {
+    qmakeFlags_orig=("${qmakeFlags[@]}")
+
+    # These flags must be added _before_ the flags specified in the derivation.
+    # TODO: these flags also need a patch which isn't applied
+    # can we either remove these flags or update the qt5 patch?
+    # "NIX_OUTPUT_DOC=${!outputDev}/${qtDocPrefix:?}" \
+    qmakeFlags=(
+        "PREFIX=$out"
+        "NIX_OUTPUT_OUT=$out"
+        "NIX_OUTPUT_DEV=${!outputDev}"
+        "NIX_OUTPUT_BIN=${!outputBin}"
+        "NIX_OUTPUT_QML=${!outputBin}/${qtQmlPrefix:?}"
+        "NIX_OUTPUT_PLUGIN=${!outputBin}/${qtPluginPrefix:?}"
+    )
+
+    if [ -n "@debug@" ]; then
+        qmakeFlags+=("CONFIG+=debug")
+    else
+        qmakeFlags+=("CONFIG+=release")
+    fi
+
+    qmakeFlags+=("${qmakeFlags_orig[@]}")
+}
+prePhases+=" qmakePrePhase"
+
+qmakeConfigurePhase() {
+    runHook preConfigure
+
+    echo "QMAKEPATH=$QMAKEPATH"
+    echo qmake "${qmakeFlags[@]}"
+    qmake "${qmakeFlags[@]}"
+
+    if ! [[ -v enableParallelBuilding ]]; then
+        enableParallelBuilding=1
+        echo "qmake: enabled parallel building"
+    fi
+
+    runHook postConfigure
+}
+
+if [ -z "${dontUseQmakeConfigure-}" -a -z "${configurePhase-}" ]; then
+    configurePhase=qmakeConfigurePhase
+fi
diff --git a/pkgs/development/libraries/qt-6/hooks/qtbase-setup-hook.sh b/pkgs/development/libraries/qt-6/hooks/qtbase-setup-hook.sh
index 0ae969e8f8fcc..613b42fc97e93 100644
--- a/pkgs/development/libraries/qt-6/hooks/qtbase-setup-hook.sh
+++ b/pkgs/development/libraries/qt-6/hooks/qtbase-setup-hook.sh
@@ -7,37 +7,87 @@ if [[ -n "${__nix_qtbase-}" ]]; then
         exit 1
     fi
 else # Only set up Qt once.
-__nix_qtbase="@dev@"
+    __nix_qtbase="@dev@"
 
-qtPluginPrefix=@qtPluginPrefix@
-qtQmlPrefix=@qtQmlPrefix@
+    qtPluginPrefix=@qtPluginPrefix@
+    qtQmlPrefix=@qtQmlPrefix@
 
-# Disable debug symbols if qtbase was built without debugging.
-# This stops -dev paths from leaking into other outputs.
-if [ -z "@debug@" ]; then
-    NIX_CFLAGS_COMPILE="${NIX_CFLAGS_COMPILE-}${NIX_CFLAGS_COMPILE:+ }-DQT_NO_DEBUG"
-fi
+    . @fix_qt_builtin_paths@
+    . @fix_qt_module_paths@
 
-# Integration with CMake:
-# Set the CMake build type corresponding to how qtbase was built.
-if [ -n "@debug@" ]; then
-    cmakeBuildType="Debug"
-else
-    cmakeBuildType="Release"
-fi
+    # Disable debug symbols if qtbase was built without debugging.
+    # This stops -dev paths from leaking into other outputs.
+    if [ -z "@debug@" ]; then
+        NIX_CFLAGS_COMPILE="${NIX_CFLAGS_COMPILE-}${NIX_CFLAGS_COMPILE:+ }-DQT_NO_DEBUG"
+    fi
 
-qtPreHook() {
-    # Check that wrapQtAppsHook is used, or it is explicitly disabled.
-    if [[ -z "$__nix_wrapQtAppsHook" && -z "$dontWrapQtApps" ]]; then
-        echo >&2 "Error: wrapQtAppsHook is not used, and dontWrapQtApps is not set."
-        exit 1
+    # Integration with CMake:
+    # Set the CMake build type corresponding to how qtbase was built.
+    if [ -n "@debug@" ]; then
+        cmakeBuildType="Debug"
+    else
+        cmakeBuildType="Release"
+    fi
+
+    # Build tools are often confused if QMAKE is unset.
+    export QMAKE=@dev@/bin/qmake
+
+    export QMAKEPATH=
+
+    export QMAKEMODULES=
+
+    declare -Ag qmakePathSeen=()
+    qmakePathHook() {
+        # Skip this path if we have seen it before.
+        # MUST use 'if' because 'qmakePathSeen[$]' may be unset.
+        if [ -n "${qmakePathSeen[$1]-}" ]; then return; fi
+        qmakePathSeen[$1]=1
+        if [ -d "$1/mkspecs" ]; then
+            QMAKEMODULES="${QMAKEMODULES}${QMAKEMODULES:+:}/mkspecs"
+            QMAKEPATH="${QMAKEPATH}${QMAKEPATH:+:}$1"
+        fi
+    }
+    envBuildHostHooks+=(qmakePathHook)
+
+    postPatchMkspecs() {
+        # Prevent this hook from running multiple times
+        dontPatchMkspecs=1
+
+        local bin="${!outputBin}"
+        local dev="${!outputDev}"
+        local doc="${!outputDoc}"
+        local lib="${!outputLib}"
+
+        moveToOutput "mkspecs" "$dev"
+
+        if [ -d "$dev/mkspecs/modules" ]; then
+            fixQtModulePaths "$dev/mkspecs/modules"
+        fi
+
+        if [ -d "$dev/mkspecs" ]; then
+            fixQtBuiltinPaths "$dev/mkspecs" '*.pr?'
+        fi
+
+        if [ -d "$lib" ]; then
+            fixQtBuiltinPaths "$lib" '*.pr?'
+        fi
+    }
+    if [ -z "${dontPatchMkspecs-}" ]; then
+        postPhases="${postPhases-}${postPhases:+ }postPatchMkspecs"
     fi
-}
-prePhases+=" qtPreHook"
 
-addQtModulePrefix () {
-    addToSearchPath QT_ADDITIONAL_PACKAGES_PREFIX_PATH $1
-}
-addEnvHooks "$hostOffset" addQtModulePrefix
+    qtPreHook() {
+        # Check that wrapQtAppsHook is used, or it is explicitly disabled.
+        if [[ -z "$__nix_wrapQtAppsHook" && -z "$dontWrapQtApps" ]]; then
+            echo >&2 "Error: wrapQtAppsHook is not used, and dontWrapQtApps is not set."
+            exit 1
+        fi
+    }
+    prePhases+=" qtPreHook"
+
+    addQtModulePrefix() {
+        addToSearchPath QT_ADDITIONAL_PACKAGES_PREFIX_PATH $1
+    }
+    addEnvHooks "$hostOffset" addQtModulePrefix
 
 fi
diff --git a/pkgs/development/libraries/qt-6/hooks/wrap-qt-apps-hook.sh b/pkgs/development/libraries/qt-6/hooks/wrap-qt-apps-hook.sh
index b669da3d058c8..8b135a7d7492f 100644
--- a/pkgs/development/libraries/qt-6/hooks/wrap-qt-apps-hook.sh
+++ b/pkgs/development/libraries/qt-6/hooks/wrap-qt-apps-hook.sh
@@ -1,110 +1,99 @@
 if [[ -z "${__nix_wrapQtAppsHook-}" ]]; then
-__nix_wrapQtAppsHook=1  # Don't run this hook more than once.
+    __nix_wrapQtAppsHook=1 # Don't run this hook more than once.
 
-# Inherit arguments given in mkDerivation
-qtWrapperArgs=( ${qtWrapperArgs-} )
+    # Inherit arguments given in mkDerivation
+    qtWrapperArgs=(${qtWrapperArgs-})
 
-qtHostPathSeen=()
+    qtHostPathSeen=()
 
-qtUnseenHostPath() {
-    for pkg in "${qtHostPathSeen[@]}"
-    do
-        if [ "${pkg:?}" == "$1" ]
-        then
-            return 1
-        fi
-    done
-
-    qtHostPathSeen+=("$1")
-    return 0
-}
-
-qtHostPathHook() {
-    qtUnseenHostPath "$1" || return 0
-
-    if ! [ -v qtPluginPrefix ]
-    then
-        echo "wrapQtAppsHook qtHostPathHook: qtPluginPrefix is unset. hint: add qt6.qtbase to buildInputs"
-    fi
-
-    local pluginDir="$1/${qtPluginPrefix:?}"
-    if [ -d "$pluginDir" ]
-    then
-        qtWrapperArgs+=(--prefix QT_PLUGIN_PATH : "$pluginDir")
-    fi
-
-    local qmlDir="$1/${qtQmlPrefix:?}"
-    if [ -d "$qmlDir" ]
-    then
-        qtWrapperArgs+=(--prefix QML2_IMPORT_PATH : "$qmlDir")
-    fi
-}
-addEnvHooks "$targetOffset" qtHostPathHook
-
-makeQtWrapper() {
-    local original="$1"
-    local wrapper="$2"
-    shift 2
-    makeWrapper "$original" "$wrapper" "${qtWrapperArgs[@]}" "$@"
-}
-
-wrapQtApp() {
-    local program="$1"
-    shift 1
-    wrapProgram "$program" "${qtWrapperArgs[@]}" "$@"
-}
-
-qtOwnPathsHook() {
-    local xdgDataDir="${!outputBin}/share"
-    if [ -d "$xdgDataDir" ]
-    then
-        qtWrapperArgs+=(--prefix XDG_DATA_DIRS : "$xdgDataDir")
-    fi
-
-    local xdgConfigDir="${!outputBin}/etc/xdg"
-    if [ -d "$xdgConfigDir" ]
-    then
-        qtWrapperArgs+=(--prefix XDG_CONFIG_DIRS : "$xdgConfigDir")
-    fi
-
-    qtHostPathHook "${!outputBin}"
-}
-
-preFixupPhases+=" qtOwnPathsHook"
-
-# Note: $qtWrapperArgs still gets defined even if ${dontWrapQtApps-} is set.
-wrapQtAppsHook() {
-    # skip this hook when requested
-    [ -z "${dontWrapQtApps-}" ] || return 0
-
-    # guard against running multiple times (e.g. due to propagation)
-    [ -z "$wrapQtAppsHookHasRun" ] || return 0
-    wrapQtAppsHookHasRun=1
-
-    local targetDirs=( "$prefix/bin" "$prefix/sbin" "$prefix/libexec" "$prefix/Applications" "$prefix/"*.app )
-    echo "wrapping Qt applications in ${targetDirs[@]}"
-
-    for targetDir in "${targetDirs[@]}"
-    do
-        [ -d "$targetDir" ] || continue
-
-        find "$targetDir" ! -type d -executable -print0 | while IFS= read -r -d '' file
-        do
-            if [ -f "$file" ]
-            then
-                echo "wrapping $file"
-                wrapQtApp "$file"
-            elif [ -h "$file" ]
-            then
-                target="$(readlink -e "$file")"
-                echo "wrapping $file -> $target"
-                rm "$file"
-                makeQtWrapper "$target" "$file"
+    qtUnseenHostPath() {
+        for pkg in "${qtHostPathSeen[@]}"; do
+            if [ "${pkg:?}" == "$1" ]; then
+                return 1
             fi
         done
-    done
-}
 
-fixupOutputHooks+=(wrapQtAppsHook)
+        qtHostPathSeen+=("$1")
+        return 0
+    }
+
+    qtHostPathHook() {
+        qtUnseenHostPath "$1" || return 0
+
+        if ! [ -v qtPluginPrefix ]; then
+            echo "wrapQtAppsHook qtHostPathHook: qtPluginPrefix is unset. hint: add qt6.qtbase to buildInputs"
+        fi
+
+        local pluginDir="$1/${qtPluginPrefix:?}"
+        if [ -d "$pluginDir" ]; then
+            qtWrapperArgs+=(--prefix QT_PLUGIN_PATH : "$pluginDir")
+        fi
+
+        local qmlDir="$1/${qtQmlPrefix:?}"
+        if [ -d "$qmlDir" ]; then
+            qtWrapperArgs+=(--prefix QML2_IMPORT_PATH : "$qmlDir")
+        fi
+    }
+    addEnvHooks "$targetOffset" qtHostPathHook
+
+    makeQtWrapper() {
+        local original="$1"
+        local wrapper="$2"
+        shift 2
+        makeWrapper "$original" "$wrapper" "${qtWrapperArgs[@]}" "$@"
+    }
+
+    wrapQtApp() {
+        local program="$1"
+        shift 1
+        wrapProgram "$program" "${qtWrapperArgs[@]}" "$@"
+    }
+
+    qtOwnPathsHook() {
+        local xdgDataDir="${!outputBin}/share"
+        if [ -d "$xdgDataDir" ]; then
+            qtWrapperArgs+=(--prefix XDG_DATA_DIRS : "$xdgDataDir")
+        fi
+
+        local xdgConfigDir="${!outputBin}/etc/xdg"
+        if [ -d "$xdgConfigDir" ]; then
+            qtWrapperArgs+=(--prefix XDG_CONFIG_DIRS : "$xdgConfigDir")
+        fi
+
+        qtHostPathHook "${!outputBin}"
+    }
+
+    preFixupPhases+=" qtOwnPathsHook"
+
+    # Note: $qtWrapperArgs still gets defined even if ${dontWrapQtApps-} is set.
+    wrapQtAppsHook() {
+        # skip this hook when requested
+        [ -z "${dontWrapQtApps-}" ] || return 0
+
+        # guard against running multiple times (e.g. due to propagation)
+        [ -z "$wrapQtAppsHookHasRun" ] || return 0
+        wrapQtAppsHookHasRun=1
+
+        local targetDirs=("$prefix/bin" "$prefix/sbin" "$prefix/libexec" "$prefix/Applications" "$prefix/"*.app)
+        echo "wrapping Qt applications in ${targetDirs[@]}"
+
+        for targetDir in "${targetDirs[@]}"; do
+            [ -d "$targetDir" ] || continue
+
+            find "$targetDir" ! -type d -executable -print0 | while IFS= read -r -d '' file; do
+                if [ -f "$file" ]; then
+                    echo "wrapping $file"
+                    wrapQtApp "$file"
+                elif [ -h "$file" ]; then
+                    target="$(readlink -e "$file")"
+                    echo "wrapping $file -> $target"
+                    rm "$file"
+                    makeQtWrapper "$target" "$file"
+                fi
+            done
+        done
+    }
+
+    fixupOutputHooks+=(wrapQtAppsHook)
 
 fi
diff --git a/pkgs/development/libraries/qt-6/modules/qtbase.nix b/pkgs/development/libraries/qt-6/modules/qtbase.nix
index cdae37ba54d28..8717b94545b62 100644
--- a/pkgs/development/libraries/qt-6/modules/qtbase.nix
+++ b/pkgs/development/libraries/qt-6/modules/qtbase.nix
@@ -182,6 +182,15 @@ stdenv.mkDerivation rec {
     substituteInPlace src/corelib/CMakeLists.txt --replace /bin/ls ${coreutils}/bin/ls
   '';
 
+  fix_qt_builtin_paths = ../hooks/fix-qt-builtin-paths.sh;
+  fix_qt_module_paths = ../hooks/fix-qt-module-paths.sh;
+  preHook = ''
+    . "$fix_qt_builtin_paths"
+    . "$fix_qt_module_paths"
+    . ${../hooks/move-qt-dev-tools.sh}
+    . ${../hooks/fix-qmake-libtool.sh}
+  '';
+
   qtPluginPrefix = "lib/qt-6/plugins";
   qtQmlPrefix = "lib/qt-6/qml";
 
@@ -199,8 +208,46 @@ stdenv.mkDerivation rec {
   outputs = [ "out" "dev" ];
 
   postInstall = ''
-    mkdir -p $dev
-    mv $out/mkspecs $out/bin $out/libexec $dev/
+    moveToOutput "mkspecs" "$dev"
+  '';
+
+  devTools = [
+    "libexec/moc"
+    "libexec/rcc"
+    "libexec/syncqt.pl"
+    "libexec/qlalr"
+    "libexec/ensure_pro_file.cmake"
+    "libexec/cmake_automoc_parser"
+    "libexec/qvkgen"
+    "libexec/tracegen"
+    "libexec/uic"
+    "bin/fixqt4headers.pl"
+    "bin/moc"
+    "bin/qdbuscpp2xml"
+    "bin/qdbusxml2cpp"
+    "bin/qlalr"
+    "bin/qmake"
+    "bin/rcc"
+    "bin/syncqt.pl"
+    "bin/uic"
+  ];
+
+  postFixup = ''
+    # Don't retain build-time dependencies like gdb.
+    sed '/QMAKE_DEFAULT_.*DIRS/ d' -i $dev/mkspecs/qconfig.pri
+    fixQtModulePaths "''${!outputDev}/mkspecs/modules"
+    fixQtBuiltinPaths "''${!outputDev}" '*.pr?'
+
+    # Move development tools to $dev
+    moveQtDevTools
+    moveToOutput bin "$dev"
+    moveToOutput libexec "$dev"
+
+    # fixup .pc file (where to find 'moc' etc.)
+    sed -i "$dev/lib/pkgconfig/Qt6Core.pc" \
+      -e "/^bindir=/ c bindir=$dev/bin"
+
+    patchShebangs $out $dev
   '';
 
   dontStrip = debugSymbols;
@@ -211,7 +258,7 @@ stdenv.mkDerivation rec {
     homepage = "https://www.qt.io/";
     description = "A cross-platform application framework for C++";
     license = with licenses; [ fdl13 gpl2 lgpl21 lgpl3 ];
-    maintainers = with maintainers; [ milahu nickcao ];
+    maintainers = with maintainers; [ milahu nickcao LunNova ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/qt-6/modules/qtdeclarative.nix b/pkgs/development/libraries/qt-6/modules/qtdeclarative.nix
index 3f691894ff86c..b76baea499306 100644
--- a/pkgs/development/libraries/qt-6/modules/qtdeclarative.nix
+++ b/pkgs/development/libraries/qt-6/modules/qtdeclarative.nix
@@ -12,8 +12,24 @@ qtModule {
   preConfigure = ''
     export LD_LIBRARY_PATH="$PWD/build/lib''${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH"
   '';
+  cmakeFlags = [
+    "-DQT6_INSTALL_PREFIX=${placeholder "out"}"
+    "-DQT_INSTALL_PREFIX=${placeholder "out"}"
+  ];
   postInstall = ''
     substituteInPlace "$out/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake" \
-      --replace ''\'''${QT6_INSTALL_PREFIX}' "$out"
+      --replace ''\'''${QT6_INSTALL_PREFIX}' "$dev"
   '';
+  devTools = [
+    "bin/qml"
+    "bin/qmlcachegen"
+    "bin/qmleasing"
+    "bin/qmlimportscanner"
+    "bin/qmllint"
+    "bin/qmlmin"
+    "bin/qmlplugindump"
+    "bin/qmlprofiler"
+    "bin/qmlscene"
+    "bin/qmltestrunner"
+  ];
 }
diff --git a/pkgs/development/libraries/qt-6/modules/qtlanguageserver.nix b/pkgs/development/libraries/qt-6/modules/qtlanguageserver.nix
index b2e6e450d5f77..07115d6755a56 100644
--- a/pkgs/development/libraries/qt-6/modules/qtlanguageserver.nix
+++ b/pkgs/development/libraries/qt-6/modules/qtlanguageserver.nix
@@ -5,4 +5,7 @@
 qtModule {
   pname = "qtlanguageserver";
   qtInputs = [ qtbase ];
+
+  # Doesn't have version set
+  dontCheckQtModuleVersion = true;
 }
diff --git a/pkgs/development/libraries/qt-6/modules/qtwebengine.nix b/pkgs/development/libraries/qt-6/modules/qtwebengine.nix
index e4b56e7e7664b..c365f3c068532 100644
--- a/pkgs/development/libraries/qt-6/modules/qtwebengine.nix
+++ b/pkgs/development/libraries/qt-6/modules/qtwebengine.nix
@@ -69,7 +69,7 @@
 , enableProprietaryCodecs ? true
 }:
 
-qtModule rec {
+qtModule {
   pname = "qtwebengine";
   qtInputs = [ qtdeclarative qtwebchannel qtwebsockets qtpositioning ];
   nativeBuildInputs = [
@@ -94,6 +94,12 @@ qtModule rec {
   # which cannot be set at the same time as -Wformat-security
   hardeningDisable = [ "format" ];
 
+  patches = [
+    # fixes consistent crashing in github on 6.4.0, can probably remove when there is a patch release
+    # https://codereview.qt-project.org/c/qt/qtwebengine/+/436316
+    ../patches/qtwebengine-fix.patch
+  ];
+
   postPatch = ''
     # Patch Chromium build tools
     (
diff --git a/pkgs/development/libraries/qt-6/cmake.patch b/pkgs/development/libraries/qt-6/patches/cmake.patch
index 1fb2ea26c35df..1fb2ea26c35df 100644
--- a/pkgs/development/libraries/qt-6/cmake.patch
+++ b/pkgs/development/libraries/qt-6/patches/cmake.patch
diff --git a/pkgs/development/libraries/qt-6/patches/qtbase-qmake-pkg-config.patch b/pkgs/development/libraries/qt-6/patches/qtbase-qmake-pkg-config.patch
new file mode 100644
index 0000000000000..90caaea1cf4d4
--- /dev/null
+++ b/pkgs/development/libraries/qt-6/patches/qtbase-qmake-pkg-config.patch
@@ -0,0 +1,14 @@
+diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp
+--- a/qmake/generators/makefile.cpp
++++ b/qmake/generators/makefile.cpp
+@@ -3390,8 +3390,7 @@ MakefileGenerator::writePkgConfigFile()
+       << varGlue("QMAKE_PKGCONFIG_CFLAGS", "", " ", " ")
+         //      << varGlue("DEFINES","-D"," -D"," ")
+          ;
+-    if (!project->values("QMAKE_DEFAULT_INCDIRS").contains(includeDir))
+-        t << "-I${includedir}";
++    t << "-I${includedir}";
+     if (target_mode == TARG_MAC_MODE && project->isActiveConfig("lib_bundle")
+         && libDir != QLatin1String("/Library/Frameworks")) {
+             t << " -F${libdir}";
+
diff --git a/pkgs/development/libraries/qt-6/patches/qtwebengine-fix.patch b/pkgs/development/libraries/qt-6/patches/qtwebengine-fix.patch
new file mode 100644
index 0000000000000..672421ed43d46
--- /dev/null
+++ b/pkgs/development/libraries/qt-6/patches/qtwebengine-fix.patch
@@ -0,0 +1,28 @@
+From 81bf140583f7b7bf13cc8dd522e1ca2aba873fc4 Mon Sep 17 00:00:00 2001
+From: Martin Negyokru <negyokru@inf.u-szeged.hu>
+Date: Mon, 03 Oct 2022 12:20:00 +0200
+Subject: [PATCH] Do not intercept websocket connection when there is no associated frame
+
+This fix is based on chrome's implementation.
+
+Fixes: QTBUG-107144
+Change-Id: If042e4156b8a4bdb27a210c4db94e3a6198aed7d
+Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
+(cherry picked from commit 64b7da9dab82713fdcb2e03d8a2715421eae5685)
+Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
+---
+
+diff --git a/src/core/content_browser_client_qt.cpp b/src/core/content_browser_client_qt.cpp
+index 020ae91..99a3aa3 100644
+--- a/src/core/content_browser_client_qt.cpp
++++ b/src/core/content_browser_client_qt.cpp
+@@ -1237,8 +1237,7 @@
+ 
+ bool ContentBrowserClientQt::WillInterceptWebSocket(content::RenderFrameHost *frame)
+ {
+-    Q_UNUSED(frame);
+-    return true; // It is probably not worth it to only intercept when interceptors are installed
++    return frame != nullptr;
+ }
+ 
+ QWebEngineUrlRequestInterceptor *getProfileInterceptorFromFrame(content::RenderFrameHost *frame)
diff --git a/pkgs/development/libraries/qt-6/qtModule.nix b/pkgs/development/libraries/qt-6/qtModule.nix
index 04349ed68ad29..999d69ce683a9 100644
--- a/pkgs/development/libraries/qt-6/qtModule.nix
+++ b/pkgs/development/libraries/qt-6/qtModule.nix
@@ -18,9 +18,15 @@ stdenv.mkDerivation (args // {
     perl
     cmake
     ninja
+    self.qmake
   ];
   propagatedBuildInputs = args.qtInputs ++ (args.propagatedBuildInputs or [ ]);
 
+  preHook = ''
+    . ${./hooks/move-qt-dev-tools.sh}
+    . ${./hooks/fix-qt-builtin-paths.sh}
+  '';
+
   outputs = args.outputs or [ "out" "dev" ];
 
   dontWrapQtApps = args.dontWrapQtApps or true;
@@ -32,9 +38,46 @@ stdenv.mkDerivation (args // {
         moveToOutput "$dir" "$dev"
       done
     fi
+    fixQtBuiltinPaths $out/lib "*.pr?"
     ${args.postInstall or ""}
   '';
 
+  preConfigure = args.preConfigure or "" + ''
+    fixQtBuiltinPaths . '*.pr?'
+  '' + lib.optionalString (builtins.compareVersions "5.15.0" version <= 0)
+    # Note: We use ${version%%-*} to remove any tag from the end of the version
+    # string. Version tags are added by Nixpkgs maintainers and not reflected in
+    # the source version.
+    ''
+      if [[ -z "$dontCheckQtModuleVersion" ]] \
+          && grep -q '^MODULE_VERSION' .qmake.conf 2>/dev/null \
+          && ! grep -q -F "''${version%%-*}" .qmake.conf 2>/dev/null
+      then
+        echo >&2 "error: could not find version ''${version%%-*} in .qmake.conf"
+        echo >&2 "hint: check .qmake.conf and update the package version in Nixpkgs"
+        exit 1
+      fi
+
+      if [[ -z "$dontSyncQt" && -f sync.profile ]]; then
+        # FIXME: this probably breaks crosscompiling as it's not from nativeBuildInputs
+        # I don't know how to get /libexec from nativeBuildInputs to work, it's not under /bin
+        ${self.qtbase.dev.nativeDrv or self.qtbase.dev}/libexec/syncqt.pl -version "''${version%%-*}"
+      fi
+    '';
+
+  postFixup = ''
+    if [ -d "''${!outputDev}/lib/pkgconfig" ]; then
+      find "''${!outputDev}/lib/pkgconfig" -name '*.pc' | while read pc; do
+        sed -i "$pc" \
+          -e "/^prefix=/ c prefix=''${!outputLib}" \
+          -e "/^exec_prefix=/ c exec_prefix=''${!outputBin}" \
+          -e "/^includedir=/ c includedir=''${!outputDev}/include"
+      done
+    fi
+
+    moveQtDevTools
+  '' + args.postFixup or "";
+
   meta = with lib; {
     homepage = "https://www.qt.io/";
     description = "A cross-platform application framework for C++";
diff --git a/pkgs/development/libraries/rocksdb/default.nix b/pkgs/development/libraries/rocksdb/default.nix
index 742ebe05ab736..1da9b869a0db1 100644
--- a/pkgs/development/libraries/rocksdb/default.nix
+++ b/pkgs/development/libraries/rocksdb/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "rocksdb";
-  version = "7.6.0";
+  version = "7.7.2";
 
   src = fetchFromGitHub {
     owner = "facebook";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-35GpPSL5r2LnpooMVux+a7oH8b+mkKVLiinzRKJaUJQ=";
+    sha256 = "sha256-Cla2yat/xCrzx53mYRKjcvH9cCY0MVD8RSMjGfxVDUM=";
   };
 
   nativeBuildInputs = [ cmake ninja ];
diff --git a/pkgs/development/libraries/science/astronomy/indilib/default.nix b/pkgs/development/libraries/science/astronomy/indilib/default.nix
index b519cf9596951..194a9a0c15cf0 100644
--- a/pkgs/development/libraries/science/astronomy/indilib/default.nix
+++ b/pkgs/development/libraries/science/astronomy/indilib/default.nix
@@ -6,6 +6,7 @@
 , libusb1
 , zlib
 , boost
+, libev
 , libnova
 , curl
 , libjpeg
@@ -15,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "indilib";
-  version = "1.9.6";
+  version = "1.9.8";
 
   src = fetchFromGitHub {
     owner = "indilib";
     repo = "indi";
     rev = "v${version}";
-    sha256 = "sha256-rElxc9q4i8FjjPmLXhu6GnHps6t3NWkfxtqAAeRq77M=";
+    sha256 = "sha256-+KFuZgM/Bl6Oezq3WXjWCHefc1wvR3wOKXejmT0pw1U=";
   };
 
   nativeBuildInputs = [
@@ -31,6 +32,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     curl
     cfitsio
+    libev
     libusb1
     zlib
     boost
diff --git a/pkgs/development/libraries/science/astronomy/indilib/indi-firmware.nix b/pkgs/development/libraries/science/astronomy/indilib/indi-firmware.nix
index d23673ac37ae8..660433c2dd599 100644
--- a/pkgs/development/libraries/science/astronomy/indilib/indi-firmware.nix
+++ b/pkgs/development/libraries/science/astronomy/indilib/indi-firmware.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
   ];
 
   postPatch = ''
-    for f in libfishcamp/CMakeLists.txt libsbig/CMakeLists.txt
+    for f in {libfishcamp,libsbig,libqhy}/CMakeLists.txt
     do
       substituteInPlace $f --replace "/lib/firmware" "lib/firmware"
     done
diff --git a/pkgs/development/libraries/science/astronomy/indilib/indi-full.nix b/pkgs/development/libraries/science/astronomy/indilib/indi-full.nix
index a20c92dfaeba9..fae8b95cb28c2 100644
--- a/pkgs/development/libraries/science/astronomy/indilib/indi-full.nix
+++ b/pkgs/development/libraries/science/astronomy/indilib/indi-full.nix
@@ -1,12 +1,12 @@
 { stdenv, lib, callPackage, fetchFromGitHub, indilib }:
 
 let
-  indi-version = "1.9.3";
+  indi-version = "1.9.8";
   indi-3rdparty-src = fetchFromGitHub {
     owner = "indilib";
     repo = "indi-3rdparty";
     rev = "v${indi-version}";
-    sha256 = "sha256-TBccdheBEO48uIXd6tya6dytkzxaHg2+YancBkcL3bw=";
+    sha256 = "sha256-ZFbMyjMvAWcdsl+1TyX5/v5nY1DqvhZ2ckFBDe8gdQg=";
   };
   indi-firmware = callPackage ./indi-firmware.nix {
     version = indi-version;
diff --git a/pkgs/development/libraries/science/chemistry/avogadrolibs/default.nix b/pkgs/development/libraries/science/chemistry/avogadrolibs/default.nix
index b7f5f5f6d90e9..e23fba7fb0ebd 100644
--- a/pkgs/development/libraries/science/chemistry/avogadrolibs/default.nix
+++ b/pkgs/development/libraries/science/chemistry/avogadrolibs/default.nix
@@ -21,13 +21,13 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "avogadrolibs";
-  version = "1.95.1";
+  version = "1.97.0";
 
   src = fetchFromGitHub {
     owner = "OpenChemistry";
     repo = pname;
     rev = version;
-    sha256 = "0zzVg8xNqFwDrK8gRkDm3tRgBt7fD4K3Uy/ajUBc+eQ=";
+    hash = "sha256-ZGFyUlFyI403aw/6GVze/gronT67XlEOKuw5sfHeVy8=";
   };
 
   postUnpack = ''
diff --git a/pkgs/development/libraries/science/math/cliquer/default.nix b/pkgs/development/libraries/science/math/cliquer/default.nix
index fd89ede1efb9a..55a1b9dcb4c97 100644
--- a/pkgs/development/libraries/science/math/cliquer/default.nix
+++ b/pkgs/development/libraries/science/math/cliquer/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
-  buildInputs = [
+  nativeBuildInputs = [
     autoreconfHook
   ];
 
diff --git a/pkgs/development/libraries/science/math/cudnn/extension.nix b/pkgs/development/libraries/science/math/cudnn/extension.nix
index fae958c31d174..bd7935783b738 100644
--- a/pkgs/development/libraries/science/math/cudnn/extension.nix
+++ b/pkgs/development/libraries/science/math/cudnn/extension.nix
@@ -94,7 +94,23 @@ final: prev: let
         fullVersion = "8.3.2.44";
         hash = "sha256-VQCVPAjF5dHd3P2iNPnvvdzb5DpTsm3AqCxyP6FwxFc=";
         url = "${urlPrefix}/v${majorMinorPatch fullVersion}/local_installers/${fileVersion}/cudnn-linux-x86_64-${fullVersion}_cuda${fileVersion}-archive.tar.xz";
-        supportedCudaVersions = [ "11.0" "11.1" "11.2" "11.3" "11.4" "11.4" "11.5" "11.6" ];
+        supportedCudaVersions = [ "11.0" "11.1" "11.2" "11.3" "11.4" "11.5" "11.6" "11.7" ];
+      }
+    ];
+    "8.4.0" = [
+      rec {
+        fileVersion = "10.2";
+        fullVersion = "8.4.0.27";
+        hash = "sha256-FMXjykJYJxmW0f2VnELRfFgs5Nmv9FH4RSRGnnhP0VQ=";
+        url = "${urlPrefix}/v${majorMinorPatch fullVersion}/local_installers/${fileVersion}/cudnn-linux-x86_64-${fullVersion}_cuda${fileVersion}-archive.tar.xz";
+        supportedCudaVersions = [ "10.2" ];
+      }
+      rec {
+        fileVersion = "11.6";
+        fullVersion = "8.4.0.27";
+        hash = "sha256-0Zva/ZgAx50p5vb/+p+eLBDREy1sL/ELFZPgV+dN0FA=";
+        url = "${urlPrefix}/v${majorMinorPatch fullVersion}/local_installers/${fileVersion}/cudnn-linux-x86_64-${fullVersion}_cuda${fileVersion}-archive.tar.xz";
+        supportedCudaVersions = [ "11.0" "11.1" "11.2" "11.3" "11.4" "11.5" "11.6" "11.7" ];
       }
     ];
   };
@@ -111,6 +127,7 @@ final: prev: let
     "11.4" = "8.3.2";
     "11.5" = "8.3.2";
     "11.6" = "8.3.2";
+    "11.7" = "8.4.0";
   }.${cudaVersion} or "8.3.2";
 
 in cuDnnPackages
diff --git a/pkgs/development/libraries/science/math/openblas/default.nix b/pkgs/development/libraries/science/math/openblas/default.nix
index 6718262c2a384..69e529234f016 100644
--- a/pkgs/development/libraries/science/math/openblas/default.nix
+++ b/pkgs/development/libraries/science/math/openblas/default.nix
@@ -136,7 +136,7 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "openblas";
-  version = "0.3.20";
+  version = "0.3.21";
 
   outputs = [ "out" "dev" ];
 
@@ -144,9 +144,14 @@ stdenv.mkDerivation rec {
     owner = "xianyi";
     repo = "OpenBLAS";
     rev = "v${version}";
-    sha256 = "sha256-FLPVcepf7tv/es+4kur9Op7o3iVAAayuYN4hY/P4mmQ=";
+    sha256 = "sha256-F6cXPqQai4kA5zrsa8E0Q7dD9zZHlwZ+B16EOGNXoXs=";
   };
 
+  postPatch = ''
+    # cc1: error: invalid feature modifier 'sve2' in '-march=armv8.5-a+sve+sve2+bf16'
+    substituteInPlace Makefile.arm64 --replace "+sve2+bf16" ""
+  '';
+
   inherit blas64;
 
   # Some hardening features are disabled due to sporadic failures in
diff --git a/pkgs/development/libraries/science/math/tensorrt/extension.nix b/pkgs/development/libraries/science/math/tensorrt/extension.nix
index b76d35a0d84fe..2c4503272785b 100644
--- a/pkgs/development/libraries/science/math/tensorrt/extension.nix
+++ b/pkgs/development/libraries/science/math/tensorrt/extension.nix
@@ -35,7 +35,7 @@ final: prev: let
         fullVersion = "8.4.0.6";
         sha256 = "sha256-DNgHHXF/G4cK2nnOWImrPXAkOcNW6Wy+8j0LRpAH/LQ=";
         tarball = "TensorRT-${fullVersion}.Linux.x86_64-gnu.cuda-${fileVersionCuda}.cudnn${fileVersionCudnn}.tar.gz";
-        supportedCudaVersions = [ "11.0" "11.1" "11.2" "11.3" "11.4" "11.5" "11.6" ];
+        supportedCudaVersions = [ "11.0" "11.1" "11.2" "11.3" "11.4" "11.5" "11.6" "11.7" ];
       }
       rec {
         fileVersionCuda = "10.2";
@@ -58,6 +58,7 @@ final: prev: let
     "11.4" = "8.4.0";
     "11.5" = "8.4.0";
     "11.6" = "8.4.0";
+    "11.7" = "8.4.0";
   }.${cudaVersion} or "8.4.0";
 
 in tensorRTPackages
diff --git a/pkgs/development/libraries/sentry-native/default.nix b/pkgs/development/libraries/sentry-native/default.nix
index eafc773ef2062..83f84d4d4fd39 100644
--- a/pkgs/development/libraries/sentry-native/default.nix
+++ b/pkgs/development/libraries/sentry-native/default.nix
@@ -11,8 +11,8 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-whbzoKIYLwj4yoFaT3frghJd/WzfpolSAuZzQRtnP5E=";
   };
 
-  nativeBuildInputs = [ cmake ];
-  buildInputs = [ curl breakpad pkg-config ];
+  nativeBuildInputs = [ cmake pkg-config ];
+  buildInputs = [ curl breakpad ];
   cmakeFlags = [
     "-DCMAKE_BUILD_TYPE=RelWithDebInfo"
     "-DSENTRY_BREAKPAD_SYSTEM=On"
diff --git a/pkgs/development/libraries/simdjson/default.nix b/pkgs/development/libraries/simdjson/default.nix
index d8934a1ebf53c..5a4e82d815fc5 100644
--- a/pkgs/development/libraries/simdjson/default.nix
+++ b/pkgs/development/libraries/simdjson/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "simdjson";
-  version = "2.2.2";
+  version = "3.0.0";
 
   src = fetchFromGitHub {
     owner = "simdjson";
     repo = "simdjson";
     rev = "v${version}";
-    sha256 = "sha256-PU6yTA2FXHcuSwr6oIU+cP7uYxkgggnj3FV2LbkS69w=";
+    sha256 = "sha256-Ub0gHxnc4ljVqbAWuFJYBuhA4FjX4ypg1gaPXUrcWkE=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/simgear/default.nix b/pkgs/development/libraries/simgear/default.nix
index 2d6f6ef8d2921..649c1dbae27a5 100644
--- a/pkgs/development/libraries/simgear/default.nix
+++ b/pkgs/development/libraries/simgear/default.nix
@@ -4,7 +4,7 @@
 , curl
 }:
 let
-  version = "2020.3.13";
+  version = "2020.3.14";
   shortVersion = builtins.substring 0 6 version;
 in
 stdenv.mkDerivation rec {
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://sourceforge/flightgear/release-${shortVersion}/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-3AmQb9qLGBD+LLIrX1Fx0gi6kBxbnTkLrW0fP9ZsUeg=";
+    sha256 = "sha256-NbpHn1e9+TD+9/iSFBw16/CQMXYx3D/aSDhkSGdBT3Q=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/smpeg/default.nix b/pkgs/development/libraries/smpeg/default.nix
index 8b54cb37a32c2..5c72d653278d0 100644
--- a/pkgs/development/libraries/smpeg/default.nix
+++ b/pkgs/development/libraries/smpeg/default.nix
@@ -24,6 +24,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ SDL gtk2 libGLU libGL ];
 
+  outputs = [ "out" "dev" ];
+
   preConfigure = ''
     touch NEWS AUTHORS ChangeLog
     sh autogen.sh
@@ -35,9 +37,11 @@ stdenv.mkDerivation rec {
     -e 's,"SDL_audio.h",<SDL/SDL_audio.h>,' \
     -e 's,"SDL_thread.h",<SDL/SDL_thread.h>,' \
     -e 's,"SDL_types.h",<SDL/SDL_types.h>,' \
-      $out/include/smpeg/*.h
+      $dev/include/smpeg/*.h
+
+    moveToOutput bin/smpeg-config "$dev"
 
-    wrapProgram $out/bin/smpeg-config \
+    wrapProgram $dev/bin/smpeg-config \
       --prefix PATH ":" "${pkg-config}/bin" \
       --prefix PKG_CONFIG_PATH ":" "${lib.getDev SDL}/lib/pkgconfig"
   '';
diff --git a/pkgs/development/libraries/smpeg2/default.nix b/pkgs/development/libraries/smpeg2/default.nix
index 48281ba04ec16..24dd9c9dc400f 100644
--- a/pkgs/development/libraries/smpeg2/default.nix
+++ b/pkgs/development/libraries/smpeg2/default.nix
@@ -24,12 +24,15 @@ stdenv.mkDerivation rec {
   buildInputs = [ SDL2 ]
     ++ lib.optional stdenv.isDarwin darwin.libobjc;
 
+  outputs = [ "out" "dev" "man" ];
+
   preConfigure = ''
     sh autogen.sh
   '';
 
   postInstall = ''
-    wrapProgram $out/bin/smpeg2-config \
+    moveToOutput bin/smpeg2-config "$dev"
+    wrapProgram $dev/bin/smpeg2-config \
       --prefix PATH ":" "${pkg-config}/bin" \
       --prefix PKG_CONFIG_PATH ":" "${SDL2.dev}/lib/pkgconfig"
   '';
diff --git a/pkgs/development/libraries/spglib/default.nix b/pkgs/development/libraries/spglib/default.nix
index e1472b594a40c..c10b5a7054255 100644
--- a/pkgs/development/libraries/spglib/default.nix
+++ b/pkgs/development/libraries/spglib/default.nix
@@ -2,22 +2,19 @@
 
 stdenv.mkDerivation rec {
   pname = "spglib";
-  version = "1.16.5"; # N.B: if you change this, please update: pythonPackages.spglib
+  version = "2.0.1"; # N.B: if you change this, please update: pythonPackages.spglib
 
   src = fetchFromGitHub {
     owner = "spglib";
     repo = "spglib";
     rev = "v${version}";
-    sha256 = "sha256-BbqyL7WJ/jpOls1MmY7VNCN+OlF6u4uz/pZjMAqk87w=";
+    sha256 = "sha256-0M3GSnNvBNmE4ShW8NNkVrOBGEF9A0C5wd++xnyrcdI=";
   };
 
   nativeBuildInputs = [ cmake ];
 
   buildInputs = lib.optionals stdenv.isDarwin [ openmp ];
 
-  checkTarget = "check";
-  doCheck = true;
-
   meta = with lib; {
     description = "C library for finding and handling crystal symmetries";
     homepage = "https://spglib.github.io/spglib/";
diff --git a/pkgs/development/libraries/srt/default.nix b/pkgs/development/libraries/srt/default.nix
index c74780148a1b3..2e1a96eebbdeb 100644
--- a/pkgs/development/libraries/srt/default.nix
+++ b/pkgs/development/libraries/srt/default.nix
@@ -4,13 +4,13 @@
 with lib;
 stdenv.mkDerivation rec {
   pname = "srt";
-  version = "1.4.4";
+  version = "1.5.1";
 
   src = fetchFromGitHub {
     owner = "Haivision";
     repo = "srt";
     rev = "v${version}";
-    sha256 = "sha256-OfcMHH+MSOGY9pxpXt19EIGdP4FJFssSv/lENX+iIf8=";
+    sha256 = "sha256-qVvoHtROtJjrUd+YpjN/0I6KmiH7c24+pQ4xYTUGPXk=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/tcllib/default.nix b/pkgs/development/libraries/tcllib/default.nix
index 90c4528a64548..cd087045a8a31 100644
--- a/pkgs/development/libraries/tcllib/default.nix
+++ b/pkgs/development/libraries/tcllib/default.nix
@@ -2,17 +2,18 @@
 
 tcl.mkTclDerivation rec {
   pname = "tcllib";
-  version = "1.20";
+  version = "1.21";
 
   src = fetchurl {
     url = "mirror://sourceforge/tcllib/tcllib-${version}.tar.gz";
-    sha256 = "0wax281h6ksz974a5qpfgf9y34lmlpd8i87lkm1w94ybbd3rgc73";
+    sha256 = "sha256-RrK7XsgEk2OuAWRa8RvaO9tdsQYp6AfYHRrUbNG+rVA=";
   };
 
   meta = {
-    homepage = "https://sourceforge.net/projects/tcllib/";
+    homepage = "https://core.tcl-lang.org/tcllib/";
     description = "Tcl-only library of standard routines for Tcl";
     license = lib.licenses.tcltk;
     platforms = lib.platforms.unix;
+    maintainers = with lib.maintainers; [ fgaz ];
   };
 }
diff --git a/pkgs/development/libraries/telepathy/farstream/default.nix b/pkgs/development/libraries/telepathy/farstream/default.nix
index 2885f3cbb12d9..59f0a165221ca 100644
--- a/pkgs/development/libraries/telepathy/farstream/default.nix
+++ b/pkgs/development/libraries/telepathy/farstream/default.nix
@@ -1,21 +1,21 @@
 { lib, stdenv, fetchurl, pkg-config, telepathy-glib, farstream, dbus-glib }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-0.6.2";
   pname = "telepathy-farstream";
+  version = "0.6.2";
 
   src = fetchurl {
-    url = "https://telepathy.freedesktop.org/releases/${pname}/${name}.tar.gz";
+    url = "https://telepathy.freedesktop.org/releases/${pname}/${pname}-${version}.tar.gz";
     sha256 = "02ky12bb92prr5f6xmvmfq4yz2lj33li6nj4829a98hk5pr9k83g";
   };
 
-  propagatedBuildInputs = [ dbus-glib telepathy-glib farstream ];
   nativeBuildInputs = [ pkg-config ];
+  propagatedBuildInputs = [ dbus-glib telepathy-glib farstream ];
 
   meta = with lib; {
     description = "GObject-based C library that uses Telepathy GLib, Farstream and GStreamer to handle the media streaming part of channels of type Call";
     homepage = "https://telepathy.freedesktop.org/wiki/Components/Telepathy-Farstream/";
     platforms = platforms.linux;
-    license = licenses.lgpl21;
+    license = licenses.lgpl21Only;
   };
 }
diff --git a/pkgs/development/libraries/thrift/default.nix b/pkgs/development/libraries/thrift/default.nix
index 54e5cac3ad7b2..76d8cc2ff54e8 100644
--- a/pkgs/development/libraries/thrift/default.nix
+++ b/pkgs/development/libraries/thrift/default.nix
@@ -16,11 +16,11 @@
 
 stdenv.mkDerivation rec {
   pname = "thrift";
-  version = "0.16.0";
+  version = "0.17.0";
 
   src = fetchurl {
     url = "https://archive.apache.org/dist/thrift/${version}/${pname}-${version}.tar.gz";
-    sha256 = "sha256-9GC1wcow2JGP+V6j62KRs5Uc9RhVNWYIjz8r6JgfYgk=";
+    hash = "sha256-snLBeIuxZdmVIaJZmzG5f6aeWTHQmQFdka4QegsMxY8=";
   };
 
   # Workaround to make the Python wrapper not drop this package:
@@ -62,11 +62,6 @@ stdenv.mkDerivation rec {
     # doesn't disable all UnitTests as in Darwin.
     ./disable-failing-test.patch
     (fetchpatch {
-      name = "tests-expired-certs.diff"; # https://github.com/apache/thrift/pull/2629
-      url = "https://github.com/apache/thrift/commit/54765854873e19b8ba50a0ec8080dd92d8323851.diff";
-      sha256 = "wnG2MjY0DtAhVcEdcxu77tDa4T9Xm2pMYZU2wXLx2OA=";
-    })
-    (fetchpatch {
       name = "setuptools-gte-62.1.0.patch"; # https://github.com/apache/thrift/pull/2635
       url = "https://github.com/apache/thrift/commit/c41ad9d5119e9bdae1746167e77e224f390f2c42.diff";
       hash = "sha256-FkErrg/6vXTomS4AsCsld7t+Iccc55ZiDaNjJ3W1km0=";
diff --git a/pkgs/development/libraries/ucx/default.nix b/pkgs/development/libraries/ucx/default.nix
index 7a5f57b42299f..a6e1b43f5db4f 100644
--- a/pkgs/development/libraries/ucx/default.nix
+++ b/pkgs/development/libraries/ucx/default.nix
@@ -13,13 +13,13 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "ucx";
-  version = "1.13.0";
+  version = "1.13.1";
 
   src = fetchFromGitHub {
     owner = "openucx";
     repo = "ucx";
     rev = "v${version}";
-    sha256 = "sha256-DWiOmqxBAAH8DE7H0teoKyp+m3wYEo652ac7ey43Erg=";
+    sha256 = "sha256-NhtN8xrHc6UnUrMbq9LHpb25JO+/LDGcLLGebCfGnv4=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/unicap/default.nix b/pkgs/development/libraries/unicap/default.nix
index 17e91f7e23650..f26365fa8e632 100644
--- a/pkgs/development/libraries/unicap/default.nix
+++ b/pkgs/development/libraries/unicap/default.nix
@@ -9,7 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "05zcnnm4dfc6idihfi0fq5xka6x86zi89wip2ca19yz768sd33s9";
   };
 
-  buildInputs = [ libusb-compat-0_1 libraw1394 dcraw intltool perl v4l-utils ];
+  nativeBuildInputs = [ intltool ];
+  buildInputs = [ libusb-compat-0_1 libraw1394 dcraw perl v4l-utils ];
 
   patches = [
     # Debian has a patch that fixes the build.
diff --git a/pkgs/development/libraries/uriparser/default.nix b/pkgs/development/libraries/uriparser/default.nix
index c39fdb03e8960..dc808c529af1a 100644
--- a/pkgs/development/libraries/uriparser/default.nix
+++ b/pkgs/development/libraries/uriparser/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "uriparser";
-  version = "0.9.6";
+  version = "0.9.7";
 
   # Release tarball differs from source tarball
   src = fetchurl {
     url = "https://github.com/uriparser/uriparser/releases/download/${pname}-${version}/${pname}-${version}.tar.bz2";
-    sha256 = "9ce4c3f151e78579f23937b44abecb428126863ad02e594e115e882353de905b";
+    sha256 = "sha256-0n3qDItvb7l5jwfK7e8c2WpuP8XGGJWWd04Zr6fd3tc=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/vapoursynth-mvtools/default.nix b/pkgs/development/libraries/vapoursynth-mvtools/default.nix
index 76ce9a36c7139..54d9bad1644f7 100644
--- a/pkgs/development/libraries/vapoursynth-mvtools/default.nix
+++ b/pkgs/development/libraries/vapoursynth-mvtools/default.nix
@@ -13,9 +13,8 @@ stdenv.mkDerivation rec {
     sha256 = "0lngkvxnzn82rz558nvl96rvclrck07ja1pny7wcfixp9b68ppkn";
   };
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [ pkg-config autoreconfHook ];
   buildInputs = [
-    autoreconfHook
     nasm vapoursynth fftwFloat
   ];
 
diff --git a/pkgs/development/libraries/volume-key/default.nix b/pkgs/development/libraries/volume-key/default.nix
index ce2f7c20d3cbd..cc0049ef756c2 100644
--- a/pkgs/development/libraries/volume-key/default.nix
+++ b/pkgs/development/libraries/volume-key/default.nix
@@ -16,9 +16,9 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "man" "dev" "py" ];
 
-  nativeBuildInputs = [ autoconf automake libtool pkg-config gettext swig ];
+  nativeBuildInputs = [ autoconf automake libtool pkg-config gettext swig autoreconfHook ];
 
-  buildInputs = [ autoreconfHook glib cryptsetup nss util-linux gpgme ncurses ];
+  buildInputs = [ glib cryptsetup nss util-linux gpgme ncurses ];
 
   configureFlags = [
     "--with-gpgme-prefix=${gpgme.dev}"
diff --git a/pkgs/development/libraries/vte/2.90.nix b/pkgs/development/libraries/vte/2.90.nix
index dfb76069c3b29..59f1a2cd673a6 100644
--- a/pkgs/development/libraries/vte/2.90.nix
+++ b/pkgs/development/libraries/vte/2.90.nix
@@ -9,8 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "54e5b07be3c0f7b158302f54ee79d4de1cb002f4259b6642b79b1e0e314a959c";
   };
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ gobject-introspection intltool glib gtk3 ncurses ];
+  nativeBuildInputs = [ pkg-config intltool ];
+  buildInputs = [ gobject-introspection glib gtk3 ncurses ];
 
   configureFlags = [ "--enable-introspection" ];
 
diff --git a/pkgs/development/libraries/vte/default.nix b/pkgs/development/libraries/vte/default.nix
index 342bb32e56096..0ddff4d1812ab 100644
--- a/pkgs/development/libraries/vte/default.nix
+++ b/pkgs/development/libraries/vte/default.nix
@@ -83,6 +83,9 @@ stdenv.mkDerivation rec {
     "-D_b_symbolic_functions=false"
   ];
 
+  # error: argument unused during compilation: '-pie' [-Werror,-Wunused-command-line-argument]
+  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isMusl "-Wno-unused-command-line-argument";
+
   postPatch = ''
     patchShebangs perf/*
     patchShebangs src/box_drawing_generate.sh
diff --git a/pkgs/development/libraries/webkitgtk/default.nix b/pkgs/development/libraries/webkitgtk/default.nix
index f4627ded869b7..9a03680e3224b 100644
--- a/pkgs/development/libraries/webkitgtk/default.nix
+++ b/pkgs/development/libraries/webkitgtk/default.nix
@@ -214,7 +214,7 @@ stdenv.mkDerivation (finalAttrs: {
   ] ++ lib.optionals (lib.versionAtLeast gtk3.version "4.0") [
     "-DUSE_GTK4=ON"
   ] ++ lib.optionals (!systemdSupport) [
-    "-DUSE_SYSTEMD=OFF"
+    "-DENABLE_JOURNALD_LOG=OFF"
   ] ++ lib.optionals (stdenv.isLinux && enableGLES) [
     "-DENABLE_GLES2=ON"
   ];
diff --git a/pkgs/development/libraries/webp-pixbuf-loader/default.nix b/pkgs/development/libraries/webp-pixbuf-loader/default.nix
new file mode 100644
index 0000000000000..82ce1e4796d88
--- /dev/null
+++ b/pkgs/development/libraries/webp-pixbuf-loader/default.nix
@@ -0,0 +1,59 @@
+{ lib, stdenv, fetchFromGitHub
+, meson, ninja, pkg-config, makeWrapper
+, gdk-pixbuf, libwebp
+}:
+let
+  moduleDir = gdk-pixbuf.moduleDir;
+
+  # turning lib/gdk-pixbuf-#.#/#.#.#/loaders into lib/gdk-pixbuf-#.#/#.#.#/loaders.cache
+  # removeSuffix is just in case moduleDir gets a trailing slash
+  loadersPath = (lib.strings.removeSuffix "/" gdk-pixbuf.moduleDir) + ".cache";
+in
+stdenv.mkDerivation rec {
+  pname = "webp-pixbuf-loader";
+  version = "0.0.6";
+
+  src = fetchFromGitHub {
+    owner = "aruiz";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-dcdydWYrXZJjo4FxJtvzGzrQLOs87/BmxshFZwsT2ws=";
+  };
+
+  # It looks for gdk-pixbuf-thumbnailer in this package's bin rather than the gdk-pixbuf bin. We need to patch that.
+  postPatch = ''
+    substituteInPlace webp-pixbuf.thumbnailer.in --replace @bindir@/gdk-pixbuf-thumbnailer $out/bin/webp-thumbnailer
+  '';
+
+  nativeBuildInputs = [ gdk-pixbuf meson ninja pkg-config makeWrapper ];
+  buildInputs = [ gdk-pixbuf libwebp ];
+
+  mesonFlags = [
+    "-Dgdk_pixbuf_query_loaders_path=${gdk-pixbuf.dev}/bin/gdk-pixbuf-query-loaders"
+    "-Dgdk_pixbuf_moduledir=${placeholder "out"}/${moduleDir}"
+  ];
+
+  # It assumes gdk-pixbuf-thumbnailer can find the webp loader in the loaders.cache referenced by environment variable, breaking containment.
+  # So we replace it with a wrapped executable.
+  postInstall = ''
+    mkdir -p $out/bin
+    makeWrapper ${gdk-pixbuf}/bin/gdk-pixbuf-thumbnailer $out/bin/webp-thumbnailer \
+      --set GDK_PIXBUF_MODULE_FILE $out/${loadersPath}
+  '';
+
+  # environment variables controlling loaders.cache generation by gdk-pixbuf-query-loaders
+  preInstall = ''
+    export GDK_PIXBUF_MODULE_FILE=$out/${loadersPath}
+    export GDK_PIXBUF_MODULEDIR=$out/${moduleDir}
+  '';
+
+  meta = with lib; {
+    description = "WebP GDK Pixbuf Loader library";
+    homepage = "https://github.com/aruiz/webp-pixbuf-loader";
+    license = licenses.lgpl2Plus;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.cwyc ];
+    # meson.build:16:0: ERROR: Program or command 'gcc' not found or not executable
+    broken = stdenv.isDarwin;
+  };
+}
diff --git a/pkgs/development/libraries/wxsqlite3/default.nix b/pkgs/development/libraries/wxsqlite3/default.nix
index 81a0662b4371a..3b1c9ff22e8f2 100644
--- a/pkgs/development/libraries/wxsqlite3/default.nix
+++ b/pkgs/development/libraries/wxsqlite3/default.nix
@@ -8,25 +8,23 @@
 , setfile
 , rez
 , derez
-, wxmac
 }:
 
 stdenv.mkDerivation rec {
   pname = "wxsqlite3";
-  version = "4.8.2";
+  version = "4.9.0";
 
   src = fetchFromGitHub {
     owner = "utelle";
     repo = "wxsqlite3";
     rev = "v${version}";
-    hash = "sha256-YoeCUyWVxpXY1QCTNONpv2QjV3rLZY84P6D3pXiWXo0=";
+    hash = "sha256-9WnXaMpKzqJhdfT7ScOhULbOwJsmuiS0IpYDArWq82s=";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
 
-  buildInputs = [ sqlite ]
-    ++ lib.optionals (!stdenv.isDarwin) [ wxGTK ]
-    ++ lib.optionals (stdenv.isDarwin) [ Cocoa setfile rez derez wxmac ];
+  buildInputs = [ sqlite wxGTK ]
+    ++ lib.optionals (stdenv.isDarwin) [ Cocoa setfile rez derez ];
 
   meta = with lib; {
     homepage = "https://utelle.github.io/wxsqlite3/";
diff --git a/pkgs/development/libraries/xcb-util-cursor/HEAD.nix b/pkgs/development/libraries/xcb-util-cursor/HEAD.nix
index 92796b4116c48..4ac58c3f3d0a6 100644
--- a/pkgs/development/libraries/xcb-util-cursor/HEAD.nix
+++ b/pkgs/development/libraries/xcb-util-cursor/HEAD.nix
@@ -21,13 +21,12 @@ stdenv.mkDerivation {
 
   outputs = [ "out" "dev" ];
 
-  nativeBuildInputs = [ autoconf automake ];
+  nativeBuildInputs = [ autoconf automake pkg-config ];
   buildInputs = [
     gnum4
     gperf
     libtool
     libxcb
-    pkg-config
     xorg.utilmacros
     xorg.xcbutilimage
     xorg.xcbutilrenderutil
diff --git a/pkgs/development/lua-modules/generated-packages.nix b/pkgs/development/lua-modules/generated-packages.nix
index 263ffab64d061..d3b9695fbefa1 100644
--- a/pkgs/development/lua-modules/generated-packages.nix
+++ b/pkgs/development/lua-modules/generated-packages.nix
@@ -153,7 +153,7 @@ buildLuarocksPackage {
 }) {};
 
 busted = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchgit, penlight, luafilesystem, dkjson, lua_cliargs, lua, say, mediator_lua, luasystem, lua-term, luassert
+, fetchgit, say, luassert, lua_cliargs, luasystem, luafilesystem, lua, mediator_lua, penlight, lua-term, dkjson
 }:
 buildLuarocksPackage {
   pname = "busted";
@@ -176,7 +176,7 @@ buildLuarocksPackage {
  '') ["date" "path"]) ;
 
   disabled = with lua; (luaOlder "5.1");
-  propagatedBuildInputs = [ penlight luafilesystem dkjson lua_cliargs lua say mediator_lua luasystem lua-term luassert ];
+  propagatedBuildInputs = [ say luassert lua_cliargs luasystem luafilesystem lua mediator_lua penlight lua-term dkjson ];
 
   meta = {
     homepage = "https://lunarmodules.github.io/busted/";
@@ -186,7 +186,7 @@ buildLuarocksPackage {
 }) {};
 
 cassowary = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchgit, penlight, lua
+, fetchgit, lua, penlight
 }:
 buildLuarocksPackage {
   pname = "cassowary";
@@ -209,7 +209,7 @@ buildLuarocksPackage {
  '') ["date" "path"]) ;
 
   disabled = with lua; (luaOlder "5.1");
-  propagatedBuildInputs = [ penlight lua ];
+  propagatedBuildInputs = [ lua penlight ];
 
   meta = {
     homepage = "https://github.com/sile-typesetter/cassowary.lua";
@@ -399,7 +399,7 @@ buildLuarocksPackage {
 }) {};
 
 digestif = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchgit, lpeg, lua
+, fetchgit, lua, lpeg
 }:
 buildLuarocksPackage {
   pname = "digestif";
@@ -419,7 +419,7 @@ buildLuarocksPackage {
  '') ["date" "path"]) ;
 
   disabled = with lua; (luaOlder "5.3");
-  propagatedBuildInputs = [ lpeg lua ];
+  propagatedBuildInputs = [ lua lpeg ];
 
   meta = {
     homepage = "https://github.com/astoff/digestif/";
@@ -504,7 +504,7 @@ buildLuarocksPackage {
 }) {};
 
 fluent = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchgit, penlight, cldr, luaepnf, lua
+, fetchgit, luaepnf, penlight, cldr, lua
 }:
 buildLuarocksPackage {
   pname = "fluent";
@@ -527,7 +527,7 @@ buildLuarocksPackage {
  '') ["date" "path"]) ;
 
   disabled = with lua; (luaOlder "5.1");
-  propagatedBuildInputs = [ penlight cldr luaepnf lua ];
+  propagatedBuildInputs = [ luaepnf penlight cldr lua ];
 
   meta = {
     homepage = "https://github.com/alerque/fluent-lua";
@@ -546,10 +546,10 @@ buildLuarocksPackage {
 
   src = fetchgit ( removeAttrs (builtins.fromJSON ''{
   "url": "https://github.com/lewis6991/gitsigns.nvim",
-  "rev": "d7e0bcbe45bd9d5d106a7b2e11dc15917d272c7a",
-  "date": "2022-09-01T14:06:41+01:00",
-  "path": "/nix/store/3i20afjhjknqk3wggbrk3kwcbnnjqqxd-gitsigns.nvim",
-  "sha256": "1h4gxyamynwygxpqfib2a7sd1xbi6sh8ixg85j6qiaqqpahr0a4k",
+  "rev": "f98c85e7c3d65a51f45863a34feb4849c82f240f",
+  "date": "2022-09-19T00:23:17+01:00",
+  "path": "/nix/store/7gx7accssqrpn18g9325a8d4wx48467b-gitsigns.nvim",
+  "sha256": "0ljzja43jdkv77nh4253x3gwk2hjx968yk7b5ag4y1mvyp1540qn",
   "fetchLFS": false,
   "fetchSubmodules": true,
   "deepClone": false,
@@ -568,7 +568,7 @@ buildLuarocksPackage {
 }) {};
 
 http = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchzip, basexx, lpeg_patterns, compat53, bit32, fifo, lua, binaryheap, cqueues, lpeg, luaossl
+, fetchzip, compat53, lpeg, cqueues, luaossl, bit32, lua, binaryheap, basexx, lpeg_patterns, fifo
 }:
 buildLuarocksPackage {
   pname = "http";
@@ -583,7 +583,7 @@ buildLuarocksPackage {
   };
 
   disabled = with lua; (luaOlder "5.1");
-  propagatedBuildInputs = [ basexx lpeg_patterns compat53 bit32 fifo lua binaryheap cqueues lpeg luaossl ];
+  propagatedBuildInputs = [ compat53 lpeg cqueues luaossl bit32 lua binaryheap basexx lpeg_patterns fifo ];
 
   meta = {
     homepage = "https://github.com/daurnimator/lua-http";
@@ -618,6 +618,39 @@ buildLuarocksPackage {
   };
 }) {};
 
+jsregexp = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
+, fetchgit, lua
+}:
+buildLuarocksPackage {
+  pname = "jsregexp";
+  version = "0.0.5-1";
+  knownRockspec = (fetchurl {
+    url    = "mirror://luarocks/jsregexp-0.0.5-1.rockspec";
+    sha256 = "03zln61vxrgml71chrqdz8id076610rb0n9f2yah2nvjfpqpla68";
+  }).outPath;
+  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
+  "url": "https://github.com/kmarius/jsregexp.git",
+  "rev": "dd65498ae2c29b882d6c02c0a30577b08d660b94",
+  "date": "2022-08-16T21:04:46+02:00",
+  "path": "/nix/store/6kalvlazs50gna9k4ah0wg2avlah6nmr-jsregexp",
+  "sha256": "01hxql0z3yyzd17r3kyjx2kx0ng7zjc8dp2h2gqmpmjb9ssd4sf1",
+  "fetchLFS": false,
+  "fetchSubmodules": true,
+  "deepClone": false,
+  "leaveDotGit": false
+}
+ '') ["date" "path"]) ;
+
+  disabled = with lua; (luaOlder "5.1");
+  propagatedBuildInputs = [ lua ];
+
+  meta = {
+    homepage = "https://github.com/kmarius/jsregexp";
+    description = "javascript (ECMA19) regular expressions for lua";
+    license.fullName = "MIT";
+  };
+}) {};
+
 ldbus = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
 , fetchgit, lua
 }:
@@ -873,7 +906,7 @@ buildLuarocksPackage {
 }) {};
 
 lpeg_patterns = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchzip, lua, lpeg
+, fetchzip, lpeg, lua
 }:
 buildLuarocksPackage {
   pname = "lpeg_patterns";
@@ -887,7 +920,7 @@ buildLuarocksPackage {
     sha256 = "1s3c179a64r45ffkawv9dnxw4mzwkzj00nr9z2gs5haajgpjivw6";
   };
 
-  propagatedBuildInputs = [ lua lpeg ];
+  propagatedBuildInputs = [ lpeg lua ];
 
   meta = {
     homepage = "https://github.com/daurnimator/lpeg_patterns/archive/v0.5.zip";
@@ -1138,7 +1171,7 @@ buildLuarocksPackage {
 }) {};
 
 lua-lsp = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchgit, lua, inspect, lpeglabel, dkjson
+, fetchgit, dkjson, inspect, lpeglabel, lua
 }:
 buildLuarocksPackage {
   pname = "lua-lsp";
@@ -1161,7 +1194,7 @@ buildLuarocksPackage {
  '') ["date" "path"]) ;
 
   disabled = with lua; (luaOlder "5.1") || (luaAtLeast "5.4");
-  propagatedBuildInputs = [ lua inspect lpeglabel dkjson ];
+  propagatedBuildInputs = [ dkjson inspect lpeglabel lua ];
 
   meta = {
     homepage = "https://github.com/Alloyed/lua-lsp";
@@ -1296,7 +1329,7 @@ buildLuarocksPackage {
 }) {};
 
 lua-resty-openidc = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchgit, lua-resty-http, lua-resty-jwt, lua-resty-session, lua
+, fetchgit, lua-resty-http, lua, lua-resty-session, lua-resty-jwt
 }:
 buildLuarocksPackage {
   pname = "lua-resty-openidc";
@@ -1319,7 +1352,7 @@ buildLuarocksPackage {
  '') ["date" "path"]) ;
 
   disabled = with lua; (luaOlder "5.1");
-  propagatedBuildInputs = [ lua-resty-http lua-resty-jwt lua-resty-session lua ];
+  propagatedBuildInputs = [ lua-resty-http lua lua-resty-session lua-resty-jwt ];
 
   meta = {
     homepage = "https://github.com/zmartzone/lua-resty-openidc";
@@ -1598,7 +1631,7 @@ buildLuarocksPackage {
 }) {};
 
 luacheck = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchgit, lua, luafilesystem, argparse
+, fetchgit, lua, argparse, luafilesystem
 }:
 buildLuarocksPackage {
   pname = "luacheck";
@@ -1621,7 +1654,7 @@ buildLuarocksPackage {
  '') ["date" "path"]) ;
 
   disabled = with lua; (luaOlder "5.1");
-  propagatedBuildInputs = [ lua luafilesystem argparse ];
+  propagatedBuildInputs = [ lua argparse luafilesystem ];
 
   meta = {
     homepage = "https://github.com/lunarmodules/luacheck";
@@ -1697,7 +1730,7 @@ buildLuarocksPackage {
 }) {};
 
 luadbi-mysql = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchgit, lua, luadbi
+, fetchgit, luadbi, lua
 }:
 buildLuarocksPackage {
   pname = "luadbi-mysql";
@@ -1720,7 +1753,7 @@ buildLuarocksPackage {
  '') ["date" "path"]) ;
 
   disabled = with lua; (luaOlder "5.1") || (luaAtLeast "5.4");
-  propagatedBuildInputs = [ lua luadbi ];
+  propagatedBuildInputs = [ luadbi lua ];
 
   meta = {
     homepage = "https://github.com/mwild1/luadbi";
@@ -1730,7 +1763,7 @@ buildLuarocksPackage {
 }) {};
 
 luadbi-postgresql = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchgit, luadbi, lua
+, fetchgit, lua, luadbi
 }:
 buildLuarocksPackage {
   pname = "luadbi-postgresql";
@@ -1753,7 +1786,7 @@ buildLuarocksPackage {
  '') ["date" "path"]) ;
 
   disabled = with lua; (luaOlder "5.1") || (luaAtLeast "5.4");
-  propagatedBuildInputs = [ luadbi lua ];
+  propagatedBuildInputs = [ lua luadbi ];
 
   meta = {
     homepage = "https://github.com/mwild1/luadbi";
@@ -1796,7 +1829,7 @@ buildLuarocksPackage {
 }) {};
 
 luaepnf = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchgit, lua, lpeg
+, fetchgit, lpeg, lua
 }:
 buildLuarocksPackage {
   pname = "luaepnf";
@@ -1819,7 +1852,7 @@ buildLuarocksPackage {
  '') ["date" "path"]) ;
 
   disabled = with lua; (luaOlder "5.1") || (luaAtLeast "5.5");
-  propagatedBuildInputs = [ lua lpeg ];
+  propagatedBuildInputs = [ lpeg lua ];
 
   meta = {
     homepage = "http://siffiejoe.github.io/lua-luaepnf/";
@@ -1959,17 +1992,17 @@ lualogging = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
 }:
 buildLuarocksPackage {
   pname = "lualogging";
-  version = "1.6.0-2";
+  version = "1.7.0-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/lualogging-1.6.0-2.rockspec";
-    sha256 = "1235sfss0gmcw744rnhzfffhd1z732g2b2vsbpbz9kcvvhznmamb";
+    url    = "mirror://luarocks/lualogging-1.7.0-1.rockspec";
+    sha256 = "1h6zrhp3jvx4257gkskg8b6kd7pm6pd9wzhqb20vllyhj5vfb53h";
   }).outPath;
   src = fetchgit ( removeAttrs (builtins.fromJSON ''{
   "url": "https://github.com/lunarmodules/lualogging.git",
-  "rev": "0bc4415de03ff1a99c92c02a5bed14a45b078079",
-  "date": "2021-11-09T20:20:42+01:00",
-  "path": "/nix/store/p3cyhqjw12bj7s6y4hndzqdkdfwq3958-lualogging",
-  "sha256": "18664k4kfi4zq9n0217j57h42li6ws8s3f6d4yj0rcqsl19fxa7c",
+  "rev": "540df4424165b622d7c408b1f9d2d3420a5206e8",
+  "date": "2022-09-21T22:50:18+02:00",
+  "path": "/nix/store/69jb23b1gv0pcb20jwan342zzp0zjw1f-lualogging",
+  "sha256": "1rwbf593qx67cbk45vm155d7ws1y0xgxmwca508l8clq7d6rv3x0",
   "fetchLFS": false,
   "fetchSubmodules": true,
   "deepClone": false,
@@ -2339,10 +2372,10 @@ buildLuarocksPackage {
 
   src = fetchgit ( removeAttrs (builtins.fromJSON ''{
   "url": "https://github.com/rktjmp/lush.nvim",
-  "rev": "6b9f399245de7bea8dac2c3bf91096ffdedfcbb7",
-  "date": "2022-08-10T01:43:55+10:00",
-  "path": "/nix/store/ljfhbz8s6pjnngbixk3m6ivpb7nx1gv0-lush.nvim",
-  "sha256": "0rb77rwmbm438bmbjfk5hwrrcn5sihsa1413bdpc27rw3rrn8v8z",
+  "rev": "fabf012e243bc58c4785ab4c44f05e94b34c431a",
+  "date": "2022-09-14T20:24:03+10:00",
+  "path": "/nix/store/z7nnsj480w2v8i3w0idy0z49yysvsa90-lush.nvim",
+  "sha256": "0bxxdlbay4r48xng1djljbgb93ls3xa83nb79gzvagfaiwgf6pn8",
   "fetchLFS": false,
   "fetchSubmodules": true,
   "deepClone": false,
@@ -2498,7 +2531,7 @@ buildLuarocksPackage {
 }) {};
 
 moonscript = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchgit, lua, luafilesystem, lpeg, argparse
+, fetchgit, argparse, lua, lpeg, luafilesystem
 }:
 buildLuarocksPackage {
   pname = "moonscript";
@@ -2518,7 +2551,7 @@ buildLuarocksPackage {
  '') ["date" "path"]) ;
 
   disabled = with lua; (luaOlder "5.1");
-  propagatedBuildInputs = [ lua luafilesystem lpeg argparse ];
+  propagatedBuildInputs = [ argparse lua lpeg luafilesystem ];
 
   meta = {
     homepage = "http://moonscript.org";
@@ -2551,7 +2584,7 @@ buildLuarocksPackage {
 }) {};
 
 nvim-client = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchurl, coxpcall, luv, mpack, lua
+, fetchurl, luv, coxpcall, mpack, lua
 }:
 buildLuarocksPackage {
   pname = "nvim-client";
@@ -2563,7 +2596,7 @@ buildLuarocksPackage {
   };
 
   disabled = with lua; (luaOlder "5.1");
-  propagatedBuildInputs = [ coxpcall luv mpack lua ];
+  propagatedBuildInputs = [ luv coxpcall mpack lua ];
 
   meta = {
     homepage = "https://github.com/neovim/lua-client";
@@ -2598,7 +2631,7 @@ buildLuarocksPackage {
 }) {};
 
 penlight = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchgit, luafilesystem, lua
+, fetchgit, lua, luafilesystem
 , busted}:
 buildLuarocksPackage {
   pname = "penlight";
@@ -2618,7 +2651,7 @@ buildLuarocksPackage {
  '') ["date" "path"]) ;
 
   disabled = with lua; (luaOlder "5.1");
-  propagatedBuildInputs = [ luafilesystem lua ];
+  propagatedBuildInputs = [ lua luafilesystem ];
   checkInputs = [ busted ];
 
   meta = {
@@ -2630,7 +2663,7 @@ buildLuarocksPackage {
 }) {};
 
 plenary-nvim = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchgit, lua, luassert
+, fetchgit, luassert, lua
 }:
 buildLuarocksPackage {
   pname = "plenary.nvim";
@@ -2638,10 +2671,10 @@ buildLuarocksPackage {
 
   src = fetchgit ( removeAttrs (builtins.fromJSON ''{
   "url": "https://github.com/nvim-lua/plenary.nvim",
-  "rev": "4b66054e75356ac0b909bbfee9c682e703f535c2",
-  "date": "2022-09-03T11:21:04+02:00",
-  "path": "/nix/store/gaphh0qlf40ryk2000plscvzcbzg0kz5-plenary.nvim",
-  "sha256": "1yl5m7is35bk30swr5m1pcl2i0wf8gjcnas6bpahlxqa4x0yr1x8",
+  "rev": "4b7e52044bbb84242158d977a50c4cbcd85070c7",
+  "date": "2022-10-01T09:05:53+02:00",
+  "path": "/nix/store/hkj69cqq4qg3d98irg8wszgl7i1bg6lv-plenary.nvim",
+  "sha256": "11815h0h2mf5ym282ghk7xav90635r88qbgaflpgbyk2banl31wl",
   "fetchLFS": false,
   "fetchSubmodules": true,
   "deepClone": false,
@@ -2650,7 +2683,7 @@ buildLuarocksPackage {
  '') ["date" "path"]) ;
 
   disabled = with lua; (luaOlder "5.1") || (luaAtLeast "5.4");
-  propagatedBuildInputs = [ lua luassert ];
+  propagatedBuildInputs = [ luassert lua ];
 
   meta = {
     homepage = "http://github.com/nvim-lua/plenary.nvim";
@@ -2691,22 +2724,22 @@ buildLuarocksPackage {
 }) {};
 
 readline = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchurl, luaposix, lua
+, fetchurl, lua, luaposix
 }:
 buildLuarocksPackage {
   pname = "readline";
-  version = "3.1-0";
+  version = "3.2-0";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/readline-3.1-0.rockspec";
-    sha256 = "0bl5hsplnlg8fx3v83sz48y2p1rlxfig3iycnk1pn3xi724kscnc";
+    url    = "mirror://luarocks/readline-3.2-0.rockspec";
+    sha256 = "1r0sgisxm4xd1r6i053iibxh30j7j3rcj4wwkd8rzkj8nln20z24";
   }).outPath;
   src = fetchurl {
-    url    = "http://www.pjb.com.au/comp/lua/readline-3.1.tar.gz";
-    sha256 = "0i02jsywj9mb4lwiyp742xgz53i9z5xzpx34lh54hcd6q3xkcrw2";
+    url    = "http://www.pjb.com.au/comp/lua/readline-3.2.tar.gz";
+    sha256 = "1mk9algpsvyqwhnq7jlw4cgmfzj30l7n2r6ak4qxgdxgc39f48k4";
   };
 
   disabled = with lua; (luaOlder "5.1") || (luaAtLeast "5.5");
-  propagatedBuildInputs = [ luaposix lua ];
+  propagatedBuildInputs = [ lua luaposix ];
 
   meta = {
     homepage = "http://pjb.com.au/comp/lua/readline.html";
@@ -2736,6 +2769,7 @@ buildLuarocksPackage {
   meta = {
     homepage = "https://github.com/rest-nvim/rest.nvim";
     description = "A fast Neovim http client written in Lua";
+    maintainers = with lib.maintainers; [ teto ];
     license.fullName = "MIT";
   };
 }) {};
@@ -2869,7 +2903,7 @@ buildLuarocksPackage {
 }) {};
 
 std-normalize = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchgit, lua, std-_debug
+, fetchgit, std-_debug, lua
 }:
 buildLuarocksPackage {
   pname = "std.normalize";
@@ -2889,7 +2923,7 @@ buildLuarocksPackage {
  '') ["date" "path"]) ;
 
   disabled = with lua; (luaOlder "5.1") || (luaAtLeast "5.5");
-  propagatedBuildInputs = [ lua std-_debug ];
+  propagatedBuildInputs = [ std-_debug lua ];
 
   meta = {
     homepage = "https://lua-stdlib.github.io/normalize";
@@ -2925,7 +2959,7 @@ buildLuarocksPackage {
 }) {};
 
 tl = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
-, fetchgit, compat53, luafilesystem, argparse
+, fetchgit, argparse, luafilesystem, compat53
 , dkjson}:
 buildLuarocksPackage {
   pname = "tl";
@@ -2947,7 +2981,7 @@ buildLuarocksPackage {
 }
  '') ["date" "path"]) ;
 
-  propagatedBuildInputs = [ compat53 luafilesystem argparse ];
+  propagatedBuildInputs = [ argparse luafilesystem compat53 ];
   checkInputs = [ dkjson ];
 
   meta = {
@@ -2987,6 +3021,39 @@ buildLuarocksPackage {
   };
 }) {};
 
+vusted = callPackage({ buildLuarocksPackage, luaOlder, luaAtLeast
+, fetchgit, busted
+}:
+buildLuarocksPackage {
+  pname = "vusted";
+  version = "2.1.1-1";
+  knownRockspec = (fetchurl {
+    url    = "mirror://luarocks/vusted-2.1.1-1.rockspec";
+    sha256 = "12zw09ib3mmwh1kvcj228dhws2ldvwzymr7qbsq6l5kysaahhjm3";
+  }).outPath;
+  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
+  "url": "https://github.com/notomo/vusted.git",
+  "rev": "9607444b9e259b82c0615caabb5fea8cea918edc",
+  "date": "2022-09-12T21:55:42+09:00",
+  "path": "/nix/store/pb5inf25lr63bbc1mvx8aqlh83i4ynwd-vusted",
+  "sha256": "0wv5lmzf36ga0lmyh0xaw4g2jz9hmw4766xmpznbhn2p64lm9kyl",
+  "fetchLFS": false,
+  "fetchSubmodules": true,
+  "deepClone": false,
+  "leaveDotGit": false
+}
+ '') ["date" "path"]) ;
+
+  propagatedBuildInputs = [ busted ];
+
+  meta = {
+    homepage = "https://github.com/notomo/vusted";
+    description = "`busted` wrapper for testing neovim plugin";
+    maintainers = with lib.maintainers; [ figsoda ];
+    license.fullName = "MIT <http://opensource.org/licenses/MIT>";
+  };
+}) {};
+
 
 }
 /* GENERATED - do not edit this file */
diff --git a/pkgs/development/lua-modules/overrides.nix b/pkgs/development/lua-modules/overrides.nix
index e5d5e11185530..a59f1d94da911 100644
--- a/pkgs/development/lua-modules/overrides.nix
+++ b/pkgs/development/lua-modules/overrides.nix
@@ -427,7 +427,8 @@ with prev;
 
   luv = prev.luaLib.overrideLuarocks prev.luv (drv: {
 
-    buildInputs = [ pkg-config libuv ];
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libuv ];
 
     # Use system libuv instead of building local and statically linking
     extraVariables = {
@@ -513,6 +514,13 @@ with prev;
     '';
   });
 
+  vusted = prev.vusted.overrideAttrs (_: {
+    # make sure vusted_entry.vim doesn't get wrapped
+    postInstall = ''
+      chmod -x $out/bin/vusted_entry.vim
+    '';
+  });
+
   # TODO just while testing, remove afterwards
   # toVimPlugin should do it instead
   gitsigns-nvim = prev.gitsigns-nvim.overrideAttrs (oa: {
diff --git a/pkgs/development/misc/brev-cli/default.nix b/pkgs/development/misc/brev-cli/default.nix
index a3debb10fc5a5..0e5faa37bf5ef 100644
--- a/pkgs/development/misc/brev-cli/default.nix
+++ b/pkgs/development/misc/brev-cli/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "brev-cli";
-  version = "0.6.116";
+  version = "0.6.118";
 
   src = fetchFromGitHub {
     owner = "brevdev";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-4W6Ew80HN436mEG+gjEj8cuVY3iCQBpqNO1voAMDX1o=";
+    sha256 = "sha256-nUhVHVjhrZm+Y/kIF3D85orm/EECug2xYSpcItYCThU=";
   };
 
   vendorSha256 = "sha256-5P9oodntXn7RMpjKLoCXlnEZeW4/W0hfYPt7I3hjvGw=";
diff --git a/pkgs/development/misc/resholve/resholve.nix b/pkgs/development/misc/resholve/resholve.nix
index 959e7ee0cb524..435cca919da6d 100644
--- a/pkgs/development/misc/resholve/resholve.nix
+++ b/pkgs/development/misc/resholve/resholve.nix
@@ -19,24 +19,16 @@ python27Packages.buildPythonApplication {
 
   propagatedBuildInputs = [
     oildev
-    /*
-    Disable configargparse's tests on aarch64-darwin.
-    Several of py27 scandir's tests fail on aarch64-darwin. Chain:
-    configargparse -> pytest-check-hook -> pytest -> pathlib2 -> scandir
-    TODO: drop if https://github.com/NixOS/nixpkgs/issues/156807 resolves?
-    */
-    (python27Packages.configargparse.overridePythonAttrs (old: {
-      doCheck = stdenv.hostPlatform.system != "aarch64-darwin";
-    }))
+    python27Packages.configargparse
   ];
 
-  patchPhase = ''
+  postPatch = ''
     for file in setup.cfg _resholve/version.py; do
       substituteInPlace $file --subst-var-by version ${version}
     done
   '';
 
-   postInstall = ''
+  postInstall = ''
     installManPage resholve.1
   '';
 
diff --git a/pkgs/development/nim-packages/build-nim-package/default.nix b/pkgs/development/nim-packages/build-nim-package/default.nix
index 46d898cc1d22c..5ad181252df44 100644
--- a/pkgs/development/nim-packages/build-nim-package/default.nix
+++ b/pkgs/development/nim-packages/build-nim-package/default.nix
@@ -2,10 +2,10 @@
 
 { strictDeps ? true, depsBuildBuild ? [ ], nativeBuildInputs ? [ ]
 , configurePhase ? null, buildPhase ? null, checkPhase ? null
-, installPhase ? null, meta ? { }, ... }@attrs:
+, installPhase ? null, enableParallelBuilding ? true, meta ? { }, ... }@attrs:
 
 stdenv.mkDerivation (attrs // {
-  inherit strictDeps;
+  inherit strictDeps enableParallelBuilding;
   depsBuildBuild = [ nim_builder ] ++ depsBuildBuild;
   nativeBuildInputs = [ nim ] ++ nativeBuildInputs;
 
diff --git a/pkgs/development/nim-packages/nim_builder/nim_builder.nim b/pkgs/development/nim-packages/nim_builder/nim_builder.nim
index 0cb68e63f1373..8bb78555c2690 100644
--- a/pkgs/development/nim-packages/nim_builder/nim_builder.nim
+++ b/pkgs/development/nim-packages/nim_builder/nim_builder.nim
@@ -119,8 +119,8 @@ proc buildPhase*() =
     binDir = getOutputDir("bin") / "bin"
   if bins != @[]:
     for bin in bins:
-      cmds.add("nim compile $# --outdir:$# $#" %
-          [getenv"nimFlags", binDir, normalizedPath(srcDir / bin)])
+      cmds.add("nim compile $# --parallelBuild:$# --outdir:$# $#" %
+          [getenv("nimFlags"), getenv("NIX_BUILD_CORES","1"), binDir, normalizedPath(srcDir / bin)])
   if getEnvBool"nimDoc":
     echo "generating documentation"
     let docDir = getOutputDir("doc") / "doc"
diff --git a/pkgs/development/node-packages/node-packages.json b/pkgs/development/node-packages/node-packages.json
index 8ae9b1e053990..d38a2809e982b 100644
--- a/pkgs/development/node-packages/node-packages.json
+++ b/pkgs/development/node-packages/node-packages.json
@@ -32,6 +32,7 @@
 , "asar"
 , "audiosprite"
 , "autoprefixer"
+, "auto-changelog"
 , "aws-azure-login"
 , "aws-cdk"
 , "awesome-lint"
diff --git a/pkgs/development/node-packages/node-packages.nix b/pkgs/development/node-packages/node-packages.nix
index a4709f2a791d3..f9188054eec33 100644
--- a/pkgs/development/node-packages/node-packages.nix
+++ b/pkgs/development/node-packages/node-packages.nix
@@ -112,13 +112,13 @@ let
         sha512 = "qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==";
       };
     };
-    "@angular-devkit/architect-0.1402.4" = {
+    "@angular-devkit/architect-0.1402.5" = {
       name = "_at_angular-devkit_slash_architect";
       packageName = "@angular-devkit/architect";
-      version = "0.1402.4";
+      version = "0.1402.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1402.4.tgz";
-        sha512 = "lOgyKJ+KjBYWzgcxJ3vAy3RFkqRmSw3RY4thNsWOHLvzT8o33u3USDuOr6cDAQW12NjX9K7JDuvNlPbadjQbSQ==";
+        url = "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1402.5.tgz";
+        sha512 = "vtJEwB51UEY1Q7FCI7xGLdhdb2SRTtI1Qs0or95momn85NuxlaMQsXK1Wxu9/EwtWKZK8dXePXbB/hpiNt61JQ==";
       };
     };
     "@angular-devkit/core-14.2.1" = {
@@ -139,13 +139,13 @@ let
         sha512 = "ofDhTmJqoAkmkJP0duwUaCxDBMxPlc+AWYwgs3rKKZeJBb0d+tchEXHXevD5bYbbRfXtnwM+Vye2XYHhA4nWAA==";
       };
     };
-    "@angular-devkit/core-14.2.4" = {
+    "@angular-devkit/core-14.2.5" = {
       name = "_at_angular-devkit_slash_core";
       packageName = "@angular-devkit/core";
-      version = "14.2.4";
+      version = "14.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/core/-/core-14.2.4.tgz";
-        sha512 = "NsvN1U42goBcibVR75vDp2NOFeSU+Wcekwf1r3Jbyz6a2l9Unf0v9BOWLXdigFY8xztbrOHJPSIbC+2rkvOUnw==";
+        url = "https://registry.npmjs.org/@angular-devkit/core/-/core-14.2.5.tgz";
+        sha512 = "lSje+HX0fx9Y2A4k63jVHrWdGT4wellhwcZpTCv9P6LvdfTkAlrfra3TaYhUPjavCsPwlRC/VVQN3Qkzk5m6gA==";
       };
     };
     "@angular-devkit/schematics-14.2.1" = {
@@ -166,13 +166,13 @@ let
         sha512 = "90hseNg1yQ2AR+lVr/NByZRHnYAlzCL6hr9p9q1KPHxA3Owo04yX6n6dvR/xf27hCopXInXKPsasR59XCx5ZOQ==";
       };
     };
-    "@angular-devkit/schematics-14.2.4" = {
+    "@angular-devkit/schematics-14.2.5" = {
       name = "_at_angular-devkit_slash_schematics";
       packageName = "@angular-devkit/schematics";
-      version = "14.2.4";
+      version = "14.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-14.2.4.tgz";
-        sha512 = "Pm2C7HBNslQavsqXh6/rcyAavmgzTxU3x7NoWwSBH+fIplLJjEFzHdnW9JJp59A2ONfqO0wND3yWKtjIoDAUqw==";
+        url = "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-14.2.5.tgz";
+        sha512 = "3a//d8f/yuR1F2QXAyX4pShWdkHBWbY1qpqqVnN9gRJ+ye6pY098gsCQKpKXPZGeV08ugu5v79f5JELMthBBSQ==";
       };
     };
     "@angular-devkit/schematics-cli-14.2.2" = {
@@ -508,13 +508,13 @@ let
         sha512 = "vBMPy9ok4iLapSyCCT1qsZ9dK7LkVFl9mObtLEmWiec9myGHS9h2kQY2xzPeFNJiWXUf9O6tSyQpQTy5As/p3g==";
       };
     };
-    "@asyncapi/specs-2.14.0" = {
+    "@asyncapi/specs-3.2.1" = {
       name = "_at_asyncapi_slash_specs";
       packageName = "@asyncapi/specs";
-      version = "2.14.0";
+      version = "3.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@asyncapi/specs/-/specs-2.14.0.tgz";
-        sha512 = "hHsYF6XsYNIKb1P2rXaooF4H+uKKQ4b/Ljxrk3rZ3riEDiSxMshMEfb1fUlw9Yj4V4OmJhjXwkNvw8W59AXv1A==";
+        url = "https://registry.npmjs.org/@asyncapi/specs/-/specs-3.2.1.tgz";
+        sha512 = "FO+EteK+Gk3zwumrBw6frpp9cJ4oQL5++hBBpfM81w16e9KaiA4sKrzvQsvVjifoZZHNvVEX4D2zoz9i8CLccQ==";
       };
     };
     "@aws-crypto/crc32-2.0.0" = {
@@ -589,733 +589,733 @@ let
         sha512 = "Lgu5v/0e/BcrZ5m/IWqzPUf3UYFTy/PpeED+uc9SWUR1iZQL8XXbGQg10UfllwwBryO3hFF5dizK+78aoXC1eA==";
       };
     };
-    "@aws-sdk/abort-controller-3.178.0" = {
+    "@aws-sdk/abort-controller-3.186.0" = {
       name = "_at_aws-sdk_slash_abort-controller";
       packageName = "@aws-sdk/abort-controller";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.178.0.tgz";
-        sha512 = "ptDkCB06BJrYdhKzamM9yI15LxcGkPczY80hzKAY/aecm09alnW27uCt5HJJx2nCd18IUH28ZO1sc7DTLOWb3A==";
+        url = "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.186.0.tgz";
+        sha512 = "JFvvvtEcbYOvVRRXasi64Dd1VcOz5kJmPvtzsJ+HzMHvPbGGs/aopOJAZQJMJttzJmJwVTay0QL6yag9Kk8nYA==";
       };
     };
-    "@aws-sdk/chunked-blob-reader-3.170.0" = {
+    "@aws-sdk/chunked-blob-reader-3.186.0" = {
       name = "_at_aws-sdk_slash_chunked-blob-reader";
       packageName = "@aws-sdk/chunked-blob-reader";
-      version = "3.170.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/chunked-blob-reader/-/chunked-blob-reader-3.170.0.tgz";
-        sha512 = "73Fy1u9zR9ZMC59QobuCWg3LoYfcrFsrP8569vvqtlGqPuQUW+RW3gfx0omIDmxaSg8qq8REPLJFrAGfeL7VtQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/chunked-blob-reader/-/chunked-blob-reader-3.186.0.tgz";
+        sha512 = "ChpW/teYM0vhV4vG7/ZE4zwr2IWrLX+R/s6LulqgC9x/5fngMUAjT7D8V9UgoCwjKosxBEaKEKuGcgBdODGndg==";
       };
     };
-    "@aws-sdk/chunked-blob-reader-native-3.170.0" = {
+    "@aws-sdk/chunked-blob-reader-native-3.186.0" = {
       name = "_at_aws-sdk_slash_chunked-blob-reader-native";
       packageName = "@aws-sdk/chunked-blob-reader-native";
-      version = "3.170.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/chunked-blob-reader-native/-/chunked-blob-reader-native-3.170.0.tgz";
-        sha512 = "haJ7fdWaOgAM4trw2LBd1VIvRFzMMPz2jy9mu4rE+z1uHbPZHNMGytBo1FJO2DShzUCmJZi3t3CD/7aE3H38+w==";
+        url = "https://registry.npmjs.org/@aws-sdk/chunked-blob-reader-native/-/chunked-blob-reader-native-3.186.0.tgz";
+        sha512 = "klbrNZYWRhfkRMSK9NJObXgU9DD1lqYufH0BjeoYgApg5Dsywa+GpN/1DQveKTxGs08GFnhsc27dJLcNJCmAXw==";
       };
     };
-    "@aws-sdk/client-s3-3.180.0" = {
+    "@aws-sdk/client-s3-3.186.0" = {
       name = "_at_aws-sdk_slash_client-s3";
       packageName = "@aws-sdk/client-s3";
-      version = "3.180.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.180.0.tgz";
-        sha512 = "0YuIHk0dNvROz3IVNt3BHRPMhmd4jKnL84nXFomBViU7L7S09Pu8EjnZOTxjsiI2aAndj42kRqZOl5NjAaoTvQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.186.0.tgz";
+        sha512 = "tUvUkqKh1MQ8g4HDJyekZnSVjJ44pjo0QZmrV9gwpnyCymYoxPShz5zT5CsYyXYTOx81yxIBw6/mkFKEJ8MZ2g==";
       };
     };
-    "@aws-sdk/client-sso-3.180.0" = {
+    "@aws-sdk/client-sso-3.186.0" = {
       name = "_at_aws-sdk_slash_client-sso";
       packageName = "@aws-sdk/client-sso";
-      version = "3.180.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.180.0.tgz";
-        sha512 = "wwhGa+Jksc4NE+4MZVv0Jkvt1C10/Gd5NATiv+hjcCY7DdxQ31UsbUrbZ38tBK8XX+vqFlcrP1AsoXNvrjBBVw==";
+        url = "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.186.0.tgz";
+        sha512 = "qwLPomqq+fjvp42izzEpBEtGL2+dIlWH5pUCteV55hTEwHgo+m9LJPIrMWkPeoMBzqbNiu5n6+zihnwYlCIlEA==";
       };
     };
-    "@aws-sdk/client-sts-3.180.0" = {
+    "@aws-sdk/client-sts-3.186.0" = {
       name = "_at_aws-sdk_slash_client-sts";
       packageName = "@aws-sdk/client-sts";
-      version = "3.180.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.180.0.tgz";
-        sha512 = "QSgbYPrZ1QZTaxV3fwziVPvctwaAjdTMxA4VSMDh2yTFPIDmA8IMi8doEAcRaJeUK5n9UR8O3oWOs+wAs9Mkpw==";
+        url = "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.186.0.tgz";
+        sha512 = "lyAPI6YmIWWYZHQ9fBZ7QgXjGMTtktL5fk8kOcZ98ja+8Vu0STH1/u837uxqvZta8/k0wijunIL3jWUhjsNRcg==";
       };
     };
-    "@aws-sdk/config-resolver-3.178.0" = {
+    "@aws-sdk/config-resolver-3.186.0" = {
       name = "_at_aws-sdk_slash_config-resolver";
       packageName = "@aws-sdk/config-resolver";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.178.0.tgz";
-        sha512 = "8xL98TGMaVULIN7HRWV2q1o0Y2p38QuweehzM8yXCZrrLOyHgWo3waP2RNVeddOB7MrSwwU/gw9rXSv7YHLZ6w==";
+        url = "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.186.0.tgz";
+        sha512 = "l8DR7Q4grEn1fgo2/KvtIfIHJS33HGKPQnht8OPxkl0dMzOJ0jxjOw/tMbrIcPnr2T3Fi7LLcj3dY1Fo1poruQ==";
       };
     };
-    "@aws-sdk/credential-provider-env-3.178.0" = {
+    "@aws-sdk/credential-provider-env-3.186.0" = {
       name = "_at_aws-sdk_slash_credential-provider-env";
       packageName = "@aws-sdk/credential-provider-env";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.178.0.tgz";
-        sha512 = "5CMswTJ188RuK9TmI5yAosIsyu4Mm9Cdq1068tRls5EqqwGK1PI7Q007b6rD7zqCb5IgeFBV0t2DxHkBmHRd3w==";
+        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.186.0.tgz";
+        sha512 = "N9LPAqi1lsQWgxzmU4NPvLPnCN5+IQ3Ai1IFf3wM6FFPNoSUd1kIA2c6xaf0BE7j5Kelm0raZOb4LnV3TBAv+g==";
       };
     };
-    "@aws-sdk/credential-provider-imds-3.178.0" = {
+    "@aws-sdk/credential-provider-imds-3.186.0" = {
       name = "_at_aws-sdk_slash_credential-provider-imds";
       packageName = "@aws-sdk/credential-provider-imds";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.178.0.tgz";
-        sha512 = "ZvqQTi3+S13LACVgaWNCOKBv5jROIz7rqyZh56QunAkaAUqPbpM4VFODgAGZYPCOSggZbEUUqXOVB9xSnshLnA==";
+        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.186.0.tgz";
+        sha512 = "iJeC7KrEgPPAuXjCZ3ExYZrRQvzpSdTZopYgUm5TnNZ8S1NU/4nvv5xVy61JvMj3JQAeG8UDYYgC421Foc8wQw==";
       };
     };
-    "@aws-sdk/credential-provider-ini-3.180.0" = {
+    "@aws-sdk/credential-provider-ini-3.186.0" = {
       name = "_at_aws-sdk_slash_credential-provider-ini";
       packageName = "@aws-sdk/credential-provider-ini";
-      version = "3.180.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.180.0.tgz";
-        sha512 = "P4fqj0WRHoQ/eGhym/QJNl3AndDN9vyOuDSIyOWLky+ngy/pGznZyzQzhyq7Cju0mgnBeFDac6Evq0aHax1iOA==";
+        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.186.0.tgz";
+        sha512 = "ecrFh3MoZhAj5P2k/HXo/hMJQ3sfmvlommzXuZ/D1Bj2yMcyWuBhF1A83Fwd2gtYrWRrllsK3IOMM5Jr8UIVZA==";
       };
     };
-    "@aws-sdk/credential-provider-node-3.180.0" = {
+    "@aws-sdk/credential-provider-node-3.186.0" = {
       name = "_at_aws-sdk_slash_credential-provider-node";
       packageName = "@aws-sdk/credential-provider-node";
-      version = "3.180.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.180.0.tgz";
-        sha512 = "M3vevtIcTAlROJEJo2WIVDVrL077vh1j3w0b5IwizCvcpHBiZ+2agWcFVR/NfCvFbdYjZd49otGnbCUMHWiRcA==";
+        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.186.0.tgz";
+        sha512 = "HIt2XhSRhEvVgRxTveLCzIkd/SzEBQfkQ6xMJhkBtfJw1o3+jeCk+VysXM0idqmXytctL0O3g9cvvTHOsUgxOA==";
       };
     };
-    "@aws-sdk/credential-provider-process-3.178.0" = {
+    "@aws-sdk/credential-provider-process-3.186.0" = {
       name = "_at_aws-sdk_slash_credential-provider-process";
       packageName = "@aws-sdk/credential-provider-process";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.178.0.tgz";
-        sha512 = "J4TldKrAnfayvRfxNEnLJUnTgkpTcct6rc7PwZlVSGSUgjglbcqfemUOP/pisLKbVNNL742lsUXmkUVH4km0Fw==";
+        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.186.0.tgz";
+        sha512 = "ATRU6gbXvWC1TLnjOEZugC/PBXHBoZgBADid4fDcEQY1vF5e5Ux1kmqkJxyHtV5Wl8sE2uJfwWn+FlpUHRX67g==";
       };
     };
-    "@aws-sdk/credential-provider-sso-3.180.0" = {
+    "@aws-sdk/credential-provider-sso-3.186.0" = {
       name = "_at_aws-sdk_slash_credential-provider-sso";
       packageName = "@aws-sdk/credential-provider-sso";
-      version = "3.180.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.180.0.tgz";
-        sha512 = "hv8qME1ISd6GN+YCa0WK73xL6p2Sx0JiSRTzgb5bvGcdxVGLzvIlFd0VAtVhP7d84Prf6EeGz0+sGEEYRusw2w==";
+        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.186.0.tgz";
+        sha512 = "mJ+IZljgXPx99HCmuLgBVDPLepHrwqnEEC/0wigrLCx6uz3SrAWmGZsNbxSEtb2CFSAaczlTHcU/kIl7XZIyeQ==";
       };
     };
-    "@aws-sdk/credential-provider-web-identity-3.178.0" = {
+    "@aws-sdk/credential-provider-web-identity-3.186.0" = {
       name = "_at_aws-sdk_slash_credential-provider-web-identity";
       packageName = "@aws-sdk/credential-provider-web-identity";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.178.0.tgz";
-        sha512 = "aei8o9ALtzwgYsZCAWdr+ItJyYTkYRmCoKstM4mkGtWNK9BjdISaVUAnndl6Pc/l/5eiK+2rlA+6Ujs4H8m+XQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.186.0.tgz";
+        sha512 = "KqzI5eBV72FE+8SuOQAu+r53RXGVHg4AuDJmdXyo7Gc4wS/B9FNElA8jVUjjYgVnf0FSiri+l41VzQ44dCopSA==";
       };
     };
-    "@aws-sdk/eventstream-codec-3.178.0" = {
+    "@aws-sdk/eventstream-codec-3.186.0" = {
       name = "_at_aws-sdk_slash_eventstream-codec";
       packageName = "@aws-sdk/eventstream-codec";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/eventstream-codec/-/eventstream-codec-3.178.0.tgz";
-        sha512 = "x18waxfidmI9i4BLpnwV37rxHPyyviyWo5qRgYWX+gLxhN6Z6sB3/Pc/s8/yQmywMs6/DlMBYJUDTvYXR1cezA==";
+        url = "https://registry.npmjs.org/@aws-sdk/eventstream-codec/-/eventstream-codec-3.186.0.tgz";
+        sha512 = "3kLcJ0/H+zxFlhTlE1SGoFpzd/SitwXOsTSlYVwrwdISKRjooGg0BJpm1CSTkvmWnQIUlYijJvS96TAJ+fCPIA==";
       };
     };
-    "@aws-sdk/eventstream-serde-browser-3.178.0" = {
+    "@aws-sdk/eventstream-serde-browser-3.186.0" = {
       name = "_at_aws-sdk_slash_eventstream-serde-browser";
       packageName = "@aws-sdk/eventstream-serde-browser";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/eventstream-serde-browser/-/eventstream-serde-browser-3.178.0.tgz";
-        sha512 = "UMlCevpJoQ8oMlNKlQF0Ti5zIztLzx9zcrxfi4KK1A22qXamTA5kHloyq1mFwrTkbcr4uhQ9omDDx//hYQ+yNw==";
+        url = "https://registry.npmjs.org/@aws-sdk/eventstream-serde-browser/-/eventstream-serde-browser-3.186.0.tgz";
+        sha512 = "0r2c+yugBdkP5bglGhGOgztjeHdHTKqu2u6bvTByM0nJShNO9YyqWygqPqDUOE5axcYQE1D0aFDGzDtP3mGJhw==";
       };
     };
-    "@aws-sdk/eventstream-serde-config-resolver-3.178.0" = {
+    "@aws-sdk/eventstream-serde-config-resolver-3.186.0" = {
       name = "_at_aws-sdk_slash_eventstream-serde-config-resolver";
       packageName = "@aws-sdk/eventstream-serde-config-resolver";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.178.0.tgz";
-        sha512 = "LmH5JuNCOvUI2g/7e2qlvHqRQW316J5iTawZQd233xUlmRO49kHc8HFvKPo98/V/S4MFsjlrZF9dcnly2txCxw==";
+        url = "https://registry.npmjs.org/@aws-sdk/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.186.0.tgz";
+        sha512 = "xhwCqYrAX5c7fg9COXVw6r7Sa3BO5cCfQMSR5S1QisE7do8K1GDKEHvUCheOx+RLon+P3glLjuNBMdD0HfCVNA==";
       };
     };
-    "@aws-sdk/eventstream-serde-node-3.178.0" = {
+    "@aws-sdk/eventstream-serde-node-3.186.0" = {
       name = "_at_aws-sdk_slash_eventstream-serde-node";
       packageName = "@aws-sdk/eventstream-serde-node";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/eventstream-serde-node/-/eventstream-serde-node-3.178.0.tgz";
-        sha512 = "YsFoZ8MlVReGm7GKMjvo5vxLVo/ZPSDg6ckp7kff18zZMlbNtuK+zfgub3tX1f2hbDoV2bBVL3xuZJkeBELpHQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/eventstream-serde-node/-/eventstream-serde-node-3.186.0.tgz";
+        sha512 = "9p/gdukJYfmA+OEYd6MfIuufxrrfdt15lBDM3FODuc9j09LSYSRHSxthkIhiM5XYYaaUM+4R0ZlSMdaC3vFDFQ==";
       };
     };
-    "@aws-sdk/eventstream-serde-universal-3.178.0" = {
+    "@aws-sdk/eventstream-serde-universal-3.186.0" = {
       name = "_at_aws-sdk_slash_eventstream-serde-universal";
       packageName = "@aws-sdk/eventstream-serde-universal";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/eventstream-serde-universal/-/eventstream-serde-universal-3.178.0.tgz";
-        sha512 = "Rd8QjqzN2roSHsLn0y1iCt/KrEQL2qlNdunXRjBwXvjZGuODa6M8gpOvaPNpTWLiD+V6mO0zuPp+tWiLZxMndw==";
+        url = "https://registry.npmjs.org/@aws-sdk/eventstream-serde-universal/-/eventstream-serde-universal-3.186.0.tgz";
+        sha512 = "rIgPmwUxn2tzainBoh+cxAF+b7o01CcW+17yloXmawsi0kiR7QK7v9m/JTGQPWKtHSsPOrtRzuiWQNX57SlcsQ==";
       };
     };
-    "@aws-sdk/fetch-http-handler-3.178.0" = {
+    "@aws-sdk/fetch-http-handler-3.186.0" = {
       name = "_at_aws-sdk_slash_fetch-http-handler";
       packageName = "@aws-sdk/fetch-http-handler";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.178.0.tgz";
-        sha512 = "T/LCNwCihdVNzGn39Dw7tk2U1fMlupFlCsAvDBbO+FOM3h+y9WLHzxmlAVsjPrFXlzdONKf9zd5cuQ+ZW93yAQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.186.0.tgz";
+        sha512 = "k2v4AAHRD76WnLg7arH94EvIclClo/YfuqO7NoQ6/KwOxjRhs4G6TgIsAZ9E0xmqoJoV81Xqy8H8ldfy9F8LEw==";
       };
     };
-    "@aws-sdk/hash-blob-browser-3.178.0" = {
+    "@aws-sdk/hash-blob-browser-3.186.0" = {
       name = "_at_aws-sdk_slash_hash-blob-browser";
       packageName = "@aws-sdk/hash-blob-browser";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/hash-blob-browser/-/hash-blob-browser-3.178.0.tgz";
-        sha512 = "LgrKDNi56q3ayxcvbC0MMt/fgliKgMb8G2o1y6bUAKzlEtBHLFfTUjvzW1WsDfK8ZSrtz/bZNGECIjeFEdTggQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/hash-blob-browser/-/hash-blob-browser-3.186.0.tgz";
+        sha512 = "u8QvmXGySqy2QRbkAfx1bX/idSiejuy2q3WKamGysy9Ylogprr5kq2v0E+7vnLo9rBjuquUbVvI5eskIgZDMmg==";
       };
     };
-    "@aws-sdk/hash-node-3.178.0" = {
+    "@aws-sdk/hash-node-3.186.0" = {
       name = "_at_aws-sdk_slash_hash-node";
       packageName = "@aws-sdk/hash-node";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.178.0.tgz";
-        sha512 = "mqYraRQlvPO5egUKTNZ1kP52sfwBlsz7woOewQTHOGomZBDXrh8bl1J+sgaDi1NAwXdZUgxuD3QKxxAKRs9a2Q==";
+        url = "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.186.0.tgz";
+        sha512 = "G3zuK8/3KExDTxqrGqko+opOMLRF0BwcwekV/wm3GKIM/NnLhHblBs2zd/yi7VsEoWmuzibfp6uzxgFpEoJ87w==";
       };
     };
-    "@aws-sdk/hash-stream-node-3.178.0" = {
+    "@aws-sdk/hash-stream-node-3.186.0" = {
       name = "_at_aws-sdk_slash_hash-stream-node";
       packageName = "@aws-sdk/hash-stream-node";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/hash-stream-node/-/hash-stream-node-3.178.0.tgz";
-        sha512 = "YzockpOajp5WOweB+/hIrQy9KNVXEgnbMDcuCmevYfoub+BJbjCs5eAZrhCJBkXpRKBz3X1U0vlYp7twFacPqw==";
+        url = "https://registry.npmjs.org/@aws-sdk/hash-stream-node/-/hash-stream-node-3.186.0.tgz";
+        sha512 = "n+VphPuMbl2iKrW1zVpoqQQDuPej/Hr4+I5UdZC39Cq/XfgDqh6QDy73Q9OypGuyEKrxZ5E5Pa+BWi4pGtt08w==";
       };
     };
-    "@aws-sdk/invalid-dependency-3.178.0" = {
+    "@aws-sdk/invalid-dependency-3.186.0" = {
       name = "_at_aws-sdk_slash_invalid-dependency";
       packageName = "@aws-sdk/invalid-dependency";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.178.0.tgz";
-        sha512 = "JJNaiLr3nbRYym6oUAAaoFFYtDnIZ9Scco2p4sG/thT2eyAfXcEdNl1cSD3E/R1J+Ml/YplqTiIY4u1KPAriRw==";
+        url = "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.186.0.tgz";
+        sha512 = "hjeZKqORhG2DPWYZ776lQ9YO3gjw166vZHZCZU/43kEYaCZHsF4mexHwHzreAY6RfS25cH60Um7dUh1aeVIpkw==";
       };
     };
-    "@aws-sdk/is-array-buffer-3.170.0" = {
+    "@aws-sdk/is-array-buffer-3.186.0" = {
       name = "_at_aws-sdk_slash_is-array-buffer";
       packageName = "@aws-sdk/is-array-buffer";
-      version = "3.170.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.170.0.tgz";
-        sha512 = "yYXqgp8rilBckIvNRs22yAXHKcXb86/g+F+hsTZl38OJintTsLQB//O5v6EQTYhSW7T3wMe1NHDrjZ+hFjAy4Q==";
+        url = "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.186.0.tgz";
+        sha512 = "fObm+P6mjWYzxoFY4y2STHBmSdgKbIAXez0xope563mox62I8I4hhVPUCaDVydXvDpJv8tbedJMk0meJl22+xA==";
       };
     };
-    "@aws-sdk/md5-js-3.178.0" = {
+    "@aws-sdk/md5-js-3.186.0" = {
       name = "_at_aws-sdk_slash_md5-js";
       packageName = "@aws-sdk/md5-js";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/md5-js/-/md5-js-3.178.0.tgz";
-        sha512 = "o/F4QKjJL2gQdGq5eQnVGc9SlJ+/TjUBDJfn0Nyz4/OhDYVRvf4yJLT3+I9ZQN5M6DoFgqrLPH0MUHv4EmDPpw==";
+        url = "https://registry.npmjs.org/@aws-sdk/md5-js/-/md5-js-3.186.0.tgz";
+        sha512 = "Pp86oeTi8qtfY4fIZYrHOqRWJc0PjolxETdtWBUhtjC8HY81ckZMqe+5Aosy8mtQJus/k83S0CJAyfE2ko/a6Q==";
       };
     };
-    "@aws-sdk/middleware-bucket-endpoint-3.178.0" = {
+    "@aws-sdk/middleware-bucket-endpoint-3.186.0" = {
       name = "_at_aws-sdk_slash_middleware-bucket-endpoint";
       packageName = "@aws-sdk/middleware-bucket-endpoint";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.178.0.tgz";
-        sha512 = "HCHonBmv5SWZMZqVNtWr73d6moZfcqTI87Xmi0Ofpra8tmu99WQpYgXmVLqK13wlPP2MJErBLkcDt15dsS0pJw==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.186.0.tgz";
+        sha512 = "Vrb/ZXxWohhq86lGnp8E+H9AyNJFEt70fjFavkMCrQe7mx4+WHNc5agsTRPF+IESV0MgsbDtELP72Gzqc4fpWQ==";
       };
     };
-    "@aws-sdk/middleware-content-length-3.178.0" = {
+    "@aws-sdk/middleware-content-length-3.186.0" = {
       name = "_at_aws-sdk_slash_middleware-content-length";
       packageName = "@aws-sdk/middleware-content-length";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.178.0.tgz";
-        sha512 = "p3n3IzU03eRzZivEoQn1HA83LbAKukZwRevsJpya1UfCUtWkXQO3v0jU8rhZE4deGa9k7zuCAEmJ8nCw3QxclQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.186.0.tgz";
+        sha512 = "Ol3c1ks3IK1s+Okc/rHIX7w2WpXofuQdoAEme37gHeml+8FtUlWH/881h62xfMdf+0YZpRuYv/eM7lBmJBPNJw==";
       };
     };
-    "@aws-sdk/middleware-endpoint-3.179.0" = {
+    "@aws-sdk/middleware-endpoint-3.186.0" = {
       name = "_at_aws-sdk_slash_middleware-endpoint";
       packageName = "@aws-sdk/middleware-endpoint";
-      version = "3.179.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.179.0.tgz";
-        sha512 = "1eIIxpUUirTqArR6j7LZ/RzYMPmUbu/XK+gnpOm70Tr+8D+lgDblIBzcEco1YDq6Lqezo9aYFADT+Bndq96x7Q==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.186.0.tgz";
+        sha512 = "cQCxFkx+ggb+O16000JZHDbM7m4+4L0cGoY8mVcEtcgWjT8eNgrI2enXqC6tAI4e9hitpNzFb3JMbc1aQG37uQ==";
       };
     };
-    "@aws-sdk/middleware-expect-continue-3.178.0" = {
+    "@aws-sdk/middleware-expect-continue-3.186.0" = {
       name = "_at_aws-sdk_slash_middleware-expect-continue";
       packageName = "@aws-sdk/middleware-expect-continue";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.178.0.tgz";
-        sha512 = "4OJgVeN2fBRHpRBNq1cCkT02QmsIZmiqsCXDgoRRlHJdcrbE5vLVs/PG/B1LB5ugxLD8EzwgoTbnOxIk0R1Weg==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.186.0.tgz";
+        sha512 = "ITGzpajC5jPl+1TDRJCWb2ASQuy0qcMijKP6xcCRPcuAyHPgrH59f+3CCfqNcnehNJptHoD5hFIU6r+WcOF8hQ==";
       };
     };
-    "@aws-sdk/middleware-flexible-checksums-3.178.0" = {
+    "@aws-sdk/middleware-flexible-checksums-3.186.0" = {
       name = "_at_aws-sdk_slash_middleware-flexible-checksums";
       packageName = "@aws-sdk/middleware-flexible-checksums";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.178.0.tgz";
-        sha512 = "nd9mvl7uF3S3ok4u9O/Avlc5d9YL8/OMDnKBoGeIYuop5bAdcO1t/sEJWEex6YYgtj0e20fIosO7maCXs8/C1A==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.186.0.tgz";
+        sha512 = "zb1a5b2JHNMbD0pkozs/TLIfxbvZVpAcF947LEDblD5OsC8UW/a3hTVDvq7K7TLT6jgrgEzMKJbqoxqGzPQlLA==";
       };
     };
-    "@aws-sdk/middleware-host-header-3.178.0" = {
+    "@aws-sdk/middleware-host-header-3.186.0" = {
       name = "_at_aws-sdk_slash_middleware-host-header";
       packageName = "@aws-sdk/middleware-host-header";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.178.0.tgz";
-        sha512 = "EFc9S63iwCmudVpVSiVPiTnp6WCfsRYUmTrZJJouZzthEhJwcrunwu7Fa9lHYb0zcWLgVFLhzs1Z34J/Er4JoQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.186.0.tgz";
+        sha512 = "5bTzrRzP2IGwyF3QCyMGtSXpOOud537x32htZf344IvVjrqZF/P8CDfGTkHkeBCIH+wnJxjK+l/QBb3ypAMIqQ==";
       };
     };
-    "@aws-sdk/middleware-location-constraint-3.178.0" = {
+    "@aws-sdk/middleware-location-constraint-3.186.0" = {
       name = "_at_aws-sdk_slash_middleware-location-constraint";
       packageName = "@aws-sdk/middleware-location-constraint";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.178.0.tgz";
-        sha512 = "0Zrcdy75Q1CpAfjOFddiZSvK5iyeyh6fI7YRpUC8Fa3H+1kgW5sHESw0zyoC0NMAQkp1TgFrgxpaBuhAkdUzkg==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.186.0.tgz";
+        sha512 = "86swCv/+BYhXMCiAU6rVRk/z009bfpGfjnVBuoFfFbHp6zS3Ak11UotTzhw/Yyiyb06p/qL4vFfRERrMYnpmew==";
       };
     };
-    "@aws-sdk/middleware-logger-3.178.0" = {
+    "@aws-sdk/middleware-logger-3.186.0" = {
       name = "_at_aws-sdk_slash_middleware-logger";
       packageName = "@aws-sdk/middleware-logger";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.178.0.tgz";
-        sha512 = "k4jnB+ryGiAhv6vyNFz2YoaVodldjkbz4mqDlVzhwEn77LT/TcwdBoown3cJD/45LEtiuPqeONoTcNCsuCkRFQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.186.0.tgz";
+        sha512 = "/1gGBImQT8xYh80pB7QtyzA799TqXtLZYQUohWAsFReYB7fdh5o+mu2rX0FNzZnrLIh2zBUNs4yaWGsnab4uXg==";
       };
     };
-    "@aws-sdk/middleware-recursion-detection-3.178.0" = {
+    "@aws-sdk/middleware-recursion-detection-3.186.0" = {
       name = "_at_aws-sdk_slash_middleware-recursion-detection";
       packageName = "@aws-sdk/middleware-recursion-detection";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.178.0.tgz";
-        sha512 = "dVgSoP2Mer8A0JGaWgpC/f4vPyvHh7laES/u5sTy6RfwrR87oTx+uhKrc6eh+9NkMR2xdRyaNJAMIXwL5bsVzg==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.186.0.tgz";
+        sha512 = "Za7k26Kovb4LuV5tmC6wcVILDCt0kwztwSlB991xk4vwNTja8kKxSt53WsYG8Q2wSaW6UOIbSoguZVyxbIY07Q==";
       };
     };
-    "@aws-sdk/middleware-retry-3.178.0" = {
+    "@aws-sdk/middleware-retry-3.186.0" = {
       name = "_at_aws-sdk_slash_middleware-retry";
       packageName = "@aws-sdk/middleware-retry";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.178.0.tgz";
-        sha512 = "glBXpAqt+4KQ7q8y2/kwDX2ujCvCSQok5rlAmUjaQjVPc3cX77QwATIRQTS2nBC4v9tfMc7yL64ZeRbx6n0RAQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.186.0.tgz";
+        sha512 = "/VI9emEKhhDzlNv9lQMmkyxx3GjJ8yPfXH3HuAeOgM1wx1BjCTLRYEWnTbQwq7BDzVENdneleCsGAp7yaj80Aw==";
       };
     };
-    "@aws-sdk/middleware-sdk-s3-3.178.0" = {
+    "@aws-sdk/middleware-sdk-s3-3.186.0" = {
       name = "_at_aws-sdk_slash_middleware-sdk-s3";
       packageName = "@aws-sdk/middleware-sdk-s3";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.178.0.tgz";
-        sha512 = "/4IMPfSCsHZ3nFPPOFdNh+KlKkQE7LhesaxHEZA8f4qn/AnzBJUQLQ7iN4uvE+mD/WjNDUhNXX3ZqDRVaI2a+w==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.186.0.tgz";
+        sha512 = "NffDytJCSNm+fkQs0sP3ePgtIkgd6Xqxfx1YI+Qzwlnej3Jdh9doDhuxxT/fQoJPfgf77y0iMC4a3tNr69fW6g==";
       };
     };
-    "@aws-sdk/middleware-sdk-sts-3.179.0" = {
+    "@aws-sdk/middleware-sdk-sts-3.186.0" = {
       name = "_at_aws-sdk_slash_middleware-sdk-sts";
       packageName = "@aws-sdk/middleware-sdk-sts";
-      version = "3.179.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.179.0.tgz";
-        sha512 = "uU9UdG9ornvblXdLLNsZNpgMOA9vgFMB93zo3DL/Q6MPmYprZYyK7dUiA06i1pe4HP2gR3N3hxXwzmKU6Bjt6A==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.186.0.tgz";
+        sha512 = "GDcK0O8rjtnd+XRGnxzheq1V2jk4Sj4HtjrxW/ROyhzLOAOyyxutBt+/zOpDD6Gba3qxc69wE+Cf/qngOkEkDw==";
       };
     };
-    "@aws-sdk/middleware-serde-3.178.0" = {
+    "@aws-sdk/middleware-serde-3.186.0" = {
       name = "_at_aws-sdk_slash_middleware-serde";
       packageName = "@aws-sdk/middleware-serde";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.178.0.tgz";
-        sha512 = "TERiu/B4hYi5Jd4iQN9ECTWbt2IZweAgFB010MboM4CAPm6EcszEc/uCB4faLZNdJaksk1BhAR7koURcda8Sew==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.186.0.tgz";
+        sha512 = "6FEAz70RNf18fKL5O7CepPSwTKJEIoyG9zU6p17GzKMgPeFsxS5xO94Hcq5tV2/CqeHliebjqhKY7yi+Pgok7g==";
       };
     };
-    "@aws-sdk/middleware-signing-3.179.0" = {
+    "@aws-sdk/middleware-signing-3.186.0" = {
       name = "_at_aws-sdk_slash_middleware-signing";
       packageName = "@aws-sdk/middleware-signing";
-      version = "3.179.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.179.0.tgz";
-        sha512 = "rtB6t3w1Km3ngO1yoiEUqsobujcBk36oPs2fTUKTbmuTr+54YH3NF0zAwVJv08lpfAs56holtp+bYyAxZJIxSQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.186.0.tgz";
+        sha512 = "riCJYG/LlF/rkgVbHkr4xJscc0/sECzDivzTaUmfb9kJhAwGxCyNqnTvg0q6UO00kxSdEB9zNZI2/iJYVBijBQ==";
       };
     };
-    "@aws-sdk/middleware-ssec-3.178.0" = {
+    "@aws-sdk/middleware-ssec-3.186.0" = {
       name = "_at_aws-sdk_slash_middleware-ssec";
       packageName = "@aws-sdk/middleware-ssec";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.178.0.tgz";
-        sha512 = "6TcOTv03X8ygg9XnGTN2nTC1gSNaSIPBFvvQntVGr08umIajtalnI+2a9F3/+DQkUk/3u/V5j39mL9m0oAiMVw==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.186.0.tgz";
+        sha512 = "nNBp3t1GvCTp+uN3stJMzHb1H/jmId+qPBFUwvCItrSUL6lLnJi+OxFr/cNuZpJdlLR3FyX0jyJEKMsBEJHAkA==";
       };
     };
-    "@aws-sdk/middleware-stack-3.178.0" = {
+    "@aws-sdk/middleware-stack-3.186.0" = {
       name = "_at_aws-sdk_slash_middleware-stack";
       packageName = "@aws-sdk/middleware-stack";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.178.0.tgz";
-        sha512 = "ELYM5Imhlcz2zT1Z4OjVZwO564KvI4L9dMBxuUgO0fwommzjWqxR03yaRGhpGwpCP64d0Op5Koc/RKq5V92Wbw==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.186.0.tgz";
+        sha512 = "fENMoo0pW7UBrbuycPf+3WZ+fcUgP9PnQ0jcOK3WWZlZ9d2ewh4HNxLh4EE3NkNYj4VIUFXtTUuVNHlG8trXjQ==";
       };
     };
-    "@aws-sdk/middleware-user-agent-3.178.0" = {
+    "@aws-sdk/middleware-user-agent-3.186.0" = {
       name = "_at_aws-sdk_slash_middleware-user-agent";
       packageName = "@aws-sdk/middleware-user-agent";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.178.0.tgz";
-        sha512 = "xkKBxrFbs+UwUPpfIGEPuHeBWS2Jgmcd+ipEJUQRR3lY4h1fJ6mPGeyyaVDvwaJp9KgESSI6QTp6V15l8GXXgQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.186.0.tgz";
+        sha512 = "fb+F2PF9DLKOVMgmhkr+ltN8ZhNJavTla9aqmbd01846OLEaN1n5xEnV7p8q5+EznVBWDF38Oz9Ae5BMt3Hs7w==";
       };
     };
-    "@aws-sdk/node-config-provider-3.178.0" = {
+    "@aws-sdk/node-config-provider-3.186.0" = {
       name = "_at_aws-sdk_slash_node-config-provider";
       packageName = "@aws-sdk/node-config-provider";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.178.0.tgz";
-        sha512 = "yb5XJcC7SxkZ5oxu3zQ/foBdMkLBKryzx/CVg5BNSsKDjfbouf/ZYPcJDHhc2gzCtZcx18GjFBOnv8cpo/tyXQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.186.0.tgz";
+        sha512 = "De93mgmtuUUeoiKXU8pVHXWKPBfJQlS/lh1k2H9T2Pd9Tzi0l7p5ttddx4BsEx4gk+Pc5flNz+DeptiSjZpa4A==";
       };
     };
-    "@aws-sdk/node-http-handler-3.178.0" = {
+    "@aws-sdk/node-http-handler-3.186.0" = {
       name = "_at_aws-sdk_slash_node-http-handler";
       packageName = "@aws-sdk/node-http-handler";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.178.0.tgz";
-        sha512 = "EtH6YiX1IX0QraQ/+kKBWAEtsFYBnFyxOimTBtlpDYwFpgDzIZ1GFn2wORYomEWALg10kphs8n3E5/7b5t5OWQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.186.0.tgz";
+        sha512 = "CbkbDuPZT9UNJ4dAZJWB3BV+Z65wFy7OduqGkzNNrKq6ZYMUfehthhUOTk8vU6RMe/0FkN+J0fFXlBx/bs/cHw==";
       };
     };
-    "@aws-sdk/property-provider-3.178.0" = {
+    "@aws-sdk/property-provider-3.186.0" = {
       name = "_at_aws-sdk_slash_property-provider";
       packageName = "@aws-sdk/property-provider";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.178.0.tgz";
-        sha512 = "+Fh1aUANa+Gt/rh4SUHO0yHwKsibyZGk2LLDUcM1+9r0pUZT0qy3h0UCl5Kkj9HUcDJMD73wHTx4UB440xRobw==";
+        url = "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.186.0.tgz";
+        sha512 = "nWKqt36UW3xV23RlHUmat+yevw9up+T+953nfjcmCBKtgWlCWu/aUzewTRhKj3VRscbN+Wer95SBw9Lr/MMOlQ==";
       };
     };
-    "@aws-sdk/protocol-http-3.178.0" = {
+    "@aws-sdk/protocol-http-3.186.0" = {
       name = "_at_aws-sdk_slash_protocol-http";
       packageName = "@aws-sdk/protocol-http";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.178.0.tgz";
-        sha512 = "GsnANW60mVYMlE16UGNSOwYZ6TbkoODvmDQi95SEPjM7asf4vihEyDvhxiGS/JvC18UyxRVWT89l/V3hR/SF7w==";
+        url = "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.186.0.tgz";
+        sha512 = "l/KYr/UBDUU5ginqTgHtFfHR3X6ljf/1J1ThIiUg3C3kVC/Zwztm7BEOw8hHRWnWQGU/jYasGYcrcPLdQqFZyQ==";
       };
     };
-    "@aws-sdk/querystring-builder-3.178.0" = {
+    "@aws-sdk/querystring-builder-3.186.0" = {
       name = "_at_aws-sdk_slash_querystring-builder";
       packageName = "@aws-sdk/querystring-builder";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.178.0.tgz";
-        sha512 = "vJXlExSshlHtGVvan/U6JihWvzf8t9QwH5I4F6HUY+exxMy5vFDYCnNqGAzbJwq7w/HME1gQWLoXq2k0uODz7g==";
+        url = "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.186.0.tgz";
+        sha512 = "mweCpuLufImxfq/rRBTEpjGuB4xhQvbokA+otjnUxlPdIobytLqEs7pCGQfLzQ7+1ZMo8LBXt70RH4A2nSX/JQ==";
       };
     };
-    "@aws-sdk/querystring-parser-3.178.0" = {
+    "@aws-sdk/querystring-parser-3.186.0" = {
       name = "_at_aws-sdk_slash_querystring-parser";
       packageName = "@aws-sdk/querystring-parser";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.178.0.tgz";
-        sha512 = "dp3pLnsOvAcIF7Yn2PY5CIVWX7GvC33nSlWDYeLeCMapccwTbe6zBqreWbScmIGJra4QJTdjccpwo2Yxwhr5QQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.186.0.tgz";
+        sha512 = "0iYfEloghzPVXJjmnzHamNx1F1jIiTW9Svy5ZF9LVqyr/uHZcQuiWYsuhWloBMLs8mfWarkZM02WfxZ8buAuhg==";
       };
     };
-    "@aws-sdk/s3-request-presigner-3.180.0" = {
+    "@aws-sdk/s3-request-presigner-3.186.0" = {
       name = "_at_aws-sdk_slash_s3-request-presigner";
       packageName = "@aws-sdk/s3-request-presigner";
-      version = "3.180.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.180.0.tgz";
-        sha512 = "H16T+YYCs1CALttDgHyppjtUL19qw1XGPdPyBpQF/tMNk/P52ijGprXHCwn89kaFucCzfajAfm4ee4ZQ3v7GiA==";
+        url = "https://registry.npmjs.org/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.186.0.tgz";
+        sha512 = "tEs6EkAEwzmQ9h5e0+8j8/mT4e9RUHOpB0R6hErjAXJ5HZ8VXhEdyp4vvcFR5q3g+W7z3zKiPoQoIrIqSk3D2A==";
       };
     };
-    "@aws-sdk/service-error-classification-3.178.0" = {
+    "@aws-sdk/service-error-classification-3.186.0" = {
       name = "_at_aws-sdk_slash_service-error-classification";
       packageName = "@aws-sdk/service-error-classification";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.178.0.tgz";
-        sha512 = "tDKTBXxck2N4bhAnQaeokx9ps38V3G70lcDdHS/N9hmqcQQmH5x+1/AMwYWLjUZmOQPBW9sFoG4B3psnl+sefw==";
+        url = "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.186.0.tgz";
+        sha512 = "DRl3ORk4tF+jmH5uvftlfaq0IeKKpt0UPAOAFQ/JFWe+TjOcQd/K+VC0iiIG97YFp3aeFmH1JbEgsNxd+8fdxw==";
       };
     };
-    "@aws-sdk/shared-ini-file-loader-3.178.0" = {
+    "@aws-sdk/shared-ini-file-loader-3.186.0" = {
       name = "_at_aws-sdk_slash_shared-ini-file-loader";
       packageName = "@aws-sdk/shared-ini-file-loader";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.178.0.tgz";
-        sha512 = "nZGmuhGLDFbXsb7QYDg7PiPMAmsdlSshKJ+AhKSZF/J0SK94kdZgGnGXGUZe52S3G41E3CZIgnLnnsMXq0uErA==";
+        url = "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.186.0.tgz";
+        sha512 = "2FZqxmICtwN9CYid4dwfJSz/gGFHyStFQ3HCOQ8DsJUf2yREMSBsVmKqsyWgOrYcQ98gPcD5GIa7QO5yl3XF6A==";
       };
     };
-    "@aws-sdk/signature-v4-3.178.0" = {
+    "@aws-sdk/signature-v4-3.186.0" = {
       name = "_at_aws-sdk_slash_signature-v4";
       packageName = "@aws-sdk/signature-v4";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.178.0.tgz";
-        sha512 = "8oOx6o0uOqlCDPM0dszfR1WHqd0E1VuFqez8iNItp0DhmhaCuanEwKYYA6HOkVu/MA6CsG6zDIJaFr5ODU2NvQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.186.0.tgz";
+        sha512 = "18i96P5c4suMqwSNhnEOqhq4doqqyjH4fn0YV3F8TkekHPIWP4mtIJ0PWAN4eievqdtcKgD/GqVO6FaJG9texw==";
       };
     };
-    "@aws-sdk/signature-v4-crt-3.180.0" = {
+    "@aws-sdk/signature-v4-crt-3.186.0" = {
       name = "_at_aws-sdk_slash_signature-v4-crt";
       packageName = "@aws-sdk/signature-v4-crt";
-      version = "3.180.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/signature-v4-crt/-/signature-v4-crt-3.180.0.tgz";
-        sha512 = "zO7UQNiyb6VKC2W8W7G4gJj75p0xgT03TNxt3JGJbA22Pp07C/aBUtwrEs+JBjrm0i8UQfPjgUNZcUFrO/s7BA==";
+        url = "https://registry.npmjs.org/@aws-sdk/signature-v4-crt/-/signature-v4-crt-3.186.0.tgz";
+        sha512 = "Zwkd2m11hlyYsZN3Gbe1ARNgYl8HMLtsvvIYjhMIdcVIrYfNVCjkhHjhJZzSUotdwwgm5oQ++AfBX0K+sP7xxg==";
       };
     };
-    "@aws-sdk/signature-v4-multi-region-3.180.0" = {
+    "@aws-sdk/signature-v4-multi-region-3.186.0" = {
       name = "_at_aws-sdk_slash_signature-v4-multi-region";
       packageName = "@aws-sdk/signature-v4-multi-region";
-      version = "3.180.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.180.0.tgz";
-        sha512 = "3IjwOy/x6UroV3TAbeCwpCRmt/8TW89JI1r8gtDbpQ42WiQ/1J+R5a78NP8bYa53kiDghW6pKlvLcbuoh3zWHQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.186.0.tgz";
+        sha512 = "99+WIti/zaoYgRAFTWSC2206E71gi+bPtPFbijLzQHMpmB3QlzPYobx3xyepgQ+LL0FQcfqD5zFtdmlcoWTddQ==";
       };
     };
-    "@aws-sdk/smithy-client-3.180.0" = {
+    "@aws-sdk/smithy-client-3.186.0" = {
       name = "_at_aws-sdk_slash_smithy-client";
       packageName = "@aws-sdk/smithy-client";
-      version = "3.180.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.180.0.tgz";
-        sha512 = "1vWafiUdn6RvOsD4CyNjMeDtDujuPi4Iq4Db6HrFmVPpJAutOLlCg52Dt7k96KCcIKgxVAs6Br0Waef+pcoGNA==";
+        url = "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.186.0.tgz";
+        sha512 = "rdAxSFGSnrSprVJ6i1BXi65r4X14cuya6fYe8dSdgmFSa+U2ZevT97lb3tSINCUxBGeMXhENIzbVGkRZuMh+DQ==";
       };
     };
-    "@aws-sdk/types-3.178.0" = {
+    "@aws-sdk/types-3.186.0" = {
       name = "_at_aws-sdk_slash_types";
       packageName = "@aws-sdk/types";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/types/-/types-3.178.0.tgz";
-        sha512 = "CrHxHzXSEr/Z3NLFvJgSGHGcD9tYUZ0Rhp8tFCSpD3TpBo3/Y7RIvqaEPvECsL52UEloeBhQf65AO8590YkVmQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/types/-/types-3.186.0.tgz";
+        sha512 = "NatmSU37U+XauMFJCdFI6nougC20JUFZar+ump5wVv0i54H+2Refg1YbFDxSs0FY28TSB9jfhWIpfFBmXgL5MQ==";
       };
     };
-    "@aws-sdk/url-parser-3.178.0" = {
+    "@aws-sdk/url-parser-3.186.0" = {
       name = "_at_aws-sdk_slash_url-parser";
       packageName = "@aws-sdk/url-parser";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.178.0.tgz";
-        sha512 = "+Ch29d+IZG6zD1gNDVgFC00huY8ytrPdijAuNJ4DtPBTGP4zbrImw3js0GfvfBjLrQYBnclcAvSx4J1Q/8tqBQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.186.0.tgz";
+        sha512 = "jfdJkKqJZp8qjjwEjIGDqbqTuajBsddw02f86WiL8bPqD8W13/hdqbG4Fpwc+Bm6GwR6/4MY6xWXFnk8jDUKeA==";
       };
     };
-    "@aws-sdk/util-arn-parser-3.170.0" = {
+    "@aws-sdk/util-arn-parser-3.186.0" = {
       name = "_at_aws-sdk_slash_util-arn-parser";
       packageName = "@aws-sdk/util-arn-parser";
-      version = "3.170.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.170.0.tgz";
-        sha512 = "2ivABL9GNsucfMMkgGjVdFidbDogtSr4FBVW12D4ltijOL82CAynGrnxHAczRGnmi5/1/Ir4ipkr9pAdRMGiGw==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.186.0.tgz";
+        sha512 = "hhTziyXeiNylZfZ6yXmaAhOUSmS3xQiofXRm1CcxMttHWmTOI6OrepKa2kOkNZsZe28vfuy4I7vbWPi2LcwSqA==";
       };
     };
-    "@aws-sdk/util-base64-browser-3.170.0" = {
+    "@aws-sdk/util-base64-browser-3.186.0" = {
       name = "_at_aws-sdk_slash_util-base64-browser";
       packageName = "@aws-sdk/util-base64-browser";
-      version = "3.170.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-base64-browser/-/util-base64-browser-3.170.0.tgz";
-        sha512 = "uLP9Kp74+jc+UWI392LSWIaUj9eXZBhkAiSm8dXAyrr+5GFOKvmEdidFoZKKcFcZ2v3RMonDgFVcDBiZ33w7BQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-base64-browser/-/util-base64-browser-3.186.0.tgz";
+        sha512 = "TpQL8opoFfzTwUDxKeon/vuc83kGXpYqjl6hR8WzmHoQgmFfdFlV+0KXZOohra1001OP3FhqvMqaYbO8p9vXVQ==";
       };
     };
-    "@aws-sdk/util-base64-node-3.170.0" = {
+    "@aws-sdk/util-base64-node-3.186.0" = {
       name = "_at_aws-sdk_slash_util-base64-node";
       packageName = "@aws-sdk/util-base64-node";
-      version = "3.170.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-base64-node/-/util-base64-node-3.170.0.tgz";
-        sha512 = "sjpOmfyW0RWCLXU8Du0ZtwgFoxIuKQIyVygXJ4qxByoa3jIUJXf4U33uSRMy47V3JoogdZuKSpND9hiNk2wU4w==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-base64-node/-/util-base64-node-3.186.0.tgz";
+        sha512 = "wH5Y/EQNBfGS4VkkmiMyZXU+Ak6VCoFM1GKWopV+sj03zR2D4FHexi4SxWwEBMpZCd6foMtihhbNBuPA5fnh6w==";
       };
     };
-    "@aws-sdk/util-body-length-browser-3.170.0" = {
+    "@aws-sdk/util-body-length-browser-3.186.0" = {
       name = "_at_aws-sdk_slash_util-body-length-browser";
       packageName = "@aws-sdk/util-body-length-browser";
-      version = "3.170.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.170.0.tgz";
-        sha512 = "SqSWA++gsZgHw6tlcEXx9K6R6cVKNYzOq6bca+NR7jXvy1hfqiv9Gx5TZrG4oL4JziP8QA0fTklmI1uQJ4HBRA==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.186.0.tgz";
+        sha512 = "zKtjkI/dkj9oGkjo+7fIz+I9KuHrVt1ROAeL4OmDESS8UZi3/O8uMDFMuCp8jft6H+WFuYH6qRVWAVwXMiasXw==";
       };
     };
-    "@aws-sdk/util-body-length-node-3.170.0" = {
+    "@aws-sdk/util-body-length-node-3.186.0" = {
       name = "_at_aws-sdk_slash_util-body-length-node";
       packageName = "@aws-sdk/util-body-length-node";
-      version = "3.170.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.170.0.tgz";
-        sha512 = "sFb85ngsgfpamwDn22LC/+FkbDTNiddbMHptkajw+CAD2Rb4SJDp2PfXZ6k883BueJWhmxZ9+lApHZqYtgPdzw==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.186.0.tgz";
+        sha512 = "U7Ii8u8Wvu9EnBWKKeuwkdrWto3c0j7LG677Spe6vtwWkvY70n9WGfiKHTgBpVeLNv8jvfcx5+H0UOPQK1o9SQ==";
       };
     };
-    "@aws-sdk/util-buffer-from-3.170.0" = {
+    "@aws-sdk/util-buffer-from-3.186.0" = {
       name = "_at_aws-sdk_slash_util-buffer-from";
       packageName = "@aws-sdk/util-buffer-from";
-      version = "3.170.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.170.0.tgz";
-        sha512 = "3ClE3wgN/Zw0ahfVAY5KQ/y3K2c+SYHwVUQaGSuVQlPOCDInGYjE/XEFwCeGJzncRPHIKDRPEsHCpm1uwgwEqQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.186.0.tgz";
+        sha512 = "be2GCk2lsLWg/2V5Y+S4/9pOMXhOQo4DR4dIqBdR2R+jrMMHN9Xsr5QrkT6chcqLaJ/SBlwiAEEi3StMRmCOXA==";
       };
     };
-    "@aws-sdk/util-config-provider-3.170.0" = {
+    "@aws-sdk/util-config-provider-3.186.0" = {
       name = "_at_aws-sdk_slash_util-config-provider";
       packageName = "@aws-sdk/util-config-provider";
-      version = "3.170.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.170.0.tgz";
-        sha512 = "VV6lfss6Go00TF2hRVJnN8Uf2FOwC++1e8glaeU7fMWluYCBjwl+116mPOPFaxvkJCg0dui2tFroXioslM/rvQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.186.0.tgz";
+        sha512 = "71Qwu/PN02XsRLApyxG0EUy/NxWh/CXxtl2C7qY14t+KTiRapwbDkdJ1cMsqYqghYP4BwJoj1M+EFMQSSlkZQQ==";
       };
     };
-    "@aws-sdk/util-create-request-3.180.0" = {
+    "@aws-sdk/util-create-request-3.186.0" = {
       name = "_at_aws-sdk_slash_util-create-request";
       packageName = "@aws-sdk/util-create-request";
-      version = "3.180.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-create-request/-/util-create-request-3.180.0.tgz";
-        sha512 = "wBYsn+oCCNwJvltTp0hE6PzV+yZCV4orZJvpVm9AlpuXHL0NL9Xr8vMx1v9zTxG7v0aNIWIG5I/JZXwNDzkg3Q==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-create-request/-/util-create-request-3.186.0.tgz";
+        sha512 = "2ek6bkfi6RaGCiww9rp5yFPVq2Nu+J0/LpToAAkxouSJVIcau+ao0oSbzGAbC2KUFnfpapGcy+m2qzGYKO4ibQ==";
       };
     };
-    "@aws-sdk/util-defaults-mode-browser-3.180.0" = {
+    "@aws-sdk/util-defaults-mode-browser-3.186.0" = {
       name = "_at_aws-sdk_slash_util-defaults-mode-browser";
       packageName = "@aws-sdk/util-defaults-mode-browser";
-      version = "3.180.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.180.0.tgz";
-        sha512 = "XGq/RUuhqnLlApETBmBWDszNG4TR3FCOSNwFvok1UIPgFXxjh0JOzNc5mAX1St2hfx1IDb9Ja4BmTkYKix7byg==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.186.0.tgz";
+        sha512 = "U8GOfIdQ0dZ7RRVpPynGteAHx4URtEh+JfWHHVfS6xLPthPHWTbyRhkQX++K/F8Jk+T5U8Anrrqlea4TlcO2DA==";
       };
     };
-    "@aws-sdk/util-defaults-mode-node-3.180.0" = {
+    "@aws-sdk/util-defaults-mode-node-3.186.0" = {
       name = "_at_aws-sdk_slash_util-defaults-mode-node";
       packageName = "@aws-sdk/util-defaults-mode-node";
-      version = "3.180.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.180.0.tgz";
-        sha512 = "ch9VR4OKYGEaNbLhX/EyZDpNZst5T+/VYsFyqMA47J0YyMbg7GWyn2FjjhZ7qOV3XU6W8YEBNdd7U/LFFVp8uA==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.186.0.tgz";
+        sha512 = "N6O5bpwCiE4z8y7SPHd7KYlszmNOYREa+mMgtOIXRU3VXSEHVKVWTZsHKvNTTHpW0qMqtgIvjvXCo3vsch5l3A==";
       };
     };
-    "@aws-sdk/util-format-url-3.178.0" = {
+    "@aws-sdk/util-format-url-3.186.0" = {
       name = "_at_aws-sdk_slash_util-format-url";
       packageName = "@aws-sdk/util-format-url";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.178.0.tgz";
-        sha512 = "otKBGoj4QDNdXNDUV6nTCWbAlqmrjGb6YddbwkM5lZuisLf51HE7oQnEDX6k0SRvLTq3Xk+JE7pa2RlkMfV2gQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.186.0.tgz";
+        sha512 = "0xB6GIIVhOW9CzUghDNzEbakM+jybNG289zD6LIDE0DxX+PaIRsAD3pz0aRs59JOZzIArOn5/krQ+iZppptYiw==";
       };
     };
-    "@aws-sdk/util-hex-encoding-3.170.0" = {
+    "@aws-sdk/util-hex-encoding-3.186.0" = {
       name = "_at_aws-sdk_slash_util-hex-encoding";
       packageName = "@aws-sdk/util-hex-encoding";
-      version = "3.170.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.170.0.tgz";
-        sha512 = "BDYyMqaxX4/N7rYOIYlqgpZaBuHw3kNXKgOkWtJdzndIZbQX8HnyJ+rF0Pr1aVsOpVDM+fY1prERleFh/ZRTCg==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.186.0.tgz";
+        sha512 = "UL9rdgIZz1E/jpAfaKH8QgUxNK9VP5JPgoR0bSiaefMjnsoBh0x/VVMsfUyziOoJCMLebhJzFowtwrSKEGsxNg==";
       };
     };
-    "@aws-sdk/util-locate-window-3.170.0" = {
+    "@aws-sdk/util-locate-window-3.186.0" = {
       name = "_at_aws-sdk_slash_util-locate-window";
       packageName = "@aws-sdk/util-locate-window";
-      version = "3.170.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.170.0.tgz";
-        sha512 = "uQvn3ZaAokWcNSY+tNR71RGXPPncv5ejrpGa/MGOCioeBjkU5n5OJp7BdaTGouZu4fffeVpdZJ/ZNld8LWMgLw==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.186.0.tgz";
+        sha512 = "fmQLkH16ga6c5fWsA+kBYklQJjlPlcc8uayTR4avi5g3Nxqm6wPpyUwo5CppwjwWMeS+NXG0HgITtkkGntcRNg==";
       };
     };
-    "@aws-sdk/util-middleware-3.178.0" = {
+    "@aws-sdk/util-middleware-3.186.0" = {
       name = "_at_aws-sdk_slash_util-middleware";
       packageName = "@aws-sdk/util-middleware";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.178.0.tgz";
-        sha512 = "93WgrJKuwtv3f2r1Q04emzjMiwpYR5hysOHKMkrGOvAVZdDqe1UTjmtuxQadVi3DBr1KOT/d5uP9MjV8LqaUUA==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.186.0.tgz";
+        sha512 = "fddwDgXtnHyL9mEZ4s1tBBsKnVQHqTUmFbZKUUKPrg9CxOh0Y/zZxEa5Olg/8dS/LzM1tvg0ATkcyd4/kEHIhg==";
       };
     };
-    "@aws-sdk/util-stream-browser-3.178.0" = {
+    "@aws-sdk/util-stream-browser-3.186.0" = {
       name = "_at_aws-sdk_slash_util-stream-browser";
       packageName = "@aws-sdk/util-stream-browser";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-stream-browser/-/util-stream-browser-3.178.0.tgz";
-        sha512 = "CgXIJjDtkJPpig3/37xNzwPvtySN21m3nI/61CDjmQTFU9CfrfFplR/K3yBhB465AyINrLcDyuiBBcv78wqBzg==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-stream-browser/-/util-stream-browser-3.186.0.tgz";
+        sha512 = "fXlIA4jkcGN8YVrwtNWuR3JDoQZrs47uKJrg++3T0qf9EyPRgtki7tUITZpcDx+0qnm24yyLAedIXYzYt2iGcA==";
       };
     };
-    "@aws-sdk/util-stream-node-3.178.0" = {
+    "@aws-sdk/util-stream-node-3.186.0" = {
       name = "_at_aws-sdk_slash_util-stream-node";
       packageName = "@aws-sdk/util-stream-node";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-stream-node/-/util-stream-node-3.178.0.tgz";
-        sha512 = "SarpMLzoG49Tosp+s+yMsE2rGwsDqa6NDP6umqo2HXX3D26I3uqaefoB0E+Jn/VAJZcKbwxRZUPKnwQEOn1xMA==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-stream-node/-/util-stream-node-3.186.0.tgz";
+        sha512 = "CTb8PmgGQx/3FYA1n1+ksnzIUpJGC7jEHk/E06cmWloixhSIRJuBXJ8b1AgSVDVrY/8wfYO/2VW28Dp7wZfmOw==";
       };
     };
-    "@aws-sdk/util-uri-escape-3.170.0" = {
+    "@aws-sdk/util-uri-escape-3.186.0" = {
       name = "_at_aws-sdk_slash_util-uri-escape";
       packageName = "@aws-sdk/util-uri-escape";
-      version = "3.170.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.170.0.tgz";
-        sha512 = "Fof0urZ3Lx6z6LNKSEO6T4DNaNh6sLJaSWFaC6gtVDPux/C3R7wy2RQRDp0baHxE8m1KMB0XnKzHizJNrbDI1w==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.186.0.tgz";
+        sha512 = "imtOrJFpIZAipAg8VmRqYwv1G/x4xzyoxOJ48ZSn1/ZGnKEEnB6n6E9gwYRebi4mlRuMSVeZwCPLq0ey5hReeQ==";
       };
     };
-    "@aws-sdk/util-user-agent-browser-3.178.0" = {
+    "@aws-sdk/util-user-agent-browser-3.186.0" = {
       name = "_at_aws-sdk_slash_util-user-agent-browser";
       packageName = "@aws-sdk/util-user-agent-browser";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.178.0.tgz";
-        sha512 = "LxOrn7Ai88n0i5J5rTb5Bt0TAycPvDYzjdCwmd2mahsPHZGSDLeCeh6KOIxZsEfnzYRl4HGWvIEXdHIYZ3RTug==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.186.0.tgz";
+        sha512 = "fbRcTTutMk4YXY3A2LePI4jWSIeHOT8DaYavpc/9Xshz/WH9RTGMmokeVOcClRNBeDSi5cELPJJ7gx6SFD3ZlQ==";
       };
     };
-    "@aws-sdk/util-user-agent-node-3.178.0" = {
+    "@aws-sdk/util-user-agent-node-3.186.0" = {
       name = "_at_aws-sdk_slash_util-user-agent-node";
       packageName = "@aws-sdk/util-user-agent-node";
-      version = "3.178.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.178.0.tgz";
-        sha512 = "TrP6v+V4Qnv3E9CNgwR/G+1xiy8fa9j5LAm43qwp9PfJHchNyWOJ0FURD3Ne2sm/388Ybzjb1DRYRZ7B+xbnOw==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.186.0.tgz";
+        sha512 = "oWZR7hN6NtOgnT6fUvHaafgbipQc2xJCRB93XHiF9aZGptGNLJzznIOP7uURdn0bTnF73ejbUXWLQIm8/6ue6w==";
       };
     };
-    "@aws-sdk/util-utf8-browser-3.170.0" = {
+    "@aws-sdk/util-utf8-browser-3.186.0" = {
       name = "_at_aws-sdk_slash_util-utf8-browser";
       packageName = "@aws-sdk/util-utf8-browser";
-      version = "3.170.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.170.0.tgz";
-        sha512 = "tJby9krepSwDsBK+KQF5ACacZQ4LH1Aheh5Dy0pghxsN/9IRw7kMWTumuRCnSntLFFphDD7GM494/Dvnl1UCLA==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.186.0.tgz";
+        sha512 = "n+IdFYF/4qT2WxhMOCeig8LndDggaYHw3BJJtfIBZRiS16lgwcGYvOUmhCkn0aSlG1f/eyg9YZHQG0iz9eLdHQ==";
       };
     };
-    "@aws-sdk/util-utf8-node-3.170.0" = {
+    "@aws-sdk/util-utf8-node-3.186.0" = {
       name = "_at_aws-sdk_slash_util-utf8-node";
       packageName = "@aws-sdk/util-utf8-node";
-      version = "3.170.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-utf8-node/-/util-utf8-node-3.170.0.tgz";
-        sha512 = "52QWGNoNQoyT2CuoQz6LjBKxHQtN/ceMFLW+9J1E0I1ni8XTuTYP52BlMe5484KkmZKsHOm+EWe4xuwwVetTxg==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-utf8-node/-/util-utf8-node-3.186.0.tgz";
+        sha512 = "7qlE0dOVdjuRbZTb7HFywnHHCrsN7AeQiTnsWT63mjXGDbPeUWQQw3TrdI20um3cxZXnKoeudGq8K6zbXyQ4iA==";
       };
     };
-    "@aws-sdk/util-waiter-3.180.0" = {
+    "@aws-sdk/util-waiter-3.186.0" = {
       name = "_at_aws-sdk_slash_util-waiter";
       packageName = "@aws-sdk/util-waiter";
-      version = "3.180.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.180.0.tgz";
-        sha512 = "fDBGplYp6pIIfrB7073tUhU4zppRaSiPjBCCT00yth9woWwZPUCIg7iQZKEqkBmvCzcJSYn0jRopLhf3Y7i5Wg==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.186.0.tgz";
+        sha512 = "oSm45VadBBWC/K2W1mrRNzm9RzbXt6VopBQ5iTDU7B3qIXlyAG9k1JqOvmYIdYq1oOgjM3Hv2+9sngi3+MZs1A==";
       };
     };
-    "@aws-sdk/xml-builder-3.170.0" = {
+    "@aws-sdk/xml-builder-3.186.0" = {
       name = "_at_aws-sdk_slash_xml-builder";
       packageName = "@aws-sdk/xml-builder";
-      version = "3.170.0";
+      version = "3.186.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.170.0.tgz";
-        sha512 = "eN458rrukeI62yU1k4a+032IfpAS7aK30VEITzKanklMW6AxTpxUC6vGrP6bwtIpCFDN8yVaIiAwGXQg5l1X4g==";
+        url = "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.186.0.tgz";
+        sha512 = "9Ss3w1yenQNFYdHpa7OFL81M6Okef8UzY263SCCodhCg1ZKwN+vN1T4C7zhcMpxWsmDD/UmEpN+eXCLnFNE8PQ==";
       };
     };
     "@azu/format-text-1.0.1" = {
@@ -1372,13 +1372,13 @@ let
         sha512 = "ZN9avruqbQ5TxopzG3ih3KRy52n8OAbitX3fnZT5go4hzu0J+KVPSzkL+Wt3hpJpdG8WIfg1sBD1tWkgUdEpBA==";
       };
     };
-    "@azure/core-lro-2.3.1" = {
+    "@azure/core-lro-2.4.0" = {
       name = "_at_azure_slash_core-lro";
       packageName = "@azure/core-lro";
-      version = "2.3.1";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.3.1.tgz";
-        sha512 = "nQ+Xnm9g1EWcmbqgxJGmkNHfOHRUmrbYIlRT4KjluzhHQooaGO55m/h6wCX0ho3Jte2ZNBzZPJRmi6yBWeb3yA==";
+        url = "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.4.0.tgz";
+        sha512 = "F65+rYkll1dpw3RGm8/SSiSj+/QkMeYDanzS/QKlM1dmuneVyXbO46C88V1MRHluLGdMP6qfD3vDRYALn0z0tQ==";
       };
     };
     "@azure/core-paging-1.3.0" = {
@@ -1408,13 +1408,13 @@ let
         sha512 = "I5CGMoLtX+pI17ZdiFJZgxMJApsK6jjfm85hpgp3oazCdq5Wxgh4wMr7ge/TTWW1B5WBuvIOI1fMU/FrOAMKrw==";
       };
     };
-    "@azure/core-util-1.1.0" = {
+    "@azure/core-util-1.1.1" = {
       name = "_at_azure_slash_core-util";
       packageName = "@azure/core-util";
-      version = "1.1.0";
+      version = "1.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@azure/core-util/-/core-util-1.1.0.tgz";
-        sha512 = "+i93lNJNA3Pl3KSuC6xKP2jTL4YFeDfO6VNOaYdk0cppZcLCxt811gS878VsqsCisaltdhl9lhMzK5kbxCiF4w==";
+        url = "https://registry.npmjs.org/@azure/core-util/-/core-util-1.1.1.tgz";
+        sha512 = "A4TBYVQCtHOigFb2ETiiKFDocBoI1Zk2Ui1KpI42aJSIDexF7DHQFpnjonltXAIU/ceH+1fsZAWWgvX6/AKzog==";
       };
     };
     "@azure/identity-2.1.0" = {
@@ -1444,31 +1444,31 @@ let
         sha512 = "aK4s3Xxjrx3daZr3VylxejK3vG5ExXck5WOHDJ8in/k9AqlfIyFMMT1uG7u8mNjX+QRILTIn0/Xgschfh/dQ9g==";
       };
     };
-    "@azure/msal-browser-2.28.3" = {
+    "@azure/msal-browser-2.29.0" = {
       name = "_at_azure_slash_msal-browser";
       packageName = "@azure/msal-browser";
-      version = "2.28.3";
+      version = "2.29.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-2.28.3.tgz";
-        sha512 = "2SdyH2el3s8BzPURf9RK17BvvXvaMEGpLc3D9WilZcmjJqP4nStVH7Ogwr/SNTuGV48FUhqEkP0RxDvzuFJSIw==";
+        url = "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-2.29.0.tgz";
+        sha512 = "ezrB0qL1WsJSNgvLmAN5vKr/4pH28UYLe8JUZeHzB6Z408JU8qYXXGnHAhDPzpDg0g91eG05IdIVrLwxk/i15g==";
       };
     };
-    "@azure/msal-common-7.4.1" = {
+    "@azure/msal-common-7.5.0" = {
       name = "_at_azure_slash_msal-common";
       packageName = "@azure/msal-common";
-      version = "7.4.1";
+      version = "7.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@azure/msal-common/-/msal-common-7.4.1.tgz";
-        sha512 = "zxcxg9pRdgGTS5mrRJeQvwA8aIjD8qSGzaAiz5SeTVkyhtjB0AeFnAcvBOKHv/TkswWNfYKpERxsXOAKXkXk0w==";
+        url = "https://registry.npmjs.org/@azure/msal-common/-/msal-common-7.5.0.tgz";
+        sha512 = "W+SIsGSjkUAyDggA/6QVMKErttQ/8Bq9l/7ADr7GJwt9JFsc+XNBdQDsOsUvZ7YCVkZcSgzJw2MZJLIBqfQtQA==";
       };
     };
-    "@azure/msal-node-1.14.0" = {
+    "@azure/msal-node-1.14.1" = {
       name = "_at_azure_slash_msal-node";
       packageName = "@azure/msal-node";
-      version = "1.14.0";
+      version = "1.14.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.14.0.tgz";
-        sha512 = "3XB7FuHLhmGBjw7bxuz1LCHOXQgmNIO3J56tlbOjuJcyJtd4aBCgnYIXNKLed3uRcQNHEO0mlg24I4iGxAV/UA==";
+        url = "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.14.1.tgz";
+        sha512 = "RftjLd35xlafh5cPT17zrzpYdcsbHKJal7R/FTbThpbetSk8y8vQHUzNwWNhBM6GFFiyMS4IQ+zs+z8bgJ4sKQ==";
       };
     };
     "@babel/cli-7.19.3" = {
@@ -2767,31 +2767,31 @@ let
         sha512 = "hGCaQzIY22DJlDh9CH7NOxgKkFjBk0Cw9xDO1Xmh2151ti7wiGfQ3LauXzL4HP1fmFlTX6XjpRETTpUcv7wQLw==";
       };
     };
-    "@blueprintjs/colors-4.1.6" = {
+    "@blueprintjs/colors-4.1.7" = {
       name = "_at_blueprintjs_slash_colors";
       packageName = "@blueprintjs/colors";
-      version = "4.1.6";
+      version = "4.1.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@blueprintjs/colors/-/colors-4.1.6.tgz";
-        sha512 = "3/kahUWyvgQUV9NtCMeeJgTFHziM2Z3f4hjDfnl03X4MW0onUeZfa2Mu4ZsRn2IAK7AmfLNkZe8vp8mxX9pDRg==";
+        url = "https://registry.npmjs.org/@blueprintjs/colors/-/colors-4.1.7.tgz";
+        sha512 = "4qmwwNabzJ6TbdWLjfVFqoCz6OPZpPDV6xvSmnEnS6tWSQ+bepi/ybzx3kKOGtNk1lu0tFDU6tnVti7uz23XaQ==";
       };
     };
-    "@blueprintjs/core-4.10.2" = {
+    "@blueprintjs/core-4.11.2" = {
       name = "_at_blueprintjs_slash_core";
       packageName = "@blueprintjs/core";
-      version = "4.10.2";
+      version = "4.11.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@blueprintjs/core/-/core-4.10.2.tgz";
-        sha512 = "YbjHXDPX8rxXoRHrScrCBH+GsgiVRnhBqLnWFLlClpdJTRvk6HVUpZN5OL138lZSgcQH4quZ+Fg8PLFflIx/Yw==";
+        url = "https://registry.npmjs.org/@blueprintjs/core/-/core-4.11.2.tgz";
+        sha512 = "FTo8Gd9K82u0Ydr6EqLeiH4/NxPX4U2WfqHvm2ZOJjhGooyBROqgYad3PXhepoN+LZm+EmiBvDwxqbHKDlYmlw==";
       };
     };
-    "@blueprintjs/icons-4.6.0" = {
+    "@blueprintjs/icons-4.6.3" = {
       name = "_at_blueprintjs_slash_icons";
       packageName = "@blueprintjs/icons";
-      version = "4.6.0";
+      version = "4.6.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@blueprintjs/icons/-/icons-4.6.0.tgz";
-        sha512 = "3FcL0D35l/5PXFCgJaFE1MODsloNP5BmJ5+YSWt4ZoaB7ZRTfzuZfO5pZBrg9A6gc1fc+aDS+tPITxXI3kg/nQ==";
+        url = "https://registry.npmjs.org/@blueprintjs/icons/-/icons-4.6.3.tgz";
+        sha512 = "PF+4qFMFyi751O2teQGkEylW6b0MuxoPyz34sTc43ouMs+xLMGenP5Mz/c4VtzsOJz6r1AdvC9V1T02vKcMEKg==";
       };
     };
     "@bmewburn/js-beautify-1.13.0" = {
@@ -2848,31 +2848,31 @@ let
         sha512 = "GcIY79elgB+azP74j8vqkiXz8xLFfIzbQJdlwOPisgbKT00tviJQuEghOXSMVxJ00HoYJbGswr4kcllUc4xCcg==";
       };
     };
-    "@cdktf/hcl2cdk-0.12.2" = {
+    "@cdktf/hcl2cdk-0.13.0" = {
       name = "_at_cdktf_slash_hcl2cdk";
       packageName = "@cdktf/hcl2cdk";
-      version = "0.12.2";
+      version = "0.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cdktf/hcl2cdk/-/hcl2cdk-0.12.2.tgz";
-        sha512 = "Dz5bX42/VyKM83uPJWq+cMh/yDOAzH5p8bMFSZ28+/Ygy28RONh7LsB1qrMOYInGqBd5pRVAfJhIibl6rfofvQ==";
+        url = "https://registry.npmjs.org/@cdktf/hcl2cdk/-/hcl2cdk-0.13.0.tgz";
+        sha512 = "T2im8v+QquuNcY7WWEHIOiWxFTntXSapARcBFF/fE+HjxzWii67ARS9NAt3sqe22tnOZR+PY3tWi4xZsy7Rdxw==";
       };
     };
-    "@cdktf/hcl2json-0.12.2" = {
+    "@cdktf/hcl2json-0.13.0" = {
       name = "_at_cdktf_slash_hcl2json";
       packageName = "@cdktf/hcl2json";
-      version = "0.12.2";
+      version = "0.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cdktf/hcl2json/-/hcl2json-0.12.2.tgz";
-        sha512 = "vbE7PNa5/YeY4H62GaXuQUjinvDrVjBkAaGHyEG7IsU1bLEuDAhNemq/HMHB9S5Z7lSsKO4eEwNQcmq2TVZw0A==";
+        url = "https://registry.npmjs.org/@cdktf/hcl2json/-/hcl2json-0.13.0.tgz";
+        sha512 = "makPa7VVrhr43UExQonP/3QBre2CpIq8laZfu5BbKgnOWM0N4dl5yzwWbD14FCklxlHQYjRg/N0KBxltHqG6yA==";
       };
     };
-    "@cdktf/provider-generator-0.12.2" = {
+    "@cdktf/provider-generator-0.13.0" = {
       name = "_at_cdktf_slash_provider-generator";
       packageName = "@cdktf/provider-generator";
-      version = "0.12.2";
+      version = "0.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cdktf/provider-generator/-/provider-generator-0.12.2.tgz";
-        sha512 = "BMAc7rVMpQq0WhfpDmHCE+3qFMWqgXYrJoKQgdB0h8gK9mRaiQMP1lZCgN9GvgFJg4NdAxepV2nBvirr9uGxzw==";
+        url = "https://registry.npmjs.org/@cdktf/provider-generator/-/provider-generator-0.13.0.tgz";
+        sha512 = "jk7QPZFCxdlQtjaLjtYswlnDcWulszd61N3ayAmeFStgX3G8gJmDI+tJyL479t6lmyn6kPeYLiax4uI+ECd1IA==";
       };
     };
     "@chemzqm/neovim-5.7.10" = {
@@ -3055,40 +3055,40 @@ let
         sha512 = "gB5C5nDIacLUdsMuW8YsM9SzK3vaFANe4J11CVXpovpy7bZUGrcJKmc6m/0gWG789pKr6XSZY2aEetjFvSRw5g==";
       };
     };
-    "@cspell/cspell-bundled-dicts-6.10.1" = {
+    "@cspell/cspell-bundled-dicts-6.12.0" = {
       name = "_at_cspell_slash_cspell-bundled-dicts";
       packageName = "@cspell/cspell-bundled-dicts";
-      version = "6.10.1";
+      version = "6.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-6.10.1.tgz";
-        sha512 = "FBoPQFM3mziJCAodN1M3i5G1vaSraPXjHiw0mHPTXEnB+fnMP4N0i3kwDPLn0US8O2dHNP0AzwVmoJ2FmEuBFA==";
+        url = "https://registry.npmjs.org/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-6.12.0.tgz";
+        sha512 = "myfsDwSJcAMjKbztKBG424wIp/YV9/lvxsgHFKxBGPi+nNx1p7TbOjAAO9EWk0mZVHyGKZwCFJS2ohkoqxJWoQ==";
       };
     };
-    "@cspell/cspell-pipe-6.10.1" = {
+    "@cspell/cspell-pipe-6.12.0" = {
       name = "_at_cspell_slash_cspell-pipe";
       packageName = "@cspell/cspell-pipe";
-      version = "6.10.1";
+      version = "6.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cspell/cspell-pipe/-/cspell-pipe-6.10.1.tgz";
-        sha512 = "c31P1Vh4wfqX43rS+MvTGnaevwM+r7Wb/DhJRxt5Wwh1lsV2KeJqPJ0D2nwyW+SDc9Sv6SgxdJzNwOgAD8n0hg==";
+        url = "https://registry.npmjs.org/@cspell/cspell-pipe/-/cspell-pipe-6.12.0.tgz";
+        sha512 = "Nkm+tIJ5k+jZPovZCdmZhrWrwRFwnDq+7yCxhov0C7UX3hsSNtTJIpFuaCNEQJ+Whpvxdh1YKflvHiHYygEgTg==";
       };
     };
-    "@cspell/cspell-service-bus-6.10.1" = {
+    "@cspell/cspell-service-bus-6.12.0" = {
       name = "_at_cspell_slash_cspell-service-bus";
       packageName = "@cspell/cspell-service-bus";
-      version = "6.10.1";
+      version = "6.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cspell/cspell-service-bus/-/cspell-service-bus-6.10.1.tgz";
-        sha512 = "yHf1FRoy3khALNWXPX9oazPJ6piqLvg9h5hW5/MxG66fOERfzP5x4myBHmUbgMsSW/ORyS2fGlVp9hnqV+q6/Q==";
+        url = "https://registry.npmjs.org/@cspell/cspell-service-bus/-/cspell-service-bus-6.12.0.tgz";
+        sha512 = "GgvciSeMUekl8z8vP8//cs5/qRQJSLz9IVREf6fxQW4upjw6zXZ1KonwPqOF5uLocIMAr8eCdrJzHKuKvigJIA==";
       };
     };
-    "@cspell/cspell-types-6.10.1" = {
+    "@cspell/cspell-types-6.12.0" = {
       name = "_at_cspell_slash_cspell-types";
       packageName = "@cspell/cspell-types";
-      version = "6.10.1";
+      version = "6.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cspell/cspell-types/-/cspell-types-6.10.1.tgz";
-        sha512 = "0e4xk9qLo8GwvO6a3w9jiC6RTaiPH5z/DKLBfWPVZqZxjVlKfQAGNL+fRPFV67+ZNxceb9L7SdZUYru8BDJfFQ==";
+        url = "https://registry.npmjs.org/@cspell/cspell-types/-/cspell-types-6.12.0.tgz";
+        sha512 = "BcZTt05fNy9SGXfbPgUyxS4FfIaUpcVq8IOJ0noN+jsKsmlbssOUgJOB2ApN1h66FfWcKuFy/uNrjfcrQ7PTqg==";
       };
     };
     "@cspell/dict-ada-2.0.1" = {
@@ -3343,13 +3343,13 @@ let
         sha512 = "sK2cpuV0EAc43Amd5xeQXkI9MeRTECMw+yjap06gKSModbgI7BqJUHeKZed+0Hii+LpaJ4TYpLGiRVsO+qSk0w==";
       };
     };
-    "@cspell/dict-npm-3.1.2" = {
+    "@cspell/dict-npm-3.1.3" = {
       name = "_at_cspell_slash_dict-npm";
       packageName = "@cspell/dict-npm";
-      version = "3.1.2";
+      version = "3.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cspell/dict-npm/-/dict-npm-3.1.2.tgz";
-        sha512 = "dg4M38nrCCeBOYKVqPG91JPJ67j9LygPeNnu5fa7E9Z1eho3fkYHvfKlF3t4EZyAOxEobp0ZB0iXaCuX2YknlA==";
+        url = "https://registry.npmjs.org/@cspell/dict-npm/-/dict-npm-3.1.3.tgz";
+        sha512 = "xnGp+TMpArdMLBUSG+ZrbEuhvY016rb76Yh35/OPDDEEz4ulENxLSZJxtN2/A0tZ9FJngDNSdFh7eJsOFmciZQ==";
       };
     };
     "@cspell/dict-php-2.0.0" = {
@@ -3424,13 +3424,13 @@ let
         sha512 = "MUwA2YKpqaQOSR4V1/CVGRNk8Ii5kf6I8Ch+4/BhRZRQXuwWbi21rDRYWPqdQWps7VNzAbbMA+PQDWsD5YY38g==";
       };
     };
-    "@cspell/dict-software-terms-2.2.10" = {
+    "@cspell/dict-software-terms-2.2.12" = {
       name = "_at_cspell_slash_dict-software-terms";
       packageName = "@cspell/dict-software-terms";
-      version = "2.2.10";
+      version = "2.2.12";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cspell/dict-software-terms/-/dict-software-terms-2.2.10.tgz";
-        sha512 = "9L4sOmPrXBePWpZSHVJbLI8ie3iedH4+Giw8Dj3CU2KYJTXUn9T4SHmCQYwZPRZqZoYHPhRJcIv1fsl5JU6dSg==";
+        url = "https://registry.npmjs.org/@cspell/dict-software-terms/-/dict-software-terms-2.2.12.tgz";
+        sha512 = "wVVy4on8Uq5VAWm3cqrrhewTRRbpmNxtmTURGQ5rT6FqUtJvZ7W2Pj3QquzXsA9zSFZhGFQR3U7IdFesET9yAg==";
       };
     };
     "@cspell/dict-sql-1.0.4" = {
@@ -3649,184 +3649,184 @@ let
         sha512 = "t34oTdZOqYSiguCGnt9GYzh9mrnhCHNRPGDvxt5PB5T3LZpSVk+vfSXRqpvTxy51sxQpxvTZry8QLC+E+Fm67w==";
       };
     };
-    "@edge-runtime/primitives-1.1.0-beta.34" = {
+    "@edge-runtime/primitives-1.1.0-beta.36" = {
       name = "_at_edge-runtime_slash_primitives";
       packageName = "@edge-runtime/primitives";
-      version = "1.1.0-beta.34";
+      version = "1.1.0-beta.36";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@edge-runtime/primitives/-/primitives-1.1.0-beta.34.tgz";
-        sha512 = "gFubu4qIqg1k6sOM2Ho/txFUE/vZCn057wGiY0NIQ8h6tySiUO5FULCaebPrp+Yfxb3ZCWqDLeWanQGFB3TYQQ==";
+        url = "https://registry.npmjs.org/@edge-runtime/primitives/-/primitives-1.1.0-beta.36.tgz";
+        sha512 = "Tji7SGWmn1+JGSnzFtWUoS7+kODIFprTyIAw0EBOVWEQKWfs7r0aTEm1XkJR0+d1jP9f0GB5LBKG/Z7KFyhx7g==";
       };
     };
-    "@edge-runtime/vm-1.1.0-beta.32" = {
+    "@edge-runtime/vm-1.1.0-beta.36" = {
       name = "_at_edge-runtime_slash_vm";
       packageName = "@edge-runtime/vm";
-      version = "1.1.0-beta.32";
+      version = "1.1.0-beta.36";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@edge-runtime/vm/-/vm-1.1.0-beta.32.tgz";
-        sha512 = "G0SH80am2XjlK6oFI3RoKlg1SBS5ZAeqakYasfNhJEXqM7g7tsoh5jURMQcNxpLvo48XBTgHgAVEMzhAGgDPZg==";
+        url = "https://registry.npmjs.org/@edge-runtime/vm/-/vm-1.1.0-beta.36.tgz";
+        sha512 = "uPZmL7X+lKBFJsTg8nC0qPDBx4JGgpRqlgJi2s77g2NOtqitQOI90BfIKHZSSoMQEwTqfvAkpu2ui8nazOwHxA==";
       };
     };
-    "@electron-forge/async-ora-6.0.0-beta.66" = {
+    "@electron-forge/async-ora-6.0.0-beta.67" = {
       name = "_at_electron-forge_slash_async-ora";
       packageName = "@electron-forge/async-ora";
-      version = "6.0.0-beta.66";
+      version = "6.0.0-beta.67";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/async-ora/-/async-ora-6.0.0-beta.66.tgz";
-        sha512 = "Qy8ktYtEt6fk+Vw8TNpEd1/O7WfjAxl9OCj2DgyOf/omnDlbhY3LXzlX5S9l6xED6KcT4T/Up/VYDkVQk+CncQ==";
+        url = "https://registry.npmjs.org/@electron-forge/async-ora/-/async-ora-6.0.0-beta.67.tgz";
+        sha512 = "pqQlxHRnECDAAQhi3U2JgSj60TBv3e3ZLvL9Wv+dIBVv64Oc2QTRrryO5Svd7w2J1t+enVwQue18IrVaYUjw0w==";
       };
     };
-    "@electron-forge/core-6.0.0-beta.66" = {
+    "@electron-forge/core-6.0.0-beta.67" = {
       name = "_at_electron-forge_slash_core";
       packageName = "@electron-forge/core";
-      version = "6.0.0-beta.66";
+      version = "6.0.0-beta.67";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/core/-/core-6.0.0-beta.66.tgz";
-        sha512 = "9NjxYiMxiZ+mtqL0zbZmh8tUKgkOneZwh3Qm/+DznIgmFA2M78t5d2GAjqkh5P4xeZqan1TgwVSNKFFlY/5Lcw==";
+        url = "https://registry.npmjs.org/@electron-forge/core/-/core-6.0.0-beta.67.tgz";
+        sha512 = "/6s58GPttz8dOZU9ugX3GUSHGAgCljPA16KekmVTubzSxOPJ36CHHmTpcngObjyVUkmjBbqlEeZW/aOTP9WbJA==";
       };
     };
-    "@electron-forge/installer-base-6.0.0-beta.66" = {
+    "@electron-forge/installer-base-6.0.0-beta.67" = {
       name = "_at_electron-forge_slash_installer-base";
       packageName = "@electron-forge/installer-base";
-      version = "6.0.0-beta.66";
+      version = "6.0.0-beta.67";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-base/-/installer-base-6.0.0-beta.66.tgz";
-        sha512 = "SznJwTQsE6olB/3UrWuV4EDOd52P7E3Pp68Ytf41aBZHx9FaK/CYOIZFUWk/VnU7FbrHriZz9Mo8KThsotfBDA==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-base/-/installer-base-6.0.0-beta.67.tgz";
+        sha512 = "fDcseLUISGVRNn88Rm2NA2K7GY5cXnNW4kLQ90IyfCdeeascPrQplGswBRhVBd4uFJNbG0Pane6/8YhNHkGswg==";
       };
     };
-    "@electron-forge/installer-darwin-6.0.0-beta.66" = {
+    "@electron-forge/installer-darwin-6.0.0-beta.67" = {
       name = "_at_electron-forge_slash_installer-darwin";
       packageName = "@electron-forge/installer-darwin";
-      version = "6.0.0-beta.66";
+      version = "6.0.0-beta.67";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-darwin/-/installer-darwin-6.0.0-beta.66.tgz";
-        sha512 = "9+i8b/j++to328cCrsrteuvEts9sshcqDz7NdLz9Q52ReTH4nrew83e1pFPpz6MitIy1GxD8VFllqBWhwrQ28A==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-darwin/-/installer-darwin-6.0.0-beta.67.tgz";
+        sha512 = "tRV9bw0k2xLkMdSThJ85y9Bfs2MyfAYrWPFLJfi7tTbecJ3FpoZpwlfh8Yj7SnTUNUuiiHe3V5bU0PUAZCD9qA==";
       };
     };
-    "@electron-forge/installer-deb-6.0.0-beta.66" = {
+    "@electron-forge/installer-deb-6.0.0-beta.67" = {
       name = "_at_electron-forge_slash_installer-deb";
       packageName = "@electron-forge/installer-deb";
-      version = "6.0.0-beta.66";
+      version = "6.0.0-beta.67";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-deb/-/installer-deb-6.0.0-beta.66.tgz";
-        sha512 = "GJaRzW0xdfMq/kGzE5S0m5gS19xjf9LVI8cy9gJ+5IepuLH2M9YwOmzk6MH4vr4mNSZY9WFY3Vq8FidN+M+DiQ==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-deb/-/installer-deb-6.0.0-beta.67.tgz";
+        sha512 = "7ZWTwhqbmKLtezICAkxxIGCxgzmYz0pJKnxVulVyUJ9GmobYL6QubCDzFVnXYcIUOJFMGWhQtWRKXSMT1H+6XA==";
       };
     };
-    "@electron-forge/installer-dmg-6.0.0-beta.66" = {
+    "@electron-forge/installer-dmg-6.0.0-beta.67" = {
       name = "_at_electron-forge_slash_installer-dmg";
       packageName = "@electron-forge/installer-dmg";
-      version = "6.0.0-beta.66";
+      version = "6.0.0-beta.67";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-dmg/-/installer-dmg-6.0.0-beta.66.tgz";
-        sha512 = "RVB/p6/dKmLWj1DzbSK4yg2MUmc3JeXkfZiG5Gp3beTwumdaieFTc5lPvvczTr7r9WgKPWELyH5Vq0Cmt0md1A==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-dmg/-/installer-dmg-6.0.0-beta.67.tgz";
+        sha512 = "+zeS3slNdHwABP2TgOcY0abUlO+ToHTy9Ux8lvU2C1TUV8CTAGvMttvJzX+MPMcglYB2llaSp0VsNk3aViup5g==";
       };
     };
-    "@electron-forge/installer-exe-6.0.0-beta.66" = {
+    "@electron-forge/installer-exe-6.0.0-beta.67" = {
       name = "_at_electron-forge_slash_installer-exe";
       packageName = "@electron-forge/installer-exe";
-      version = "6.0.0-beta.66";
+      version = "6.0.0-beta.67";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-exe/-/installer-exe-6.0.0-beta.66.tgz";
-        sha512 = "5dkvdOsT0NgZ5ZYCt/2ajSe49Hq8XXJXeCqAB0hhR3krI1nhQfbyr6I8MRK6XMf/oLSHWu/LwTTFpVvFn/GbGQ==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-exe/-/installer-exe-6.0.0-beta.67.tgz";
+        sha512 = "8dViBJPHWUoW7wtm2MAk02H/qS/gmSGWL0BVSK4Ol1n/idakTlCJEvOAYnhTqcYDWkmxIv/6EGpros90cuTlqQ==";
       };
     };
-    "@electron-forge/installer-linux-6.0.0-beta.66" = {
+    "@electron-forge/installer-linux-6.0.0-beta.67" = {
       name = "_at_electron-forge_slash_installer-linux";
       packageName = "@electron-forge/installer-linux";
-      version = "6.0.0-beta.66";
+      version = "6.0.0-beta.67";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-linux/-/installer-linux-6.0.0-beta.66.tgz";
-        sha512 = "TrG4suStEmjJb7dn+6e/JTjg6IpC6hIxyih5rlhhC4uNJjOUk05f/VybL8Sx9bR2/J1te08V2XCdaSP/PeX47g==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-linux/-/installer-linux-6.0.0-beta.67.tgz";
+        sha512 = "ZlvAJNih6g0vxBpUxo7z2xPE6m5FTwqChtHv0ysfTSHjNxFOlXPBIuA7xsC/8ezmJC7okhagDnOUYeJuW2dPXQ==";
       };
     };
-    "@electron-forge/installer-rpm-6.0.0-beta.66" = {
+    "@electron-forge/installer-rpm-6.0.0-beta.67" = {
       name = "_at_electron-forge_slash_installer-rpm";
       packageName = "@electron-forge/installer-rpm";
-      version = "6.0.0-beta.66";
+      version = "6.0.0-beta.67";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-rpm/-/installer-rpm-6.0.0-beta.66.tgz";
-        sha512 = "1sYDT+ZyVmmoQaBauobZteKswlLQT2Mf7N7zXhiDcVMG8ZxLmyycg7LAq3agsNdeLJvue8KP9BSbE9jN8YlXNQ==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-rpm/-/installer-rpm-6.0.0-beta.67.tgz";
+        sha512 = "1U+ozsXb+0Wq2M5ZE3e0b5LYj516Kx6EmVc8VynBy2OdzXl/u0GRnQfrExQXaYv4KrpdenaZEwLJjDTk0/NFNg==";
       };
     };
-    "@electron-forge/installer-zip-6.0.0-beta.66" = {
+    "@electron-forge/installer-zip-6.0.0-beta.67" = {
       name = "_at_electron-forge_slash_installer-zip";
       packageName = "@electron-forge/installer-zip";
-      version = "6.0.0-beta.66";
+      version = "6.0.0-beta.67";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-zip/-/installer-zip-6.0.0-beta.66.tgz";
-        sha512 = "CWMyANNjJejG7gV059V/FnfcA8WYbMqxAEz6SkE7mAhZFKy4/a6Py+3wYyFuEF2xxdbY2V8G8cL3tmLzHBiCrg==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-zip/-/installer-zip-6.0.0-beta.67.tgz";
+        sha512 = "V0+yfvIP03ylkpK7rqD+2wNo+64GW6xJ2fxVOqq6Gp1s3E+Y+ymwMg4Ve5PpzVTmfhJ5qh9o8BEvgqSydT8piw==";
       };
     };
-    "@electron-forge/maker-base-6.0.0-beta.66" = {
+    "@electron-forge/maker-base-6.0.0-beta.67" = {
       name = "_at_electron-forge_slash_maker-base";
       packageName = "@electron-forge/maker-base";
-      version = "6.0.0-beta.66";
+      version = "6.0.0-beta.67";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/maker-base/-/maker-base-6.0.0-beta.66.tgz";
-        sha512 = "fnaRH0pB5uiS+AuNBrZ2q2KcYtwifAaa6OH2m1h37QBW7GLqzT6mp6jKvE2GvPmpNeRG9Tg/IjDhfpc1032zbA==";
+        url = "https://registry.npmjs.org/@electron-forge/maker-base/-/maker-base-6.0.0-beta.67.tgz";
+        sha512 = "WYwY01zEUr1II5lXiaGmGDUZ12swB/MJBOE5JNtGnirh6y/0MlSWhQOjbZxmLG72MrKbnEjvyqOb/8+3Yk4hzg==";
       };
     };
-    "@electron-forge/plugin-base-6.0.0-beta.66" = {
+    "@electron-forge/plugin-base-6.0.0-beta.67" = {
       name = "_at_electron-forge_slash_plugin-base";
       packageName = "@electron-forge/plugin-base";
-      version = "6.0.0-beta.66";
+      version = "6.0.0-beta.67";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/plugin-base/-/plugin-base-6.0.0-beta.66.tgz";
-        sha512 = "UbUcPFvoieeJCjQcwVY32NAMdnom+STnerqoAfZ6uyiHwegRk8xd8CInAcDMGWLEkc6pYYxia7GLVTSni52gIQ==";
+        url = "https://registry.npmjs.org/@electron-forge/plugin-base/-/plugin-base-6.0.0-beta.67.tgz";
+        sha512 = "XwETxNAFRNsYbslzdDUu/bn1x2LVQ/XIkRQCVjRLQUtKj/On+gHHnLRb/e50LZT/PyDGEb36aX/mrkWqCulbOg==";
       };
     };
-    "@electron-forge/publisher-base-6.0.0-beta.66" = {
+    "@electron-forge/publisher-base-6.0.0-beta.67" = {
       name = "_at_electron-forge_slash_publisher-base";
       packageName = "@electron-forge/publisher-base";
-      version = "6.0.0-beta.66";
+      version = "6.0.0-beta.67";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/publisher-base/-/publisher-base-6.0.0-beta.66.tgz";
-        sha512 = "/uessmmEFDU7oddBLZMyHcJVIhJxZR/Kd4QcSzCjto00xNw7ZyMQBwoAYP9Y8W+3iky1WEomoC8umncc183Rzw==";
+        url = "https://registry.npmjs.org/@electron-forge/publisher-base/-/publisher-base-6.0.0-beta.67.tgz";
+        sha512 = "mLo4eCvU4cFG5qH+5NzQYIRfcojAQC7ogHSUB1Tv0HTQqZwozR+pEtuEydMk9OFBEPkphJjA59qY2N3kZrcuOA==";
       };
     };
-    "@electron-forge/shared-types-6.0.0-beta.66" = {
+    "@electron-forge/shared-types-6.0.0-beta.67" = {
       name = "_at_electron-forge_slash_shared-types";
       packageName = "@electron-forge/shared-types";
-      version = "6.0.0-beta.66";
+      version = "6.0.0-beta.67";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/shared-types/-/shared-types-6.0.0-beta.66.tgz";
-        sha512 = "KbT6EeMkhXX1xeaXXL7ubo7lzmqgxgaLIGjW4zAzEcJDcPqf8Zt0YrPVQGkLq+MTLWsmI/CPJUzQ9KHUXtT4ng==";
+        url = "https://registry.npmjs.org/@electron-forge/shared-types/-/shared-types-6.0.0-beta.67.tgz";
+        sha512 = "QzL0yINK2d98trUbhrJPnIKhhhQSKOoiUBG0GM44dR0pstdOexNMNdgWX2+48PHiDwiqosgQBB9b47uJCrPR0Q==";
       };
     };
-    "@electron-forge/template-base-6.0.0-beta.66" = {
+    "@electron-forge/template-base-6.0.0-beta.67" = {
       name = "_at_electron-forge_slash_template-base";
       packageName = "@electron-forge/template-base";
-      version = "6.0.0-beta.66";
+      version = "6.0.0-beta.67";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/template-base/-/template-base-6.0.0-beta.66.tgz";
-        sha512 = "5mWw8sJ334q06LLJSJiQxFbY7t7f4m8jYS1Nzyw2BExakhyklThpfFuNqPNzJxslEPv4kOWp/LZM3LdqEe4/OQ==";
+        url = "https://registry.npmjs.org/@electron-forge/template-base/-/template-base-6.0.0-beta.67.tgz";
+        sha512 = "yL4PpE8IBM5dxt7DAKOOVgM1L0cIWXoEvgmdNYKuS599IIxa8qMhOSKf8jfLNEeoI2nL4wNtfCZXAe0/eDX+JA==";
       };
     };
-    "@electron-forge/template-typescript-6.0.0-beta.66" = {
+    "@electron-forge/template-typescript-6.0.0-beta.67" = {
       name = "_at_electron-forge_slash_template-typescript";
       packageName = "@electron-forge/template-typescript";
-      version = "6.0.0-beta.66";
+      version = "6.0.0-beta.67";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/template-typescript/-/template-typescript-6.0.0-beta.66.tgz";
-        sha512 = "SmdUVo+np8u8jOL0yFORVfXQZCadEGH6nCzUfX8Y2JjlIaXsW0P8igouVSpDL/mZUb9fchhVB8/l2NVjWhBEIA==";
+        url = "https://registry.npmjs.org/@electron-forge/template-typescript/-/template-typescript-6.0.0-beta.67.tgz";
+        sha512 = "tzg06sATQ7G8/5HTSBnW8TyimEQHxa7a3q5JoPDJfOTu6fHcqFJlnjpwiH2qMSX5/S1BZ9Qhr4FIjMvHSoGjBA==";
       };
     };
-    "@electron-forge/template-typescript-webpack-6.0.0-beta.66" = {
+    "@electron-forge/template-typescript-webpack-6.0.0-beta.67" = {
       name = "_at_electron-forge_slash_template-typescript-webpack";
       packageName = "@electron-forge/template-typescript-webpack";
-      version = "6.0.0-beta.66";
+      version = "6.0.0-beta.67";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/template-typescript-webpack/-/template-typescript-webpack-6.0.0-beta.66.tgz";
-        sha512 = "8y7ypBTVsgR0QaUTv75lqAdLNzYbMlOCma8hPRWzgKvLk4WzpruCPfgcBYL2cUU6LPs5vN1PMdlgGxuCC6voHQ==";
+        url = "https://registry.npmjs.org/@electron-forge/template-typescript-webpack/-/template-typescript-webpack-6.0.0-beta.67.tgz";
+        sha512 = "N3fz4HGDB4eLgn6ZEaef8qStZQ8bM1HTgHJdFXZDuzg/PFDnGsxkumIh0PVFlwEpfO2SC+KrUewG/ttmf84Jeg==";
       };
     };
-    "@electron-forge/template-webpack-6.0.0-beta.66" = {
+    "@electron-forge/template-webpack-6.0.0-beta.67" = {
       name = "_at_electron-forge_slash_template-webpack";
       packageName = "@electron-forge/template-webpack";
-      version = "6.0.0-beta.66";
+      version = "6.0.0-beta.67";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/template-webpack/-/template-webpack-6.0.0-beta.66.tgz";
-        sha512 = "8a4GjEDc36TKYDH5MQYMHxi6DY4XZF+UEcovLsIGwJk4Q9HxV35SMS0BKnBtnIixxTVhcu2mAvM/KbgsnrCA9w==";
+        url = "https://registry.npmjs.org/@electron-forge/template-webpack/-/template-webpack-6.0.0-beta.67.tgz";
+        sha512 = "tRR8s7uufaZhL9HgPEQ1GA5x+sL/MTvvUAhn55uQ5yEryrYtrFa1MtFlxGnkVnPlYTfAyrPdyzHxX7peXfVTJQ==";
       };
     };
     "@electron/get-1.14.1" = {
@@ -3847,13 +3847,13 @@ let
         sha512 = "8nmTGC/3/6IaEfeTcQwtJdjLA/L3sb0XQJUv9x3ZfM0pfmKvkSdelbT4pgF3dpCQOvSmJ97kYAvFltikVjfepA==";
       };
     };
-    "@electron/universal-1.3.0" = {
+    "@electron/universal-1.3.1" = {
       name = "_at_electron_slash_universal";
       packageName = "@electron/universal";
-      version = "1.3.0";
+      version = "1.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron/universal/-/universal-1.3.0.tgz";
-        sha512 = "6SAIlMZZRj1qpe3z3qhMWf3fmqhAdzferiQ5kpspCI9sH1GjkzRXY0RLaz0ktHtYonOj9XMpXNkhDy7QQagQEg==";
+        url = "https://registry.npmjs.org/@electron/universal/-/universal-1.3.1.tgz";
+        sha512 = "y1r1dpiyrOa3EOxKgr2Rwsv69Dya2MC1LwM+9/QG5jeCetd2s73NTrpubBD6scv9sRNexYYik8or/Fo8sNtNbg==";
       };
     };
     "@emmetio/abbreviation-2.2.3" = {
@@ -3955,22 +3955,22 @@ let
         sha512 = "uZbcXi0zbmKC/050p3gJnne5Qdzw8vkXIv+c2BW0Lsc1ji1SkrxbKPUy5Efr0blbTu1SL8w4eyfpnSdPg3G0Qg==";
       };
     };
-    "@esbuild/android-arm-0.15.9" = {
+    "@esbuild/android-arm-0.15.10" = {
       name = "_at_esbuild_slash_android-arm";
       packageName = "@esbuild/android-arm";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.15.9.tgz";
-        sha512 = "VZPy/ETF3fBG5PiinIkA0W/tlsvlEgJccyN2DzWZEl0DlVKRbu91PvY2D6Lxgluj4w9QtYHjOWjAT44C+oQ+EQ==";
+        url = "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.15.10.tgz";
+        sha512 = "FNONeQPy/ox+5NBkcSbYJxoXj9GWu8gVGJTVmUyoOCKQFDTrHVKgNSzChdNt0I8Aj/iKcsDf2r9BFwv+FSNUXg==";
       };
     };
-    "@esbuild/linux-loong64-0.15.9" = {
+    "@esbuild/linux-loong64-0.15.10" = {
       name = "_at_esbuild_slash_linux-loong64";
       packageName = "@esbuild/linux-loong64";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.9.tgz";
-        sha512 = "O+NfmkfRrb3uSsTa4jE3WApidSe3N5++fyOVGP1SmMZi4A3BZELkhUUvj5hwmMuNdlpzAZ8iAPz2vmcR7DCFQA==";
+        url = "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.10.tgz";
+        sha512 = "w0Ou3Z83LOYEkwaui2M8VwIp+nLi/NA60lBLMvaJ+vXVMcsARYdEzLNE7RSm4+lSg4zq4d7fAVuzk7PNQ5JFgg==";
       };
     };
     "@eslint/eslintrc-0.4.3" = {
@@ -4405,13 +4405,13 @@ let
         sha512 = "puklLc6Jvg279OGagqkSfuHML6ckBhw3gJakdvIZHKeJiduh+34U4Finl3K24yBSXzG2WsN+LwLTd1Vcociy+g==";
       };
     };
-    "@fluentui/font-icons-mdl2-8.4.13" = {
+    "@fluentui/font-icons-mdl2-8.5.0" = {
       name = "_at_fluentui_slash_font-icons-mdl2";
       packageName = "@fluentui/font-icons-mdl2";
-      version = "8.4.13";
+      version = "8.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/font-icons-mdl2/-/font-icons-mdl2-8.4.13.tgz";
-        sha512 = "rXJpRKxHg68zCKTrcmouklGpE/laXlTQaLyBuft8EcPczZX3aupYPZda9sp+Kknolmd3Lvypn2D9Vf+McJDtwg==";
+        url = "https://registry.npmjs.org/@fluentui/font-icons-mdl2/-/font-icons-mdl2-8.5.0.tgz";
+        sha512 = "EV9QFy/plJ0blnf6AKZ8s2UQMfzNTUEdtAm/nP2Z3cd7XdYyXBN7HDAWmxwNWhoGyZ6hhKrruj4ZW0C/qKYDMQ==";
       };
     };
     "@fluentui/foundation-legacy-8.2.20" = {
@@ -4441,13 +4441,13 @@ let
         sha512 = "bHWftN3zTp1bbBfmAEH8YK9UURWj2mffw7b7VaW2Og1qxwv3GMSza1cyv/d3EVqpMJ8AVwFv3mbi9p1ieMN9mw==";
       };
     };
-    "@fluentui/react-8.96.2" = {
+    "@fluentui/react-8.97.2" = {
       name = "_at_fluentui_slash_react";
       packageName = "@fluentui/react";
-      version = "8.96.2";
+      version = "8.97.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/react/-/react-8.96.2.tgz";
-        sha512 = "ai4rk0udtXle0D1356SOrUBRfx7MTa5okbDX9WtpzfMdijRPpU/xSWRx2hiBad+pqvq8ArVBIO/MBqSDyJ630A==";
+        url = "https://registry.npmjs.org/@fluentui/react/-/react-8.97.2.tgz";
+        sha512 = "MwBFRydKfdu26F3yXqpCJxVUuWw8GDl1pEkjlWfKEKnBMiODmEmeMEsvSaI3BusXXz09q05+cdMqmD4lhuZlcw==";
       };
     };
     "@fluentui/react-focus-8.8.5" = {
@@ -4747,13 +4747,13 @@ let
         sha512 = "bQu+hDd37e+FZ0CQGEEczmRSfQRnnXeUxI/0miDV+NV/zCbEdIJj5tYFNrKT03W6wgdqx8U06d8L23LxvGri/g==";
       };
     };
-    "@graphql-tools/delegate-9.0.6" = {
+    "@graphql-tools/delegate-9.0.8" = {
       name = "_at_graphql-tools_slash_delegate";
       packageName = "@graphql-tools/delegate";
-      version = "9.0.6";
+      version = "9.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-9.0.6.tgz";
-        sha512 = "HMA7rcJLQA3dJwWRG2271mRCdh0SLaK5+FPg+F7JIa3aF5fRdN4pVHNDaAjQeyKOQ2afjgjO5FvOyJwv/ve7Bg==";
+        url = "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-9.0.8.tgz";
+        sha512 = "h+Uce0Np0eKj7wILOvlffRQ9jEQ4KelNXfqG8A2w+2sO2P6CbKsR7bJ4ch9lcUdCBbZ4Wg6L/K+1C4NRFfzbNw==";
       };
     };
     "@graphql-tools/graphql-file-loader-6.2.7" = {
@@ -4891,13 +4891,13 @@ let
         sha512 = "DSDrbhQIv7fheQ60pfDpGD256ixUQIR6Hhf9Z5bRjVkXOCvO5XrkwoWLiU7iHL81GB1r0Ba31bf+sl+D4nyyfw==";
       };
     };
-    "@graphql-tools/url-loader-7.16.2" = {
+    "@graphql-tools/url-loader-7.16.4" = {
       name = "_at_graphql-tools_slash_url-loader";
       packageName = "@graphql-tools/url-loader";
-      version = "7.16.2";
+      version = "7.16.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/url-loader/-/url-loader-7.16.2.tgz";
-        sha512 = "ZVG3kDEJ88zLfqYtVmI36RUzaP/0bPBcJfBH8whMYL620tE6kizEQsON8iKsxcU1bWB5D7m9ZVFqW4eZ5EqVWw==";
+        url = "https://registry.npmjs.org/@graphql-tools/url-loader/-/url-loader-7.16.4.tgz";
+        sha512 = "7yGrJJNcqVQIplCyVLk7tW2mAgYyZ06FRmCBnzw3B61+aIjFavrm6YlnKkhdqYSYyFmIbVcigdP3vkoYIu23TA==";
       };
     };
     "@graphql-tools/utils-6.2.4" = {
@@ -4954,13 +4954,13 @@ let
         sha512 = "1NDUymworsOlb53Qfh7fonDi2STvqCtbeE68ntKY9K/Ju/be2ZNxrFSbrBHwnxWcN9PjISNnLcAyJ1L5tCUyhg==";
       };
     };
-    "@graphql-tools/wrap-9.2.1" = {
+    "@graphql-tools/wrap-9.2.3" = {
       name = "_at_graphql-tools_slash_wrap";
       packageName = "@graphql-tools/wrap";
-      version = "9.2.1";
+      version = "9.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/wrap/-/wrap-9.2.1.tgz";
-        sha512 = "W8bzJijTZDNi8e1oM2AMG89CtvfTYaJ9lCe0dYMN+a+OPMhRfgR9+eO7ALcUa9y4MTu+YEDVjUq0ZboaSvesyA==";
+        url = "https://registry.npmjs.org/@graphql-tools/wrap/-/wrap-9.2.3.tgz";
+        sha512 = "aiLjcAuUwcvA1mF25c7KFDPXEdQDpo6bTDyAMCSlFXpF4T01hoxLERmfmbRmsmy/dP80ZB31a+t70aspVdqZSA==";
       };
     };
     "@graphql-typed-document-node/core-3.1.1" = {
@@ -5161,13 +5161,13 @@ let
         sha512 = "A0NOZI+Glp3Xgcz6Na7i7o09+/+xm2m0UCU8gdtM2nIv6/cjLmhMZMqehSpTlgbx9omtLmV8LVqOskPEyWnmZQ==";
       };
     };
-    "@humanwhocodes/config-array-0.10.5" = {
+    "@humanwhocodes/config-array-0.10.7" = {
       name = "_at_humanwhocodes_slash_config-array";
       packageName = "@humanwhocodes/config-array";
-      version = "0.10.5";
+      version = "0.10.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.10.5.tgz";
-        sha512 = "XVVDtp+dVvRxMoxSiSfasYaG02VEe1qH5cKgMQJWhol6HwzbcqoCMJi8dAGoYAO57jhUyhI6cWuRiTcRaDaYug==";
+        url = "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.10.7.tgz";
+        sha512 = "MDl6D6sBsaV452/QSdX+4CXIjZhIcI0PELsxUjk4U828yd58vk3bTIvk/6w5FY+4hIy9sLW0sfrV7K7Kc++j/w==";
       };
     };
     "@humanwhocodes/config-array-0.5.0" = {
@@ -5620,13 +5620,13 @@ let
         sha512 = "3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==";
       };
     };
-    "@js-joda/core-5.4.0" = {
+    "@js-joda/core-5.4.1" = {
       name = "_at_js-joda_slash_core";
       packageName = "@js-joda/core";
-      version = "5.4.0";
+      version = "5.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@js-joda/core/-/core-5.4.0.tgz";
-        sha512 = "AeQQWcDiuUtI6BXX59VR9KkdF4sLOeaicwpQKnNu8iBKJ8O1+M9FLs7ZCbdAMWmDLMoeaG1HG8PMbkuyuMTVgw==";
+        url = "https://registry.npmjs.org/@js-joda/core/-/core-5.4.1.tgz";
+        sha512 = "+uMco2Xm9VYJ81XYWwrvgsM9xEvqs9JvLNrN4/fOg7YJKk4yeqAg+O/cpoFPTGxvfL2Zy0mUcnKlIz9UV0Cadw==";
       };
     };
     "@jsdevtools/ono-7.1.3" = {
@@ -5728,13 +5728,13 @@ let
         sha512 = "4w+P0VkbjzEXC7kv8T1GJ/9AVaP9I6uasMZ/JcdwZBS3qwvKo5A5z9uGhP5c7TvItzcmPb44b5Mw2kT+WjUuAA==";
       };
     };
-    "@ledgerhq/devices-7.0.1" = {
+    "@ledgerhq/devices-7.0.3" = {
       name = "_at_ledgerhq_slash_devices";
       packageName = "@ledgerhq/devices";
-      version = "7.0.1";
+      version = "7.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ledgerhq/devices/-/devices-7.0.1.tgz";
-        sha512 = "LlAyDU5+GH0w+J1wscLU+Ga4z5a5ACKmMGQKILj5XscCtp63NjbtVdVt4oc/xrmoUdRqVehIw2Ui+e9nIF52yA==";
+        url = "https://registry.npmjs.org/@ledgerhq/devices/-/devices-7.0.3.tgz";
+        sha512 = "URlcgq6yKklWxj35nIu/eTF0UpGLGUOp69xp8uHeyoMK2wqVC0GNGeD2MvKyJ+ul83edqMEI98GycA98Y7trsg==";
       };
     };
     "@ledgerhq/errors-5.50.0" = {
@@ -5746,13 +5746,13 @@ let
         sha512 = "gu6aJ/BHuRlpU7kgVpy2vcYk6atjB4iauP2ymF7Gk0ez0Y/6VSMVSJvubeEQN+IV60+OBK0JgeIZG7OiHaw8ow==";
       };
     };
-    "@ledgerhq/errors-6.10.2" = {
+    "@ledgerhq/errors-6.11.1" = {
       name = "_at_ledgerhq_slash_errors";
       packageName = "@ledgerhq/errors";
-      version = "6.10.2";
+      version = "6.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ledgerhq/errors/-/errors-6.10.2.tgz";
-        sha512 = "iMfEJPWaan8QaZw87WMUnFFRJqveE3FpU2ObTE0ydTJLPJNOUJjjurGBklqdWM/j5BIQvpi3byGKFChfNg8CaQ==";
+        url = "https://registry.npmjs.org/@ledgerhq/errors/-/errors-6.11.1.tgz";
+        sha512 = "HT1PFvNrejcN5z3ba6xikacIdHWMkjBeE9U5FFoGHhaKBKGjC74mnCeEo0/oJunyuVId+9mhGnv6lrBl6Mkqdg==";
       };
     };
     "@ledgerhq/hw-transport-5.51.1" = {
@@ -5764,31 +5764,31 @@ let
         sha512 = "6wDYdbWrw9VwHIcoDnqWBaDFyviyjZWv6H9vz9Vyhe4Qd7TIFmbTl/eWs6hZvtZBza9K8y7zD8ChHwRI4s9tSw==";
       };
     };
-    "@ledgerhq/hw-transport-6.27.4" = {
+    "@ledgerhq/hw-transport-6.27.6" = {
       name = "_at_ledgerhq_slash_hw-transport";
       packageName = "@ledgerhq/hw-transport";
-      version = "6.27.4";
+      version = "6.27.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ledgerhq/hw-transport/-/hw-transport-6.27.4.tgz";
-        sha512 = "i3RYKfSIZ7PHM2sFljAU443qOYMTlghx8l5AZqsNKsXbawHkuOr7EtISW3zqbC0Wh3uws7u63qQ/50TLmylr7g==";
+        url = "https://registry.npmjs.org/@ledgerhq/hw-transport/-/hw-transport-6.27.6.tgz";
+        sha512 = "DRGUsB8WfbeEPuU42nAtwYpA5D6Bq3q1CvC2VjDinkukLcf6XMc22YUJl9mxt+h+/cLTU1Ff/pz+fqYqeELLEA==";
       };
     };
-    "@ledgerhq/hw-transport-node-hid-6.27.4" = {
+    "@ledgerhq/hw-transport-node-hid-6.27.6" = {
       name = "_at_ledgerhq_slash_hw-transport-node-hid";
       packageName = "@ledgerhq/hw-transport-node-hid";
-      version = "6.27.4";
+      version = "6.27.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ledgerhq/hw-transport-node-hid/-/hw-transport-node-hid-6.27.4.tgz";
-        sha512 = "7dnQMUXKPcnlHaJsPT3Oo5WXYfeIqqA6u0mo/rbvFdz3/KsJtDaBF2E3RtBXFHrDmXjBA0leqXFeWXdHDFdF3A==";
+        url = "https://registry.npmjs.org/@ledgerhq/hw-transport-node-hid/-/hw-transport-node-hid-6.27.6.tgz";
+        sha512 = "ZQGKTydb3niMfGBrhbYR7zDiykOadiXRj05qfrjkCvvLXEq3KkUy8WnhfoSQEgaQpOx+i4SUJwzzfAih5eP3GA==";
       };
     };
-    "@ledgerhq/hw-transport-node-hid-noevents-6.27.4" = {
+    "@ledgerhq/hw-transport-node-hid-noevents-6.27.6" = {
       name = "_at_ledgerhq_slash_hw-transport-node-hid-noevents";
       packageName = "@ledgerhq/hw-transport-node-hid-noevents";
-      version = "6.27.4";
+      version = "6.27.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ledgerhq/hw-transport-node-hid-noevents/-/hw-transport-node-hid-noevents-6.27.4.tgz";
-        sha512 = "PlHtw9x7h40voLUvBAfcr1Phjo8rrRESEDsU0OY6doFoSHpjRFaNtQR1/okQ/A7hx19uXfqXOhbmrrBLNWrqsg==";
+        url = "https://registry.npmjs.org/@ledgerhq/hw-transport-node-hid-noevents/-/hw-transport-node-hid-noevents-6.27.6.tgz";
+        sha512 = "9WvUBUhk0eRSZjXgEsdNVGkxHuDLoh6fR1PJIeXKHgC8dzTREYrGKytx8ECqO5OPotXeAZURC3yB00XZrKIupw==";
       };
     };
     "@ledgerhq/hw-transport-u2f-5.36.0-deprecated" = {
@@ -5827,13 +5827,13 @@ let
         sha512 = "swKHYCOZUGyVt4ge0u8a7AwNcA//h4nx5wIi0sruGye1IJ5Cva0GyK9L2/WdX+kWVTKp92ZiEo1df31lrWGPgA==";
       };
     };
-    "@ledgerhq/logs-6.10.0" = {
+    "@ledgerhq/logs-6.10.1" = {
       name = "_at_ledgerhq_slash_logs";
       packageName = "@ledgerhq/logs";
-      version = "6.10.0";
+      version = "6.10.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ledgerhq/logs/-/logs-6.10.0.tgz";
-        sha512 = "lLseUPEhSFUXYTKj6q7s2O3s2vW2ebgA11vMAlKodXGf5AFw4zUoEbTz9CoFOC9jS6xY4Qr8BmRnxP/odT4Uuw==";
+        url = "https://registry.npmjs.org/@ledgerhq/logs/-/logs-6.10.1.tgz";
+        sha512 = "z+ILK8Q3y+nfUl43ctCPuR4Y2bIxk/ooCQFwZxhtci1EhAtMDzMAx2W25qx8G1PPL9UUOdnUax19+F0OjXoj4w==";
       };
     };
     "@leichtgewicht/ip-codec-2.0.4" = {
@@ -5845,544 +5845,544 @@ let
         sha512 = "Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==";
       };
     };
-    "@lerna/add-5.5.2" = {
+    "@lerna/add-5.6.1" = {
       name = "_at_lerna_slash_add";
       packageName = "@lerna/add";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/add/-/add-5.5.2.tgz";
-        sha512 = "YCBpwDtNICvjTEG7klXITXFC8pZd8NrmkC8yseaTGm51VPNneZVPJZHWhOlWM4spn50ELVP1p2nnSl6COt50aw==";
+        url = "https://registry.npmjs.org/@lerna/add/-/add-5.6.1.tgz";
+        sha512 = "cZvqMYoAclefw/KQwrRIpeQiKuj/KhbkNItWc6LnWcpweUmnrAm/AEfddIOnSagRHUgkSIY/pafjL2DGdIU25w==";
       };
     };
-    "@lerna/bootstrap-5.5.2" = {
+    "@lerna/bootstrap-5.6.1" = {
       name = "_at_lerna_slash_bootstrap";
       packageName = "@lerna/bootstrap";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/bootstrap/-/bootstrap-5.5.2.tgz";
-        sha512 = "oJ9G1MC/TMukJAZAf+bPJ2veAiiUj6/BGe99nagQh7uiXhH1N0uItd/aMC6xBHggu0ZVOQEY7mvL0/z1lGsM4w==";
+        url = "https://registry.npmjs.org/@lerna/bootstrap/-/bootstrap-5.6.1.tgz";
+        sha512 = "YMNDTDtAo5fpt/pmA/JOcU2HvgD/bdwiZAa80312HcRy6MortJqFDo6wOM6trfoqf0XkWOpcw+P7/d/8+b8SVw==";
       };
     };
-    "@lerna/changed-5.5.2" = {
+    "@lerna/changed-5.6.1" = {
       name = "_at_lerna_slash_changed";
       packageName = "@lerna/changed";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/changed/-/changed-5.5.2.tgz";
-        sha512 = "/kF5TKkiXb0921aorZAMsNFAtcaVcDAvO7GndvcZZiDssc4K7weXhR+wsHi9e4dCJ2nVakhVJw0PqRNknd7x/A==";
+        url = "https://registry.npmjs.org/@lerna/changed/-/changed-5.6.1.tgz";
+        sha512 = "YVXkTEXlQWW1BSyURwZHz4HDpfl/yAwkLQbRQ2OtEmknkh4QOK41PPBgX0q1SCWKs3OYdSuI30A2H3KY8LMkxg==";
       };
     };
-    "@lerna/check-working-tree-5.5.2" = {
+    "@lerna/check-working-tree-5.6.1" = {
       name = "_at_lerna_slash_check-working-tree";
       packageName = "@lerna/check-working-tree";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/check-working-tree/-/check-working-tree-5.5.2.tgz";
-        sha512 = "FRkEe9Wcr8Lw3dR0AIOrWfODfEAcDKBF5Ol7bIA5wkPLMJbuPBgx4T1rABdRp94SVOnqkRwT9rrsFOESLcQJzQ==";
+        url = "https://registry.npmjs.org/@lerna/check-working-tree/-/check-working-tree-5.6.1.tgz";
+        sha512 = "pzM/d+009Yl7ThpbWPntao5WuHi4nb/T9WKTOG/CzS/yLQgceVaX1vRaf3fML92RYmV+XGFPq+PaVQXtwHdMkA==";
       };
     };
-    "@lerna/child-process-5.5.2" = {
+    "@lerna/child-process-5.6.1" = {
       name = "_at_lerna_slash_child-process";
       packageName = "@lerna/child-process";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/child-process/-/child-process-5.5.2.tgz";
-        sha512 = "JvTrIEDwq7bd0Nw/4TGAFa4miP8UKARfxhYwHkqX5vM+slNx3BiImkyDhG46C3zR2k/OrOK02CYbBUi6eI2OAw==";
+        url = "https://registry.npmjs.org/@lerna/child-process/-/child-process-5.6.1.tgz";
+        sha512 = "+86Z5EwBkdypTyV8z8Se3McbGCHh4wUBfGuOoNmar4NjeY2HVuiRCoaJsyqgoyNLoXJb1gqDGlWkG5LTuKvw/A==";
       };
     };
-    "@lerna/clean-5.5.2" = {
+    "@lerna/clean-5.6.1" = {
       name = "_at_lerna_slash_clean";
       packageName = "@lerna/clean";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/clean/-/clean-5.5.2.tgz";
-        sha512 = "C38x2B+yTg2zFWSV6/K6grX+7Dzgyw7YpRfhFr1Mat77mhku60lE3mqwU2qCLHlmKBmHV2rB85gYI8yysJ2rIg==";
+        url = "https://registry.npmjs.org/@lerna/clean/-/clean-5.6.1.tgz";
+        sha512 = "af+jZ/JT5AKvnW3JwFjqcuZyOiV1MCdYCi8KwHGJbEOT3ak2u7jdgFyHYtTngYTYeFn+VOSi9+vnVZ8RhQ0DQg==";
       };
     };
-    "@lerna/cli-5.5.2" = {
+    "@lerna/cli-5.6.1" = {
       name = "_at_lerna_slash_cli";
       packageName = "@lerna/cli";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/cli/-/cli-5.5.2.tgz";
-        sha512 = "u32ulEL5CBNYZOTG5dRrVJUT8DovDzjrLj/y/MKXpuD127PwWDe0TE//1NP8qagTLBtn5EiKqiuZlosAYTpiBA==";
+        url = "https://registry.npmjs.org/@lerna/cli/-/cli-5.6.1.tgz";
+        sha512 = "y7GmT30rVovwJHKZQE+1aH5BbR+m9psNwzGhAl3bI3pIi3DPNwa+5Ag7XV+tzKItqwfNtNQbrGIt6u3xbVgR3Q==";
       };
     };
-    "@lerna/collect-uncommitted-5.5.2" = {
+    "@lerna/collect-uncommitted-5.6.1" = {
       name = "_at_lerna_slash_collect-uncommitted";
       packageName = "@lerna/collect-uncommitted";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/collect-uncommitted/-/collect-uncommitted-5.5.2.tgz";
-        sha512 = "2SzH21lDz016Dhu3MjmID9iCMTHYiZ/iu0UKT4I6glmDa44kre18Bp8ihyNzBXNWryj6KjB/0wxgb6dOtccw9A==";
+        url = "https://registry.npmjs.org/@lerna/collect-uncommitted/-/collect-uncommitted-5.6.1.tgz";
+        sha512 = "Z1I4BFBcbqxX3RRiHtPA3JU92NOyTeJF/pWB5DImWDL7i5AYXWYA6iW99HyKTGfIsA3GrS4BIL0UOmp4vP7Yvw==";
       };
     };
-    "@lerna/collect-updates-5.5.2" = {
+    "@lerna/collect-updates-5.6.1" = {
       name = "_at_lerna_slash_collect-updates";
       packageName = "@lerna/collect-updates";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/collect-updates/-/collect-updates-5.5.2.tgz";
-        sha512 = "EeAazUjRenojQujM8W2zAxbw8/qEf5qd0pQYFKLCKkT8f332hoYzH8aJqnpAVY5vjFxxxxpjFjExfvMKqkwWVQ==";
+        url = "https://registry.npmjs.org/@lerna/collect-updates/-/collect-updates-5.6.1.tgz";
+        sha512 = "xY5nJ//ACDVU/k9zn45W//wWw9+Cf4HWN7nla8J1YHLsRmn79uJONZnyK3MBCjMpgVzSAmMe47wuDu+ZzqV/Ew==";
       };
     };
-    "@lerna/command-5.5.2" = {
+    "@lerna/command-5.6.1" = {
       name = "_at_lerna_slash_command";
       packageName = "@lerna/command";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/command/-/command-5.5.2.tgz";
-        sha512 = "hcqKcngUCX6p9i2ipyzFVnTDZILAoxS0xn5YtLXLU2F16o/RIeEuhBrWeExhRXGBo1Rt3goxyq6/bKKaPU5i2Q==";
+        url = "https://registry.npmjs.org/@lerna/command/-/command-5.6.1.tgz";
+        sha512 = "QxJr73TUQQ4B+4mWfwH7kNNTxP3lBnNKN6zX9NnjanQ2u6Nij/SMbvym1L0T2EVgZMseFzZEQnXE3d+jbWn/aQ==";
       };
     };
-    "@lerna/conventional-commits-5.5.2" = {
+    "@lerna/conventional-commits-5.6.1" = {
       name = "_at_lerna_slash_conventional-commits";
       packageName = "@lerna/conventional-commits";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/conventional-commits/-/conventional-commits-5.5.2.tgz";
-        sha512 = "lFq1RTx41QEPU7N1yyqQRhVH1zPpRqWbdSpepBnSgeUKw/aE0pbkgNi+C6BKuSB/9OzY78j1OPbZSYrk4OWEBQ==";
+        url = "https://registry.npmjs.org/@lerna/conventional-commits/-/conventional-commits-5.6.1.tgz";
+        sha512 = "H86fO470tU/lnws+xrSxzeJFBehAo10dtI35+AC9kwub7XwWO19AhdbQjf4PwWhG8/CTl65Tn9UMg+kHYilmzA==";
       };
     };
-    "@lerna/create-5.5.2" = {
+    "@lerna/create-5.6.1" = {
       name = "_at_lerna_slash_create";
       packageName = "@lerna/create";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/create/-/create-5.5.2.tgz";
-        sha512 = "NawigXIAwPJjwDKTKo4aqmos8GIAYK8AQumwy027X418GzXf504L1acRm3c+3LmL1IrZTStWkqSNs56GrKRY9A==";
+        url = "https://registry.npmjs.org/@lerna/create/-/create-5.6.1.tgz";
+        sha512 = "DSDprUvSszb6qedync3TFfDLrFzP264LNPdw+MBSw4o3lpZAmAGelzyw+xSQQQjLNoGC5q/UUePKiCiWps8aPw==";
       };
     };
-    "@lerna/create-symlink-5.5.2" = {
+    "@lerna/create-symlink-5.6.1" = {
       name = "_at_lerna_slash_create-symlink";
       packageName = "@lerna/create-symlink";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/create-symlink/-/create-symlink-5.5.2.tgz";
-        sha512 = "/C0SP2C5+Lvol4Uul0/p0YJML/AOv1dO4y3NrRpYGnN750AuQMuhJQsBcHip80sFStKnNaUxXQb82itkL/mduw==";
+        url = "https://registry.npmjs.org/@lerna/create-symlink/-/create-symlink-5.6.1.tgz";
+        sha512 = "u46aoyxdoHXiyOQ1vCsA8PPkPkyjZanKuiJxnqMXITMwpQFjo18FvSN9BvnZkbJ6Jwnj/boO1TjDUewrQ4wPjw==";
       };
     };
-    "@lerna/describe-ref-5.5.2" = {
+    "@lerna/describe-ref-5.6.1" = {
       name = "_at_lerna_slash_describe-ref";
       packageName = "@lerna/describe-ref";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/describe-ref/-/describe-ref-5.5.2.tgz";
-        sha512 = "JY1Lk8sHX4mBk83t1wW8ak+QWzlExZluOMUixIWLhzHlOzRXnx/WJnvW3E2UgN/RFOBHsI8XA6RmzV/xd/D44Q==";
+        url = "https://registry.npmjs.org/@lerna/describe-ref/-/describe-ref-5.6.1.tgz";
+        sha512 = "VskLszuC3NoN5l31kSh3NiIt4cqaulBI75Ek1HDT+VcGXR2AJzsE1BweDWrh2xJBdqdK8cLp72R/vgUDbjKQCg==";
       };
     };
-    "@lerna/diff-5.5.2" = {
+    "@lerna/diff-5.6.1" = {
       name = "_at_lerna_slash_diff";
       packageName = "@lerna/diff";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/diff/-/diff-5.5.2.tgz";
-        sha512 = "cBXCF/WXh59j6ydTObUB5vhij1cO1kmEVaW4su8rMqLy0eyAmYAckwnL4WIu3NUDlIm7ykaDp+itdAXPeUdDmw==";
+        url = "https://registry.npmjs.org/@lerna/diff/-/diff-5.6.1.tgz";
+        sha512 = "5JTxFUuLfEJZwtplAhWAbffv+FzJsP9ndsJFsmobdfKHZxxoyCvwc5fgMFRgQQMZcQue+lnZEYITJim078xy2A==";
       };
     };
-    "@lerna/exec-5.5.2" = {
+    "@lerna/exec-5.6.1" = {
       name = "_at_lerna_slash_exec";
       packageName = "@lerna/exec";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/exec/-/exec-5.5.2.tgz";
-        sha512 = "hwEIxSp3Gor5pMZp7jMrQ7qcfzyJOI5Zegj9K72M5KKRYSXI1uFxexZzN2ZJCso/rHg9H4TCa9P2wjmoo8KPag==";
+        url = "https://registry.npmjs.org/@lerna/exec/-/exec-5.6.1.tgz";
+        sha512 = "nNZAm6yhbHG59xMOCnJjYjQRtjqZqwjSiWakWz8upj+2HBd2Z0eMnQvrX1j9GhurhgHzhG7AM7FLnJHyh1b3Tw==";
       };
     };
-    "@lerna/filter-options-5.5.2" = {
+    "@lerna/filter-options-5.6.1" = {
       name = "_at_lerna_slash_filter-options";
       packageName = "@lerna/filter-options";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/filter-options/-/filter-options-5.5.2.tgz";
-        sha512 = "h9KrfntDjR1PTC0Xeu07dYytSdZ4jcKz/ykaqhELgXVDbzOUY9RnQd32e4XJ8KRSERMe4VS7DxOnxV4LNI0xqA==";
+        url = "https://registry.npmjs.org/@lerna/filter-options/-/filter-options-5.6.1.tgz";
+        sha512 = "uii0ZDlv2j8e6d3D25wp59L0nRUh7C3B6ImCTOraEdkir6E1UEXZK7VmIzxWD44L78vnUW1kl+j/q7Kib3cP/g==";
       };
     };
-    "@lerna/filter-packages-5.5.2" = {
+    "@lerna/filter-packages-5.6.1" = {
       name = "_at_lerna_slash_filter-packages";
       packageName = "@lerna/filter-packages";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/filter-packages/-/filter-packages-5.5.2.tgz";
-        sha512 = "EaZA0ibWKnpBePFt5gVbiTYgXwOs01naVPcPnBQt5EhHVN878rUoNXNnhT/X/KXFiiy6v3CW53sczlqTNoFuSg==";
+        url = "https://registry.npmjs.org/@lerna/filter-packages/-/filter-packages-5.6.1.tgz";
+        sha512 = "uKaIebxrx235wg78SqY8A0ZugValdW6PgwkDFjss/Y2m8/9c+PiAbfkBeF5Q8iv8VP7te2MsGcvV12UmIQKDdA==";
       };
     };
-    "@lerna/get-npm-exec-opts-5.5.2" = {
+    "@lerna/get-npm-exec-opts-5.6.1" = {
       name = "_at_lerna_slash_get-npm-exec-opts";
       packageName = "@lerna/get-npm-exec-opts";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-5.5.2.tgz";
-        sha512 = "CSwUpQrEYe20KEJnpdLxeLdYMaIElTQM9SiiFKUwnm/825TObkdDQ/fAG9Vk3fkHljPcu7SiV1A/g2XkbmpJUA==";
+        url = "https://registry.npmjs.org/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-5.6.1.tgz";
+        sha512 = "y+Fzd9l1LM6tlarKrWxXQBKm02m7sjzj1T7vgiPW5uo324qEZVil89849iXgm2tLZt7/KD18Gqene2Hik0jmGQ==";
       };
     };
-    "@lerna/get-packed-5.5.2" = {
+    "@lerna/get-packed-5.6.1" = {
       name = "_at_lerna_slash_get-packed";
       packageName = "@lerna/get-packed";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/get-packed/-/get-packed-5.5.2.tgz";
-        sha512 = "C+2/oKqTdgskuK3SpoxzxJSffwQGRU/W8BA5rC/HmRN2xom8xlgZjP0Pcsv7ucW1BjE367hh+4E/BRZXPxuvVQ==";
+        url = "https://registry.npmjs.org/@lerna/get-packed/-/get-packed-5.6.1.tgz";
+        sha512 = "PI+WSCHXsBCF2+McaEUtcR3acZu/0JApUH+IJMz0TdYzspF4ewzEWhBn+4Gmw926oFsqnqfz37KInXNHGmBvCg==";
       };
     };
-    "@lerna/github-client-5.5.2" = {
+    "@lerna/github-client-5.6.1" = {
       name = "_at_lerna_slash_github-client";
       packageName = "@lerna/github-client";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/github-client/-/github-client-5.5.2.tgz";
-        sha512 = "aIed5+l+QoiQmlCvcRoGgJ9z0Wo/7BZU0cbcds7OyhB6e723xtBTk3nXOASFI9TdcRcrnVpOFOISUKU+48d7Ig==";
+        url = "https://registry.npmjs.org/@lerna/github-client/-/github-client-5.6.1.tgz";
+        sha512 = "XGAry8MX2fou8aAP3mf1+6oPP34QdgXzrRbdtXlCv8ksddbp/S1Tn5hNvorEJn2yDMNcjIDIdvrL/T4UiVzQjA==";
       };
     };
-    "@lerna/gitlab-client-5.5.2" = {
+    "@lerna/gitlab-client-5.6.1" = {
       name = "_at_lerna_slash_gitlab-client";
       packageName = "@lerna/gitlab-client";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/gitlab-client/-/gitlab-client-5.5.2.tgz";
-        sha512 = "iSNk8ktwRXL5JgTYvKdEQASHLgo8Vq4RLX1hOFhOMszxKeT2kjCXLqefto3TlJ5xOGQb/kaGBm++jp+uZxhdog==";
+        url = "https://registry.npmjs.org/@lerna/gitlab-client/-/gitlab-client-5.6.1.tgz";
+        sha512 = "zNG27B1dNy4QF45tUPEywthNtsDbzvsUSiokMx847Gxq5qLHtRHRR8kK51Q2dJ6u2biZafGNyzHqT5CQ/0ndnQ==";
       };
     };
-    "@lerna/global-options-5.5.2" = {
+    "@lerna/global-options-5.6.1" = {
       name = "_at_lerna_slash_global-options";
       packageName = "@lerna/global-options";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/global-options/-/global-options-5.5.2.tgz";
-        sha512 = "YaFCLMm7oThPpmRvrDX/VuoihrWCqBVm3zG+c8OM7sjs1MXDKycbdhtjzIwysWocEpf0NjUtdQS7v6gUhfNiFQ==";
+        url = "https://registry.npmjs.org/@lerna/global-options/-/global-options-5.6.1.tgz";
+        sha512 = "VgHVo0T2NC/YK/mR9nu8Z3DL65UtoamRclrnqK3HsaTub15UnqAlbcnEk2lB50e5TLsIZAp4TatDYrYNPKKJPQ==";
       };
     };
-    "@lerna/has-npm-version-5.5.2" = {
+    "@lerna/has-npm-version-5.6.1" = {
       name = "_at_lerna_slash_has-npm-version";
       packageName = "@lerna/has-npm-version";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/has-npm-version/-/has-npm-version-5.5.2.tgz";
-        sha512 = "8BHJCVPy5o0vERm0jjcwYSCNOK+EclbufR05kqorsYzCu0xWPOc3SDlo5mXuWsG61SlT3RdV9SJ3Rab15fOLAg==";
+        url = "https://registry.npmjs.org/@lerna/has-npm-version/-/has-npm-version-5.6.1.tgz";
+        sha512 = "V6lt830kXnEm/1pHyFh9Pci4lgRbQcBr1eORAD8d03uxQDfxA7Z8Gu9afhH5m0rk+P8txNO/3pUe2pf5Ex4DGg==";
       };
     };
-    "@lerna/import-5.5.2" = {
+    "@lerna/import-5.6.1" = {
       name = "_at_lerna_slash_import";
       packageName = "@lerna/import";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/import/-/import-5.5.2.tgz";
-        sha512 = "QtHJEo/9RRO9oILzSK45k5apsAyUEgwpGj4Ys3gZ7rFuXQ4+xHi9R6YC0IjwyiSfoN/i3Qbsku+PByxhhzkxHQ==";
+        url = "https://registry.npmjs.org/@lerna/import/-/import-5.6.1.tgz";
+        sha512 = "cOLjRAWWfY1ezsiBRIbA6lN4THu89xjtS+wJ8WUqr/xbYbGZ/qr4DBAWnpWpMfLLWN6Eel6nEAhah+Ch1IKNog==";
       };
     };
-    "@lerna/info-5.5.2" = {
+    "@lerna/info-5.6.1" = {
       name = "_at_lerna_slash_info";
       packageName = "@lerna/info";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/info/-/info-5.5.2.tgz";
-        sha512 = "Ek+bCooAfng+K4Fgy9i6jKBMpZZQ3lQpv6SWg8TbrwGR/el8FYBJod3+I5khJ2RJqHAmjLBz6wiSyVPMjwvptw==";
+        url = "https://registry.npmjs.org/@lerna/info/-/info-5.6.1.tgz";
+        sha512 = "0ixkn6Z8jlesMozQBlG3vdivFOjleapCusjDFZ1F7quuEcWDQuW1bQ4i55ISsVhh5gLCTTwQiNEhPnDQzs7fww==";
       };
     };
-    "@lerna/init-5.5.2" = {
+    "@lerna/init-5.6.1" = {
       name = "_at_lerna_slash_init";
       packageName = "@lerna/init";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/init/-/init-5.5.2.tgz";
-        sha512 = "CKHrcOlm2XXXF384FeCKK+CjKBW22HkJ5CcLlU1gnTFD2QarrBwTOGjpRaREXP8T/k3q7h0W0FK8B77opqLwDg==";
+        url = "https://registry.npmjs.org/@lerna/init/-/init-5.6.1.tgz";
+        sha512 = "EPA3XCteadwZjb7GOqJFw+QcqwV/CrpWm9FZOEpo9uXNUCvOW8NqDlFzTEMrMiXBTldoP0H9SK9yM81c0Mip7Q==";
       };
     };
-    "@lerna/link-5.5.2" = {
+    "@lerna/link-5.6.1" = {
       name = "_at_lerna_slash_link";
       packageName = "@lerna/link";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/link/-/link-5.5.2.tgz";
-        sha512 = "B/0a+biXO2uMSbNw1Vv9YMrfse0i8HU9mrrWQbXIHws3j0i5Wxuxvd7B/r0xzYN5LF5AFDxrPjPNTgC49U/58Q==";
+        url = "https://registry.npmjs.org/@lerna/link/-/link-5.6.1.tgz";
+        sha512 = "iWr7HGviIK3N/WNUoAZVV0RRf0CQzpR9uJXmsfuVKXj5gN8IHqFOdGS8TIIN57ekC0DOpDtR21h65zZXD1TSHQ==";
       };
     };
-    "@lerna/list-5.5.2" = {
+    "@lerna/list-5.6.1" = {
       name = "_at_lerna_slash_list";
       packageName = "@lerna/list";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/list/-/list-5.5.2.tgz";
-        sha512 = "uC/LRq9zcOM33vV6l4Nmx18vXNNIcaxFHVCBOC3IxZJb0MTPzKFqlu/YIVQaJMWeHpiIo6OfbK4mbH1h8yXmHw==";
+        url = "https://registry.npmjs.org/@lerna/list/-/list-5.6.1.tgz";
+        sha512 = "4VyAvVwKZQC+ntfjJuL8PbFu5jeR/8t21BzFXVWRkrZc3/sGVxSNtzi+9Brgrxm4n8qir3+wiiC4LSHdYG8Mlw==";
       };
     };
-    "@lerna/listable-5.5.2" = {
+    "@lerna/listable-5.6.1" = {
       name = "_at_lerna_slash_listable";
       packageName = "@lerna/listable";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/listable/-/listable-5.5.2.tgz";
-        sha512 = "CEDTaLB8V7faSSTgB1II1USpda5PQWUkfsvDJekJ4yZ4dql3XnzqdVZ48zLqPArl/30e0g1gWGOBkdKqswY+Yg==";
+        url = "https://registry.npmjs.org/@lerna/listable/-/listable-5.6.1.tgz";
+        sha512 = "c7vzJYEPiH0DT7BJpjomLt2zwViPupk0g/dU9rCBkm4w2jk6Vult60/O3rx5rb95PUFz/pYM+3w3vkZWXx9AnQ==";
       };
     };
-    "@lerna/log-packed-5.5.2" = {
+    "@lerna/log-packed-5.6.1" = {
       name = "_at_lerna_slash_log-packed";
       packageName = "@lerna/log-packed";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/log-packed/-/log-packed-5.5.2.tgz";
-        sha512 = "k1tKZdNuAIj9t7ZJBSzua5zEnPoweKLpuXYzuiBE8CALBfl2Zf9szsbDQDsERDOxQ365+FEgK+GfkmvxtYx4tw==";
+        url = "https://registry.npmjs.org/@lerna/log-packed/-/log-packed-5.6.1.tgz";
+        sha512 = "nyrrI8SbwO4nezuwDDQPea2XR3IWVRxgDzuZHA+g5utx75BuCZ2d1yrZe8URzfCIVVoGYI5OuOlv32BtLzt4tw==";
       };
     };
-    "@lerna/npm-conf-5.5.2" = {
+    "@lerna/npm-conf-5.6.1" = {
       name = "_at_lerna_slash_npm-conf";
       packageName = "@lerna/npm-conf";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/npm-conf/-/npm-conf-5.5.2.tgz";
-        sha512 = "X2EE1TCSfsYy2XTUUN0+QXXEPvecuGk3mpTXR5KP+ScAs0WmTisRLyJ9lofh/9e0SIIGdVYmh2PykhgduyOKsg==";
+        url = "https://registry.npmjs.org/@lerna/npm-conf/-/npm-conf-5.6.1.tgz";
+        sha512 = "u4Pg0IjMhRIGdgNr18nzwyv6wcP5Qo0QEvf07P6tV8G3ocY+3w8q6mrPyFT3NitodLQ4AMWFDfyFZzXikJI+uw==";
       };
     };
-    "@lerna/npm-dist-tag-5.5.2" = {
+    "@lerna/npm-dist-tag-5.6.1" = {
       name = "_at_lerna_slash_npm-dist-tag";
       packageName = "@lerna/npm-dist-tag";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/npm-dist-tag/-/npm-dist-tag-5.5.2.tgz";
-        sha512 = "Od4liA0ISunwatHxArHdaxFc/m9dXMI0fAFqbScgeqVkY8OeoHEY/AlINjglYChtGcbKdHm1ml8qvlK9Tr2EXg==";
+        url = "https://registry.npmjs.org/@lerna/npm-dist-tag/-/npm-dist-tag-5.6.1.tgz";
+        sha512 = "YEbIP1J6V0U9qco7wk9qK0JbApIshPrUGqr0Kp1rx57pwtcwxIAvH/AEbqdVqjmItiPDpYgP7VukG7MI6EGe1w==";
       };
     };
-    "@lerna/npm-install-5.5.2" = {
+    "@lerna/npm-install-5.6.1" = {
       name = "_at_lerna_slash_npm-install";
       packageName = "@lerna/npm-install";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/npm-install/-/npm-install-5.5.2.tgz";
-        sha512 = "aDIDRS9C9uWheuc6JEntNqTcaTcSFyTx4FgUw5FDHrwsTZ9TiEAB9O+XyDKIlcGHlNviuQt270boUHjsvOoMcg==";
+        url = "https://registry.npmjs.org/@lerna/npm-install/-/npm-install-5.6.1.tgz";
+        sha512 = "PWJyqWzDQGkhn5/mr88yYfLF+t9NzHadcmMPYxv8lBTBUTZy9sdCw8k0uQ19lNUsI/DfMTLrcYZPSLxqe3mN8A==";
       };
     };
-    "@lerna/npm-publish-5.5.2" = {
+    "@lerna/npm-publish-5.6.1" = {
       name = "_at_lerna_slash_npm-publish";
       packageName = "@lerna/npm-publish";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/npm-publish/-/npm-publish-5.5.2.tgz";
-        sha512 = "TRYkkocg/VFy9MwWtfIa2gNXFkMwkDfaS1exgJK4DKbjH3hiBo/cDG3Zx/jMBGvetv4CLsC2n+phRhozgCezTA==";
+        url = "https://registry.npmjs.org/@lerna/npm-publish/-/npm-publish-5.6.1.tgz";
+        sha512 = "eSotBP+mu6EtRIfhKsbQR3m5RnL7zxhZav1zxtnYvolKPjodLlGxzqcYCqTMdnR6GAIcInFh123uuTfZNzu9CA==";
       };
     };
-    "@lerna/npm-run-script-5.5.2" = {
+    "@lerna/npm-run-script-5.6.1" = {
       name = "_at_lerna_slash_npm-run-script";
       packageName = "@lerna/npm-run-script";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/npm-run-script/-/npm-run-script-5.5.2.tgz";
-        sha512 = "lKn4ybw/97SMR/0j5UcJraL+gpfXv2HWKmlrG47JuAMJaEFkQQyCh4EdP3cGPCnSzrI5zXsil8SS/JelkhQpkg==";
+        url = "https://registry.npmjs.org/@lerna/npm-run-script/-/npm-run-script-5.6.1.tgz";
+        sha512 = "VRScf/chK01PxFCiH6j8GWOlS8w3dH4koq7tVX9OSi3FVwqrNvN7wky/AO7cKRyuTmdoG+puDsI7gHtGclYvrQ==";
       };
     };
-    "@lerna/otplease-5.5.2" = {
+    "@lerna/otplease-5.6.1" = {
       name = "_at_lerna_slash_otplease";
       packageName = "@lerna/otplease";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/otplease/-/otplease-5.5.2.tgz";
-        sha512 = "kZwSWTLGFWLoFX0p6RJ8AARIo6P/wkIcUyAFrVU3YTesN7KqbujpzaVTf5bAWsDdeiRWizCGM1TVw2IDUtStQg==";
+        url = "https://registry.npmjs.org/@lerna/otplease/-/otplease-5.6.1.tgz";
+        sha512 = "MbS09KoDHDvsFpnwIYOZ3lu5+d/bDUm2jQ+kcJe7VH3P37t84OFRXmixSVjf1xpLuvoXbSZZsfDsYx9VkAdq4w==";
       };
     };
-    "@lerna/output-5.5.2" = {
+    "@lerna/output-5.6.1" = {
       name = "_at_lerna_slash_output";
       packageName = "@lerna/output";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/output/-/output-5.5.2.tgz";
-        sha512 = "Sv5qMvwnY7RGUw3JHyNUHNlQ4f/167kK1tczCaHUXa1SmOq5adMBbiMNApa2y5s8B+v9OahkU2nnOOaIuVy0HQ==";
+        url = "https://registry.npmjs.org/@lerna/output/-/output-5.6.1.tgz";
+        sha512 = "XEUvLn8jOVL63PRcjwSd8SdjAJvWLDDNpq75hBfemHHSpcfc7qlqqkXWs+Mz1C938rub8MtPUj7ImEUo12k1KQ==";
       };
     };
-    "@lerna/pack-directory-5.5.2" = {
+    "@lerna/pack-directory-5.6.1" = {
       name = "_at_lerna_slash_pack-directory";
       packageName = "@lerna/pack-directory";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/pack-directory/-/pack-directory-5.5.2.tgz";
-        sha512 = "LvBbOeSwbpHPL7w9cI0Jtpa6r61N3KboD4nutNlWaT9LRv0dLlex2k10Pfc8u15agQ62leLhHa6UmjFt16msEA==";
+        url = "https://registry.npmjs.org/@lerna/pack-directory/-/pack-directory-5.6.1.tgz";
+        sha512 = "vmkvD4LnYJhPps+I9t03pV02rnZak4gyAh/St1lj/OYV9ecRWQWOqWIFhffKOFHBes3Lxmha8FMSN2IOkG1BxQ==";
       };
     };
-    "@lerna/package-5.5.2" = {
+    "@lerna/package-5.6.1" = {
       name = "_at_lerna_slash_package";
       packageName = "@lerna/package";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/package/-/package-5.5.2.tgz";
-        sha512 = "/36+oq5Q63EYSyjW5mHPR3aMrXDo6Wn8zKcl9Dfd4bn+w0AfK/EbId7iB/TrFaNdGtw8CrhK+e5CmgiMBeXMPw==";
+        url = "https://registry.npmjs.org/@lerna/package/-/package-5.6.1.tgz";
+        sha512 = "QTWoRe/wTETDrF9ByhctmyZpFl+UmwSJJUcsTd2pUqvd5QaOd1twXwZdc5/1Rr08Yxl0PZqJCtZYJDcXce0eRg==";
       };
     };
-    "@lerna/package-graph-5.5.2" = {
+    "@lerna/package-graph-5.6.1" = {
       name = "_at_lerna_slash_package-graph";
       packageName = "@lerna/package-graph";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/package-graph/-/package-graph-5.5.2.tgz";
-        sha512 = "tyMokkrktvohhU3PE3nZLdjrmozcrV8ql37u0l/axHXrfNiV3RDn9ENVvYXnLnP2BCHV572RRpbI5kYto4wtRg==";
+        url = "https://registry.npmjs.org/@lerna/package-graph/-/package-graph-5.6.1.tgz";
+        sha512 = "R3ToEGzFy5x1Po/eoOy8vsM2x/zxR26bFewDLUDWbs5lWDC7ml5v44JqjfWB869M/XprN55yz2/VE5NhEB6QsQ==";
       };
     };
-    "@lerna/prerelease-id-from-version-5.5.2" = {
+    "@lerna/prerelease-id-from-version-5.6.1" = {
       name = "_at_lerna_slash_prerelease-id-from-version";
       packageName = "@lerna/prerelease-id-from-version";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-5.5.2.tgz";
-        sha512 = "FokuA8PFH+YMlbVvPsrTWgfZzaeXDmSmXGKzF8yEM7008UOFx9a3ivDzPnRK7IDaO9nUmt++Snb3QLey1ldYlQ==";
+        url = "https://registry.npmjs.org/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-5.6.1.tgz";
+        sha512 = "+ctzgoA1XAGbTQCeJjMEoQQCzCBW6WVAMVKNEOKrcsEVMb5gsKKSVha8WsKEzvK6gAC/x3pXemtuVWQvtYPw0Q==";
       };
     };
-    "@lerna/profiler-5.5.2" = {
+    "@lerna/profiler-5.6.1" = {
       name = "_at_lerna_slash_profiler";
       packageName = "@lerna/profiler";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/profiler/-/profiler-5.5.2.tgz";
-        sha512 = "030TM1sG0h/vSJ+49e8K1HtVIt94i6lOIRILTF4zkx+O00Fcg91wBtdIduKhZZt1ziWRi1v2soijKR26IDC+Tg==";
+        url = "https://registry.npmjs.org/@lerna/profiler/-/profiler-5.6.1.tgz";
+        sha512 = "HxY0hg5iHxPzyHvb7gVkZzUG+jJKZ1fErATcC53+kA7qOBTGlz2huZ8gU+rpX3SlTJGodnZ5FwHQvHD2bzkTZg==";
       };
     };
-    "@lerna/project-5.5.2" = {
+    "@lerna/project-5.6.1" = {
       name = "_at_lerna_slash_project";
       packageName = "@lerna/project";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/project/-/project-5.5.2.tgz";
-        sha512 = "NtHov7CCM3DHbj6xaD9lTErOnEmz0s+piJP/nVw6aIvfkhvUl1fB6SnttM+0GHZrT6WSIXFWsb0pkRMTBn55Bw==";
+        url = "https://registry.npmjs.org/@lerna/project/-/project-5.6.1.tgz";
+        sha512 = "GlM+b4pyImtegQztMRsLAkSPCYfmAqCqtgkffjXQS9tMjXnUBqu4+gW/uMBTTOD2CKf+Nikwjc602rpRaUQLyw==";
       };
     };
-    "@lerna/prompt-5.5.2" = {
+    "@lerna/prompt-5.6.1" = {
       name = "_at_lerna_slash_prompt";
       packageName = "@lerna/prompt";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/prompt/-/prompt-5.5.2.tgz";
-        sha512 = "flV5SOu9CZrTf2YxGgMPwiAsv2jkUzyIs3cTTdFhFtKoZV7YPVZkGyMhqhEMIuUCOeITFY+emar9iPS6d7U4Jg==";
+        url = "https://registry.npmjs.org/@lerna/prompt/-/prompt-5.6.1.tgz";
+        sha512 = "CZSHV2yK6I6+35IKz7Fh3SeNSPR4XuCFXsW0RuauTZoNffk3mP2pOt/CrI1P6yOj7tqcyjghzzv1gkINtrq4/w==";
       };
     };
-    "@lerna/publish-5.5.2" = {
+    "@lerna/publish-5.6.1" = {
       name = "_at_lerna_slash_publish";
       packageName = "@lerna/publish";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/publish/-/publish-5.5.2.tgz";
-        sha512 = "ZC8LP4I3nLcVIcyqiRAVvGRaCkHHBdYVcqtF7S9KA8w2VvuAeqHRFUTIhKBziVbYnwI2uzJXGIRWP50U+p/wAA==";
+        url = "https://registry.npmjs.org/@lerna/publish/-/publish-5.6.1.tgz";
+        sha512 = "J2zYyDGXs44YQ1h19933F9bm3fjog0gNpD27kL7Zw2nrMrR/LAuxNIFT/0ljtZSuMjlXllxZ7Kyxyz1gvMv3cA==";
       };
     };
-    "@lerna/pulse-till-done-5.5.2" = {
+    "@lerna/pulse-till-done-5.6.1" = {
       name = "_at_lerna_slash_pulse-till-done";
       packageName = "@lerna/pulse-till-done";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/pulse-till-done/-/pulse-till-done-5.5.2.tgz";
-        sha512 = "e8sRby4FxSU9QjdRYXvHQtb5GMVO5XDnSH83RWdSxAVFGVEVWKqI3qg3otGH1JlD/kOu195d+ZzndF9qqMvveQ==";
+        url = "https://registry.npmjs.org/@lerna/pulse-till-done/-/pulse-till-done-5.6.1.tgz";
+        sha512 = "SCD1gCSkC4roOvCB0GTvnFrYVTLX7o9TXykyg5UTXb/XRMNqr9ZBFH7qZHJnleO9x3eMk1oh4W1rvfFIITyRjw==";
       };
     };
-    "@lerna/query-graph-5.5.2" = {
+    "@lerna/query-graph-5.6.1" = {
       name = "_at_lerna_slash_query-graph";
       packageName = "@lerna/query-graph";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/query-graph/-/query-graph-5.5.2.tgz";
-        sha512 = "krKt+mvGm+9fp71ZGUO1MiUZsL+W6dAKx5kBPNWkrw5TFZCasZJHRSIqby9iXpjma+MYohjFjLVvg1PIYKt/kg==";
+        url = "https://registry.npmjs.org/@lerna/query-graph/-/query-graph-5.6.1.tgz";
+        sha512 = "ySXS5Ur/GtrBOr+u5FZxrcH0xD3LsBSu68OEPNnMIAdt66AOhh6K4OXmc58biTN0sWAdnE43mulqA87bZH0aMg==";
       };
     };
-    "@lerna/resolve-symlink-5.5.2" = {
+    "@lerna/resolve-symlink-5.6.1" = {
       name = "_at_lerna_slash_resolve-symlink";
       packageName = "@lerna/resolve-symlink";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/resolve-symlink/-/resolve-symlink-5.5.2.tgz";
-        sha512 = "JLJg6/IFqpmGjFfKvj+lntcsGGWbIxF2uAcrVKldqwcPTmlMvolg51lL+wqII3s8N3gZIGdxhjXfhDdKuKtEzQ==";
+        url = "https://registry.npmjs.org/@lerna/resolve-symlink/-/resolve-symlink-5.6.1.tgz";
+        sha512 = "25TdowB5dIVycCJWyZGBDPSz6LoFOi/YRh85+dL1RrvxmvfiDwjrJ8P4eDl03/fDSV9YTFVYYmR8r1K2Vw8kQg==";
       };
     };
-    "@lerna/rimraf-dir-5.5.2" = {
+    "@lerna/rimraf-dir-5.6.1" = {
       name = "_at_lerna_slash_rimraf-dir";
       packageName = "@lerna/rimraf-dir";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/rimraf-dir/-/rimraf-dir-5.5.2.tgz";
-        sha512 = "siE1RpEpSLFlnnbAJZz+CuBIcOqXrhR/SXVBnPDpIg4tGgHns+Q99m6K29ltuh+vZMBLMYnnyfPYitJFYTC3MQ==";
+        url = "https://registry.npmjs.org/@lerna/rimraf-dir/-/rimraf-dir-5.6.1.tgz";
+        sha512 = "1lm5FIiwFOpSzCMyNF90HX6NWHzDmY47TgDs07416B8ghMtZgb5aLMHi/aoarqWopn4X0ae3lxsZjUEOhSAWgA==";
       };
     };
-    "@lerna/run-5.5.2" = {
+    "@lerna/run-5.6.1" = {
       name = "_at_lerna_slash_run";
       packageName = "@lerna/run";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/run/-/run-5.5.2.tgz";
-        sha512 = "KVMkjL2ehW+/6VAwTTLgq82Rgw4W6vOz1I9XwwO/bk9h7DoY1HlE8leaaYRNqT+Cv437A9AwggR+LswhoK3alA==";
+        url = "https://registry.npmjs.org/@lerna/run/-/run-5.6.1.tgz";
+        sha512 = "kb4hwnhth3GKWIxoNlA/xdDUWGbK67yx1aLEyZjssmMemxfSKxvqrNB+TaHAPSz27hyAKqnOL9Ym/YkAt7s59A==";
       };
     };
-    "@lerna/run-lifecycle-5.5.2" = {
+    "@lerna/run-lifecycle-5.6.1" = {
       name = "_at_lerna_slash_run-lifecycle";
       packageName = "@lerna/run-lifecycle";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/run-lifecycle/-/run-lifecycle-5.5.2.tgz";
-        sha512 = "d5pF0abAv6MVNG3xhG1BakHZtr93vIn27aqgBvu9XK1CW6GdbpBpCv1kc8RjHyOpjjFDt4+uK2TG7s7T0oCZPw==";
+        url = "https://registry.npmjs.org/@lerna/run-lifecycle/-/run-lifecycle-5.6.1.tgz";
+        sha512 = "LkEvYDVYNX2mUY3PoNoDDBPDMofzNa5dHvAg7P2NVpffE41VbWBI0c0Q7uhN9nGuCksvsqamTffvmPdU9lCffA==";
       };
     };
-    "@lerna/run-topologically-5.5.2" = {
+    "@lerna/run-topologically-5.6.1" = {
       name = "_at_lerna_slash_run-topologically";
       packageName = "@lerna/run-topologically";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/run-topologically/-/run-topologically-5.5.2.tgz";
-        sha512 = "o3XYXk7hG8ijUjejgXoa7fuQvzEohMUm4AB5SPBbvq1BhoqIZfW50KlBNjud1zVD4OsA8jJOfjItcY9KfxowuA==";
+        url = "https://registry.npmjs.org/@lerna/run-topologically/-/run-topologically-5.6.1.tgz";
+        sha512 = "UjOppd/1dSQxDfIjQIJOH+c/lLwuTKSNyd9uKhII11OnpO+gmBP1kvA65k1cm9EZVky63o7X9/O+oTB8Tr8C3g==";
       };
     };
-    "@lerna/symlink-binary-5.5.2" = {
+    "@lerna/symlink-binary-5.6.1" = {
       name = "_at_lerna_slash_symlink-binary";
       packageName = "@lerna/symlink-binary";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/symlink-binary/-/symlink-binary-5.5.2.tgz";
-        sha512 = "fQAN0ClwlVLThqm+m9d4lIfa2TuONocdNQocmou8UBDI/C/VVW6dvD+tSL3I4jYIYJWsXJe1hBBjil4ZYXpQrQ==";
+        url = "https://registry.npmjs.org/@lerna/symlink-binary/-/symlink-binary-5.6.1.tgz";
+        sha512 = "Y9x8gvvAP281467+QPwp56L6DDGdWtt24pREyWF7D+FIRcooJ29pn2C3B0rmzd5Ti63/6mrfCipUp9DXSWGwNg==";
       };
     };
-    "@lerna/symlink-dependencies-5.5.2" = {
+    "@lerna/symlink-dependencies-5.6.1" = {
       name = "_at_lerna_slash_symlink-dependencies";
       packageName = "@lerna/symlink-dependencies";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/symlink-dependencies/-/symlink-dependencies-5.5.2.tgz";
-        sha512 = "eNIICnlUD1YCiIY50O2TKHkxXCF4rYAFOCVWTiUS098tNKLssTPnIQrK3ASKxK9t7srmfcm49LFxNRPjVKjSBw==";
+        url = "https://registry.npmjs.org/@lerna/symlink-dependencies/-/symlink-dependencies-5.6.1.tgz";
+        sha512 = "lKnJFbEpIdj9R70cpRor6vf3pxBnvk0RF7fwiTlWpF2BmlBYVihM+lML2vCts5G7ZBSQ9zTVyIqlCXG3qhyoxQ==";
       };
     };
-    "@lerna/temp-write-5.5.2" = {
+    "@lerna/temp-write-5.6.1" = {
       name = "_at_lerna_slash_temp-write";
       packageName = "@lerna/temp-write";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/temp-write/-/temp-write-5.5.2.tgz";
-        sha512 = "K/9L+25qIw4qw/SSLxwfAWzaUE3luqGTusd3x934Hg2sBQVX28xddwaZlasQ6qen7ETp6Ec9vSVWF2ffWTxKJg==";
+        url = "https://registry.npmjs.org/@lerna/temp-write/-/temp-write-5.6.1.tgz";
+        sha512 = "o0MOTsAfvMM8RC2o1wQ//F05hUd/cZJjBH8PKTrgXINDweW9VFey2fuUdL7TCpzgC4MUenL2x1nV6o8w87nFOQ==";
       };
     };
-    "@lerna/timer-5.5.2" = {
+    "@lerna/timer-5.6.1" = {
       name = "_at_lerna_slash_timer";
       packageName = "@lerna/timer";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/timer/-/timer-5.5.2.tgz";
-        sha512 = "QcnMFwcP7xlT9DH4oGVuDYuSOfpAghG4wj7D8vN1GhJFd9ueDCzTFJpFRd6INacIbESBNMjq5WuTeNdxcDo8Fg==";
+        url = "https://registry.npmjs.org/@lerna/timer/-/timer-5.6.1.tgz";
+        sha512 = "MALjTi1KuYZeRPH18xttlJb6+BLAcVuwGIsSYHBREkuXdRwW1oEcnnN5xzGsMGpG0KRxWu5wgNgc94aH/MCz6A==";
       };
     };
-    "@lerna/validation-error-5.5.2" = {
+    "@lerna/validation-error-5.6.1" = {
       name = "_at_lerna_slash_validation-error";
       packageName = "@lerna/validation-error";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/validation-error/-/validation-error-5.5.2.tgz";
-        sha512 = "ZffmtrgOkihUxpho529rDI0llDV9YFNJqh0qF2+doFePeTtFKkFVFHZvxP9hPZPMOLypX9OHwCVfMaTlIpIjjA==";
+        url = "https://registry.npmjs.org/@lerna/validation-error/-/validation-error-5.6.1.tgz";
+        sha512 = "0Kl9SmRb72bcXANdRO3fjuz+hHhHL9AEl/exCGODaT+PYAC+xH717Xj2ts/1u4qNuLlsQEE6+iVhAAMLUv86CA==";
       };
     };
-    "@lerna/version-5.5.2" = {
+    "@lerna/version-5.6.1" = {
       name = "_at_lerna_slash_version";
       packageName = "@lerna/version";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/version/-/version-5.5.2.tgz";
-        sha512 = "MMO0rnC9Y8JQEl6+XJMu0JM/bWpe6mGNhQJ8C9W1hkpMwxrizhcoEFb9Vq/q/tw7DjCVc3inrb/5s50cRmrmtg==";
+        url = "https://registry.npmjs.org/@lerna/version/-/version-5.6.1.tgz";
+        sha512 = "s9WIzduXOxeLH2Vu0T2HLBe1ICd9gxUsB3tlUyQveIAGE5wBuTAIL3nGQ3ljImPzFnriPqcS0xa5PC2DaW9JLA==";
       };
     };
-    "@lerna/write-log-file-5.5.2" = {
+    "@lerna/write-log-file-5.6.1" = {
       name = "_at_lerna_slash_write-log-file";
       packageName = "@lerna/write-log-file";
-      version = "5.5.2";
+      version = "5.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@lerna/write-log-file/-/write-log-file-5.5.2.tgz";
-        sha512 = "eeW10lriUl3w6WXtYk30z4rZB77QXeQCkLgSMv6Rqa7AMCTZNPhIBJQ0Nkmxo8LaFSWMhin1pLhHTYdqcsaFLA==";
+        url = "https://registry.npmjs.org/@lerna/write-log-file/-/write-log-file-5.6.1.tgz";
+        sha512 = "wvgkL/tMozHbW6EkCFH7yLhLh5D3djRuwREsn5ptZxcCcay1RQjraON18yMX06mwsPfbpDItMH4D68q1dMSk5w==";
       };
     };
     "@lezer/common-0.15.12" = {
@@ -7609,22 +7609,31 @@ let
         sha512 = "7dqywvVudPSrRCW5nTHpHgeWnbBtz8cFkOuKrecm6ih+oO9ciydhWt6OF7HlqupRRmB8Q/gECVdB9LMfToJbRg==";
       };
     };
-    "@nrwl/cli-14.7.17" = {
+    "@nrwl/cli-14.8.3" = {
       name = "_at_nrwl_slash_cli";
       packageName = "@nrwl/cli";
-      version = "14.7.17";
+      version = "14.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@nrwl/cli/-/cli-14.7.17.tgz";
-        sha512 = "ovzGpWnTrmFXX5TEV2VzBUz8oPLoPkqtGKpdvlHvnd0UADQUpmNxoSY7mzHclDLRMyb6MWnVKqlJiypTG/p9iw==";
+        url = "https://registry.npmjs.org/@nrwl/cli/-/cli-14.8.3.tgz";
+        sha512 = "a8URAbqyZvegXMYU8pCA3Hfv0UdiDJc6HboazxinCJJgZWyqKYxRIWmKiWnfpXsr+qF6ntmBR/tC6yHbOL22gQ==";
       };
     };
-    "@nrwl/tao-14.7.17" = {
+    "@nrwl/devkit-14.8.3" = {
+      name = "_at_nrwl_slash_devkit";
+      packageName = "@nrwl/devkit";
+      version = "14.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@nrwl/devkit/-/devkit-14.8.3.tgz";
+        sha512 = "jEH+oKS4F4MJvoIe0Zw6zUODO2j2ib7f+62D4lMDKl5qopcgnKyU9rVnSCDolqCH81j326dfr8b7FfE6Z7p71A==";
+      };
+    };
+    "@nrwl/tao-14.8.3" = {
       name = "_at_nrwl_slash_tao";
       packageName = "@nrwl/tao";
-      version = "14.7.17";
+      version = "14.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@nrwl/tao/-/tao-14.7.17.tgz";
-        sha512 = "35IPDtv4hdkmDvLuQ/Q5AaDACgsznpmj3+/SitL1U/vYpFUcAPUrPznL3QK4TuvL3IeCLwYaYO0NCZotDEQi4g==";
+        url = "https://registry.npmjs.org/@nrwl/tao/-/tao-14.8.3.tgz";
+        sha512 = "lN7+1biSM/7PYMMgh3jjOXJ9fe6VjhVrtZsDcB6lcklpShjXfHXqlpXDM7vjlw19aLeZMdFWHFoU2C5BTBtzgQ==";
       };
     };
     "@oclif/command-1.8.0" = {
@@ -7636,13 +7645,13 @@ let
         sha512 = "5vwpq6kbvwkQwKqAoOU3L72GZ3Ta8RRrewKj9OJRolx28KLJJ8Dg9Rf7obRwt5jQA9bkYd8gqzMTrI7H3xLfaw==";
       };
     };
-    "@oclif/command-1.8.16" = {
+    "@oclif/command-1.8.18" = {
       name = "_at_oclif_slash_command";
       packageName = "@oclif/command";
-      version = "1.8.16";
+      version = "1.8.18";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@oclif/command/-/command-1.8.16.tgz";
-        sha512 = "rmVKYEsKzurfRU0xJz+iHelbi1LGlihIWZ7Qvmb/CBz1EkhL7nOkW4SVXmG2dA5Ce0si2gr88i6q4eBOMRNJ1w==";
+        url = "https://registry.npmjs.org/@oclif/command/-/command-1.8.18.tgz";
+        sha512 = "qTad+jtiriMMbkw6ArtcUY89cwLwmwDnD4KSGT+OQiZKYtegp3NUCM9JN8lfj/aKC+0kvSitJM4ULzbgiVTKQQ==";
       };
     };
     "@oclif/config-1.17.0" = {
@@ -7672,6 +7681,15 @@ let
         sha512 = "sBpko86IrTscc39EvHUhL+c++81BVTsIZ3ETu/vG+cCdi0N6vb2DoahR67A9FI2CGnxRRHjnTfa3m6LulwNATA==";
       };
     };
+    "@oclif/config-1.18.5" = {
+      name = "_at_oclif_slash_config";
+      packageName = "@oclif/config";
+      version = "1.18.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@oclif/config/-/config-1.18.5.tgz";
+        sha512 = "R6dBedaUVn5jtAh79aaRm7jezx4l3V7Im9NORlLmudz5BL1foMeuXEvnqm+bMiejyexVA+oi9mto6YKZPzo/5Q==";
+      };
+    };
     "@oclif/errors-1.3.4" = {
       name = "_at_oclif_slash_errors";
       packageName = "@oclif/errors";
@@ -7699,13 +7717,13 @@ let
         sha512 = "fYaU4aDceETd89KXP+3cLyg9EHZsLD3RxF2IU9yxahhBpspWjkWi3Dy3bTgcwZ3V47BgxQaGapzJWDM33XIVDQ==";
       };
     };
-    "@oclif/help-1.0.1" = {
+    "@oclif/help-1.0.2" = {
       name = "_at_oclif_slash_help";
       packageName = "@oclif/help";
-      version = "1.0.1";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@oclif/help/-/help-1.0.1.tgz";
-        sha512 = "8rsl4RHL5+vBUAKBL6PFI3mj58hjPCp2VYyXD4TAa7IMStikFfOH2gtWmqLzIlxAED2EpD0dfYwo9JJxYsH7Aw==";
+        url = "https://registry.npmjs.org/@oclif/help/-/help-1.0.2.tgz";
+        sha512 = "Y0UqBSoCNrOGsjXgEMEeRA/l7pWG5Fs4bDuWVl7aipp9wtmqxDVoGpWdO+Kcai9OsSNKwvv02nOJkEK/twK9Qg==";
       };
     };
     "@oclif/linewrap-1.0.0" = {
@@ -7717,13 +7735,13 @@ let
         sha512 = "Ups2dShK52xXa8w6iBWLgcjPJWjais6KPJQq3gQ/88AY6BXoTX+MIGFPrWQO1KLMiQfoTpcLnUwloN4brrVUHw==";
       };
     };
-    "@oclif/parser-3.8.7" = {
+    "@oclif/parser-3.8.8" = {
       name = "_at_oclif_slash_parser";
       packageName = "@oclif/parser";
-      version = "3.8.7";
+      version = "3.8.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@oclif/parser/-/parser-3.8.7.tgz";
-        sha512 = "b11xBmIUK+LuuwVGJpFs4LwQN2xj2cBWj2c4z1FtiXGrJ85h9xV6q+k136Hw0tGg1jQoRXuvuBnqQ7es7vO9/Q==";
+        url = "https://registry.npmjs.org/@oclif/parser/-/parser-3.8.8.tgz";
+        sha512 = "OgqQAtpyq1XFJG3dvLl9aqiO+F5pubkzt7AivUDkNoa6/hNgVZ79vvTO8sqo5XAAhOm/fcTSerZ35OTnTJb1ng==";
       };
     };
     "@oclif/plugin-autocomplete-0.1.5" = {
@@ -7852,13 +7870,13 @@ let
         sha512 = "VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==";
       };
     };
-    "@octokit/openapi-types-13.13.0" = {
+    "@octokit/openapi-types-13.13.1" = {
       name = "_at_octokit_slash_openapi-types";
       packageName = "@octokit/openapi-types";
-      version = "13.13.0";
+      version = "13.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-13.13.0.tgz";
-        sha512 = "EQ7/LFp2nb1bU5vhLvfEsImi7RvGXp081ytaMRQXDyVcpLpmOCUMafYfHL72BA7wCOnEmJR0LznBS6sCAIlm9Q==";
+        url = "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-13.13.1.tgz";
+        sha512 = "4EuKSk3N95UBWFau3Bz9b3pheQ8jQYbKmBL5+GSuY8YDPDwu03J4BjI+66yNi8aaX/3h1qDpb0mbBkLdr+cfGQ==";
       };
     };
     "@octokit/plugin-enterprise-rest-6.0.1" = {
@@ -8941,6 +8959,15 @@ let
         sha512 = "U58N44b2m3OuTgpmKgf0LPDOmP3bhwNz01vAnj1mBwxBASRhptWYK+M3zG+HBkDqGQM+bFsoIihTW8MdmPXEqg==";
       };
     };
+    "@phenomnomnominal/tsquery-4.1.1" = {
+      name = "_at_phenomnomnominal_slash_tsquery";
+      packageName = "@phenomnomnominal/tsquery";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@phenomnomnominal/tsquery/-/tsquery-4.1.1.tgz";
+        sha512 = "jjMmK1tnZbm1Jq5a7fBliM4gQwjxMU7TFoRNwIyzwlO+eHPRCFv/Nv+H/Gi1jc3WR7QURG8D5d0Tn12YGrUqBQ==";
+      };
+    };
     "@pkgr/utils-2.3.1" = {
       name = "_at_pkgr_slash_utils";
       packageName = "@pkgr/utils";
@@ -9328,13 +9355,13 @@ let
         sha512 = "9TfoDuxWZyUYIwISVVMPguX9iirZrD0cI6rI0xXg6URRaqk71GZ5U0ueomeZapSY1nni2Yf+th1ZjU+jSUw/9g==";
       };
     };
-    "@schematics/angular-14.2.4" = {
+    "@schematics/angular-14.2.5" = {
       name = "_at_schematics_slash_angular";
       packageName = "@schematics/angular";
-      version = "14.2.4";
+      version = "14.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@schematics/angular/-/angular-14.2.4.tgz";
-        sha512 = "9n7HyxZvoSR+Ynyvr8oEQ3zy5trSjCQMTF+fZSTCzCBEVHKGxqMyisI6KO4qcGeIQYGXWeBYrMsy9jMQFgK8dQ==";
+        url = "https://registry.npmjs.org/@schematics/angular/-/angular-14.2.5.tgz";
+        sha512 = "oYtQJi68EcDK940fny9t12JGE6z/ZbLeCZs+cPh4XT7ytRdO4anypBtKx18+E+b6jUnox4FxIGOf2WpkSAosYA==";
       };
     };
     "@segment/loosely-validate-event-2.0.0" = {
@@ -9778,15 +9805,6 @@ let
         sha512 = "SgoKXwVnlpIZUyAFX4W79eeuTWvXmNlMfICZixL16GZXnkjcW+uZnfmAU0ZIjcnaTgaI4mjfxn8LAP2KR6Cr0A==";
       };
     };
-    "@stoplight/lifecycle-2.3.2" = {
-      name = "_at_stoplight_slash_lifecycle";
-      packageName = "@stoplight/lifecycle";
-      version = "2.3.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@stoplight/lifecycle/-/lifecycle-2.3.2.tgz";
-        sha512 = "v0u8p27FA/eg04b4z6QXw4s0NeeFcRzyvseBW0+k/q4jtpg7EhVCqy42EbbbU43NTNDpIeQ81OcvkFz+6CYshw==";
-      };
-    };
     "@stoplight/ordered-object-literal-1.0.4" = {
       name = "_at_stoplight_slash_ordered-object-literal";
       packageName = "@stoplight/ordered-object-literal";
@@ -9814,22 +9832,22 @@ let
         sha512 = "+qpwsDG2jQ4ULQmegBWonI3UnF6tUh351WDnV1GU8acl8eaeKbS+ZUNBgoP2f9tnMTfITdctVRFEGC3D6P7f9g==";
       };
     };
-    "@stoplight/spectral-core-1.14.1" = {
+    "@stoplight/spectral-core-1.14.2" = {
       name = "_at_stoplight_slash_spectral-core";
       packageName = "@stoplight/spectral-core";
-      version = "1.14.1";
+      version = "1.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@stoplight/spectral-core/-/spectral-core-1.14.1.tgz";
-        sha512 = "UMPfkrDqIMiAoZuVx4QiVV3D5fssfhDQ6R36qTP3x0hZFOeVDIFIcVdKV8lgmvsbpKaOgU/AD/2s4jScyTIqoA==";
+        url = "https://registry.npmjs.org/@stoplight/spectral-core/-/spectral-core-1.14.2.tgz";
+        sha512 = "W2Z31lasEICpZS50STFskOdkn4g0Va81XA1A88LIj9mvlctDFf4BfpjLgIjKkI4f2DEK5C4j3COcbbzV8y5Xig==";
       };
     };
-    "@stoplight/spectral-formats-1.2.0" = {
+    "@stoplight/spectral-formats-1.4.0" = {
       name = "_at_stoplight_slash_spectral-formats";
       packageName = "@stoplight/spectral-formats";
-      version = "1.2.0";
+      version = "1.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@stoplight/spectral-formats/-/spectral-formats-1.2.0.tgz";
-        sha512 = "idvn7r8fvQjY/KeJpKgXQ5eJhce6N6/KoKWMPSh5yyvYDpn+bkU4pxAD79jOJaDnIyKJd1jjTPEJWnxbS0jj6A==";
+        url = "https://registry.npmjs.org/@stoplight/spectral-formats/-/spectral-formats-1.4.0.tgz";
+        sha512 = "j9VQukDzgqDSi26rK9LqsbXrqtkeIsPSPgEf5/sxRsmeF2bwWUhSjYXgYin4flSZ7owFZjZWQ3o0Qq3iApi2JQ==";
       };
     };
     "@stoplight/spectral-functions-1.7.1" = {
@@ -9877,13 +9895,13 @@ let
         sha512 = "QySMWSvGUC5D8cNDvXhrXEY0a4DB5hewHwjxXbwlH51fVNiVKJ4+KcaCW3s2yAT4T1p6/ij8NkLX9T81D4vSCg==";
       };
     };
-    "@stoplight/spectral-rulesets-1.13.0" = {
+    "@stoplight/spectral-rulesets-1.14.1" = {
       name = "_at_stoplight_slash_spectral-rulesets";
       packageName = "@stoplight/spectral-rulesets";
-      version = "1.13.0";
+      version = "1.14.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@stoplight/spectral-rulesets/-/spectral-rulesets-1.13.0.tgz";
-        sha512 = "d1I76FUcKIZh9zR3/RcN+KH3dg1xp8FsKRkY/WnsV7H8pnG2lbyPVHgSCNE06fVg8E01H5uwmee1ChtjgHJmOQ==";
+        url = "https://registry.npmjs.org/@stoplight/spectral-rulesets/-/spectral-rulesets-1.14.1.tgz";
+        sha512 = "tn6a5fYPFDwEY+/YyK/hcq2gcR5nSIBt7l+JGELb/2RdTzD5ikj2mfl2ua3uxbqOZytftFoOX5ewGZ0qQNrudw==";
       };
     };
     "@stoplight/spectral-runtime-1.1.2" = {
@@ -9985,148 +10003,148 @@ let
         sha512 = "Mh4T/PmQOpPtqw1BNvU38uWzsXbd5RJji17YBXnj7JDDE5KlTR9sSo2RKxWKDVtHbdcD1S+CtyZXA93aEWlfGQ==";
       };
     };
-    "@swc-node/register-1.5.2" = {
+    "@swc-node/register-1.5.4" = {
       name = "_at_swc-node_slash_register";
       packageName = "@swc-node/register";
-      version = "1.5.2";
+      version = "1.5.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@swc-node/register/-/register-1.5.2.tgz";
-        sha512 = "uXgAWEmbrg1zFxv6x/0rTQuToEuCxxZDaA7KyJi5+FwRcBTS79tBYEqUROH8otcTnHdh4njAbWdETFPRD4Pogw==";
+        url = "https://registry.npmjs.org/@swc-node/register/-/register-1.5.4.tgz";
+        sha512 = "cM5/A63bO6qLUFC4gcBnOlQO5yd8ObSdFUIp7sXf11Oq5mPVAnJy2DqjbWMUsqUaHuNk+lOIt76ie4DEseUIyA==";
       };
     };
-    "@swc-node/sourcemap-support-0.2.1" = {
+    "@swc-node/sourcemap-support-0.2.2" = {
       name = "_at_swc-node_slash_sourcemap-support";
       packageName = "@swc-node/sourcemap-support";
-      version = "0.2.1";
+      version = "0.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@swc-node/sourcemap-support/-/sourcemap-support-0.2.1.tgz";
-        sha512 = "+49bBLKEenzAybTIlOlZGdif5wK0ZHjrAtIUtyd5nSthFKSTzcmfmFayqVmk5ZoVZI2AG+qJOx5+K1vZt17TJQ==";
+        url = "https://registry.npmjs.org/@swc-node/sourcemap-support/-/sourcemap-support-0.2.2.tgz";
+        sha512 = "PA4p7nC5LwPdEVcQXFxMTpfvizYPeMoB55nIIx+yC3FiLnyPgC2hcpUitPy5h8RRGdCZ/Mvb2ryEcVYS8nI6YA==";
       };
     };
-    "@swc/core-1.3.3" = {
+    "@swc/core-1.3.5" = {
       name = "_at_swc_slash_core";
       packageName = "@swc/core";
-      version = "1.3.3";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@swc/core/-/core-1.3.3.tgz";
-        sha512 = "OGx3Qpw+czNSaea1ojP2X2wxrGtYicQxH1QnzX4F3rXGEcSUFIllmrae6iJHW91zS4SNcOocnQoRz1IYnrILYw==";
+        url = "https://registry.npmjs.org/@swc/core/-/core-1.3.5.tgz";
+        sha512 = "H5YNI9rCViudhEmu9g/Yc8ai6k5/pfy+ItYns0SZ+iSZen+bgWeGb+9p4KRQhzNNC8Lfkfw+ENHzSwZltpWG6Q==";
       };
     };
-    "@swc/core-android-arm-eabi-1.3.3" = {
+    "@swc/core-android-arm-eabi-1.3.5" = {
       name = "_at_swc_slash_core-android-arm-eabi";
       packageName = "@swc/core-android-arm-eabi";
-      version = "1.3.3";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@swc/core-android-arm-eabi/-/core-android-arm-eabi-1.3.3.tgz";
-        sha512 = "R6MpKXvNx/T/8a0wUTiX1THxfRbURSCmYlSi/JnUaqLYUclQK1N8aCMWz7EYSz6FE0VZBREJYDJcdnfP88E/1Q==";
+        url = "https://registry.npmjs.org/@swc/core-android-arm-eabi/-/core-android-arm-eabi-1.3.5.tgz";
+        sha512 = "gIq3fuXiRMtVhTf2ZQ9Z6JeuqvL30JOM0L+S6zAZD4v8lpGJ1ejpw7rghpAsGSG9Qc9oaNjx5yayTg3z/EtBzA==";
       };
     };
-    "@swc/core-android-arm64-1.3.3" = {
+    "@swc/core-android-arm64-1.3.5" = {
       name = "_at_swc_slash_core-android-arm64";
       packageName = "@swc/core-android-arm64";
-      version = "1.3.3";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@swc/core-android-arm64/-/core-android-arm64-1.3.3.tgz";
-        sha512 = "yZlku4ypVKykwHTS8CETxw2PH23UBeM6VhNB8efF4A4gVWtRZjv1PfjsSqh/X0vjgVTrs2zSaQ+eF6GLVbWrgA==";
+        url = "https://registry.npmjs.org/@swc/core-android-arm64/-/core-android-arm64-1.3.5.tgz";
+        sha512 = "SsRA6AhNZK8YXBbv7DAp5Zgv4tOWvPJlEBoOZ0uLIot7oYghWvSVs3jOgEzJSbQLU5U7ad6Q6boBdg0Q/kb2Ew==";
       };
     };
-    "@swc/core-darwin-arm64-1.3.3" = {
+    "@swc/core-darwin-arm64-1.3.5" = {
       name = "_at_swc_slash_core-darwin-arm64";
       packageName = "@swc/core-darwin-arm64";
-      version = "1.3.3";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.3.tgz";
-        sha512 = "/T8vyikY7t/be6bHd1D9J/bmXYMDMkBo9NA3auDT/hmouzawhJ6E7OqRE4HLuLTflnRw8WmEWgpeRIzMHvNjBQ==";
+        url = "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.5.tgz";
+        sha512 = "Jyem+f3/aTKJTRzyvdSfYS358jo7245g7nWmwmhQMgZI3/z2VcYHpIIYOi+dgsBaMRevK9tbsW0TSx805Njzjw==";
       };
     };
-    "@swc/core-darwin-x64-1.3.3" = {
+    "@swc/core-darwin-x64-1.3.5" = {
       name = "_at_swc_slash_core-darwin-x64";
       packageName = "@swc/core-darwin-x64";
-      version = "1.3.3";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.3.tgz";
-        sha512 = "hw4o1If986In5m3y3/OimgiBKJh49kbTG9MRWo8msqTic2aBlrtfHjSecMn1g+oP7pdaUUCTkovmT7OpvvQ/Tw==";
+        url = "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.5.tgz";
+        sha512 = "zW1tfS000RlHcqKp1HJK5vXBR0/AHw74qzOK0uh/G1cTczFDX2Hep4IuOxSJ1+7Zx9oFEOKSEY0lPXYbDAlF2w==";
       };
     };
-    "@swc/core-freebsd-x64-1.3.3" = {
+    "@swc/core-freebsd-x64-1.3.5" = {
       name = "_at_swc_slash_core-freebsd-x64";
       packageName = "@swc/core-freebsd-x64";
-      version = "1.3.3";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@swc/core-freebsd-x64/-/core-freebsd-x64-1.3.3.tgz";
-        sha512 = "JFDu3uLa0WMw77o+QNR5D1uErQ5s18HmEwJr5ndOQoDlS+XO2qUG6AxU5LdwLEl5qMf2C99t7gkfzcCZG1PRsw==";
+        url = "https://registry.npmjs.org/@swc/core-freebsd-x64/-/core-freebsd-x64-1.3.5.tgz";
+        sha512 = "H2f0NkfqYDC6+vJO6wSBwiGnnR/cK9AQx574izPw3Utmb28zC+FOPAY63QLA/orNHjwHa6B6AuVDNwYuKUrRHQ==";
       };
     };
-    "@swc/core-linux-arm-gnueabihf-1.3.3" = {
+    "@swc/core-linux-arm-gnueabihf-1.3.5" = {
       name = "_at_swc_slash_core-linux-arm-gnueabihf";
       packageName = "@swc/core-linux-arm-gnueabihf";
-      version = "1.3.3";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.3.tgz";
-        sha512 = "kJoyNP/ury9KmZnjhpj0QApY6VxC9S4hkgsycm8yTJ23O8WrUbgeDOlgAgFJNyHszhR5CnlssDv7ErCwMZtkgw==";
+        url = "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.5.tgz";
+        sha512 = "PvuhjUCsNQDtwSSXWmmF6tU8jnAcFVRZt6bBNltvPW48oHNmIq9lEZ+hJTSPvqqxLvi9W7HG5ADzsTAaciKeRw==";
       };
     };
-    "@swc/core-linux-arm64-gnu-1.3.3" = {
+    "@swc/core-linux-arm64-gnu-1.3.5" = {
       name = "_at_swc_slash_core-linux-arm64-gnu";
       packageName = "@swc/core-linux-arm64-gnu";
-      version = "1.3.3";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.3.tgz";
-        sha512 = "Y+10o78O2snKnrNTbasT9S3Out0wlOyAkLZvq5zqzW1cz2K2Yzm04zQdKQOCRHlfTF0XSmZ++qRWVNol49WsNA==";
+        url = "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.5.tgz";
+        sha512 = "NQ1LVrIvAsSwSoKO6DzHQMxzpvo17v/2LREqBiaNuCwDyYg2yFdgUdVW4FcbrdBK4MurRA2HFZZ/rt5DqAg3+A==";
       };
     };
-    "@swc/core-linux-arm64-musl-1.3.3" = {
+    "@swc/core-linux-arm64-musl-1.3.5" = {
       name = "_at_swc_slash_core-linux-arm64-musl";
       packageName = "@swc/core-linux-arm64-musl";
-      version = "1.3.3";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.3.tgz";
-        sha512 = "y6ErPP6Sk0f8exoanUxXeFALvPraTjyoVr8pitpfTqoUd9YcxwOTpPbR5WXI3FWnQ7GS86iH0LvaFDCgHQ1fjg==";
+        url = "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.5.tgz";
+        sha512 = "DDcM3ciJRBBjyN7qqw/AEEFh61YjiuxOcZ5SqYR0wyfroqOFX1+5JtCGJ9mU2MZ4Vfmxb1v5IFoQ3nfgJDcd8g==";
       };
     };
-    "@swc/core-linux-x64-gnu-1.3.3" = {
+    "@swc/core-linux-x64-gnu-1.3.5" = {
       name = "_at_swc_slash_core-linux-x64-gnu";
       packageName = "@swc/core-linux-x64-gnu";
-      version = "1.3.3";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.3.tgz";
-        sha512 = "sqyvNJkPHKHlK/XLIoMNLiux8YxsCJpAk3UreS0NO+sRNRru2AMyrRwX6wxmnJybhEek9SPKF0pXi+GfcaFKYA==";
+        url = "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.5.tgz";
+        sha512 = "AJR0J+b3jMmXuIxqhgrX/7vworHjciUPZuoyY2OrIhSXwMPVbWfb72h9oQdMbARfodTFLVJGQqy2Pij67+C0GQ==";
       };
     };
-    "@swc/core-linux-x64-musl-1.3.3" = {
+    "@swc/core-linux-x64-musl-1.3.5" = {
       name = "_at_swc_slash_core-linux-x64-musl";
       packageName = "@swc/core-linux-x64-musl";
-      version = "1.3.3";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.3.tgz";
-        sha512 = "5fjwHdMv+DOgEp7sdNVmvS4Hr2rDaewa0BpDW8RefcjHoJnDpFVButLDMkwv/Yd+v4YN+99kyX/lOI+/OTD99w==";
+        url = "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.5.tgz";
+        sha512 = "+Ig/rJ/GOZyQgCO72PFR+oJYUee0zQRsd6fpeuE66rn8P07a26WY1ZfMGw8miWcURccjDgAc1XCwVn6wa/OTCw==";
       };
     };
-    "@swc/core-win32-arm64-msvc-1.3.3" = {
+    "@swc/core-win32-arm64-msvc-1.3.5" = {
       name = "_at_swc_slash_core-win32-arm64-msvc";
       packageName = "@swc/core-win32-arm64-msvc";
-      version = "1.3.3";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.3.tgz";
-        sha512 = "JxcfG89GieqCFXkRl/mtFds/ME6ncEtLRIQ0+RBIREIGisA9ZgJ8EryBzGZyPu5+7kE0vXGVB6A2cfrv4SNW4A==";
+        url = "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.5.tgz";
+        sha512 = "9Go5jiGWToT+00/J26E92n/JIHqG2wcaw79Z1+Z7GHrrm5TeL0VMyTMGLMeGFvtje/j+Lv0y4XKed+dKnRvc5w==";
       };
     };
-    "@swc/core-win32-ia32-msvc-1.3.3" = {
+    "@swc/core-win32-ia32-msvc-1.3.5" = {
       name = "_at_swc_slash_core-win32-ia32-msvc";
       packageName = "@swc/core-win32-ia32-msvc";
-      version = "1.3.3";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.3.tgz";
-        sha512 = "yqZjTn5V7wYCxMCC5Rg8u87SmGeRSlqYAafHL3IgiFe8hSxOykc2dR1MYNc4WZumYiMlU15VSa6mW8A0pj37FA==";
+        url = "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.5.tgz";
+        sha512 = "AIeD5uKVkvXTAbKAwyPFubFrXmQR77PNun59DHZWtRpxgOcHqK6xug9DfUSfc2zMw/ftEe9kNruUUS96023jfQ==";
       };
     };
-    "@swc/core-win32-x64-msvc-1.3.3" = {
+    "@swc/core-win32-x64-msvc-1.3.5" = {
       name = "_at_swc_slash_core-win32-x64-msvc";
       packageName = "@swc/core-win32-x64-msvc";
-      version = "1.3.3";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.3.tgz";
-        sha512 = "CIuxz9wiHkgG7m3kjgptgO3iHOmrybvLf0rUNGbVTTHwTcrpjznAnS/MnMPiaIQPlxz70KSXAR2QJjw7fGtfbA==";
+        url = "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.5.tgz";
+        sha512 = "GtrAkUo5xVTogwTDH9Zms7LELdTKyRll+K9o87P+YOEizCUvA0BPE1N4mu+ZqsI/dv56g2N4gNCD8RVLH3HekQ==";
       };
     };
     "@swc/helpers-0.4.11" = {
@@ -10156,13 +10174,13 @@ let
         sha512 = "rNcJsBxS70+pv8YUWwf5fRlWX6JoY/HJc25HD/F8m6Kv7XhJdqPPMhyX6TKkUBPAG7TWlZYoxa+rHAjPy4Cj3Q==";
       };
     };
-    "@swc/wasm-1.3.3" = {
+    "@swc/wasm-1.3.5" = {
       name = "_at_swc_slash_wasm";
       packageName = "@swc/wasm";
-      version = "1.3.3";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@swc/wasm/-/wasm-1.3.3.tgz";
-        sha512 = "ba/enaChrWc5rMR2syBp+qx0fqezFBhuwxfNf1pTaVnNje2mMFJTCWukkM1vL6bsPMLzbDx0bC61xZex66zWiA==";
+        url = "https://registry.npmjs.org/@swc/wasm/-/wasm-1.3.5.tgz";
+        sha512 = "G7c3wX2bxa3OJFOwZB9utXQ0jaq+JI5HgHUxwduQwFRFVGVu+YsWaZ4TQ5iOFBLAsXA6AwMaJDOffcmB3DjpuQ==";
       };
     };
     "@szmarczak/http-timer-1.1.2" = {
@@ -10525,13 +10543,13 @@ let
         sha512 = "G4yqdVlhr6YhzLXFKy5F7HtRBU8Y23+iWy7UKthMq/OSQnL1hbsoeXESQ2LY8zEDlknipDG3nRGhUC9tkwvy/w==";
       };
     };
-    "@types/better-sqlite3-7.6.0" = {
+    "@types/better-sqlite3-7.6.1" = {
       name = "_at_types_slash_better-sqlite3";
       packageName = "@types/better-sqlite3";
-      version = "7.6.0";
+      version = "7.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/better-sqlite3/-/better-sqlite3-7.6.0.tgz";
-        sha512 = "rnSP9vY+fVsF3iJja5yRGBJV63PNBiezJlYrCkqUmQWFoB16cxAHwOkjsAYEu317miOfKaJpa65cbp0P4XJ/jw==";
+        url = "https://registry.npmjs.org/@types/better-sqlite3/-/better-sqlite3-7.6.1.tgz";
+        sha512 = "2MuzBUSwAjY8GoT04vcLUojHmuuOCEFboESZfx6u9gpnHym5mYBMhCKGoe+R+yXkiho1xg348LRH8x27cJLHjw==";
       };
     };
     "@types/bn.js-5.1.1" = {
@@ -11011,13 +11029,13 @@ let
         sha512 = "rjaYQ9b9y/VFGOpqBEXRavc3jh0a+e6evAbI31tMda8VlPaSy0AZJfXsvmIe3wklc7W6C3zCSfleuMXR7NOyXw==";
       };
     };
-    "@types/inquirer-8.2.3" = {
+    "@types/inquirer-8.2.4" = {
       name = "_at_types_slash_inquirer";
       packageName = "@types/inquirer";
-      version = "8.2.3";
+      version = "8.2.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/inquirer/-/inquirer-8.2.3.tgz";
-        sha512 = "ZlBqD+8WIVNy3KIVkl+Qne6bGLW2erwN0GJXY9Ri/9EMbyupee3xw3H0Mmv5kJoLyNpfd/oHlwKxO0DUDH7yWA==";
+        url = "https://registry.npmjs.org/@types/inquirer/-/inquirer-8.2.4.tgz";
+        sha512 = "Pxxx3i3AyK7vKAj3LRM/vF7ETcHKiLJ/u5CnNgbz/eYj/vB3xGAYtRxI5IKtq0hpe5iFHD22BKV3n6WHUu0k4Q==";
       };
     };
     "@types/is-empty-1.2.1" = {
@@ -11182,13 +11200,13 @@ let
         sha512 = "0d5Wd09ItQWH1qFbEyQ7oTQ3GZrMfth5JkbN3EvTKLXcHLRDSXeLnlvlOn0wvxVIwK5o2M8JzP/OWz7T3NRsbw==";
       };
     };
-    "@types/lodash-4.14.185" = {
+    "@types/lodash-4.14.186" = {
       name = "_at_types_slash_lodash";
       packageName = "@types/lodash";
-      version = "4.14.185";
+      version = "4.14.186";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.185.tgz";
-        sha512 = "evMDG1bC4rgQg4ku9tKpuMh5iBNEwNa3tf9zRHdP1qlv+1WUg44xat4IxCE14gIpZRGUUWAx2VhItCZc25NfMA==";
+        url = "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.186.tgz";
+        sha512 = "eHcVlLXP0c2FlMPm56ITode2AgLMSa6aJ05JTTbYbI+7EMkCEE5qk2E41d5g2lCVTqRe0GnnRFurmlCsDODrPw==";
       };
     };
     "@types/long-4.0.2" = {
@@ -11362,15 +11380,6 @@ let
         sha512 = "Exw4yUWMBXM3X+8oqzJNRqZSwUAaS4+7NdvHqQuFi/d+synz++xmX3QIf+BFqneW8N31R8Ky+sikfZUXq07ggQ==";
       };
     };
-    "@types/node-12.20.55" = {
-      name = "_at_types_slash_node";
-      packageName = "@types/node";
-      version = "12.20.55";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz";
-        sha512 = "J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==";
-      };
-    };
     "@types/node-13.13.52" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
@@ -11416,13 +11425,13 @@ let
         sha512 = "ua7PgUoeQFjmWPcoo9khiPum3Pd60k4/2ZGXt18sm2Slk0W0xZTqt5Y0Ny1NyBiN1EVQ/+FaF9NcY4Qe6rwk5w==";
       };
     };
-    "@types/node-16.11.62" = {
+    "@types/node-16.11.64" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "16.11.62";
+      version = "16.11.64";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-16.11.62.tgz";
-        sha512 = "K/ggecSdwAAy2NUW4WKmF4Rc03GKbsfP+k326UWgckoS+Rzd2PaWbjk76dSmqdLQvLTJAO9axiTUJ6488mFsYQ==";
+        url = "https://registry.npmjs.org/@types/node/-/node-16.11.64.tgz";
+        sha512 = "z5hPTlVFzNwtJ2LNozTpJcD1Cu44c4LNuzaq1mwxmiHWQh2ULdR6Vjwo1UGldzRpzL0yUEdZddnfqGW2G70z6Q==";
       };
     };
     "@types/node-17.0.33" = {
@@ -11461,13 +11470,22 @@ let
         sha512 = "6bbDaETVi8oyIARulOE9qF1/Qdi/23z6emrUh0fNJRUmjznqrixD4MpGDdgOFk5Xb0m2H6Xu42JGdvAxaJR/wA==";
       };
     };
-    "@types/node-18.7.23" = {
+    "@types/node-18.8.1" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "18.7.23";
+      version = "18.8.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-18.7.23.tgz";
-        sha512 = "DWNcCHolDq0ZKGizjx2DZjR/PqsYwAcYUJmfMWqtVU2MBMG5Mo+xFZrhGId5r/O5HOuMPyQEcM6KUBp5lBZZBg==";
+        url = "https://registry.npmjs.org/@types/node/-/node-18.8.1.tgz";
+        sha512 = "vuYaNuEIbOYLTLUAJh50ezEbvxrD43iby+lpUA2aa148Nh5kX/AVO/9m1Ahmbux2iU5uxJTNF9g2Y+31uml7RQ==";
+      };
+    };
+    "@types/node-18.8.3" = {
+      name = "_at_types_slash_node";
+      packageName = "@types/node";
+      version = "18.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/node/-/node-18.8.3.tgz";
+        sha512 = "0os9vz6BpGwxGe9LOhgP/ncvYN5Tx1fNcd2TM3rD/aCGBkysb+ZWpXEocG24h6ZzOi13+VB8HndAQFezsSOw1w==";
       };
     };
     "@types/node-6.14.13" = {
@@ -12118,13 +12136,13 @@ let
         sha512 = "aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg==";
       };
     };
-    "@typescript-eslint/eslint-plugin-5.38.1" = {
+    "@typescript-eslint/eslint-plugin-5.39.0" = {
       name = "_at_typescript-eslint_slash_eslint-plugin";
       packageName = "@typescript-eslint/eslint-plugin";
-      version = "5.38.1";
+      version = "5.39.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.38.1.tgz";
-        sha512 = "ky7EFzPhqz3XlhS7vPOoMDaQnQMn+9o5ICR9CPr/6bw8HrFkzhMSxuA3gRfiJVvs7geYrSeawGJjZoZQKCOglQ==";
+        url = "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.39.0.tgz";
+        sha512 = "xVfKOkBm5iWMNGKQ2fwX5GVgBuHmZBO1tCRwXmY5oAIsPscfwm2UADDuNB8ZVYCtpQvJK4xpjrK7jEhcJ0zY9A==";
       };
     };
     "@typescript-eslint/experimental-utils-4.33.0" = {
@@ -12145,13 +12163,13 @@ let
         sha512 = "ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA==";
       };
     };
-    "@typescript-eslint/parser-5.38.1" = {
+    "@typescript-eslint/parser-5.39.0" = {
       name = "_at_typescript-eslint_slash_parser";
       packageName = "@typescript-eslint/parser";
-      version = "5.38.1";
+      version = "5.39.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.38.1.tgz";
-        sha512 = "LDqxZBVFFQnQRz9rUZJhLmox+Ep5kdUmLatLQnCRR6523YV+XhRjfYzStQ4MheFA8kMAfUlclHSbu+RKdRwQKw==";
+        url = "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.39.0.tgz";
+        sha512 = "PhxLjrZnHShe431sBAGHaNe6BDdxAASDySgsBCGxcBecVCi8NQWxQZMcizNA4g0pN51bBAn/FUfkWG3SDVcGlA==";
       };
     };
     "@typescript-eslint/scope-manager-4.33.0" = {
@@ -12163,22 +12181,22 @@ let
         sha512 = "5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ==";
       };
     };
-    "@typescript-eslint/scope-manager-5.38.1" = {
+    "@typescript-eslint/scope-manager-5.39.0" = {
       name = "_at_typescript-eslint_slash_scope-manager";
       packageName = "@typescript-eslint/scope-manager";
-      version = "5.38.1";
+      version = "5.39.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.38.1.tgz";
-        sha512 = "BfRDq5RidVU3RbqApKmS7RFMtkyWMM50qWnDAkKgQiezRtLKsoyRKIvz1Ok5ilRWeD9IuHvaidaLxvGx/2eqTQ==";
+        url = "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.39.0.tgz";
+        sha512 = "/I13vAqmG3dyqMVSZPjsbuNQlYS082Y7OMkwhCfLXYsmlI0ca4nkL7wJ/4gjX70LD4P8Hnw1JywUVVAwepURBw==";
       };
     };
-    "@typescript-eslint/type-utils-5.38.1" = {
+    "@typescript-eslint/type-utils-5.39.0" = {
       name = "_at_typescript-eslint_slash_type-utils";
       packageName = "@typescript-eslint/type-utils";
-      version = "5.38.1";
+      version = "5.39.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.38.1.tgz";
-        sha512 = "UU3j43TM66gYtzo15ivK2ZFoDFKKP0k03MItzLdq0zV92CeGCXRfXlfQX5ILdd4/DSpHkSjIgLLLh1NtkOJOAw==";
+        url = "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.39.0.tgz";
+        sha512 = "KJHJkOothljQWzR3t/GunL0TPKY+fGJtnpl+pX+sJ0YiKTz3q2Zr87SGTmFqsCMFrLt5E0+o+S6eQY0FAXj9uA==";
       };
     };
     "@typescript-eslint/types-3.10.1" = {
@@ -12199,13 +12217,13 @@ let
         sha512 = "zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==";
       };
     };
-    "@typescript-eslint/types-5.38.1" = {
+    "@typescript-eslint/types-5.39.0" = {
       name = "_at_typescript-eslint_slash_types";
       packageName = "@typescript-eslint/types";
-      version = "5.38.1";
+      version = "5.39.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.38.1.tgz";
-        sha512 = "QTW1iHq1Tffp9lNfbfPm4WJabbvpyaehQ0SrvVK2yfV79SytD9XDVxqiPvdrv2LK7DGSFo91TB2FgWanbJAZXg==";
+        url = "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.39.0.tgz";
+        sha512 = "gQMZrnfEBFXK38hYqt8Lkwt8f4U6yq+2H5VDSgP/qiTzC8Nw8JO3OuSUOQ2qW37S/dlwdkHDntkZM6SQhKyPhw==";
       };
     };
     "@typescript-eslint/typescript-estree-3.10.1" = {
@@ -12226,22 +12244,22 @@ let
         sha512 = "rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA==";
       };
     };
-    "@typescript-eslint/typescript-estree-5.38.1" = {
+    "@typescript-eslint/typescript-estree-5.39.0" = {
       name = "_at_typescript-eslint_slash_typescript-estree";
       packageName = "@typescript-eslint/typescript-estree";
-      version = "5.38.1";
+      version = "5.39.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.38.1.tgz";
-        sha512 = "99b5e/Enoe8fKMLdSuwrfH/C0EIbpUWmeEKHmQlGZb8msY33qn1KlkFww0z26o5Omx7EVjzVDCWEfrfCDHfE7g==";
+        url = "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.39.0.tgz";
+        sha512 = "qLFQP0f398sdnogJoLtd43pUgB18Q50QSA+BTE5h3sUxySzbWDpTSdgt4UyxNSozY/oDK2ta6HVAzvGgq8JYnA==";
       };
     };
-    "@typescript-eslint/utils-5.38.1" = {
+    "@typescript-eslint/utils-5.39.0" = {
       name = "_at_typescript-eslint_slash_utils";
       packageName = "@typescript-eslint/utils";
-      version = "5.38.1";
+      version = "5.39.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.38.1.tgz";
-        sha512 = "oIuUiVxPBsndrN81oP8tXnFa/+EcZ03qLqPDfSZ5xIJVm7A9V0rlkQwwBOAGtrdN70ZKDlKv+l1BeT4eSFxwXA==";
+        url = "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.39.0.tgz";
+        sha512 = "+DnY5jkpOpgj+EBtYPyHRjXampJfC0yUZZzfzLuUWVZvCuKqSdJVC8UhdWipIw7VKNTfwfAPiOWzYkAwuIhiAg==";
       };
     };
     "@typescript-eslint/visitor-keys-3.10.1" = {
@@ -12262,13 +12280,13 @@ let
         sha512 = "uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg==";
       };
     };
-    "@typescript-eslint/visitor-keys-5.38.1" = {
+    "@typescript-eslint/visitor-keys-5.39.0" = {
       name = "_at_typescript-eslint_slash_visitor-keys";
       packageName = "@typescript-eslint/visitor-keys";
-      version = "5.38.1";
+      version = "5.39.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.38.1.tgz";
-        sha512 = "bSHr1rRxXt54+j2n4k54p4fj8AHJ49VDWtjpImOpzQj4qjAiOpPni+V1Tyajh19Api1i844F757cur8wH3YvOA==";
+        url = "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.39.0.tgz";
+        sha512 = "yyE3RPwOG+XJBLrhvsxAidUgybJVQ/hG8BhiJo0k8JSAYfk/CshVcxf0HwP4Jt7WZZ6vLmxdo1p6EyN3tzFTkg==";
       };
     };
     "@ungap/promise-all-settled-1.1.2" = {
@@ -12307,40 +12325,40 @@ let
         sha512 = "hHqer2mcdVC0eYnVNbWyi28AlGOPb2vjH3lP3/Bc8Lc8BjhMsDwFMm7WhoP5C1+cfbr/QJ6Er3H/L08wznXxfg==";
       };
     };
-    "@vercel/build-utils-5.5.2" = {
+    "@vercel/build-utils-5.5.4" = {
       name = "_at_vercel_slash_build-utils";
       packageName = "@vercel/build-utils";
-      version = "5.5.2";
+      version = "5.5.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vercel/build-utils/-/build-utils-5.5.2.tgz";
-        sha512 = "v78d348AhyZRMc3i4mOuILLnRCWaE1joAiYBlZMbVVkpALob7tvTdiaDHPmq5o+Ka6g14QdlKaoiaMqPF7oESQ==";
+        url = "https://registry.npmjs.org/@vercel/build-utils/-/build-utils-5.5.4.tgz";
+        sha512 = "urAVFyrH6NTznN8bG1S4KHMpMwEaRXMRMeUXuMZXdGiznB83pACZ/5xpSzaLTIKrOrdYWVUrGcFjhLDMVRqCWQ==";
       };
     };
-    "@vercel/go-2.2.10" = {
+    "@vercel/go-2.2.12" = {
       name = "_at_vercel_slash_go";
       packageName = "@vercel/go";
-      version = "2.2.10";
+      version = "2.2.12";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vercel/go/-/go-2.2.10.tgz";
-        sha512 = "XZM6ug2QpNWpn/IiwW1eXLL6yHT8aRo/p4Wr6FV4mnws4grg0xzZaTHX2qIaswtniU9wGnJN6Bx/6pGbADgUzg==";
+        url = "https://registry.npmjs.org/@vercel/go/-/go-2.2.12.tgz";
+        sha512 = "Lo4Wa/Ptd0V29ZJBVD1RrDcHRbtV9zoBDIZUpLsTgcE/B5UxompNMRaAl8CuWWdR8tBWJhpNv5LhBydsnIp1BQ==";
       };
     };
-    "@vercel/hydrogen-0.0.23" = {
+    "@vercel/hydrogen-0.0.25" = {
       name = "_at_vercel_slash_hydrogen";
       packageName = "@vercel/hydrogen";
-      version = "0.0.23";
+      version = "0.0.25";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vercel/hydrogen/-/hydrogen-0.0.23.tgz";
-        sha512 = "st3F1v2Gyoj1rwMNeTge+la7YzDV3f71JiKOns0mxQ0kvNeULztHo1KAz2mVZtCx4rLFEyO9LDgVVMED29/d2Q==";
+        url = "https://registry.npmjs.org/@vercel/hydrogen/-/hydrogen-0.0.25.tgz";
+        sha512 = "nKSzSpY+jaKqP4sBo8kDDZ5gNg1rY5jLrZWn8e21EPwqHIlkktB/Kca2/teEelGv4DxmvtFne50y7VQeOqf7TA==";
       };
     };
-    "@vercel/next-3.2.0" = {
+    "@vercel/next-3.2.3" = {
       name = "_at_vercel_slash_next";
       packageName = "@vercel/next";
-      version = "3.2.0";
+      version = "3.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vercel/next/-/next-3.2.0.tgz";
-        sha512 = "SyLXb9sldKh/iFyW+dLGXSRkGIidGubTgpIHISDRPgqZNeeh+qEZap0vRXCTz8Rz5PJKCDFBLSdi+PuZdYBAqA==";
+        url = "https://registry.npmjs.org/@vercel/next/-/next-3.2.3.tgz";
+        sha512 = "4f592wBTzjb949Ea0ce1oYN0MZJunzZp7Y6XGOKZFPtYBlKOQx35ibvwEuRNi2FU/YGVe1V7Xr3TE+UHkEzmOQ==";
       };
     };
     "@vercel/nft-0.22.1" = {
@@ -12352,13 +12370,13 @@ let
         sha512 = "lYYZIoxRurqDOSoVIdBicGnpUIpfyaS5qVjdPq+EfI285WqtZK3NK/dyCkiyBul+X2U2OEhRyeMdXPCHGJbohw==";
       };
     };
-    "@vercel/node-2.5.20" = {
+    "@vercel/node-2.5.22" = {
       name = "_at_vercel_slash_node";
       packageName = "@vercel/node";
-      version = "2.5.20";
+      version = "2.5.22";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vercel/node/-/node-2.5.20.tgz";
-        sha512 = "sK6VUPZyA+EJxDmhw0rq39NHGHs0Vx5Ob/4azK9StCZYeQgGyUi4d/7eRXGQs4nIL94oji9MVj1pMj3dlVDbsQ==";
+        url = "https://registry.npmjs.org/@vercel/node/-/node-2.5.22.tgz";
+        sha512 = "phlgW4qHGEt/yQ/nbGCd3vrFM0n48/MBbvmAKgTeVE/mjzdWxPnuSHNQlaipJkzfT3tv8kiiJu9ZoicuDoACTw==";
       };
     };
     "@vercel/node-bridge-3.0.0" = {
@@ -12370,31 +12388,31 @@ let
         sha512 = "TNQK6cufwrhd8ASDk5YHHenH8Xhp9sY8xUjOTKnQQI37KLk+Sw2HlHhT5rzUFN23ahosUlkY8InwtYUmSNb9kw==";
       };
     };
-    "@vercel/python-3.1.19" = {
+    "@vercel/python-3.1.21" = {
       name = "_at_vercel_slash_python";
       packageName = "@vercel/python";
-      version = "3.1.19";
+      version = "3.1.21";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vercel/python/-/python-3.1.19.tgz";
-        sha512 = "yJy32rIU/cufJyZEtVpbJFYQ2daYx/pHa9XaDYnjGI8pyRe4dTf2zhwX6BpAZjJtJYPyGLlCiGY/B9N0EO/vtw==";
+        url = "https://registry.npmjs.org/@vercel/python/-/python-3.1.21.tgz";
+        sha512 = "IZISToeALReKnxmV15SlZqkjQaPIRJI0Yxpeb7FvCJZ0VB2EDKI4hdB/CFEa/WeWuO5uGpYlP40XHYCx1bBLtA==";
       };
     };
-    "@vercel/redwood-1.0.28" = {
+    "@vercel/redwood-1.0.30" = {
       name = "_at_vercel_slash_redwood";
       packageName = "@vercel/redwood";
-      version = "1.0.28";
+      version = "1.0.30";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vercel/redwood/-/redwood-1.0.28.tgz";
-        sha512 = "hkMQHzi8HxBaLyBV6jJzRZSYlimVUSgmsf7xqRnMYclYKsW9oB/OYQ//vIBec8yeUSb3STeIN0isYIhF2SorDg==";
+        url = "https://registry.npmjs.org/@vercel/redwood/-/redwood-1.0.30.tgz";
+        sha512 = "ym287iYa2+3LNT+VjdmRGCpqvS7cvBtlGGHqOZAAxAbTumGxSF/8jRmDwJZPrVUcz0k2pHehDQyrD/7yjFnAlA==";
       };
     };
-    "@vercel/remix-1.0.29" = {
+    "@vercel/remix-1.0.31" = {
       name = "_at_vercel_slash_remix";
       packageName = "@vercel/remix";
-      version = "1.0.29";
+      version = "1.0.31";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vercel/remix/-/remix-1.0.29.tgz";
-        sha512 = "HAA/yDlfXFHrmuKrILnSnAxlTqP2Y4v5f8tgbdS2e511r9SWdtleolKgj2s27nsorc+eNtSp6gJ/tWzXnw6tcg==";
+        url = "https://registry.npmjs.org/@vercel/remix/-/remix-1.0.31.tgz";
+        sha512 = "xZ1sn27FgSURDytDRpfxnIi6v7pkWt+SapE5Zf33KysmTfQJRHP51RhcdviIClh6fYhxGoTM6UqWAM6rcUODFA==";
       };
     };
     "@vercel/routing-utils-2.0.2" = {
@@ -12406,22 +12424,22 @@ let
         sha512 = "Ach23n7fjhVVRplBVDmSlJ0E1rJTOxuQdqJfyuC6yGQl5ykmfarCXfjrLFCgeujqmQwAU9q0PR3K6HVOaAmbfg==";
       };
     };
-    "@vercel/ruby-1.3.36" = {
+    "@vercel/ruby-1.3.38" = {
       name = "_at_vercel_slash_ruby";
       packageName = "@vercel/ruby";
-      version = "1.3.36";
+      version = "1.3.38";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vercel/ruby/-/ruby-1.3.36.tgz";
-        sha512 = "/+ZVyGQeHFMIRX7aIgcXNnMpqQ5D8CLaIh7TN3Yexietd86e2E6mIl7pg+nj6vXI0X69NPFkBsoDacQMCT2ABg==";
+        url = "https://registry.npmjs.org/@vercel/ruby/-/ruby-1.3.38.tgz";
+        sha512 = "SQDzD8pxXVAIIi/lmRRAmwXrZA6dazTV+rSKKo5uQxgcYTdQp3XIesaCUZjuOUbXEKlQBmEm20mo9qwmYOeEJQ==";
       };
     };
-    "@vercel/static-build-1.0.28" = {
+    "@vercel/static-build-1.0.30" = {
       name = "_at_vercel_slash_static-build";
       packageName = "@vercel/static-build";
-      version = "1.0.28";
+      version = "1.0.30";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vercel/static-build/-/static-build-1.0.28.tgz";
-        sha512 = "LxxCCk/+0evtNsZzgiQImd2Hs766GBfrow9oDRDn9luVdlDVqBru1Fobc0jrdaoRdt7kQJJykpSmKbLd0foLsg==";
+        url = "https://registry.npmjs.org/@vercel/static-build/-/static-build-1.0.30.tgz";
+        sha512 = "Musk+kv8HY2ZgZXycv7W8miUPHkXvTjQjS1lEpRrNk3s9ImMIHrWCNLpbMPL3zDPLJ6JkP5+LSj6ltrWOY1OXQ==";
       };
     };
     "@vercel/static-config-2.0.3" = {
@@ -13351,13 +13369,13 @@ let
         sha512 = "GWZQKroPES4z91Ijx6zsOsb7+USOxjy66s8AoTWg0HiBBdfnbtf9aeh3Uav0MgYn4BL8Q7tVSUpd0gGpngKGEQ==";
       };
     };
-    "@whatwg-node/fetch-0.4.6" = {
+    "@whatwg-node/fetch-0.4.7" = {
       name = "_at_whatwg-node_slash_fetch";
       packageName = "@whatwg-node/fetch";
-      version = "0.4.6";
+      version = "0.4.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@whatwg-node/fetch/-/fetch-0.4.6.tgz";
-        sha512 = "DyeD0lN4Bk2Pdd/n4iT7g3rt4ZvvwSq+Yl2eF/Ku+odw1nVS7foww5JlAlwaJA4ZEGiZYT5oDagltX52UWKaXg==";
+        url = "https://registry.npmjs.org/@whatwg-node/fetch/-/fetch-0.4.7.tgz";
+        sha512 = "+oKDMGtmUJ7H37VDL5U2Vdk+ZxsIypZxO2q6y42ytu6W3PL6OIIUYZGliNqQgWtCdtxOZ9WPQvbIAuiLpnLlUw==";
       };
     };
     "@withgraphite/graphite-cli-routes-0.22.0" = {
@@ -13693,13 +13711,13 @@ let
         sha512 = "GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==";
       };
     };
-    "@yarnpkg/parsers-3.0.0-rc.21" = {
+    "@yarnpkg/parsers-3.0.0-rc.22" = {
       name = "_at_yarnpkg_slash_parsers";
       packageName = "@yarnpkg/parsers";
-      version = "3.0.0-rc.21";
+      version = "3.0.0-rc.22";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.0-rc.21.tgz";
-        sha512 = "aM82UlEU12+grklXCyGnMXMqChrW8BDI6DZuw2JjijLyErEqZ/9MjEyYhcn+oz8bKSvudEAe8ygRzkt1cVMOtQ==";
+        url = "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.0-rc.22.tgz";
+        sha512 = "GAWDjXduYBUVmOzlj3X0OwTQ1BV4ZeDdgw8yXST3K0lB95drWEGxa1at0v7BmHDyK2y1F1IJufc8N4yrcuXjWg==";
       };
     };
     "@zeit/schemas-2.21.0" = {
@@ -14674,6 +14692,15 @@ let
         sha512 = "5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA==";
       };
     };
+    "ansi-escapes-6.0.0" = {
+      name = "ansi-escapes";
+      packageName = "ansi-escapes";
+      version = "6.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-6.0.0.tgz";
+        sha512 = "IG23inYII3dWlU2EyiAiGj6Bwal5GzsgPMwjYGvc1HPE2dgbj4ZB5ToWBKSquKw74nB3TIuOwaI6/jSULzfgrw==";
+      };
+    };
     "ansi-gray-0.1.1" = {
       name = "ansi-gray";
       packageName = "ansi-gray";
@@ -16591,13 +16618,13 @@ let
         sha512 = "d1W2aNSYcz/sxYO4pMGX9vq65qOTu0P800epMud+6cYYX0QcT7zyqcxec3VWzpgvdXo57UWmVbZpLMjX2m1I7Q==";
       };
     };
-    "aws-crt-1.14.4" = {
+    "aws-crt-1.14.5" = {
       name = "aws-crt";
       packageName = "aws-crt";
-      version = "1.14.4";
+      version = "1.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aws-crt/-/aws-crt-1.14.4.tgz";
-        sha512 = "ZAjZ4sg4GVN4W/P3r6CgcMcY4qp9gGuRxi5e/vSbNX6eI5wte2jN9i6HgPrmoRLiXbmt9b6CLF4lc91U1O7snA==";
+        url = "https://registry.npmjs.org/aws-crt/-/aws-crt-1.14.5.tgz";
+        sha512 = "fxjTfNzFaG+cqpPSUDOKWtkufsQV7nq1COHIFcaomgSidbEg129kA+Ses0bJyoe6fKI7aMNIfzT9kDt7+KRn2g==";
       };
     };
     "aws-sdk-1.18.0" = {
@@ -16618,13 +16645,22 @@ let
         sha512 = "545VawhsCQ7yEx9jZKV0hTTW3FS/waycISWMvnNwqRfpU9o4FQ4DSu3je7ekn5yFKM+91dxJC+IfJgtIV8WaUw==";
       };
     };
-    "aws-sdk-2.1225.0" = {
+    "aws-sdk-2.1230.0" = {
       name = "aws-sdk";
       packageName = "aws-sdk";
-      version = "2.1225.0";
+      version = "2.1230.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1225.0.tgz";
-        sha512 = "JYYYVpr4EktsohOrO8+KfhmHGt2x2zi20Ypkrtllhrh6fhtosduqpH5cQF7wYX/zEvjqduv0dHYd3sXCROHP8A==";
+        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1230.0.tgz";
+        sha512 = "7Y260dvzr7b8/lZhg6A7h5WyHvfCgdFL0NiBgCuT3/xlw9rvq9b08JNYErEpaJSmo+A5hW35n6wtzii4/FUSTA==";
+      };
+    };
+    "aws-sdk-2.1231.0" = {
+      name = "aws-sdk";
+      packageName = "aws-sdk";
+      version = "2.1231.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1231.0.tgz";
+        sha512 = "ONBuRsOxsu0zL8u/Vmz49tPWi9D4ls2pjb6szdfSx9VQef7bOnWe9gJpWoA94OTzcjOWsvjsG7UgjvQJkIuPBg==";
       };
     };
     "aws-sign2-0.6.0" = {
@@ -16951,13 +16987,13 @@ let
         sha512 = "VTtHsmvwRBkX3yLK4e+pFwk88BC6iNFqS2J8CCx2ddQc7RjXoRhuXXIgYCng21DYNty9IicCwDdTDjdr+TM7eg==";
       };
     };
-    "babel-preset-expo-9.2.0" = {
+    "babel-preset-expo-9.2.1" = {
       name = "babel-preset-expo";
       packageName = "babel-preset-expo";
-      version = "9.2.0";
+      version = "9.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/babel-preset-expo/-/babel-preset-expo-9.2.0.tgz";
-        sha512 = "aM2htiNx0H49H+MWCp9+cKVSdcdNSn0tbE5Dln/GO1xna4ZlnA30clbfClcYJFUcZtW90IsYeZwQ/hj8zyWhNA==";
+        url = "https://registry.npmjs.org/babel-preset-expo/-/babel-preset-expo-9.2.1.tgz";
+        sha512 = "Hx93Ywm2Kbo/1anBvTrrGQP4pq/Hnp/cDni09/lMk4W/fCh7Wfj5Yl6R4vLMliRSsm2vKatfPoOgUHVqJQBT2w==";
       };
     };
     "babel-runtime-6.26.0" = {
@@ -17419,13 +17455,13 @@ let
         sha512 = "3vqtKL1N45I5dV0RdssXZG7X6pCqQrWPNOlBPZPrd+QkE2HEhR57Z04m0KtpbsZH73j+a3F8UD1TQnn+ExTvIA==";
       };
     };
-    "before-after-hook-2.2.2" = {
+    "before-after-hook-2.2.3" = {
       name = "before-after-hook";
       packageName = "before-after-hook";
-      version = "2.2.2";
+      version = "2.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.2.tgz";
-        sha512 = "3pZEU3NT5BFUo/AD5ERPWOgQOCZITni6iavr5AUw5AUwQjMlI0kzu5btnyD39AF0gUEsDPwJT+oY1ORBJijPjQ==";
+        url = "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz";
+        sha512 = "NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==";
       };
     };
     "bencode-0.7.0" = {
@@ -18364,6 +18400,15 @@ let
         sha512 = "DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==";
       };
     };
+    "body-parser-1.20.1" = {
+      name = "body-parser";
+      packageName = "body-parser";
+      version = "1.20.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz";
+        sha512 = "jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==";
+      };
+    };
     "bolt01-1.2.4" = {
       name = "bolt01";
       packageName = "bolt01";
@@ -18472,13 +18517,13 @@ let
         sha512 = "yN5oZVmRCwe5aKwzRj6736nSmKDX7pLYwsXiCj/EYmo16hODaBiT4En5btW/jhBF/seV+XMx3aYwukYC3A49DA==";
       };
     };
-    "bootstrap-5.2.1" = {
+    "bootstrap-5.2.2" = {
       name = "bootstrap";
       packageName = "bootstrap";
-      version = "5.2.1";
+      version = "5.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bootstrap/-/bootstrap-5.2.1.tgz";
-        sha512 = "UQi3v2NpVPEi1n35dmRRzBJFlgvWHYwyem6yHhuT6afYF+sziEt46McRbT//kVXZ7b1YUYEVGdXEH74Nx3xzGA==";
+        url = "https://registry.npmjs.org/bootstrap/-/bootstrap-5.2.2.tgz";
+        sha512 = "dEtzMTV71n6Fhmbg4fYJzQsw1N29hJKO1js5ackCgIpDcGid2ETMGC6zwSYw09v05Y+oRdQ9loC54zB1La3hHQ==";
       };
     };
     "bootstrap-vue-helper-json-1.1.1" = {
@@ -20120,13 +20165,13 @@ let
         sha512 = "bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==";
       };
     };
-    "caniuse-lite-1.0.30001412" = {
+    "caniuse-lite-1.0.30001418" = {
       name = "caniuse-lite";
       packageName = "caniuse-lite";
-      version = "1.0.30001412";
+      version = "1.0.30001418";
       src = fetchurl {
-        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001412.tgz";
-        sha512 = "+TeEIee1gS5bYOiuf+PS/kp2mrXic37Hl66VY6EAfxasIk5fELTktK2oOezYed12H8w7jt3s512PpulQidPjwA==";
+        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001418.tgz";
+        sha512 = "oIs7+JL3K9JRQ3jPZjlH6qyYDp+nBTCais7hjh0s+fuBwufc7uZ7hPYMXrDOJhV360KGMTcczMRObk0/iMqZRg==";
       };
     };
     "canvas-2.10.1" = {
@@ -20165,13 +20210,13 @@ let
         sha512 = "ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==";
       };
     };
-    "capture-stack-trace-1.0.1" = {
+    "capture-stack-trace-1.0.2" = {
       name = "capture-stack-trace";
       packageName = "capture-stack-trace";
-      version = "1.0.1";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz";
-        sha512 = "mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==";
+        url = "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.2.tgz";
+        sha512 = "X/WM2UQs6VMHUtjUDnZTRI+i1crWteJySFzr9UpGoQa4WQffXVTTXuekjl7TjZRlcF2XfjgITT0HxZ9RnxeT0w==";
       };
     };
     "cardinal-2.1.1" = {
@@ -20291,31 +20336,31 @@ let
         sha512 = "eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==";
       };
     };
-    "cdk8s-2.4.39" = {
+    "cdk8s-2.5.9" = {
       name = "cdk8s";
       packageName = "cdk8s";
-      version = "2.4.39";
+      version = "2.5.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cdk8s/-/cdk8s-2.4.39.tgz";
-        sha512 = "OhCsV8bh2dm2Fp8lhCgYEzHQolvXjQBBb+R9LDnsIDXiTFOHXhYQUlmI/K2jofWgxUlZ+Sm8PSMjygsJkj+GLQ==";
+        url = "https://registry.npmjs.org/cdk8s/-/cdk8s-2.5.9.tgz";
+        sha512 = "nrf4rdQ+mmHLE/Ap7NC+G8PEPXitDbVwbhfcHDykC1ZDmbDpXi7vjEVu/3F45T4tthykhKXPGBLj6Cz4la2iyA==";
       };
     };
-    "cdk8s-plus-22-2.0.0-rc.132" = {
+    "cdk8s-plus-22-2.0.0-rc.141" = {
       name = "cdk8s-plus-22";
       packageName = "cdk8s-plus-22";
-      version = "2.0.0-rc.132";
+      version = "2.0.0-rc.141";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cdk8s-plus-22/-/cdk8s-plus-22-2.0.0-rc.132.tgz";
-        sha512 = "zJkgHq7QJYAdVfg6PJkZZ9rbNgQ5o7DiItlacNNLv4dHh+WbM0Qayilj9+PniT8ebHsrDOTlSX/Wwm+tEEXEXA==";
+        url = "https://registry.npmjs.org/cdk8s-plus-22/-/cdk8s-plus-22-2.0.0-rc.141.tgz";
+        sha512 = "rKJFxOG9XCjQWsq3DostboSYdAF7B+Boq5ipHjVTsZDh8+zMxHOJvLpq4T8HGImKu+48PfQdd4iCQGKe5DrHLg==";
       };
     };
-    "cdktf-0.12.2" = {
+    "cdktf-0.13.0" = {
       name = "cdktf";
       packageName = "cdktf";
-      version = "0.12.2";
+      version = "0.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cdktf/-/cdktf-0.12.2.tgz";
-        sha512 = "eawyoDZexYsymjXpa0YOBI+blN+eri6QToJifuCkNVUtC5v/grfo2Ev4thvL0zxCKNeS/6XU0CifEz51L6t2QA==";
+        url = "https://registry.npmjs.org/cdktf/-/cdktf-0.13.0.tgz";
+        sha512 = "9eba2Gfvr2aqKJfGAQU0wmnFoNSduTVxy/W8bo4x1LjpeHPR/YK07Yb+zI2Ef76XFoGpRVC3wVMti+4BZE+4AQ==";
       };
     };
     "center-align-0.1.3" = {
@@ -20444,6 +20489,15 @@ let
         sha512 = "Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w==";
       };
     };
+    "chalk-5.1.0" = {
+      name = "chalk";
+      packageName = "chalk";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chalk/-/chalk-5.1.0.tgz";
+        sha512 = "56zD4khRTBoIyzUYAFgDDaPhUMN/fC/rySe6aZGqbj/VWiU2eI3l6ZLOtYGFZAV5v02mwPjtpzlrOveJiz5eZQ==";
+      };
+    };
     "chalk-template-0.4.0" = {
       name = "chalk-template";
       packageName = "chalk-template";
@@ -21587,6 +21641,15 @@ let
         sha512 = "OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==";
       };
     };
+    "cliui-8.0.1" = {
+      name = "cliui";
+      packageName = "cliui";
+      version = "8.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz";
+        sha512 = "BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==";
+      };
+    };
     "clivas-0.1.4" = {
       name = "clivas";
       packageName = "clivas";
@@ -22469,13 +22532,13 @@ let
         sha512 = "JJfP2saEKbQqvW+FI93OYUB4ByV5cizMpFMiiJI8xDbBvQvSkIk0VvQdn1CZ8mqAO8Loq2h0gYTYtDFUZUeERw==";
       };
     };
-    "commander-9.4.0" = {
+    "commander-9.4.1" = {
       name = "commander";
       packageName = "commander";
-      version = "9.4.0";
+      version = "9.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/commander/-/commander-9.4.0.tgz";
-        sha512 = "sRPT+umqkz90UA8M1yqYfnHlZA7fF6nSphDtxeywPZ49ysjxDQybzk13CL+mXekDRG92skbcqCLVovuCusNmFw==";
+        url = "https://registry.npmjs.org/commander/-/commander-9.4.1.tgz";
+        sha512 = "5EEkTNyHNGFPD2H+c/dXXfQZYa/scCKasxWcXJaWnNJ99pnQN9Vnmqow+p+PlFPE63Q6mThaZws1T+HxfpgtPw==";
       };
     };
     "commandpost-1.4.0" = {
@@ -22577,15 +22640,6 @@ let
         sha512 = "zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==";
       };
     };
-    "compare-semver-1.1.0" = {
-      name = "compare-semver";
-      packageName = "compare-semver";
-      version = "1.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/compare-semver/-/compare-semver-1.1.0.tgz";
-        sha512 = "AENcdfhxsMCzzl+QRdOwMQeA8tZBEEacAmA4pGPoyco27G9sIaM98WNYkcToC9O0wIx1vE+1ErmaM4t0/fXhMw==";
-      };
-    };
     "compare-version-0.1.2" = {
       name = "compare-version";
       packageName = "compare-version";
@@ -23036,13 +23090,13 @@ let
         sha512 = "xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==";
       };
     };
-    "constructs-10.1.115" = {
+    "constructs-10.1.124" = {
       name = "constructs";
       packageName = "constructs";
-      version = "10.1.115";
+      version = "10.1.124";
       src = fetchurl {
-        url = "https://registry.npmjs.org/constructs/-/constructs-10.1.115.tgz";
-        sha512 = "pX3LI9Tf9ltsf0Qm7RCTdht0seLi4mLwjLuQ0znvzk2S88dWIKZdhzjI2zraN2kjY1a3fByYWg4aK8/St3sS+Q==";
+        url = "https://registry.npmjs.org/constructs/-/constructs-10.1.124.tgz";
+        sha512 = "kDnRUYyn2zNda0Lx98kz9KLzS4hBCqi4mbg1AnRExF9sY3PHRQsex11cWClVmyqWFC+5HhR05k4l+0Tl/iNraQ==";
       };
     };
     "consume-http-header-1.0.0" = {
@@ -23667,31 +23721,31 @@ let
         sha512 = "UoGQ/cfzGYIuiq6Z7vWL1HfkE9U9IZ4Ub+0XSiJTCzvbZzgPA69oDF2f+lgJ6dFFLEdjW5O6svvoKzXX23xFkA==";
       };
     };
-    "core-js-3.25.3" = {
+    "core-js-3.25.5" = {
       name = "core-js";
       packageName = "core-js";
-      version = "3.25.3";
+      version = "3.25.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-js/-/core-js-3.25.3.tgz";
-        sha512 = "y1hvKXmPHvm5B7w4ln1S4uc9eV/O5+iFExSRUimnvIph11uaizFR8LFMdONN8hG3P2pipUfX4Y/fR8rAEtcHcQ==";
+        url = "https://registry.npmjs.org/core-js/-/core-js-3.25.5.tgz";
+        sha512 = "nbm6eZSjm+ZuBQxCUPQKQCoUEfFOXjUZ8dTTyikyKaWrTYmAVbykQfwsKE5dBK88u3QCkCrzsx/PPlKfhsvgpw==";
       };
     };
-    "core-js-compat-3.25.3" = {
+    "core-js-compat-3.25.5" = {
       name = "core-js-compat";
       packageName = "core-js-compat";
-      version = "3.25.3";
+      version = "3.25.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.25.3.tgz";
-        sha512 = "xVtYpJQ5grszDHEUU9O7XbjjcZ0ccX3LgQsyqSvTnjX97ZqEgn9F5srmrwwwMtbKzDllyFPL+O+2OFMl1lU4TQ==";
+        url = "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.25.5.tgz";
+        sha512 = "ovcyhs2DEBUIE0MGEKHP4olCUW/XYte3Vroyxuh38rD1wAO4dHohsovUC4eAOuzFxE6b+RXvBU3UZ9o0YhUTkA==";
       };
     };
-    "core-js-pure-3.25.3" = {
+    "core-js-pure-3.25.5" = {
       name = "core-js-pure";
       packageName = "core-js-pure";
-      version = "3.25.3";
+      version = "3.25.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.25.3.tgz";
-        sha512 = "T/7qvgv70MEvRkZ8p6BasLZmOVYKzOaWNBEHAU8FmveCJkl4nko2quqPQOmy6AJIp5MBanhz9no3A94NoRb0XA==";
+        url = "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.25.5.tgz";
+        sha512 = "oml3M22pHM+igfWHDfdLVq2ShWmjM2V4L+dQEBs0DWVIqEm9WHCwGAlZ6BmyBQGy5sFrJmcx+856D9lVKyGWYg==";
       };
     };
     "core-util-is-1.0.2" = {
@@ -23802,13 +23856,13 @@ let
         sha512 = "H/2gurFWVi7xXvCyvsWRLCMekl4tITJcX0QEsDMpzxtuxDyM59xLatYNg4s/k9AA/HdtCYfj2su8mgA0GSDLDA==";
       };
     };
-    "cosmiconfig-typescript-loader-4.1.0" = {
+    "cosmiconfig-typescript-loader-4.1.1" = {
       name = "cosmiconfig-typescript-loader";
       packageName = "cosmiconfig-typescript-loader";
-      version = "4.1.0";
+      version = "4.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-4.1.0.tgz";
-        sha512 = "HbWIuR5O+XO5Oj9SZ5bzgrD4nN+rfhrm2PMb0FVx+t+XIvC45n8F0oTNnztXtspWGw0i2IzHaUWFD5LzV1JB4A==";
+        url = "https://registry.npmjs.org/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-4.1.1.tgz";
+        sha512 = "9DHpa379Gp0o0Zefii35fcmuuin6q92FnLDffzdZ0l9tVd3nEobG3O+MZ06+kuBvFTSVScvNb/oHA13Nd4iipg==";
       };
     };
     "count-trailing-zeros-1.0.1" = {
@@ -24207,58 +24261,67 @@ let
         sha512 = "x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==";
       };
     };
-    "cspell-gitignore-6.10.1" = {
+    "cspell-dictionary-6.12.0" = {
+      name = "cspell-dictionary";
+      packageName = "cspell-dictionary";
+      version = "6.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cspell-dictionary/-/cspell-dictionary-6.12.0.tgz";
+        sha512 = "I2cXSdXndt9H7yXmJzLTjgui/SAPGghXwxFeibTbvF68gyQYD5fUXvOygEIPrOEySKlAIb+aouV77SgoURxMHw==";
+      };
+    };
+    "cspell-gitignore-6.12.0" = {
       name = "cspell-gitignore";
       packageName = "cspell-gitignore";
-      version = "6.10.1";
+      version = "6.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cspell-gitignore/-/cspell-gitignore-6.10.1.tgz";
-        sha512 = "g6320DFIyU56iSdPTF+LwoExvlCNptEXiArE3VmyyTYLXkIHWwFhjcZN43Nd5/eJNzVuuEen64yKtI2ZsTr4xw==";
+        url = "https://registry.npmjs.org/cspell-gitignore/-/cspell-gitignore-6.12.0.tgz";
+        sha512 = "gtsN2AAvqdE8CHVzpxsQcd/Wn5GAMTjzHpDXX71g/k8IJn743poGU06O0O1WSVAgK0fWTRsfg+V5OegA1TAo7A==";
       };
     };
-    "cspell-glob-6.10.1" = {
+    "cspell-glob-6.12.0" = {
       name = "cspell-glob";
       packageName = "cspell-glob";
-      version = "6.10.1";
+      version = "6.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cspell-glob/-/cspell-glob-6.10.1.tgz";
-        sha512 = "4P2B0BaKUtLwYOIif2rgmwxBnaj6WNhHhM6RDTAYGiestvRarb+NMr1KnMIhq6gDKu5mAeBVC5+/M4DUdNZ0Ww==";
+        url = "https://registry.npmjs.org/cspell-glob/-/cspell-glob-6.12.0.tgz";
+        sha512 = "Q0rMGTxDyFFPm1LmHYM0ziuxQt2aXgr8Oi1glA2s0dBs0hg1DexlAEoLwLiMDUwSTvibEKIidPzlrmZ1AUDWEg==";
       };
     };
-    "cspell-grammar-6.10.1" = {
+    "cspell-grammar-6.12.0" = {
       name = "cspell-grammar";
       packageName = "cspell-grammar";
-      version = "6.10.1";
+      version = "6.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cspell-grammar/-/cspell-grammar-6.10.1.tgz";
-        sha512 = "y4VbZudXBozJ98PH76t2HEkuZqZ5q3Opy2PpgSi1zHcyoVpG5CNpu4FQXO2T24AgA40M8a9cFW5mM9FdLlNUIA==";
+        url = "https://registry.npmjs.org/cspell-grammar/-/cspell-grammar-6.12.0.tgz";
+        sha512 = "WXcDiWJ2pTW0jHY0Bf0DW5s8A9S0a+2tsVZsNxE/0CR5P/8yDSnznE+59uok/JN+GXOKQ6VIaqAZA3/XjDZuuA==";
       };
     };
-    "cspell-io-6.10.1" = {
+    "cspell-io-6.12.0" = {
       name = "cspell-io";
       packageName = "cspell-io";
-      version = "6.10.1";
+      version = "6.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cspell-io/-/cspell-io-6.10.1.tgz";
-        sha512 = "fpZde2txupHfm/Cs2AfsoBJPaEjmIxR9lEFMEqp9JIB4ZQgvZsaND9dlUyqMDQiMStfCT/47OhTJQi+VfjnhRw==";
+        url = "https://registry.npmjs.org/cspell-io/-/cspell-io-6.12.0.tgz";
+        sha512 = "1faxDj2OMgq61w7GaiXZD7ytks6PksJlG484LMl2USv58jDky4i2lujJs1C/+aP97Box9EcdwzydHX9GpnqqCw==";
       };
     };
-    "cspell-lib-6.10.1" = {
+    "cspell-lib-6.12.0" = {
       name = "cspell-lib";
       packageName = "cspell-lib";
-      version = "6.10.1";
+      version = "6.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cspell-lib/-/cspell-lib-6.10.1.tgz";
-        sha512 = "h0pQ1OFckhqfjvhE6k1OhIpsuVABgXAFW+MjZhn1QB1awSkC6hrNekGXs6WNGngYC56pII6yk5uagokdwH9siQ==";
+        url = "https://registry.npmjs.org/cspell-lib/-/cspell-lib-6.12.0.tgz";
+        sha512 = "IKd2MzH/zoiXohc26Lqb1b8i+41Y2xGreyAe9ihv/7Z2dscGGVy7F/2taZvZK9kJIhaz33Yatxfx3htT6w0hqg==";
       };
     };
-    "cspell-trie-lib-6.10.1" = {
+    "cspell-trie-lib-6.12.0" = {
       name = "cspell-trie-lib";
       packageName = "cspell-trie-lib";
-      version = "6.10.1";
+      version = "6.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cspell-trie-lib/-/cspell-trie-lib-6.10.1.tgz";
-        sha512 = "3xu0Dyq+AhrivQ3p7FePLcmcjkeWfovlavFhRk/wwWHIMnnmj1q7emPa/BYbgzSMF917C940GbexczB9SujNxQ==";
+        url = "https://registry.npmjs.org/cspell-trie-lib/-/cspell-trie-lib-6.12.0.tgz";
+        sha512 = "SJOdb51Wy3ewaKfttZwc9NYOIXaKlhyr+ykYKBExj3qMfV1J4d4iDLE95FriaRcqnq6X/qEM9jUvZHlvadDk3A==";
       };
     };
     "csrf-3.1.0" = {
@@ -26547,13 +26610,13 @@ let
         sha512 = "fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==";
       };
     };
-    "default-require-extensions-3.0.0" = {
+    "default-require-extensions-3.0.1" = {
       name = "default-require-extensions";
       packageName = "default-require-extensions";
-      version = "3.0.0";
+      version = "3.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.0.tgz";
-        sha512 = "ek6DpXq/SCpvjhpFsLFRVtIxJCRw6fUR42lYMVZuUMK7n8eMz4Uh5clckdBjEpLhn/gEBZo7hDJnJcwdKLKQjg==";
+        url = "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.1.tgz";
+        sha512 = "eXTJmRbm2TIt9MgWTsOH1wEuhew6XGZcMeGKCtLedIg/NCsg1iBePXkceTdK4Fii7pzmN9tGsZhKzZ4h7O/fxw==";
       };
     };
     "default-resolution-2.0.0" = {
@@ -27033,13 +27096,13 @@ let
         sha512 = "LmVkry/oDShEgSZPNgqCIp2/TlqtExeGmymru3uCELnfyjY11IzpAproLYs+1X88fXO6DBoYP3ul2Xo2yz2j6A==";
       };
     };
-    "devtools-protocol-0.0.1019158" = {
+    "devtools-protocol-0.0.1045489" = {
       name = "devtools-protocol";
       packageName = "devtools-protocol";
-      version = "0.0.1019158";
+      version = "0.0.1045489";
       src = fetchurl {
-        url = "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1019158.tgz";
-        sha512 = "wvq+KscQ7/6spEV7czhnZc9RM/woz1AY+/Vpd8/h2HFMwJSdTliu7f/yr1A6vDdJfKICZsShqsYpEQbdhg8AFQ==";
+        url = "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1045489.tgz";
+        sha512 = "D+PTmWulkuQW4D1NTiCRCFxF7pQPn0hgp4YyX4wAQ6xYXKOadSWPR3ENGDQ47MW/Ewc9v2rpC/UEEGahgBYpSQ==";
       };
     };
     "devtools-protocol-0.0.901419" = {
@@ -28266,13 +28329,13 @@ let
         sha512 = "hDZWhCHZ1wu4P2g2RVsM2MjDmmJzhvcsXr5qHUSBJZXvuhJSunhbVsWoBXdIe0/yTa3RV4UaWpOmFmrVsKr0wA==";
       };
     };
-    "edge-runtime-1.1.0-beta.32" = {
+    "edge-runtime-1.1.0-beta.37" = {
       name = "edge-runtime";
       packageName = "edge-runtime";
-      version = "1.1.0-beta.32";
+      version = "1.1.0-beta.37";
       src = fetchurl {
-        url = "https://registry.npmjs.org/edge-runtime/-/edge-runtime-1.1.0-beta.32.tgz";
-        sha512 = "fbqqUF3OKynqtWgExhjyxXX2SwbkWuwmjUYhml3Sv8Y/vkrTxyTKrxS0MoxUy5sGPB3BBEtpopn36cQgwlOpAg==";
+        url = "https://registry.npmjs.org/edge-runtime/-/edge-runtime-1.1.0-beta.37.tgz";
+        sha512 = "IP0xYNmp0XXoXVnrAf/e67224ZkMUUBMyUUohVxWWI5XdyetIGRNWp3GifDy3LpbuE02yv42rgtoE+tm+whcLA==";
       };
     };
     "editor-1.0.0" = {
@@ -28374,13 +28437,13 @@ let
         sha512 = "icoRLHzFz/qxzDh/N4Pi2z4yVHurlsCAYQvsCSG7fCedJ4UJXBS6PoQyGH71IfcqKupcKeK7HX/NkyfG+v6vlQ==";
       };
     };
-    "electron-packager-15.5.2" = {
+    "electron-packager-16.0.0" = {
       name = "electron-packager";
       packageName = "electron-packager";
-      version = "15.5.2";
+      version = "16.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/electron-packager/-/electron-packager-15.5.2.tgz";
-        sha512 = "8zUdkSONn0jomu/efqoxApGzgqIb56ooMs671HeB/BXTPnWcWvqpEY08g16PL6ok2ymA5zPj8vmUszLrq99F0Q==";
+        url = "https://registry.npmjs.org/electron-packager/-/electron-packager-16.0.0.tgz";
+        sha512 = "7Ey4UUaHg3FYhA7ktsAvCWP8srp9+iPljGdeJBsNaZBakU6HWhvRC+Pc7LWXGCgAVIN5BQsUwR3xrCbFno91VA==";
       };
     };
     "electron-rebuild-3.2.9" = {
@@ -28392,13 +28455,13 @@ let
         sha512 = "FkEZNFViUem3P0RLYbZkUjC8LUFIK+wKq09GHoOITSJjfDAVQv964hwaNseTTWt58sITQX3/5fHNYcTefqaCWw==";
       };
     };
-    "electron-to-chromium-1.4.266" = {
+    "electron-to-chromium-1.4.275" = {
       name = "electron-to-chromium";
       packageName = "electron-to-chromium";
-      version = "1.4.266";
+      version = "1.4.275";
       src = fetchurl {
-        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.266.tgz";
-        sha512 = "saJTYECxUSv7eSpnXw0XIEvUkP9x4s/x2mm3TVX7k4rIFS6f5TjBih1B5h437WzIhHQjid+d8ouQzPQskMervQ==";
+        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.275.tgz";
+        sha512 = "aJeQQ+Hl9Jyyzv4chBqYJwmVRY46N5i2BEX5Cuyk/5gFCUZ5F3i7Hnba6snZftWla7Gglwc5pIgcd+E7cW+rPg==";
       };
     };
     "electrum-client-git+https://github.com/janoside/electrum-client" = {
@@ -28511,13 +28574,13 @@ let
         sha512 = "F9uKjyRsj7qjqZh7yjgHYa7XCgJgGI+nHTUqxkq/TDGuq0wLFbUX0wNes3XC6OA2j2Uu8PaeZD6hvCu5eO3lTA==";
       };
     };
-    "emoji-regex-10.1.0" = {
+    "emoji-regex-10.2.1" = {
       name = "emoji-regex";
       packageName = "emoji-regex";
-      version = "10.1.0";
+      version = "10.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.1.0.tgz";
-        sha512 = "xAEnNCT3w2Tg6MA7ly6QqYJvEoY1tm9iIjJ3yMKK9JPlWuRHAMoe5iETwQnx3M9TVbFMfsrBgWKR+IsmswwNjg==";
+        url = "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.2.1.tgz";
+        sha512 = "97g6QgOk8zlDRdgq1WxwgTMgEWGVAQvB5Fdpgc1MkNy56la5SKP9GsMXKDOdqwn90/41a8yPwIGk1Y6WVbeMQA==";
       };
     };
     "emoji-regex-7.0.3" = {
@@ -29070,13 +29133,13 @@ let
         sha512 = "rcOwbfvP1WTViVoUjcfZicVzjhjTuhSMntHh6mW3IrEiyE6mJyXvsToJUJGlGlw/2xU9P5whlWNGlIDVeCiT4A==";
       };
     };
-    "es-abstract-1.20.3" = {
+    "es-abstract-1.20.4" = {
       name = "es-abstract";
       packageName = "es-abstract";
-      version = "1.20.3";
+      version = "1.20.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.3.tgz";
-        sha512 = "AyrnaKVpMzljIdwjzrj+LxGmj8ik2LckwXacHqrJJ/jxz6dDDBcZ7I7nlHM0FvEW8MfbWJwOd+yT2XzYW49Frw==";
+        url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz";
+        sha512 = "0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==";
       };
     };
     "es-aggregate-error-1.0.8" = {
@@ -29286,13 +29349,13 @@ let
         sha512 = "+CvnDitD7Q5sT7F+FM65sWkF8wJRf+j9fPcprxYV4j+ohmzVj2W7caUqH2s5kCaCJAfcAICjSlKhDCcvDpU7nw==";
       };
     };
-    "esbuild-0.15.9" = {
+    "esbuild-0.15.10" = {
       name = "esbuild";
       packageName = "esbuild";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild/-/esbuild-0.15.9.tgz";
-        sha512 = "OnYr1rkMVxtmMHIAKZLMcEUlJmqcbxBz9QoBU8G9v455na0fuzlT/GLu6l+SRghrk0Mm2fSSciMmzV43Q8e0Gg==";
+        url = "https://registry.npmjs.org/esbuild/-/esbuild-0.15.10.tgz";
+        sha512 = "N7wBhfJ/E5fzn/SpNgX+oW2RLRjwaL8Y0ezqNqhjD6w0H2p0rDuEz2FKZqpqLnO8DCaWumKe8dsC/ljvVSSxng==";
       };
     };
     "esbuild-android-64-0.14.47" = {
@@ -29313,13 +29376,13 @@ let
         sha512 = "6FOuKTHnC86dtrKDmdSj2CkcKF8PnqkaIXqvgydqfJmqBazCPdw+relrMlhGjkvVdiiGV70rpdnyFmA65ekBCQ==";
       };
     };
-    "esbuild-android-64-0.15.9" = {
+    "esbuild-android-64-0.15.10" = {
       name = "esbuild-android-64";
       packageName = "esbuild-android-64";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.15.9.tgz";
-        sha512 = "HQCX7FJn9T4kxZQkhPjNZC7tBWZqJvhlLHPU2SFzrQB/7nDXjmTIFpFTjt7Bd1uFpeXmuwf5h5fZm+x/hLnhbw==";
+        url = "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.15.10.tgz";
+        sha512 = "UI7krF8OYO1N7JYTgLT9ML5j4+45ra3amLZKx7LO3lmLt1Ibn8t3aZbX5Pu4BjWiqDuJ3m/hsvhPhK/5Y/YpnA==";
       };
     };
     "esbuild-android-arm64-0.14.47" = {
@@ -29340,13 +29403,13 @@ let
         sha512 = "vBtp//5VVkZWmYYvHsqBRCMMi1MzKuMIn5XDScmnykMTu9+TD9v0NMEDqQxvtFToeYmojdo5UCV2vzMQWJcJ4A==";
       };
     };
-    "esbuild-android-arm64-0.15.9" = {
+    "esbuild-android-arm64-0.15.10" = {
       name = "esbuild-android-arm64";
       packageName = "esbuild-android-arm64";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.15.9.tgz";
-        sha512 = "E6zbLfqbFVCNEKircSHnPiSTsm3fCRxeIMPfrkS33tFjIAoXtwegQfVZqMGR0FlsvVxp2NEDOUz+WW48COCjSg==";
+        url = "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.15.10.tgz";
+        sha512 = "EOt55D6xBk5O05AK8brXUbZmoFj4chM8u3riGflLa6ziEoVvNjRdD7Cnp82NHQGfSHgYR06XsPI8/sMuA/cUwg==";
       };
     };
     "esbuild-darwin-64-0.14.47" = {
@@ -29367,13 +29430,13 @@ let
         sha512 = "YFmXPIOvuagDcwCejMRtCDjgPfnDu+bNeh5FU2Ryi68ADDVlWEpbtpAbrtf/lvFTWPexbgyKgzppNgsmLPr8PA==";
       };
     };
-    "esbuild-darwin-64-0.15.9" = {
+    "esbuild-darwin-64-0.15.10" = {
       name = "esbuild-darwin-64";
       packageName = "esbuild-darwin-64";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.15.9.tgz";
-        sha512 = "gI7dClcDN/HHVacZhTmGjl0/TWZcGuKJ0I7/xDGJwRQQn7aafZGtvagOFNmuOq+OBFPhlPv1T6JElOXb0unkSQ==";
+        url = "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.15.10.tgz";
+        sha512 = "hbDJugTicqIm+WKZgp208d7FcXcaK8j2c0l+fqSJ3d2AzQAfjEYDRM3Z2oMeqSJ9uFxyj/muSACLdix7oTstRA==";
       };
     };
     "esbuild-darwin-arm64-0.14.47" = {
@@ -29394,13 +29457,13 @@ let
         sha512 = "juYD0QnSKwAMfzwKdIF6YbueXzS6N7y4GXPDeDkApz/1RzlT42mvX9jgNmyOlWKN7YzQAYbcUEJmZJYQGdf2ow==";
       };
     };
-    "esbuild-darwin-arm64-0.15.9" = {
+    "esbuild-darwin-arm64-0.15.10" = {
       name = "esbuild-darwin-arm64";
       packageName = "esbuild-darwin-arm64";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.9.tgz";
-        sha512 = "VZIMlcRN29yg/sv7DsDwN+OeufCcoTNaTl3Vnav7dL/nvsApD7uvhVRbgyMzv0zU/PP0xRhhIpTyc7lxEzHGSw==";
+        url = "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.10.tgz";
+        sha512 = "M1t5+Kj4IgSbYmunf2BB6EKLkWUq+XlqaFRiGOk8bmBapu9bCDrxjf4kUnWn59Dka3I27EiuHBKd1rSO4osLFQ==";
       };
     };
     "esbuild-freebsd-64-0.14.47" = {
@@ -29421,13 +29484,13 @@ let
         sha512 = "cLEI/aXjb6vo5O2Y8rvVSQ7smgLldwYY5xMxqh/dQGfWO+R1NJOFsiax3IS4Ng300SVp7Gz3czxT6d6qf2cw0g==";
       };
     };
-    "esbuild-freebsd-64-0.15.9" = {
+    "esbuild-freebsd-64-0.15.10" = {
       name = "esbuild-freebsd-64";
       packageName = "esbuild-freebsd-64";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.9.tgz";
-        sha512 = "uM4z5bTvuAXqPxrI204txhlsPIolQPWRMLenvGuCPZTnnGlCMF2QLs0Plcm26gcskhxewYo9LkkmYSS5Czrb5A==";
+        url = "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.10.tgz";
+        sha512 = "KMBFMa7C8oc97nqDdoZwtDBX7gfpolkk6Bcmj6YFMrtCMVgoU/x2DI1p74DmYl7CSS6Ppa3xgemrLrr5IjIn0w==";
       };
     };
     "esbuild-freebsd-arm64-0.14.47" = {
@@ -29448,13 +29511,13 @@ let
         sha512 = "TcWVw/rCL2F+jUgRkgLa3qltd5gzKjIMGhkVybkjk6PJadYInPtgtUBp1/hG+mxyigaT7ib+od1Xb84b+L+1Mg==";
       };
     };
-    "esbuild-freebsd-arm64-0.15.9" = {
+    "esbuild-freebsd-arm64-0.15.10" = {
       name = "esbuild-freebsd-arm64";
       packageName = "esbuild-freebsd-arm64";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.9.tgz";
-        sha512 = "HHDjT3O5gWzicGdgJ5yokZVN9K9KG05SnERwl9nBYZaCjcCgj/sX8Ps1jvoFSfNCO04JSsHSOWo4qvxFuj8FoA==";
+        url = "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.10.tgz";
+        sha512 = "m2KNbuCX13yQqLlbSojFMHpewbn8wW5uDS6DxRpmaZKzyq8Dbsku6hHvh2U+BcLwWY4mpgXzFUoENEf7IcioGg==";
       };
     };
     "esbuild-linux-32-0.14.47" = {
@@ -29475,13 +29538,13 @@ let
         sha512 = "RFqpyC5ChyWrjx8Xj2K0EC1aN0A37H6OJfmUXIASEqJoHcntuV3j2Efr9RNmUhMfNE6yEj2VpYuDteZLGDMr0w==";
       };
     };
-    "esbuild-linux-32-0.15.9" = {
+    "esbuild-linux-32-0.15.10" = {
       name = "esbuild-linux-32";
       packageName = "esbuild-linux-32";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.15.9.tgz";
-        sha512 = "AQIdE8FugGt1DkcekKi5ycI46QZpGJ/wqcMr7w6YUmOmp2ohQ8eO4sKUsOxNOvYL7hGEVwkndSyszR6HpVHLFg==";
+        url = "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.15.10.tgz";
+        sha512 = "guXrwSYFAvNkuQ39FNeV4sNkNms1bLlA5vF1H0cazZBOLdLFIny6BhT+TUbK/hdByMQhtWQ5jI9VAmPKbVPu1w==";
       };
     };
     "esbuild-linux-64-0.14.47" = {
@@ -29502,13 +29565,13 @@ let
         sha512 = "dxjhrqo5i7Rq6DXwz5v+MEHVs9VNFItJmHBe1CxROWNf4miOGoQhqSG8StStbDkQ1Mtobg6ng+4fwByOhoQoeA==";
       };
     };
-    "esbuild-linux-64-0.15.9" = {
+    "esbuild-linux-64-0.15.10" = {
       name = "esbuild-linux-64";
       packageName = "esbuild-linux-64";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.9.tgz";
-        sha512 = "4RXjae7g6Qs7StZyiYyXTZXBlfODhb1aBVAjd+ANuPmMhWthQilWo7rFHwJwL7DQu1Fjej2sODAVwLbcIVsAYQ==";
+        url = "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.10.tgz";
+        sha512 = "jd8XfaSJeucMpD63YNMO1JCrdJhckHWcMv6O233bL4l6ogQKQOxBYSRP/XLWP+6kVTu0obXovuckJDcA0DKtQA==";
       };
     };
     "esbuild-linux-arm-0.14.47" = {
@@ -29529,13 +29592,13 @@ let
         sha512 = "LsJynDxYF6Neg7ZC7748yweCDD+N8ByCv22/7IAZglIEniEkqdF4HCaa49JNDLw1UQGlYuhOB8ZT/MmcSWzcWg==";
       };
     };
-    "esbuild-linux-arm-0.15.9" = {
+    "esbuild-linux-arm-0.15.10" = {
       name = "esbuild-linux-arm";
       packageName = "esbuild-linux-arm";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.15.9.tgz";
-        sha512 = "3Zf2GVGUOI7XwChH3qrnTOSqfV1V4CAc/7zLVm4lO6JT6wbJrTgEYCCiNSzziSju+J9Jhf9YGWk/26quWPC6yQ==";
+        url = "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.15.10.tgz";
+        sha512 = "6N8vThLL/Lysy9y4Ex8XoLQAlbZKUyExCWyayGi2KgTBelKpPgj6RZnUaKri0dHNPGgReJriKVU6+KDGQwn10A==";
       };
     };
     "esbuild-linux-arm64-0.14.47" = {
@@ -29556,13 +29619,13 @@ let
         sha512 = "D9rFxGutoqQX3xJPxqd6o+kvYKeIbM0ifW2y0bgKk5HPgQQOo2k9/2Vpto3ybGYaFPCE5qTGtqQta9PoP6ZEzw==";
       };
     };
-    "esbuild-linux-arm64-0.15.9" = {
+    "esbuild-linux-arm64-0.15.10" = {
       name = "esbuild-linux-arm64";
       packageName = "esbuild-linux-arm64";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.9.tgz";
-        sha512 = "a+bTtxJmYmk9d+s2W4/R1SYKDDAldOKmWjWP0BnrWtDbvUBNOm++du0ysPju4mZVoEFgS1yLNW+VXnG/4FNwdQ==";
+        url = "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.10.tgz";
+        sha512 = "GByBi4fgkvZFTHFDYNftu1DQ1GzR23jws0oWyCfhnI7eMOe+wgwWrc78dbNk709Ivdr/evefm2PJiUBMiusS1A==";
       };
     };
     "esbuild-linux-mips64le-0.14.47" = {
@@ -29583,13 +29646,13 @@ let
         sha512 = "vS54wQjy4IinLSlb5EIlLoln8buh1yDgliP4CuEHumrPk4PvvP4kTRIG4SzMXm6t19N0rIfT4bNdAxzJLg2k6A==";
       };
     };
-    "esbuild-linux-mips64le-0.15.9" = {
+    "esbuild-linux-mips64le-0.15.10" = {
       name = "esbuild-linux-mips64le";
       packageName = "esbuild-linux-mips64le";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.9.tgz";
-        sha512 = "Zn9HSylDp89y+TRREMDoGrc3Z4Hs5u56ozZLQCiZAUx2+HdbbXbWdjmw3FdTJ/i7t5Cew6/Q+6kfO3KCcFGlyw==";
+        url = "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.10.tgz";
+        sha512 = "BxP+LbaGVGIdQNJUNF7qpYjEGWb0YyHVSKqYKrn+pTwH/SiHUxFyJYSP3pqkku61olQiSBnSmWZ+YUpj78Tw7Q==";
       };
     };
     "esbuild-linux-ppc64le-0.14.47" = {
@@ -29610,13 +29673,13 @@ let
         sha512 = "xcdd62Y3VfGoyphNP/aIV9LP+RzFw5M5Z7ja+zdpQHHvokJM7d0rlDRMN+iSSwvUymQkqZO+G/xjb4/75du8BQ==";
       };
     };
-    "esbuild-linux-ppc64le-0.15.9" = {
+    "esbuild-linux-ppc64le-0.15.10" = {
       name = "esbuild-linux-ppc64le";
       packageName = "esbuild-linux-ppc64le";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.9.tgz";
-        sha512 = "OEiOxNAMH9ENFYqRsWUj3CWyN3V8P3ZXyfNAtX5rlCEC/ERXrCEFCJji/1F6POzsXAzxvUJrTSTCy7G6BhA6Fw==";
+        url = "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.10.tgz";
+        sha512 = "LoSQCd6498PmninNgqd/BR7z3Bsk/mabImBWuQ4wQgmQEeanzWd5BQU2aNi9mBURCLgyheuZS6Xhrw5luw3OkQ==";
       };
     };
     "esbuild-linux-riscv64-0.14.47" = {
@@ -29637,13 +29700,13 @@ let
         sha512 = "syXHGak9wkAnFz0gMmRBoy44JV0rp4kVCEA36P5MCeZcxFq8+fllBC2t6sKI23w3qd8Vwo9pTADCgjTSf3L3rA==";
       };
     };
-    "esbuild-linux-riscv64-0.15.9" = {
+    "esbuild-linux-riscv64-0.15.10" = {
       name = "esbuild-linux-riscv64";
       packageName = "esbuild-linux-riscv64";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.9.tgz";
-        sha512 = "ukm4KsC3QRausEFjzTsOZ/qqazw0YvJsKmfoZZm9QW27OHjk2XKSQGGvx8gIEswft/Sadp03/VZvAaqv5AIwNA==";
+        url = "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.10.tgz";
+        sha512 = "Lrl9Cr2YROvPV4wmZ1/g48httE8z/5SCiXIyebiB5N8VT7pX3t6meI7TQVHw/wQpqP/AF4SksDuFImPTM7Z32Q==";
       };
     };
     "esbuild-linux-s390x-0.14.47" = {
@@ -29664,13 +29727,13 @@ let
         sha512 = "kFAJY3dv+Wq8o28K/C7xkZk/X34rgTwhknSsElIqoEo8armCOjMJ6NsMxm48KaWY2h2RUYGtQmr+RGuUPKBhyw==";
       };
     };
-    "esbuild-linux-s390x-0.15.9" = {
+    "esbuild-linux-s390x-0.15.10" = {
       name = "esbuild-linux-s390x";
       packageName = "esbuild-linux-s390x";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.9.tgz";
-        sha512 = "uDOQEH55wQ6ahcIKzQr3VyjGc6Po/xblLGLoUk3fVL1qjlZAibtQr6XRfy5wPJLu/M2o0vQKLq4lyJ2r1tWKcw==";
+        url = "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.10.tgz";
+        sha512 = "ReP+6q3eLVVP2lpRrvl5EodKX7EZ1bS1/z5j6hsluAlZP5aHhk6ghT6Cq3IANvvDdscMMCB4QEbI+AjtvoOFpA==";
       };
     };
     "esbuild-netbsd-64-0.14.47" = {
@@ -29691,13 +29754,13 @@ let
         sha512 = "ZZBI7qrR1FevdPBVHz/1GSk1x5GDL/iy42Zy8+neEm/HA7ma+hH/bwPEjeHXKWUDvM36CZpSL/fn1/y9/Hb+1A==";
       };
     };
-    "esbuild-netbsd-64-0.15.9" = {
+    "esbuild-netbsd-64-0.15.10" = {
       name = "esbuild-netbsd-64";
       packageName = "esbuild-netbsd-64";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.9.tgz";
-        sha512 = "yWgxaYTQz+TqX80wXRq6xAtb7GSBAp6gqLKfOdANg9qEmAI1Bxn04IrQr0Mzm4AhxvGKoHzjHjMgXbCCSSDxcw==";
+        url = "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.10.tgz";
+        sha512 = "iGDYtJCMCqldMskQ4eIV+QSS/CuT7xyy9i2/FjpKvxAuCzrESZXiA1L64YNj6/afuzfBe9i8m/uDkFHy257hTw==";
       };
     };
     "esbuild-openbsd-64-0.14.47" = {
@@ -29718,13 +29781,13 @@ let
         sha512 = "7R1/p39M+LSVQVgDVlcY1KKm6kFKjERSX1lipMG51NPcspJD1tmiZSmmBXoY5jhHIu6JL1QkFDTx94gMYK6vfA==";
       };
     };
-    "esbuild-openbsd-64-0.15.9" = {
+    "esbuild-openbsd-64-0.15.10" = {
       name = "esbuild-openbsd-64";
       packageName = "esbuild-openbsd-64";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.9.tgz";
-        sha512 = "JmS18acQl4iSAjrEha1MfEmUMN4FcnnrtTaJ7Qg0tDCOcgpPPQRLGsZqhes0vmx8VA6IqRyScqXvaL7+Q0Uf3A==";
+        url = "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.10.tgz";
+        sha512 = "ftMMIwHWrnrYnvuJQRJs/Smlcb28F9ICGde/P3FUTCgDDM0N7WA0o9uOR38f5Xe2/OhNCgkjNeb7QeaE3cyWkQ==";
       };
     };
     "esbuild-sunos-64-0.14.47" = {
@@ -29745,13 +29808,13 @@ let
         sha512 = "HoHaCswHxLEYN8eBTtyO0bFEWvA3Kdb++hSQ/lLG7TyKF69TeSG0RNoBRAs45x/oCeWaTDntEZlYwAfQlhEtJA==";
       };
     };
-    "esbuild-sunos-64-0.15.9" = {
+    "esbuild-sunos-64-0.15.10" = {
       name = "esbuild-sunos-64";
       packageName = "esbuild-sunos-64";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.15.9.tgz";
-        sha512 = "UKynGSWpzkPmXW3D2UMOD9BZPIuRaSqphxSCwScfEE05Be3KAmvjsBhht1fLzKpiFVJb0BYMd4jEbWMyJ/z1hQ==";
+        url = "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.15.10.tgz";
+        sha512 = "mf7hBL9Uo2gcy2r3rUFMjVpTaGpFJJE5QTDDqUFf1632FxteYANffDZmKbqX0PfeQ2XjUDE604IcE7OJeoHiyg==";
       };
     };
     "esbuild-windows-32-0.14.47" = {
@@ -29772,13 +29835,13 @@ let
         sha512 = "4rtwSAM35A07CBt1/X8RWieDj3ZUHQqUOaEo5ZBs69rt5WAFjP4aqCIobdqOy4FdhYw1yF8Z0xFBTyc9lgPtEg==";
       };
     };
-    "esbuild-windows-32-0.15.9" = {
+    "esbuild-windows-32-0.15.10" = {
       name = "esbuild-windows-32";
       packageName = "esbuild-windows-32";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.15.9.tgz";
-        sha512 = "aqXvu4/W9XyTVqO/hw3rNxKE1TcZiEYHPsXM9LwYmKSX9/hjvfIJzXwQBlPcJ/QOxedfoMVH0YnhhQ9Ffb0RGA==";
+        url = "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.15.10.tgz";
+        sha512 = "ttFVo+Cg8b5+qHmZHbEc8Vl17kCleHhLzgT8X04y8zudEApo0PxPg9Mz8Z2cKH1bCYlve1XL8LkyXGFjtUYeGg==";
       };
     };
     "esbuild-windows-64-0.14.47" = {
@@ -29799,13 +29862,13 @@ let
         sha512 = "HoN/5HGRXJpWODprGCgKbdMvrC3A2gqvzewu2eECRw2sYxOUoh2TV1tS+G7bHNapPGI79woQJGV6pFH7GH7qnA==";
       };
     };
-    "esbuild-windows-64-0.15.9" = {
+    "esbuild-windows-64-0.15.10" = {
       name = "esbuild-windows-64";
       packageName = "esbuild-windows-64";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.15.9.tgz";
-        sha512 = "zm7h91WUmlS4idMtjvCrEeNhlH7+TNOmqw5dJPJZrgFaxoFyqYG6CKDpdFCQXdyKpD5yvzaQBOMVTCBVKGZDEg==";
+        url = "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.15.10.tgz";
+        sha512 = "2H0gdsyHi5x+8lbng3hLbxDWR7mKHWh5BXZGKVG830KUmXOOWFE2YKJ4tHRkejRduOGDrBvHBriYsGtmTv3ntA==";
       };
     };
     "esbuild-windows-arm64-0.14.47" = {
@@ -29826,13 +29889,13 @@ let
         sha512 = "JQDqPjuOH7o+BsKMSddMfmVJXrnYZxXDHsoLHc0xgmAZkOOCflRmC43q31pk79F9xuyWY45jDBPolb5ZgGOf9g==";
       };
     };
-    "esbuild-windows-arm64-0.15.9" = {
+    "esbuild-windows-arm64-0.15.10" = {
       name = "esbuild-windows-arm64";
       packageName = "esbuild-windows-arm64";
-      version = "0.15.9";
+      version = "0.15.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.9.tgz";
-        sha512 = "yQEVIv27oauAtvtuhJVfSNMztJJX47ismRS6Sv2QMVV9RM+6xjbMWuuwM2nxr5A2/gj/mu2z9YlQxiwoFRCfZA==";
+        url = "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.10.tgz";
+        sha512 = "S+th4F+F8VLsHLR0zrUcG+Et4hx0RKgK1eyHc08kztmLOES8BWwMiaGdoW9hiXuzznXQ0I/Fg904MNbr11Nktw==";
       };
     };
     "esc-exit-3.0.0" = {
@@ -31059,13 +31122,13 @@ let
         sha512 = "/wSgNMxFusiYRy1rd19LT2SQlIXDppHpumpWo06wxjflD1OYxDLbl6rMVw+U3bxD5Nuhex4TKqv9Aem4D0lVzQ==";
       };
     };
-    "expo-46.0.13" = {
+    "expo-46.0.15" = {
       name = "expo";
       packageName = "expo";
-      version = "46.0.13";
+      version = "46.0.15";
       src = fetchurl {
-        url = "https://registry.npmjs.org/expo/-/expo-46.0.13.tgz";
-        sha512 = "xaU8GlJ7j3vo1U5tSbFDsoJqUfTkRF4XDEUj/Dr/jqUf0GcvlMKuGe6HvnbMO9slxYQlYlWJUzvlAx38TLhxyA==";
+        url = "https://registry.npmjs.org/expo/-/expo-46.0.15.tgz";
+        sha512 = "/uZLQgXKni/rLoJPUESte901Z8owZH4weItLGhac2T37zZEUHIqcWdI/1+BaN8Racz9x54PzgbIMh09QMgv9mQ==";
       };
     };
     "expo-application-4.2.2" = {
@@ -31149,13 +31212,13 @@ let
         sha512 = "S8qfaXCv//7tQWV9M+JKx3CF7ypYhDdSUbkUQdaVO/r8D76/aRTArY/aRw1yEfaAOzyK8C8diDToV1itl51DfQ==";
       };
     };
-    "expo-modules-core-0.11.5" = {
+    "expo-modules-core-0.11.7" = {
       name = "expo-modules-core";
       packageName = "expo-modules-core";
-      version = "0.11.5";
+      version = "0.11.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/expo-modules-core/-/expo-modules-core-0.11.5.tgz";
-        sha512 = "KmTHtaL21M1AzKOmu3YM5K8ddCbbr6wgooG4uCb+o+7zZXe+BPP4jAPs5LLez1Et34OQcyjopxUpJ8r43HImvQ==";
+        url = "https://registry.npmjs.org/expo-modules-core/-/expo-modules-core-0.11.7.tgz";
+        sha512 = "lTH6MYULX99JK3zN4bhjRD3I9Y1CGx0RAhpZ6gCTO8GQ/DNw4xZRUwburKL9dJeZM5G1xJOcGoBkTfeMjUVe+g==";
       };
     };
     "expo-pwa-0.0.123" = {
@@ -32832,15 +32895,6 @@ let
         sha512 = "ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==";
       };
     };
-    "firebase-frameworks-0.4.2" = {
-      name = "firebase-frameworks";
-      packageName = "firebase-frameworks";
-      version = "0.4.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/firebase-frameworks/-/firebase-frameworks-0.4.2.tgz";
-        sha512 = "a3xNE3wPh8JWq2WOgWlSypVS9O/y/3/3Im9EV7bNBF44wFV2oOAyFdVgDk6it81+lBRv7ci8PttgQZohtsFeVA==";
-      };
-    };
     "firefox-profile-4.2.2" = {
       name = "firefox-profile";
       packageName = "firefox-profile";
@@ -32985,13 +33039,13 @@ let
         sha512 = "d+9na7t9FyH8gBJoNDSi28mE4NgQVGGvxQ4aHtFRetjyh5SXjuus+V5EZaxFmFdXVemSOrx0lsgEl/ZMjnOWJA==";
       };
     };
-    "flow-parser-0.187.1" = {
+    "flow-parser-0.188.2" = {
       name = "flow-parser";
       packageName = "flow-parser";
-      version = "0.187.1";
+      version = "0.188.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/flow-parser/-/flow-parser-0.187.1.tgz";
-        sha512 = "ZvlTeakTTMmYGukt4EIQtLEp4ie45W+jK325uukGgiqFg2Rl7TdpOJQbOLUN2xMeGS+WvXaK0uIJ3coPGDXFGQ==";
+        url = "https://registry.npmjs.org/flow-parser/-/flow-parser-0.188.2.tgz";
+        sha512 = "Qnvihm7h4YDgFVQV2h0TcLE421D20/giBg93Dtobj+CHRnZ39vmsbDPM9IenUBtZuY0vWRiJp6slOv7dvmlKbg==";
       };
     };
     "fluent-ffmpeg-2.1.2" = {
@@ -33372,13 +33426,13 @@ let
         sha512 = "qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A==";
       };
     };
-    "form-data-encoder-2.1.2" = {
+    "form-data-encoder-2.1.3" = {
       name = "form-data-encoder";
       packageName = "form-data-encoder";
-      version = "2.1.2";
+      version = "2.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-2.1.2.tgz";
-        sha512 = "FCaIOVTRA9E0siY6FeXid7D5yrCqpsErplUkE2a1BEiKj1BE9z6FbKB4ntDTwC4NVLie9p+4E9nX4mWwEOT05A==";
+        url = "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-2.1.3.tgz";
+        sha512 = "KqU0nnPMgIJcCOFTNJFEA8epcseEaoox4XZffTgy8jlI6pL/5EFyR54NRG7CnCJN0biY7q52DO3MH6/sJ/TKlQ==";
       };
     };
     "form-urlencoded-4.5.1" = {
@@ -35371,15 +35425,6 @@ let
         sha512 = "WPkN4yGtz05WZ5EhtlxNDWPhC4JIic6G8ePitwUWy4l+XPVYec+a0j0Ts47PDtW59y3RwAhUd9/h9ZZ63px6RQ==";
       };
     };
-    "googleapis-105.0.0" = {
-      name = "googleapis";
-      packageName = "googleapis";
-      version = "105.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/googleapis/-/googleapis-105.0.0.tgz";
-        sha512 = "wH/jU/6QpqwsjTKj4vfKZz97ne7xT7BBbKwzQEwnbsG8iH9Seyw19P+AuLJcxNNrmgblwLqfr3LORg4Okat1BQ==";
-      };
-    };
     "googleapis-84.0.0" = {
       name = "googleapis";
       packageName = "googleapis";
@@ -35398,15 +35443,6 @@ let
         sha512 = "RXrif+Gzhq1QAzfjxulbGvAY3FPj8zq/CYcvgjzDbaBNCD6bUl+86I7mUs4DKWHGruuK26ijjR/eDpWIDgNROA==";
       };
     };
-    "googleapis-common-6.0.3" = {
-      name = "googleapis-common";
-      packageName = "googleapis-common";
-      version = "6.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/googleapis-common/-/googleapis-common-6.0.3.tgz";
-        sha512 = "Xyb4FsQ6PQDu4tAE/M/ev4yzZhFe2Gc7+rKmuCX2ZGk1ajBKbafsGlVYpmzGqQOT93BRDe8DiTmQb6YSkbICrA==";
-      };
-    };
     "goosig-0.10.0" = {
       name = "goosig";
       packageName = "goosig";
@@ -35569,6 +35605,15 @@ let
         sha512 = "K+KdzTNKNqgeBM7sdzwepKCQxHMWqxOu52z7vUe/FQcTxH+XbTvYHrA86Htgwmhaz7pO5d8TuIXeejfBOo3jsw==";
       };
     };
+    "grammy-1.11.2" = {
+      name = "grammy";
+      packageName = "grammy";
+      version = "1.11.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/grammy/-/grammy-1.11.2.tgz";
+        sha512 = "R6NlxOAfd3H4eMBU96ARi/kwZXzc3Z8Pj/g7cxmclPsxSXTHItRkY8eagS1Ol1l/CxCkEvQzHslIE9/dZSrqTQ==";
+      };
+    };
     "grant-4.7.0" = {
       name = "grant";
       packageName = "grant";
@@ -35605,13 +35650,13 @@ let
         sha512 = "jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==";
       };
     };
-    "graphology-0.24.1" = {
+    "graphology-0.25.0" = {
       name = "graphology";
       packageName = "graphology";
-      version = "0.24.1";
+      version = "0.25.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graphology/-/graphology-0.24.1.tgz";
-        sha512 = "6lNz1PNTAe9Q6ioHKrXu0Lp047sgvOoHa4qmP/8mnJWCGv2iIZPQkuHPUb2/OWDWCqHpw2hKgJLJ55X/66xmHg==";
+        url = "https://registry.npmjs.org/graphology/-/graphology-0.25.0.tgz";
+        sha512 = "z0uwplYrhnQ2iwlqJZyd6CX0Xb9AIVNzK6N0MZouYCQBqMqz36s7YmEqqhuRj0ap7F/LX3dQjeWWRIkTkaGfEA==";
       };
     };
     "graphology-types-0.21.2" = {
@@ -35704,13 +35749,13 @@ let
         sha512 = "Uiu3X7+s5c056WyrvdZVz2vG1fhAipMlYmtiCU/4Z2mX79OXDr1SqIon2MprC/pExIWJfAQZCcjYDY76fPBUQg==";
       };
     };
-    "graphql-config-4.3.5" = {
+    "graphql-config-4.3.6" = {
       name = "graphql-config";
       packageName = "graphql-config";
-      version = "4.3.5";
+      version = "4.3.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graphql-config/-/graphql-config-4.3.5.tgz";
-        sha512 = "B4jXhHL7j3llCem+ACeo48wvVYhtJxRyt5SfSnvywbRlVYyUzt5ibZV6WJU2Yii2/rcVRIGi7BHDgcAPWdWdJg==";
+        url = "https://registry.npmjs.org/graphql-config/-/graphql-config-4.3.6.tgz";
+        sha512 = "i7mAPwc0LAZPnYu2bI8B6yXU5820Wy/ArvmOseDLZIu0OU1UTULEuexHo6ZcHXeT9NvGGaUPQZm8NV3z79YydA==";
       };
     };
     "graphql-language-service-5.1.0" = {
@@ -37657,15 +37702,6 @@ let
         sha512 = "J7J9wu9SpJvsOZHzqMQOzJjbuX1OqW3R35Z++z14H91o7VyUWH5YkW5FMExGFrjuBQ5C+54vF9tK3Gny0SgsSA==";
       };
     };
-    "http-status-1.5.2" = {
-      name = "http-status";
-      packageName = "http-status";
-      version = "1.5.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/http-status/-/http-status-1.5.2.tgz";
-        sha512 = "HzxX+/hV/8US1Gq4V6R6PgUmJ5Pt/DGATs4QhdEOpG8LrdS9/3UG2nnOvkqUpRks04yjVtV5p/NODjO+wvf6vg==";
-      };
-    };
     "http-status-1.5.3" = {
       name = "http-status";
       packageName = "http-status";
@@ -38791,6 +38827,15 @@ let
         sha512 = "Hj2Ml1WpxKJU2npP2Rj0OURGkHV+GtNW2CwFdHDiXlqUBAUrWTcZHxCkFywX/XHzOS7wrG/kExgJFbUkVgyHzg==";
       };
     };
+    "inquirer-9.1.3" = {
+      name = "inquirer";
+      packageName = "inquirer";
+      version = "9.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inquirer/-/inquirer-9.1.3.tgz";
+        sha512 = "3OoUzit8tEebW4tpIZUXPRvcGNm4xhGeQp+GpdupDiz2OdWAqjO50EoeVOXx1Z91M0GLe6d16jJUArIhI/cNPQ==";
+      };
+    };
     "inquirer-autocomplete-prompt-1.4.0" = {
       name = "inquirer-autocomplete-prompt";
       packageName = "inquirer-autocomplete-prompt";
@@ -38800,13 +38845,13 @@ let
         sha512 = "qHgHyJmbULt4hI+kCmwX92MnSxDs/Yhdt4wPA30qnoa01OF6uTXV8yvH4hKXgdaTNmkZ9D01MHjqKYEuJN+ONw==";
       };
     };
-    "inquirer-autocomplete-prompt-2.0.0" = {
+    "inquirer-autocomplete-prompt-3.0.0" = {
       name = "inquirer-autocomplete-prompt";
       packageName = "inquirer-autocomplete-prompt";
-      version = "2.0.0";
+      version = "3.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/inquirer-autocomplete-prompt/-/inquirer-autocomplete-prompt-2.0.0.tgz";
-        sha512 = "c2LljLP3ewVJe4AUZzKdA6oWjqhpy5pfsisHAjh7mP3WUQ/O02x5OLMMqcLOYuRHx6i2hlVSIhUv0xYGyFxFYA==";
+        url = "https://registry.npmjs.org/inquirer-autocomplete-prompt/-/inquirer-autocomplete-prompt-3.0.0.tgz";
+        sha512 = "nsPWllBQB3qhvpVgV1UIJN4xo3yz7Qv8y1+zrNVpJUNPxtUZ7btCum/4UCAs5apPCe/FVhKH1V6Wx0cAwkreyg==";
       };
     };
     "inquirer-autocomplete-prompt-ipt-2.0.0" = {
@@ -39133,13 +39178,13 @@ let
         sha512 = "uVe0WdHGdhkKubfrH1rSC/RpFREC7D0dh1IHxEgmUhV1lhn2+1UFVUxhri4dGyklBgIi+DNzE8q3665PF8z5Vw==";
       };
     };
-    "io-ts-2.2.18" = {
+    "io-ts-2.2.19" = {
       name = "io-ts";
       packageName = "io-ts";
-      version = "2.2.18";
+      version = "2.2.19";
       src = fetchurl {
-        url = "https://registry.npmjs.org/io-ts/-/io-ts-2.2.18.tgz";
-        sha512 = "3JxUUzRtPQPs5sOwB7pW0+Xb54nOzqA6M1sRB1hwgsRmkWMeGTjtOrCynGTJhIj+mBLUj2S37DAq2+BrPh9kTQ==";
+        url = "https://registry.npmjs.org/io-ts/-/io-ts-2.2.19.tgz";
+        sha512 = "ED0GQwvKRr5C2jqOOJCkuJW2clnbzqFexQ8V7Qsb+VB36S1Mk/OKH7k0FjSe4mjKy9qBRA3OqgVGyFMUEKIubw==";
       };
     };
     "ioredis-4.28.5" = {
@@ -41482,13 +41527,13 @@ let
         sha512 = "b2Zna/wGIyTzi0Gemg27JYUaRyTyBETw5GnqyVQMr71uojOYMrgkD2+Px3bG2ZFi7/zTUXJSDoGoBOhMixq7tg==";
       };
     };
-    "joi-17.6.1" = {
+    "joi-17.6.2" = {
       name = "joi";
       packageName = "joi";
-      version = "17.6.1";
+      version = "17.6.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/joi/-/joi-17.6.1.tgz";
-        sha512 = "Hl7/iBklIX345OCM1TiFSCZRVaAOLDGlWCp0Df2vWYgBgjkezaR7Kvm3joBciBHQjZj5sxXs859r6eqsRSlG8w==";
+        url = "https://registry.npmjs.org/joi/-/joi-17.6.2.tgz";
+        sha512 = "+gqqdh1xc1wb+Lor0J9toqgeReyDOCqOdG8QSdRcEvwrcRiFQZneUCGKjFjuyBWUb3uaFOgY56yMaZ5FIc+H4w==";
       };
     };
     "join-async-iterator-1.1.1" = {
@@ -41690,6 +41735,15 @@ let
         sha512 = "Y2/yD55y5jteOAmY50JbUZYwk3CP3wnLPEZnlR1w9oKhITrBEtAxwuWKebFf8hMrPMgbYwFoWK/lH2sBkErELw==";
       };
     };
+    "js-sdsl-4.1.5" = {
+      name = "js-sdsl";
+      packageName = "js-sdsl";
+      version = "4.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.1.5.tgz";
+        sha512 = "08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q==";
+      };
+    };
     "js-sha256-0.9.0" = {
       name = "js-sha256";
       packageName = "js-sha256";
@@ -41987,13 +42041,13 @@ let
         sha512 = "zAvvzRShVMmUxNRLtbR4HShGEn17kyiED5XSo1CrVu4JzG6I7YEtYO1WrNFe1XTh76Bbi4OoamZm3Um91DPtXg==";
       };
     };
-    "jsii-srcmak-0.1.688" = {
+    "jsii-srcmak-0.1.695" = {
       name = "jsii-srcmak";
       packageName = "jsii-srcmak";
-      version = "0.1.688";
+      version = "0.1.695";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii-srcmak/-/jsii-srcmak-0.1.688.tgz";
-        sha512 = "JOJ62n+SPw8X0ImnTYfIZGKu/byXy1yyOpUTBX2Ad8yTPLoQB6016eOirSEq++dU+RqfjjihUb8vaZb1HiHNwA==";
+        url = "https://registry.npmjs.org/jsii-srcmak/-/jsii-srcmak-0.1.695.tgz";
+        sha512 = "LWn8LhJhwNYVB+kc21wKUdQgTJMoqiYiRitBJYlqHb7yjL/g34h2NAtcRNVOLBOwVpmilBSRsyJd5jxFqjYqFA==";
       };
     };
     "json-bigint-1.0.0" = {
@@ -42329,13 +42383,13 @@ let
         sha512 = "YRZbUnyaJZLZUJSRi2G/MqahCyRv9n/ds+4oIetjDF3jWQA7AG7iSeKTiZiCNqtMZM7HDyt0e/W6lEnoGEmMGA==";
       };
     };
-    "json2jsii-0.3.135" = {
+    "json2jsii-0.3.144" = {
       name = "json2jsii";
       packageName = "json2jsii";
-      version = "0.3.135";
+      version = "0.3.144";
       src = fetchurl {
-        url = "https://registry.npmjs.org/json2jsii/-/json2jsii-0.3.135.tgz";
-        sha512 = "9240tF15g1f2MIhGVc7xuQr8gUlELaYN1f9y+KPGCG8t4tkznL0n8g5vHvr5rgw7pExwX3/e2uy5US0HbkdgFA==";
+        url = "https://registry.npmjs.org/json2jsii/-/json2jsii-0.3.144.tgz";
+        sha512 = "VXL3y91qdtBLd4lH8vJ1I3xI+H7xHb3dwZacmb6szAaLcmnHvUhX9klSHiqeGpwANvM8KP7VWoFX+3evK9wRCA==";
       };
     };
     "json3-3.2.6" = {
@@ -43481,22 +43535,22 @@ let
         sha512 = "taeidSNMbF4AuUXjoFStT5CSTknicaKqu+0vrw7gYEMrpQgG74BEzlS0BGYmxW20JdGm2gpm7jtZ542ZG/h8tA==";
       };
     };
-    "launchdarkly-js-sdk-common-4.1.0" = {
+    "launchdarkly-js-sdk-common-4.2.0" = {
       name = "launchdarkly-js-sdk-common";
       packageName = "launchdarkly-js-sdk-common";
-      version = "4.1.0";
+      version = "4.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/launchdarkly-js-sdk-common/-/launchdarkly-js-sdk-common-4.1.0.tgz";
-        sha512 = "vgHcYcXsFYewBOcuMR1eO3gSaOEaaHab16Yz35UDk2r4gO/HzMjfmmMEWZIu5v4tMtcO8Loy+SnjyaPFYOJ31Q==";
+        url = "https://registry.npmjs.org/launchdarkly-js-sdk-common/-/launchdarkly-js-sdk-common-4.2.0.tgz";
+        sha512 = "JpM44VQWbewbAPVm284NfZ79AMKxwE48luT9qvwvXzQZqIHBd3rTa5SRPV8+AzAo76aPyndGDcolw7LFk5bTPA==";
       };
     };
-    "launchdarkly-node-client-sdk-2.0.4" = {
+    "launchdarkly-node-client-sdk-2.1.0" = {
       name = "launchdarkly-node-client-sdk";
       packageName = "launchdarkly-node-client-sdk";
-      version = "2.0.4";
+      version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/launchdarkly-node-client-sdk/-/launchdarkly-node-client-sdk-2.0.4.tgz";
-        sha512 = "s1kfn0aBDuLmjnII6fij+KyR/l4v1zsypS60bA0YP+wvPYDBbLF1KrV2udkSq5dctt2UopoAf6Z00DEZ2BSMng==";
+        url = "https://registry.npmjs.org/launchdarkly-node-client-sdk/-/launchdarkly-node-client-sdk-2.1.0.tgz";
+        sha512 = "lNU8dWyhYRIMzgxEvekzDPQ8Jz4BcL3kicQT4+CSngnu9Rt/XQlMTRjcTGkvrOT7S5QoGl8xPQ9VFm9V6NEcWg==";
       };
     };
     "layered-graph-1.2.0" = {
@@ -43994,13 +44048,13 @@ let
         sha512 = "Rha4U1yZS/SHwW/GJ+IeEaxI6vqJ1bx/upQkY5RIZNCn4YoMvqd4inQUt9GNtuLy/pXus8Bms4DL2B9DkujBKQ==";
       };
     };
-    "lightning-6.1.1" = {
+    "lightning-6.2.0" = {
       name = "lightning";
       packageName = "lightning";
-      version = "6.1.1";
+      version = "6.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/lightning/-/lightning-6.1.1.tgz";
-        sha512 = "DfRwLkF7HaXos2iJYi/9KhN09RFDeLGfMWj3nSJ7h8ckNdufwGrgDTN5t+O+u0vXxdzrOwlsOZ1t94xOe23XBA==";
+        url = "https://registry.npmjs.org/lightning/-/lightning-6.2.0.tgz";
+        sha512 = "lgaoBmqZm96R48L46sypPSAUvZhcfr/dYTQVYE+0/Im5+vTodq0elia3gq69P5WV/nwiOG464a5fMnaczu3Pnw==";
       };
     };
     "lightningcss-1.16.0" = {
@@ -44300,6 +44354,15 @@ let
         sha512 = "yO8stbm3Ewd/EfO56a1FnV4pR4bjvwHG8ZilDryQMpHFSBu6ChLZ+r5wUe4uvH9gb963fQcy+N6vdeZPloYJsQ==";
       };
     };
+    "ln-accounting-6.0.0" = {
+      name = "ln-accounting";
+      packageName = "ln-accounting";
+      version = "6.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ln-accounting/-/ln-accounting-6.0.0.tgz";
+        sha512 = "BBYwH5Qs1XZmwLS7SmNC9VSMfs2gECFRT2KifFkYgwHj+QylMGkczsHL4CU6F/B8yb0BZUAi916Ns+9bV6KQ/g==";
+      };
+    };
     "ln-service-53.17.0" = {
       name = "ln-service";
       packageName = "ln-service";
@@ -44336,13 +44399,13 @@ let
         sha512 = "Ds3IzMNEiAgP8auc9AfDbzr6E2Xdy/GTUcLc6m5FM66JtJBM3jM52apzod+VG1vGm9rVyHfCeem/iP4oyaNPYA==";
       };
     };
-    "ln-service-54.1.1" = {
+    "ln-service-54.2.0" = {
       name = "ln-service";
       packageName = "ln-service";
-      version = "54.1.1";
+      version = "54.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ln-service/-/ln-service-54.1.1.tgz";
-        sha512 = "74+pRoRbbTHziPCMdV/dsij2+z+uKp+89/XvDW5yO6+SioJCoUfFg8eUeuUOa/WAaJ489wk8OZILrZJHuaLomw==";
+        url = "https://registry.npmjs.org/ln-service/-/ln-service-54.2.0.tgz";
+        sha512 = "wLum4gvNdyg1DFPHPCaDHv43mdr9OZ6hKzE+Og54y16WwnVCQfM9xNzA5fV2u47CJJXAULsu0R0vVE/6aAeXCQ==";
       };
     };
     "ln-sync-3.12.1" = {
@@ -45983,13 +46046,13 @@ let
         sha512 = "Mc8jNuSFImQUIateBFwdOQcmC6Q5maU0VVvdC2R6XMb66/VnT+7WS4D/0EeNMZu1YODmJe5NIn2XftCzEocUgw==";
       };
     };
-    "log4js-6.6.1" = {
+    "log4js-6.7.0" = {
       name = "log4js";
       packageName = "log4js";
-      version = "6.6.1";
+      version = "6.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/log4js/-/log4js-6.6.1.tgz";
-        sha512 = "J8VYFH2UQq/xucdNu71io4Fo+purYYudyErgBbswWKO0MC6QVOERRomt5su/z6d3RJSmLyTGmXl3Q/XjKCf+/A==";
+        url = "https://registry.npmjs.org/log4js/-/log4js-6.7.0.tgz";
+        sha512 = "KA0W9ffgNBLDj6fZCq/lRbgR6ABAodRIDHrZnS48vOtfKa4PzWImb0Md1lmGCdO3n3sbCm/n1/WmrNlZ8kCI3Q==";
       };
     };
     "logform-2.4.2" = {
@@ -47082,13 +47145,13 @@ let
         sha512 = "ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==";
       };
     };
-    "marked-4.1.0" = {
+    "marked-4.1.1" = {
       name = "marked";
       packageName = "marked";
-      version = "4.1.0";
+      version = "4.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/marked/-/marked-4.1.0.tgz";
-        sha512 = "+Z6KDjSPa6/723PQYyc1axYZpYYpDnECDaU6hkaf5gqBieBkMKYReL5hteF2QizhlMbgbo8umXl/clZ67+GlsA==";
+        url = "https://registry.npmjs.org/marked/-/marked-4.1.1.tgz";
+        sha512 = "0cNMnTcUJPxbA6uWmCmjWz4NJRe/0Xfk2NhXCUHjew9qJzFN20krFnsUe7QynwqOwa5m1fZ4UDg0ycKFVC0ccw==";
       };
     };
     "marked-terminal-5.1.1" = {
@@ -47496,13 +47559,13 @@ let
         sha512 = "leKb9uG7laXdyFlTleYV4ZEaCpsxeU1LlkkR/xp35pgKrfV1Y0fNCuOw9vaRc2a9YDpH22wd145Wt7UY5yzeZw==";
       };
     };
-    "mdast-util-mdx-expression-1.3.0" = {
+    "mdast-util-mdx-expression-1.3.1" = {
       name = "mdast-util-mdx-expression";
       packageName = "mdast-util-mdx-expression";
-      version = "1.3.0";
+      version = "1.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-1.3.0.tgz";
-        sha512 = "9kTO13HaL/ChfzVCIEfDRdp1m5hsvsm6+R8yr67mH+KS2ikzZ0ISGLPTbTswOFpLLlgVHO9id3cul4ajutCvCA==";
+        url = "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-1.3.1.tgz";
+        sha512 = "TTb6cKyTA1RD+1su1iStZ5PAv3rFfOUKcoU5EstUpv/IZo63uDX03R8+jXjMEhcobXnNOiG6/ccekvVl4eV1zQ==";
       };
     };
     "mdast-util-mdx-jsx-1.2.0" = {
@@ -47847,13 +47910,13 @@ let
         sha512 = "S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==";
       };
     };
-    "meow-10.1.4" = {
+    "meow-10.1.5" = {
       name = "meow";
       packageName = "meow";
-      version = "10.1.4";
+      version = "10.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/meow/-/meow-10.1.4.tgz";
-        sha512 = "FAlXANqPxtd6Od1kTzm39cHbhYn5t/TI0pP5yV9bmzteII7+couYcU+T9sgbzCgi0KVdiw85aRie9UBUfucYvQ==";
+        url = "https://registry.npmjs.org/meow/-/meow-10.1.5.tgz";
+        sha512 = "/d+PQ4GKmGvM9Bee/DPa8z3mXs/pkvJE2KEThngVNOqtmljC6K7NMPxtc2JeZYTmpWb9k/TmxjeL18ez3h7vCw==";
       };
     };
     "meow-3.7.0" = {
@@ -48009,13 +48072,13 @@ let
         sha512 = "AY9lGmUznFNsLr7Vm3hLCT7Ar0bN6Wninp3qA0E0/JBU4uRTRI4fIgM1I3+nbjLf23mwh+vrHut0ML63QB2acA==";
       };
     };
-    "metalsmith-2.5.0" = {
+    "metalsmith-2.5.1" = {
       name = "metalsmith";
       packageName = "metalsmith";
-      version = "2.5.0";
+      version = "2.5.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/metalsmith/-/metalsmith-2.5.0.tgz";
-        sha512 = "tBFpCMq8t/ZeD8qbvyWSLjyW7aO8RJYeFSk8LyclgHYaeMWiSPrMxXc3NORVCJ3iG17aRxuL/+nla58Qq3DBcQ==";
+        url = "https://registry.npmjs.org/metalsmith/-/metalsmith-2.5.1.tgz";
+        sha512 = "/jpf9JXYAvA16VlJDRlZRktcsjTgMHDwusiNLo1byU7ocUNWm2F7zQukrVtBslNNNi1gWnXbcxTINYdsi5zrAA==";
       };
     };
     "method-missing-1.2.4" = {
@@ -48072,13 +48135,13 @@ let
         sha512 = "iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==";
       };
     };
-    "metro-react-native-babel-preset-0.70.3" = {
+    "metro-react-native-babel-preset-0.72.3" = {
       name = "metro-react-native-babel-preset";
       packageName = "metro-react-native-babel-preset";
-      version = "0.70.3";
+      version = "0.72.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.70.3.tgz";
-        sha512 = "4Nxc1zEiHEu+GTdEMEsHnRgfaBkg8f/Td3+FcQ8NTSvs+xL3LBrQy6N07idWSQZHIdGFf+tTHvRfSIWLD8u8Tg==";
+        url = "https://registry.npmjs.org/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.72.3.tgz";
+        sha512 = "uJx9y/1NIqoYTp6ZW1osJ7U5ZrXGAJbOQ/Qzl05BdGYvN1S7Qmbzid6xOirgK0EIT0pJKEEh1s8qbassYZe4cw==";
       };
     };
     "microee-0.0.6" = {
@@ -48108,13 +48171,13 @@ let
         sha512 = "+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==";
       };
     };
-    "micromark-3.0.10" = {
+    "micromark-3.1.0" = {
       name = "micromark";
       packageName = "micromark";
-      version = "3.0.10";
+      version = "3.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/micromark/-/micromark-3.0.10.tgz";
-        sha512 = "ryTDy6UUunOXy2HPjelppgJ2sNfcPz1pLlMdA6Rz9jPzhLikWXv/irpWV/I2jd68Uhmny7hHxAlAhk4+vWggpg==";
+        url = "https://registry.npmjs.org/micromark/-/micromark-3.1.0.tgz";
+        sha512 = "6Mj0yHLdUZjHnOPgr5xfWIMqMWS12zDN6iws9SLuSz76W8jTtAv24MN4/CL7gJrl5vtxGInkkqDv/JIoRsQOvA==";
       };
     };
     "micromark-core-commonmark-1.0.6" = {
@@ -48468,13 +48531,13 @@ let
         sha512 = "CB/AGk98u50k42kvgaMM94wzBqozSzDDaonKU7P7jwQIuH2RU0TeBqGYJz2WY1UdihhjweivStrJ2JdkdEmcfw==";
       };
     };
-    "micromark-util-sanitize-uri-1.0.0" = {
+    "micromark-util-sanitize-uri-1.1.0" = {
       name = "micromark-util-sanitize-uri";
       packageName = "micromark-util-sanitize-uri";
-      version = "1.0.0";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.0.0.tgz";
-        sha512 = "cCxvBKlmac4rxCGx6ejlIviRaMKZc0fWm5HdCHEeDWRSkn44l6NdYVRyU+0nT1XC72EQJMZV8IPHF+jTr56lAg==";
+        url = "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.1.0.tgz";
+        sha512 = "RoxtuSCX6sUNtxhbmsEFQfWzs8VN7cTctmBPvYivo98xb/kDEoTCtJQX5wyzIYEmk/lvNFTat4hL8oW0KndFpg==";
       };
     };
     "micromark-util-subtokenize-1.0.2" = {
@@ -49494,13 +49557,13 @@ let
         sha512 = "PQcys7iTcXiMyW8cgK5B/fhKGteB/WLqWN1f+s7IJHyyRd80JnJYoNo03kTQcGZhVtsKz5kEWiS7W94gfY6qcQ==";
       };
     };
-    "moo-0.5.1" = {
+    "moo-0.5.2" = {
       name = "moo";
       packageName = "moo";
-      version = "0.5.1";
+      version = "0.5.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/moo/-/moo-0.5.1.tgz";
-        sha512 = "I1mnb5xn4fO80BH9BLcF0yLypy2UKl+Cb01Fu0hJRkJjlCRtxZMWkTdAtDd5ZqCOxtCkhmRwyI57vWT+1iZ67w==";
+        url = "https://registry.npmjs.org/moo/-/moo-0.5.2.tgz";
+        sha512 = "iSAJLHYKnX41mKcJKjqvnAN9sf0LMDTXDEvFv+ffuRR9a1MIuXLjMNL6EsnDHSkKLTWNqQQ5uo61P4EbU4NU+Q==";
       };
     };
     "mooremachine-2.3.0" = {
@@ -50935,13 +50998,13 @@ let
         sha512 = "/2D0wOQPgaUWzVSVgRMx+trKJRC2UG4SUc4oCJoXx9Uxjtp0Vy3/kt7zcbxHF8+Z/pK3UloLWzBISg72brfy1w==";
       };
     };
-    "node-abi-3.25.0" = {
+    "node-abi-3.26.0" = {
       name = "node-abi";
       packageName = "node-abi";
-      version = "3.25.0";
+      version = "3.26.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-abi/-/node-abi-3.25.0.tgz";
-        sha512 = "p+0xx5ruIQ+8X57CRIMxbTZRT7tU0Tjn2C/aAK68AEMrbGsCo6IjnDdPNhEyyjWCT4bRtzomXchYd3sSgk3BJQ==";
+        url = "https://registry.npmjs.org/node-abi/-/node-abi-3.26.0.tgz";
+        sha512 = "jRVtMFTChbi2i/jqo/i2iP9634KMe+7K1v35mIdj3Mn59i5q27ZYhn+sW6npISM/PQg7HrP2kwtRBMmh5Uvzdg==";
       };
     };
     "node-abort-controller-3.0.1" = {
@@ -51133,13 +51196,13 @@ let
         sha512 = "ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==";
       };
     };
-    "node-fetch-3.2.8" = {
+    "node-fetch-3.2.10" = {
       name = "node-fetch";
       packageName = "node-fetch";
-      version = "3.2.8";
+      version = "3.2.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-fetch/-/node-fetch-3.2.8.tgz";
-        sha512 = "KtpD1YhGszhntMpBDyp5lyagk8KIMopC1LEb7cQUAh7zcosaX5uK8HnbNb2i3NTQK3sIawCItS0uFC3QzcLHdg==";
+        url = "https://registry.npmjs.org/node-fetch/-/node-fetch-3.2.10.tgz";
+        sha512 = "MhuzNwdURnZ1Cp4XTazr69K0BTizsBroX7Zx3UgDSVcZYKF/6p0CBe4EUb/hLqmzVhl0UpYfgRljQ4yxE+iCxA==";
       };
     };
     "node-fetch-h2-2.3.0" = {
@@ -51232,13 +51295,13 @@ let
         sha512 = "olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w==";
       };
     };
-    "node-gyp-9.1.0" = {
+    "node-gyp-9.2.0" = {
       name = "node-gyp";
       packageName = "node-gyp";
-      version = "9.1.0";
+      version = "9.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-gyp/-/node-gyp-9.1.0.tgz";
-        sha512 = "HkmN0ZpQJU7FLbJauJTHkHlSVAXlNGDAzH/VYFZGDOnFyn/Na3GlNJfkudmufOdS6/jNFhy88ObzL7ERz9es1g==";
+        url = "https://registry.npmjs.org/node-gyp/-/node-gyp-9.2.0.tgz";
+        sha512 = "/+/YxGfIJOh/fnMsr4Ep0v6oOIjnO1BgLd2dcDspBX1spTkQU7xSIox5RdRE/2/Uq3ZwK8Z5swRIbMUmPlslmg==";
       };
     };
     "node-gyp-build-4.1.1" = {
@@ -52042,6 +52105,15 @@ let
         sha512 = "4J0GL+u2Nh6OnhvUKXRr2ZMG4lR8qtLp+kv7UiV00Y+nGiSxtttCyIRHCt5L5BNkXQld/RceYItau3MDOoGiBw==";
       };
     };
+    "npm-package-arg-9.1.2" = {
+      name = "npm-package-arg";
+      packageName = "npm-package-arg";
+      version = "9.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.1.2.tgz";
+        sha512 = "pzd9rLEx4TfNJkovvlBSLGhq31gGu2QDexFPWT19yCDh0JgnRhlBLNo5759N0AJmBk+kQ9Y/hXoLnlgFD+ukmg==";
+      };
+    };
     "npm-packlist-1.4.8" = {
       name = "npm-packlist";
       packageName = "npm-packlist";
@@ -52411,13 +52483,13 @@ let
         sha512 = "90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==";
       };
     };
-    "nx-14.7.17" = {
+    "nx-14.8.3" = {
       name = "nx";
       packageName = "nx";
-      version = "14.7.17";
+      version = "14.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nx/-/nx-14.7.17.tgz";
-        sha512 = "LLXdz4xeR54Lqw9t3XtOJsBtlwtSexrlIwhWc42GKlv4MHrBOnTp99jTQ/hdP9TpGCU7tvShRQ4ildZJapgRSg==";
+        url = "https://registry.npmjs.org/nx/-/nx-14.8.3.tgz";
+        sha512 = "6aMYrzlTqE77vHbaE1teI5P1A2oYkJGkuDMIo/zegRwUxCAjRzLAluUgPrmgqhuPTyTDn8p4aDfxAWV3Q0o/2Q==";
       };
     };
     "nyc-15.1.0" = {
@@ -53375,13 +53447,13 @@ let
         sha512 = "TxhYBMoqx9frXyOgnRHufjQfPXomTIHYKhSKJ6jHfj13kS8OEIhvmE8CTuQyKtjjWttAjX5DPxM1vmalEpo8Qw==";
       };
     };
-    "openapi3-ts-3.0.2" = {
+    "openapi3-ts-3.1.0" = {
       name = "openapi3-ts";
       packageName = "openapi3-ts";
-      version = "3.0.2";
+      version = "3.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/openapi3-ts/-/openapi3-ts-3.0.2.tgz";
-        sha512 = "KF/06OkQPFSr9A+oadYYC3cIj8TZlzonREkQYFqx8i+wLllAxm6Bp8Fizo3jWXeIxZj/7V5LKtuNN/GxueWtcw==";
+        url = "https://registry.npmjs.org/openapi3-ts/-/openapi3-ts-3.1.0.tgz";
+        sha512 = "1qKTvCCVoV0rkwUh1zq5o8QyghmwYPuhdvtjv1rFjuOnJToXhQyF8eGjNETQ8QmGjr9Jz/tkAKLITIl2s7dw3A==";
       };
     };
     "opencollective-postinstall-2.0.3" = {
@@ -53672,13 +53744,13 @@ let
         sha512 = "i5cPvMENpZP8nnqptB6l0pjiOyySj1IISkbM4Hr3yZEDdANo2eezarwZb9NQ8fTh5pRjmgpZdSyIbnn9N3AENw==";
       };
     };
-    "ordered-binary-1.3.0" = {
+    "ordered-binary-1.4.0" = {
       name = "ordered-binary";
       packageName = "ordered-binary";
-      version = "1.3.0";
+      version = "1.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ordered-binary/-/ordered-binary-1.3.0.tgz";
-        sha512 = "knIeYepTI6BDAzGxqFEDGtI/iGqs57H32CInAIxEvAHG46vk1Di0CEpyc1A7iY39B1mfik3g3KLYwOTNnnMHLA==";
+        url = "https://registry.npmjs.org/ordered-binary/-/ordered-binary-1.4.0.tgz";
+        sha512 = "EHQ/jk4/a9hLupIKxTfUsQRej1Yd/0QLQs3vGvIqg5ZtCYSzNhkzHoZc7Zf4e4kUlDaC3Uw8Q/1opOLNN2OKRQ==";
       };
     };
     "ordered-read-streams-1.0.1" = {
@@ -54545,6 +54617,15 @@ let
         sha512 = "no1NKJWBSf/S4uotO/zf7TragfKkP45wLE7HlJVhY552DkHLbO+bacAg4BSjQ4/K0C9EyK6CRip/gOnza3UfZA==";
       };
     };
+    "paid-services-4.0.0" = {
+      name = "paid-services";
+      packageName = "paid-services";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/paid-services/-/paid-services-4.0.0.tgz";
+        sha512 = "wKufqd+pds1xTm74OHeg1o55RStvbTlB37qdNHv5FpMCd+CwzENGWY1pTt1SZ73p/1qu/fBqNxMlkI9XLqw01Q==";
+      };
+    };
     "pako-0.2.9" = {
       name = "pako";
       packageName = "pako";
@@ -56534,6 +56615,15 @@ let
         sha512 = "ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==";
       };
     };
+    "postcss-8.4.17" = {
+      name = "postcss";
+      packageName = "postcss";
+      version = "8.4.17";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss/-/postcss-8.4.17.tgz";
+        sha512 = "UNxNOLQydcOFi41yHNMcKRZ39NeXlr8AxGuZJsdub8vIb12fHzcq37DTU/QtbI6WLxNg2gF9Z+8qtRwTj1UI1Q==";
+      };
+    };
     "postcss-calc-7.0.5" = {
       name = "postcss-calc";
       packageName = "postcss-calc";
@@ -57866,13 +57956,13 @@ let
         sha512 = "GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==";
       };
     };
-    "prettier-plugin-astro-0.5.4" = {
+    "prettier-plugin-astro-0.5.5" = {
       name = "prettier-plugin-astro";
       packageName = "prettier-plugin-astro";
-      version = "0.5.4";
+      version = "0.5.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/prettier-plugin-astro/-/prettier-plugin-astro-0.5.4.tgz";
-        sha512 = "ILs/WgUYtKBOn3Zh217/PwjCFtUWEKQjcCFJDevri0hGEBwEnnda9aqSLL0/nhCOmQn/UE7M9zLQvThu970ZHw==";
+        url = "https://registry.npmjs.org/prettier-plugin-astro/-/prettier-plugin-astro-0.5.5.tgz";
+        sha512 = "tEJiPjTB1eVT5Czcbkj9GoRG/oMewOnG9x737p/hJUD5QXJmn7LiYFM2dKkX0i4A1fhhsGfXT+uqsAXcw2r8JQ==";
       };
     };
     "prettier-plugin-svelte-2.7.1" = {
@@ -59666,13 +59756,22 @@ let
         sha512 = "U1uufzBjz3+PkpCxFrWzh4OrMIdIb2ztzCu0YEPfRHjHswcSwHZswnK+WdsOQJsRV8WeTg3jLhJR4D867+fjsA==";
       };
     };
-    "puppeteer-16.2.0" = {
+    "puppeteer-18.2.1" = {
       name = "puppeteer";
       packageName = "puppeteer";
-      version = "16.2.0";
+      version = "18.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/puppeteer/-/puppeteer-16.2.0.tgz";
-        sha512 = "7Au6iC98rS6WEAD110V4Bxd0iIbqoFtzz9XzkG1BSofidS1VAJ881E1+GFR7Xn2Yea0hbj8n0ErzRyseMp1Ctg==";
+        url = "https://registry.npmjs.org/puppeteer/-/puppeteer-18.2.1.tgz";
+        sha512 = "7+UhmYa7wxPh2oMRwA++k8UGVDxh3YdWFB52r9C3tM81T6BU7cuusUSxImz0GEYSOYUKk/YzIhkQ6+vc0gHbxQ==";
+      };
+    };
+    "puppeteer-core-18.2.1" = {
+      name = "puppeteer-core";
+      packageName = "puppeteer-core";
+      version = "18.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-18.2.1.tgz";
+        sha512 = "MRtTAZfQTluz3U2oU/X2VqVWPcR1+94nbA2V6ZrSZRVEwLqZ8eclZ551qGFQD/vD2PYqHJwWOW/fpC721uznVw==";
       };
     };
     "purgecss-2.3.0" = {
@@ -59747,13 +59846,13 @@ let
         sha512 = "pMpnA0qRdFp32b1sJl1wOJNxZLQ2cbQx+k6tjNtZ8CpvVhNqEPRgivZ2WOUev2YMajecdH7ctUPDvEe87nariQ==";
       };
     };
-    "pyright-1.1.273" = {
+    "pyright-1.1.274" = {
       name = "pyright";
       packageName = "pyright";
-      version = "1.1.273";
+      version = "1.1.274";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pyright/-/pyright-1.1.273.tgz";
-        sha512 = "uhBqKtRnC1Rvgz7uKp13VEwIR/UuqUvlscOu/y6hQhDzpFrZi0Gft7TrSLIMdy7fRAf85dS1nduQmAIWXgl4AA==";
+        url = "https://registry.npmjs.org/pyright/-/pyright-1.1.274.tgz";
+        sha512 = "+MEiHktoAxlehWbBAF2vwJkJxV5tObbLK6vnc7u+iDBH06vuHqTqY33AV+YGNwfDEU35chw5zu7H3EpGROXsGQ==";
       };
     };
     "q-0.9.7" = {
@@ -64625,6 +64724,15 @@ let
         sha512 = "QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==";
       };
     };
+    "semver-7.3.8" = {
+      name = "semver";
+      packageName = "semver";
+      version = "7.3.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz";
+        sha512 = "NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==";
+      };
+    };
     "semver-compare-1.0.0" = {
       name = "semver-compare";
       packageName = "semver-compare";
@@ -65822,13 +65930,13 @@ let
         sha512 = "QOcZhborgBHdz3kLOC7aXjU/ELqXdl2lsljVDwzin6NhamIebfbwAmORynptDKqposniQ9yY5cqGgxUQvwlveA==";
       };
     };
-    "smartdc-auth-2.5.8" = {
+    "smartdc-auth-2.5.9" = {
       name = "smartdc-auth";
       packageName = "smartdc-auth";
-      version = "2.5.8";
+      version = "2.5.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/smartdc-auth/-/smartdc-auth-2.5.8.tgz";
-        sha512 = "hLdVp5vqzrEEJSAQKSmURvBVImQj9oVbp7zBP6JLEmSenUGhc6kl9nrSXUj14JHiQcnKF80eRAWPsdUcV6YXFw==";
+        url = "https://registry.npmjs.org/smartdc-auth/-/smartdc-auth-2.5.9.tgz";
+        sha512 = "tSVRtJPzbFY4Ak8n4bb9nkjyGsFz+db+X+KJUDhojgZkzPXEVaPBgKsnXdrvRyBiOR6geZtqi1LKMRJ8ku8d1g==";
       };
     };
     "smoothscroll-polyfill-0.4.4" = {
@@ -66155,13 +66263,13 @@ let
         sha512 = "2g0tjOR+fRs0amxENLi/q5TiJTqY+WXFOzb5UwXndlK6TO3U/mirZznpx6w34HVMoc3g7cY24yC/ZMIYnDlfkw==";
       };
     };
-    "socks-2.7.0" = {
+    "socks-2.7.1" = {
       name = "socks";
       packageName = "socks";
-      version = "2.7.0";
+      version = "2.7.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/socks/-/socks-2.7.0.tgz";
-        sha512 = "scnOe9y4VuiNUULJN72GrM26BNOjVsfPXI+j+98PkyEfsIXroa5ofyjT+FzGvn/xHs73U2JtoBYAVx9Hl4quSA==";
+        url = "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz";
+        sha512 = "7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==";
       };
     };
     "socks-proxy-agent-5.0.1" = {
@@ -67019,13 +67127,13 @@ let
         sha512 = "4akFOr7u9lJEeAWLJxmwiV43DJcGV7w3ab7SjQFAFaTVyknY3rZjvXTKIVtWqUoY4xwhjwoHKYs2HDW2SoHVsA==";
       };
     };
-    "sqlite3-5.1.1" = {
+    "sqlite3-5.1.2" = {
       name = "sqlite3";
       packageName = "sqlite3";
-      version = "5.1.1";
+      version = "5.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sqlite3/-/sqlite3-5.1.1.tgz";
-        sha512 = "mMinkrQr/LKJqFiFF+AF7imPSzRCCpTCreusZO3D/ssJHVjZOrbu2Caz+zPH5KTmGGXBxXMGSRDssL+44CLxvg==";
+        url = "https://registry.npmjs.org/sqlite3/-/sqlite3-5.1.2.tgz";
+        sha512 = "D0Reg6pRWAFXFUnZKsszCI67tthFD8fGPewRddDCX6w4cYwz3MbvuwRICbL+YQjBAh9zbw+lJ/V9oC8nG5j6eg==";
       };
     };
     "sqlite3-git+https://github.com/mapbox/node-sqlite3.git#918052b538b0effe6c4a44c74a16b2749c08a0d2" = {
@@ -67101,13 +67209,13 @@ let
         sha512 = "8K3qi9fIr6PYQCWWPDTijDThZ89tYRkIKO7xpS/kM8dDuDfx4FsBoMsBkgl8VOV3TB24UnAF0IbcxRBNL5Pf4w==";
       };
     };
-    "ssb-bfe-3.6.0" = {
+    "ssb-bfe-3.6.1" = {
       name = "ssb-bfe";
       packageName = "ssb-bfe";
-      version = "3.6.0";
+      version = "3.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ssb-bfe/-/ssb-bfe-3.6.0.tgz";
-        sha512 = "yvGFGZTWB0S/gMTI+CC2kQDveujid3Y4it829w6gES1BNw4QTfwyU/Rtkq2o01ITanZ2fvm3g7f0326yaNDZRg==";
+        url = "https://registry.npmjs.org/ssb-bfe/-/ssb-bfe-3.6.1.tgz";
+        sha512 = "1FHcb2ao3txlomgY0ZSH8tfGnVh40JZRzMVzX7tNNOwWId4uI7Ck2Dpgqk63FXQNaabT1ihdtNd6AEHbi9wqAg==";
       };
     };
     "ssb-bfe-spec-0.7.0" = {
@@ -69144,13 +69252,13 @@ let
         sha512 = "dxdemxFFB0ppCLg10FTtRqH/31FNRL1y1BQv8209MK5I4CwALb7iihQg+7p65lFcIl8MHatINWBLOqpgU4Kyyw==";
       };
     };
-    "sucrase-3.27.0" = {
+    "sucrase-3.28.0" = {
       name = "sucrase";
       packageName = "sucrase";
-      version = "3.27.0";
+      version = "3.28.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sucrase/-/sucrase-3.27.0.tgz";
-        sha512 = "IjpEeFzOWCGrB/e2DnPawkFajW6ONFFgs+lQT1+Ts5Z5ZM9gPnxpDh0q8tu7HVLt6IfRiUTbSsjfhqjHOP/cwQ==";
+        url = "https://registry.npmjs.org/sucrase/-/sucrase-3.28.0.tgz";
+        sha512 = "TK9600YInjuiIhVM3729rH4ZKPOsGeyXUwY+Ugu9eilNbdTFyHr6XcAGYbRVZPDgWj6tgI7bx95aaJjHnbffag==";
       };
     };
     "sudo-block-1.2.0" = {
@@ -69270,13 +69378,13 @@ let
         sha512 = "EulshI3pGUM66o6ZdH3ReiFcvHpM3vAigyK+vcxdjpJyEbIIrtbmBdY23mGgnI24uXiGFvrGq9Gkum/8U7vJWg==";
       };
     };
-    "superstatic-8.0.0" = {
+    "superstatic-9.0.0" = {
       name = "superstatic";
       packageName = "superstatic";
-      version = "8.0.0";
+      version = "9.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/superstatic/-/superstatic-8.0.0.tgz";
-        sha512 = "PqlA2xuEwOlRZsknl58A/rZEmgCUcfWIFec0bn10wYE5/tbMhEbMXGHCYDppiXLXcuhGHyOp1IimM2hLqkLLuw==";
+        url = "https://registry.npmjs.org/superstatic/-/superstatic-9.0.0.tgz";
+        sha512 = "4rvzTZdqBPtCjeo/V4YkbBeDnHxI2+3jP1FHGzvTeDswq+HQFB7l3JTjq31BfyJFTogn8JmbDW9sKOeBUGDAhg==";
       };
     };
     "supports-color-0.2.0" = {
@@ -69594,13 +69702,13 @@ let
         sha512 = "8z18eX8G/jbTXYzyNIaobrnD7PSN7yU/YkSasMmajrXtw0FGS64XjrKn5v37d36qmU3o1xLeuYnktshRr7uIFw==";
       };
     };
-    "swagger-ui-dist-4.14.1" = {
+    "swagger-ui-dist-4.14.2" = {
       name = "swagger-ui-dist";
       packageName = "swagger-ui-dist";
-      version = "4.14.1";
+      version = "4.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/swagger-ui-dist/-/swagger-ui-dist-4.14.1.tgz";
-        sha512 = "GjK581G3ZMOw1vLiQyMV+XHXSE4F83/2E48Y8Cs+X+25QHegwPu/83+GDCls3htPZvEOr0IG+oVljhMyuRy1kA==";
+        url = "https://registry.npmjs.org/swagger-ui-dist/-/swagger-ui-dist-4.14.2.tgz";
+        sha512 = "kOIU7Ts3TrXDLb3/c9jRe4qGp8O3bRT19FFJA8wJfrRFkcK/4atPn3krhtBVJ57ZkNNofworXHxuYwmaisXBdg==";
       };
     };
     "swagger2openapi-7.0.8" = {
@@ -70279,13 +70387,13 @@ let
         sha512 = "4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==";
       };
     };
-    "terser-5.15.0" = {
+    "terser-5.15.1" = {
       name = "terser";
       packageName = "terser";
-      version = "5.15.0";
+      version = "5.15.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/terser/-/terser-5.15.0.tgz";
-        sha512 = "L1BJiXVmheAQQy+as0oF3Pwtlo4s3Wi1X2zNZ2NxOB4wx9bdS9Vk67XQENLFdLYGCK/Z2di53mTj/hBafR+dTA==";
+        url = "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz";
+        sha512 = "K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==";
       };
     };
     "terser-webpack-plugin-1.4.5" = {
@@ -72727,13 +72835,13 @@ let
         sha512 = "uVbFqx9vvLhQg0iBaau9Z75AxWJ8tqM9AV890dIZCLApF4rTcyHwmAvLeEdYRs+BzYWu8Iw81F79ah0EfTXbaw==";
       };
     };
-    "uglify-js-3.17.2" = {
+    "uglify-js-3.17.3" = {
       name = "uglify-js";
       packageName = "uglify-js";
-      version = "3.17.2";
+      version = "3.17.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.2.tgz";
-        sha512 = "bbxglRjsGQMchfvXZNusUcYgiB9Hx2K4AHYXQy2DITZ9Rd+JzhX7+hoocE5Winr7z2oHvPsekkBwXtigvxevXg==";
+        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.3.tgz";
+        sha512 = "JmMFDME3iufZnBpyKL+uS78LRiC+mK55zWfM5f/pWBJfpOttXAqYfdDGRukYhJuyRinvPVAtUhvy7rlDybNtFg==";
       };
     };
     "uglify-js-3.4.10" = {
@@ -73042,13 +73150,13 @@ let
         sha512 = "UR1khWeAjugW3548EfQmL9Z7pGMlBgXteQpr1IZeZBtnkCJQJIJ1Scj0mb9wQaPvUZ9Q17XqW6TIaPchJkyfqw==";
       };
     };
-    "undici-5.10.0" = {
+    "undici-5.11.0" = {
       name = "undici";
       packageName = "undici";
-      version = "5.10.0";
+      version = "5.11.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/undici/-/undici-5.10.0.tgz";
-        sha512 = "c8HsD3IbwmjjbLvoZuRI26TZic+TSEe8FPMLLOkN1AfYRhdjnKBU6yL+IwcSCbdZiX4e5t0lfMDLDCqj4Sq70g==";
+        url = "https://registry.npmjs.org/undici/-/undici-5.11.0.tgz";
+        sha512 = "oWjWJHzFet0Ow4YZBkyiJwiK5vWqEYoH7BINzJAJOLedZ++JpAlCbUktW2GQ2DS2FpKmxD/JMtWUUWl1BtghGw==";
       };
     };
     "undici-5.9.1" = {
@@ -73951,13 +74059,13 @@ let
         sha512 = "1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==";
       };
     };
-    "update-browserslist-db-1.0.9" = {
+    "update-browserslist-db-1.0.10" = {
       name = "update-browserslist-db";
       packageName = "update-browserslist-db";
-      version = "1.0.9";
+      version = "1.0.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.9.tgz";
-        sha512 = "/xsqn21EGVdXI3EXSum1Yckj3ZVZugqyOZQ/CxYPBD/R+ko9NSUScf8tFF4dOKY+2pvSSJA/S+5B8s4Zr4kyvg==";
+        url = "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz";
+        sha512 = "OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==";
       };
     };
     "update-check-1.5.2" = {
@@ -74662,15 +74770,6 @@ let
         sha512 = "+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==";
       };
     };
-    "uuid-9.0.0" = {
-      name = "uuid";
-      packageName = "uuid";
-      version = "9.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz";
-        sha512 = "MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==";
-      };
-    };
     "uvu-0.5.6" = {
       name = "uvu";
       packageName = "uvu";
@@ -76543,13 +76642,13 @@ let
         sha512 = "rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==";
       };
     };
-    "wasm-feature-detect-1.2.11" = {
+    "wasm-feature-detect-1.3.0" = {
       name = "wasm-feature-detect";
       packageName = "wasm-feature-detect";
-      version = "1.2.11";
+      version = "1.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/wasm-feature-detect/-/wasm-feature-detect-1.2.11.tgz";
-        sha512 = "HUqwaodrQGaZgz1lZaNioIkog9tkeEJjrM3eq4aUL04whXOVDRc/o2EGb/8kV0QX411iAYWEqq7fMBmJ6dKS6w==";
+        url = "https://registry.npmjs.org/wasm-feature-detect/-/wasm-feature-detect-1.3.0.tgz";
+        sha512 = "w9datO3OReMouWgKOelvu1CozmLK/VbkXOtlzNTanBJpR0uBHyUwS3EYdXf5vBPoHKYS0lpuYo91rpqMNIZM9g==";
       };
     };
     "watchpack-1.7.5" = {
@@ -77605,15 +77704,6 @@ let
         sha512 = "ecJS2/oHtESJ1t3ZfMI3B7KIDKyfN0O16miWxdn30zdh66Yd3LsRFebXZXq6GU4xfxLf6nVxp9kIqElb5fqczA==";
       };
     };
-    "wolfy87-eventemitter-5.2.9" = {
-      name = "wolfy87-eventemitter";
-      packageName = "wolfy87-eventemitter";
-      version = "5.2.9";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/wolfy87-eventemitter/-/wolfy87-eventemitter-5.2.9.tgz";
-        sha512 = "P+6vtWyuDw+MB01X7UeF8TaHBvbCovf4HPEMF/SV7BdDc1SMTiBy13SRD71lQh4ExFTG1d/WNzDGDCyOKSMblw==";
-      };
-    };
     "wonka-4.0.15" = {
       name = "wonka";
       packageName = "wonka";
@@ -78668,6 +78758,15 @@ let
         sha512 = "o96x3OPo8GjWeSLF+wOAbrPfhFOGY0W00GNaxCDv+9hkcDJEnev1yh8S7pgHF0ik6zc8sQLuL8hjHjJULZp8bw==";
       };
     };
+    "yaml-2.1.3" = {
+      name = "yaml";
+      packageName = "yaml";
+      version = "2.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yaml/-/yaml-2.1.3.tgz";
+        sha512 = "AacA8nRULjKMX2DvWvOAdBZMOfQlypSFkjcOcu9FalllIDJ1kvlREzcdIZmidQUqqeMv7jorHjq2HlLv/+c2lg==";
+      };
+    };
     "yaml-ast-parser-0.0.43" = {
       name = "yaml-ast-parser";
       packageName = "yaml-ast-parser";
@@ -78839,6 +78938,15 @@ let
         sha512 = "t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==";
       };
     };
+    "yargs-17.6.0" = {
+      name = "yargs";
+      packageName = "yargs";
+      version = "17.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs/-/yargs-17.6.0.tgz";
+        sha512 = "8H/wTDqlSwoSnScvV2N/JHfLWOKuh5MVla9hqLjK3nsfyy6Y4kDSYSvkU5YCUEPOSnRXfIyx3Sq+B/IWudTo4g==";
+      };
+    };
     "yargs-3.10.0" = {
       name = "yargs";
       packageName = "yargs";
@@ -79109,13 +79217,13 @@ let
         sha512 = "9Ni+uXWeFix9+1t7s1q40zZdbcpdi/OwgD4N4cVaqI+bppPciOOXQ/RSggannwZu8m8zrSWELn6/93G7308jgg==";
       };
     };
-    "yeoman-environment-3.11.1" = {
+    "yeoman-environment-3.12.0" = {
       name = "yeoman-environment";
       packageName = "yeoman-environment";
-      version = "3.11.1";
+      version = "3.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/yeoman-environment/-/yeoman-environment-3.11.1.tgz";
-        sha512 = "WxPntJFhdJiBtkaJOmkv/v5siWVJvLX2GB26TXMPaIgxHGhreKUwACI2jzjnsFcHv1F8Uayp668NZsz8ygalvg==";
+        url = "https://registry.npmjs.org/yeoman-environment/-/yeoman-environment-3.12.0.tgz";
+        sha512 = "W+2gD6lLzS2GUs67QjnvBYgY0SdXN3g1viI01noI/OXEW0BZYspnvs+sl6V5x+qeUk4flnT1uph49b10fEVs4A==";
       };
     };
     "yeoman-generator-5.7.0" = {
@@ -79331,15 +79439,15 @@ in
   "@angular/cli" = nodeEnv.buildNodePackage {
     name = "_at_angular_slash_cli";
     packageName = "@angular/cli";
-    version = "14.2.4";
+    version = "14.2.5";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@angular/cli/-/cli-14.2.4.tgz";
-      sha512 = "3YqwjPYlLzqQB0y6A7c3l9X1e0z418NjSQQD2e12N8y68V8nkTK4UcsDVpqb/7ce+xnQ7xGz2wb6DJddU4Wogw==";
+      url = "https://registry.npmjs.org/@angular/cli/-/cli-14.2.5.tgz";
+      sha512 = "jrvQ7nv/8k8i6D7LXrZi+DXQQkpmqoxC/NZL7hH1zyB9shlnG/ekMl+T4y7tvg3MWKxJuIfWVtz/EwOkMKmEaA==";
     };
     dependencies = [
-      sources."@angular-devkit/architect-0.1402.4"
-      sources."@angular-devkit/core-14.2.4"
-      sources."@angular-devkit/schematics-14.2.4"
+      sources."@angular-devkit/architect-0.1402.5"
+      sources."@angular-devkit/core-14.2.5"
+      sources."@angular-devkit/schematics-14.2.5"
       sources."@gar/promisify-1.1.3"
       sources."@npmcli/fs-2.1.2"
       sources."@npmcli/git-3.0.2"
@@ -79348,7 +79456,7 @@ in
       sources."@npmcli/node-gyp-2.0.0"
       sources."@npmcli/promise-spawn-3.0.0"
       sources."@npmcli/run-script-4.2.1"
-      sources."@schematics/angular-14.2.4"
+      sources."@schematics/angular-14.2.5"
       sources."@tootallnate/once-2.0.0"
       sources."@yarnpkg/lockfile-1.1.0"
       sources."abbrev-1.1.1"
@@ -79486,8 +79594,8 @@ in
       sources."ms-2.1.2"
       sources."mute-stream-0.0.8"
       sources."negotiator-0.6.3"
-      sources."node-gyp-9.1.0"
-      sources."nopt-5.0.0"
+      sources."node-gyp-9.2.0"
+      sources."nopt-6.0.0"
       sources."normalize-package-data-4.0.1"
       sources."normalize-path-3.0.0"
       sources."npm-bundled-1.1.2"
@@ -79549,7 +79657,7 @@ in
       sources."set-blocking-2.0.0"
       sources."signal-exit-3.0.7"
       sources."smart-buffer-4.2.0"
-      sources."socks-2.7.0"
+      sources."socks-2.7.1"
       sources."socks-proxy-agent-7.0.0"
       sources."source-map-0.7.4"
       sources."sourcemap-codec-1.4.8"
@@ -79600,10 +79708,10 @@ in
   "@antfu/ni" = nodeEnv.buildNodePackage {
     name = "_at_antfu_slash_ni";
     packageName = "@antfu/ni";
-    version = "0.18.0";
+    version = "0.18.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@antfu/ni/-/ni-0.18.0.tgz";
-      sha512 = "D0eek5EV8wOUpZNVAs/mPyeC5TMWFXqchqCyPiR6Lj5FgmSJw0EpFLqAczHX0O5+Jc07N7NBwBip85Gi1MBJnA==";
+      url = "https://registry.npmjs.org/@antfu/ni/-/ni-0.18.2.tgz";
+      sha512 = "OZalxEGupqCd8hKV2wyT5IHQTx1BR5/iXZEbseLpSdgcSn8fLjLOqi+LLhLly0a1XIkCAUeknV5/JXvMbjIstA==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -79637,7 +79745,7 @@ in
       sources."brace-expansion-2.0.1"
       sources."buffer-6.0.3"
       sources."colorette-2.0.19"
-      sources."commander-9.4.0"
+      sources."commander-9.4.1"
       sources."convict-6.2.3"
       sources."dateformat-4.6.3"
       sources."end-of-stream-1.4.4"
@@ -79902,7 +80010,7 @@ in
       sources."to-absolute-glob-2.0.2"
       sources."to-regex-range-5.0.1"
       sources."to-through-2.0.0"
-      sources."uglify-js-3.17.2"
+      sources."uglify-js-3.17.3"
       sources."unc-path-regex-0.1.2"
       sources."unique-stream-2.3.1"
       sources."unxhr-1.0.1"
@@ -79974,7 +80082,7 @@ in
       sources."path-key-3.1.1"
       sources."picocolors-1.0.0"
       sources."prettier-2.7.1"
-      sources."prettier-plugin-astro-0.5.4"
+      sources."prettier-plugin-astro-0.5.5"
       sources."s.color-0.0.15"
       sources."sass-formatter-0.7.5"
       sources."shebang-command-2.0.0"
@@ -80280,7 +80388,7 @@ in
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
       sources."saxes-5.0.1"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."set-blocking-2.0.0"
       sources."setimmediate-1.0.5"
       sources."setprototypeof-1.2.0"
@@ -80405,45 +80513,45 @@ in
       sources."@jridgewell/resolve-uri-3.1.0"
       sources."@jridgewell/sourcemap-codec-1.4.14"
       sources."@jridgewell/trace-mapping-0.3.9"
-      sources."@swc/core-1.3.3"
-      (sources."@swc/core-android-arm-eabi-1.3.3" // {
+      sources."@swc/core-1.3.5"
+      (sources."@swc/core-android-arm-eabi-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.122"
         ];
       })
-      (sources."@swc/core-android-arm64-1.3.3" // {
+      (sources."@swc/core-android-arm64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-darwin-arm64-1.3.3"
-      sources."@swc/core-darwin-x64-1.3.3"
-      (sources."@swc/core-freebsd-x64-1.3.3" // {
+      sources."@swc/core-darwin-arm64-1.3.5"
+      sources."@swc/core-darwin-x64-1.3.5"
+      (sources."@swc/core-freebsd-x64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-linux-arm-gnueabihf-1.3.3" // {
+      (sources."@swc/core-linux-arm-gnueabihf-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-linux-arm64-gnu-1.3.3"
-      sources."@swc/core-linux-arm64-musl-1.3.3"
-      sources."@swc/core-linux-x64-gnu-1.3.3"
-      sources."@swc/core-linux-x64-musl-1.3.3"
-      (sources."@swc/core-win32-arm64-msvc-1.3.3" // {
+      sources."@swc/core-linux-arm64-gnu-1.3.5"
+      sources."@swc/core-linux-arm64-musl-1.3.5"
+      sources."@swc/core-linux-x64-gnu-1.3.5"
+      sources."@swc/core-linux-x64-musl-1.3.5"
+      (sources."@swc/core-win32-arm64-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-win32-ia32-msvc-1.3.3" // {
+      (sources."@swc/core-win32-ia32-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-win32-x64-msvc-1.3.3"
-      sources."@swc/wasm-1.3.3"
+      sources."@swc/core-win32-x64-msvc-1.3.5"
+      sources."@swc/wasm-1.3.5"
       sources."@tsconfig/node10-1.0.9"
       sources."@tsconfig/node12-1.0.11"
       sources."@tsconfig/node14-1.0.3"
@@ -80465,14 +80573,14 @@ in
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
       sources."chalk-4.1.2"
-      sources."cliui-7.0.4"
+      sources."cliui-8.0.1"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
       sources."compare-func-2.0.0"
       sources."conventional-changelog-angular-5.0.13"
       sources."conventional-commits-parser-3.2.4"
       sources."cosmiconfig-7.0.1"
-      sources."cosmiconfig-typescript-loader-4.1.0"
+      sources."cosmiconfig-typescript-loader-4.1.1"
       sources."create-require-1.1.1"
       sources."cross-spawn-7.0.3"
       sources."dargs-7.0.0"
@@ -80606,7 +80714,7 @@ in
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
       sources."yaml-1.10.2"
-      (sources."yargs-17.5.1" // {
+      (sources."yargs-17.6.0" // {
         dependencies = [
           sources."yargs-parser-21.1.1"
         ];
@@ -80663,7 +80771,7 @@ in
     dependencies = [
       sources."ansi-regex-5.0.1"
       sources."ansi-styles-4.3.0"
-      sources."cliui-7.0.4"
+      sources."cliui-8.0.1"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
       sources."emoji-regex-8.0.0"
@@ -80675,7 +80783,7 @@ in
       sources."strip-ansi-6.0.1"
       sources."wrap-ansi-7.0.0"
       sources."y18n-5.0.8"
-      sources."yargs-17.5.1"
+      sources."yargs-17.6.0"
       sources."yargs-parser-21.1.1"
     ];
     buildInputs = globalBuildInputs;
@@ -80786,13 +80894,13 @@ in
       sources."@types/estree-0.0.51"
       sources."@types/html-minifier-terser-6.1.0"
       sources."@types/json-schema-7.0.11"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/node-fetch-2.6.2"
       sources."@typescript-eslint/types-3.10.1"
       (sources."@typescript-eslint/typescript-estree-3.10.1" // {
         dependencies = [
           sources."glob-7.2.3"
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."@typescript-eslint/visitor-keys-3.10.1"
@@ -80904,7 +81012,7 @@ in
           sources."tslib-2.4.0"
         ];
       })
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."case-1.6.3"
       sources."chainsaw-0.1.0"
       sources."chalk-2.4.2"
@@ -81012,7 +81120,7 @@ in
         ];
       })
       sources."duplexer3-0.1.5"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -81027,7 +81135,7 @@ in
       sources."entities-2.2.0"
       sources."env-paths-2.2.1"
       sources."envinfo-7.8.1"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-module-lexer-0.9.3"
       sources."es-shim-unscopables-1.0.0"
       sources."es-to-primitive-1.2.1"
@@ -81153,7 +81261,7 @@ in
       })
       sources."internal-slot-1.0.3"
       sources."interpret-2.2.0"
-      sources."io-ts-2.2.18"
+      sources."io-ts-2.2.19"
       sources."is-bigint-1.0.4"
       sources."is-boolean-object-1.1.2"
       sources."is-callable-1.2.7"
@@ -81208,12 +81316,12 @@ in
       sources."kind-of-6.0.3"
       sources."latest-version-5.1.0"
       sources."launchdarkly-eventsource-1.4.3"
-      (sources."launchdarkly-js-sdk-common-4.1.0" // {
+      (sources."launchdarkly-js-sdk-common-4.2.0" // {
         dependencies = [
           sources."uuid-8.3.2"
         ];
       })
-      sources."launchdarkly-node-client-sdk-2.0.4"
+      sources."launchdarkly-node-client-sdk-2.1.0"
       (sources."lazystream-1.0.1" // {
         dependencies = [
           sources."inherits-2.0.4"
@@ -81292,9 +81400,9 @@ in
           sources."tslib-2.4.0"
         ];
       })
-      (sources."node-abi-3.25.0" // {
+      (sources."node-abi-3.26.0" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."node-addon-api-4.3.0"
@@ -81473,7 +81581,7 @@ in
         ];
       })
       sources."terminal-link-2.1.1"
-      (sources."terser-5.15.0" // {
+      (sources."terser-5.15.1" // {
         dependencies = [
           sources."commander-2.20.3"
         ];
@@ -81514,7 +81622,7 @@ in
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
           sources."has-flag-4.0.0"
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
           sources."supports-color-7.2.0"
         ];
       })
@@ -81540,7 +81648,7 @@ in
           sources."string_decoder-1.1.1"
         ];
       })
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       (sources."uri-js-4.4.1" // {
         dependencies = [
           sources."punycode-2.1.1"
@@ -81644,7 +81752,7 @@ in
       sources."@types/http-cache-semantics-4.0.1"
       sources."@types/keyv-3.1.4"
       sources."@types/minimatch-3.0.5"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/normalize-package-data-2.4.1"
       sources."@types/responselike-1.0.0"
       sources."abort-controller-3.0.0"
@@ -81791,7 +81899,7 @@ in
       sources."lodash-4.17.21"
       (sources."log-symbols-5.1.0" // {
         dependencies = [
-          sources."chalk-5.0.1"
+          sources."chalk-5.1.0"
           sources."is-unicode-supported-1.3.0"
         ];
       })
@@ -81810,7 +81918,7 @@ in
       sources."normalize-newline-4.1.0"
       (sources."normalize-package-data-3.0.3" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."normalize-path-3.0.0"
@@ -81823,7 +81931,7 @@ in
         dependencies = [
           sources."bl-5.0.0"
           sources."buffer-6.0.3"
-          sources."chalk-5.0.1"
+          sources."chalk-5.1.0"
           sources."cli-cursor-4.0.0"
           sources."is-interactive-2.0.0"
           sources."is-unicode-supported-1.3.0"
@@ -81994,7 +82102,7 @@ in
       sources."@types/markdown-it-12.2.3"
       sources."@types/mdurl-1.0.2"
       sources."@types/minimatch-5.1.2"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/tough-cookie-2.3.8"
       sources."abbrev-1.1.1"
       sources."abort-controller-3.0.0"
@@ -82411,7 +82519,7 @@ in
       sources."map-visit-1.0.0"
       sources."markdown-it-12.3.2"
       sources."markdown-it-anchor-8.6.5"
-      sources."marked-4.1.0"
+      sources."marked-4.1.1"
       sources."md5.js-1.3.5"
       sources."mdurl-1.0.1"
       (sources."mem-4.3.0" // {
@@ -82808,7 +82916,7 @@ in
       sources."tweetnacl-0.14.5"
       sources."type-check-0.3.2"
       sources."uc.micro-1.0.6"
-      sources."uglify-js-3.17.2"
+      sources."uglify-js-3.17.3"
       sources."underscore-1.13.6"
       sources."union-value-1.0.1"
       (sources."universal-url-2.0.0" // {
@@ -82918,7 +83026,7 @@ in
       sources."argparse-1.0.10"
       sources."at-least-node-1.0.0"
       sources."base64-js-1.5.1"
-      sources."before-after-hook-2.2.2"
+      sources."before-after-hook-2.2.3"
       sources."bl-4.1.0"
       sources."bottleneck-2.19.5"
       sources."buffer-5.7.1"
@@ -82946,7 +83054,7 @@ in
       sources."is-plain-object-5.0.0"
       sources."is-unicode-supported-0.1.0"
       sources."isexe-2.0.0"
-      sources."joi-17.6.1"
+      sources."joi-17.6.2"
       sources."js-yaml-3.14.1"
       sources."jsonfile-6.1.0"
       sources."lodash-4.17.21"
@@ -83051,7 +83159,7 @@ in
       sources."@types/eslint-scope-3.7.4"
       sources."@types/estree-0.0.51"
       sources."@types/json-schema-7.0.11"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/parse-json-4.0.0"
       sources."@webassemblyjs/ast-1.11.1"
       sources."@webassemblyjs/floating-point-hex-parser-1.11.1"
@@ -83095,7 +83203,7 @@ in
       sources."buffer-5.7.1"
       sources."buffer-from-1.1.2"
       sources."callsites-3.1.0"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."chalk-3.0.0"
       sources."chardet-0.7.0"
       sources."chokidar-3.5.3"
@@ -83114,7 +83222,7 @@ in
       sources."de-indent-1.0.2"
       sources."deepmerge-4.2.2"
       sources."defaults-1.0.3"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
       sources."enhanced-resolve-5.10.0"
@@ -83252,7 +83360,7 @@ in
           sources."json-schema-traverse-0.4.1"
         ];
       })
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."serialize-javascript-6.0.0"
       sources."shebang-command-2.0.0"
       sources."shebang-regex-3.0.0"
@@ -83274,7 +83382,7 @@ in
       sources."supports-preserve-symlinks-flag-1.0.0"
       sources."symbol-observable-4.0.0"
       sources."tapable-2.2.1"
-      (sources."terser-5.15.0" // {
+      (sources."terser-5.15.1" // {
         dependencies = [
           sources."commander-2.20.3"
         ];
@@ -83294,7 +83402,7 @@ in
       sources."type-fest-0.21.3"
       sources."typescript-4.8.3"
       sources."universalify-2.0.0"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."uri-js-4.4.1"
       sources."util-deprecate-1.0.2"
       sources."vue-template-compiler-2.7.10"
@@ -83363,7 +83471,7 @@ in
       sources."strip-ansi-6.0.1"
       sources."supports-color-7.2.0"
       sources."util-deprecate-1.0.2"
-      sources."wasm-feature-detect-1.2.11"
+      sources."wasm-feature-detect-1.3.0"
       sources."wcwidth-1.0.1"
       sources."web-streams-polyfill-3.2.1"
     ];
@@ -83393,50 +83501,50 @@ in
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
-      sources."@swc/core-1.3.3"
-      (sources."@swc/core-android-arm-eabi-1.3.3" // {
+      sources."@swc/core-1.3.5"
+      (sources."@swc/core-android-arm-eabi-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.122"
         ];
       })
-      (sources."@swc/core-android-arm64-1.3.3" // {
+      (sources."@swc/core-android-arm64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-darwin-arm64-1.3.3"
-      sources."@swc/core-darwin-x64-1.3.3"
-      (sources."@swc/core-freebsd-x64-1.3.3" // {
+      sources."@swc/core-darwin-arm64-1.3.5"
+      sources."@swc/core-darwin-x64-1.3.5"
+      (sources."@swc/core-freebsd-x64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-linux-arm-gnueabihf-1.3.3" // {
+      (sources."@swc/core-linux-arm-gnueabihf-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-linux-arm64-gnu-1.3.3"
-      sources."@swc/core-linux-arm64-musl-1.3.3"
-      sources."@swc/core-linux-x64-gnu-1.3.3"
-      sources."@swc/core-linux-x64-musl-1.3.3"
-      (sources."@swc/core-win32-arm64-msvc-1.3.3" // {
+      sources."@swc/core-linux-arm64-gnu-1.3.5"
+      sources."@swc/core-linux-arm64-musl-1.3.5"
+      sources."@swc/core-linux-x64-gnu-1.3.5"
+      sources."@swc/core-linux-x64-musl-1.3.5"
+      (sources."@swc/core-win32-arm64-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-win32-ia32-msvc-1.3.3" // {
+      (sources."@swc/core-win32-ia32-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-win32-x64-msvc-1.3.3"
-      sources."@swc/wasm-1.3.3"
+      sources."@swc/core-win32-x64-msvc-1.3.5"
+      sources."@swc/wasm-1.3.5"
       sources."@tsconfig/node10-1.0.9"
       sources."@tsconfig/node12-1.0.11"
       sources."@tsconfig/node14-1.0.3"
       sources."@tsconfig/node16-1.0.3"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."acorn-7.4.1"
       sources."acorn-node-1.8.2"
       sources."acorn-walk-7.2.0"
@@ -83486,7 +83594,7 @@ in
       sources."picocolors-1.0.0"
       sources."picomatch-2.3.1"
       sources."pify-2.3.0"
-      sources."postcss-8.4.16"
+      sources."postcss-8.4.17"
       sources."postcss-import-14.1.0"
       sources."postcss-js-4.0.0"
       sources."postcss-load-config-3.1.4"
@@ -83544,50 +83652,50 @@ in
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
-      sources."@swc/core-1.3.3"
-      (sources."@swc/core-android-arm-eabi-1.3.3" // {
+      sources."@swc/core-1.3.5"
+      (sources."@swc/core-android-arm-eabi-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.122"
         ];
       })
-      (sources."@swc/core-android-arm64-1.3.3" // {
+      (sources."@swc/core-android-arm64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-darwin-arm64-1.3.3"
-      sources."@swc/core-darwin-x64-1.3.3"
-      (sources."@swc/core-freebsd-x64-1.3.3" // {
+      sources."@swc/core-darwin-arm64-1.3.5"
+      sources."@swc/core-darwin-x64-1.3.5"
+      (sources."@swc/core-freebsd-x64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-linux-arm-gnueabihf-1.3.3" // {
+      (sources."@swc/core-linux-arm-gnueabihf-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-linux-arm64-gnu-1.3.3"
-      sources."@swc/core-linux-arm64-musl-1.3.3"
-      sources."@swc/core-linux-x64-gnu-1.3.3"
-      sources."@swc/core-linux-x64-musl-1.3.3"
-      (sources."@swc/core-win32-arm64-msvc-1.3.3" // {
+      sources."@swc/core-linux-arm64-gnu-1.3.5"
+      sources."@swc/core-linux-arm64-musl-1.3.5"
+      sources."@swc/core-linux-x64-gnu-1.3.5"
+      sources."@swc/core-linux-x64-musl-1.3.5"
+      (sources."@swc/core-win32-arm64-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-win32-ia32-msvc-1.3.3" // {
+      (sources."@swc/core-win32-ia32-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-win32-x64-msvc-1.3.3"
-      sources."@swc/wasm-1.3.3"
+      sources."@swc/core-win32-x64-msvc-1.3.5"
+      sources."@swc/wasm-1.3.5"
       sources."@tsconfig/node10-1.0.9"
       sources."@tsconfig/node12-1.0.11"
       sources."@tsconfig/node14-1.0.3"
       sources."@tsconfig/node16-1.0.3"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."acorn-7.4.1"
       sources."acorn-node-1.8.2"
       sources."acorn-walk-7.2.0"
@@ -83638,7 +83746,7 @@ in
       sources."picocolors-1.0.0"
       sources."picomatch-2.3.1"
       sources."pify-2.3.0"
-      sources."postcss-8.4.16"
+      sources."postcss-8.4.17"
       sources."postcss-import-14.1.0"
       sources."postcss-js-4.0.0"
       sources."postcss-load-config-3.1.4"
@@ -83714,50 +83822,50 @@ in
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
-      sources."@swc/core-1.3.3"
-      (sources."@swc/core-android-arm-eabi-1.3.3" // {
+      sources."@swc/core-1.3.5"
+      (sources."@swc/core-android-arm-eabi-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.122"
         ];
       })
-      (sources."@swc/core-android-arm64-1.3.3" // {
+      (sources."@swc/core-android-arm64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-darwin-arm64-1.3.3"
-      sources."@swc/core-darwin-x64-1.3.3"
-      (sources."@swc/core-freebsd-x64-1.3.3" // {
+      sources."@swc/core-darwin-arm64-1.3.5"
+      sources."@swc/core-darwin-x64-1.3.5"
+      (sources."@swc/core-freebsd-x64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-linux-arm-gnueabihf-1.3.3" // {
+      (sources."@swc/core-linux-arm-gnueabihf-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-linux-arm64-gnu-1.3.3"
-      sources."@swc/core-linux-arm64-musl-1.3.3"
-      sources."@swc/core-linux-x64-gnu-1.3.3"
-      sources."@swc/core-linux-x64-musl-1.3.3"
-      (sources."@swc/core-win32-arm64-msvc-1.3.3" // {
+      sources."@swc/core-linux-arm64-gnu-1.3.5"
+      sources."@swc/core-linux-arm64-musl-1.3.5"
+      sources."@swc/core-linux-x64-gnu-1.3.5"
+      sources."@swc/core-linux-x64-musl-1.3.5"
+      (sources."@swc/core-win32-arm64-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-win32-ia32-msvc-1.3.3" // {
+      (sources."@swc/core-win32-ia32-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-win32-x64-msvc-1.3.3"
-      sources."@swc/wasm-1.3.3"
+      sources."@swc/core-win32-x64-msvc-1.3.5"
+      sources."@swc/wasm-1.3.5"
       sources."@tsconfig/node10-1.0.9"
       sources."@tsconfig/node12-1.0.11"
       sources."@tsconfig/node14-1.0.3"
       sources."@tsconfig/node16-1.0.3"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."acorn-7.4.1"
       sources."acorn-node-1.8.2"
       sources."acorn-walk-7.2.0"
@@ -83807,7 +83915,7 @@ in
       sources."picocolors-1.0.0"
       sources."picomatch-2.3.1"
       sources."pify-2.3.0"
-      sources."postcss-8.4.16"
+      sources."postcss-8.4.17"
       sources."postcss-import-14.1.0"
       sources."postcss-js-4.0.0"
       sources."postcss-load-config-3.1.4"
@@ -83865,50 +83973,50 @@ in
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
-      sources."@swc/core-1.3.3"
-      (sources."@swc/core-android-arm-eabi-1.3.3" // {
+      sources."@swc/core-1.3.5"
+      (sources."@swc/core-android-arm-eabi-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.122"
         ];
       })
-      (sources."@swc/core-android-arm64-1.3.3" // {
+      (sources."@swc/core-android-arm64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-darwin-arm64-1.3.3"
-      sources."@swc/core-darwin-x64-1.3.3"
-      (sources."@swc/core-freebsd-x64-1.3.3" // {
+      sources."@swc/core-darwin-arm64-1.3.5"
+      sources."@swc/core-darwin-x64-1.3.5"
+      (sources."@swc/core-freebsd-x64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-linux-arm-gnueabihf-1.3.3" // {
+      (sources."@swc/core-linux-arm-gnueabihf-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-linux-arm64-gnu-1.3.3"
-      sources."@swc/core-linux-arm64-musl-1.3.3"
-      sources."@swc/core-linux-x64-gnu-1.3.3"
-      sources."@swc/core-linux-x64-musl-1.3.3"
-      (sources."@swc/core-win32-arm64-msvc-1.3.3" // {
+      sources."@swc/core-linux-arm64-gnu-1.3.5"
+      sources."@swc/core-linux-arm64-musl-1.3.5"
+      sources."@swc/core-linux-x64-gnu-1.3.5"
+      sources."@swc/core-linux-x64-musl-1.3.5"
+      (sources."@swc/core-win32-arm64-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-win32-ia32-msvc-1.3.3" // {
+      (sources."@swc/core-win32-ia32-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-win32-x64-msvc-1.3.3"
-      sources."@swc/wasm-1.3.3"
+      sources."@swc/core-win32-x64-msvc-1.3.5"
+      sources."@swc/wasm-1.3.5"
       sources."@tsconfig/node10-1.0.9"
       sources."@tsconfig/node12-1.0.11"
       sources."@tsconfig/node14-1.0.3"
       sources."@tsconfig/node16-1.0.3"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."acorn-7.4.1"
       sources."acorn-node-1.8.2"
       sources."acorn-walk-7.2.0"
@@ -83961,7 +84069,7 @@ in
       sources."picocolors-1.0.0"
       sources."picomatch-2.3.1"
       sources."pify-2.3.0"
-      sources."postcss-8.4.16"
+      sources."postcss-8.4.17"
       sources."postcss-import-14.1.0"
       sources."postcss-js-4.0.0"
       sources."postcss-load-config-3.1.4"
@@ -84023,7 +84131,7 @@ in
       sources."@types/cacheable-request-6.0.2"
       sources."@types/http-cache-semantics-4.0.1"
       sources."@types/keyv-3.1.4"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/responselike-1.0.0"
       sources."accepts-1.3.8"
       sources."ansi-styles-4.3.0"
@@ -84031,7 +84139,7 @@ in
       sources."asynckit-0.4.0"
       sources."atob-2.1.2"
       sources."available-typed-arrays-1.0.5"
-      sources."aws-sdk-2.1225.0"
+      sources."aws-sdk-2.1230.0"
       sources."base64-js-1.5.1"
       (sources."basic-auth-2.0.1" // {
         dependencies = [
@@ -84084,7 +84192,7 @@ in
       sources."ee-first-1.1.1"
       sources."encodeurl-1.0.2"
       sources."end-of-stream-1.4.4"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-to-primitive-1.2.1"
       sources."escape-goat-3.0.0"
       sources."escape-html-1.0.3"
@@ -84513,7 +84621,7 @@ in
       sources."@types/ejs-3.1.1"
       sources."@types/express-4.17.13"
       sources."@types/express-serve-static-core-4.17.30"
-      sources."@types/inquirer-8.2.3"
+      sources."@types/inquirer-8.2.4"
       (sources."@types/jscodeshift-0.7.2" // {
         dependencies = [
           sources."ast-types-0.12.1"
@@ -84522,7 +84630,7 @@ in
       })
       sources."@types/long-4.0.2"
       sources."@types/mime-3.0.1"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/normalize-package-data-2.4.1"
       sources."@types/qs-6.9.7"
       sources."@types/range-parser-1.2.4"
@@ -84595,7 +84703,7 @@ in
       })
       sources."base64-js-1.5.1"
       sources."bl-4.1.0"
-      (sources."body-parser-1.20.0" // {
+      (sources."body-parser-1.20.1" // {
         dependencies = [
           sources."debug-2.6.9"
           sources."iconv-lite-0.4.24"
@@ -84627,7 +84735,7 @@ in
       })
       sources."call-bind-1.0.2"
       sources."camelcase-6.3.0"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."caw-2.0.1"
       sources."chalk-4.1.2"
       sources."chardet-0.7.0"
@@ -84680,7 +84788,7 @@ in
       sources."cookie-0.5.0"
       sources."cookie-signature-1.0.6"
       sources."copy-descriptor-0.1.1"
-      sources."core-js-compat-3.25.3"
+      sources."core-js-compat-3.25.5"
       sources."core-util-is-1.0.3"
       sources."cors-2.8.5"
       (sources."cross-spawn-6.0.5" // {
@@ -84742,7 +84850,7 @@ in
       sources."easy-stack-1.0.1"
       sources."ee-first-1.1.1"
       sources."ejs-3.1.8"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       sources."emoji-regex-8.0.0"
       sources."encodeurl-1.0.2"
       sources."encoding-0.1.13"
@@ -84781,7 +84889,10 @@ in
       })
       (sources."express-4.18.1" // {
         dependencies = [
+          sources."body-parser-1.20.0"
           sources."debug-2.6.9"
+          sources."iconv-lite-0.4.24"
+          sources."qs-6.10.3"
         ];
       })
       sources."express-history-api-fallback-2.2.1"
@@ -84850,7 +84961,7 @@ in
           sources."which-2.0.2"
         ];
       })
-      sources."flow-parser-0.187.1"
+      sources."flow-parser-0.188.2"
       sources."for-in-1.0.2"
       sources."forwarded-0.2.0"
       sources."fragment-cache-0.2.1"
@@ -84963,7 +85074,7 @@ in
         ];
       })
       sources."javascript-stringify-2.1.0"
-      sources."joi-17.6.1"
+      sources."joi-17.6.2"
       sources."js-message-1.0.7"
       sources."js-tokens-4.0.0"
       sources."js-yaml-4.1.0"
@@ -85132,7 +85243,7 @@ in
         ];
       })
       sources."posix-character-classes-0.1.1"
-      (sources."postcss-8.4.16" // {
+      (sources."postcss-8.4.17" // {
         dependencies = [
           sources."nanoid-3.3.4"
         ];
@@ -85150,7 +85261,7 @@ in
       sources."proxy-addr-2.0.7"
       sources."ps-list-7.2.0"
       sources."pump-3.0.0"
-      sources."qs-6.10.3"
+      sources."qs-6.11.0"
       sources."query-string-5.1.1"
       sources."queue-microtask-1.2.3"
       sources."range-parser-1.2.1"
@@ -85198,7 +85309,7 @@ in
           sources."commander-2.20.3"
         ];
       })
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       (sources."send-0.18.0" // {
         dependencies = [
           (sources."debug-2.6.9" // {
@@ -85366,7 +85477,7 @@ in
           sources."has-values-0.1.4"
         ];
       })
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."urix-0.1.0"
       sources."url-parse-lax-3.0.0"
       sources."url-to-options-1.0.1"
@@ -85856,7 +85967,7 @@ in
       sources."mdast-util-gfm-table-1.0.6"
       sources."mdast-util-gfm-task-list-item-1.0.1"
       sources."mdast-util-mdx-1.1.0"
-      sources."mdast-util-mdx-expression-1.3.0"
+      sources."mdast-util-mdx-expression-1.3.1"
       (sources."mdast-util-mdx-jsx-1.2.0" // {
         dependencies = [
           sources."@types/estree-jsx-0.0.1"
@@ -85866,8 +85977,8 @@ in
       sources."mdast-util-to-markdown-1.3.0"
       sources."mdast-util-to-nlcst-5.2.1"
       sources."mdast-util-to-string-3.1.0"
-      sources."meow-10.1.4"
-      sources."micromark-3.0.10"
+      sources."meow-10.1.5"
+      sources."micromark-3.1.0"
       sources."micromark-core-commonmark-1.0.6"
       sources."micromark-extension-frontmatter-1.0.0"
       sources."micromark-extension-gfm-2.0.1"
@@ -85899,7 +86010,7 @@ in
       sources."micromark-util-html-tag-name-1.1.0"
       sources."micromark-util-normalize-identifier-1.0.0"
       sources."micromark-util-resolve-all-1.0.0"
-      sources."micromark-util-sanitize-uri-1.0.0"
+      sources."micromark-util-sanitize-uri-1.1.0"
       sources."micromark-util-subtokenize-1.0.2"
       sources."micromark-util-symbol-1.0.1"
       sources."micromark-util-types-1.0.2"
@@ -85973,7 +86084,7 @@ in
       sources."retext-profanities-7.1.0"
       sources."sade-1.8.1"
       sources."safe-buffer-5.2.1"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       (sources."semver-diff-3.1.1" // {
         dependencies = [
           sources."semver-6.3.0"
@@ -86157,7 +86268,7 @@ in
       sources."balanced-match-1.0.2"
       sources."brace-expansion-2.0.1"
       sources."browserslist-4.21.4"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."chalk-2.4.2"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
@@ -86167,7 +86278,7 @@ in
       sources."convert-source-map-1.8.0"
       sources."debug-4.3.4"
       sources."ejs-3.1.6"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       sources."ensure-posix-path-1.1.1"
       sources."escalade-3.1.1"
       sources."escape-string-regexp-1.0.5"
@@ -86248,7 +86359,7 @@ in
       sources."to-fast-properties-2.0.0"
       sources."underscore-1.6.0"
       sources."universalify-0.1.2"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."walk-sync-0.3.4"
       sources."which-1.3.1"
       sources."xml2js-0.2.8"
@@ -86293,7 +86404,7 @@ in
       sources."cache-content-type-1.0.1"
       sources."caseless-0.12.0"
       sources."chalk-2.4.2"
-      sources."cliui-7.0.4"
+      sources."cliui-8.0.1"
       sources."co-4.6.0"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
@@ -86444,7 +86555,7 @@ in
         ];
       })
       sources."y18n-5.0.8"
-      sources."yargs-17.5.1"
+      sources."yargs-17.6.0"
       sources."yargs-parser-21.1.1"
       sources."ylru-1.3.2"
     ];
@@ -86469,7 +86580,7 @@ in
     dependencies = [
       sources."@types/glob-7.2.0"
       sources."@types/minimatch-5.1.2"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
       sources."chromium-pickle-js-0.2.0"
@@ -86554,18 +86665,18 @@ in
     };
     dependencies = [
       sources."browserslist-4.21.4"
-      sources."caniuse-lite-1.0.30001412"
-      sources."electron-to-chromium-1.4.266"
+      sources."caniuse-lite-1.0.30001418"
+      sources."electron-to-chromium-1.4.275"
       sources."escalade-3.1.1"
       sources."fraction.js-4.2.0"
       sources."nanoid-3.3.4"
       sources."node-releases-2.0.6"
       sources."normalize-range-0.1.2"
       sources."picocolors-1.0.0"
-      sources."postcss-8.4.16"
+      sources."postcss-8.4.17"
       sources."postcss-value-parser-4.2.0"
       sources."source-map-js-1.0.2"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -86577,6 +86688,44 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
+  auto-changelog = nodeEnv.buildNodePackage {
+    name = "auto-changelog";
+    packageName = "auto-changelog";
+    version = "2.4.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/auto-changelog/-/auto-changelog-2.4.0.tgz";
+      sha512 = "vh17hko1c0ItsEcw6m7qPRf3m45u+XK5QyCrrBFViElZ8jnKrPC1roSznrd1fIB/0vR/zawdECCRJtTuqIXaJw==";
+    };
+    dependencies = [
+      sources."commander-7.2.0"
+      sources."encoding-0.1.13"
+      sources."handlebars-4.7.7"
+      sources."iconv-lite-0.6.3"
+      sources."lru-cache-6.0.0"
+      sources."minimist-1.2.6"
+      sources."neo-async-2.6.2"
+      sources."node-fetch-2.6.7"
+      sources."parse-github-url-1.0.2"
+      sources."safer-buffer-2.1.2"
+      sources."semver-7.3.8"
+      sources."source-map-0.6.1"
+      sources."tr46-0.0.3"
+      sources."uglify-js-3.17.3"
+      sources."webidl-conversions-3.0.1"
+      sources."whatwg-url-5.0.0"
+      sources."wordwrap-1.0.0"
+      sources."yallist-4.0.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Command line tool for generating a changelog from git tags and commit history";
+      homepage = "https://github.com/CookPete/auto-changelog";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = true;
+    reconstructLock = true;
+  };
   aws-azure-login = nodeEnv.buildNodePackage {
     name = "aws-azure-login";
     packageName = "aws-azure-login";
@@ -86587,7 +86736,7 @@ in
     };
     dependencies = [
       sources."@tootallnate/once-1.1.2"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/yauzl-2.10.0"
       sources."agent-base-6.0.2"
       sources."ansi-escapes-4.3.2"
@@ -86595,7 +86744,7 @@ in
       sources."ansi-styles-4.3.0"
       sources."ast-types-0.13.4"
       sources."available-typed-arrays-1.0.5"
-      (sources."aws-sdk-2.1225.0" // {
+      (sources."aws-sdk-2.1230.0" // {
         dependencies = [
           sources."uuid-8.0.0"
         ];
@@ -86646,7 +86795,7 @@ in
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
       sources."entities-2.2.0"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-to-primitive-1.2.1"
       sources."escape-string-regexp-1.0.5"
       sources."escodegen-1.14.3"
@@ -86781,7 +86930,7 @@ in
       sources."side-channel-1.0.4"
       sources."signal-exit-3.0.7"
       sources."smart-buffer-4.2.0"
-      (sources."socks-2.7.0" // {
+      (sources."socks-2.7.1" // {
         dependencies = [
           sources."ip-2.0.0"
         ];
@@ -86846,10 +86995,10 @@ in
   aws-cdk = nodeEnv.buildNodePackage {
     name = "aws-cdk";
     packageName = "aws-cdk";
-    version = "2.43.1";
+    version = "2.45.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/aws-cdk/-/aws-cdk-2.43.1.tgz";
-      sha512 = "Y+Pomc+LdQ14h+CvFZg+FeqcLpV8MJcoFhqcoOtGi0xC8CkdGAWH+MfIWcqePk7OVOMIzDJP2eBdd9te2CrjcQ==";
+      url = "https://registry.npmjs.org/aws-cdk/-/aws-cdk-2.45.0.tgz";
+      sha512 = "AIug6Ugvtd3I0+U3gTNZtJVDhOgpGpxwWMoOQUlX6xKGwDgQxWrWdq2QWe7ZyKgCRnY9SM90fa+Yxbx+VYk9Bw==";
     };
     dependencies = [
       sources."fsevents-2.3.2"
@@ -87060,7 +87209,7 @@ in
       sources."nice-try-1.0.5"
       (sources."normalize-package-data-3.0.3" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."normalize-url-4.5.1"
@@ -87285,10 +87434,10 @@ in
   balanceofsatoshis = nodeEnv.buildNodePackage {
     name = "balanceofsatoshis";
     packageName = "balanceofsatoshis";
-    version = "13.0.1";
+    version = "13.1.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/balanceofsatoshis/-/balanceofsatoshis-13.0.1.tgz";
-      sha512 = "b9AldeD9waKEeYjmDLd6Vo6VwrD9uMb2+TV7Gdxu2tTm5jXwlPJdnYlkngTe10zx6+CwGbW8wxJbxAEN0+MVRA==";
+      url = "https://registry.npmjs.org/balanceofsatoshis/-/balanceofsatoshis-13.1.1.tgz";
+      sha512 = "KDuH6RAEeNEq5mD4TF/RgFV1RiSCPecB9fdysem5597NshdmFrC5Epi7D1FwLiNiA6KIPSAd7dXr2K6dPcZA8Q==";
     };
     dependencies = [
       (sources."@alexbosworth/caporal-1.4.4" // {
@@ -87337,7 +87486,7 @@ in
       sources."@types/express-serve-static-core-4.17.31"
       sources."@types/long-4.0.2"
       sources."@types/mime-3.0.1"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/qs-6.9.7"
       sources."@types/range-parser-1.2.4"
       sources."@types/request-2.48.8"
@@ -87486,7 +87635,7 @@ in
           sources."ln-service-53.23.0"
         ];
       })
-      (sources."grammy-1.11.1" // {
+      (sources."grammy-1.11.2" // {
         dependencies = [
           sources."debug-4.3.4"
           sources."ms-2.1.2"
@@ -87518,7 +87667,7 @@ in
           sources."ansi-escapes-5.0.0"
           sources."ansi-regex-6.0.1"
           sources."ansi-styles-6.1.1"
-          sources."chalk-5.0.1"
+          sources."chalk-5.1.0"
           sources."cli-cursor-4.0.0"
           sources."cli-width-4.0.0"
           sources."emoji-regex-9.2.2"
@@ -87566,44 +87715,104 @@ in
           sources."ecpair-2.0.1"
         ];
       })
-      (sources."ln-accounting-5.0.7" // {
+      sources."ln-accounting-6.0.0"
+      (sources."ln-service-54.2.0" // {
+        dependencies = [
+          sources."@grpc/grpc-js-1.7.1"
+          sources."@grpc/proto-loader-0.7.3"
+          sources."@types/express-4.17.14"
+          sources."@types/node-18.8.1"
+          sources."lightning-6.2.0"
+          sources."type-fest-3.0.0"
+          sources."ws-8.9.0"
+        ];
+      })
+      (sources."ln-sync-3.14.0" // {
+        dependencies = [
+          sources."@grpc/grpc-js-1.6.11"
+          sources."@types/node-18.7.14"
+          sources."ecpair-2.0.1"
+          sources."lightning-5.20.2"
+          sources."ln-service-53.22.0"
+        ];
+      })
+      (sources."ln-telegram-3.22.5" // {
         dependencies = [
           sources."@grpc/grpc-js-1.6.7"
           sources."@grpc/proto-loader-0.6.12"
           sources."@types/node-17.0.33"
-          sources."async-3.2.3"
-          sources."asyncjs-util-1.2.9"
           sources."bitcoinjs-lib-6.0.1"
           sources."bn.js-5.2.0"
           sources."bolt01-1.2.4"
-          sources."bolt07-1.8.1"
           sources."colorette-2.0.16"
+          sources."debug-4.3.4"
           sources."ecpair-2.0.1"
-          sources."goldengate-11.2.2"
-          sources."invoices-2.0.6"
+          sources."grammy-1.11.1"
+          (sources."invoices-2.0.6" // {
+            dependencies = [
+              sources."bolt07-1.8.1"
+            ];
+          })
           (sources."lightning-5.16.0" // {
             dependencies = [
+              sources."async-3.2.3"
+              sources."asyncjs-util-1.2.9"
+              sources."bolt07-1.8.1"
               sources."psbt-2.0.1"
             ];
           })
-          (sources."ln-service-53.17.1" // {
+          (sources."ln-accounting-5.0.7" // {
             dependencies = [
               sources."@types/node-17.0.38"
+              sources."async-3.2.3"
+              sources."asyncjs-util-1.2.9"
               sources."bn.js-5.2.1"
-              sources."lightning-5.16.1"
-              sources."psbt-2.3.0"
+              sources."bolt07-1.8.1"
+              sources."goldengate-11.2.2"
+              (sources."ln-service-53.17.1" // {
+                dependencies = [
+                  sources."lightning-5.16.1"
+                  sources."psbt-2.3.0"
+                  sources."ws-8.7.0"
+                ];
+              })
+              (sources."ln-sync-3.12.1" // {
+                dependencies = [
+                  sources."ln-service-53.17.0"
+                  sources."psbt-2.3.0"
+                ];
+              })
               sources."type-fest-2.13.0"
-              sources."ws-8.7.0"
             ];
           })
-          (sources."ln-sync-3.12.1" // {
+          (sources."ln-service-53.23.0" // {
             dependencies = [
+              sources."@grpc/grpc-js-1.6.12"
+              sources."@grpc/proto-loader-0.7.2"
+              sources."@types/node-18.7.14"
+              sources."bitcoinjs-lib-6.0.2"
               sources."bn.js-5.2.1"
-              sources."ln-service-53.17.0"
-              sources."psbt-2.3.0"
+              sources."invoices-2.2.0"
+              sources."lightning-5.21.0"
+              sources."protobufjs-7.1.2"
+              sources."psbt-2.7.1"
+              sources."type-fest-2.19.0"
+              sources."ws-8.8.1"
             ];
           })
+          sources."long-5.2.0"
+          sources."ms-2.1.2"
           sources."p2tr-1.3.1"
+          (sources."paid-services-3.21.0" // {
+            dependencies = [
+              sources."bitcoinjs-lib-6.0.2"
+              sources."bn.js-5.2.1"
+              sources."bolt01-1.2.5"
+              sources."invoices-2.2.0"
+              sources."p2tr-1.3.2"
+              sources."psbt-2.7.1"
+            ];
+          })
           sources."protobufjs-6.11.3"
           (sources."psbt-2.4.0" // {
             dependencies = [
@@ -87614,30 +87823,6 @@ in
           sources."ws-8.6.0"
         ];
       })
-      (sources."ln-service-54.1.1" // {
-        dependencies = [
-          sources."@grpc/grpc-js-1.7.1"
-          sources."@grpc/proto-loader-0.7.3"
-          sources."@types/express-4.17.14"
-          sources."lightning-6.1.1"
-          sources."type-fest-3.0.0"
-          sources."ws-8.9.0"
-        ];
-      })
-      (sources."ln-sync-3.14.0" // {
-        dependencies = [
-          sources."@grpc/grpc-js-1.6.11"
-          sources."@types/node-18.7.14"
-          sources."ecpair-2.0.1"
-          sources."lightning-5.20.2"
-          sources."ln-service-53.22.0"
-        ];
-      })
-      (sources."ln-telegram-3.22.5" // {
-        dependencies = [
-          sources."ln-service-53.23.0"
-        ];
-      })
       sources."lodash-4.17.21"
       sources."lodash.camelcase-4.3.0"
       sources."lodash.difference-4.5.0"
@@ -87649,7 +87834,7 @@ in
       sources."lodash.uniq-4.5.0"
       (sources."log-symbols-5.1.0" // {
         dependencies = [
-          sources."chalk-5.0.1"
+          sources."chalk-5.1.0"
         ];
       })
       (sources."logform-2.4.2" // {
@@ -87694,7 +87879,7 @@ in
       (sources."ora-6.1.2" // {
         dependencies = [
           sources."ansi-regex-6.0.1"
-          sources."chalk-5.0.1"
+          sources."chalk-5.1.0"
           sources."cli-cursor-4.0.0"
           sources."onetime-5.1.2"
           sources."restore-cursor-4.0.0"
@@ -87704,12 +87889,7 @@ in
       sources."os-shim-0.1.3"
       sources."os-tmpdir-1.0.2"
       sources."p2tr-1.3.2"
-      (sources."paid-services-3.21.0" // {
-        dependencies = [
-          sources."ecpair-2.0.1"
-          sources."ln-service-53.23.0"
-        ];
-      })
+      sources."paid-services-4.0.0"
       sources."parseurl-1.3.3"
       sources."path-to-regexp-0.1.7"
       sources."pinkie-2.0.4"
@@ -87801,7 +87981,7 @@ in
         ];
       })
       sources."smart-buffer-4.2.0"
-      sources."socks-2.7.0"
+      sources."socks-2.7.1"
       (sources."socks-proxy-agent-7.0.0" // {
         dependencies = [
           sources."debug-4.3.4"
@@ -88211,7 +88391,7 @@ in
           sources."bn.js-4.12.0"
         ];
       })
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-to-primitive-1.2.1"
       sources."events-3.3.0"
       sources."evp_bytestokey-1.0.3"
@@ -88383,7 +88563,7 @@ in
       sources."@socket.io/component-emitter-3.1.0"
       sources."@types/cookie-0.4.1"
       sources."@types/cors-2.8.12"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."accepts-1.3.8"
       sources."ansi-regex-2.1.1"
       sources."ansi-styles-2.2.1"
@@ -88575,8 +88755,11 @@ in
       sources."ws-8.2.3"
       sources."xmlhttprequest-ssl-2.0.0"
       sources."y18n-5.0.8"
-      (sources."yargs-17.5.1" // {
+      (sources."yargs-17.6.0" // {
         dependencies = [
+          sources."ansi-regex-5.0.1"
+          sources."cliui-8.0.1"
+          sources."strip-ansi-6.0.1"
           sources."yargs-parser-21.1.1"
         ];
       })
@@ -88650,12 +88833,12 @@ in
       })
       sources."bluebird-3.7.2"
       sources."bn.js-4.12.0"
-      (sources."body-parser-1.20.0" // {
+      (sources."body-parser-1.20.1" // {
         dependencies = [
           sources."debug-2.6.9"
         ];
       })
-      sources."bootstrap-5.2.1"
+      sources."bootstrap-5.2.2"
       sources."brace-expansion-1.1.11"
       sources."brorand-1.1.0"
       sources."bs58-4.0.1"
@@ -88751,8 +88934,10 @@ in
       sources."event-loop-stats-1.4.1"
       (sources."express-4.18.1" // {
         dependencies = [
+          sources."body-parser-1.20.0"
           sources."cookie-0.5.0"
           sources."debug-2.6.9"
+          sources."qs-6.10.3"
           sources."safe-buffer-5.2.1"
         ];
       })
@@ -88918,7 +89103,7 @@ in
       sources."punycode-2.1.1"
       sources."pushdata-bitcoin-1.0.1"
       sources."qrcode-1.5.1"
-      sources."qs-6.10.3"
+      sources."qs-6.11.0"
       sources."quick-lru-4.0.1"
       sources."random-bytes-1.0.0"
       sources."randombytes-2.1.0"
@@ -88957,7 +89142,7 @@ in
       sources."safe-buffer-5.1.2"
       sources."safe-json-stringify-1.2.0"
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       (sources."send-0.18.0" // {
         dependencies = [
           (sources."debug-2.6.9" // {
@@ -89072,7 +89257,7 @@ in
       sources."@protobufjs/pool-1.1.0"
       sources."@protobufjs/utf8-1.1.0"
       sources."@types/long-4.0.2"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."addr-to-ip-port-1.5.4"
       sources."airplay-js-0.2.16"
       sources."ajv-6.12.6"
@@ -89134,7 +89319,7 @@ in
       sources."co-3.1.0"
       sources."codepage-1.4.0"
       sources."combined-stream-1.0.8"
-      sources."commander-9.4.0"
+      sources."commander-9.4.1"
       sources."compact2string-1.4.1"
       sources."concat-map-0.0.1"
       (sources."concat-stream-2.0.0" // {
@@ -89545,7 +89730,7 @@ in
       sources."call-me-maybe-1.0.1"
       sources."camelcase-4.1.0"
       sources."camelcase-keys-4.2.0"
-      sources."capture-stack-trace-1.0.1"
+      sources."capture-stack-trace-1.0.2"
       sources."chalk-2.4.2"
       sources."chardet-0.7.0"
       sources."ci-info-1.6.0"
@@ -90168,10 +90353,10 @@ in
   cdk8s-cli = nodeEnv.buildNodePackage {
     name = "cdk8s-cli";
     packageName = "cdk8s-cli";
-    version = "2.0.122";
+    version = "2.1.7";
     src = fetchurl {
-      url = "https://registry.npmjs.org/cdk8s-cli/-/cdk8s-cli-2.0.122.tgz";
-      sha512 = "hWo3bvzTHBn0IvJFyInXSWrIzqNEBlMW2klyCTLVSNiN7wZR4XQiRjRRw/OdZb4LnOemewYPsLWVD0KbQ32ThQ==";
+      url = "https://registry.npmjs.org/cdk8s-cli/-/cdk8s-cli-2.1.7.tgz";
+      sha512 = "DpYA4Vpgk/FBokefXPl1aocUFdrd5diPFPqmCz9w8l/ZB8QKqXV2DPty5CpYc6X4lIAqFjSufqNdEBTVrhBtsw==";
     };
     dependencies = [
       sources."@jsii/check-node-1.69.0"
@@ -90179,17 +90364,18 @@ in
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
-      sources."@types/node-12.20.55"
+      sources."@types/node-14.18.31"
       sources."@xmldom/xmldom-0.8.2"
       sources."ajv-8.11.0"
       sources."ansi-regex-5.0.1"
       sources."ansi-styles-4.3.0"
+      sources."astral-regex-2.0.0"
       sources."at-least-node-1.0.0"
       sources."braces-3.0.2"
       sources."camelcase-6.3.0"
       sources."case-1.6.3"
-      sources."cdk8s-2.4.39"
-      sources."cdk8s-plus-22-2.0.0-rc.132"
+      sources."cdk8s-2.5.9"
+      sources."cdk8s-plus-22-2.0.0-rc.141"
       sources."chalk-4.1.2"
       sources."cliui-7.0.4"
       sources."clone-2.1.2"
@@ -90202,7 +90388,7 @@ in
       sources."color-name-1.1.4"
       sources."colors-1.4.0"
       sources."commonmark-0.30.0"
-      sources."constructs-10.1.115"
+      sources."constructs-10.1.124"
       sources."date-format-4.0.14"
       sources."debug-4.3.4"
       sources."decamelize-5.0.1"
@@ -90256,17 +90442,18 @@ in
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-srcmak-0.1.688" // {
+      (sources."jsii-srcmak-0.1.695" // {
         dependencies = [
           sources."fs-extra-9.1.0"
         ];
       })
       sources."json-schema-0.4.0"
       sources."json-schema-traverse-1.0.0"
-      sources."json2jsii-0.3.135"
+      sources."json2jsii-0.3.144"
       sources."jsonfile-6.1.0"
       sources."locate-path-5.0.0"
-      sources."log4js-6.6.1"
+      sources."lodash.truncate-4.4.2"
+      sources."log4js-6.7.0"
       sources."lower-case-2.0.2"
       sources."lru-cache-6.0.0"
       sources."mdurl-1.0.1"
@@ -90290,13 +90477,14 @@ in
       sources."reusify-1.0.4"
       sources."rfdc-1.3.0"
       sources."run-parallel-1.2.0"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       (sources."semver-intersect-1.4.0" // {
         dependencies = [
           sources."semver-5.7.1"
         ];
       })
       sources."set-blocking-2.0.0"
+      sources."slice-ansi-4.0.0"
       sources."snake-case-3.0.4"
       sources."sort-json-2.0.1"
       sources."spdx-license-list-6.6.0"
@@ -90306,6 +90494,7 @@ in
       sources."string.prototype.repeat-0.2.0"
       sources."strip-ansi-6.0.1"
       sources."supports-color-7.2.0"
+      sources."table-6.8.0"
       sources."to-regex-range-5.0.1"
       sources."tslib-2.4.0"
       sources."typescript-3.9.10"
@@ -90342,10 +90531,10 @@ in
   cdktf-cli = nodeEnv.buildNodePackage {
     name = "cdktf-cli";
     packageName = "cdktf-cli";
-    version = "0.12.2";
+    version = "0.13.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/cdktf-cli/-/cdktf-cli-0.12.2.tgz";
-      sha512 = "HO4+66ENqSzSCNhHe3uEd27YcBCI7n1+EGruTalswuA46jhr0nXuHAcJrxiU3U0NHYROIxn7r7YYkcZ0x0l1Ig==";
+      url = "https://registry.npmjs.org/cdktf-cli/-/cdktf-cli-0.13.0.tgz";
+      sha512 = "3RrPxVm9edQ+LgxRAhOpb22B+WmP33XWNs2Djv2cEg7bz/PkkWZOEb+uMeFoRrD24ZvPyfphlBFQb4TjHAB/ZQ==";
     };
     dependencies = [
       sources."@babel/code-frame-7.18.6"
@@ -90356,9 +90545,9 @@ in
       sources."@babel/parser-7.19.3"
       sources."@babel/template-7.18.10"
       sources."@babel/types-7.19.3"
-      sources."@cdktf/hcl2cdk-0.12.2"
-      sources."@cdktf/hcl2json-0.12.2"
-      sources."@cdktf/provider-generator-0.12.2"
+      sources."@cdktf/hcl2cdk-0.13.0"
+      sources."@cdktf/hcl2json-0.13.0"
+      sources."@cdktf/provider-generator-0.13.0"
       sources."@jridgewell/gen-mapping-0.3.2"
       sources."@jridgewell/resolve-uri-3.1.0"
       sources."@jridgewell/set-array-1.1.2"
@@ -90384,7 +90573,7 @@ in
       sources."@sentry/node-6.19.7"
       sources."@sentry/types-6.19.7"
       sources."@sentry/utils-6.19.7"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/node-fetch-2.6.2"
       sources."@types/prop-types-15.7.5"
       sources."@types/react-18.0.21"
@@ -90413,7 +90602,7 @@ in
       sources."bufferutil-4.0.6"
       sources."camelcase-6.3.0"
       sources."case-1.6.3"
-      sources."cdktf-0.12.2"
+      sources."cdktf-0.13.0"
       sources."chalk-2.4.2"
       sources."ci-info-2.0.0"
       sources."cli-boxes-2.2.1"
@@ -90435,7 +90624,7 @@ in
       sources."combined-stream-1.0.8"
       sources."commonmark-0.30.0"
       sources."concat-map-0.0.1"
-      sources."constructs-10.1.115"
+      sources."constructs-10.1.124"
       sources."convert-to-spaces-1.0.2"
       sources."cookie-0.4.2"
       sources."cross-spawn-7.0.3"
@@ -90471,7 +90660,7 @@ in
       })
       sources."glob-parent-5.1.2"
       sources."graceful-fs-4.2.10"
-      (sources."graphology-0.24.1" // {
+      (sources."graphology-0.25.0" // {
         dependencies = [
           sources."graphology-types-0.24.4"
         ];
@@ -90567,7 +90756,7 @@ in
           sources."yargs-parser-20.2.9"
         ];
       })
-      (sources."jsii-srcmak-0.1.688" // {
+      (sources."jsii-srcmak-0.1.695" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."jsonfile-6.1.0"
@@ -90580,7 +90769,7 @@ in
       sources."locate-path-5.0.0"
       sources."lodash-4.17.21"
       sources."lodash.isequal-4.5.0"
-      sources."log4js-6.6.1"
+      sources."log4js-6.7.0"
       sources."loose-envify-1.4.0"
       sources."lru-cache-6.0.0"
       sources."lru_map-0.3.3"
@@ -90632,7 +90821,7 @@ in
       sources."safer-buffer-2.1.2"
       sources."sax-1.2.4"
       sources."scheduler-0.20.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       (sources."semver-intersect-1.4.0" // {
         dependencies = [
           sources."semver-5.7.1"
@@ -90691,10 +90880,10 @@ in
       sources."xmlbuilder-15.1.1"
       sources."y18n-4.0.3"
       sources."yallist-4.0.0"
-      (sources."yargs-17.5.1" // {
+      (sources."yargs-17.6.0" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
-          sources."cliui-7.0.4"
+          sources."cliui-8.0.1"
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
           sources."wrap-ansi-7.0.0"
@@ -90827,7 +91016,7 @@ in
       sources."locate-path-6.0.0"
       sources."lru-cache-6.0.0"
       sources."map-obj-4.3.0"
-      sources."meow-10.1.4"
+      sources."meow-10.1.5"
       sources."merge-stream-2.0.0"
       sources."mimic-fn-2.1.0"
       sources."min-indent-1.0.1"
@@ -90844,7 +91033,7 @@ in
       sources."read-pkg-6.0.0"
       sources."read-pkg-up-8.0.0"
       sources."redent-4.0.0"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."shebang-command-2.0.0"
       sources."shebang-regex-3.0.0"
       sources."signal-exit-3.0.7"
@@ -91431,7 +91620,7 @@ in
       sources."duplexer2-0.1.4"
       sources."encoding-0.1.13"
       sources."end-of-stream-1.4.4"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-to-primitive-1.2.1"
       sources."event-lite-0.1.2"
       sources."execa-1.0.0"
@@ -91497,7 +91686,7 @@ in
         ];
       })
       sources."lodash-4.17.21"
-      sources."log4js-6.6.1"
+      sources."log4js-6.7.0"
       sources."lru-cache-6.0.0"
       sources."metals-languageclient-0.4.2"
       sources."minimatch-3.1.2"
@@ -91543,7 +91732,7 @@ in
       sources."safe-buffer-5.2.1"
       sources."safe-regex-test-1.0.0"
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."setimmediate-1.0.5"
       sources."shebang-command-1.2.0"
       sources."shebang-regex-1.0.0"
@@ -91642,7 +91831,7 @@ in
       sha512 = "xT62PH/Ffomul8c5wy4BIdk7IFt4RsqM5hI9w2YU4oq9jWgS6QcMZp2fGcwZJO3L7G4pdjSGtfjFpWVL5KhVzA==";
     };
     dependencies = [
-      sources."pyright-1.1.273"
+      sources."pyright-1.1.274"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -91716,10 +91905,10 @@ in
   coc-rust-analyzer = nodeEnv.buildNodePackage {
     name = "coc-rust-analyzer";
     packageName = "coc-rust-analyzer";
-    version = "0.68.2";
+    version = "0.68.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-rust-analyzer/-/coc-rust-analyzer-0.68.2.tgz";
-      sha512 = "OPC0Wkuu8B7H9QqJJhgoGtVLAsHiPeXw7NmC/C4sXr/uHV2CZJlRHF0SVI0eD6HsreKFFgaMb8hD33gV/vY+PQ==";
+      url = "https://registry.npmjs.org/coc-rust-analyzer/-/coc-rust-analyzer-0.68.4.tgz";
+      sha512 = "90PFsmwheDgytlzH65RGjnTFCVzMhfmvjOCj0VkgnuAEuiBbccMPQv/cuzS5Mbj6e74NWG5FI4QHRukEgsZdPA==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -91951,7 +92140,7 @@ in
       sources."callsites-3.1.0"
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       (sources."chalk-4.1.2" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
@@ -91988,7 +92177,7 @@ in
       sources."domelementtype-1.3.1"
       sources."domhandler-2.4.2"
       sources."domutils-1.7.0"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       sources."emoji-regex-8.0.0"
       sources."entities-1.1.2"
       sources."error-ex-1.3.2"
@@ -92087,7 +92276,7 @@ in
       sources."node-releases-2.0.6"
       (sources."normalize-package-data-3.0.3" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."normalize-range-0.1.2"
@@ -92192,7 +92381,7 @@ in
       sources."unist-util-find-all-after-3.0.2"
       sources."unist-util-is-4.1.0"
       sources."unist-util-stringify-position-2.0.3"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."uri-js-4.4.1"
       sources."util-deprecate-1.0.2"
       sources."v8-compile-cache-2.3.0"
@@ -92605,7 +92794,7 @@ in
       sources."resolve-1.22.1"
       sources."resolve-from-4.0.0"
       sources."rimraf-3.0.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."shebang-command-2.0.0"
       sources."shebang-regex-3.0.0"
       (sources."slice-ansi-4.0.0" // {
@@ -92775,7 +92964,7 @@ in
       sources."buffer-alloc-unsafe-1.1.0"
       sources."buffer-crc32-0.2.13"
       sources."buffer-fill-1.0.0"
-      sources."capture-stack-trace-1.0.1"
+      sources."capture-stack-trace-1.0.2"
       sources."caw-2.0.1"
       sources."chalk-2.4.2"
       sources."cmd-shim-2.1.0"
@@ -93007,7 +93196,7 @@ in
           sources."supports-color-7.2.0"
         ];
       })
-      sources."cliui-7.0.4"
+      sources."cliui-8.0.1"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
       sources."date-fns-2.29.3"
@@ -93028,7 +93217,7 @@ in
       sources."tslib-2.4.0"
       sources."wrap-ansi-7.0.0"
       sources."y18n-5.0.8"
-      sources."yargs-17.5.1"
+      sources."yargs-17.6.0"
       sources."yargs-parser-21.1.1"
     ];
     buildInputs = globalBuildInputs;
@@ -93241,7 +93430,7 @@ in
       sources."neo-async-2.6.2"
       (sources."normalize-package-data-3.0.3" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."p-limit-1.3.0"
@@ -93294,7 +93483,7 @@ in
       sources."through2-4.0.2"
       sources."trim-newlines-3.0.1"
       sources."type-fest-0.18.1"
-      sources."uglify-js-3.17.2"
+      sources."uglify-js-3.17.3"
       sources."util-deprecate-1.0.2"
       sources."uuid-3.4.0"
       sources."validate-npm-package-license-3.0.4"
@@ -93815,7 +94004,7 @@ in
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
       sources."sax-1.1.4"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       (sources."semver-diff-3.1.1" // {
         dependencies = [
           sources."semver-6.3.0"
@@ -93841,7 +94030,7 @@ in
       sources."signal-exit-3.0.7"
       sources."slash-3.0.0"
       sources."smart-buffer-4.2.0"
-      sources."socks-2.7.0"
+      sources."socks-2.7.1"
       sources."socks-proxy-agent-6.2.1"
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
@@ -94012,7 +94201,7 @@ in
       sources."lru-cache-6.0.0"
       sources."make-dir-3.1.0"
       sources."map-obj-4.3.0"
-      sources."meow-10.1.4"
+      sources."meow-10.1.5"
       sources."merge2-1.4.1"
       sources."micromatch-4.0.5"
       sources."min-indent-1.0.1"
@@ -94024,7 +94213,7 @@ in
       sources."nested-error-stacks-2.1.1"
       (sources."normalize-package-data-3.0.3" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."p-event-4.2.0"
@@ -94090,7 +94279,7 @@ in
       sources."@cycle/run-3.4.0"
       sources."@cycle/time-0.10.1"
       sources."@types/cookiejar-2.1.2"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/superagent-3.8.2"
       sources."ansi-escapes-3.2.0"
       sources."ansi-regex-2.1.1"
@@ -94291,7 +94480,7 @@ in
       sources."readable-stream-1.1.14"
       sources."rimraf-2.7.1"
       sources."safe-buffer-5.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."shebang-command-2.0.0"
       sources."shebang-regex-3.0.0"
       sources."sisteransi-1.0.5"
@@ -94355,10 +94544,10 @@ in
   cspell = nodeEnv.buildNodePackage {
     name = "cspell";
     packageName = "cspell";
-    version = "6.10.1";
+    version = "6.12.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/cspell/-/cspell-6.10.1.tgz";
-      sha512 = "dO40EnUDlYZarnuha013Les7X2nVoHANzPpTPJYfh4AidP7WvMpqDaIdVODRxxjdjF9sYYFdkyM8xqmAga+3tQ==";
+      url = "https://registry.npmjs.org/cspell/-/cspell-6.12.0.tgz";
+      sha512 = "ny4xVEPYFP2jVf5w71Mnk4HKj6RbPH+CMSzUrOMbYVVNnQUj3GLfzy5DrSFLG0zGa353ZRC4/s9MsEvnAL8mkA==";
     };
     dependencies = [
       sources."@babel/code-frame-7.18.6"
@@ -94373,10 +94562,10 @@ in
           sources."supports-color-5.5.0"
         ];
       })
-      sources."@cspell/cspell-bundled-dicts-6.10.1"
-      sources."@cspell/cspell-pipe-6.10.1"
-      sources."@cspell/cspell-service-bus-6.10.1"
-      sources."@cspell/cspell-types-6.10.1"
+      sources."@cspell/cspell-bundled-dicts-6.12.0"
+      sources."@cspell/cspell-pipe-6.12.0"
+      sources."@cspell/cspell-service-bus-6.12.0"
+      sources."@cspell/cspell-types-6.12.0"
       sources."@cspell/dict-ada-2.0.1"
       sources."@cspell/dict-aws-2.0.0"
       sources."@cspell/dict-bash-2.0.4"
@@ -94405,7 +94594,7 @@ in
       sources."@cspell/dict-lorem-ipsum-2.0.1"
       sources."@cspell/dict-lua-2.0.0"
       sources."@cspell/dict-node-3.0.1"
-      sources."@cspell/dict-npm-3.1.2"
+      sources."@cspell/dict-npm-3.1.3"
       sources."@cspell/dict-php-2.0.0"
       sources."@cspell/dict-powershell-2.0.0"
       sources."@cspell/dict-public-licenses-1.0.6"
@@ -94414,7 +94603,7 @@ in
       sources."@cspell/dict-ruby-2.0.2"
       sources."@cspell/dict-rust-2.0.1"
       sources."@cspell/dict-scala-2.0.0"
-      sources."@cspell/dict-software-terms-2.2.10"
+      sources."@cspell/dict-software-terms-2.2.12"
       sources."@cspell/dict-sql-1.0.4"
       sources."@cspell/dict-swift-1.0.3"
       sources."@cspell/dict-typescript-2.0.2"
@@ -94431,19 +94620,20 @@ in
       sources."clear-module-4.1.2"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
-      sources."commander-9.4.0"
+      sources."commander-9.4.1"
       sources."comment-json-4.2.3"
       sources."concat-map-0.0.1"
       sources."configstore-5.0.1"
       sources."core-util-is-1.0.3"
       sources."cosmiconfig-7.0.1"
       sources."crypto-random-string-2.0.0"
-      sources."cspell-gitignore-6.10.1"
-      sources."cspell-glob-6.10.1"
-      sources."cspell-grammar-6.10.1"
-      sources."cspell-io-6.10.1"
-      sources."cspell-lib-6.10.1"
-      sources."cspell-trie-lib-6.10.1"
+      sources."cspell-dictionary-6.12.0"
+      sources."cspell-gitignore-6.12.0"
+      sources."cspell-glob-6.12.0"
+      sources."cspell-grammar-6.12.0"
+      sources."cspell-io-6.12.0"
+      sources."cspell-lib-6.12.0"
+      sources."cspell-trie-lib-6.12.0"
       sources."dot-prop-5.3.0"
       sources."encoding-0.1.13"
       sources."error-ex-1.3.2"
@@ -94517,7 +94707,7 @@ in
         ];
       })
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."signal-exit-3.0.7"
       sources."strip-ansi-6.0.1"
       sources."supports-color-7.2.0"
@@ -94665,7 +94855,7 @@ in
       sources."cache-base-1.0.1"
       sources."call-me-maybe-1.0.1"
       sources."camelcase-4.1.0"
-      sources."capture-stack-trace-1.0.1"
+      sources."capture-stack-trace-1.0.2"
       sources."caseless-0.12.0"
       sources."chalk-2.4.2"
       sources."ci-info-1.6.0"
@@ -95326,9 +95516,9 @@ in
       sources."@babel/template-7.18.10"
       sources."@babel/traverse-7.19.3"
       sources."@babel/types-7.19.3"
-      sources."@blueprintjs/colors-4.1.6"
-      sources."@blueprintjs/core-4.10.2"
-      sources."@blueprintjs/icons-4.6.0"
+      sources."@blueprintjs/colors-4.1.7"
+      sources."@blueprintjs/core-4.11.2"
+      sources."@blueprintjs/icons-4.6.3"
       sources."@deltachat/message_parser_wasm-0.4.0"
       sources."@deltachat/react-qr-reader-4.0.0"
       sources."@electron/get-1.14.1"
@@ -95417,7 +95607,7 @@ in
       })
       sources."call-bind-1.0.2"
       sources."camel-case-4.1.2"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."capital-case-1.0.4"
       sources."chalk-2.4.2"
       sources."change-case-4.1.2"
@@ -95450,7 +95640,7 @@ in
       sources."constant-case-3.0.4"
       sources."convert-source-map-1.8.0"
       sources."copy-descriptor-0.1.1"
-      sources."core-js-compat-3.25.3"
+      sources."core-js-compat-3.25.5"
       sources."core-util-is-1.0.3"
       sources."csscolorparser-1.0.3"
       sources."csstype-3.1.1"
@@ -95472,10 +95662,10 @@ in
       sources."earcut-2.2.4"
       (sources."electron-18.3.15" // {
         dependencies = [
-          sources."@types/node-16.11.62"
+          sources."@types/node-16.11.64"
         ];
       })
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       sources."emoji-js-clean-4.0.0"
       sources."emoji-mart-3.0.1"
       sources."emoji-regex-9.2.2"
@@ -95556,7 +95746,7 @@ in
       sources."glob-watcher-5.0.5"
       (sources."global-agent-3.0.0" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."global-tunnel-ng-2.7.1"
@@ -95875,7 +96065,7 @@ in
         ];
       })
       sources."upath-1.2.0"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."upper-case-2.0.2"
       sources."upper-case-first-2.0.2"
       sources."urix-0.1.0"
@@ -96041,10 +96231,10 @@ in
   elasticdump = nodeEnv.buildNodePackage {
     name = "elasticdump";
     packageName = "elasticdump";
-    version = "6.88.1";
+    version = "6.90.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/elasticdump/-/elasticdump-6.88.1.tgz";
-      sha512 = "PEXaXOUnpqJAep3d2CJiPJM6BHZf1WFMdrs59ggpBz8vYGm6XhRLDYgArvgOb9dD358l+YbC97g6MgYWv7ehVw==";
+      url = "https://registry.npmjs.org/elasticdump/-/elasticdump-6.90.0.tgz";
+      sha512 = "xroof/ETZNWB5c3kVTEUYMqInxk5I64Pt+v+CbNinK6h18+TY6i5srBLPO3Gc+CUCfpiqc7iX3ftzrRc4p0qww==";
     };
     dependencies = [
       sources."@fast-csv/format-4.3.5"
@@ -96186,42 +96376,42 @@ in
   "@electron-forge/cli" = nodeEnv.buildNodePackage {
     name = "_at_electron-forge_slash_cli";
     packageName = "@electron-forge/cli";
-    version = "6.0.0-beta.66";
+    version = "6.0.0-beta.67";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@electron-forge/cli/-/cli-6.0.0-beta.66.tgz";
-      sha512 = "oCl8SjPSEq6WAeXvXsG4OSNQut2TqX0KSsRqcP3wOTrj+ygqsf0LVP9b0IDLh8PnOIZSnOm/kh114Sx/3WXoWA==";
+      url = "https://registry.npmjs.org/@electron-forge/cli/-/cli-6.0.0-beta.67.tgz";
+      sha512 = "kZKRQ/7XjCwX+3MWfHHbxcxhtoXTYTrfJVvkFNbJnw2jJlWK6HB7htfWHELYrCtZgpX0RkJsTE2LKE22eJ4SZA==";
     };
     dependencies = [
-      sources."@electron-forge/async-ora-6.0.0-beta.66"
-      sources."@electron-forge/core-6.0.0-beta.66"
-      sources."@electron-forge/installer-base-6.0.0-beta.66"
-      sources."@electron-forge/installer-darwin-6.0.0-beta.66"
-      sources."@electron-forge/installer-deb-6.0.0-beta.66"
-      sources."@electron-forge/installer-dmg-6.0.0-beta.66"
-      sources."@electron-forge/installer-exe-6.0.0-beta.66"
-      sources."@electron-forge/installer-linux-6.0.0-beta.66"
-      sources."@electron-forge/installer-rpm-6.0.0-beta.66"
-      sources."@electron-forge/installer-zip-6.0.0-beta.66"
-      sources."@electron-forge/maker-base-6.0.0-beta.66"
-      sources."@electron-forge/plugin-base-6.0.0-beta.66"
-      sources."@electron-forge/publisher-base-6.0.0-beta.66"
-      sources."@electron-forge/shared-types-6.0.0-beta.66"
-      sources."@electron-forge/template-base-6.0.0-beta.66"
-      sources."@electron-forge/template-typescript-6.0.0-beta.66"
-      sources."@electron-forge/template-typescript-webpack-6.0.0-beta.66"
-      sources."@electron-forge/template-webpack-6.0.0-beta.66"
+      sources."@electron-forge/async-ora-6.0.0-beta.67"
+      sources."@electron-forge/core-6.0.0-beta.67"
+      sources."@electron-forge/installer-base-6.0.0-beta.67"
+      sources."@electron-forge/installer-darwin-6.0.0-beta.67"
+      sources."@electron-forge/installer-deb-6.0.0-beta.67"
+      sources."@electron-forge/installer-dmg-6.0.0-beta.67"
+      sources."@electron-forge/installer-exe-6.0.0-beta.67"
+      sources."@electron-forge/installer-linux-6.0.0-beta.67"
+      sources."@electron-forge/installer-rpm-6.0.0-beta.67"
+      sources."@electron-forge/installer-zip-6.0.0-beta.67"
+      sources."@electron-forge/maker-base-6.0.0-beta.67"
+      sources."@electron-forge/plugin-base-6.0.0-beta.67"
+      sources."@electron-forge/publisher-base-6.0.0-beta.67"
+      sources."@electron-forge/shared-types-6.0.0-beta.67"
+      sources."@electron-forge/template-base-6.0.0-beta.67"
+      sources."@electron-forge/template-typescript-6.0.0-beta.67"
+      sources."@electron-forge/template-typescript-webpack-6.0.0-beta.67"
+      sources."@electron-forge/template-webpack-6.0.0-beta.67"
       (sources."@electron/get-2.0.1" // {
         dependencies = [
           sources."fs-extra-8.1.0"
+          sources."jsonfile-4.0.0"
           sources."semver-6.3.0"
+          sources."universalify-0.1.2"
         ];
       })
-      (sources."@electron/universal-1.3.0" // {
+      (sources."@electron/universal-1.3.1" // {
         dependencies = [
           sources."@malept/cross-spawn-promise-1.1.1"
           sources."fs-extra-9.1.0"
-          sources."jsonfile-6.1.0"
-          sources."universalify-2.0.0"
         ];
       })
       sources."@gar/promisify-1.1.3"
@@ -96231,15 +96421,15 @@ in
       sources."@nodelib/fs.walk-1.2.8"
       sources."@npmcli/fs-2.1.2"
       sources."@npmcli/move-file-2.0.1"
-      sources."@sindresorhus/is-0.14.0"
-      sources."@szmarczak/http-timer-1.1.2"
+      sources."@sindresorhus/is-4.6.0"
+      sources."@szmarczak/http-timer-4.0.6"
       sources."@tootallnate/once-2.0.0"
       sources."@types/cacheable-request-6.0.2"
       sources."@types/glob-7.2.0"
       sources."@types/http-cache-semantics-4.0.1"
       sources."@types/keyv-3.1.4"
       sources."@types/minimatch-5.1.2"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/responselike-1.0.0"
       sources."@types/yauzl-2.10.0"
       sources."abbrev-1.1.1"
@@ -96284,12 +96474,7 @@ in
         ];
       })
       sources."cacheable-lookup-5.0.4"
-      (sources."cacheable-request-6.1.0" // {
-        dependencies = [
-          sources."get-stream-5.2.0"
-          sources."lowercase-keys-2.0.0"
-        ];
-      })
+      sources."cacheable-request-7.0.2"
       sources."chalk-4.1.2"
       sources."chardet-0.7.0"
       sources."chownr-2.0.0"
@@ -96298,7 +96483,7 @@ in
       sources."cli-cursor-3.1.0"
       sources."cli-spinners-2.7.0"
       sources."cli-width-3.0.0"
-      sources."cliui-7.0.4"
+      sources."cliui-8.0.1"
       sources."clone-1.0.4"
       sources."clone-response-1.0.3"
       sources."color-convert-2.0.1"
@@ -96321,9 +96506,13 @@ in
           sources."ms-2.1.2"
         ];
       })
-      sources."decompress-response-3.3.0"
+      (sources."decompress-response-6.0.0" // {
+        dependencies = [
+          sources."mimic-response-3.1.0"
+        ];
+      })
       sources."defaults-1.0.3"
-      sources."defer-to-connect-1.1.3"
+      sources."defer-to-connect-2.0.1"
       sources."define-lazy-prop-2.0.0"
       sources."define-properties-1.1.4"
       sources."delegates-1.0.0"
@@ -96336,12 +96525,9 @@ in
           sources."minimatch-3.0.4"
         ];
       })
-      sources."duplexer3-0.1.5"
       (sources."electron-notarize-1.2.1" // {
         dependencies = [
           sources."fs-extra-9.1.0"
-          sources."jsonfile-6.1.0"
-          sources."universalify-2.0.0"
         ];
       })
       (sources."electron-osx-sign-0.5.0" // {
@@ -96349,17 +96535,7 @@ in
           sources."debug-2.6.9"
         ];
       })
-      (sources."electron-packager-15.5.2" // {
-        dependencies = [
-          (sources."@electron/get-1.14.1" // {
-            dependencies = [
-              sources."fs-extra-8.1.0"
-              sources."semver-6.3.0"
-            ];
-          })
-          sources."got-9.6.0"
-        ];
-      })
+      sources."electron-packager-16.0.0"
       sources."electron-rebuild-3.2.9"
       sources."emoji-regex-8.0.0"
       sources."encodeurl-1.0.2"
@@ -96370,10 +96546,11 @@ in
       sources."error-ex-1.3.2"
       sources."es6-error-4.1.1"
       sources."escalade-3.1.1"
-      sources."escape-string-regexp-4.0.0"
+      sources."escape-string-regexp-1.0.5"
       (sources."execa-1.0.0" // {
         dependencies = [
           sources."cross-spawn-6.0.5"
+          sources."get-stream-4.1.0"
           sources."path-key-2.0.1"
           sources."semver-5.7.1"
           sources."shebang-command-1.2.0"
@@ -96387,19 +96564,11 @@ in
           sources."iconv-lite-0.4.24"
         ];
       })
-      (sources."extract-zip-2.0.1" // {
-        dependencies = [
-          sources."get-stream-5.2.0"
-        ];
-      })
+      sources."extract-zip-2.0.1"
       sources."fast-glob-3.2.12"
       sources."fastq-1.13.0"
       sources."fd-slicer-1.1.0"
-      (sources."figures-3.2.0" // {
-        dependencies = [
-          sources."escape-string-regexp-1.0.5"
-        ];
-      })
+      sources."figures-3.2.0"
       sources."filename-reserved-regex-2.0.0"
       sources."filenamify-4.3.0"
       sources."fill-range-7.0.1"
@@ -96414,14 +96583,11 @@ in
       (sources."flora-colossus-1.0.1" // {
         dependencies = [
           sources."fs-extra-7.0.1"
+          sources."jsonfile-4.0.0"
+          sources."universalify-0.1.2"
         ];
       })
-      (sources."fs-extra-10.1.0" // {
-        dependencies = [
-          sources."jsonfile-6.1.0"
-          sources."universalify-2.0.0"
-        ];
-      })
+      sources."fs-extra-10.1.0"
       sources."fs-minipass-2.1.0"
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
@@ -96429,7 +96595,9 @@ in
         dependencies = [
           sources."debug-3.2.7"
           sources."fs-extra-4.0.3"
+          sources."jsonfile-4.0.0"
           sources."ms-2.1.3"
+          sources."universalify-0.1.2"
         ];
       })
       sources."gauge-4.0.4"
@@ -96441,7 +96609,7 @@ in
           sources."debug-2.6.9"
         ];
       })
-      sources."get-stream-4.1.0"
+      sources."get-stream-5.2.0"
       sources."glob-7.2.3"
       sources."glob-parent-5.1.2"
       sources."global-agent-3.0.0"
@@ -96453,23 +96621,7 @@ in
       })
       sources."global-tunnel-ng-2.7.1"
       sources."globalthis-1.0.3"
-      (sources."got-11.8.5" // {
-        dependencies = [
-          sources."@sindresorhus/is-4.6.0"
-          sources."@szmarczak/http-timer-4.0.6"
-          sources."cacheable-request-7.0.2"
-          sources."decompress-response-6.0.0"
-          sources."defer-to-connect-2.0.1"
-          sources."get-stream-5.2.0"
-          sources."json-buffer-3.0.1"
-          sources."keyv-4.5.0"
-          sources."lowercase-keys-2.0.0"
-          sources."mimic-response-3.1.0"
-          sources."normalize-url-6.1.0"
-          sources."p-cancelable-2.1.1"
-          sources."responselike-2.0.1"
-        ];
-      })
+      sources."got-11.8.5"
       sources."graceful-fs-4.2.10"
       sources."graceful-readlink-1.0.1"
       sources."has-1.0.3"
@@ -96509,26 +96661,26 @@ in
       sources."is-wsl-2.2.0"
       sources."isbinaryfile-3.0.3"
       sources."isexe-2.0.0"
-      sources."json-buffer-3.0.0"
+      sources."json-buffer-3.0.1"
       sources."json-stringify-safe-5.0.1"
-      sources."jsonfile-4.0.0"
+      sources."jsonfile-6.1.0"
       sources."junk-3.1.0"
-      sources."keyv-3.1.0"
-      (sources."load-json-file-2.0.0" // {
-        dependencies = [
-          sources."pify-2.3.0"
-        ];
-      })
+      sources."keyv-4.5.0"
+      sources."load-json-file-2.0.0"
       sources."locate-path-2.0.0"
       sources."lodash-4.17.21"
       sources."lodash.get-4.4.2"
       sources."log-symbols-4.1.0"
-      sources."lowercase-keys-1.0.1"
+      sources."lowercase-keys-2.0.0"
       sources."lru-cache-7.14.0"
       sources."lzma-native-8.0.6"
       sources."make-fetch-happen-10.2.1"
       sources."map-age-cleaner-0.1.3"
-      sources."matcher-3.0.0"
+      (sources."matcher-3.0.0" // {
+        dependencies = [
+          sources."escape-string-regexp-4.0.0"
+        ];
+      })
       sources."mem-4.3.0"
       sources."merge2-1.4.1"
       sources."micromatch-4.0.5"
@@ -96548,20 +96700,24 @@ in
       sources."mute-stream-0.0.8"
       sources."negotiator-0.6.3"
       sources."nice-try-1.0.5"
-      sources."node-abi-3.25.0"
+      sources."node-abi-3.26.0"
       sources."node-addon-api-3.2.1"
       sources."node-api-version-0.1.4"
       sources."node-fetch-2.6.7"
-      sources."node-gyp-9.1.0"
+      sources."node-gyp-9.2.0"
       sources."node-gyp-build-4.5.0"
-      sources."nopt-5.0.0"
+      sources."nopt-6.0.0"
       (sources."normalize-package-data-2.5.0" // {
         dependencies = [
           sources."semver-5.7.1"
         ];
       })
-      sources."normalize-url-4.5.1"
-      sources."npm-conf-1.1.3"
+      sources."normalize-url-6.1.0"
+      (sources."npm-conf-1.1.3" // {
+        dependencies = [
+          sources."pify-3.0.0"
+        ];
+      })
       (sources."npm-run-path-2.0.2" // {
         dependencies = [
           sources."path-key-2.0.1"
@@ -96574,7 +96730,7 @@ in
       sources."open-8.4.0"
       sources."ora-5.4.1"
       sources."os-tmpdir-1.0.2"
-      sources."p-cancelable-1.1.0"
+      sources."p-cancelable-2.1.1"
       sources."p-defer-1.0.0"
       sources."p-finally-1.0.0"
       sources."p-is-promise-2.1.0"
@@ -96590,14 +96746,10 @@ in
       sources."path-is-absolute-1.0.1"
       sources."path-key-3.1.1"
       sources."path-parse-1.0.7"
-      (sources."path-type-2.0.0" // {
-        dependencies = [
-          sources."pify-2.3.0"
-        ];
-      })
+      sources."path-type-2.0.0"
       sources."pend-1.2.0"
       sources."picomatch-2.3.1"
-      sources."pify-3.0.0"
+      sources."pify-2.3.0"
       (sources."pkg-dir-4.2.0" // {
         dependencies = [
           sources."find-up-4.1.0"
@@ -96609,7 +96761,6 @@ in
         ];
       })
       sources."plist-3.0.6"
-      sources."prepend-http-2.0.0"
       sources."pretty-ms-7.0.1"
       sources."progress-2.0.3"
       sources."promise-inflight-1.0.1"
@@ -96631,7 +96782,7 @@ in
       sources."resolve-alpn-1.2.1"
       sources."resolve-dir-1.0.1"
       sources."resolve-package-1.0.1"
-      sources."responselike-1.0.2"
+      sources."responselike-2.0.1"
       sources."restore-cursor-3.1.0"
       sources."retry-0.12.0"
       sources."reusify-1.0.4"
@@ -96642,7 +96793,7 @@ in
       sources."rxjs-7.5.7"
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
-      (sources."semver-7.3.7" // {
+      (sources."semver-7.3.8" // {
         dependencies = [
           sources."lru-cache-6.0.0"
         ];
@@ -96654,7 +96805,7 @@ in
       sources."shebang-regex-3.0.0"
       sources."signal-exit-3.0.7"
       sources."smart-buffer-4.2.0"
-      sources."socks-2.7.0"
+      sources."socks-2.7.1"
       sources."socks-proxy-agent-7.0.0"
       sources."source-map-0.6.1"
       sources."source-map-support-0.5.21"
@@ -96669,11 +96820,7 @@ in
       sources."strip-ansi-6.0.1"
       sources."strip-bom-3.0.0"
       sources."strip-eof-1.0.0"
-      (sources."strip-outer-1.0.1" // {
-        dependencies = [
-          sources."escape-string-regexp-1.0.5"
-        ];
-      })
+      sources."strip-outer-1.0.1"
       sources."sudo-prompt-9.2.1"
       sources."sumchecker-3.0.1"
       sources."supports-color-7.2.0"
@@ -96681,21 +96828,15 @@ in
       sources."tar-6.1.11"
       sources."through-2.3.8"
       sources."tmp-0.0.33"
-      sources."to-readable-stream-1.0.0"
       sources."to-regex-range-5.0.1"
       sources."tr46-0.0.3"
-      (sources."trim-repeated-1.0.0" // {
-        dependencies = [
-          sources."escape-string-regexp-1.0.5"
-        ];
-      })
+      sources."trim-repeated-1.0.0"
       sources."tslib-2.4.0"
       sources."tunnel-0.0.6"
       sources."type-fest-0.13.1"
       sources."unique-filename-2.0.1"
       sources."unique-slug-3.0.0"
-      sources."universalify-0.1.2"
-      sources."url-parse-lax-3.0.0"
+      sources."universalify-2.0.0"
       sources."username-5.1.0"
       sources."util-deprecate-1.0.2"
       sources."validate-npm-package-license-3.0.4"
@@ -96709,12 +96850,8 @@ in
       sources."xmlbuilder-15.1.1"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
-      (sources."yargs-17.5.1" // {
-        dependencies = [
-          sources."yargs-parser-21.1.1"
-        ];
-      })
-      sources."yargs-parser-20.2.9"
+      sources."yargs-17.6.0"
+      sources."yargs-parser-21.1.1"
       (sources."yarn-or-npm-3.0.1" // {
         dependencies = [
           sources."cross-spawn-6.0.5"
@@ -96840,7 +96977,7 @@ in
       sources."callsites-3.1.0"
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."chalk-2.4.2"
       sources."ci-info-2.0.0"
       sources."cli-boxes-2.2.1"
@@ -96854,7 +96991,7 @@ in
       sources."concat-map-0.0.1"
       (sources."conf-7.1.2" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."convert-source-map-1.8.0"
@@ -96870,7 +97007,7 @@ in
         ];
       })
       sources."dot-prop-5.3.0"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       sources."emoji-regex-8.0.0"
       sources."emojilib-2.4.0"
       sources."end-of-stream-1.4.4"
@@ -97056,7 +97193,7 @@ in
       sources."trim-newlines-3.0.1"
       sources."type-fest-0.12.0"
       sources."unicode-emoji-modifier-base-1.0.0"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."uri-js-4.4.1"
       sources."utf-8-validate-5.0.9"
       sources."validate-npm-package-license-3.0.4"
@@ -97112,7 +97249,7 @@ in
       sources."@azure/core-auth-1.4.0"
       sources."@azure/core-client-1.6.1"
       sources."@azure/core-http-compat-1.3.0"
-      sources."@azure/core-lro-2.3.1"
+      sources."@azure/core-lro-2.4.0"
       sources."@azure/core-paging-1.3.0"
       (sources."@azure/core-rest-pipeline-1.9.2" // {
         dependencies = [
@@ -97124,7 +97261,7 @@ in
         ];
       })
       sources."@azure/core-tracing-1.0.1"
-      sources."@azure/core-util-1.1.0"
+      sources."@azure/core-util-1.1.1"
       (sources."@azure/identity-2.1.0" // {
         dependencies = [
           sources."uuid-8.3.2"
@@ -97132,9 +97269,9 @@ in
       })
       sources."@azure/keyvault-keys-4.6.0"
       sources."@azure/logger-1.0.3"
-      sources."@azure/msal-browser-2.28.3"
-      sources."@azure/msal-common-7.4.1"
-      (sources."@azure/msal-node-1.14.0" // {
+      sources."@azure/msal-browser-2.29.0"
+      sources."@azure/msal-common-7.5.0"
+      (sources."@azure/msal-node-1.14.1" // {
         dependencies = [
           sources."uuid-8.3.2"
         ];
@@ -97173,11 +97310,11 @@ in
       })
       sources."@fluentui/date-time-utilities-8.5.2"
       sources."@fluentui/dom-utilities-2.2.2"
-      sources."@fluentui/font-icons-mdl2-8.4.13"
+      sources."@fluentui/font-icons-mdl2-8.5.0"
       sources."@fluentui/foundation-legacy-8.2.20"
       sources."@fluentui/keyboard-key-0.4.2"
       sources."@fluentui/merge-styles-8.5.3"
-      sources."@fluentui/react-8.96.2"
+      sources."@fluentui/react-8.97.2"
       sources."@fluentui/react-focus-8.8.5"
       sources."@fluentui/react-hooks-8.6.11"
       sources."@fluentui/react-portal-compat-context-9.0.2"
@@ -97215,7 +97352,7 @@ in
       sources."@jridgewell/source-map-0.3.2"
       sources."@jridgewell/sourcemap-codec-1.4.14"
       sources."@jridgewell/trace-mapping-0.3.15"
-      sources."@js-joda/core-5.4.0"
+      sources."@js-joda/core-5.4.1"
       sources."@mapbox/node-pre-gyp-1.0.10"
       sources."@microsoft/load-themed-styles-1.10.295"
       sources."@node-rs/crc32-1.5.1"
@@ -97254,45 +97391,45 @@ in
       })
       sources."@sindresorhus/is-0.14.0"
       sources."@sqltools/formatter-1.2.3"
-      sources."@swc/core-1.3.3"
-      (sources."@swc/core-android-arm-eabi-1.3.3" // {
+      sources."@swc/core-1.3.5"
+      (sources."@swc/core-android-arm-eabi-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.122"
         ];
       })
-      (sources."@swc/core-android-arm64-1.3.3" // {
+      (sources."@swc/core-android-arm64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-darwin-arm64-1.3.3"
-      sources."@swc/core-darwin-x64-1.3.3"
-      (sources."@swc/core-freebsd-x64-1.3.3" // {
+      sources."@swc/core-darwin-arm64-1.3.5"
+      sources."@swc/core-darwin-x64-1.3.5"
+      (sources."@swc/core-freebsd-x64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-linux-arm-gnueabihf-1.3.3" // {
+      (sources."@swc/core-linux-arm-gnueabihf-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-linux-arm64-gnu-1.3.3"
-      sources."@swc/core-linux-arm64-musl-1.3.3"
-      sources."@swc/core-linux-x64-gnu-1.3.3"
-      sources."@swc/core-linux-x64-musl-1.3.3"
-      (sources."@swc/core-win32-arm64-msvc-1.3.3" // {
+      sources."@swc/core-linux-arm64-gnu-1.3.5"
+      sources."@swc/core-linux-arm64-musl-1.3.5"
+      sources."@swc/core-linux-x64-gnu-1.3.5"
+      sources."@swc/core-linux-x64-musl-1.3.5"
+      (sources."@swc/core-win32-arm64-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-win32-ia32-msvc-1.3.3" // {
+      (sources."@swc/core-win32-ia32-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-win32-x64-msvc-1.3.3"
-      sources."@swc/wasm-1.3.3"
+      sources."@swc/core-win32-x64-msvc-1.3.5"
+      sources."@swc/wasm-1.3.5"
       sources."@szmarczak/http-timer-1.1.2"
       sources."@tediousjs/connection-string-0.4.1"
       sources."@tokenizer/token-0.3.0"
@@ -97540,7 +97677,7 @@ in
       sources."call-bind-1.0.2"
       sources."callsites-3.1.0"
       sources."camelcase-3.0.0"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."chalk-4.1.2"
       sources."chardet-0.7.0"
       (sources."chokidar-2.1.8" // {
@@ -97700,7 +97837,7 @@ in
       sources."each-props-1.3.2"
       sources."ecdsa-sig-formatter-1.0.11"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       sources."emoji-regex-8.0.0"
       sources."encodeurl-1.0.2"
       (sources."encoding-0.1.13" // {
@@ -97723,7 +97860,7 @@ in
       sources."env-paths-2.2.1"
       sources."err-code-2.0.3"
       sources."error-ex-1.3.2"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-aggregate-error-1.0.8"
       sources."es-module-lexer-0.9.3"
       sources."es-to-primitive-1.2.1"
@@ -98304,7 +98441,7 @@ in
             ];
           })
           sources."openapi-types-7.2.3"
-          sources."swagger-ui-dist-4.14.1"
+          sources."swagger-ui-dist-4.14.2"
         ];
       })
       (sources."mixin-deep-1.3.2" // {
@@ -98331,7 +98468,7 @@ in
       sources."ms-2.0.0"
       (sources."mssql-9.0.1" // {
         dependencies = [
-          sources."commander-9.4.0"
+          sources."commander-9.4.1"
           sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
@@ -98373,7 +98510,7 @@ in
       sources."neo-async-2.6.2"
       sources."next-tick-1.1.0"
       sources."nice-try-1.0.5"
-      sources."node-abi-3.25.0"
+      sources."node-abi-3.26.0"
       sources."node-abort-controller-3.0.1"
       sources."node-addon-api-4.3.0"
       sources."node-fetch-2.6.7"
@@ -98655,7 +98792,7 @@ in
           sources."json-schema-traverse-0.4.1"
         ];
       })
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."semver-greatest-satisfied-range-1.1.0"
       (sources."send-0.17.1" // {
         dependencies = [
@@ -98730,7 +98867,7 @@ in
           sources."ms-2.1.2"
         ];
       })
-      sources."socks-2.7.0"
+      sources."socks-2.7.1"
       (sources."socks-proxy-agent-6.2.1" // {
         dependencies = [
           sources."debug-4.3.4"
@@ -98823,7 +98960,7 @@ in
           sources."sprintf-js-1.1.2"
         ];
       })
-      (sources."terser-5.15.0" // {
+      (sources."terser-5.15.1" // {
         dependencies = [
           sources."acorn-8.8.0"
           sources."commander-2.20.3"
@@ -98915,7 +99052,7 @@ in
         ];
       })
       sources."upath-1.2.0"
-      (sources."update-browserslist-db-1.0.9" // {
+      (sources."update-browserslist-db-1.0.10" // {
         dependencies = [
           sources."picocolors-1.0.0"
         ];
@@ -98985,8 +99122,9 @@ in
           sources."supports-color-2.0.0"
         ];
       })
-      (sources."yargs-17.5.1" // {
+      (sources."yargs-17.6.0" // {
         dependencies = [
+          sources."cliui-8.0.1"
           sources."yargs-parser-21.1.1"
         ];
       })
@@ -99074,7 +99212,7 @@ in
       sources."@types/mime-3.0.1"
       sources."@types/minimatch-5.1.2"
       sources."@types/minimist-1.2.2"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/normalize-package-data-2.4.1"
       sources."@types/parse-json-4.0.0"
       sources."@types/q-1.5.5"
@@ -99425,7 +99563,7 @@ in
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
       sources."caniuse-api-3.0.0"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."case-sensitive-paths-webpack-plugin-2.4.0"
       sources."caseless-0.12.0"
       sources."chalk-2.4.2"
@@ -99702,7 +99840,7 @@ in
       sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
       sources."ejs-2.7.4"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -99729,7 +99867,7 @@ in
       sources."errno-0.1.8"
       sources."error-ex-1.3.2"
       sources."error-stack-parser-2.1.4"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-array-method-boxes-properly-1.0.0"
       sources."es-to-primitive-1.2.1"
       sources."es6-promise-4.2.8"
@@ -100422,7 +100560,7 @@ in
         ];
       })
       sources."posix-character-classes-0.1.1"
-      sources."postcss-8.4.16"
+      sources."postcss-8.4.17"
       (sources."postcss-calc-7.0.5" // {
         dependencies = [
           sources."picocolors-0.2.1"
@@ -100813,7 +100951,7 @@ in
       })
       sources."select-hose-2.0.0"
       sources."selfsigned-1.10.14"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       (sources."send-0.18.0" // {
         dependencies = [
           (sources."debug-2.6.9" // {
@@ -101086,7 +101224,7 @@ in
         ];
       })
       sources."upath-1.2.0"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."upper-case-1.1.3"
       sources."uri-js-4.4.1"
       sources."urix-0.1.0"
@@ -101350,7 +101488,7 @@ in
     };
     dependencies = [
       sources."@eslint/eslintrc-1.3.2"
-      sources."@humanwhocodes/config-array-0.10.5"
+      sources."@humanwhocodes/config-array-0.10.7"
       sources."@humanwhocodes/gitignore-to-minimatch-1.0.2"
       sources."@humanwhocodes/module-importer-1.0.1"
       sources."@humanwhocodes/object-schema-1.2.1"
@@ -101421,7 +101559,7 @@ in
       sources."is-glob-4.0.3"
       sources."is-number-7.0.0"
       sources."isexe-2.0.0"
-      sources."js-sdsl-4.1.4"
+      sources."js-sdsl-4.1.5"
       sources."js-yaml-4.1.0"
       sources."json-schema-traverse-0.4.1"
       sources."json-stable-stringify-without-jsonify-1.0.1"
@@ -101487,7 +101625,7 @@ in
     };
     dependencies = [
       sources."@eslint/eslintrc-1.3.2"
-      sources."@humanwhocodes/config-array-0.10.5"
+      sources."@humanwhocodes/config-array-0.10.7"
       sources."@humanwhocodes/gitignore-to-minimatch-1.0.2"
       sources."@humanwhocodes/module-importer-1.0.1"
       sources."@humanwhocodes/object-schema-1.2.1"
@@ -101563,7 +101701,7 @@ in
       sources."is-glob-4.0.3"
       sources."is-number-7.0.0"
       sources."isexe-2.0.0"
-      sources."js-sdsl-4.1.4"
+      sources."js-sdsl-4.1.5"
       sources."js-yaml-4.1.0"
       sources."json-schema-traverse-0.4.1"
       sources."json-stable-stringify-without-jsonify-1.0.1"
@@ -101826,7 +101964,7 @@ in
           })
           (sources."@expo/config-plugins-5.0.1" // {
             dependencies = [
-              sources."semver-7.3.7"
+              sources."semver-7.3.8"
             ];
           })
           sources."@expo/config-types-46.0.2"
@@ -101880,7 +102018,7 @@ in
       sources."@expo/config-6.0.24"
       (sources."@expo/config-plugins-4.1.5" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."@expo/config-types-45.0.0"
@@ -101941,7 +102079,7 @@ in
       sources."@nodelib/fs.walk-1.2.8"
       (sources."@npmcli/fs-1.1.1" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       (sources."@npmcli/move-file-1.1.2" // {
@@ -101967,7 +102105,7 @@ in
       sources."@types/json-schema-7.0.11"
       sources."@types/keyv-3.1.4"
       sources."@types/minimatch-5.1.2"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/q-1.5.5"
       sources."@types/responselike-1.0.0"
       sources."@types/retry-0.12.2"
@@ -102086,7 +102224,7 @@ in
       sources."babel-plugin-polyfill-corejs3-0.6.0"
       sources."babel-plugin-polyfill-regenerator-0.4.1"
       sources."babel-plugin-react-native-web-0.18.9"
-      sources."babel-preset-expo-9.2.0"
+      sources."babel-preset-expo-9.2.1"
       sources."balanced-match-1.0.2"
       (sources."base-0.11.2" // {
         dependencies = [
@@ -102168,7 +102306,7 @@ in
       })
       sources."camelcase-6.3.0"
       sources."caniuse-api-3.0.0"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       (sources."chalk-4.1.2" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
@@ -102296,7 +102434,7 @@ in
           sources."semver-6.3.0"
         ];
       })
-      sources."core-js-compat-3.25.3"
+      sources."core-js-compat-3.25.5"
       sources."core-util-is-1.0.3"
       sources."cosmiconfig-5.2.1"
       (sources."create-ecdh-4.0.4" // {
@@ -102422,7 +102560,7 @@ in
       sources."duplexer3-0.1.5"
       sources."duplexify-3.7.1"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -102447,7 +102585,7 @@ in
       sources."eol-0.9.1"
       sources."errno-0.1.8"
       sources."error-ex-1.3.2"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-array-method-boxes-properly-1.0.0"
       sources."es-to-primitive-1.2.1"
       sources."escalade-3.1.1"
@@ -102494,7 +102632,7 @@ in
           sources."ms-2.0.0"
         ];
       })
-      (sources."expo-46.0.13" // {
+      (sources."expo-46.0.15" // {
         dependencies = [
           sources."@babel/runtime-7.19.0"
           sources."commander-7.2.0"
@@ -102510,7 +102648,7 @@ in
           sources."@expo/config-7.0.1"
           sources."@expo/config-plugins-5.0.1"
           sources."@expo/config-types-46.0.2"
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
           sources."uuid-3.4.0"
         ];
       })
@@ -102519,7 +102657,7 @@ in
         dependencies = [
           sources."@expo/config-plugins-5.0.1"
           sources."@expo/config-types-46.0.2"
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
           sources."uuid-3.4.0"
         ];
       })
@@ -102531,7 +102669,7 @@ in
           sources."fs-extra-9.1.0"
         ];
       })
-      sources."expo-modules-core-0.11.5"
+      sources."expo-modules-core-0.11.7"
       (sources."expo-pwa-0.0.123" // {
         dependencies = [
           sources."@expo/image-utils-0.3.22"
@@ -102853,7 +102991,7 @@ in
         ];
       })
       sources."jimp-compact-0.16.1"
-      sources."joi-17.6.1"
+      sources."joi-17.6.2"
       sources."join-component-1.1.0"
       sources."js-tokens-4.0.0"
       (sources."js-yaml-3.14.1" // {
@@ -102927,7 +103065,7 @@ in
       sources."merge-stream-2.0.0"
       sources."merge2-1.4.1"
       sources."methods-1.1.2"
-      (sources."metro-react-native-babel-preset-0.70.3" // {
+      (sources."metro-react-native-babel-preset-0.72.3" // {
         dependencies = [
           sources."@babel/code-frame-7.18.6"
           sources."@babel/core-7.19.3"
@@ -103614,7 +103752,7 @@ in
           sources."postcss-selector-parser-3.1.2"
         ];
       })
-      (sources."sucrase-3.27.0" // {
+      (sources."sucrase-3.28.0" // {
         dependencies = [
           sources."commander-4.1.1"
         ];
@@ -103740,7 +103878,7 @@ in
       })
       sources."untildify-3.0.3"
       sources."upath-1.2.0"
-      (sources."update-browserslist-db-1.0.9" // {
+      (sources."update-browserslist-db-1.0.10" // {
         dependencies = [
           sources."picocolors-1.0.0"
         ];
@@ -104025,7 +104163,7 @@ in
       sources."@jridgewell/sourcemap-codec-1.4.14"
       sources."@jridgewell/trace-mapping-0.3.15"
       sources."@types/minimist-1.2.2"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/normalize-package-data-2.4.1"
       sources."@types/prop-types-15.7.5"
       sources."@types/react-18.0.21"
@@ -104056,7 +104194,7 @@ in
       sources."callsites-3.1.0"
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."chalk-2.4.2"
       sources."chownr-1.1.4"
       sources."ci-info-2.0.0"
@@ -104082,7 +104220,7 @@ in
       })
       sources."delay-5.0.0"
       sources."devtools-protocol-0.0.981744"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       sources."emoji-regex-8.0.0"
       sources."encoding-0.1.13"
       sources."end-of-stream-1.4.4"
@@ -104155,7 +104293,7 @@ in
       sources."node-releases-2.0.6"
       (sources."normalize-package-data-3.0.3" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."object-assign-4.1.1"
@@ -104243,7 +104381,7 @@ in
       sources."trim-newlines-3.0.1"
       sources."type-fest-0.12.0"
       sources."unbzip2-stream-1.4.3"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."utf-8-validate-5.0.9"
       sources."util-deprecate-1.0.2"
       sources."validate-npm-package-license-3.0.4"
@@ -104299,22 +104437,17 @@ in
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
-      sources."@oclif/command-1.8.16"
-      sources."@oclif/config-1.18.3"
+      sources."@oclif/command-1.8.18"
+      sources."@oclif/config-1.18.5"
       sources."@oclif/errors-1.3.6"
-      (sources."@oclif/help-1.0.1" // {
+      (sources."@oclif/help-1.0.2" // {
         dependencies = [
-          sources."@oclif/config-1.18.2"
-          (sources."@oclif/errors-1.3.5" // {
-            dependencies = [
-              sources."wrap-ansi-7.0.0"
-            ];
-          })
+          sources."@oclif/config-1.18.3"
           sources."wrap-ansi-6.2.0"
         ];
       })
       sources."@oclif/linewrap-1.0.0"
-      sources."@oclif/parser-3.8.7"
+      sources."@oclif/parser-3.8.8"
       (sources."@oclif/plugin-autocomplete-0.1.5" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
@@ -104604,7 +104737,7 @@ in
       sources."rxjs-7.5.7"
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."shebang-command-1.2.0"
       sources."shebang-regex-1.0.0"
       sources."signal-exit-3.0.7"
@@ -104675,10 +104808,10 @@ in
   firebase-tools = nodeEnv.buildNodePackage {
     name = "firebase-tools";
     packageName = "firebase-tools";
-    version = "11.11.0";
+    version = "11.14.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/firebase-tools/-/firebase-tools-11.11.0.tgz";
-      sha512 = "EHozChMi1qWFrByztWi7oWsBMQEHSdrg+Nut5oX/axsDUM4kQRjbBG++0RtCAQx7mR4CaFoKUAwE0/VmcJoWxw==";
+      url = "https://registry.npmjs.org/firebase-tools/-/firebase-tools-11.14.1.tgz";
+      sha512 = "y/oAxjULKzkfvgM873SqxB7HGlpF8GhRNCir6uhE+bmxI918tVqtmQP2+Uj+VT15vLz/RoZlseuZYZsW3PtAYw==";
     };
     dependencies = [
       (sources."@apidevtools/json-schema-ref-parser-9.0.9" // {
@@ -104689,6 +104822,8 @@ in
       sources."@babel/parser-7.19.3"
       sources."@colors/colors-1.5.0"
       sources."@dabh/diagnostics-2.0.3"
+      sources."@esbuild/android-arm-0.15.10"
+      sources."@esbuild/linux-loong64-0.15.10"
       sources."@gar/promisify-1.1.3"
       sources."@google-cloud/paginator-4.0.1"
       sources."@google-cloud/precise-date-3.0.1"
@@ -104704,7 +104839,7 @@ in
       sources."@jsdevtools/ono-7.1.3"
       (sources."@npmcli/fs-2.1.2" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."@npmcli/move-file-2.0.1"
@@ -104729,7 +104864,7 @@ in
       sources."@types/long-4.0.2"
       sources."@types/markdown-it-12.2.3"
       sources."@types/mdurl-1.0.2"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."abbrev-1.1.1"
       sources."abort-controller-3.0.0"
       sources."accepts-1.3.8"
@@ -104793,16 +104928,15 @@ in
       sources."binary-extensions-2.2.0"
       sources."bl-4.1.0"
       sources."bluebird-3.7.2"
-      (sources."body-parser-1.20.0" // {
+      (sources."body-parser-1.20.1" // {
         dependencies = [
           sources."debug-2.6.9"
           sources."ms-2.0.0"
         ];
       })
-      (sources."boxen-4.2.0" // {
+      (sources."boxen-5.1.2" // {
         dependencies = [
-          sources."chalk-3.0.0"
-          sources."type-fest-0.8.1"
+          sources."type-fest-0.20.2"
         ];
       })
       sources."brace-expansion-2.0.1"
@@ -104829,7 +104963,7 @@ in
       })
       sources."call-bind-1.0.2"
       sources."call-me-maybe-1.0.1"
-      sources."camelcase-5.3.1"
+      sources."camelcase-6.3.0"
       sources."cardinal-2.1.1"
       sources."caseless-0.12.0"
       sources."catharsis-0.9.0"
@@ -104865,7 +104999,6 @@ in
       sources."colorspace-1.1.4"
       sources."combined-stream-1.0.8"
       sources."commander-4.1.1"
-      sources."compare-semver-1.1.0"
       sources."compress-commons-4.1.1"
       sources."compressible-2.0.18"
       (sources."compression-1.7.4" // {
@@ -104950,6 +105083,27 @@ in
       sources."entities-2.1.0"
       sources."env-paths-2.2.1"
       sources."err-code-2.0.3"
+      sources."esbuild-0.15.10"
+      sources."esbuild-android-64-0.15.10"
+      sources."esbuild-android-arm64-0.15.10"
+      sources."esbuild-darwin-64-0.15.10"
+      sources."esbuild-darwin-arm64-0.15.10"
+      sources."esbuild-freebsd-64-0.15.10"
+      sources."esbuild-freebsd-arm64-0.15.10"
+      sources."esbuild-linux-32-0.15.10"
+      sources."esbuild-linux-64-0.15.10"
+      sources."esbuild-linux-arm-0.15.10"
+      sources."esbuild-linux-arm64-0.15.10"
+      sources."esbuild-linux-mips64le-0.15.10"
+      sources."esbuild-linux-ppc64le-0.15.10"
+      sources."esbuild-linux-riscv64-0.15.10"
+      sources."esbuild-linux-s390x-0.15.10"
+      sources."esbuild-netbsd-64-0.15.10"
+      sources."esbuild-openbsd-64-0.15.10"
+      sources."esbuild-sunos-64-0.15.10"
+      sources."esbuild-windows-32-0.15.10"
+      sources."esbuild-windows-64-0.15.10"
+      sources."esbuild-windows-arm64-0.15.10"
       sources."escalade-3.1.1"
       sources."escape-goat-2.1.1"
       sources."escape-html-1.0.3"
@@ -104971,14 +105125,16 @@ in
         dependencies = [
           sources."ajv-8.11.0"
           sources."json-schema-traverse-1.0.0"
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."exegesis-express-4.0.0"
       (sources."express-4.18.1" // {
         dependencies = [
+          sources."body-parser-1.20.0"
           sources."debug-2.6.9"
           sources."ms-2.0.0"
+          sources."qs-6.10.3"
         ];
       })
       sources."extend-3.0.2"
@@ -105012,11 +105168,6 @@ in
           sources."ms-2.0.0"
         ];
       })
-      (sources."firebase-frameworks-0.4.2" // {
-        dependencies = [
-          sources."semver-7.3.7"
-        ];
-      })
       sources."fn.name-1.1.0"
       sources."forever-agent-0.6.1"
       sources."form-data-4.0.0"
@@ -105059,7 +105210,7 @@ in
       sources."glob-parent-5.1.2"
       sources."glob-slash-1.0.0"
       sources."glob-slasher-1.0.1"
-      sources."global-dirs-2.1.0"
+      sources."global-dirs-3.0.0"
       (sources."google-auth-library-7.14.1" // {
         dependencies = [
           sources."gaxios-4.3.3"
@@ -105074,28 +105225,12 @@ in
         ];
       })
       sources."google-p12-pem-4.0.1"
-      (sources."googleapis-105.0.0" // {
-        dependencies = [
-          sources."google-auth-library-8.5.2"
-        ];
-      })
-      (sources."googleapis-common-6.0.3" // {
-        dependencies = [
-          sources."google-auth-library-8.5.2"
-          sources."uuid-9.0.0"
-        ];
-      })
       sources."got-9.6.0"
       sources."graceful-fs-4.2.10"
       sources."gtoken-6.1.2"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.5"
       sources."has-1.0.3"
-      (sources."has-ansi-2.0.0" // {
-        dependencies = [
-          sources."ansi-regex-2.1.1"
-        ];
-      })
       sources."has-flag-4.0.0"
       sources."has-symbols-1.0.3"
       sources."has-unicode-2.0.1"
@@ -105115,7 +105250,7 @@ in
       sources."infer-owner-1.0.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
-      sources."ini-1.3.7"
+      sources."ini-2.0.0"
       sources."inquirer-8.2.4"
       sources."install-artifact-from-github-1.3.1"
       sources."ip-1.1.8"
@@ -105127,10 +105262,10 @@ in
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-glob-4.0.3"
-      sources."is-installed-globally-0.3.2"
+      sources."is-installed-globally-0.4.0"
       sources."is-interactive-1.0.0"
       sources."is-lambda-1.0.1"
-      sources."is-npm-4.0.0"
+      sources."is-npm-5.0.0"
       sources."is-number-7.0.0"
       sources."is-obj-2.0.0"
       sources."is-path-inside-3.0.3"
@@ -105162,7 +105297,6 @@ in
       sources."json-schema-0.4.0"
       sources."json-schema-traverse-0.4.1"
       sources."json-stringify-safe-5.0.1"
-      sources."jsonc-parser-3.2.0"
       sources."jsonfile-6.1.0"
       (sources."jsonwebtoken-8.5.1" // {
         dependencies = [
@@ -105226,11 +105360,11 @@ in
       })
       sources."markdown-it-12.3.2"
       sources."markdown-it-anchor-8.6.5"
-      sources."marked-4.1.0"
+      sources."marked-4.1.1"
       (sources."marked-terminal-5.1.1" // {
         dependencies = [
           sources."ansi-escapes-5.0.0"
-          sources."chalk-5.0.1"
+          sources."chalk-5.1.0"
           sources."type-fest-1.4.0"
         ];
       })
@@ -105273,14 +105407,14 @@ in
       sources."node-emoji-1.11.0"
       sources."node-fetch-2.6.7"
       sources."node-forge-1.3.1"
-      (sources."node-gyp-9.1.0" // {
+      (sources."node-gyp-9.2.0" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
           sources."which-2.0.2"
         ];
       })
       sources."node-gyp-build-4.5.0"
-      sources."nopt-5.0.0"
+      sources."nopt-6.0.0"
       sources."normalize-path-3.0.0"
       sources."normalize-url-4.5.1"
       sources."npmlog-6.0.2"
@@ -105342,7 +105476,7 @@ in
         dependencies = [
           sources."glob-8.0.3"
           sources."minimatch-5.1.0"
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."proxy-addr-2.0.7"
@@ -105357,11 +105491,12 @@ in
       sources."pump-3.0.0"
       sources."punycode-2.1.1"
       sources."pupa-2.1.1"
-      sources."qs-6.10.3"
+      sources."qs-6.11.0"
       sources."range-parser-1.2.1"
       sources."raw-body-2.5.1"
       (sources."rc-1.2.8" // {
         dependencies = [
+          sources."ini-1.3.8"
           sources."strip-json-comments-2.0.1"
         ];
       })
@@ -105430,7 +105565,7 @@ in
       sources."signal-exit-3.0.7"
       sources."simple-swizzle-0.2.2"
       sources."smart-buffer-4.2.0"
-      (sources."socks-2.7.0" // {
+      (sources."socks-2.7.1" // {
         dependencies = [
           sources."ip-2.0.0"
         ];
@@ -105445,34 +105580,16 @@ in
       sources."stream-chain-2.2.5"
       sources."stream-json-1.7.4"
       sources."stream-shift-1.0.1"
-      (sources."string-length-1.0.1" // {
-        dependencies = [
-          sources."ansi-regex-2.1.1"
-          sources."strip-ansi-3.0.1"
-        ];
-      })
       sources."string-width-4.2.3"
       sources."string_decoder-1.3.0"
       sources."strip-ansi-6.0.1"
       sources."strip-json-comments-3.1.1"
-      (sources."superstatic-8.0.0" // {
+      (sources."superstatic-9.0.0" // {
         dependencies = [
-          sources."ansi-regex-2.1.1"
-          sources."ansi-styles-2.2.1"
-          sources."chalk-1.1.3"
-          sources."commander-9.4.0"
-          sources."escape-string-regexp-1.0.5"
+          sources."commander-9.4.1"
           sources."isarray-0.0.1"
+          sources."minimatch-5.1.0"
           sources."path-to-regexp-1.8.0"
-          sources."strip-ansi-3.0.1"
-          sources."supports-color-2.0.0"
-          (sources."update-notifier-4.1.3" // {
-            dependencies = [
-              sources."ansi-styles-4.3.0"
-              sources."chalk-3.0.0"
-              sources."supports-color-7.2.0"
-            ];
-          })
         ];
       })
       sources."supports-color-7.2.0"
@@ -105485,7 +105602,6 @@ in
           sources."debug-4.3.1"
         ];
       })
-      sources."term-size-2.2.1"
       sources."text-hex-1.0.0"
       sources."through-2.3.8"
       sources."tmp-0.2.1"
@@ -105505,7 +105621,7 @@ in
       sources."type-is-1.6.18"
       sources."typedarray-to-buffer-3.1.5"
       sources."uc.micro-1.0.6"
-      sources."uglify-js-3.17.2"
+      sources."uglify-js-3.17.3"
       sources."underscore-1.13.6"
       sources."unique-filename-2.0.1"
       sources."unique-slug-3.0.0"
@@ -105523,20 +105639,12 @@ in
       })
       (sources."update-notifier-5.1.0" // {
         dependencies = [
-          sources."boxen-5.1.2"
-          sources."camelcase-6.3.0"
-          sources."global-dirs-3.0.0"
-          sources."ini-2.0.0"
-          sources."is-installed-globally-0.4.0"
-          sources."is-npm-5.0.0"
-          sources."semver-7.3.7"
-          sources."type-fest-0.20.2"
+          sources."semver-7.3.8"
         ];
       })
       sources."uri-js-4.4.1"
       sources."url-join-0.0.1"
       sources."url-parse-lax-3.0.0"
-      sources."url-template-2.0.8"
       sources."utf-8-validate-5.0.9"
       sources."util-deprecate-1.0.2"
       sources."utils-merge-1.0.1"
@@ -105746,7 +105854,7 @@ in
       sources."log-symbols-4.1.0"
       sources."lru-cache-6.0.0"
       sources."map-obj-4.3.0"
-      (sources."meow-10.1.4" // {
+      (sources."meow-10.1.5" // {
         dependencies = [
           sources."type-fest-1.4.0"
         ];
@@ -105801,7 +105909,7 @@ in
       sources."rxjs-7.5.7"
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."shebang-command-2.0.0"
       sources."shebang-regex-3.0.0"
       sources."signal-exit-3.0.7"
@@ -105865,7 +105973,7 @@ in
       sources."@types/atob-2.1.2"
       sources."@types/bn.js-5.1.1"
       sources."@types/inquirer-6.5.0"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/pbkdf2-3.1.0"
       sources."@types/secp256k1-4.0.3"
       sources."@types/through-0.0.30"
@@ -106199,7 +106307,7 @@ in
       sources."dot-prop-4.2.1"
       sources."duplexer-0.1.2"
       sources."enabled-2.0.0"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-get-iterator-1.1.2"
       sources."es-to-primitive-1.2.1"
       sources."event-stream-3.3.4"
@@ -106588,10 +106696,10 @@ in
   ganache = nodeEnv.buildNodePackage {
     name = "ganache";
     packageName = "ganache";
-    version = "7.4.3";
+    version = "7.4.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/ganache/-/ganache-7.4.3.tgz";
-      sha512 = "RpEDUiCkqbouyE7+NMXG26ynZ+7sGiODU84Kz+FVoXUnQ4qQM4M8wif3Y4qUCt+D/eM1RVeGq0my62FPD6Y1KA==";
+      url = "https://registry.npmjs.org/ganache/-/ganache-7.4.4.tgz";
+      sha512 = "wC5XZB7ttHXc4rYfAq8+ieOZZajlsTdWsWievtQNjiuxcrIkqPqSwAZK6IP5mbooe/HSp3bDGJhXW5EHVd2G9w==";
     };
     dependencies = [
       sources."bufferutil-4.0.5"
@@ -106696,7 +106804,7 @@ in
       sources."@types/common-tags-1.8.1"
       sources."@types/http-cache-semantics-4.0.1"
       sources."@types/keyv-3.1.4"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/node-fetch-2.6.2"
       sources."@types/responselike-1.0.0"
       sources."@types/yoga-layout-1.9.2"
@@ -106723,7 +106831,7 @@ in
         ];
       })
       sources."camelcase-6.3.0"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       (sources."chalk-4.1.2" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
@@ -106786,7 +106894,7 @@ in
       sources."domutils-2.8.0"
       sources."dot-prop-5.3.0"
       sources."duplexer3-0.1.5"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       sources."emoji-regex-8.0.0"
       sources."encoding-0.1.13"
       sources."end-of-stream-1.4.4"
@@ -106877,7 +106985,7 @@ in
       sources."is-wsl-2.2.0"
       sources."is-yarn-global-0.3.0"
       sources."isexe-2.0.0"
-      sources."joi-17.6.1"
+      sources."joi-17.6.2"
       sources."js-tokens-4.0.0"
       sources."jsesc-2.5.2"
       sources."json-buffer-3.0.1"
@@ -106921,7 +107029,7 @@ in
       sources."onetime-5.1.2"
       sources."open-7.4.2"
       sources."opentracing-0.14.7"
-      sources."ordered-binary-1.3.0"
+      sources."ordered-binary-1.4.0"
       sources."os-tmpdir-1.0.2"
       sources."p-cancelable-2.1.1"
       sources."p-finally-1.0.0"
@@ -106997,7 +107105,7 @@ in
       sources."rxjs-6.6.7"
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       (sources."semver-diff-3.1.1" // {
         dependencies = [
           sources."semver-6.3.0"
@@ -107037,7 +107145,7 @@ in
       sources."typedarray-to-buffer-3.1.5"
       sources."unique-string-2.0.0"
       sources."universalify-2.0.0"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."update-notifier-5.1.0"
       sources."url-parse-lax-3.0.0"
       sources."util-deprecate-1.0.2"
@@ -107088,10 +107196,10 @@ in
   generator-code = nodeEnv.buildNodePackage {
     name = "generator-code";
     packageName = "generator-code";
-    version = "1.6.14";
+    version = "1.7.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/generator-code/-/generator-code-1.6.14.tgz";
-      sha512 = "aPSlghLWHhsKLI3weXAo+IHdtCtaXyhdjlhV+xARfFP77XHUS8tWN/NrBbp52gSWzI4GNjk5pOIL+bThfuA83Q==";
+      url = "https://registry.npmjs.org/generator-code/-/generator-code-1.7.0.tgz";
+      sha512 = "9fikZrfmbtIuruMb+g9GSZ19sFk/aGZ9wHvhAoQ9C34dSd4o7c3g+dxwa+teBsNnWvF9ON1qn8hvKMbmGqGhTQ==";
     };
     dependencies = [
       sources."@babel/code-frame-7.18.6"
@@ -107168,7 +107276,7 @@ in
       sources."async-3.2.4"
       sources."balanced-match-1.0.2"
       sources."base64-js-1.5.1"
-      sources."before-after-hook-2.2.2"
+      sources."before-after-hook-2.2.3"
       (sources."bin-links-3.0.3" // {
         dependencies = [
           sources."npm-normalize-package-bin-2.0.0"
@@ -107478,7 +107586,7 @@ in
       sources."safer-buffer-2.1.2"
       sources."sanitize-filename-1.6.3"
       sources."scoped-regex-2.1.0"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."set-blocking-2.0.0"
       sources."shebang-command-2.0.0"
       sources."shebang-regex-3.0.0"
@@ -107486,7 +107594,7 @@ in
       sources."signal-exit-3.0.7"
       sources."slash-3.0.0"
       sources."smart-buffer-4.2.0"
-      sources."socks-2.7.0"
+      sources."socks-2.7.1"
       sources."socks-proxy-agent-6.2.1"
       sources."sort-keys-4.2.0"
       sources."spdx-correct-3.1.1"
@@ -107541,7 +107649,7 @@ in
       sources."wrappy-1.0.2"
       sources."write-file-atomic-4.0.2"
       sources."yallist-4.0.0"
-      (sources."yeoman-environment-3.11.1" // {
+      (sources."yeoman-environment-3.12.0" // {
         dependencies = [
           sources."escape-string-regexp-4.0.0"
           sources."find-up-5.0.0"
@@ -107709,7 +107817,7 @@ in
       sources."minimist-1.2.6"
       sources."mkdirp-0.5.6"
       sources."moment-2.29.4"
-      sources."moo-0.5.1"
+      sources."moo-0.5.2"
       sources."ms-2.1.2"
       sources."multicb-1.2.2"
       sources."multiserver-3.8.2"
@@ -107779,7 +107887,7 @@ in
       sources."separator-escape-0.0.1"
       sources."sha.js-2.4.5"
       sources."smart-buffer-4.2.0"
-      (sources."socks-2.7.0" // {
+      (sources."socks-2.7.1" // {
         dependencies = [
           sources."ip-2.0.0"
         ];
@@ -107889,7 +107997,7 @@ in
       sources."@types/cacheable-request-6.0.2"
       sources."@types/http-cache-semantics-4.0.1"
       sources."@types/keyv-3.1.4"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/responselike-1.0.0"
       sources."ansi-regex-6.0.1"
       sources."ansi-styles-4.3.0"
@@ -107939,7 +108047,7 @@ in
       sources."li-1.3.0"
       (sources."log-symbols-5.1.0" // {
         dependencies = [
-          sources."chalk-5.0.1"
+          sources."chalk-5.1.0"
         ];
       })
       sources."lowercase-keys-2.0.0"
@@ -107954,7 +108062,7 @@ in
       sources."onetime-5.1.2"
       (sources."ora-6.1.2" // {
         dependencies = [
-          sources."chalk-5.0.1"
+          sources."chalk-5.1.0"
         ];
       })
       sources."p-cancelable-2.1.1"
@@ -107993,10 +108101,10 @@ in
   gitmoji-cli = nodeEnv.buildNodePackage {
     name = "gitmoji-cli";
     packageName = "gitmoji-cli";
-    version = "6.3.0";
+    version = "7.0.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/gitmoji-cli/-/gitmoji-cli-6.3.0.tgz";
-      sha512 = "27HvYXUnmMtUzFrDNeS3tiCl8Py9IGRhG3ZMwyYknGWWWRlS/CGbsY7wVd0WqCyVdD69uHhTd5e6DZxi7hmMWg==";
+      url = "https://registry.npmjs.org/gitmoji-cli/-/gitmoji-cli-7.0.2.tgz";
+      sha512 = "XgCPvEXeKAbe0w1M5cSvUVTDWjj6h/WKdLN9GQpqVVV6WkAtgMBrPuAEzZci99jZhnzdAwobMkWUv3KRSpgHbg==";
     };
     dependencies = [
       sources."@babel/code-frame-7.18.6"
@@ -108005,15 +108113,15 @@ in
         dependencies = [
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
-          sources."color-convert-1.9.3"
-          sources."color-name-1.1.3"
-          sources."has-flag-3.0.0"
-          sources."supports-color-5.5.0"
+          sources."escape-string-regexp-1.0.5"
         ];
       })
-      sources."@sindresorhus/is-0.14.0"
-      sources."@szmarczak/http-timer-1.1.2"
+      sources."@pnpm/network.ca-file-1.0.1"
+      sources."@pnpm/npm-conf-1.0.5"
+      sources."@sindresorhus/is-5.3.0"
+      sources."@szmarczak/http-timer-5.0.1"
       sources."@tootallnate/once-1.1.2"
+      sources."@types/http-cache-semantics-4.0.1"
       sources."@types/minimist-1.2.2"
       sources."@types/normalize-package-data-2.4.1"
       sources."acorn-8.8.0"
@@ -108021,91 +108129,101 @@ in
       sources."agent-base-6.0.2"
       sources."ajv-8.11.0"
       sources."ajv-formats-2.1.1"
-      sources."ansi-align-3.0.1"
-      sources."ansi-escapes-4.3.2"
-      sources."ansi-regex-5.0.1"
-      sources."ansi-styles-4.3.0"
+      (sources."ansi-align-3.0.1" // {
+        dependencies = [
+          sources."ansi-regex-5.0.1"
+          sources."emoji-regex-8.0.0"
+          sources."string-width-4.2.3"
+          sources."strip-ansi-6.0.1"
+        ];
+      })
+      sources."ansi-escapes-5.0.0"
+      sources."ansi-regex-6.0.1"
+      sources."ansi-styles-6.1.1"
       sources."arrify-1.0.1"
       sources."ast-types-0.13.4"
       sources."atomically-1.7.0"
       sources."base64-js-1.5.1"
-      sources."bl-4.1.0"
-      (sources."boxen-5.1.2" // {
+      sources."bl-5.0.0"
+      (sources."boxen-7.0.0" // {
         dependencies = [
-          sources."camelcase-6.3.0"
-          sources."type-fest-0.20.2"
+          sources."camelcase-7.0.0"
+          sources."type-fest-2.19.0"
         ];
       })
-      sources."buffer-5.7.1"
+      sources."buffer-6.0.3"
       sources."bytes-3.1.2"
-      (sources."cacheable-request-6.1.0" // {
-        dependencies = [
-          sources."get-stream-5.2.0"
-          sources."lowercase-keys-2.0.0"
-        ];
-      })
-      sources."camelcase-5.3.1"
-      sources."camelcase-keys-6.2.2"
-      sources."chalk-4.1.0"
+      sources."cacheable-lookup-7.0.0"
+      sources."cacheable-request-10.2.1"
+      sources."camelcase-6.3.0"
+      sources."camelcase-keys-7.0.2"
+      sources."chalk-5.1.0"
       sources."chardet-0.7.0"
-      sources."ci-info-2.0.0"
-      sources."cli-boxes-2.2.1"
-      sources."cli-cursor-3.1.0"
+      sources."ci-info-3.4.0"
+      sources."cli-boxes-3.0.0"
+      sources."cli-cursor-4.0.0"
       sources."cli-spinners-2.7.0"
-      sources."cli-width-3.0.0"
+      sources."cli-width-4.0.0"
       sources."clone-1.0.4"
-      sources."clone-response-1.0.3"
-      sources."color-convert-2.0.1"
-      sources."color-name-1.1.4"
+      sources."color-convert-1.9.3"
+      sources."color-name-1.1.3"
       sources."conf-10.2.0"
-      (sources."configstore-5.0.1" // {
+      (sources."config-chain-1.1.13" // {
         dependencies = [
-          sources."dot-prop-5.3.0"
+          sources."ini-1.3.8"
         ];
       })
+      sources."configstore-6.0.0"
       sources."core-util-is-1.0.3"
       sources."cross-spawn-7.0.3"
-      sources."crypto-random-string-2.0.0"
-      sources."data-uri-to-buffer-3.0.1"
+      sources."crypto-random-string-4.0.0"
+      sources."data-uri-to-buffer-4.0.0"
       sources."debounce-fn-4.0.0"
       sources."debug-4.3.4"
-      sources."decamelize-1.2.0"
+      sources."decamelize-5.0.1"
       (sources."decamelize-keys-1.1.0" // {
         dependencies = [
+          sources."decamelize-1.2.0"
           sources."map-obj-1.0.1"
         ];
       })
-      sources."decompress-response-3.3.0"
+      (sources."decompress-response-6.0.0" // {
+        dependencies = [
+          sources."mimic-response-3.1.0"
+        ];
+      })
       sources."deep-extend-0.6.0"
       sources."deep-is-0.1.4"
       sources."defaults-1.0.3"
-      sources."defer-to-connect-1.1.3"
+      sources."defer-to-connect-2.0.1"
       sources."degenerator-3.0.2"
       sources."depd-2.0.0"
       sources."dot-prop-6.0.1"
-      sources."duplexer3-0.1.5"
-      sources."emoji-regex-8.0.0"
-      (sources."encoding-0.1.13" // {
-        dependencies = [
-          sources."iconv-lite-0.6.3"
-        ];
-      })
-      sources."end-of-stream-1.4.4"
+      sources."eastasianwidth-0.2.0"
+      sources."emoji-regex-9.2.2"
       sources."env-paths-2.2.1"
       sources."error-ex-1.3.2"
-      sources."escape-goat-2.1.1"
-      sources."escape-string-regexp-1.0.5"
+      sources."escape-goat-4.0.0"
+      sources."escape-string-regexp-5.0.0"
       sources."escodegen-1.14.3"
       sources."esprima-4.0.1"
       sources."estraverse-4.3.0"
       sources."esutils-2.0.3"
-      sources."execa-5.1.1"
+      (sources."execa-6.1.0" // {
+        dependencies = [
+          sources."mimic-fn-4.0.0"
+          sources."onetime-6.0.0"
+        ];
+      })
       sources."external-editor-3.1.0"
       sources."fast-deep-equal-3.1.3"
       sources."fast-levenshtein-2.0.6"
-      sources."figures-3.2.0"
+      sources."fetch-blob-3.2.0"
+      sources."figures-5.0.0"
       sources."file-uri-to-path-2.0.0"
       sources."find-up-3.0.0"
+      sources."form-data-encoder-2.1.3"
+      sources."formdata-polyfill-4.0.10"
       sources."fs-extra-8.1.0"
       (sources."ftp-0.3.10" // {
         dependencies = [
@@ -108116,63 +108234,65 @@ in
       sources."function-bind-1.1.1"
       sources."fuse.js-6.6.2"
       sources."get-stream-6.0.1"
-      sources."get-uri-3.0.2"
-      sources."global-dirs-3.0.0"
-      (sources."got-9.6.0" // {
+      (sources."get-uri-3.0.2" // {
         dependencies = [
-          sources."get-stream-4.1.0"
+          sources."data-uri-to-buffer-3.0.1"
         ];
       })
+      sources."global-dirs-3.0.0"
+      sources."got-12.5.1"
       sources."graceful-fs-4.2.10"
       sources."hard-rejection-2.1.0"
       sources."has-1.0.3"
-      sources."has-flag-4.0.0"
-      sources."has-yarn-2.1.0"
+      sources."has-flag-3.0.0"
+      sources."has-yarn-3.0.0"
       sources."hosted-git-info-4.1.0"
       sources."http-cache-semantics-4.1.0"
       sources."http-errors-2.0.0"
       sources."http-proxy-agent-4.0.1"
+      sources."http2-wrapper-2.1.11"
       sources."https-proxy-agent-5.0.1"
-      sources."human-signals-2.1.0"
+      sources."human-signals-3.0.1"
       sources."iconv-lite-0.4.24"
       sources."ieee754-1.2.1"
-      sources."import-lazy-2.1.0"
+      sources."import-lazy-4.0.0"
       sources."imurmurhash-0.1.4"
-      sources."indent-string-4.0.0"
+      sources."indent-string-5.0.0"
       sources."inherits-2.0.4"
       sources."ini-2.0.0"
-      (sources."inquirer-8.2.4" // {
+      sources."inquirer-9.1.3"
+      (sources."inquirer-autocomplete-prompt-3.0.0" // {
         dependencies = [
-          sources."chalk-4.1.2"
+          sources."ansi-escapes-6.0.0"
+          sources."type-fest-3.0.0"
         ];
       })
-      sources."inquirer-autocomplete-prompt-2.0.0"
       sources."ip-1.1.8"
       sources."is-arrayish-0.2.1"
-      sources."is-ci-2.0.0"
+      sources."is-ci-3.0.1"
       sources."is-core-module-2.10.0"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-installed-globally-0.4.0"
-      sources."is-interactive-1.0.0"
-      sources."is-npm-5.0.0"
+      sources."is-interactive-2.0.0"
+      sources."is-npm-6.0.0"
       sources."is-obj-2.0.0"
       sources."is-path-inside-3.0.3"
       sources."is-plain-obj-1.1.0"
-      sources."is-stream-2.0.1"
+      sources."is-stream-3.0.0"
       sources."is-typedarray-1.0.0"
-      sources."is-unicode-supported-0.1.0"
-      sources."is-yarn-global-0.3.0"
+      sources."is-unicode-supported-1.3.0"
+      sources."is-yarn-global-0.4.0"
       sources."isarray-0.0.1"
       sources."isexe-2.0.0"
       sources."js-tokens-4.0.0"
-      sources."json-buffer-3.0.0"
+      sources."json-buffer-3.0.1"
       sources."json-parse-even-better-errors-2.3.1"
       sources."json-schema-traverse-1.0.0"
       sources."json-schema-typed-7.0.3"
       sources."jsonfile-4.0.0"
-      sources."keyv-3.1.0"
+      sources."keyv-4.5.0"
       sources."kind-of-6.0.3"
-      sources."latest-version-5.1.0"
+      sources."latest-version-7.0.0"
       sources."levn-0.3.0"
       sources."lines-and-columns-1.2.4"
       (sources."locate-path-3.0.0" // {
@@ -108181,61 +108301,51 @@ in
         ];
       })
       sources."lodash-4.17.21"
-      sources."log-symbols-4.1.0"
-      sources."lowercase-keys-1.0.1"
+      sources."log-symbols-5.1.0"
+      sources."lowercase-keys-3.0.0"
       sources."lru-cache-6.0.0"
-      (sources."make-dir-3.1.0" // {
-        dependencies = [
-          sources."semver-6.3.0"
-        ];
-      })
       sources."map-obj-4.3.0"
-      (sources."meow-9.0.0" // {
-        dependencies = [
-          sources."type-fest-0.18.1"
-        ];
-      })
+      sources."meow-10.1.5"
       sources."merge-stream-2.0.0"
       sources."mimic-fn-3.1.0"
-      sources."mimic-response-1.0.1"
+      sources."mimic-response-4.0.0"
       sources."min-indent-1.0.1"
       sources."minimist-1.2.6"
       sources."minimist-options-4.1.0"
       sources."ms-2.1.2"
       sources."mute-stream-0.0.8"
       sources."netmask-2.0.2"
-      sources."node-fetch-2.6.7"
+      sources."node-domexception-1.0.0"
+      sources."node-fetch-3.2.10"
       sources."normalize-package-data-3.0.3"
-      sources."normalize-url-4.5.1"
-      sources."npm-run-path-4.0.1"
-      sources."once-1.4.0"
+      sources."normalize-url-7.2.0"
+      (sources."npm-run-path-5.1.0" // {
+        dependencies = [
+          sources."path-key-4.0.0"
+        ];
+      })
       (sources."onetime-5.1.2" // {
         dependencies = [
           sources."mimic-fn-2.1.0"
         ];
       })
       sources."optionator-0.8.3"
-      sources."ora-5.4.1"
+      sources."ora-6.1.2"
       sources."os-tmpdir-1.0.2"
-      sources."p-cancelable-1.1.0"
+      sources."p-cancelable-3.0.0"
       sources."p-limit-2.3.0"
       sources."p-locate-3.0.0"
       sources."p-try-2.2.0"
       sources."pac-proxy-agent-5.0.0"
       sources."pac-resolver-5.0.1"
-      (sources."package-json-6.5.0" // {
-        dependencies = [
-          sources."semver-6.3.0"
-        ];
-      })
+      sources."package-json-8.1.0"
       sources."parse-json-5.2.0"
-      sources."path-exists-4.0.0"
+      sources."path-exists-5.0.0"
       sources."path-key-3.1.1"
-      sources."path-parse-1.0.7"
       sources."picocolors-1.0.0"
       sources."pkg-up-3.1.0"
       sources."prelude-ls-1.1.2"
-      sources."prepend-http-2.0.0"
+      sources."proto-list-1.2.4"
       (sources."proxy-agent-5.0.0" // {
         dependencies = [
           sources."lru-cache-5.1.1"
@@ -108243,56 +108353,45 @@ in
         ];
       })
       sources."proxy-from-env-1.1.0"
-      sources."pump-3.0.0"
       sources."punycode-2.1.1"
-      sources."pupa-2.1.1"
-      sources."quick-lru-4.0.1"
+      sources."pupa-3.1.0"
+      sources."quick-lru-5.1.1"
       sources."raw-body-2.5.1"
       (sources."rc-1.2.8" // {
         dependencies = [
           sources."ini-1.3.8"
         ];
       })
-      (sources."read-pkg-5.2.0" // {
-        dependencies = [
-          sources."hosted-git-info-2.8.9"
-          sources."normalize-package-data-2.5.0"
-          sources."semver-5.7.1"
-          sources."type-fest-0.6.0"
-        ];
-      })
-      (sources."read-pkg-up-7.0.1" // {
+      sources."read-pkg-6.0.0"
+      (sources."read-pkg-up-8.0.0" // {
         dependencies = [
-          sources."find-up-4.1.0"
-          sources."locate-path-5.0.0"
-          sources."p-locate-4.1.0"
-          sources."type-fest-0.8.1"
+          sources."find-up-5.0.0"
+          sources."locate-path-6.0.0"
+          sources."p-limit-3.1.0"
+          sources."p-locate-5.0.0"
+          sources."path-exists-4.0.0"
         ];
       })
       sources."readable-stream-3.6.0"
-      sources."redent-3.0.0"
-      sources."registry-auth-token-4.2.2"
-      sources."registry-url-5.1.0"
+      sources."redent-4.0.0"
+      sources."registry-auth-token-5.0.1"
+      sources."registry-url-6.0.1"
       sources."require-from-string-2.0.2"
-      sources."resolve-1.22.1"
-      sources."responselike-1.0.2"
-      sources."restore-cursor-3.1.0"
+      sources."resolve-alpn-1.2.1"
+      sources."responselike-3.0.0"
+      sources."restore-cursor-4.0.0"
       sources."run-async-2.4.1"
       sources."rxjs-7.5.7"
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
-      (sources."semver-diff-3.1.1" // {
-        dependencies = [
-          sources."semver-6.3.0"
-        ];
-      })
+      sources."semver-7.3.8"
+      sources."semver-diff-4.0.0"
       sources."setprototypeof-1.2.0"
       sources."shebang-command-2.0.0"
       sources."shebang-regex-3.0.0"
       sources."signal-exit-3.0.7"
       sources."smart-buffer-4.2.0"
-      (sources."socks-2.7.0" // {
+      (sources."socks-2.7.1" // {
         dependencies = [
           sources."ip-2.0.0"
         ];
@@ -108304,47 +108403,42 @@ in
       sources."spdx-expression-parse-3.0.1"
       sources."spdx-license-ids-3.0.12"
       sources."statuses-2.0.1"
-      sources."string-width-4.2.3"
+      sources."string-width-5.1.2"
       sources."string_decoder-1.3.0"
-      sources."strip-ansi-6.0.1"
-      sources."strip-final-newline-2.0.0"
-      sources."strip-indent-3.0.0"
+      sources."strip-ansi-7.0.1"
+      sources."strip-final-newline-3.0.0"
+      sources."strip-indent-4.0.0"
       sources."strip-json-comments-2.0.1"
-      sources."supports-color-7.2.0"
-      sources."supports-preserve-symlinks-flag-1.0.0"
+      sources."supports-color-5.5.0"
       sources."through-2.3.8"
       sources."tmp-0.0.33"
-      sources."to-readable-stream-1.0.0"
       sources."toidentifier-1.0.1"
-      sources."tr46-0.0.3"
-      sources."trim-newlines-3.0.1"
+      sources."trim-newlines-4.0.2"
       sources."tslib-2.4.0"
       sources."type-check-0.3.2"
-      sources."type-fest-0.21.3"
+      sources."type-fest-1.4.0"
       sources."typedarray-to-buffer-3.1.5"
-      sources."unique-string-2.0.0"
+      sources."unique-string-3.0.0"
       sources."universalify-0.1.2"
       sources."unpipe-1.0.0"
-      sources."update-notifier-5.1.0"
+      sources."update-notifier-6.0.2"
       sources."uri-js-4.4.1"
-      sources."url-parse-lax-3.0.0"
       sources."util-deprecate-1.0.2"
       sources."validate-npm-package-license-3.0.4"
       sources."validator-13.7.0"
       sources."vm2-3.9.11"
       sources."wcwidth-1.0.1"
-      sources."webidl-conversions-3.0.1"
-      sources."whatwg-url-5.0.0"
+      sources."web-streams-polyfill-3.2.1"
       sources."which-2.0.2"
-      sources."widest-line-3.1.0"
+      sources."widest-line-4.0.1"
       sources."word-wrap-1.2.3"
-      sources."wrap-ansi-7.0.0"
-      sources."wrappy-1.0.2"
+      sources."wrap-ansi-8.0.1"
       sources."write-file-atomic-3.0.3"
-      sources."xdg-basedir-4.0.0"
+      sources."xdg-basedir-5.1.0"
       sources."xregexp-2.0.0"
       sources."yallist-4.0.0"
       sources."yargs-parser-20.2.9"
+      sources."yocto-queue-0.1.0"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -108406,7 +108500,7 @@ in
       sources."buffer-crc32-0.2.13"
       sources."buffer-fill-1.0.0"
       sources."cli-progress-3.11.2"
-      sources."cliui-7.0.4"
+      sources."cliui-8.0.1"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
       sources."commander-2.20.3"
@@ -108532,7 +108626,7 @@ in
       sources."wrappy-1.0.2"
       sources."xtend-4.0.2"
       sources."y18n-5.0.8"
-      sources."yargs-17.5.1"
+      sources."yargs-17.6.0"
       sources."yargs-parser-21.1.1"
       sources."yauzl-2.10.0"
     ];
@@ -108682,7 +108776,7 @@ in
       sources."@nodelib/fs.walk-1.2.8"
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/parse-json-4.0.0"
       sources."@types/websocket-1.0.2"
       sources."abort-controller-3.0.0"
@@ -108734,7 +108828,7 @@ in
       sources."cli-cursor-2.1.0"
       sources."cli-spinners-2.7.0"
       sources."cli-width-3.0.0"
-      (sources."cliui-7.0.4" // {
+      (sources."cliui-8.0.1" // {
         dependencies = [
           sources."ansi-regex-5.0.1"
           sources."strip-ansi-6.0.1"
@@ -108777,7 +108871,7 @@ in
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
       sources."error-ex-1.3.2"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-get-iterator-1.1.2"
       sources."es-to-primitive-1.2.1"
       sources."es6-promise-3.3.1"
@@ -108983,7 +109077,7 @@ in
       sources."oas-linter-3.2.2"
       (sources."oas-resolver-2.5.6" // {
         dependencies = [
-          sources."yargs-17.5.1"
+          sources."yargs-17.6.0"
         ];
       })
       sources."oas-schema-walker-1.1.5"
@@ -109097,7 +109191,7 @@ in
       sources."supports-color-7.2.0"
       (sources."swagger2openapi-7.0.8" // {
         dependencies = [
-          sources."yargs-17.5.1"
+          sources."yargs-17.6.0"
         ];
       })
       sources."symbol-observable-1.2.0"
@@ -109140,6 +109234,9 @@ in
       sources."yaml-1.10.2"
       (sources."yargs-16.0.3" // {
         dependencies = [
+          sources."ansi-regex-5.0.1"
+          sources."cliui-7.0.4"
+          sources."strip-ansi-6.0.1"
           sources."yargs-parser-20.2.9"
         ];
       })
@@ -109174,16 +109271,16 @@ in
       sources."@babel/types-7.19.3"
       sources."@endemolshinegroup/cosmiconfig-typescript-loader-3.0.2"
       sources."@graphql-tools/batch-execute-8.5.6"
-      sources."@graphql-tools/delegate-9.0.6"
+      sources."@graphql-tools/delegate-9.0.8"
       sources."@graphql-tools/graphql-file-loader-7.5.5"
       sources."@graphql-tools/import-6.7.6"
       sources."@graphql-tools/json-file-loader-7.4.6"
       sources."@graphql-tools/load-7.7.7"
       sources."@graphql-tools/merge-8.3.6"
       sources."@graphql-tools/schema-9.0.4"
-      sources."@graphql-tools/url-loader-7.16.2"
+      sources."@graphql-tools/url-loader-7.16.4"
       sources."@graphql-tools/utils-8.12.0"
-      sources."@graphql-tools/wrap-9.2.1"
+      sources."@graphql-tools/wrap-9.2.3"
       sources."@iarna/toml-2.2.5"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
@@ -109191,10 +109288,10 @@ in
       sources."@peculiar/asn1-schema-2.3.0"
       sources."@peculiar/json-schema-1.1.12"
       sources."@peculiar/webcrypto-1.4.0"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/parse-json-4.0.0"
       sources."@types/ws-8.5.3"
-      sources."@whatwg-node/fetch-0.4.6"
+      sources."@whatwg-node/fetch-0.4.7"
       sources."abort-controller-3.0.0"
       sources."ansi-regex-5.0.1"
       sources."ansi-styles-3.2.1"
@@ -109315,7 +109412,7 @@ in
       sources."ts-node-9.1.1"
       sources."tslib-2.4.0"
       sources."typescript-4.8.4"
-      sources."undici-5.10.0"
+      sources."undici-5.11.0"
       sources."unixify-1.0.0"
       sources."utf-8-validate-5.0.9"
       sources."value-or-promise-1.0.11"
@@ -109380,21 +109477,21 @@ in
       sources."@cronvel/get-pixels-3.4.1"
       sources."@cspotcode/source-map-support-0.8.1"
       sources."@graphql-tools/batch-execute-8.5.6"
-      sources."@graphql-tools/delegate-9.0.6"
+      sources."@graphql-tools/delegate-9.0.8"
       sources."@graphql-tools/graphql-file-loader-7.5.5"
       sources."@graphql-tools/import-6.7.6"
       sources."@graphql-tools/json-file-loader-7.4.6"
       sources."@graphql-tools/load-7.7.7"
       sources."@graphql-tools/merge-8.3.6"
       sources."@graphql-tools/schema-9.0.4"
-      (sources."@graphql-tools/url-loader-7.16.2" // {
+      (sources."@graphql-tools/url-loader-7.16.4" // {
         dependencies = [
           sources."isomorphic-ws-5.0.0"
           sources."ws-8.9.0"
         ];
       })
       sources."@graphql-tools/utils-8.12.0"
-      sources."@graphql-tools/wrap-9.2.1"
+      sources."@graphql-tools/wrap-9.2.3"
       sources."@iarna/toml-2.2.5"
       sources."@jridgewell/resolve-uri-3.1.0"
       sources."@jridgewell/sourcemap-codec-1.4.14"
@@ -109406,7 +109503,7 @@ in
       sources."@oclif/config-1.17.0"
       sources."@oclif/errors-1.3.4"
       sources."@oclif/linewrap-1.0.0"
-      (sources."@oclif/parser-3.8.7" // {
+      (sources."@oclif/parser-3.8.8" // {
         dependencies = [
           sources."@oclif/errors-1.3.6"
         ];
@@ -109434,54 +109531,54 @@ in
       sources."@peculiar/asn1-schema-2.3.0"
       sources."@peculiar/json-schema-1.1.12"
       sources."@peculiar/webcrypto-1.4.0"
-      sources."@swc/core-1.3.3"
-      (sources."@swc/core-android-arm-eabi-1.3.3" // {
+      sources."@swc/core-1.3.5"
+      (sources."@swc/core-android-arm-eabi-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.122"
         ];
       })
-      (sources."@swc/core-android-arm64-1.3.3" // {
+      (sources."@swc/core-android-arm64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-darwin-arm64-1.3.3"
-      sources."@swc/core-darwin-x64-1.3.3"
-      (sources."@swc/core-freebsd-x64-1.3.3" // {
+      sources."@swc/core-darwin-arm64-1.3.5"
+      sources."@swc/core-darwin-x64-1.3.5"
+      (sources."@swc/core-freebsd-x64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-linux-arm-gnueabihf-1.3.3" // {
+      (sources."@swc/core-linux-arm-gnueabihf-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-linux-arm64-gnu-1.3.3"
-      sources."@swc/core-linux-arm64-musl-1.3.3"
-      sources."@swc/core-linux-x64-gnu-1.3.3"
-      sources."@swc/core-linux-x64-musl-1.3.3"
-      (sources."@swc/core-win32-arm64-msvc-1.3.3" // {
+      sources."@swc/core-linux-arm64-gnu-1.3.5"
+      sources."@swc/core-linux-arm64-musl-1.3.5"
+      sources."@swc/core-linux-x64-gnu-1.3.5"
+      sources."@swc/core-linux-x64-musl-1.3.5"
+      (sources."@swc/core-win32-arm64-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-win32-ia32-msvc-1.3.3" // {
+      (sources."@swc/core-win32-ia32-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-win32-x64-msvc-1.3.3"
-      sources."@swc/wasm-1.3.3"
+      sources."@swc/core-win32-x64-msvc-1.3.5"
+      sources."@swc/wasm-1.3.5"
       sources."@tsconfig/node10-1.0.9"
       sources."@tsconfig/node12-1.0.11"
       sources."@tsconfig/node14-1.0.3"
       sources."@tsconfig/node16-1.0.3"
       sources."@types/json-schema-7.0.9"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/parse-json-4.0.0"
       sources."@types/ws-8.5.3"
-      sources."@whatwg-node/fetch-0.4.6"
+      sources."@whatwg-node/fetch-0.4.7"
       sources."abort-controller-3.0.0"
       sources."accepts-1.3.8"
       sources."acorn-8.8.0"
@@ -109541,7 +109638,7 @@ in
       sources."cookie-signature-1.0.6"
       sources."cosmiconfig-7.0.1"
       sources."cosmiconfig-toml-loader-1.0.0"
-      sources."cosmiconfig-typescript-loader-4.1.0"
+      sources."cosmiconfig-typescript-loader-4.1.1"
       sources."create-require-1.1.1"
       (sources."cross-spawn-6.0.5" // {
         dependencies = [
@@ -109601,7 +109698,7 @@ in
       sources."globby-11.1.0"
       sources."graceful-fs-4.2.10"
       sources."graphql-15.4.0"
-      sources."graphql-config-4.3.5"
+      sources."graphql-config-4.3.6"
       (sources."graphql-language-service-interface-2.10.2" // {
         dependencies = [
           sources."graphql-16.6.0"
@@ -109713,7 +109810,7 @@ in
       sources."run-parallel-1.2.0"
       sources."safe-buffer-5.1.1"
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       (sources."send-0.16.2" // {
         dependencies = [
           sources."debug-2.6.9"
@@ -109759,7 +109856,7 @@ in
       sources."tslib-2.4.0"
       sources."type-is-1.6.18"
       sources."typescript-4.8.4"
-      sources."undici-5.10.0"
+      sources."undici-5.11.0"
       sources."uniq-1.0.1"
       sources."universalify-0.1.2"
       sources."unixify-1.0.0"
@@ -110063,10 +110160,10 @@ in
       sources."isarray-0.0.1"
       sources."lodash-4.17.21"
       sources."map-canvas-0.1.5"
-      sources."marked-4.1.0"
+      sources."marked-4.1.1"
       (sources."marked-terminal-5.1.1" // {
         dependencies = [
-          sources."chalk-5.0.1"
+          sources."chalk-5.1.0"
         ];
       })
       sources."memory-streams-0.1.3"
@@ -110994,7 +111091,7 @@ in
       sources."param-case-2.1.1"
       sources."relateurl-0.2.7"
       sources."source-map-0.6.1"
-      sources."uglify-js-3.17.2"
+      sources."uglify-js-3.17.3"
       sources."upper-case-1.1.3"
     ];
     buildInputs = globalBuildInputs;
@@ -111023,7 +111120,7 @@ in
       sources."chalk-4.1.2"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
-      sources."commander-9.4.0"
+      sources."commander-9.4.1"
       sources."concat-map-0.0.1"
       sources."encoding-0.1.13"
       sources."fs.realpath-1.0.0"
@@ -111303,7 +111400,7 @@ in
       sources."async-2.6.4"
       sources."asynckit-0.4.0"
       sources."available-typed-arrays-1.0.5"
-      sources."aws-sdk-2.1225.0"
+      sources."aws-sdk-2.1231.0"
       sources."aws-sign2-0.7.0"
       sources."aws4-1.11.0"
       sources."base64-js-1.5.1"
@@ -111336,7 +111433,7 @@ in
       sources."ecc-jsbn-0.1.2"
       sources."emoji-regex-8.0.0"
       sources."entities-1.1.2"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-to-primitive-1.2.1"
       sources."escalade-3.1.1"
       sources."escodegen-1.14.3"
@@ -111435,7 +111532,7 @@ in
       sources."lodash.reject-4.6.0"
       sources."lodash.some-4.6.0"
       sources."lodash.uniq-4.5.0"
-      sources."marked-4.1.0"
+      sources."marked-4.1.1"
       sources."mime-db-1.52.0"
       sources."mime-types-2.1.35"
       sources."minimist-1.2.6"
@@ -111878,7 +111975,7 @@ in
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
       sources."combined-stream-1.0.8"
-      sources."commander-9.4.0"
+      sources."commander-9.4.1"
       sources."cross-spawn-7.0.3"
       sources."delayed-stream-1.0.0"
       sources."duplexify-4.1.2"
@@ -112181,7 +112278,7 @@ in
       sources."minimatch-3.1.2"
       sources."minimist-1.2.6"
       sources."mkdirp-1.0.4"
-      sources."moo-0.5.1"
+      sources."moo-0.5.2"
       sources."nearley-2.20.1"
       sources."nopt-5.0.0"
       sources."oauth-sign-0.9.0"
@@ -112207,7 +112304,7 @@ in
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
       sources."selderee-0.6.0"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."shimmer-1.2.1"
       sources."sigmund-1.0.1"
       sources."sshpk-1.17.0"
@@ -112497,7 +112594,7 @@ in
         ];
       })
       sources."smart-buffer-4.2.0"
-      (sources."socks-2.7.0" // {
+      (sources."socks-2.7.1" // {
         dependencies = [
           sources."ip-2.0.0"
         ];
@@ -112637,7 +112734,7 @@ in
       sources."ot-builder-1.5.4"
       sources."otb-ttc-bundle-1.5.4"
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."spiro-3.0.0"
       sources."supports-color-7.2.0"
       sources."toposort-2.0.2"
@@ -112830,99 +112927,99 @@ in
           sources."tslib-1.14.1"
         ];
       })
-      sources."@aws-sdk/abort-controller-3.178.0"
-      sources."@aws-sdk/chunked-blob-reader-3.170.0"
-      sources."@aws-sdk/chunked-blob-reader-native-3.170.0"
-      (sources."@aws-sdk/client-s3-3.180.0" // {
+      sources."@aws-sdk/abort-controller-3.186.0"
+      sources."@aws-sdk/chunked-blob-reader-3.186.0"
+      sources."@aws-sdk/chunked-blob-reader-native-3.186.0"
+      (sources."@aws-sdk/client-s3-3.186.0" // {
         dependencies = [
           sources."fast-xml-parser-3.19.0"
         ];
       })
-      sources."@aws-sdk/client-sso-3.180.0"
-      (sources."@aws-sdk/client-sts-3.180.0" // {
+      sources."@aws-sdk/client-sso-3.186.0"
+      (sources."@aws-sdk/client-sts-3.186.0" // {
         dependencies = [
           sources."fast-xml-parser-3.19.0"
         ];
       })
-      sources."@aws-sdk/config-resolver-3.178.0"
-      sources."@aws-sdk/credential-provider-env-3.178.0"
-      sources."@aws-sdk/credential-provider-imds-3.178.0"
-      sources."@aws-sdk/credential-provider-ini-3.180.0"
-      sources."@aws-sdk/credential-provider-node-3.180.0"
-      sources."@aws-sdk/credential-provider-process-3.178.0"
-      sources."@aws-sdk/credential-provider-sso-3.180.0"
-      sources."@aws-sdk/credential-provider-web-identity-3.178.0"
-      sources."@aws-sdk/eventstream-codec-3.178.0"
-      sources."@aws-sdk/eventstream-serde-browser-3.178.0"
-      sources."@aws-sdk/eventstream-serde-config-resolver-3.178.0"
-      sources."@aws-sdk/eventstream-serde-node-3.178.0"
-      sources."@aws-sdk/eventstream-serde-universal-3.178.0"
-      sources."@aws-sdk/fetch-http-handler-3.178.0"
-      sources."@aws-sdk/hash-blob-browser-3.178.0"
-      sources."@aws-sdk/hash-node-3.178.0"
-      sources."@aws-sdk/hash-stream-node-3.178.0"
-      sources."@aws-sdk/invalid-dependency-3.178.0"
-      sources."@aws-sdk/is-array-buffer-3.170.0"
-      sources."@aws-sdk/md5-js-3.178.0"
-      sources."@aws-sdk/middleware-bucket-endpoint-3.178.0"
-      sources."@aws-sdk/middleware-content-length-3.178.0"
-      sources."@aws-sdk/middleware-endpoint-3.179.0"
-      sources."@aws-sdk/middleware-expect-continue-3.178.0"
-      sources."@aws-sdk/middleware-flexible-checksums-3.178.0"
-      sources."@aws-sdk/middleware-host-header-3.178.0"
-      sources."@aws-sdk/middleware-location-constraint-3.178.0"
-      sources."@aws-sdk/middleware-logger-3.178.0"
-      sources."@aws-sdk/middleware-recursion-detection-3.178.0"
-      (sources."@aws-sdk/middleware-retry-3.178.0" // {
+      sources."@aws-sdk/config-resolver-3.186.0"
+      sources."@aws-sdk/credential-provider-env-3.186.0"
+      sources."@aws-sdk/credential-provider-imds-3.186.0"
+      sources."@aws-sdk/credential-provider-ini-3.186.0"
+      sources."@aws-sdk/credential-provider-node-3.186.0"
+      sources."@aws-sdk/credential-provider-process-3.186.0"
+      sources."@aws-sdk/credential-provider-sso-3.186.0"
+      sources."@aws-sdk/credential-provider-web-identity-3.186.0"
+      sources."@aws-sdk/eventstream-codec-3.186.0"
+      sources."@aws-sdk/eventstream-serde-browser-3.186.0"
+      sources."@aws-sdk/eventstream-serde-config-resolver-3.186.0"
+      sources."@aws-sdk/eventstream-serde-node-3.186.0"
+      sources."@aws-sdk/eventstream-serde-universal-3.186.0"
+      sources."@aws-sdk/fetch-http-handler-3.186.0"
+      sources."@aws-sdk/hash-blob-browser-3.186.0"
+      sources."@aws-sdk/hash-node-3.186.0"
+      sources."@aws-sdk/hash-stream-node-3.186.0"
+      sources."@aws-sdk/invalid-dependency-3.186.0"
+      sources."@aws-sdk/is-array-buffer-3.186.0"
+      sources."@aws-sdk/md5-js-3.186.0"
+      sources."@aws-sdk/middleware-bucket-endpoint-3.186.0"
+      sources."@aws-sdk/middleware-content-length-3.186.0"
+      sources."@aws-sdk/middleware-endpoint-3.186.0"
+      sources."@aws-sdk/middleware-expect-continue-3.186.0"
+      sources."@aws-sdk/middleware-flexible-checksums-3.186.0"
+      sources."@aws-sdk/middleware-host-header-3.186.0"
+      sources."@aws-sdk/middleware-location-constraint-3.186.0"
+      sources."@aws-sdk/middleware-logger-3.186.0"
+      sources."@aws-sdk/middleware-recursion-detection-3.186.0"
+      (sources."@aws-sdk/middleware-retry-3.186.0" // {
         dependencies = [
           sources."uuid-8.3.2"
         ];
       })
-      sources."@aws-sdk/middleware-sdk-s3-3.178.0"
-      sources."@aws-sdk/middleware-sdk-sts-3.179.0"
-      sources."@aws-sdk/middleware-serde-3.178.0"
-      sources."@aws-sdk/middleware-signing-3.179.0"
-      sources."@aws-sdk/middleware-ssec-3.178.0"
-      sources."@aws-sdk/middleware-stack-3.178.0"
-      sources."@aws-sdk/middleware-user-agent-3.178.0"
-      sources."@aws-sdk/node-config-provider-3.178.0"
-      sources."@aws-sdk/node-http-handler-3.178.0"
-      sources."@aws-sdk/property-provider-3.178.0"
-      sources."@aws-sdk/protocol-http-3.178.0"
-      sources."@aws-sdk/querystring-builder-3.178.0"
-      sources."@aws-sdk/querystring-parser-3.178.0"
-      sources."@aws-sdk/s3-request-presigner-3.180.0"
-      sources."@aws-sdk/service-error-classification-3.178.0"
-      sources."@aws-sdk/shared-ini-file-loader-3.178.0"
-      sources."@aws-sdk/signature-v4-3.178.0"
-      sources."@aws-sdk/signature-v4-crt-3.180.0"
-      sources."@aws-sdk/signature-v4-multi-region-3.180.0"
-      sources."@aws-sdk/smithy-client-3.180.0"
-      sources."@aws-sdk/types-3.178.0"
-      sources."@aws-sdk/url-parser-3.178.0"
-      sources."@aws-sdk/util-arn-parser-3.170.0"
-      sources."@aws-sdk/util-base64-browser-3.170.0"
-      sources."@aws-sdk/util-base64-node-3.170.0"
-      sources."@aws-sdk/util-body-length-browser-3.170.0"
-      sources."@aws-sdk/util-body-length-node-3.170.0"
-      sources."@aws-sdk/util-buffer-from-3.170.0"
-      sources."@aws-sdk/util-config-provider-3.170.0"
-      sources."@aws-sdk/util-create-request-3.180.0"
-      sources."@aws-sdk/util-defaults-mode-browser-3.180.0"
-      sources."@aws-sdk/util-defaults-mode-node-3.180.0"
-      sources."@aws-sdk/util-format-url-3.178.0"
-      sources."@aws-sdk/util-hex-encoding-3.170.0"
-      sources."@aws-sdk/util-locate-window-3.170.0"
-      sources."@aws-sdk/util-middleware-3.178.0"
-      sources."@aws-sdk/util-stream-browser-3.178.0"
-      sources."@aws-sdk/util-stream-node-3.178.0"
-      sources."@aws-sdk/util-uri-escape-3.170.0"
-      sources."@aws-sdk/util-user-agent-browser-3.178.0"
-      sources."@aws-sdk/util-user-agent-node-3.178.0"
-      sources."@aws-sdk/util-utf8-browser-3.170.0"
-      sources."@aws-sdk/util-utf8-node-3.170.0"
-      sources."@aws-sdk/util-waiter-3.180.0"
-      sources."@aws-sdk/xml-builder-3.170.0"
+      sources."@aws-sdk/middleware-sdk-s3-3.186.0"
+      sources."@aws-sdk/middleware-sdk-sts-3.186.0"
+      sources."@aws-sdk/middleware-serde-3.186.0"
+      sources."@aws-sdk/middleware-signing-3.186.0"
+      sources."@aws-sdk/middleware-ssec-3.186.0"
+      sources."@aws-sdk/middleware-stack-3.186.0"
+      sources."@aws-sdk/middleware-user-agent-3.186.0"
+      sources."@aws-sdk/node-config-provider-3.186.0"
+      sources."@aws-sdk/node-http-handler-3.186.0"
+      sources."@aws-sdk/property-provider-3.186.0"
+      sources."@aws-sdk/protocol-http-3.186.0"
+      sources."@aws-sdk/querystring-builder-3.186.0"
+      sources."@aws-sdk/querystring-parser-3.186.0"
+      sources."@aws-sdk/s3-request-presigner-3.186.0"
+      sources."@aws-sdk/service-error-classification-3.186.0"
+      sources."@aws-sdk/shared-ini-file-loader-3.186.0"
+      sources."@aws-sdk/signature-v4-3.186.0"
+      sources."@aws-sdk/signature-v4-crt-3.186.0"
+      sources."@aws-sdk/signature-v4-multi-region-3.186.0"
+      sources."@aws-sdk/smithy-client-3.186.0"
+      sources."@aws-sdk/types-3.186.0"
+      sources."@aws-sdk/url-parser-3.186.0"
+      sources."@aws-sdk/util-arn-parser-3.186.0"
+      sources."@aws-sdk/util-base64-browser-3.186.0"
+      sources."@aws-sdk/util-base64-node-3.186.0"
+      sources."@aws-sdk/util-body-length-browser-3.186.0"
+      sources."@aws-sdk/util-body-length-node-3.186.0"
+      sources."@aws-sdk/util-buffer-from-3.186.0"
+      sources."@aws-sdk/util-config-provider-3.186.0"
+      sources."@aws-sdk/util-create-request-3.186.0"
+      sources."@aws-sdk/util-defaults-mode-browser-3.186.0"
+      sources."@aws-sdk/util-defaults-mode-node-3.186.0"
+      sources."@aws-sdk/util-format-url-3.186.0"
+      sources."@aws-sdk/util-hex-encoding-3.186.0"
+      sources."@aws-sdk/util-locate-window-3.186.0"
+      sources."@aws-sdk/util-middleware-3.186.0"
+      sources."@aws-sdk/util-stream-browser-3.186.0"
+      sources."@aws-sdk/util-stream-node-3.186.0"
+      sources."@aws-sdk/util-uri-escape-3.186.0"
+      sources."@aws-sdk/util-user-agent-browser-3.186.0"
+      sources."@aws-sdk/util-user-agent-node-3.186.0"
+      sources."@aws-sdk/util-utf8-browser-3.186.0"
+      sources."@aws-sdk/util-utf8-node-3.186.0"
+      sources."@aws-sdk/util-waiter-3.186.0"
+      sources."@aws-sdk/xml-builder-3.186.0"
       sources."@braintree/sanitize-url-3.1.0"
       sources."@cronvel/get-pixels-3.4.1"
       sources."@gar/promisify-1.1.3"
@@ -112966,7 +113063,7 @@ in
           sources."npmlog-5.0.1"
           sources."readable-stream-3.6.0"
           sources."rimraf-3.0.2"
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
           sources."string-width-4.2.3"
           sources."strip-ansi-6.0.1"
           sources."tar-6.1.11"
@@ -112977,7 +113074,7 @@ in
       })
       (sources."@npmcli/fs-1.1.1" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       (sources."@npmcli/move-file-1.1.2" // {
@@ -112988,7 +113085,7 @@ in
       })
       sources."@tootallnate/once-1.1.2"
       sources."@types/nanoid-3.0.0"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/ws-8.5.3"
       sources."abab-2.0.6"
       sources."abbrev-1.1.1"
@@ -113030,13 +113127,13 @@ in
       sources."asynckit-0.4.0"
       sources."atob-2.1.2"
       sources."available-typed-arrays-1.0.5"
-      (sources."aws-crt-1.14.4" // {
+      (sources."aws-crt-1.14.5" // {
         dependencies = [
           sources."mkdirp-1.0.4"
           sources."tar-6.1.11"
         ];
       })
-      (sources."aws-sdk-2.1225.0" // {
+      (sources."aws-sdk-2.1231.0" // {
         dependencies = [
           sources."buffer-4.9.2"
           sources."ieee754-1.1.13"
@@ -113265,7 +113362,7 @@ in
       sources."entities-2.2.0"
       sources."env-paths-2.2.1"
       sources."err-code-2.0.3"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-to-primitive-1.2.1"
       sources."es6-promise-pool-2.5.0"
       sources."escape-string-regexp-1.0.5"
@@ -113556,9 +113653,9 @@ in
       sources."negotiator-0.6.3"
       sources."nextgen-events-1.5.3"
       sources."no-case-2.3.2"
-      (sources."node-abi-3.25.0" // {
+      (sources."node-abi-3.26.0" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."node-addon-api-4.3.0"
@@ -113575,7 +113672,7 @@ in
           sources."npmlog-6.0.2"
           sources."readable-stream-3.6.0"
           sources."rimraf-3.0.2"
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
           sources."string-width-4.2.3"
           sources."strip-ansi-6.0.1"
           sources."tar-6.1.11"
@@ -113585,7 +113682,7 @@ in
       sources."node-gyp-build-4.5.0"
       (sources."node-notifier-8.0.2" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
           sources."uuid-8.3.2"
           sources."which-2.0.2"
         ];
@@ -113722,7 +113819,7 @@ in
               sources."simple-get-3.1.1"
             ];
           })
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
           sources."simple-get-4.0.1"
           sources."strip-ansi-3.0.1"
         ];
@@ -113739,7 +113836,7 @@ in
         ];
       })
       sources."smart-buffer-4.2.0"
-      sources."socks-2.7.0"
+      sources."socks-2.7.1"
       sources."socks-proxy-agent-6.2.1"
       sources."source-map-0.6.1"
       sources."source-map-resolve-0.5.3"
@@ -113752,7 +113849,7 @@ in
       })
       sources."splitargs-0.0.7"
       sources."sprintf-js-1.1.2"
-      (sources."sqlite3-5.1.1" // {
+      (sources."sqlite3-5.1.2" // {
         dependencies = [
           sources."mkdirp-1.0.4"
           sources."tar-6.1.11"
@@ -114021,7 +114118,7 @@ in
       sources."lodash-4.17.21"
       sources."markdown-it-12.3.2"
       sources."markdown-it-anchor-8.6.5"
-      sources."marked-4.1.0"
+      sources."marked-4.1.1"
       sources."mdurl-1.0.1"
       sources."mkdirp-1.0.4"
       sources."requizzle-0.2.3"
@@ -114207,7 +114304,7 @@ in
       sources."qs-6.11.0"
       sources."readable-stream-3.6.0"
       sources."safe-buffer-5.2.1"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."side-channel-1.0.4"
       sources."slash-3.0.0"
       sources."sprintf-js-1.0.3"
@@ -114245,7 +114342,7 @@ in
       sources."ansi-styles-4.3.0"
       sources."array-flatten-1.1.1"
       sources."basic-auth-2.0.1"
-      sources."body-parser-1.20.0"
+      sources."body-parser-1.20.1"
       sources."boxen-5.1.2"
       sources."bytes-3.1.2"
       (sources."cacheable-request-6.1.0" // {
@@ -114259,7 +114356,7 @@ in
       sources."chalk-4.1.2"
       sources."ci-info-2.0.0"
       sources."cli-boxes-2.2.1"
-      sources."cliui-7.0.4"
+      sources."cliui-8.0.1"
       sources."clone-response-1.0.3"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
@@ -114300,6 +114397,8 @@ in
       sources."etag-1.8.1"
       (sources."express-4.18.1" // {
         dependencies = [
+          sources."body-parser-1.20.0"
+          sources."qs-6.10.3"
           sources."safe-buffer-5.2.1"
         ];
       })
@@ -114397,7 +114496,7 @@ in
       sources."proxy-addr-2.0.7"
       sources."pump-3.0.0"
       sources."pupa-2.1.1"
-      sources."qs-6.10.3"
+      sources."qs-6.11.0"
       sources."range-parser-1.2.1"
       sources."raw-body-2.5.1"
       (sources."rc-1.2.8" // {
@@ -114411,7 +114510,7 @@ in
       sources."responselike-1.0.2"
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."semver-compare-1.0.0"
       (sources."semver-diff-3.1.1" // {
         dependencies = [
@@ -114452,7 +114551,7 @@ in
       sources."xdg-basedir-4.0.0"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
-      sources."yargs-17.5.1"
+      sources."yargs-17.6.0"
       sources."yargs-parser-21.1.1"
     ];
     buildInputs = globalBuildInputs;
@@ -114529,7 +114628,7 @@ in
       sources."bcrypt-pbkdf-1.0.2"
       sources."binary-extensions-1.13.1"
       sources."bindings-1.5.0"
-      sources."body-parser-1.20.0"
+      sources."body-parser-1.20.1"
       sources."boxen-0.6.0"
       sources."braces-1.8.5"
       sources."bytes-3.1.2"
@@ -114540,7 +114639,7 @@ in
       })
       sources."call-bind-1.0.2"
       sources."camelcase-2.1.1"
-      sources."capture-stack-trace-1.0.1"
+      sources."capture-stack-trace-1.0.2"
       sources."caseless-0.12.0"
       sources."chalk-1.1.3"
       sources."chokidar-1.7.0"
@@ -114620,6 +114719,8 @@ in
       sources."expand-range-1.8.2"
       (sources."express-4.18.1" // {
         dependencies = [
+          sources."body-parser-1.20.0"
+          sources."qs-6.10.3"
           sources."safe-buffer-5.2.1"
         ];
       })
@@ -114840,7 +114941,7 @@ in
       sources."proxy-addr-2.0.7"
       sources."psl-1.9.0"
       sources."punycode-2.1.1"
-      sources."qs-6.10.3"
+      sources."qs-6.11.0"
       (sources."randomatic-3.1.1" // {
         dependencies = [
           sources."is-number-4.0.0"
@@ -115083,22 +115184,17 @@ in
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
-      sources."@oclif/command-1.8.16"
-      sources."@oclif/config-1.18.3"
+      sources."@oclif/command-1.8.18"
+      sources."@oclif/config-1.18.5"
       sources."@oclif/errors-1.3.6"
-      (sources."@oclif/help-1.0.1" // {
+      (sources."@oclif/help-1.0.2" // {
         dependencies = [
-          sources."@oclif/config-1.18.2"
-          (sources."@oclif/errors-1.3.5" // {
-            dependencies = [
-              sources."wrap-ansi-7.0.0"
-            ];
-          })
+          sources."@oclif/config-1.18.3"
           sources."wrap-ansi-6.2.0"
         ];
       })
       sources."@oclif/linewrap-1.0.0"
-      sources."@oclif/parser-3.8.7"
+      sources."@oclif/parser-3.8.8"
       (sources."@oclif/plugin-help-3.3.1" // {
         dependencies = [
           sources."@oclif/config-1.18.2"
@@ -115273,7 +115369,7 @@ in
         ];
       })
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."shebang-command-1.2.0"
       sources."shebang-regex-1.0.0"
       sources."side-channel-1.0.4"
@@ -115345,7 +115441,7 @@ in
       sources."@socket.io/component-emitter-3.1.0"
       sources."@types/cookie-0.4.1"
       sources."@types/cors-2.8.12"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."accepts-1.3.8"
       sources."ansi-regex-5.0.1"
       sources."ansi-styles-4.3.0"
@@ -115353,7 +115449,7 @@ in
       sources."balanced-match-1.0.2"
       sources."base64id-2.0.0"
       sources."binary-extensions-2.2.0"
-      sources."body-parser-1.20.0"
+      sources."body-parser-1.20.1"
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
       sources."bufferutil-4.0.6"
@@ -115423,7 +115519,7 @@ in
       sources."isbinaryfile-4.0.10"
       sources."jsonfile-4.0.0"
       sources."lodash-4.17.21"
-      (sources."log4js-6.6.1" // {
+      (sources."log4js-6.7.0" // {
         dependencies = [
           sources."debug-4.3.4"
           sources."ms-2.1.2"
@@ -115448,7 +115544,7 @@ in
       sources."path-is-absolute-1.0.1"
       sources."picomatch-2.3.1"
       sources."qjobs-1.2.0"
-      sources."qs-6.10.3"
+      sources."qs-6.11.0"
       sources."range-parser-1.2.1"
       sources."raw-body-2.5.1"
       sources."readdirp-3.6.0"
@@ -115572,7 +115668,7 @@ in
               sources."semver-6.3.0"
             ];
           })
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."@nodelib/fs.scandir-2.1.5"
@@ -115660,7 +115756,7 @@ in
       sources."bufferutil-4.0.6"
       sources."bytes-3.1.2"
       sources."call-bind-1.0.2"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."canvas-2.10.1"
       sources."chalk-2.4.2"
       sources."chardet-1.4.0"
@@ -115686,7 +115782,7 @@ in
       sources."convert-source-map-1.8.0"
       sources."cookie-0.5.0"
       sources."cookie-signature-1.0.6"
-      sources."core-js-3.25.3"
+      sources."core-js-3.25.5"
       sources."core-util-is-1.0.3"
       sources."cors-2.8.5"
       sources."create-hash-1.2.0"
@@ -115725,13 +115821,13 @@ in
       })
       sources."dotenv-8.6.0"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       sources."emoji-regex-8.0.0"
       sources."encodeurl-1.0.2"
       sources."encoding-0.1.13"
       sources."end-of-stream-1.4.4"
       sources."enquirer-2.3.6"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-array-method-boxes-properly-1.0.0"
       sources."es-to-primitive-1.2.1"
       sources."escalade-3.1.1"
@@ -115908,7 +116004,7 @@ in
       sources."node-gyp-build-4.5.0"
       (sources."node-notifier-10.0.1" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."node-releases-2.0.6"
@@ -115963,7 +116059,7 @@ in
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
           sources."has-flag-4.0.0"
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
           sources."supports-color-7.2.0"
         ];
       })
@@ -116089,7 +116185,7 @@ in
       sources."unbox-primitive-1.0.2"
       sources."universalify-0.2.0"
       sources."unpipe-1.0.0"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."url-parse-1.5.10"
       sources."utf-8-validate-5.0.9"
       sources."util-deprecate-1.0.2"
@@ -116753,10 +116849,10 @@ in
   lerna = nodeEnv.buildNodePackage {
     name = "lerna";
     packageName = "lerna";
-    version = "5.5.2";
+    version = "5.6.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/lerna/-/lerna-5.5.2.tgz";
-      sha512 = "P0ThZMfWJ4BP9xRbXaLyoOCYjlPN615FRV2ZBnTBA12lw32IlcREIgvF0N1zZX7wXtsmN56rU3CABoJ5lU8xuw==";
+      url = "https://registry.npmjs.org/lerna/-/lerna-5.6.1.tgz";
+      sha512 = "gAZxKlQVpYpAvzXMOpc6VfFa6WYZmdD7u6js1u3wu7tOwnwHcSQK+qGOO3/Ky/YP+LbrXuH0BnLj09d+ev9OwA==";
     };
     dependencies = [
       sources."@babel/code-frame-7.18.6"
@@ -116774,90 +116870,110 @@ in
       sources."@gar/promisify-1.1.3"
       sources."@hutson/parse-repository-url-3.0.2"
       sources."@isaacs/string-locale-compare-1.1.0"
-      sources."@lerna/add-5.5.2"
-      sources."@lerna/bootstrap-5.5.2"
-      sources."@lerna/changed-5.5.2"
-      sources."@lerna/check-working-tree-5.5.2"
-      sources."@lerna/child-process-5.5.2"
-      sources."@lerna/clean-5.5.2"
-      sources."@lerna/cli-5.5.2"
-      sources."@lerna/collect-uncommitted-5.5.2"
-      sources."@lerna/collect-updates-5.5.2"
-      sources."@lerna/command-5.5.2"
-      (sources."@lerna/conventional-commits-5.5.2" // {
-        dependencies = [
-          sources."pify-5.0.0"
-        ];
-      })
-      (sources."@lerna/create-5.5.2" // {
+      sources."@lerna/add-5.6.1"
+      sources."@lerna/bootstrap-5.6.1"
+      sources."@lerna/changed-5.6.1"
+      sources."@lerna/check-working-tree-5.6.1"
+      sources."@lerna/child-process-5.6.1"
+      sources."@lerna/clean-5.6.1"
+      sources."@lerna/cli-5.6.1"
+      sources."@lerna/collect-uncommitted-5.6.1"
+      sources."@lerna/collect-updates-5.6.1"
+      sources."@lerna/command-5.6.1"
+      sources."@lerna/conventional-commits-5.6.1"
+      (sources."@lerna/create-5.6.1" // {
         dependencies = [
           sources."builtins-5.0.1"
-          sources."pify-5.0.0"
           sources."validate-npm-package-name-4.0.0"
           sources."yargs-parser-20.2.4"
         ];
       })
-      sources."@lerna/create-symlink-5.5.2"
-      sources."@lerna/describe-ref-5.5.2"
-      sources."@lerna/diff-5.5.2"
-      sources."@lerna/exec-5.5.2"
-      sources."@lerna/filter-options-5.5.2"
-      sources."@lerna/filter-packages-5.5.2"
-      sources."@lerna/get-npm-exec-opts-5.5.2"
-      sources."@lerna/get-packed-5.5.2"
-      sources."@lerna/github-client-5.5.2"
-      sources."@lerna/gitlab-client-5.5.2"
-      sources."@lerna/global-options-5.5.2"
-      sources."@lerna/has-npm-version-5.5.2"
-      sources."@lerna/import-5.5.2"
-      sources."@lerna/info-5.5.2"
-      sources."@lerna/init-5.5.2"
-      sources."@lerna/link-5.5.2"
-      sources."@lerna/list-5.5.2"
-      sources."@lerna/listable-5.5.2"
-      sources."@lerna/log-packed-5.5.2"
-      (sources."@lerna/npm-conf-5.5.2" // {
+      sources."@lerna/create-symlink-5.6.1"
+      sources."@lerna/describe-ref-5.6.1"
+      sources."@lerna/diff-5.6.1"
+      sources."@lerna/exec-5.6.1"
+      sources."@lerna/filter-options-5.6.1"
+      sources."@lerna/filter-packages-5.6.1"
+      sources."@lerna/get-npm-exec-opts-5.6.1"
+      sources."@lerna/get-packed-5.6.1"
+      sources."@lerna/github-client-5.6.1"
+      sources."@lerna/gitlab-client-5.6.1"
+      sources."@lerna/global-options-5.6.1"
+      sources."@lerna/has-npm-version-5.6.1"
+      sources."@lerna/import-5.6.1"
+      sources."@lerna/info-5.6.1"
+      (sources."@lerna/init-5.6.1" // {
         dependencies = [
-          sources."pify-5.0.0"
-        ];
-      })
-      sources."@lerna/npm-dist-tag-5.5.2"
-      sources."@lerna/npm-install-5.5.2"
-      (sources."@lerna/npm-publish-5.5.2" // {
+          sources."detect-indent-6.1.0"
+          sources."is-plain-obj-2.1.0"
+          sources."make-dir-3.1.0"
+          sources."semver-6.3.0"
+          sources."sort-keys-4.2.0"
+          sources."write-file-atomic-3.0.3"
+          sources."write-json-file-4.3.0"
+        ];
+      })
+      sources."@lerna/link-5.6.1"
+      sources."@lerna/list-5.6.1"
+      sources."@lerna/listable-5.6.1"
+      sources."@lerna/log-packed-5.6.1"
+      sources."@lerna/npm-conf-5.6.1"
+      sources."@lerna/npm-dist-tag-5.6.1"
+      sources."@lerna/npm-install-5.6.1"
+      sources."@lerna/npm-publish-5.6.1"
+      sources."@lerna/npm-run-script-5.6.1"
+      sources."@lerna/otplease-5.6.1"
+      sources."@lerna/output-5.6.1"
+      sources."@lerna/pack-directory-5.6.1"
+      sources."@lerna/package-5.6.1"
+      sources."@lerna/package-graph-5.6.1"
+      sources."@lerna/prerelease-id-from-version-5.6.1"
+      sources."@lerna/profiler-5.6.1"
+      (sources."@lerna/project-5.6.1" // {
         dependencies = [
-          sources."pify-5.0.0"
-        ];
-      })
-      sources."@lerna/npm-run-script-5.5.2"
-      sources."@lerna/otplease-5.5.2"
-      sources."@lerna/output-5.5.2"
-      sources."@lerna/pack-directory-5.5.2"
-      sources."@lerna/package-5.5.2"
-      sources."@lerna/package-graph-5.5.2"
-      sources."@lerna/prerelease-id-from-version-5.5.2"
-      sources."@lerna/profiler-5.5.2"
-      sources."@lerna/project-5.5.2"
-      sources."@lerna/prompt-5.5.2"
-      sources."@lerna/publish-5.5.2"
-      sources."@lerna/pulse-till-done-5.5.2"
-      sources."@lerna/query-graph-5.5.2"
-      sources."@lerna/resolve-symlink-5.5.2"
-      sources."@lerna/rimraf-dir-5.5.2"
-      sources."@lerna/run-5.5.2"
-      sources."@lerna/run-lifecycle-5.5.2"
-      sources."@lerna/run-topologically-5.5.2"
-      sources."@lerna/symlink-binary-5.5.2"
-      sources."@lerna/symlink-dependencies-5.5.2"
-      (sources."@lerna/temp-write-5.5.2" // {
+          sources."detect-indent-6.1.0"
+          sources."is-plain-obj-2.1.0"
+          sources."make-dir-3.1.0"
+          sources."semver-6.3.0"
+          sources."sort-keys-4.2.0"
+          sources."write-file-atomic-3.0.3"
+          sources."write-json-file-4.3.0"
+        ];
+      })
+      sources."@lerna/prompt-5.6.1"
+      sources."@lerna/publish-5.6.1"
+      sources."@lerna/pulse-till-done-5.6.1"
+      sources."@lerna/query-graph-5.6.1"
+      sources."@lerna/resolve-symlink-5.6.1"
+      sources."@lerna/rimraf-dir-5.6.1"
+      sources."@lerna/run-5.6.1"
+      sources."@lerna/run-lifecycle-5.6.1"
+      sources."@lerna/run-topologically-5.6.1"
+      sources."@lerna/symlink-binary-5.6.1"
+      sources."@lerna/symlink-dependencies-5.6.1"
+      (sources."@lerna/temp-write-5.6.1" // {
         dependencies = [
           sources."make-dir-3.1.0"
           sources."semver-6.3.0"
         ];
       })
-      sources."@lerna/timer-5.5.2"
-      sources."@lerna/validation-error-5.5.2"
-      sources."@lerna/version-5.5.2"
-      (sources."@lerna/write-log-file-5.5.2" // {
+      sources."@lerna/timer-5.6.1"
+      sources."@lerna/validation-error-5.6.1"
+      (sources."@lerna/version-5.6.1" // {
+        dependencies = [
+          sources."detect-indent-6.1.0"
+          sources."is-plain-obj-2.1.0"
+          (sources."make-dir-3.1.0" // {
+            dependencies = [
+              sources."semver-6.3.0"
+            ];
+          })
+          sources."sort-keys-4.2.0"
+          sources."write-file-atomic-3.0.3"
+          sources."write-json-file-4.3.0"
+        ];
+      })
+      (sources."@lerna/write-log-file-5.6.1" // {
         dependencies = [
           sources."write-file-atomic-4.0.2"
         ];
@@ -116870,7 +116986,8 @@ in
           sources."builtins-5.0.1"
           sources."hosted-git-info-5.1.0"
           sources."lru-cache-7.14.0"
-          sources."npm-package-arg-9.1.0"
+          sources."nopt-5.0.0"
+          sources."npm-package-arg-9.1.2"
           sources."validate-npm-package-name-4.0.0"
         ];
       })
@@ -116895,8 +117012,9 @@ in
       sources."@npmcli/package-json-2.0.0"
       sources."@npmcli/promise-spawn-3.0.0"
       sources."@npmcli/run-script-4.2.1"
-      sources."@nrwl/cli-14.7.17"
-      sources."@nrwl/tao-14.7.17"
+      sources."@nrwl/cli-14.8.3"
+      sources."@nrwl/devkit-14.8.3"
+      sources."@nrwl/tao-14.8.3"
       sources."@octokit/auth-token-3.0.1"
       sources."@octokit/core-4.0.5"
       (sources."@octokit/endpoint-7.0.2" // {
@@ -116905,7 +117023,7 @@ in
         ];
       })
       sources."@octokit/graphql-5.0.1"
-      sources."@octokit/openapi-types-13.13.0"
+      sources."@octokit/openapi-types-13.13.1"
       sources."@octokit/plugin-enterprise-rest-6.0.1"
       sources."@octokit/plugin-paginate-rest-4.3.1"
       sources."@octokit/plugin-request-log-1.0.4"
@@ -116919,27 +117037,28 @@ in
       sources."@octokit/rest-19.0.4"
       sources."@octokit/types-7.5.1"
       sources."@parcel/watcher-2.0.4"
+      sources."@phenomnomnominal/tsquery-4.1.1"
       sources."@swc-node/core-1.9.1"
-      sources."@swc-node/register-1.5.2"
-      sources."@swc-node/sourcemap-support-0.2.1"
-      sources."@swc/core-1.3.3"
-      (sources."@swc/core-android-arm-eabi-1.3.3" // {
+      sources."@swc-node/register-1.5.4"
+      sources."@swc-node/sourcemap-support-0.2.2"
+      sources."@swc/core-1.3.5"
+      (sources."@swc/core-android-arm-eabi-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.122"
         ];
       })
-      sources."@swc/core-android-arm64-1.3.3"
-      sources."@swc/core-darwin-arm64-1.3.3"
-      sources."@swc/core-darwin-x64-1.3.3"
-      sources."@swc/core-freebsd-x64-1.3.3"
-      sources."@swc/core-linux-arm-gnueabihf-1.3.3"
-      sources."@swc/core-linux-arm64-gnu-1.3.3"
-      sources."@swc/core-linux-arm64-musl-1.3.3"
-      sources."@swc/core-linux-x64-gnu-1.3.3"
-      sources."@swc/core-linux-x64-musl-1.3.3"
-      sources."@swc/core-win32-arm64-msvc-1.3.3"
-      sources."@swc/core-win32-ia32-msvc-1.3.3"
-      sources."@swc/core-win32-x64-msvc-1.3.3"
+      sources."@swc/core-android-arm64-1.3.5"
+      sources."@swc/core-darwin-arm64-1.3.5"
+      sources."@swc/core-darwin-x64-1.3.5"
+      sources."@swc/core-freebsd-x64-1.3.5"
+      sources."@swc/core-linux-arm-gnueabihf-1.3.5"
+      sources."@swc/core-linux-arm64-gnu-1.3.5"
+      sources."@swc/core-linux-arm64-musl-1.3.5"
+      sources."@swc/core-linux-x64-gnu-1.3.5"
+      sources."@swc/core-linux-x64-musl-1.3.5"
+      sources."@swc/core-win32-arm64-msvc-1.3.5"
+      sources."@swc/core-win32-ia32-msvc-1.3.5"
+      sources."@swc/core-win32-x64-msvc-1.3.5"
       sources."@swc/wasm-1.2.130"
       sources."@tootallnate/once-2.0.0"
       sources."@types/json5-0.0.29"
@@ -116948,7 +117067,7 @@ in
       sources."@types/normalize-package-data-2.4.1"
       sources."@types/parse-json-4.0.0"
       sources."@yarnpkg/lockfile-1.1.0"
-      (sources."@yarnpkg/parsers-3.0.0-rc.21" // {
+      (sources."@yarnpkg/parsers-3.0.0-rc.22" // {
         dependencies = [
           sources."argparse-1.0.10"
           sources."js-yaml-3.14.1"
@@ -116978,10 +117097,12 @@ in
       sources."array-union-2.1.0"
       sources."arrify-2.0.1"
       sources."asap-2.0.6"
+      sources."async-3.2.4"
       sources."at-least-node-1.0.0"
+      sources."axios-0.21.1"
       sources."balanced-match-1.0.2"
       sources."base64-js-1.5.1"
-      sources."before-after-hook-2.2.2"
+      sources."before-after-hook-2.2.3"
       (sources."bin-links-3.0.3" // {
         dependencies = [
           sources."npm-normalize-package-bin-2.0.0"
@@ -117076,6 +117197,7 @@ in
       sources."dot-prop-6.0.1"
       sources."dotenv-10.0.0"
       sources."duplexer-0.1.2"
+      sources."ejs-3.1.8"
       sources."emoji-regex-8.0.0"
       sources."encoding-0.1.13"
       sources."end-of-stream-1.4.4"
@@ -117087,6 +117209,8 @@ in
       sources."escalade-3.1.1"
       sources."escape-string-regexp-1.0.5"
       sources."esprima-4.0.1"
+      sources."esquery-1.4.0"
+      sources."estraverse-5.3.0"
       sources."eventemitter3-4.0.7"
       sources."execa-5.1.1"
       (sources."external-editor-3.1.0" // {
@@ -117097,9 +117221,16 @@ in
       sources."fast-glob-3.2.12"
       sources."fastq-1.13.0"
       sources."figures-3.2.0"
+      (sources."filelist-1.0.4" // {
+        dependencies = [
+          sources."brace-expansion-2.0.1"
+          sources."minimatch-5.1.0"
+        ];
+      })
       sources."fill-range-7.0.1"
       sources."find-up-4.1.0"
       sources."flat-5.0.2"
+      sources."follow-redirects-1.15.2"
       sources."fs-constants-1.0.0"
       sources."fs-extra-9.1.0"
       sources."fs-minipass-2.1.0"
@@ -117174,7 +117305,7 @@ in
           sources."builtins-5.0.1"
           sources."hosted-git-info-5.1.0"
           sources."lru-cache-7.14.0"
-          sources."npm-package-arg-9.1.0"
+          sources."npm-package-arg-9.1.2"
           sources."validate-npm-package-name-4.0.0"
         ];
       })
@@ -117203,6 +117334,7 @@ in
       sources."isarray-1.0.0"
       sources."isexe-2.0.0"
       sources."isobject-3.0.1"
+      sources."jake-10.8.5"
       sources."js-tokens-4.0.0"
       sources."js-yaml-4.1.0"
       sources."json-parse-better-errors-1.0.2"
@@ -117221,7 +117353,7 @@ in
           sources."builtins-5.0.1"
           sources."hosted-git-info-5.1.0"
           sources."lru-cache-7.14.0"
-          sources."npm-package-arg-9.1.0"
+          sources."npm-package-arg-9.1.2"
           sources."validate-npm-package-name-4.0.0"
         ];
       })
@@ -117230,7 +117362,7 @@ in
           sources."builtins-5.0.1"
           sources."hosted-git-info-5.1.0"
           sources."lru-cache-7.14.0"
-          sources."npm-package-arg-9.1.0"
+          sources."npm-package-arg-9.1.2"
           sources."validate-npm-package-name-4.0.0"
         ];
       })
@@ -117247,6 +117379,7 @@ in
       sources."lru-cache-6.0.0"
       (sources."make-dir-2.1.0" // {
         dependencies = [
+          sources."pify-4.0.1"
           sources."semver-5.7.1"
         ];
       })
@@ -117306,9 +117439,9 @@ in
       sources."neo-async-2.6.2"
       sources."node-addon-api-3.2.1"
       sources."node-fetch-2.6.7"
-      sources."node-gyp-9.1.0"
+      sources."node-gyp-9.2.0"
       sources."node-gyp-build-4.5.0"
-      sources."nopt-5.0.0"
+      sources."nopt-6.0.0"
       (sources."normalize-package-data-4.0.1" // {
         dependencies = [
           sources."hosted-git-info-5.1.0"
@@ -117335,7 +117468,7 @@ in
           sources."hosted-git-info-5.1.0"
           sources."lru-cache-7.14.0"
           sources."npm-normalize-package-bin-2.0.0"
-          sources."npm-package-arg-9.1.0"
+          sources."npm-package-arg-9.1.2"
           sources."validate-npm-package-name-4.0.0"
         ];
       })
@@ -117344,13 +117477,13 @@ in
           sources."builtins-5.0.1"
           sources."hosted-git-info-5.1.0"
           sources."lru-cache-7.14.0"
-          sources."npm-package-arg-9.1.0"
+          sources."npm-package-arg-9.1.2"
           sources."validate-npm-package-name-4.0.0"
         ];
       })
       sources."npm-run-path-4.0.1"
       sources."npmlog-6.0.2"
-      (sources."nx-14.7.17" // {
+      (sources."nx-14.8.3" // {
         dependencies = [
           sources."chalk-4.1.0"
           sources."cli-spinners-2.6.1"
@@ -117360,7 +117493,11 @@ in
           sources."minimatch-3.0.5"
           sources."semver-7.3.4"
           sources."tmp-0.2.1"
-          sources."yargs-17.5.1"
+          (sources."yargs-17.6.0" // {
+            dependencies = [
+              sources."cliui-8.0.1"
+            ];
+          })
           sources."yargs-parser-21.0.1"
         ];
       })
@@ -117385,7 +117522,7 @@ in
           sources."builtins-5.0.1"
           sources."hosted-git-info-5.1.0"
           sources."lru-cache-7.14.0"
-          sources."npm-package-arg-9.1.0"
+          sources."npm-package-arg-9.1.2"
           sources."validate-npm-package-name-4.0.0"
         ];
       })
@@ -117400,7 +117537,7 @@ in
       sources."path-parse-1.0.7"
       sources."path-type-4.0.0"
       sources."picomatch-2.3.1"
-      sources."pify-4.0.1"
+      sources."pify-5.0.0"
       sources."pirates-4.0.5"
       sources."pkg-dir-4.2.0"
       sources."proc-log-2.0.1"
@@ -117465,7 +117602,7 @@ in
       sources."rxjs-7.5.7"
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."set-blocking-2.0.0"
       sources."shallow-clone-3.0.1"
       sources."shebang-command-2.0.0"
@@ -117473,7 +117610,7 @@ in
       sources."signal-exit-3.0.7"
       sources."slash-3.0.0"
       sources."smart-buffer-4.2.0"
-      sources."socks-2.7.0"
+      sources."socks-2.7.1"
       sources."socks-proxy-agent-7.0.0"
       sources."sort-keys-2.0.0"
       sources."source-map-0.6.1"
@@ -117516,7 +117653,7 @@ in
       sources."typedarray-0.0.6"
       sources."typedarray-to-buffer-3.1.5"
       sources."typescript-4.8.4"
-      sources."uglify-js-3.17.2"
+      sources."uglify-js-3.17.3"
       sources."unique-filename-2.0.1"
       sources."unique-slug-3.0.0"
       sources."universal-user-agent-6.0.0"
@@ -117537,21 +117674,12 @@ in
       sources."wrap-ansi-7.0.0"
       sources."wrappy-1.0.2"
       sources."write-file-atomic-2.4.3"
-      (sources."write-json-file-4.3.0" // {
+      (sources."write-json-file-3.2.0" // {
         dependencies = [
-          sources."detect-indent-6.1.0"
-          sources."is-plain-obj-2.1.0"
-          sources."make-dir-3.1.0"
-          sources."semver-6.3.0"
-          sources."sort-keys-4.2.0"
-          sources."write-file-atomic-3.0.3"
-        ];
-      })
-      (sources."write-pkg-4.0.0" // {
-        dependencies = [
-          sources."write-json-file-3.2.0"
+          sources."pify-4.0.1"
         ];
       })
+      sources."write-pkg-4.0.0"
       sources."xtend-4.0.2"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
@@ -118005,7 +118133,7 @@ in
       sources."binary-extensions-1.13.1"
       sources."bindings-1.5.0"
       sources."blob-0.0.5"
-      sources."body-parser-1.20.0"
+      sources."body-parser-1.20.1"
       sources."braces-1.8.5"
       sources."bufferutil-4.0.6"
       sources."bytes-3.1.2"
@@ -118084,6 +118212,8 @@ in
       sources."expand-range-1.8.2"
       (sources."express-4.18.1" // {
         dependencies = [
+          sources."body-parser-1.20.0"
+          sources."qs-6.10.3"
           sources."safe-buffer-5.2.1"
         ];
       })
@@ -118267,7 +118397,7 @@ in
       sources."proxy-addr-2.0.7"
       sources."psl-1.9.0"
       sources."punycode-2.1.1"
-      sources."qs-6.10.3"
+      sources."qs-6.11.0"
       (sources."randomatic-3.1.1" // {
         dependencies = [
           sources."is-number-4.0.0"
@@ -118512,7 +118642,7 @@ in
       sources."@types/commander-2.12.2"
       sources."@types/diff-3.5.5"
       sources."@types/get-stdin-5.0.1"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."commander-2.20.3"
       sources."diff-3.5.0"
       sources."get-stdin-5.0.1"
@@ -118703,7 +118833,7 @@ in
       sources."semver-5.7.1"
       sources."set-blocking-2.0.0"
       sources."showdown-1.9.1"
-      (sources."smartdc-auth-2.5.8" // {
+      (sources."smartdc-auth-2.5.9" // {
         dependencies = [
           sources."bunyan-1.8.12"
           sources."clone-0.1.5"
@@ -118712,16 +118842,9 @@ in
               sources."assert-plus-0.1.5"
             ];
           })
-          sources."extsprintf-1.0.0"
-          sources."json-schema-0.2.2"
-          (sources."jsprim-0.3.0" // {
-            dependencies = [
-              sources."verror-1.3.3"
-            ];
-          })
           sources."once-1.3.0"
-          sources."vasync-1.4.3"
-          sources."verror-1.1.0"
+          sources."vasync-2.2.1"
+          sources."verror-1.10.0"
         ];
       })
       sources."sshpk-1.17.0"
@@ -118791,7 +118914,7 @@ in
       sources."argparse-2.0.1"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-2.0.1"
-      sources."commander-9.4.0"
+      sources."commander-9.4.1"
       sources."deep-extend-0.6.0"
       sources."entities-3.0.1"
       sources."fs.realpath-1.0.0"
@@ -118916,7 +119039,7 @@ in
       sources."link-check-5.2.0"
       sources."lodash-4.17.21"
       sources."markdown-link-extractor-3.1.0"
-      sources."marked-4.1.0"
+      sources."marked-4.1.1"
       sources."ms-2.1.3"
       sources."needle-3.1.0"
       sources."nth-check-2.1.1"
@@ -119202,7 +119325,7 @@ in
       })
       sources."cache-base-1.0.1"
       sources."call-bind-1.0.2"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."case-sensitive-paths-webpack-plugin-2.1.2"
       sources."chalk-2.4.2"
       sources."chart.js-2.9.4"
@@ -119289,7 +119412,7 @@ in
       sources."domain-browser-1.2.0"
       sources."duplexify-3.7.1"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -119320,7 +119443,7 @@ in
       sources."errno-0.1.8"
       sources."error-ex-1.3.2"
       sources."error-stack-parser-2.1.4"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-array-method-boxes-properly-1.0.0"
       sources."es-to-primitive-1.2.1"
       sources."escalade-3.1.1"
@@ -119534,7 +119657,7 @@ in
       sources."locate-path-3.0.0"
       sources."lodash-4.17.21"
       sources."log-update-2.3.0"
-      sources."log4js-6.6.1"
+      sources."log4js-6.7.0"
       sources."loose-envify-1.4.0"
       sources."lru-cache-5.1.1"
       sources."make-dir-1.3.0"
@@ -119942,7 +120065,7 @@ in
         ];
       })
       sources."upath-1.2.0"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."uri-js-4.4.1"
       sources."urix-0.1.0"
       (sources."url-0.11.0" // {
@@ -120387,13 +120510,13 @@ in
   "@mermaid-js/mermaid-cli" = nodeEnv.buildNodePackage {
     name = "_at_mermaid-js_slash_mermaid-cli";
     packageName = "@mermaid-js/mermaid-cli";
-    version = "9.1.6";
+    version = "9.1.7";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@mermaid-js/mermaid-cli/-/mermaid-cli-9.1.6.tgz";
-      sha512 = "pE81Zfvni1qMAhqW4RkpwJ2L7Y5OFs+svSWq6cW5IQHWR8Dd8BBZL4p93GgqiVoLPTJ2heGVBKZFsgA2RPR6ng==";
+      url = "https://registry.npmjs.org/@mermaid-js/mermaid-cli/-/mermaid-cli-9.1.7.tgz";
+      sha512 = "m7sAmOHhG6bmY1IEy+rSvyrQrKA/XIM6PFWP7w+3uW/C+uanPrIt0ieLL2NJfvfzLMkvEin1ClYE+pA6Y7Jwnw==";
     };
     dependencies = [
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/yauzl-2.10.0"
       sources."agent-base-6.0.2"
       sources."balanced-match-1.0.2"
@@ -120403,13 +120526,13 @@ in
       sources."buffer-5.7.1"
       sources."buffer-crc32-0.2.13"
       sources."bufferutil-4.0.6"
-      sources."chalk-5.0.1"
+      sources."chalk-5.1.0"
       sources."chownr-1.1.4"
-      sources."commander-9.4.0"
+      sources."commander-9.4.1"
       sources."concat-map-0.0.1"
       sources."cross-fetch-3.1.5"
       sources."debug-4.3.4"
-      sources."devtools-protocol-0.0.1019158"
+      sources."devtools-protocol-0.0.1045489"
       sources."encoding-0.1.13"
       sources."end-of-stream-1.4.4"
       sources."extract-zip-2.0.1"
@@ -120434,7 +120557,8 @@ in
       sources."progress-2.0.3"
       sources."proxy-from-env-1.1.0"
       sources."pump-3.0.0"
-      sources."puppeteer-16.2.0"
+      sources."puppeteer-18.2.1"
+      sources."puppeteer-core-18.2.1"
       sources."readable-stream-3.6.0"
       sources."rimraf-3.0.2"
       sources."safe-buffer-5.2.1"
@@ -120450,7 +120574,7 @@ in
       sources."webidl-conversions-3.0.1"
       sources."whatwg-url-5.0.0"
       sources."wrappy-1.0.2"
-      sources."ws-8.8.1"
+      sources."ws-8.9.0"
       sources."yauzl-2.10.0"
     ];
     buildInputs = globalBuildInputs;
@@ -120629,7 +120753,7 @@ in
       sources."qs-6.11.0"
       sources."readable-stream-3.6.0"
       sources."safe-buffer-5.2.1"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."side-channel-1.0.4"
       sources."slash-3.0.0"
       sources."sprintf-js-1.0.3"
@@ -120757,11 +120881,11 @@ in
       sources."@jest/environment-27.5.1"
       sources."@jest/fake-timers-27.5.1"
       sources."@jest/types-27.5.1"
-      sources."@ledgerhq/devices-7.0.1"
-      sources."@ledgerhq/errors-6.10.2"
-      sources."@ledgerhq/hw-transport-6.27.4"
-      sources."@ledgerhq/hw-transport-node-hid-6.27.4"
-      sources."@ledgerhq/hw-transport-node-hid-noevents-6.27.4"
+      sources."@ledgerhq/devices-7.0.3"
+      sources."@ledgerhq/errors-6.11.1"
+      sources."@ledgerhq/hw-transport-6.27.6"
+      sources."@ledgerhq/hw-transport-node-hid-6.27.6"
+      sources."@ledgerhq/hw-transport-node-hid-noevents-6.27.6"
       (sources."@ledgerhq/hw-transport-u2f-5.36.0-deprecated" // {
         dependencies = [
           sources."@ledgerhq/devices-5.51.1"
@@ -120786,7 +120910,7 @@ in
           sources."@ledgerhq/logs-5.50.0"
         ];
       })
-      sources."@ledgerhq/logs-6.10.0"
+      sources."@ledgerhq/logs-6.10.1"
       sources."@segment/loosely-validate-event-2.0.0"
       sources."@sindresorhus/is-0.14.0"
       sources."@sinonjs/commons-1.8.3"
@@ -120795,7 +120919,7 @@ in
       sources."@types/istanbul-lib-coverage-2.0.4"
       sources."@types/istanbul-lib-report-3.0.0"
       sources."@types/istanbul-reports-3.0.1"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/stack-utils-2.0.1"
       sources."@types/yargs-16.0.4"
       sources."@types/yargs-parser-21.0.0"
@@ -121043,7 +121167,7 @@ in
       sources."rxjs-6.6.7"
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       (sources."semver-diff-3.1.1" // {
         dependencies = [
           sources."semver-6.3.0"
@@ -121155,7 +121279,7 @@ in
       sources."readable-stream-3.6.0"
       sources."safe-buffer-5.2.1"
       sources."safe-stable-stringify-2.4.0"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."simple-swizzle-0.2.2"
       sources."stack-trace-0.0.10"
       sources."string_decoder-1.3.0"
@@ -121201,10 +121325,10 @@ in
   node-gyp = nodeEnv.buildNodePackage {
     name = "node-gyp";
     packageName = "node-gyp";
-    version = "9.1.0";
+    version = "9.2.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/node-gyp/-/node-gyp-9.1.0.tgz";
-      sha512 = "HkmN0ZpQJU7FLbJauJTHkHlSVAXlNGDAzH/VYFZGDOnFyn/Na3GlNJfkudmufOdS6/jNFhy88ObzL7ERz9es1g==";
+      url = "https://registry.npmjs.org/node-gyp/-/node-gyp-9.2.0.tgz";
+      sha512 = "/+/YxGfIJOh/fnMsr4Ep0v6oOIjnO1BgLd2dcDspBX1spTkQU7xSIox5RdRE/2/Uq3ZwK8Z5swRIbMUmPlslmg==";
     };
     dependencies = [
       sources."@gar/promisify-1.1.3"
@@ -121272,7 +121396,7 @@ in
       sources."mkdirp-1.0.4"
       sources."ms-2.1.2"
       sources."negotiator-0.6.3"
-      sources."nopt-5.0.0"
+      sources."nopt-6.0.0"
       sources."npmlog-6.0.2"
       sources."once-1.4.0"
       sources."p-map-4.0.0"
@@ -121284,7 +121408,7 @@ in
       sources."rimraf-3.0.2"
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
-      (sources."semver-7.3.7" // {
+      (sources."semver-7.3.8" // {
         dependencies = [
           sources."lru-cache-6.0.0"
         ];
@@ -121292,7 +121416,7 @@ in
       sources."set-blocking-2.0.0"
       sources."signal-exit-3.0.7"
       sources."smart-buffer-4.2.0"
-      sources."socks-2.7.0"
+      sources."socks-2.7.1"
       sources."socks-proxy-agent-7.0.0"
       sources."ssri-9.0.1"
       sources."string-width-4.2.3"
@@ -121765,7 +121889,7 @@ in
       sources."@types/cacheable-request-6.0.2"
       sources."@types/http-cache-semantics-4.0.1"
       sources."@types/keyv-3.1.4"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/responselike-1.0.0"
       sources."abbrev-1.1.1"
       sources."accepts-1.3.8"
@@ -122274,7 +122398,7 @@ in
       sources."rimraf-2.2.8"
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."set-blocking-2.0.0"
       sources."signal-exit-3.0.7"
       sources."slasp-0.0.4"
@@ -122425,7 +122549,7 @@ in
       sources."@types/http-cache-semantics-4.0.1"
       sources."@types/keyv-3.1.4"
       sources."@types/minimist-1.2.2"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/normalize-package-data-2.4.1"
       sources."@types/parse-json-4.0.0"
       sources."@types/responselike-3.0.0"
@@ -122842,7 +122966,7 @@ in
       sources."rxjs-6.6.7"
       sources."safer-buffer-2.1.2"
       sources."scoped-regex-2.1.0"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       (sources."semver-diff-3.1.1" // {
         dependencies = [
           sources."semver-6.3.0"
@@ -122937,10 +123061,10 @@ in
   npm-check-updates = nodeEnv.buildNodePackage {
     name = "npm-check-updates";
     packageName = "npm-check-updates";
-    version = "16.3.2";
+    version = "16.3.8";
     src = fetchurl {
-      url = "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-16.3.2.tgz";
-      sha512 = "ebxWtGPu8yHmT+MYB/UvluemkpV81nFOZEMOtlw7/YygyyZq0eYFbkDy8/M5k3brbhtWjIrnBNXV4bPLoVWiOg==";
+      url = "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-16.3.8.tgz";
+      sha512 = "2CUeCWEs+arWQUJH2IEkiZU/Ak2fLBqGkMyM5JDkfnGhz1VHNe3yyGiXD+0JeVmjbXTEpgZ0t6C9VK52atGuAw==";
     };
     dependencies = [
       sources."@gar/promisify-1.1.3"
@@ -122992,7 +123116,7 @@ in
       sources."cacheable-lookup-7.0.0"
       sources."cacheable-request-10.2.1"
       sources."camelcase-7.0.0"
-      sources."chalk-5.0.1"
+      sources."chalk-5.1.0"
       sources."chownr-2.0.0"
       sources."ci-info-3.4.0"
       sources."clean-stack-2.2.0"
@@ -123000,7 +123124,7 @@ in
       sources."cli-table-0.3.11"
       sources."color-support-1.1.3"
       sources."colors-1.0.3"
-      sources."commander-9.4.0"
+      sources."commander-9.4.1"
       sources."concat-map-0.0.1"
       (sources."config-chain-1.1.13" // {
         dependencies = [
@@ -123037,7 +123161,7 @@ in
       sources."fastq-1.13.0"
       sources."fill-range-7.0.1"
       sources."find-up-5.0.0"
-      sources."form-data-encoder-2.1.2"
+      sources."form-data-encoder-2.1.3"
       sources."fp-and-or-0.1.3"
       sources."fs-minipass-2.1.0"
       sources."fs.realpath-1.0.0"
@@ -123122,14 +123246,14 @@ in
       sources."mkdirp-1.0.4"
       sources."ms-2.1.2"
       sources."negotiator-0.6.3"
-      sources."node-gyp-9.1.0"
-      sources."nopt-5.0.0"
+      sources."node-gyp-9.2.0"
+      sources."nopt-6.0.0"
       sources."normalize-package-data-4.0.1"
       sources."normalize-url-7.2.0"
       sources."npm-bundled-1.1.2"
       sources."npm-install-checks-5.0.0"
       sources."npm-normalize-package-bin-1.0.1"
-      sources."npm-package-arg-9.1.0"
+      sources."npm-package-arg-9.1.2"
       (sources."npm-packlist-5.1.3" // {
         dependencies = [
           sources."glob-8.0.3"
@@ -123191,7 +123315,7 @@ in
       sources."run-parallel-1.2.0"
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
-      (sources."semver-7.3.7" // {
+      (sources."semver-7.3.8" // {
         dependencies = [
           sources."lru-cache-6.0.0"
         ];
@@ -123203,7 +123327,7 @@ in
       sources."sisteransi-1.0.5"
       sources."slash-3.0.0"
       sources."smart-buffer-4.2.0"
-      sources."socks-2.7.0"
+      sources."socks-2.7.1"
       sources."socks-proxy-agent-7.0.0"
       sources."source-map-0.6.1"
       sources."source-map-support-0.5.21"
@@ -123251,7 +123375,7 @@ in
       sources."write-file-atomic-3.0.3"
       sources."xdg-basedir-5.1.0"
       sources."yallist-4.0.0"
-      sources."yaml-2.1.1"
+      sources."yaml-2.1.3"
       sources."yocto-queue-0.1.0"
     ];
     buildInputs = globalBuildInputs;
@@ -123414,9 +123538,9 @@ in
       sources."@apidevtools/openapi-schemas-2.1.0"
       sources."@apidevtools/swagger-methods-3.0.2"
       sources."@apidevtools/swagger-parser-10.1.0"
-      sources."@asyncapi/specs-2.14.0"
-      sources."@esbuild/android-arm-0.15.9"
-      sources."@esbuild/linux-loong64-0.15.9"
+      sources."@asyncapi/specs-3.2.1"
+      sources."@esbuild/android-arm-0.15.10"
+      sources."@esbuild/linux-loong64-0.15.10"
       sources."@exodus/schemasafe-1.0.0-rc.7"
       sources."@ibm-cloud/openapi-ruleset-0.37.3"
       sources."@jsdevtools/ono-7.1.3"
@@ -123443,7 +123567,6 @@ in
           sources."@stoplight/types-12.5.0"
         ];
       })
-      sources."@stoplight/lifecycle-2.3.2"
       sources."@stoplight/ordered-object-literal-1.0.4"
       sources."@stoplight/path-1.3.2"
       (sources."@stoplight/spectral-cli-6.5.1" // {
@@ -123453,12 +123576,12 @@ in
           sources."fast-glob-3.2.7"
         ];
       })
-      (sources."@stoplight/spectral-core-1.14.1" // {
+      (sources."@stoplight/spectral-core-1.14.2" // {
         dependencies = [
           sources."@stoplight/types-13.6.0"
         ];
       })
-      sources."@stoplight/spectral-formats-1.2.0"
+      sources."@stoplight/spectral-formats-1.4.0"
       sources."@stoplight/spectral-functions-1.7.1"
       sources."@stoplight/spectral-parsers-1.0.2"
       sources."@stoplight/spectral-ref-resolver-1.0.1"
@@ -123468,7 +123591,7 @@ in
         ];
       })
       sources."@stoplight/spectral-ruleset-migrator-1.7.4"
-      sources."@stoplight/spectral-rulesets-1.13.0"
+      sources."@stoplight/spectral-rulesets-1.14.1"
       (sources."@stoplight/spectral-runtime-1.1.2" // {
         dependencies = [
           sources."@stoplight/types-12.5.0"
@@ -123481,7 +123604,7 @@ in
       sources."@types/es-aggregate-error-1.0.2"
       sources."@types/estree-0.0.39"
       sources."@types/json-schema-7.0.11"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/urijs-1.19.19"
       sources."abort-controller-3.0.0"
       sources."acorn-8.8.0"
@@ -123553,31 +123676,31 @@ in
       sources."emoji-regex-8.0.0"
       sources."encoding-0.1.13"
       sources."eol-0.9.1"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-aggregate-error-1.0.8"
       sources."es-to-primitive-1.2.1"
       sources."es6-promise-3.3.1"
-      sources."esbuild-0.15.9"
-      sources."esbuild-android-64-0.15.9"
-      sources."esbuild-android-arm64-0.15.9"
-      sources."esbuild-darwin-64-0.15.9"
-      sources."esbuild-darwin-arm64-0.15.9"
-      sources."esbuild-freebsd-64-0.15.9"
-      sources."esbuild-freebsd-arm64-0.15.9"
-      sources."esbuild-linux-32-0.15.9"
-      sources."esbuild-linux-64-0.15.9"
-      sources."esbuild-linux-arm-0.15.9"
-      sources."esbuild-linux-arm64-0.15.9"
-      sources."esbuild-linux-mips64le-0.15.9"
-      sources."esbuild-linux-ppc64le-0.15.9"
-      sources."esbuild-linux-riscv64-0.15.9"
-      sources."esbuild-linux-s390x-0.15.9"
-      sources."esbuild-netbsd-64-0.15.9"
-      sources."esbuild-openbsd-64-0.15.9"
-      sources."esbuild-sunos-64-0.15.9"
-      sources."esbuild-windows-32-0.15.9"
-      sources."esbuild-windows-64-0.15.9"
-      sources."esbuild-windows-arm64-0.15.9"
+      sources."esbuild-0.15.10"
+      sources."esbuild-android-64-0.15.10"
+      sources."esbuild-android-arm64-0.15.10"
+      sources."esbuild-darwin-64-0.15.10"
+      sources."esbuild-darwin-arm64-0.15.10"
+      sources."esbuild-freebsd-64-0.15.10"
+      sources."esbuild-freebsd-arm64-0.15.10"
+      sources."esbuild-linux-32-0.15.10"
+      sources."esbuild-linux-64-0.15.10"
+      sources."esbuild-linux-arm-0.15.10"
+      sources."esbuild-linux-arm64-0.15.10"
+      sources."esbuild-linux-mips64le-0.15.10"
+      sources."esbuild-linux-ppc64le-0.15.10"
+      sources."esbuild-linux-riscv64-0.15.10"
+      sources."esbuild-linux-s390x-0.15.10"
+      sources."esbuild-netbsd-64-0.15.10"
+      sources."esbuild-openbsd-64-0.15.10"
+      sources."esbuild-sunos-64-0.15.10"
+      sources."esbuild-windows-32-0.15.10"
+      sources."esbuild-windows-64-0.15.10"
+      sources."esbuild-windows-arm64-0.15.10"
       sources."escalade-3.1.1"
       sources."escape-string-regexp-1.0.5"
       sources."escodegen-1.14.3"
@@ -123755,7 +123878,7 @@ in
       sources."onetime-5.1.2"
       sources."ono-4.0.11"
       sources."openapi-types-12.0.2"
-      sources."openapi3-ts-3.0.2"
+      sources."openapi3-ts-3.1.0"
       sources."optionator-0.8.3"
       sources."ora-5.4.1"
       sources."os-tmpdir-1.0.2"
@@ -123818,7 +123941,7 @@ in
       sources."simple-eval-1.0.0"
       sources."slash-3.0.0"
       sources."smart-buffer-4.2.0"
-      (sources."socks-2.7.0" // {
+      (sources."socks-2.7.1" // {
         dependencies = [
           sources."ip-2.0.0"
         ];
@@ -123875,14 +123998,13 @@ in
       sources."whatwg-url-5.0.0"
       sources."which-2.0.2"
       sources."which-boxed-primitive-1.0.2"
-      sources."wolfy87-eventemitter-5.2.9"
       sources."word-wrap-1.2.3"
       sources."wrap-ansi-7.0.0"
       sources."wrappy-1.0.2"
       sources."xregexp-2.0.0"
       sources."y18n-5.0.8"
       sources."yallist-3.1.1"
-      sources."yaml-2.1.1"
+      sources."yaml-2.1.3"
       sources."yaml-js-0.2.3"
       sources."yargs-17.3.1"
       sources."yargs-parser-21.1.1"
@@ -124166,7 +124288,7 @@ in
       sources."caller-path-2.0.0"
       sources."callsites-2.0.0"
       sources."caniuse-api-3.0.0"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."caseless-0.12.0"
       sources."chalk-2.4.2"
       sources."chokidar-2.1.8"
@@ -124192,7 +124314,7 @@ in
       sources."convert-source-map-1.8.0"
       sources."copy-descriptor-0.1.1"
       sources."core-js-2.6.12"
-      sources."core-js-compat-3.25.3"
+      sources."core-js-compat-3.25.5"
       sources."core-util-is-1.0.3"
       sources."cosmiconfig-5.2.1"
       (sources."create-ecdh-4.0.4" // {
@@ -124299,7 +124421,7 @@ in
       sources."duplexer2-0.1.4"
       sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -124309,7 +124431,7 @@ in
       sources."entities-2.2.0"
       sources."envinfo-7.8.1"
       sources."error-ex-1.3.2"
-      (sources."es-abstract-1.20.3" // {
+      (sources."es-abstract-1.20.4" // {
         dependencies = [
           sources."object-inspect-1.12.2"
         ];
@@ -124412,7 +124534,7 @@ in
           sources."acorn-8.8.0"
           sources."posthtml-0.15.2"
           sources."posthtml-parser-0.7.2"
-          sources."terser-5.15.0"
+          sources."terser-5.15.1"
         ];
       })
       (sources."htmlparser2-6.1.0" // {
@@ -124890,7 +125012,7 @@ in
         ];
       })
       sources."upath-1.2.0"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."uri-js-4.4.1"
       sources."urix-0.1.0"
       (sources."url-0.11.0" // {
@@ -125078,7 +125200,7 @@ in
       sources."buffer-from-1.1.2"
       sources."callsites-3.1.0"
       sources."caniuse-api-3.0.0"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."caseless-0.12.0"
       (sources."chalk-4.1.2" // {
         dependencies = [
@@ -125127,7 +125249,7 @@ in
       sources."dotenv-7.0.0"
       sources."dotenv-expand-5.1.0"
       sources."ecc-jsbn-0.1.2"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       sources."entities-3.0.1"
       sources."error-ex-1.3.2"
       sources."escalade-3.1.1"
@@ -125215,7 +125337,7 @@ in
       sources."oauth-sign-0.9.0"
       sources."once-1.4.0"
       sources."optionator-0.8.3"
-      sources."ordered-binary-1.3.0"
+      sources."ordered-binary-1.4.0"
       sources."parent-module-1.0.1"
       sources."parse-json-5.2.0"
       sources."parse5-5.1.0"
@@ -125224,7 +125346,7 @@ in
       sources."performance-now-2.1.0"
       sources."picocolors-1.0.0"
       sources."pn-1.1.0"
-      sources."postcss-8.4.16"
+      sources."postcss-8.4.17"
       sources."postcss-calc-8.2.4"
       sources."postcss-colormin-5.3.0"
       sources."postcss-convert-values-5.1.2"
@@ -125290,7 +125412,7 @@ in
       sources."svgo-2.8.0"
       sources."symbol-tree-3.2.4"
       sources."term-size-2.2.1"
-      (sources."terser-5.15.0" // {
+      (sources."terser-5.15.1" // {
         dependencies = [
           sources."commander-2.20.3"
         ];
@@ -125312,7 +125434,7 @@ in
         ];
       })
       sources."uniq-1.0.1"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."uri-js-4.4.1"
       sources."util-deprecate-1.0.2"
       sources."utility-types-3.10.0"
@@ -125575,7 +125697,7 @@ in
       sources."serve-static-1.15.0"
       (sources."service-runner-2.9.0" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
           sources."yargs-14.2.3"
         ];
       })
@@ -125597,7 +125719,7 @@ in
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
       sources."type-is-1.6.18"
-      sources."uglify-js-3.17.2"
+      sources."uglify-js-3.17.3"
       sources."unix-dgram-2.0.4"
       sources."unpipe-1.0.0"
       sources."uri-js-4.4.1"
@@ -126072,7 +126194,7 @@ in
       sources."blob-0.0.5"
       sources."bn.js-4.12.0"
       sources."bncode-0.5.3"
-      sources."body-parser-1.20.0"
+      sources."body-parser-1.20.1"
       sources."brace-expansion-1.1.11"
       sources."buffer-5.7.1"
       sources."buffer-alloc-1.2.0"
@@ -126151,6 +126273,8 @@ in
       sources."events-3.3.0"
       (sources."express-4.18.1" // {
         dependencies = [
+          sources."body-parser-1.20.0"
+          sources."qs-6.10.3"
           sources."safe-buffer-5.2.1"
         ];
       })
@@ -126290,7 +126414,7 @@ in
       sources."psl-1.9.0"
       sources."pump-3.0.0"
       sources."punycode-2.1.1"
-      sources."qs-6.10.3"
+      sources."qs-6.11.0"
       sources."queue-microtask-1.2.3"
       sources."queue-tick-1.0.1"
       sources."random-access-file-2.2.1"
@@ -126559,7 +126683,7 @@ in
       sources."run-parallel-1.2.0"
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."set-blocking-2.0.0"
       sources."shellwords-0.1.1"
       sources."signal-exit-3.0.7"
@@ -126795,7 +126919,7 @@ in
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
       sources."sax-1.2.4"
-      (sources."semver-7.3.7" // {
+      (sources."semver-7.3.8" // {
         dependencies = [
           sources."lru-cache-6.0.0"
           sources."yallist-4.0.0"
@@ -126805,7 +126929,7 @@ in
       sources."shimmer-1.2.1"
       sources."signal-exit-3.0.7"
       sources."smart-buffer-4.2.0"
-      (sources."socks-2.7.0" // {
+      (sources."socks-2.7.1" // {
         dependencies = [
           sources."ip-2.0.0"
         ];
@@ -126855,10 +126979,10 @@ in
   pnpm = nodeEnv.buildNodePackage {
     name = "pnpm";
     packageName = "pnpm";
-    version = "7.12.2";
+    version = "7.13.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/pnpm/-/pnpm-7.12.2.tgz";
-      sha512 = "8QvnKANKN+YZXDmVYGI7zRJysdKldZI+w3AYnxu9IwtnLv1x6WuzrJr0nxMcTeuUAT908RjDqK+/6KJB9wNqxA==";
+      url = "https://registry.npmjs.org/pnpm/-/pnpm-7.13.2.tgz";
+      sha512 = "lOQRBcCWycLK1PB9KptqTd6iyiH7m4GRuS4G2j4b74yDx/XvRXtP/weYz8e0/ia7HX1pMF1vJCF48ssklq0TJQ==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -126901,10 +127025,10 @@ in
   postcss = nodeEnv.buildNodePackage {
     name = "postcss";
     packageName = "postcss";
-    version = "8.4.16";
+    version = "8.4.17";
     src = fetchurl {
-      url = "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz";
-      sha512 = "ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==";
+      url = "https://registry.npmjs.org/postcss/-/postcss-8.4.17.tgz";
+      sha512 = "UNxNOLQydcOFi41yHNMcKRZ39NeXlr8AxGuZJsdub8vIb12fHzcq37DTU/QtbI6WLxNg2gF9Z+8qtRwTj1UI1Q==";
     };
     dependencies = [
       sources."nanoid-3.3.4"
@@ -126937,50 +127061,50 @@ in
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
-      sources."@swc/core-1.3.3"
-      (sources."@swc/core-android-arm-eabi-1.3.3" // {
+      sources."@swc/core-1.3.5"
+      (sources."@swc/core-android-arm-eabi-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.122"
         ];
       })
-      (sources."@swc/core-android-arm64-1.3.3" // {
+      (sources."@swc/core-android-arm64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-darwin-arm64-1.3.3"
-      sources."@swc/core-darwin-x64-1.3.3"
-      (sources."@swc/core-freebsd-x64-1.3.3" // {
+      sources."@swc/core-darwin-arm64-1.3.5"
+      sources."@swc/core-darwin-x64-1.3.5"
+      (sources."@swc/core-freebsd-x64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-linux-arm-gnueabihf-1.3.3" // {
+      (sources."@swc/core-linux-arm-gnueabihf-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-linux-arm64-gnu-1.3.3"
-      sources."@swc/core-linux-arm64-musl-1.3.3"
-      sources."@swc/core-linux-x64-gnu-1.3.3"
-      sources."@swc/core-linux-x64-musl-1.3.3"
-      (sources."@swc/core-win32-arm64-msvc-1.3.3" // {
+      sources."@swc/core-linux-arm64-gnu-1.3.5"
+      sources."@swc/core-linux-arm64-musl-1.3.5"
+      sources."@swc/core-linux-x64-gnu-1.3.5"
+      sources."@swc/core-linux-x64-musl-1.3.5"
+      (sources."@swc/core-win32-arm64-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-win32-ia32-msvc-1.3.3" // {
+      (sources."@swc/core-win32-ia32-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-win32-x64-msvc-1.3.3"
-      sources."@swc/wasm-1.3.3"
+      sources."@swc/core-win32-x64-msvc-1.3.5"
+      sources."@swc/wasm-1.3.5"
       sources."@tsconfig/node10-1.0.9"
       sources."@tsconfig/node12-1.0.11"
       sources."@tsconfig/node14-1.0.3"
       sources."@tsconfig/node16-1.0.3"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."acorn-8.8.0"
       sources."acorn-walk-8.2.0"
       sources."ansi-regex-5.0.1"
@@ -126990,7 +127114,7 @@ in
       sources."binary-extensions-2.2.0"
       sources."braces-3.0.2"
       sources."chokidar-3.5.3"
-      sources."cliui-7.0.4"
+      sources."cliui-8.0.1"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
       sources."create-require-1.1.1"
@@ -127026,7 +127150,7 @@ in
       sources."picocolors-1.0.0"
       sources."picomatch-2.3.1"
       sources."pify-2.3.0"
-      sources."postcss-8.4.16"
+      sources."postcss-8.4.17"
       sources."postcss-load-config-4.0.1"
       sources."postcss-reporter-7.0.5"
       sources."pretty-hrtime-1.0.3"
@@ -127048,8 +127172,8 @@ in
       sources."v8-compile-cache-lib-3.0.1"
       sources."wrap-ansi-7.0.0"
       sources."y18n-5.0.8"
-      sources."yaml-2.1.1"
-      sources."yargs-17.5.1"
+      sources."yaml-2.1.3"
+      sources."yargs-17.6.0"
       sources."yargs-parser-21.1.1"
       sources."yn-3.1.1"
     ];
@@ -127091,13 +127215,13 @@ in
       sources."minimist-1.2.6"
       sources."mkdirp-classic-0.5.3"
       sources."napi-build-utils-1.0.2"
-      sources."node-abi-3.25.0"
+      sources."node-abi-3.26.0"
       sources."once-1.4.0"
       sources."pump-3.0.0"
       sources."rc-1.2.8"
       sources."readable-stream-3.6.0"
       sources."safe-buffer-5.2.1"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."simple-concat-1.0.1"
       sources."simple-get-4.0.1"
       sources."string_decoder-1.3.0"
@@ -127270,7 +127394,7 @@ in
       sources."browserslist-4.21.4"
       sources."caching-transform-4.0.0"
       sources."camelcase-5.3.1"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."chalk-2.4.2"
       sources."clean-stack-2.2.0"
       sources."cliui-6.0.0"
@@ -127282,8 +127406,8 @@ in
       sources."cross-spawn-7.0.3"
       sources."debug-4.3.4"
       sources."decamelize-1.2.0"
-      sources."default-require-extensions-3.0.0"
-      sources."electron-to-chromium-1.4.266"
+      sources."default-require-extensions-3.0.1"
+      sources."electron-to-chromium-1.4.275"
       sources."emoji-regex-8.0.0"
       sources."es6-error-4.1.1"
       sources."escalade-3.1.1"
@@ -127372,7 +127496,7 @@ in
       sources."to-fast-properties-2.0.0"
       sources."type-fest-0.8.1"
       sources."typedarray-to-buffer-3.1.5"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."uuid-8.3.2"
       sources."vscode-jsonrpc-8.0.2"
       sources."vscode-languageserver-8.0.2"
@@ -127893,7 +128017,7 @@ in
       sources."side-channel-1.0.4"
       sources."sisteransi-1.0.5"
       sources."smart-buffer-4.2.0"
-      sources."socks-2.7.0"
+      sources."socks-2.7.1"
       sources."socks-proxy-agent-5.0.1"
       sources."strip-json-comments-2.0.1"
       sources."to-readable-stream-1.0.0"
@@ -127915,10 +128039,10 @@ in
   pyright = nodeEnv.buildNodePackage {
     name = "pyright";
     packageName = "pyright";
-    version = "1.1.273";
+    version = "1.1.274";
     src = fetchurl {
-      url = "https://registry.npmjs.org/pyright/-/pyright-1.1.273.tgz";
-      sha512 = "uhBqKtRnC1Rvgz7uKp13VEwIR/UuqUvlscOu/y6hQhDzpFrZi0Gft7TrSLIMdy7fRAf85dS1nduQmAIWXgl4AA==";
+      url = "https://registry.npmjs.org/pyright/-/pyright-1.1.274.tgz";
+      sha512 = "+MEiHktoAxlehWbBAF2vwJkJxV5tObbLK6vnc7u+iDBH06vuHqTqY33AV+YGNwfDEU35chw5zu7H3EpGROXsGQ==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -128179,7 +128303,7 @@ in
       sources."cycle-1.0.3"
       sources."deep-equal-2.0.5"
       sources."define-properties-1.1.4"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-get-iterator-1.1.2"
       sources."es-to-primitive-1.2.1"
       sources."escape-string-regexp-1.0.5"
@@ -128425,7 +128549,7 @@ in
       sources."@types/glob-7.2.0"
       sources."@types/json-schema-7.0.11"
       sources."@types/minimatch-5.1.2"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/parse-json-4.0.0"
       sources."@types/prop-types-15.7.5"
       sources."@types/q-1.5.5"
@@ -128622,7 +128746,7 @@ in
       sources."camel-case-3.0.0"
       sources."camelcase-5.3.1"
       sources."caniuse-api-3.0.0"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."case-sensitive-paths-webpack-plugin-2.4.0"
       sources."caw-2.0.1"
       sources."chalk-2.4.2"
@@ -128702,7 +128826,7 @@ in
       sources."copy-concurrently-1.0.5"
       sources."copy-descriptor-0.1.1"
       sources."core-js-2.6.12"
-      sources."core-js-compat-3.25.3"
+      sources."core-js-compat-3.25.5"
       sources."core-util-is-1.0.3"
       sources."cors-2.8.5"
       sources."cosmiconfig-6.0.0"
@@ -128841,7 +128965,7 @@ in
       sources."duplexify-3.7.1"
       sources."ee-first-1.1.1"
       sources."ejs-2.7.4"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -128872,7 +128996,7 @@ in
       sources."entities-2.2.0"
       sources."errno-0.1.8"
       sources."error-ex-1.3.2"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-array-method-boxes-properly-1.0.0"
       sources."es-to-primitive-1.2.1"
       sources."escalade-3.1.1"
@@ -129913,7 +130037,7 @@ in
         ];
       })
       sources."upath-1.2.0"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."update-check-1.5.2"
       sources."upper-case-1.1.3"
       sources."uri-js-4.4.1"
@@ -130153,7 +130277,7 @@ in
       sources."bufferutil-4.0.6"
       sources."canvas-2.10.1"
       sources."chownr-2.0.0"
-      sources."cliui-7.0.4"
+      sources."cliui-8.0.1"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
       sources."color-support-1.1.3"
@@ -130247,7 +130371,7 @@ in
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
       sources."saxes-5.0.1"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."set-blocking-2.0.0"
       sources."signal-exit-3.0.7"
       sources."simple-concat-1.0.1"
@@ -130280,7 +130404,7 @@ in
       sources."xmlchars-2.2.0"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
-      sources."yargs-17.5.1"
+      sources."yargs-17.6.0"
       sources."yargs-parser-21.1.1"
     ];
     buildInputs = globalBuildInputs;
@@ -130425,7 +130549,7 @@ in
       sources."call-me-maybe-1.0.1"
       sources."camelcase-6.3.0"
       sources."camelize-1.0.0"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       (sources."chalk-2.4.2" // {
         dependencies = [
           sources."has-flag-3.0.0"
@@ -130438,7 +130562,7 @@ in
       sources."cipher-base-1.0.4"
       sources."classnames-2.3.2"
       sources."cli-boxes-2.2.1"
-      sources."cliui-7.0.4"
+      sources."cliui-8.0.1"
       sources."clone-response-1.0.3"
       sources."clsx-1.2.1"
       sources."color-convert-1.9.3"
@@ -130448,7 +130572,7 @@ in
       sources."configstore-5.0.1"
       sources."console-browserify-1.2.0"
       sources."constants-browserify-1.0.0"
-      sources."core-js-3.25.3"
+      sources."core-js-3.25.5"
       sources."core-util-is-1.0.3"
       (sources."create-ecdh-4.0.4" // {
         dependencies = [
@@ -130476,7 +130600,7 @@ in
       sources."dompurify-2.4.0"
       sources."dot-prop-5.3.0"
       sources."duplexer3-0.1.5"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -130578,7 +130702,7 @@ in
         ];
       })
       sources."mark.js-8.11.1"
-      sources."marked-4.1.0"
+      sources."marked-4.1.1"
       sources."md5.js-1.3.5"
       sources."merge-stream-2.0.0"
       (sources."miller-rabin-4.0.1" // {
@@ -130683,7 +130807,7 @@ in
       sources."safer-buffer-2.1.2"
       sources."scheduler-0.20.2"
       sources."schema-utils-3.1.1"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       (sources."semver-diff-3.1.1" // {
         dependencies = [
           sources."semver-6.3.0"
@@ -130720,7 +130844,7 @@ in
       sources."supports-color-8.1.1"
       sources."swagger2openapi-7.0.8"
       sources."tapable-2.2.1"
-      sources."terser-5.15.0"
+      sources."terser-5.15.1"
       sources."terser-webpack-plugin-5.3.6"
       sources."timers-browserify-2.0.12"
       sources."to-arraybuffer-1.0.1"
@@ -130731,9 +130855,9 @@ in
       sources."tty-browserify-0.0.0"
       sources."type-fest-0.20.2"
       sources."typedarray-to-buffer-3.1.5"
-      sources."uglify-js-3.17.2"
+      sources."uglify-js-3.17.3"
       sources."unique-string-2.0.0"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       (sources."update-notifier-5.1.0" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
@@ -130784,7 +130908,7 @@ in
       sources."yallist-4.0.0"
       sources."yaml-1.10.2"
       sources."yaml-ast-parser-0.0.43"
-      sources."yargs-17.5.1"
+      sources."yargs-17.6.0"
       sources."yargs-parser-21.1.1"
     ];
     buildInputs = globalBuildInputs;
@@ -131193,7 +131317,7 @@ in
       })
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       (sources."semver-diff-3.1.1" // {
         dependencies = [
           sources."semver-6.3.0"
@@ -131328,7 +131452,7 @@ in
     dependencies = [
       sources."@eslint/eslintrc-1.3.2"
       sources."@hpcc-js/wasm-1.16.1"
-      sources."@humanwhocodes/config-array-0.10.5"
+      sources."@humanwhocodes/config-array-0.10.7"
       sources."@humanwhocodes/gitignore-to-minimatch-1.0.2"
       sources."@humanwhocodes/module-importer-1.0.1"
       sources."@humanwhocodes/object-schema-1.2.1"
@@ -131339,14 +131463,14 @@ in
       sources."@types/json-schema-7.0.11"
       sources."@types/node-14.17.34"
       sources."@types/vscode-1.66.0"
-      sources."@typescript-eslint/eslint-plugin-5.38.1"
-      sources."@typescript-eslint/parser-5.38.1"
-      sources."@typescript-eslint/scope-manager-5.38.1"
-      sources."@typescript-eslint/type-utils-5.38.1"
-      sources."@typescript-eslint/types-5.38.1"
-      sources."@typescript-eslint/typescript-estree-5.38.1"
-      sources."@typescript-eslint/utils-5.38.1"
-      sources."@typescript-eslint/visitor-keys-5.38.1"
+      sources."@typescript-eslint/eslint-plugin-5.39.0"
+      sources."@typescript-eslint/parser-5.39.0"
+      sources."@typescript-eslint/scope-manager-5.39.0"
+      sources."@typescript-eslint/type-utils-5.39.0"
+      sources."@typescript-eslint/types-5.39.0"
+      sources."@typescript-eslint/typescript-estree-5.39.0"
+      sources."@typescript-eslint/utils-5.39.0"
+      sources."@typescript-eslint/visitor-keys-5.39.0"
       sources."@vscode/test-electron-2.1.5"
       sources."acorn-8.8.0"
       sources."acorn-jsx-5.3.2"
@@ -131542,7 +131666,7 @@ in
       sources."is-number-7.0.0"
       sources."isarray-1.0.0"
       sources."isexe-2.0.0"
-      sources."js-sdsl-4.1.4"
+      sources."js-sdsl-4.1.5"
       sources."js-yaml-4.1.0"
       sources."json-schema-traverse-0.4.1"
       sources."json-stable-stringify-without-jsonify-1.0.1"
@@ -131572,7 +131696,7 @@ in
       sources."mute-stream-0.0.8"
       sources."napi-build-utils-1.0.2"
       sources."natural-compare-1.4.0"
-      sources."node-abi-3.25.0"
+      sources."node-abi-3.26.0"
       sources."node-addon-api-4.3.0"
       sources."nth-check-2.1.1"
       sources."object-inspect-1.12.2"
@@ -131620,7 +131744,7 @@ in
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
       sources."sax-1.2.4"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."setimmediate-1.0.5"
       sources."shebang-command-2.0.0"
       sources."shebang-regex-3.0.0"
@@ -131713,7 +131837,7 @@ in
       sources."escalade-3.1.1"
       sources."nanoid-3.3.4"
       sources."picocolors-1.0.0"
-      sources."postcss-8.4.16"
+      sources."postcss-8.4.17"
       sources."source-map-js-1.0.2"
       sources."strip-json-comments-3.1.1"
     ];
@@ -131863,10 +131987,10 @@ in
   semver = nodeEnv.buildNodePackage {
     name = "semver";
     packageName = "semver";
-    version = "7.3.7";
+    version = "7.3.8";
     src = fetchurl {
-      url = "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz";
-      sha512 = "QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==";
+      url = "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz";
+      sha512 = "NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==";
     };
     dependencies = [
       sources."lru-cache-6.0.0"
@@ -132043,8 +132167,8 @@ in
       sources."@types/cacheable-request-6.0.2"
       sources."@types/http-cache-semantics-4.0.1"
       sources."@types/keyv-3.1.4"
-      sources."@types/lodash-4.14.185"
-      sources."@types/node-18.7.23"
+      sources."@types/lodash-4.14.186"
+      sources."@types/node-18.8.3"
       sources."@types/responselike-1.0.0"
       sources."adm-zip-0.5.9"
       sources."agent-base-6.0.2"
@@ -132072,7 +132196,7 @@ in
       sources."asynckit-0.4.0"
       sources."at-least-node-1.0.0"
       sources."available-typed-arrays-1.0.5"
-      (sources."aws-sdk-2.1225.0" // {
+      (sources."aws-sdk-2.1231.0" // {
         dependencies = [
           sources."buffer-4.9.2"
           sources."ieee754-1.1.13"
@@ -132221,7 +132345,7 @@ in
         ];
       })
       sources."end-of-stream-1.4.4"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-to-primitive-1.2.1"
       sources."es5-ext-0.10.62"
       sources."es6-iterator-2.0.3"
@@ -132454,7 +132578,7 @@ in
       sources."safer-buffer-2.1.2"
       sources."sax-1.2.1"
       sources."seek-bzip-1.0.6"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."setimmediate-1.0.5"
       sources."shebang-command-1.2.0"
       sources."shebang-regex-1.0.0"
@@ -133194,10 +133318,10 @@ in
   snyk = nodeEnv.buildNodePackage {
     name = "snyk";
     packageName = "snyk";
-    version = "1.1013.0";
+    version = "1.1025.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/snyk/-/snyk-1.1013.0.tgz";
-      sha512 = "Vcf5dQpHJurQ9hLDqnZNbblQcF1MZ3R94c4ZluC1mebPy8TtGr+047wfC3E7mF+QJOmLUmpiVaZPJ1sh2zj/Hw==";
+      url = "https://registry.npmjs.org/snyk/-/snyk-1.1025.0.tgz";
+      sha512 = "IfEl2BbNjEHEtOImDa3xqKetUwjqSpRcRIsdAKD8cjnk0z2nbn8K6h6qlvnGuci68t2q62Zj3IHZt4S6A4k+gw==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -133220,7 +133344,7 @@ in
       sources."@socket.io/component-emitter-3.1.0"
       sources."@types/cookie-0.4.1"
       sources."@types/cors-2.8.12"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."accepts-1.3.8"
       sources."base64id-2.0.0"
       sources."bufferutil-4.0.6"
@@ -133330,13 +133454,13 @@ in
       sources."locate-path-6.0.0"
       (sources."log-symbols-5.1.0" // {
         dependencies = [
-          sources."chalk-5.0.1"
+          sources."chalk-5.1.0"
         ];
       })
       sources."log-update-5.0.1"
       sources."lru-cache-6.0.0"
       sources."map-obj-4.3.0"
-      sources."meow-10.1.4"
+      sources."meow-10.1.5"
       sources."mimic-fn-2.1.0"
       sources."min-indent-1.0.1"
       sources."minimist-options-4.1.0"
@@ -133345,7 +133469,7 @@ in
       sources."onetime-5.1.2"
       (sources."ora-6.1.2" // {
         dependencies = [
-          sources."chalk-5.0.1"
+          sources."chalk-5.1.0"
         ];
       })
       sources."p-limit-3.1.0"
@@ -133361,7 +133485,7 @@ in
       sources."round-to-6.0.0"
       sources."safe-buffer-5.2.1"
       sources."sax-1.2.4"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."signal-exit-3.0.7"
       (sources."slice-ansi-5.0.0" // {
         dependencies = [
@@ -133416,16 +133540,16 @@ in
   sql-formatter = nodeEnv.buildNodePackage {
     name = "sql-formatter";
     packageName = "sql-formatter";
-    version = "10.7.2";
+    version = "11.0.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/sql-formatter/-/sql-formatter-10.7.2.tgz";
-      sha512 = "YspJXMr2rKMGZY50zYRBs2nCtEO/AKDrmQOxmV2CrGEOFSXUhY3YbsOUe6lX0T/7xbBs4pAYv4UObmwf78vtKg==";
+      url = "https://registry.npmjs.org/sql-formatter/-/sql-formatter-11.0.2.tgz";
+      sha512 = "6QumAdGHEnI5dXEq1d0aBRP876AyA9Wp/UE7wopKNA2Mp9sKGRKVqGgoWHk4dr0J0nceesC85Y0p36qmGoNqhw==";
     };
     dependencies = [
       sources."argparse-2.0.1"
       sources."commander-2.20.3"
       sources."discontinuous-range-1.0.0"
-      sources."moo-0.5.1"
+      sources."moo-0.5.2"
       sources."nearley-2.20.1"
       sources."railroad-diagrams-1.0.0"
       sources."randexp-0.4.6"
@@ -133608,7 +133732,7 @@ in
       })
       sources."epidemic-broadcast-trees-7.0.0"
       sources."errno-0.1.8"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       (sources."es-get-iterator-1.1.2" // {
         dependencies = [
           sources."isarray-2.0.5"
@@ -133851,7 +133975,7 @@ in
       sources."mkdirp-0.5.6"
       sources."mkdirp-classic-0.5.3"
       sources."monotonic-timestamp-0.0.9"
-      sources."moo-0.5.1"
+      sources."moo-0.5.2"
       sources."ms-2.1.2"
       (sources."multiblob-1.13.8" // {
         dependencies = [
@@ -134172,7 +134296,7 @@ in
         ];
       })
       sources."snapdragon-util-3.0.1"
-      (sources."socks-2.7.0" // {
+      (sources."socks-2.7.1" // {
         dependencies = [
           sources."ip-2.0.0"
         ];
@@ -134201,7 +134325,7 @@ in
           sources."ssb-uri2-1.9.0"
         ];
       })
-      sources."ssb-bfe-3.6.0"
+      sources."ssb-bfe-3.6.1"
       sources."ssb-bfe-spec-0.7.0"
       sources."ssb-blobs-1.2.2"
       sources."ssb-caps-1.1.0"
@@ -134483,7 +134607,7 @@ in
       sources."async-limiter-1.0.1"
       sources."asynckit-0.4.0"
       sources."available-typed-arrays-1.0.5"
-      (sources."aws-sdk-2.1225.0" // {
+      (sources."aws-sdk-2.1231.0" // {
         dependencies = [
           sources."uuid-8.0.0"
         ];
@@ -134511,9 +134635,9 @@ in
       sources."bindings-1.2.1"
       sources."blob-0.0.5"
       sources."bluebird-2.11.0"
-      (sources."body-parser-1.20.0" // {
+      (sources."body-parser-1.20.1" // {
         dependencies = [
-          sources."qs-6.10.3"
+          sources."qs-6.11.0"
         ];
       })
       sources."boom-2.10.1"
@@ -134642,7 +134766,7 @@ in
       })
       sources."engine.io-parser-2.2.1"
       sources."error-ex-1.3.2"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-to-primitive-1.2.1"
       sources."escape-html-1.0.3"
       sources."escape-string-regexp-1.0.5"
@@ -134658,6 +134782,7 @@ in
       })
       (sources."express-4.18.1" // {
         dependencies = [
+          sources."body-parser-1.20.0"
           sources."cookie-0.5.0"
           sources."proxy-addr-2.0.7"
           sources."qs-6.10.3"
@@ -135123,7 +135248,7 @@ in
           sources."ms-2.1.2"
           sources."qs-6.11.0"
           sources."readable-stream-3.6.0"
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
           sources."string_decoder-1.3.0"
           sources."yallist-4.0.0"
         ];
@@ -135434,7 +135559,7 @@ in
       sources."path-type-4.0.0"
       sources."picocolors-1.0.0"
       sources."picomatch-2.3.1"
-      sources."postcss-8.4.16"
+      sources."postcss-8.4.17"
       sources."postcss-media-query-parser-0.2.3"
       sources."postcss-resolve-nested-selector-0.1.1"
       sources."postcss-safe-parser-6.0.0"
@@ -135463,7 +135588,7 @@ in
       sources."reusify-1.0.4"
       sources."rimraf-3.0.2"
       sources."run-parallel-1.2.0"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."signal-exit-3.0.7"
       sources."slash-3.0.0"
       (sources."slice-ansi-4.0.0" // {
@@ -135701,50 +135826,50 @@ in
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
-      sources."@swc/core-1.3.3"
-      (sources."@swc/core-android-arm-eabi-1.3.3" // {
+      sources."@swc/core-1.3.5"
+      (sources."@swc/core-android-arm-eabi-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.122"
         ];
       })
-      (sources."@swc/core-android-arm64-1.3.3" // {
+      (sources."@swc/core-android-arm64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-darwin-arm64-1.3.3"
-      sources."@swc/core-darwin-x64-1.3.3"
-      (sources."@swc/core-freebsd-x64-1.3.3" // {
+      sources."@swc/core-darwin-arm64-1.3.5"
+      sources."@swc/core-darwin-x64-1.3.5"
+      (sources."@swc/core-freebsd-x64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-linux-arm-gnueabihf-1.3.3" // {
+      (sources."@swc/core-linux-arm-gnueabihf-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-linux-arm64-gnu-1.3.3"
-      sources."@swc/core-linux-arm64-musl-1.3.3"
-      sources."@swc/core-linux-x64-gnu-1.3.3"
-      sources."@swc/core-linux-x64-musl-1.3.3"
-      (sources."@swc/core-win32-arm64-msvc-1.3.3" // {
+      sources."@swc/core-linux-arm64-gnu-1.3.5"
+      sources."@swc/core-linux-arm64-musl-1.3.5"
+      sources."@swc/core-linux-x64-gnu-1.3.5"
+      sources."@swc/core-linux-x64-musl-1.3.5"
+      (sources."@swc/core-win32-arm64-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-win32-ia32-msvc-1.3.3" // {
+      (sources."@swc/core-win32-ia32-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-win32-x64-msvc-1.3.3"
-      sources."@swc/wasm-1.3.3"
+      sources."@swc/core-win32-x64-msvc-1.3.5"
+      sources."@swc/wasm-1.3.5"
       sources."@tsconfig/node10-1.0.9"
       sources."@tsconfig/node12-1.0.11"
       sources."@tsconfig/node14-1.0.3"
       sources."@tsconfig/node16-1.0.3"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/pug-2.0.6"
       sources."@types/sass-1.43.1"
       sources."acorn-8.8.0"
@@ -135764,7 +135889,7 @@ in
       sources."buffer-crc32-0.2.13"
       sources."call-bind-1.0.2"
       sources."callsites-3.1.0"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."chalk-2.4.2"
       sources."character-parser-2.2.0"
       sources."chokidar-3.5.3"
@@ -135782,7 +135907,7 @@ in
       sources."detect-indent-6.1.0"
       sources."diff-4.0.2"
       sources."doctypes-1.1.0"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       sources."errno-0.1.8"
       sources."es6-promise-3.3.1"
       sources."escalade-3.1.1"
@@ -135862,7 +135987,7 @@ in
       sources."picocolors-1.0.0"
       sources."picomatch-2.3.1"
       sources."pify-4.0.1"
-      sources."postcss-8.4.16"
+      sources."postcss-8.4.17"
       sources."postcss-load-config-4.0.1"
       sources."promise-7.3.1"
       sources."prr-1.0.1"
@@ -135922,12 +136047,12 @@ in
       sources."ts-node-10.9.1"
       sources."tslib-2.4.0"
       sources."typescript-4.8.4"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."v8-compile-cache-lib-3.0.1"
       sources."void-elements-3.1.0"
       sources."with-7.0.2"
       sources."wrappy-1.0.2"
-      sources."yaml-2.1.1"
+      sources."yaml-2.1.3"
       sources."yn-3.1.1"
     ];
     buildInputs = globalBuildInputs;
@@ -135991,50 +136116,50 @@ in
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
-      sources."@swc/core-1.3.3"
-      (sources."@swc/core-android-arm-eabi-1.3.3" // {
+      sources."@swc/core-1.3.5"
+      (sources."@swc/core-android-arm-eabi-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.122"
         ];
       })
-      (sources."@swc/core-android-arm64-1.3.3" // {
+      (sources."@swc/core-android-arm64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-darwin-arm64-1.3.3"
-      sources."@swc/core-darwin-x64-1.3.3"
-      (sources."@swc/core-freebsd-x64-1.3.3" // {
+      sources."@swc/core-darwin-arm64-1.3.5"
+      sources."@swc/core-darwin-x64-1.3.5"
+      (sources."@swc/core-freebsd-x64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-linux-arm-gnueabihf-1.3.3" // {
+      (sources."@swc/core-linux-arm-gnueabihf-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-linux-arm64-gnu-1.3.3"
-      sources."@swc/core-linux-arm64-musl-1.3.3"
-      sources."@swc/core-linux-x64-gnu-1.3.3"
-      sources."@swc/core-linux-x64-musl-1.3.3"
-      (sources."@swc/core-win32-arm64-msvc-1.3.3" // {
+      sources."@swc/core-linux-arm64-gnu-1.3.5"
+      sources."@swc/core-linux-arm64-musl-1.3.5"
+      sources."@swc/core-linux-x64-gnu-1.3.5"
+      sources."@swc/core-linux-x64-musl-1.3.5"
+      (sources."@swc/core-win32-arm64-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-win32-ia32-msvc-1.3.3" // {
+      (sources."@swc/core-win32-ia32-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-win32-x64-msvc-1.3.3"
-      sources."@swc/wasm-1.3.3"
+      sources."@swc/core-win32-x64-msvc-1.3.5"
+      sources."@swc/wasm-1.3.5"
       sources."@tsconfig/node10-1.0.9"
       sources."@tsconfig/node12-1.0.11"
       sources."@tsconfig/node14-1.0.3"
       sources."@tsconfig/node16-1.0.3"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/pug-2.0.6"
       sources."@types/sass-1.43.1"
       sources."acorn-8.8.0"
@@ -136053,7 +136178,7 @@ in
       sources."browserslist-4.21.4"
       sources."buffer-crc32-0.2.13"
       sources."call-bind-1.0.2"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."chalk-2.4.2"
       sources."character-parser-2.2.0"
       sources."chokidar-3.5.3"
@@ -136072,7 +136197,7 @@ in
       sources."detect-indent-6.1.0"
       sources."diff-4.0.2"
       sources."doctypes-1.1.0"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       sources."emmet-2.3.6"
       sources."errno-0.1.8"
       sources."es6-promise-3.3.1"
@@ -136156,7 +136281,7 @@ in
       sources."picocolors-1.0.0"
       sources."picomatch-2.3.1"
       sources."pify-4.0.1"
-      sources."postcss-8.4.16"
+      sources."postcss-8.4.17"
       sources."postcss-load-config-4.0.1"
       sources."prettier-2.7.1"
       sources."prettier-plugin-svelte-2.7.1"
@@ -136217,7 +136342,7 @@ in
       sources."ts-node-10.9.1"
       sources."tslib-2.4.0"
       sources."typescript-4.8.4"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."v8-compile-cache-lib-3.0.1"
       sources."void-elements-3.1.0"
       sources."vscode-css-languageservice-5.1.13"
@@ -136245,7 +136370,7 @@ in
       sources."vscode-uri-3.0.6"
       sources."with-7.0.2"
       sources."wrappy-1.0.2"
-      sources."yaml-2.1.1"
+      sources."yaml-2.1.3"
       sources."yn-3.1.1"
     ];
     buildInputs = globalBuildInputs;
@@ -136371,7 +136496,7 @@ in
       sources."cache-base-1.0.1"
       sources."call-bind-1.0.2"
       sources."camelcase-4.1.0"
-      sources."capture-stack-trace-1.0.1"
+      sources."capture-stack-trace-1.0.2"
       sources."chalk-1.1.3"
       sources."charenc-0.0.2"
       sources."chokidar-2.1.8"
@@ -136717,7 +136842,7 @@ in
           sources."ms-2.1.2"
           sources."qs-6.11.0"
           sources."readable-stream-3.6.0"
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
           sources."superagent-7.1.6"
           sources."yallist-4.0.0"
         ];
@@ -136897,7 +137022,7 @@ in
       sources."truncate-utf8-bytes-1.0.2"
       sources."type-is-1.6.18"
       sources."typedarray-0.0.6"
-      sources."uglify-js-3.17.2"
+      sources."uglify-js-3.17.3"
       sources."undefsafe-2.0.5"
       (sources."union-value-1.0.1" // {
         dependencies = [
@@ -136970,50 +137095,50 @@ in
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
-      sources."@swc/core-1.3.3"
-      (sources."@swc/core-android-arm-eabi-1.3.3" // {
+      sources."@swc/core-1.3.5"
+      (sources."@swc/core-android-arm-eabi-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.122"
         ];
       })
-      (sources."@swc/core-android-arm64-1.3.3" // {
+      (sources."@swc/core-android-arm64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-darwin-arm64-1.3.3"
-      sources."@swc/core-darwin-x64-1.3.3"
-      (sources."@swc/core-freebsd-x64-1.3.3" // {
+      sources."@swc/core-darwin-arm64-1.3.5"
+      sources."@swc/core-darwin-x64-1.3.5"
+      (sources."@swc/core-freebsd-x64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-linux-arm-gnueabihf-1.3.3" // {
+      (sources."@swc/core-linux-arm-gnueabihf-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-linux-arm64-gnu-1.3.3"
-      sources."@swc/core-linux-arm64-musl-1.3.3"
-      sources."@swc/core-linux-x64-gnu-1.3.3"
-      sources."@swc/core-linux-x64-musl-1.3.3"
-      (sources."@swc/core-win32-arm64-msvc-1.3.3" // {
+      sources."@swc/core-linux-arm64-gnu-1.3.5"
+      sources."@swc/core-linux-arm64-musl-1.3.5"
+      sources."@swc/core-linux-x64-gnu-1.3.5"
+      sources."@swc/core-linux-x64-musl-1.3.5"
+      (sources."@swc/core-win32-arm64-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-win32-ia32-msvc-1.3.3" // {
+      (sources."@swc/core-win32-ia32-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-win32-x64-msvc-1.3.3"
-      sources."@swc/wasm-1.3.3"
+      sources."@swc/core-win32-x64-msvc-1.3.5"
+      sources."@swc/wasm-1.3.5"
       sources."@tsconfig/node10-1.0.9"
       sources."@tsconfig/node12-1.0.11"
       sources."@tsconfig/node14-1.0.3"
       sources."@tsconfig/node16-1.0.3"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."acorn-7.4.1"
       sources."acorn-node-1.8.2"
       sources."acorn-walk-7.2.0"
@@ -137063,7 +137188,7 @@ in
       sources."picocolors-1.0.0"
       sources."picomatch-2.3.1"
       sources."pify-2.3.0"
-      sources."postcss-8.4.16"
+      sources."postcss-8.4.17"
       sources."postcss-import-14.1.0"
       sources."postcss-js-4.0.0"
       sources."postcss-load-config-3.1.4"
@@ -137432,10 +137557,10 @@ in
   terser = nodeEnv.buildNodePackage {
     name = "terser";
     packageName = "terser";
-    version = "5.15.0";
+    version = "5.15.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/terser/-/terser-5.15.0.tgz";
-      sha512 = "L1BJiXVmheAQQy+as0oF3Pwtlo4s3Wi1X2zNZ2NxOB4wx9bdS9Vk67XQENLFdLYGCK/Z2di53mTj/hBafR+dTA==";
+      url = "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz";
+      sha512 = "K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==";
     };
     dependencies = [
       sources."@jridgewell/gen-mapping-0.3.2"
@@ -138569,7 +138694,7 @@ in
     };
     dependencies = [
       sources."check-ends-with-period-2.0.1"
-      sources."emoji-regex-10.1.0"
+      sources."emoji-regex-10.2.1"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -138655,7 +138780,7 @@ in
       sources."array-includes-3.1.5"
       sources."call-bind-1.0.2"
       sources."define-properties-1.1.4"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-to-primitive-1.2.1"
       sources."function-bind-1.1.1"
       sources."function.prototype.name-1.1.5"
@@ -138718,7 +138843,7 @@ in
           sources."ms-2.1.2"
         ];
       })
-      (sources."@humanwhocodes/config-array-0.10.5" // {
+      (sources."@humanwhocodes/config-array-0.10.7" // {
         dependencies = [
           sources."debug-4.3.4"
           sources."ms-2.1.2"
@@ -138760,7 +138885,7 @@ in
       sources."color-name-1.1.4"
       sources."commander-2.20.3"
       sources."concat-map-0.0.1"
-      sources."core-js-pure-3.25.3"
+      sources."core-js-pure-3.25.5"
       sources."cross-spawn-7.0.3"
       sources."damerau-levenshtein-1.0.8"
       sources."debug-2.6.9"
@@ -138770,7 +138895,7 @@ in
       sources."doctrine-2.1.0"
       sources."e-prime-0.10.4"
       sources."emoji-regex-9.2.2"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-shim-unscopables-1.0.0"
       sources."es-to-primitive-1.2.1"
       sources."escape-string-regexp-4.0.0"
@@ -138866,7 +138991,7 @@ in
       sources."is-symbol-1.0.4"
       sources."is-weakref-1.0.2"
       sources."isexe-2.0.0"
-      sources."js-sdsl-4.1.4"
+      sources."js-sdsl-4.1.5"
       sources."js-tokens-4.0.0"
       sources."js-yaml-4.1.0"
       sources."json-schema-traverse-0.4.1"
@@ -138984,7 +139109,7 @@ in
       sources."@types/cors-2.8.12"
       sources."@types/http-cache-semantics-4.0.1"
       sources."@types/keyv-3.1.4"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/responselike-1.0.0"
       sources."abbrev-1.1.1"
       sources."abstract-logging-2.0.1"
@@ -139044,7 +139169,7 @@ in
       sources."content-type-1.0.4"
       sources."cookie-0.4.2"
       sources."cookie-signature-1.0.6"
-      sources."core-js-3.25.3"
+      sources."core-js-3.25.5"
       sources."core-util-is-1.0.2"
       sources."cors-2.8.5"
       sources."css-select-4.3.0"
@@ -139088,7 +139213,7 @@ in
       sources."engine.io-parser-5.0.4"
       sources."entities-2.2.0"
       sources."env-paths-2.2.1"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-to-primitive-1.2.1"
       sources."escape-html-1.0.3"
       sources."escape-string-regexp-1.0.5"
@@ -139319,7 +139444,7 @@ in
           sources."ms-2.1.2"
         ];
       })
-      sources."socks-2.7.0"
+      sources."socks-2.7.1"
       sources."sqlite3-git+https://github.com/mapbox/node-sqlite3.git#918052b538b0effe6c4a44c74a16b2749c08a0d2"
       sources."sshpk-1.17.0"
       sources."statuses-1.5.0"
@@ -139406,7 +139531,7 @@ in
       sources."@types/cors-2.8.12"
       sources."@types/http-cache-semantics-4.0.1"
       sources."@types/keyv-3.1.4"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/responselike-1.0.0"
       sources."abbrev-1.1.1"
       sources."abstract-logging-2.0.1"
@@ -139466,7 +139591,7 @@ in
       sources."content-type-1.0.4"
       sources."cookie-0.4.2"
       sources."cookie-signature-1.0.6"
-      sources."core-js-3.25.3"
+      sources."core-js-3.25.5"
       sources."core-util-is-1.0.2"
       sources."cors-2.8.5"
       sources."css-select-4.3.0"
@@ -139510,7 +139635,7 @@ in
       sources."engine.io-parser-5.0.4"
       sources."entities-2.2.0"
       sources."env-paths-2.2.1"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-to-primitive-1.2.1"
       sources."escape-html-1.0.3"
       sources."escape-string-regexp-1.0.5"
@@ -139741,7 +139866,7 @@ in
           sources."ms-2.1.2"
         ];
       })
-      sources."socks-2.7.0"
+      sources."socks-2.7.1"
       sources."sqlite3-git+https://github.com/mapbox/node-sqlite3.git#918052b538b0effe6c4a44c74a16b2749c08a0d2"
       sources."sshpk-1.17.0"
       sources."statuses-1.5.0"
@@ -139904,7 +140029,7 @@ in
       sources."content-type-1.0.4"
       sources."cookie-0.4.0"
       sources."cookie-signature-1.0.6"
-      sources."core-js-3.25.3"
+      sources."core-js-3.25.5"
       sources."core-util-is-1.0.2"
       sources."css-select-1.2.0"
       sources."css-what-2.1.3"
@@ -140498,7 +140623,7 @@ in
       sources."@types/cacheable-request-6.0.2"
       sources."@types/http-cache-semantics-4.0.1"
       sources."@types/keyv-3.1.4"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/responselike-1.0.0"
       sources."abbrev-1.1.1"
       sources."abstract-logging-2.0.1"
@@ -140579,7 +140704,7 @@ in
       sources."content-type-1.0.4"
       sources."cookie-0.4.0"
       sources."cookie-signature-1.0.6"
-      sources."core-js-3.25.3"
+      sources."core-js-3.25.5"
       sources."core-util-is-1.0.2"
       sources."css-select-1.2.0"
       sources."css-what-2.1.3"
@@ -140966,7 +141091,7 @@ in
       sources."@types/cacheable-request-6.0.2"
       sources."@types/http-cache-semantics-4.0.1"
       sources."@types/keyv-3.1.4"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/responselike-1.0.0"
       sources."abbrev-1.1.1"
       sources."abstract-logging-2.0.1"
@@ -141047,7 +141172,7 @@ in
       sources."content-type-1.0.4"
       sources."cookie-0.4.0"
       sources."cookie-signature-1.0.6"
-      sources."core-js-3.25.3"
+      sources."core-js-3.25.5"
       sources."core-util-is-1.0.2"
       sources."css-select-1.2.0"
       sources."css-what-2.1.3"
@@ -141818,10 +141943,10 @@ in
   three = nodeEnv.buildNodePackage {
     name = "three";
     packageName = "three";
-    version = "0.144.0";
+    version = "0.145.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/three/-/three-0.144.0.tgz";
-      sha512 = "R8AXPuqfjfRJKkYoTQcTK7A6i3AdO9++2n8ubya/GTU+fEHhYKu1ZooRSCPkx69jbnzT7dD/xEo6eROQTt2lJw==";
+      url = "https://registry.npmjs.org/three/-/three-0.145.0.tgz";
+      sha512 = "EKoHQEtEJ4CB6b2BGMBgLZrfwLjXcSUfoI/MiIXUuRpeYsfK5aPWbYhdtIVWOH+x6X0TouldHKHBuc/LAiFzAw==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -141865,7 +141990,7 @@ in
       sources."@types/cacheable-request-6.0.2"
       sources."@types/http-cache-semantics-4.0.1"
       sources."@types/keyv-3.1.4"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/responselike-1.0.0"
       sources."@xmldom/xmldom-0.8.2"
       sources."ajv-6.12.6"
@@ -141969,7 +142094,7 @@ in
       sources."rimraf-2.6.3"
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."sprintf-0.1.5"
       sources."sshpk-1.17.0"
       sources."stack-trace-0.0.10"
@@ -142270,50 +142395,50 @@ in
       sources."@jridgewell/resolve-uri-3.1.0"
       sources."@jridgewell/sourcemap-codec-1.4.14"
       sources."@jridgewell/trace-mapping-0.3.9"
-      sources."@swc/core-1.3.3"
-      (sources."@swc/core-android-arm-eabi-1.3.3" // {
+      sources."@swc/core-1.3.5"
+      (sources."@swc/core-android-arm-eabi-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.122"
         ];
       })
-      (sources."@swc/core-android-arm64-1.3.3" // {
+      (sources."@swc/core-android-arm64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-darwin-arm64-1.3.3"
-      sources."@swc/core-darwin-x64-1.3.3"
-      (sources."@swc/core-freebsd-x64-1.3.3" // {
+      sources."@swc/core-darwin-arm64-1.3.5"
+      sources."@swc/core-darwin-x64-1.3.5"
+      (sources."@swc/core-freebsd-x64-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-linux-arm-gnueabihf-1.3.3" // {
+      (sources."@swc/core-linux-arm-gnueabihf-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-linux-arm64-gnu-1.3.3"
-      sources."@swc/core-linux-arm64-musl-1.3.3"
-      sources."@swc/core-linux-x64-gnu-1.3.3"
-      sources."@swc/core-linux-x64-musl-1.3.3"
-      (sources."@swc/core-win32-arm64-msvc-1.3.3" // {
+      sources."@swc/core-linux-arm64-gnu-1.3.5"
+      sources."@swc/core-linux-arm64-musl-1.3.5"
+      sources."@swc/core-linux-x64-gnu-1.3.5"
+      sources."@swc/core-linux-x64-musl-1.3.5"
+      (sources."@swc/core-win32-arm64-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      (sources."@swc/core-win32-ia32-msvc-1.3.3" // {
+      (sources."@swc/core-win32-ia32-msvc-1.3.5" // {
         dependencies = [
           sources."@swc/wasm-1.2.130"
         ];
       })
-      sources."@swc/core-win32-x64-msvc-1.3.3"
-      sources."@swc/wasm-1.3.3"
+      sources."@swc/core-win32-x64-msvc-1.3.5"
+      sources."@swc/wasm-1.3.5"
       sources."@tsconfig/node10-1.0.9"
       sources."@tsconfig/node12-1.0.11"
       sources."@tsconfig/node14-1.0.3"
       sources."@tsconfig/node16-1.0.3"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."acorn-8.8.0"
       sources."acorn-walk-8.2.0"
       sources."arg-4.1.3"
@@ -142376,13 +142501,13 @@ in
   typescript-language-server = nodeEnv.buildNodePackage {
     name = "typescript-language-server";
     packageName = "typescript-language-server";
-    version = "1.2.0";
+    version = "2.0.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/typescript-language-server/-/typescript-language-server-1.2.0.tgz";
-      sha512 = "Ahxko4dKgOY/pGTMdzeVw/NTIZC4z33OqEs7xlR3VEV36IZX12OfJ8uwXSbmTJlCh1QQ12dpQgwUuNvSfbWB4w==";
+      url = "https://registry.npmjs.org/typescript-language-server/-/typescript-language-server-2.0.0.tgz";
+      sha512 = "wBV3iSt2498Wl6wMozCRDyPrL0KsFtthvYqVZ3JFRyreBGlxEe3bfK2bnLSwtRwYAZuO9n1roi/NNn94rT5Y+w==";
     };
     dependencies = [
-      sources."commander-9.4.0"
+      sources."commander-9.4.1"
       (sources."crypto-random-string-4.0.0" // {
         dependencies = [
           sources."type-fest-1.4.0"
@@ -142402,7 +142527,7 @@ in
       sources."p-locate-6.0.0"
       sources."path-exists-5.0.0"
       sources."pkg-up-4.0.0"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."temp-dir-2.0.0"
       sources."tempy-3.0.0"
       sources."type-fest-2.19.0"
@@ -142430,10 +142555,10 @@ in
   uglify-js = nodeEnv.buildNodePackage {
     name = "uglify-js";
     packageName = "uglify-js";
-    version = "3.17.2";
+    version = "3.17.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.2.tgz";
-      sha512 = "bbxglRjsGQMchfvXZNusUcYgiB9Hx2K4AHYXQy2DITZ9Rd+JzhX7+hoocE5Winr7z2oHvPsekkBwXtigvxevXg==";
+      url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.3.tgz";
+      sha512 = "JmMFDME3iufZnBpyKL+uS78LRiC+mK55zWfM5f/pWBJfpOttXAqYfdDGRukYhJuyRinvPVAtUhvy7rlDybNtFg==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -142483,7 +142608,7 @@ in
       sources."@types/cookie-0.4.1"
       sources."@types/cors-2.8.12"
       sources."@types/http-cache-semantics-4.0.1"
-      sources."@types/node-16.11.62"
+      sources."@types/node-16.11.64"
       sources."JSONStream-1.3.5"
       sources."abbrev-1.1.1"
       sources."accepts-1.3.8"
@@ -142517,7 +142642,7 @@ in
       sources."base64id-2.0.0"
       sources."blueimp-md5-2.19.0"
       sources."bn.js-5.2.1"
-      sources."body-parser-1.20.0"
+      sources."body-parser-1.20.1"
       sources."bootstrap-3.4.1"
       sources."brace-expansion-1.1.11"
       sources."brorand-1.1.0"
@@ -142627,7 +142752,7 @@ in
       })
       sources."engine.io-parser-5.0.4"
       sources."error-ex-1.3.2"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-to-primitive-1.2.1"
       sources."escalade-3.1.1"
       sources."escape-html-1.0.3"
@@ -142637,7 +142762,9 @@ in
       sources."evp_bytestokey-1.0.3"
       (sources."express-4.18.1" // {
         dependencies = [
+          sources."body-parser-1.20.0"
           sources."cookie-0.5.0"
+          sources."qs-6.10.3"
         ];
       })
       (sources."express-session-1.17.3" // {
@@ -142650,7 +142777,7 @@ in
       sources."finalhandler-1.2.0"
       sources."fn.name-1.1.0"
       sources."for-each-0.3.3"
-      sources."form-data-encoder-2.1.2"
+      sources."form-data-encoder-2.1.3"
       sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       sources."fs.realpath-1.0.0"
@@ -142815,7 +142942,7 @@ in
         ];
       })
       sources."punycode-1.4.1"
-      sources."qs-6.10.3"
+      sources."qs-6.11.0"
       sources."querystring-0.2.0"
       sources."querystring-es3-0.2.1"
       sources."quick-lru-5.1.1"
@@ -142845,7 +142972,7 @@ in
       sources."safe-regex-test-1.0.0"
       sources."safe-stable-stringify-2.4.0"
       sources."safer-buffer-2.1.2"
-      (sources."semver-7.3.7" // {
+      (sources."semver-7.3.8" // {
         dependencies = [
           sources."lru-cache-6.0.0"
           sources."yallist-4.0.0"
@@ -143001,7 +143128,7 @@ in
       sources."@types/debug-4.1.7"
       sources."@types/is-empty-1.2.1"
       sources."@types/ms-0.7.31"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/supports-color-8.1.1"
       sources."@types/unist-2.0.6"
       sources."abbrev-1.1.1"
@@ -143057,7 +143184,7 @@ in
       sources."read-package-json-fast-2.0.3"
       sources."readable-stream-3.6.0"
       sources."safe-buffer-5.2.1"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."string-width-5.1.2"
       sources."string_decoder-1.3.0"
       sources."strip-ansi-7.0.1"
@@ -143086,7 +143213,7 @@ in
       sources."walk-up-path-1.0.0"
       sources."wrappy-1.0.2"
       sources."yallist-4.0.0"
-      sources."yaml-2.1.1"
+      sources."yaml-2.1.3"
       sources."yocto-queue-1.0.0"
     ];
     buildInputs = globalBuildInputs;
@@ -143120,7 +143247,7 @@ in
       sources."brace-expansion-1.1.11"
       sources."canvas-2.10.1"
       sources."chownr-2.0.0"
-      sources."cliui-7.0.4"
+      sources."cliui-8.0.1"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
       sources."color-support-1.1.3"
@@ -143191,7 +143318,7 @@ in
       sources."rw-1.3.3"
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."set-blocking-2.0.0"
       sources."signal-exit-3.0.7"
       sources."simple-concat-1.0.1"
@@ -143248,7 +143375,7 @@ in
       sources."wrappy-1.0.2"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
-      sources."yargs-17.5.1"
+      sources."yargs-17.6.0"
       sources."yargs-parser-21.1.1"
     ];
     buildInputs = globalBuildInputs;
@@ -143377,18 +143504,18 @@ in
   vercel = nodeEnv.buildNodePackage {
     name = "vercel";
     packageName = "vercel";
-    version = "28.4.4";
+    version = "28.4.8";
     src = fetchurl {
-      url = "https://registry.npmjs.org/vercel/-/vercel-28.4.4.tgz";
-      sha512 = "BMdBkziDVmH2dybFYon0+8DQ3jgbLKcDFJ+psyfX6hnxccFSHyepEUmPSbQYVMiB0Guv1WgqMVlwJCNMhoIRvw==";
+      url = "https://registry.npmjs.org/vercel/-/vercel-28.4.8.tgz";
+      sha512 = "wl+6uslCe7E/USrxf8A9W8QcQmXx5YPxqR8WF9B+ijWySWHVA2Q1DqE9vS0xh35DfB8nnLkdPfTYOfwXFJKOfw==";
     };
     dependencies = [
       sources."@edge-runtime/format-1.1.0-beta.33"
-      sources."@edge-runtime/primitives-1.1.0-beta.34"
-      sources."@edge-runtime/vm-1.1.0-beta.32"
+      sources."@edge-runtime/primitives-1.1.0-beta.36"
+      sources."@edge-runtime/vm-1.1.0-beta.36"
       (sources."@mapbox/node-pre-gyp-1.0.10" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."@nodelib/fs.scandir-2.1.5"
@@ -143398,25 +143525,25 @@ in
       sources."@szmarczak/http-timer-1.1.2"
       sources."@ts-morph/common-0.11.1"
       sources."@types/json-schema-7.0.11"
-      sources."@types/node-18.7.23"
-      sources."@vercel/build-utils-5.5.2"
-      sources."@vercel/go-2.2.10"
-      sources."@vercel/hydrogen-0.0.23"
-      sources."@vercel/next-3.2.0"
+      sources."@types/node-18.8.3"
+      sources."@vercel/build-utils-5.5.4"
+      sources."@vercel/go-2.2.12"
+      sources."@vercel/hydrogen-0.0.25"
+      sources."@vercel/next-3.2.3"
       sources."@vercel/nft-0.22.1"
-      sources."@vercel/node-2.5.20"
+      sources."@vercel/node-2.5.22"
       sources."@vercel/node-bridge-3.0.0"
-      sources."@vercel/python-3.1.19"
-      sources."@vercel/redwood-1.0.28"
-      sources."@vercel/remix-1.0.29"
+      sources."@vercel/python-3.1.21"
+      sources."@vercel/redwood-1.0.30"
+      sources."@vercel/remix-1.0.31"
       (sources."@vercel/routing-utils-2.0.2" // {
         dependencies = [
           sources."ajv-6.12.6"
           sources."json-schema-traverse-0.4.1"
         ];
       })
-      sources."@vercel/ruby-1.3.36"
-      sources."@vercel/static-build-1.0.28"
+      sources."@vercel/ruby-1.3.38"
+      sources."@vercel/static-build-1.0.30"
       sources."@vercel/static-config-2.0.3"
       sources."abbrev-1.1.1"
       sources."acorn-8.8.0"
@@ -143465,7 +143592,7 @@ in
       sources."diff-4.0.2"
       sources."dot-prop-5.3.0"
       sources."duplexer3-0.1.5"
-      sources."edge-runtime-1.1.0-beta.32"
+      sources."edge-runtime-1.1.0-beta.37"
       sources."emoji-regex-8.0.0"
       sources."encoding-0.1.13"
       sources."end-of-stream-1.4.4"
@@ -143512,7 +143639,7 @@ in
       sources."has-unicode-2.0.1"
       sources."has-yarn-2.1.0"
       sources."http-cache-semantics-4.1.0"
-      sources."http-status-1.5.2"
+      sources."http-status-1.5.3"
       sources."https-proxy-agent-5.0.1"
       sources."iconv-lite-0.6.3"
       sources."import-lazy-2.1.0"
@@ -143626,7 +143753,7 @@ in
       sources."unique-string-2.0.0"
       (sources."update-notifier-5.1.0" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."uri-js-4.4.1"
@@ -143818,7 +143945,7 @@ in
       sources."resolve-1.22.1"
       sources."resolve-from-4.0.0"
       sources."rimraf-3.0.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."shebang-command-2.0.0"
       sources."shebang-regex-3.0.0"
       (sources."slice-ansi-4.0.0" // {
@@ -144047,7 +144174,7 @@ in
       sha512 = "sWXDFmAvXMUhF5E+6v4e77SwhVPSvdLxGGfkOz15LmAsfKoamKMnW7aARnu6mRWOzqz3hKJqVZN4hnCpdvtLKg==";
     };
     dependencies = [
-      sources."core-js-3.25.3"
+      sources."core-js-3.25.5"
       sources."jsonc-parser-3.2.0"
       sources."picomatch-2.3.1"
       sources."regenerator-runtime-0.13.9"
@@ -144112,7 +144239,7 @@ in
       sources."buffer-crc32-0.2.13"
       sources."buffer-fill-1.0.0"
       sources."builtins-1.0.3"
-      sources."capture-stack-trace-1.0.1"
+      sources."capture-stack-trace-1.0.2"
       sources."caseless-0.12.0"
       sources."caw-2.0.1"
       sources."chalk-2.4.2"
@@ -144222,7 +144349,7 @@ in
           sources."pify-3.0.0"
         ];
       })
-      (sources."metalsmith-2.5.0" // {
+      (sources."metalsmith-2.5.1" // {
         dependencies = [
           sources."commander-6.2.1"
           sources."rimraf-3.0.2"
@@ -144319,7 +144446,7 @@ in
       sources."tslib-1.14.1"
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
-      sources."uglify-js-3.17.2"
+      sources."uglify-js-3.17.3"
       sources."uid-0.0.2"
       sources."unbzip2-stream-1.4.3"
       sources."unzip-response-2.0.1"
@@ -144381,7 +144508,7 @@ in
       sources."@starptech/rehype-webparser-0.10.0"
       sources."@starptech/webparser-0.10.0"
       sources."@szmarczak/http-timer-1.1.2"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/unist-2.0.6"
       sources."@types/vfile-3.0.2"
       sources."@types/vfile-message-2.0.0"
@@ -145348,14 +145475,14 @@ in
       sources."canvas-2.10.1"
       sources."canvg-3.0.7"
       sources."chownr-2.0.0"
-      sources."cliui-7.0.4"
+      sources."cliui-8.0.1"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
       sources."color-support-1.1.3"
       sources."combined-stream-1.0.8"
       sources."concat-map-0.0.1"
       sources."console-control-strings-1.1.0"
-      sources."core-js-pure-3.25.3"
+      sources."core-js-pure-3.25.5"
       sources."cssom-0.4.4"
       (sources."cssstyle-2.3.0" // {
         dependencies = [
@@ -145460,7 +145587,7 @@ in
       sources."safer-buffer-2.1.2"
       sources."sax-1.2.4"
       sources."saxes-5.0.1"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."set-blocking-2.0.0"
       sources."signal-exit-3.0.7"
       sources."simple-concat-1.0.1"
@@ -145506,7 +145633,7 @@ in
       sources."xmlchars-2.2.0"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
-      sources."yargs-17.5.1"
+      sources."yargs-17.6.0"
       sources."yargs-parser-21.1.1"
     ];
     buildInputs = globalBuildInputs;
@@ -145552,7 +145679,7 @@ in
           sources."strip-json-comments-3.1.1"
         ];
       })
-      sources."@humanwhocodes/config-array-0.10.5"
+      sources."@humanwhocodes/config-array-0.10.7"
       sources."@humanwhocodes/gitignore-to-minimatch-1.0.2"
       sources."@humanwhocodes/object-schema-1.2.1"
       sources."@mdn/browser-compat-data-5.1.8"
@@ -145568,7 +145695,7 @@ in
       sources."@types/got-8.3.6"
       sources."@types/http-cache-semantics-4.0.1"
       sources."@types/minimatch-3.0.5"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/yauzl-2.10.0"
       sources."abort-controller-3.0.0"
       sources."accepts-1.3.8"
@@ -145619,7 +145746,7 @@ in
       sources."boolbase-1.0.0"
       (sources."boxen-7.0.0" // {
         dependencies = [
-          sources."chalk-5.0.1"
+          sources."chalk-5.1.0"
           sources."type-fest-2.19.0"
         ];
       })
@@ -145668,7 +145795,7 @@ in
       sources."color-name-1.1.4"
       sources."columnify-1.6.0"
       sources."combined-stream-1.0.8"
-      sources."commander-9.4.0"
+      sources."commander-9.4.1"
       sources."common-tags-1.8.2"
       sources."concat-map-0.0.1"
       sources."concat-stream-1.6.2"
@@ -145845,7 +145972,7 @@ in
       sources."fluent-syntax-0.13.0"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
-      sources."form-data-encoder-2.1.2"
+      sources."form-data-encoder-2.1.3"
       sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       sources."from2-2.3.0"
@@ -146286,7 +146413,7 @@ in
       sources."upath-2.0.1"
       (sources."update-notifier-6.0.2" // {
         dependencies = [
-          sources."chalk-5.0.1"
+          sources."chalk-5.1.0"
         ];
       })
       sources."uri-js-4.4.1"
@@ -146365,7 +146492,7 @@ in
       sources."@types/eslint-scope-3.7.4"
       sources."@types/estree-0.0.51"
       sources."@types/json-schema-7.0.11"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@webassemblyjs/ast-1.11.1"
       sources."@webassemblyjs/floating-point-hex-parser-1.11.1"
       sources."@webassemblyjs/helper-api-error-1.11.1"
@@ -146389,10 +146516,10 @@ in
       sources."ajv-keywords-3.5.2"
       sources."browserslist-4.21.4"
       sources."buffer-from-1.1.2"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."chrome-trace-event-1.0.3"
       sources."commander-2.20.3"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       sources."enhanced-resolve-5.10.0"
       sources."es-module-lexer-0.9.3"
       sources."escalade-3.1.1"
@@ -146428,9 +146555,9 @@ in
       sources."source-map-support-0.5.21"
       sources."supports-color-8.1.1"
       sources."tapable-2.2.1"
-      sources."terser-5.15.0"
+      sources."terser-5.15.1"
       sources."terser-webpack-plugin-5.3.6"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."uri-js-4.4.1"
       sources."watchpack-2.4.0"
       sources."webpack-5.74.0"
@@ -146466,7 +146593,7 @@ in
       sources."@types/eslint-scope-3.7.4"
       sources."@types/estree-0.0.51"
       sources."@types/json-schema-7.0.11"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@webassemblyjs/ast-1.11.1"
       sources."@webassemblyjs/floating-point-hex-parser-1.11.1"
       sources."@webassemblyjs/helper-api-error-1.11.1"
@@ -146493,13 +146620,13 @@ in
       sources."ajv-keywords-3.5.2"
       sources."browserslist-4.21.4"
       sources."buffer-from-1.1.2"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."chrome-trace-event-1.0.3"
       sources."clone-deep-4.0.1"
       sources."colorette-2.0.19"
       sources."commander-7.2.0"
       sources."cross-spawn-7.0.3"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       sources."enhanced-resolve-5.10.0"
       sources."envinfo-7.8.1"
       sources."es-module-lexer-0.9.3"
@@ -146563,13 +146690,13 @@ in
       sources."supports-color-8.1.1"
       sources."supports-preserve-symlinks-flag-1.0.0"
       sources."tapable-2.2.1"
-      (sources."terser-5.15.0" // {
+      (sources."terser-5.15.1" // {
         dependencies = [
           sources."commander-2.20.3"
         ];
       })
       sources."terser-webpack-plugin-5.3.6"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."uri-js-4.4.1"
       sources."watchpack-2.4.0"
       sources."webpack-5.74.0"
@@ -146617,7 +146744,7 @@ in
       sources."@types/http-proxy-1.17.9"
       sources."@types/json-schema-7.0.11"
       sources."@types/mime-3.0.1"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/qs-6.9.7"
       sources."@types/range-parser-1.2.4"
       sources."@types/retry-0.12.0"
@@ -146667,7 +146794,7 @@ in
       sources."bufferutil-4.0.6"
       sources."bytes-3.0.0"
       sources."call-bind-1.0.2"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."chokidar-3.5.3"
       sources."chrome-trace-event-1.0.3"
       sources."colorette-2.0.19"
@@ -146695,7 +146822,7 @@ in
       sources."dns-equal-1.0.0"
       sources."dns-packet-5.4.0"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       sources."encodeurl-1.0.2"
       sources."enhanced-resolve-5.10.0"
       sources."es-module-lexer-0.9.3"
@@ -146872,7 +146999,7 @@ in
       sources."strip-final-newline-2.0.0"
       sources."supports-color-8.1.1"
       sources."tapable-2.2.1"
-      sources."terser-5.15.0"
+      sources."terser-5.15.1"
       (sources."terser-webpack-plugin-5.3.6" // {
         dependencies = [
           sources."ajv-6.12.6"
@@ -146886,7 +147013,7 @@ in
       sources."toidentifier-1.0.1"
       sources."type-is-1.6.18"
       sources."unpipe-1.0.0"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."uri-js-4.4.1"
       sources."utf-8-validate-5.0.9"
       sources."util-deprecate-1.0.2"
@@ -146943,7 +147070,7 @@ in
       sources."@types/eslint-scope-3.7.4"
       sources."@types/estree-0.0.51"
       sources."@types/json-schema-7.0.11"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@webassemblyjs/ast-1.11.1"
       sources."@webassemblyjs/floating-point-hex-parser-1.11.1"
       sources."@webassemblyjs/helper-api-error-1.11.1"
@@ -146969,11 +147096,11 @@ in
       sources."braces-3.0.2"
       sources."browserslist-4.21.4"
       sources."buffer-from-1.1.2"
-      sources."caniuse-lite-1.0.30001412"
+      sources."caniuse-lite-1.0.30001418"
       sources."chrome-trace-event-1.0.3"
       sources."commander-2.20.3"
       sources."dir-glob-3.0.1"
-      sources."electron-to-chromium-1.4.266"
+      sources."electron-to-chromium-1.4.275"
       sources."enhanced-resolve-5.10.0"
       sources."es-module-lexer-0.9.3"
       sources."escalade-3.1.1"
@@ -147032,7 +147159,7 @@ in
       sources."source-map-support-0.5.21"
       sources."supports-color-8.1.1"
       sources."tapable-2.2.1"
-      sources."terser-5.15.0"
+      sources."terser-5.15.1"
       (sources."terser-webpack-plugin-5.3.6" // {
         dependencies = [
           sources."ajv-6.12.6"
@@ -147042,7 +147169,7 @@ in
         ];
       })
       sources."to-regex-range-5.0.1"
-      sources."update-browserslist-db-1.0.9"
+      sources."update-browserslist-db-1.0.10"
       sources."uri-js-4.4.1"
       sources."watchpack-2.4.0"
       (sources."webpack-5.74.0" // {
@@ -147086,7 +147213,7 @@ in
       sources."@protobufjs/pool-1.1.0"
       sources."@protobufjs/utf8-1.1.0"
       sources."@types/long-4.0.2"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@webtorrent/http-node-1.3.0"
       sources."addr-to-ip-port-1.5.4"
       sources."airplay-js-0.3.0"
@@ -147165,7 +147292,7 @@ in
       sources."cli-cursor-3.1.0"
       sources."cli-spinners-2.7.0"
       sources."cli-width-3.0.0"
-      sources."cliui-7.0.4"
+      sources."cliui-8.0.1"
       sources."clone-1.0.4"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
@@ -147369,7 +147496,7 @@ in
         ];
       })
       sources."smart-buffer-4.2.0"
-      (sources."socks-2.7.0" // {
+      (sources."socks-2.7.1" // {
         dependencies = [
           sources."ip-2.0.0"
         ];
@@ -147439,7 +147566,7 @@ in
       sources."xmlbuilder-11.0.1"
       sources."xmldom-0.1.31"
       sources."y18n-5.0.8"
-      sources."yargs-17.5.1"
+      sources."yargs-17.6.0"
       sources."yargs-parser-21.1.1"
     ];
     buildInputs = globalBuildInputs;
@@ -147469,7 +147596,7 @@ in
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
       sources."chalk-4.1.2"
-      sources."cliui-7.0.4"
+      sources."cliui-8.0.1"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
       sources."concat-map-0.0.1"
@@ -147503,7 +147630,7 @@ in
       sources."require-directory-2.1.1"
       sources."rimraf-3.0.2"
       sources."safer-buffer-2.1.2"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."sisteransi-1.0.5"
       sources."string-width-4.2.3"
       sources."strip-ansi-6.0.1"
@@ -147518,7 +147645,7 @@ in
       sources."wrappy-1.0.2"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
-      sources."yargs-17.5.1"
+      sources."yargs-17.6.0"
       sources."yargs-parser-21.1.1"
     ];
     buildInputs = globalBuildInputs;
@@ -147534,10 +147661,10 @@ in
   wrangler = nodeEnv.buildNodePackage {
     name = "wrangler";
     packageName = "wrangler";
-    version = "2.1.8";
+    version = "2.1.10";
     src = fetchurl {
-      url = "https://registry.npmjs.org/wrangler/-/wrangler-2.1.8.tgz";
-      sha512 = "9QJ/X+xz5uLFUPaE4ENuJY8smt88b05kXSuauXB4DhfF79ndY4tjlgiS2+EVjPv1hB/xkB1KFBSoUMTrMDH3qw==";
+      url = "https://registry.npmjs.org/wrangler/-/wrangler-2.1.10.tgz";
+      sha512 = "hiaTNvkKw8axZljxHOjtDXIVo4GOrDclyxr0cF2aypzAwtrGlaYWD+WP0Z66BqRLpUpbF3BdzrPn1k+xGp0u+Q==";
     };
     dependencies = [
       sources."@cloudflare/kv-asset-handler-0.2.0"
@@ -147563,8 +147690,8 @@ in
       sources."@miniflare/storage-redis-2.9.0"
       sources."@miniflare/watcher-2.9.0"
       sources."@miniflare/web-sockets-2.9.0"
-      sources."@types/better-sqlite3-7.6.0"
-      sources."@types/node-18.7.23"
+      sources."@types/better-sqlite3-7.6.1"
+      sources."@types/node-18.8.3"
       sources."@types/stack-trace-0.0.29"
       sources."anymatch-3.1.2"
       sources."binary-extensions-2.2.0"
@@ -147657,7 +147784,7 @@ in
       sources."rollup-pluginutils-2.8.2"
       sources."selfsigned-2.1.1"
       sources."semiver-1.1.0"
-      sources."semver-7.3.7"
+      sources."semver-7.3.8"
       sources."set-cookie-parser-2.5.1"
       sources."shebang-command-2.0.0"
       sources."shebang-regex-3.0.0"
@@ -147729,7 +147856,7 @@ in
           sources."ms-2.1.2"
         ];
       })
-      (sources."@humanwhocodes/config-array-0.10.5" // {
+      (sources."@humanwhocodes/config-array-0.10.7" // {
         dependencies = [
           sources."debug-4.3.4"
           sources."ms-2.1.2"
@@ -147767,7 +147894,7 @@ in
       sources."color-name-1.1.4"
       sources."commander-2.20.3"
       sources."concat-map-0.0.1"
-      sources."core-js-pure-3.25.3"
+      sources."core-js-pure-3.25.5"
       sources."cross-spawn-7.0.3"
       sources."damerau-levenshtein-1.0.8"
       sources."debug-2.6.9"
@@ -147777,7 +147904,7 @@ in
       sources."doctrine-2.1.0"
       sources."e-prime-0.10.4"
       sources."emoji-regex-9.2.2"
-      sources."es-abstract-1.20.3"
+      sources."es-abstract-1.20.4"
       sources."es-shim-unscopables-1.0.0"
       sources."es-to-primitive-1.2.1"
       sources."escape-string-regexp-4.0.0"
@@ -147873,7 +148000,7 @@ in
       sources."is-symbol-1.0.4"
       sources."is-weakref-1.0.2"
       sources."isexe-2.0.0"
-      sources."js-sdsl-4.1.4"
+      sources."js-sdsl-4.1.5"
       sources."js-tokens-4.0.0"
       sources."js-yaml-4.1.0"
       sources."json-schema-traverse-0.4.1"
@@ -148119,18 +148246,18 @@ in
       (sources."@npmcli/arborist-4.3.1" // {
         dependencies = [
           sources."mkdirp-1.0.4"
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       (sources."@npmcli/fs-1.1.1" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       (sources."@npmcli/git-2.1.0" // {
         dependencies = [
           sources."mkdirp-1.0.4"
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
           sources."which-2.0.2"
         ];
       })
@@ -148142,7 +148269,7 @@ in
       })
       (sources."@npmcli/metavuln-calculator-2.0.0" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       (sources."@npmcli/move-file-1.1.2" // {
@@ -148242,7 +148369,7 @@ in
       })
       sources."camelcase-2.1.1"
       sources."camelcase-keys-2.1.0"
-      sources."capture-stack-trace-1.0.1"
+      sources."capture-stack-trace-1.0.2"
       sources."caseless-0.12.0"
       sources."chalk-2.4.2"
       sources."chardet-0.7.0"
@@ -148277,7 +148404,7 @@ in
       sources."config-chain-1.1.13"
       sources."configstore-3.1.5"
       sources."console-control-strings-1.1.0"
-      sources."core-js-3.25.3"
+      sources."core-js-3.25.5"
       sources."core-util-is-1.0.3"
       sources."create-error-class-3.0.2"
       sources."cross-spawn-6.0.5"
@@ -148369,7 +148496,7 @@ in
       sources."glob-parent-5.1.2"
       (sources."global-agent-2.2.0" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       sources."global-dirs-0.1.1"
@@ -148591,7 +148718,7 @@ in
           sources."is-fullwidth-code-point-3.0.0"
           sources."npmlog-6.0.2"
           sources."readable-stream-3.6.0"
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
           sources."string-width-4.2.3"
           sources."strip-ansi-6.0.1"
           sources."which-2.0.2"
@@ -148605,7 +148732,7 @@ in
       sources."npm-conf-1.1.3"
       (sources."npm-install-checks-4.0.0" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       (sources."npm-keyword-5.0.0" // {
@@ -148622,7 +148749,7 @@ in
       (sources."npm-package-arg-8.1.5" // {
         dependencies = [
           sources."hosted-git-info-4.1.0"
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       (sources."npm-packlist-3.0.0" // {
@@ -148632,7 +148759,7 @@ in
       })
       (sources."npm-pick-manifest-6.1.1" // {
         dependencies = [
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
         ];
       })
       (sources."npm-registry-fetch-12.0.2" // {
@@ -148652,7 +148779,7 @@ in
           })
           sources."mkdirp-1.0.4"
           sources."ms-2.1.2"
-          (sources."semver-7.3.7" // {
+          (sources."semver-7.3.8" // {
             dependencies = [
               sources."lru-cache-6.0.0"
             ];
@@ -148856,7 +148983,7 @@ in
       sources."signal-exit-3.0.7"
       sources."slash-3.0.0"
       sources."smart-buffer-4.2.0"
-      sources."socks-2.7.0"
+      sources."socks-2.7.1"
       (sources."socks-proxy-agent-6.2.1" // {
         dependencies = [
           sources."debug-4.3.4"
@@ -149032,7 +149159,7 @@ in
         ];
       })
       sources."yeoman-doctor-5.0.0"
-      (sources."yeoman-environment-3.11.1" // {
+      (sources."yeoman-environment-3.12.0" // {
         dependencies = [
           sources."ansi-escapes-4.3.2"
           sources."ansi-regex-5.0.1"
@@ -149073,7 +149200,7 @@ in
           sources."readable-stream-3.6.0"
           sources."restore-cursor-3.1.0"
           sources."rxjs-7.5.7"
-          sources."semver-7.3.7"
+          sources."semver-7.3.8"
           sources."shebang-command-2.0.0"
           sources."shebang-regex-3.0.0"
           sources."string-width-4.2.3"
@@ -149117,10 +149244,10 @@ in
   zx = nodeEnv.buildNodePackage {
     name = "zx";
     packageName = "zx";
-    version = "7.0.8";
+    version = "7.1.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/zx/-/zx-7.0.8.tgz";
-      sha512 = "sNjfDHzskqrSkWNj0TVhaowVK5AbpvuyuO1RBU4+LrFcgYI5u9CtyWWgUBRtRZl3bgGEF31zByszoBmwS47d1w==";
+      url = "https://registry.npmjs.org/zx/-/zx-7.1.1.tgz";
+      sha512 = "5YlTO2AJ+Ku2YuZKSSSqnUKuagcM/f/j4LmHs15O84Ch80Z9gzR09ZK3gR7GV+rc8IFpz2H/XNFtFVmj31yrZA==";
     };
     dependencies = [
       sources."@nodelib/fs.scandir-2.1.5"
@@ -149128,11 +149255,11 @@ in
       sources."@nodelib/fs.walk-1.2.8"
       sources."@types/fs-extra-9.0.13"
       sources."@types/minimist-1.2.2"
-      sources."@types/node-18.7.23"
+      sources."@types/node-18.8.3"
       sources."@types/ps-tree-1.1.2"
       sources."@types/which-2.0.1"
       sources."braces-3.0.2"
-      sources."chalk-5.0.1"
+      sources."chalk-5.1.0"
       sources."data-uri-to-buffer-4.0.0"
       sources."dir-glob-3.0.1"
       sources."duplexer-0.1.2"
@@ -149158,7 +149285,7 @@ in
       sources."micromatch-4.0.5"
       sources."minimist-1.2.6"
       sources."node-domexception-1.0.0"
-      sources."node-fetch-3.2.8"
+      sources."node-fetch-3.2.10"
       sources."path-type-4.0.0"
       sources."pause-stream-0.0.11"
       sources."picomatch-2.3.1"
@@ -149174,7 +149301,7 @@ in
       sources."universalify-2.0.0"
       sources."web-streams-polyfill-3.2.1"
       sources."which-2.0.2"
-      sources."yaml-2.1.1"
+      sources."yaml-2.1.3"
     ];
     buildInputs = globalBuildInputs;
     meta = {
diff --git a/pkgs/development/ocaml-modules/bigstringaf/default.nix b/pkgs/development/ocaml-modules/bigstringaf/default.nix
index de7ca05561340..8ef32fd33ea1c 100644
--- a/pkgs/development/ocaml-modules/bigstringaf/default.nix
+++ b/pkgs/development/ocaml-modules/bigstringaf/default.nix
@@ -2,17 +2,15 @@
 
 buildDunePackage rec {
   pname = "bigstringaf";
-  version = "0.7.0";
+  version = "0.9.0";
 
-  useDune2 = true;
-
-  minimumOCamlVersion = "4.03";
+  minimalOCamlVersion = "4.08";
 
   src = fetchFromGitHub {
     owner = "inhabitedtype";
     repo = pname;
     rev = version;
-    sha256 = "1q1sqxzdnlrpl95ccrhl7lwy3zswgd9rbn19ildclh0lyi2vazbj";
+    sha256 = "sha256-HXPjnE56auy2MI6HV2XuBX/VeqsO50HFzTul17lKEqE=";
   };
 
   # This currently fails with dune
@@ -20,8 +18,7 @@ buildDunePackage rec {
 
   nativeBuildInputs = [ pkg-config ];
   checkInputs = [ alcotest ];
-  propagatedBuildInputs = [ bigarray-compat ];
-  doCheck = lib.versionAtLeast ocaml.version "4.08";
+  doCheck = true;
 
   meta = {
     description = "Bigstring intrinsics and fast blits based on memcpy/memmove";
diff --git a/pkgs/development/ocaml-modules/bls12-381/default.nix b/pkgs/development/ocaml-modules/bls12-381/default.nix
index 0568f89903205..a78132f9ba0b5 100644
--- a/pkgs/development/ocaml-modules/bls12-381/default.nix
+++ b/pkgs/development/ocaml-modules/bls12-381/default.nix
@@ -1,14 +1,17 @@
-{ lib, buildDunePackage, fetchFromGitLab, ff-sig, zarith }:
+{ lib, buildDunePackage, fetchFromGitLab, ff-sig, zarith
+, zarith_stubs_js, integers_stubs_js, integers, hex
+, ff-pbt, bisect_ppx, alcotest
+}:
 
 buildDunePackage rec {
   pname = "bls12-381";
-  version = "1.1.0";
+  version = "3.0.0";
 
   src = fetchFromGitLab {
     owner = "dannywillems";
     repo = "ocaml-bls12-381";
-    rev = "22247018c0651ea62ae898c8ffcc388cc73f758f";
-    sha256 = "ku6Rc+/lwFDoHTZTxgkhiF+kLkagi7944ntcu9vXWgI=";
+    rev = "4bbc7818e9ccd025c5e32006f8a9de370739bc43";
+    sha256 = "/Rw0mQvTfHyPqosWFPv+1FoY5Dwuwv9mB8UYjjHxodE=";
   };
 
   useDune2 = true;
@@ -18,6 +21,16 @@ buildDunePackage rec {
   propagatedBuildInputs = [
     ff-sig
     zarith
+    zarith_stubs_js
+    integers_stubs_js
+    integers
+    hex
+  ];
+
+  checkInputs = [
+    ff-pbt
+    bisect_ppx
+    alcotest
   ];
 
   doCheck = true;
diff --git a/pkgs/development/ocaml-modules/bls12-381/unix.nix b/pkgs/development/ocaml-modules/bls12-381/unix.nix
deleted file mode 100644
index 3ac3bb5d99f24..0000000000000
--- a/pkgs/development/ocaml-modules/bls12-381/unix.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ lib
-, buildDunePackage
-, bls12-381
-, hex
-, integers
-, zarith
-, alcotest
-, bisect_ppx
-, ff-pbt
-}:
-
-buildDunePackage {
-  pname = "bls12-381-unix";
-
-  inherit (bls12-381) version src useDune2 doCheck;
-
-  propagatedBuildInputs = [
-    bls12-381
-    hex
-    integers
-    zarith
-  ];
-
-  checkInputs = [
-    alcotest
-    bisect_ppx
-    ff-pbt
-  ];
-
-  meta = {
-    description = "UNIX version of BLS12-381 primitives implementing the virtual package bls12-381";
-    license = lib.licenses.mit;
-  };
-}
diff --git a/pkgs/development/ocaml-modules/brisk-reconciler/default.nix b/pkgs/development/ocaml-modules/brisk-reconciler/default.nix
index 65d5abd6f4409..925f899995f00 100644
--- a/pkgs/development/ocaml-modules/brisk-reconciler/default.nix
+++ b/pkgs/development/ocaml-modules/brisk-reconciler/default.nix
@@ -27,7 +27,7 @@ buildDunePackage rec {
       * stateful functions: Functions that maintain state over time. Imagine that you can take any variable in your function and manage its value over the function's invocation. Now, imagine that any function invocation really creates its own "instance" of the function which will track this state separately from other invocations of this function.
     '';
     homepage = "https://github.com/briskml/brisk-reconciler";
-    maintainers = with maintainers; [ superherointj ];
+    maintainers = with maintainers; [ ];
     license = licenses.mit;
   };
 }
diff --git a/pkgs/development/ocaml-modules/caqti/async.nix b/pkgs/development/ocaml-modules/caqti/async.nix
index 0e0da6a94bb76..1486947707772 100644
--- a/pkgs/development/ocaml-modules/caqti/async.nix
+++ b/pkgs/development/ocaml-modules/caqti/async.nix
@@ -2,7 +2,6 @@
 
 buildDunePackage {
   pname = "caqti-async";
-  useDune2 = true;
   inherit (caqti) version src;
 
   propagatedBuildInputs = [ async_kernel async_unix caqti core_kernel ];
diff --git a/pkgs/development/ocaml-modules/caqti/default.nix b/pkgs/development/ocaml-modules/caqti/default.nix
index 510437f1c3bc8..5edb68d30cfad 100644
--- a/pkgs/development/ocaml-modules/caqti/default.nix
+++ b/pkgs/development/ocaml-modules/caqti/default.nix
@@ -1,19 +1,16 @@
-{ lib, fetchFromGitHub, buildDunePackage, ocaml
+{ lib, fetchurl, buildDunePackage, ocaml
 , cppo, logs, ptime, uri, bigstringaf
 , re, cmdliner, alcotest }:
 
 buildDunePackage rec {
   pname = "caqti";
-  version = "1.8.0";
-  useDune2 = true;
+  version = "1.9.1";
 
-  minimumOCamlVersion = "4.04";
+  minimalOCamlVersion = "4.04";
 
-  src = fetchFromGitHub {
-    owner = "paurkedal";
-    repo = "ocaml-${pname}";
-    rev = "v${version}";
-    sha256 = "sha256-8uKlrq9j1Z3QzkCyoRIn2j6wCdGyo7BY7XlbFHN1xVE=";
+  src = fetchurl {
+    url = "https://github.com/paurkedal/ocaml-caqti/releases/download/v${version}/caqti-v${version}.tbz";
+    sha256 = "sha256-PQBgJBNx3IcE6/vyNIf26a2xStU22LBhff8eM6UPaJ4=";
   };
 
   nativeBuildInputs = [ cppo ];
diff --git a/pkgs/development/ocaml-modules/caqti/driver-mariadb.nix b/pkgs/development/ocaml-modules/caqti/driver-mariadb.nix
index 5f4f681540e9a..bff515eff381e 100644
--- a/pkgs/development/ocaml-modules/caqti/driver-mariadb.nix
+++ b/pkgs/development/ocaml-modules/caqti/driver-mariadb.nix
@@ -2,7 +2,6 @@
 
 buildDunePackage {
   pname = "caqti-driver-mariadb";
-  useDune2 = true;
   inherit (caqti) version src;
 
   propagatedBuildInputs = [ caqti mariadb ];
diff --git a/pkgs/development/ocaml-modules/caqti/driver-postgresql.nix b/pkgs/development/ocaml-modules/caqti/driver-postgresql.nix
index a1b427a5edf43..f33e38fab8df2 100644
--- a/pkgs/development/ocaml-modules/caqti/driver-postgresql.nix
+++ b/pkgs/development/ocaml-modules/caqti/driver-postgresql.nix
@@ -2,7 +2,6 @@
 
 buildDunePackage {
   pname = "caqti-driver-postgresql";
-  useDune2 = true;
   inherit (caqti) version src;
 
   propagatedBuildInputs = [ caqti postgresql ];
diff --git a/pkgs/development/ocaml-modules/caqti/driver-sqlite3.nix b/pkgs/development/ocaml-modules/caqti/driver-sqlite3.nix
index 5282ba5ef5056..822c002a8de31 100644
--- a/pkgs/development/ocaml-modules/caqti/driver-sqlite3.nix
+++ b/pkgs/development/ocaml-modules/caqti/driver-sqlite3.nix
@@ -2,7 +2,6 @@
 
 buildDunePackage {
   pname = "caqti-driver-sqlite3";
-  useDune2 = true;
   inherit (caqti) version src;
 
   propagatedBuildInputs = [ caqti ocaml_sqlite3 ];
diff --git a/pkgs/development/ocaml-modules/caqti/dynload.nix b/pkgs/development/ocaml-modules/caqti/dynload.nix
index 6ed86683728b5..8e6a30a1a3129 100644
--- a/pkgs/development/ocaml-modules/caqti/dynload.nix
+++ b/pkgs/development/ocaml-modules/caqti/dynload.nix
@@ -2,7 +2,6 @@
 
 buildDunePackage {
   pname = "caqti-dynload";
-  useDune2 = true;
   inherit (caqti) version src;
 
   propagatedBuildInputs = [ caqti ];
diff --git a/pkgs/development/ocaml-modules/caqti/lwt.nix b/pkgs/development/ocaml-modules/caqti/lwt.nix
index f02fa377f806b..d06421136280f 100644
--- a/pkgs/development/ocaml-modules/caqti/lwt.nix
+++ b/pkgs/development/ocaml-modules/caqti/lwt.nix
@@ -2,7 +2,6 @@
 
 buildDunePackage {
   pname = "caqti-lwt";
-  useDune2 = true;
   inherit (caqti) version src;
 
   propagatedBuildInputs = [ caqti logs lwt ];
diff --git a/pkgs/development/ocaml-modules/caqti/type-calendar.nix b/pkgs/development/ocaml-modules/caqti/type-calendar.nix
index d2050e2cf4743..26b0887f20e8a 100644
--- a/pkgs/development/ocaml-modules/caqti/type-calendar.nix
+++ b/pkgs/development/ocaml-modules/caqti/type-calendar.nix
@@ -2,9 +2,7 @@
 
 buildDunePackage {
   pname = "caqti-type-calendar";
-  version = "1.2.0";
-  useDune2 = true;
-  inherit (caqti) src;
+  inherit (caqti) src version;
 
   propagatedBuildInputs = [ calendar caqti ];
 
diff --git a/pkgs/development/ocaml-modules/carton/default.nix b/pkgs/development/ocaml-modules/carton/default.nix
index 6868ddc7851c9..13c5089d822b8 100644
--- a/pkgs/development/ocaml-modules/carton/default.nix
+++ b/pkgs/development/ocaml-modules/carton/default.nix
@@ -1,20 +1,19 @@
 { lib, buildDunePackage, fetchurl
-, ke, duff, decompress, cstruct, optint, bigstringaf, stdlib-shims
-, bigarray-compat, checkseum, logs, psq, fmt
-, result, rresult, fpath, base64, bos, digestif, mmap, alcotest
+, ke, duff, decompress, cstruct, optint, bigstringaf
+, checkseum, logs, psq, fmt
+, result, rresult, fpath, base64, bos, digestif, alcotest
 , crowbar, alcotest-lwt, lwt, findlib, mirage-flow, cmdliner, hxd
 }:
 
 buildDunePackage rec {
   pname = "carton";
-  version = "0.4.3";
+  version = "0.4.4";
 
-  useDune2 = true;
   minimalOCamlVersion = "4.08";
 
   src = fetchurl {
-    url = "https://github.com/mirage/ocaml-git/releases/download/${pname}-v${version}/${pname}-${pname}-v${version}.tbz";
-    sha256 = "sha256:0qz9ds5761wx4m7ly3av843b6dii7lmjpx2nnyijv8rm8aw95jgr";
+    url = "https://github.com/mirage/ocaml-git/releases/download/${pname}-v${version}/git-${pname}-v${version}.tbz";
+    sha256 = "sha256-7mgCgu87Cn4XhjEhonlz9lhgTw0Cu5hnxNJ1wXr+Qhw=";
   };
 
   # remove changelogs for mimic and the git* packages
@@ -25,7 +24,6 @@ buildDunePackage rec {
   buildInputs = [
     cmdliner
     digestif
-    mmap
     result
     rresult
     fpath
@@ -39,8 +37,6 @@ buildDunePackage rec {
     cstruct
     optint
     bigstringaf
-    stdlib-shims
-    bigarray-compat
     checkseum
     logs
     psq
diff --git a/pkgs/development/ocaml-modules/carton/git.nix b/pkgs/development/ocaml-modules/carton/git.nix
index 4f7c880ae065f..2cc6b1336de29 100644
--- a/pkgs/development/ocaml-modules/carton/git.nix
+++ b/pkgs/development/ocaml-modules/carton/git.nix
@@ -8,7 +8,7 @@
 buildDunePackage {
   pname = "carton-git";
 
-  inherit (carton) version src useDune2 postPatch;
+  inherit (carton) version src postPatch;
 
   propagatedBuildInputs = [
     carton
diff --git a/pkgs/development/ocaml-modules/carton/lwt.nix b/pkgs/development/ocaml-modules/carton/lwt.nix
index 17ba5dddf24e5..2aeee63dbf1ea 100644
--- a/pkgs/development/ocaml-modules/carton/lwt.nix
+++ b/pkgs/development/ocaml-modules/carton/lwt.nix
@@ -10,7 +10,7 @@
 buildDunePackage {
   pname = "carton-lwt";
 
-  inherit (carton) version src useDune2 postPatch;
+  inherit (carton) version src postPatch;
 
   propagatedBuildInputs = [
     carton
diff --git a/pkgs/development/ocaml-modules/cstruct/async.nix b/pkgs/development/ocaml-modules/cstruct/async.nix
index 579f12776c086..57647c97c4165 100644
--- a/pkgs/development/ocaml-modules/cstruct/async.nix
+++ b/pkgs/development/ocaml-modules/cstruct/async.nix
@@ -1,11 +1,13 @@
-{ lib, buildDunePackage, cstruct, async_unix }:
+{ lib, buildDunePackage, cstruct, async_unix, async, core }:
 
 buildDunePackage rec {
   pname = "cstruct-async";
-  inherit (cstruct) src version meta useDune2;
+  inherit (cstruct) src version meta;
 
   propagatedBuildInputs = [
     async_unix
+    async
     cstruct
+    core
   ];
 }
diff --git a/pkgs/development/ocaml-modules/cstruct/default.nix b/pkgs/development/ocaml-modules/cstruct/default.nix
index a4d963af65241..9efe75af70c9a 100644
--- a/pkgs/development/ocaml-modules/cstruct/default.nix
+++ b/pkgs/development/ocaml-modules/cstruct/default.nix
@@ -1,23 +1,20 @@
-{ lib, fetchurl, buildDunePackage, bigarray-compat, alcotest, ocaml }:
+{ lib, fetchurl, buildDunePackage, fmt, alcotest, crowbar }:
 
 buildDunePackage rec {
   pname = "cstruct";
-  version = "6.0.1";
+  version = "6.1.1";
 
-  useDune2 = true;
-
-  minimumOCamlVersion = "4.03";
+  minimalOCamlVersion = "4.08";
 
   src = fetchurl {
-    url = "https://github.com/mirage/ocaml-cstruct/releases/download/v${version}/cstruct-v${version}.tbz";
-    sha256 = "4a67bb8f042753453c59eabf0e47865631253ba694091ce6062aac05d47a9bed";
+    url = "https://github.com/mirage/ocaml-cstruct/releases/download/v${version}/cstruct-${version}.tbz";
+    sha256 = "sha256-G3T5hw9qfuYAiSRZBxbdUzpyijyhC7GNqf6ovkZ/UY0=";
   };
 
-  propagatedBuildInputs = [ bigarray-compat ];
+  buildInputs = [ fmt ];
 
-  # alcotest isn't available for OCaml < 4.08 due to fmt
-  doCheck = lib.versionAtLeast ocaml.version "4.08";
-  checkInputs = [ alcotest ];
+  doCheck = true;
+  checkInputs = [ alcotest crowbar ];
 
   meta = {
     description = "Access C-like structures directly from OCaml";
diff --git a/pkgs/development/ocaml-modules/cstruct/lwt.nix b/pkgs/development/ocaml-modules/cstruct/lwt.nix
index 60e73449264fb..7226193565b19 100644
--- a/pkgs/development/ocaml-modules/cstruct/lwt.nix
+++ b/pkgs/development/ocaml-modules/cstruct/lwt.nix
@@ -4,11 +4,11 @@ if lib.versionOlder (cstruct.version or "1") "3"
 then cstruct
 else
 
-buildDunePackage {
-  pname = "cstruct-lwt";
-  inherit (cstruct) version src useDune2 meta;
+  buildDunePackage {
+    pname = "cstruct-lwt";
+    inherit (cstruct) version src meta;
 
-  minimumOCamlVersion = "4.03";
+    minimalOCamlVersion = "4.08";
 
-  propagatedBuildInputs = [ cstruct lwt ];
-}
+    propagatedBuildInputs = [ cstruct lwt ];
+  }
diff --git a/pkgs/development/ocaml-modules/cstruct/ppx.nix b/pkgs/development/ocaml-modules/cstruct/ppx.nix
index 6705602ef25bf..a808a01153cc6 100644
--- a/pkgs/development/ocaml-modules/cstruct/ppx.nix
+++ b/pkgs/development/ocaml-modules/cstruct/ppx.nix
@@ -8,7 +8,7 @@ else
 
 buildDunePackage {
   pname = "ppx_cstruct";
-  inherit (cstruct) version src useDune2 meta;
+  inherit (cstruct) version src meta;
 
   minimalOCamlVersion = "4.08";
 
diff --git a/pkgs/development/ocaml-modules/cstruct/sexp.nix b/pkgs/development/ocaml-modules/cstruct/sexp.nix
index a9fe7091a1edb..a20911cbb299c 100644
--- a/pkgs/development/ocaml-modules/cstruct/sexp.nix
+++ b/pkgs/development/ocaml-modules/cstruct/sexp.nix
@@ -6,12 +6,11 @@ else
 
 buildDunePackage rec {
   pname = "cstruct-sexp";
-  inherit (cstruct) version src useDune2 meta;
+  inherit (cstruct) version src meta;
 
-  minimumOCamlVersion = "4.03";
+  minimalOCamlVersion = "4.08";
 
-  # alcotest is only available on OCaml >= 4.08 due to fmt
-  doCheck = lib.versionAtLeast ocaml.version "4.08";
+  doCheck = true;
   checkInputs = [ alcotest ];
 
   propagatedBuildInputs = [ cstruct sexplib ];
diff --git a/pkgs/development/ocaml-modules/cstruct/unix.nix b/pkgs/development/ocaml-modules/cstruct/unix.nix
index c3d280d785abc..064bdadb32851 100644
--- a/pkgs/development/ocaml-modules/cstruct/unix.nix
+++ b/pkgs/development/ocaml-modules/cstruct/unix.nix
@@ -4,11 +4,11 @@ if lib.versionOlder (cstruct.version or "1") "3"
 then cstruct
 else
 
-buildDunePackage {
-  pname = "cstruct-unix";
-  inherit (cstruct) version src useDune2 meta;
+  buildDunePackage {
+    pname = "cstruct-unix";
+    inherit (cstruct) version src meta;
 
-  minimumOCamlVersion = "4.06";
+    minimalOCamlVersion = "4.08";
 
-  propagatedBuildInputs = [ cstruct ];
-}
+    propagatedBuildInputs = [ cstruct ];
+  }
diff --git a/pkgs/development/ocaml-modules/data-encoding/default.nix b/pkgs/development/ocaml-modules/data-encoding/default.nix
index f7036d38d3885..7bd01ff831572 100644
--- a/pkgs/development/ocaml-modules/data-encoding/default.nix
+++ b/pkgs/development/ocaml-modules/data-encoding/default.nix
@@ -1,30 +1,36 @@
 { lib
 , fetchFromGitLab
 , buildDunePackage
+, ppx_hash
+, either
 , ezjsonm
 , zarith
+, zarith_stubs_js
 , hex
 , json-data-encoding
 , json-data-encoding-bson
 , alcotest
 , crowbar
+, ppx_expect
 }:
 
 buildDunePackage {
   pname = "data-encoding";
-  version = "0.4.0";
+  version = "0.5.3";
 
   src = fetchFromGitLab {
     owner = "nomadic-labs";
     repo = "data-encoding";
-    rev = "v0.4";
-    sha256 = "1f88l9azpfk730hps5v6zlg4yyyyhj1gl27qy3cbbkzjc82d2rhx";
+    rev = "v0.5.3";
+    sha256 = "sha256-HMNpjh5x7vU/kXQNRjJtOvShEENoNuxjNNPBJfm+Rhg=";
   };
-  useDune2 = true;
 
   propagatedBuildInputs = [
+    either
     ezjsonm
+    ppx_hash
     zarith
+    zarith_stubs_js
     hex
     json-data-encoding
     json-data-encoding-bson
@@ -33,6 +39,7 @@ buildDunePackage {
   checkInputs = [
     alcotest
     crowbar
+    ppx_expect
   ];
 
   doCheck = true;
diff --git a/pkgs/development/ocaml-modules/decompress/default.nix b/pkgs/development/ocaml-modules/decompress/default.nix
index 4b5d2e0208fd8..30e7391f8c3a7 100644
--- a/pkgs/development/ocaml-modules/decompress/default.nix
+++ b/pkgs/development/ocaml-modules/decompress/default.nix
@@ -1,25 +1,23 @@
-{ lib, fetchurl, buildDunePackage, ocaml
-, checkseum, bigarray-compat, optint, cmdliner
-, bigstringaf, alcotest, camlzip, base64, ctypes, fmt
+{ lib, fetchurl, buildDunePackage
+, checkseum, optint, cmdliner
+, bigstringaf, alcotest, camlzip, base64, ctypes, fmt, crowbar, rresult
 }:
 
 buildDunePackage rec {
-  version = "1.4.2";
   pname = "decompress";
+  version = "1.5.1";
 
-  minimumOCamlVersion = "4.07";
-
-  useDune2 = true;
+  minimalOCamlVersion = "4.08";
 
   src = fetchurl {
-    url = "https://github.com/mirage/decompress/releases/download/v${version}/decompress-v${version}.tbz";
-    sha256 = "822f125b46c87f4a902c334db8c86d4d5f33ebe978e93c40351a4d3269b95225";
+    url = "https://github.com/mirage/decompress/releases/download/v${version}/decompress-${version}.tbz";
+    sha256 = "sha256-y/OVojFxhksJQQvvtS38SF7ZnMEQhAtwDey0ISwypP4=";
   };
 
   buildInputs = [ cmdliner ];
-  propagatedBuildInputs = [ optint bigarray-compat checkseum ];
-  checkInputs = [ alcotest bigstringaf ctypes fmt camlzip base64 ];
-  doCheck = lib.versionAtLeast ocaml.version "4.08";
+  propagatedBuildInputs = [ optint checkseum ];
+  checkInputs = [ alcotest bigstringaf ctypes fmt camlzip base64 crowbar rresult ];
+  doCheck = true;
 
   meta = {
     description = "Pure OCaml implementation of Zlib";
diff --git a/pkgs/development/ocaml-modules/ffmpeg/base.nix b/pkgs/development/ocaml-modules/ffmpeg/base.nix
index 212ad686e356a..e7b6d76967247 100644
--- a/pkgs/development/ocaml-modules/ffmpeg/base.nix
+++ b/pkgs/development/ocaml-modules/ffmpeg/base.nix
@@ -1,7 +1,7 @@
 { lib, fetchFromGitHub }:
 
 rec {
-  version = "1.1.4";
+  version = "1.1.6";
 
   useDune2 = true;
 
@@ -9,7 +9,7 @@ rec {
     owner = "savonet";
     repo = "ocaml-ffmpeg";
     rev = "v${version}";
-    sha256 = "sha256-IM7bzOZAZQjLz4YjRTMU5fZgrA2QTZcSDMgclDo4sn0=";
+    sha256 = "sha256-NlWmt98QwuGFNP8FHnAR3C0DIiSfJ1ZJXeVFFZiOSXs=";
   };
 
   meta = with lib; {
diff --git a/pkgs/development/ocaml-modules/flex/default.nix b/pkgs/development/ocaml-modules/flex/default.nix
index c9db2440e01cd..b8a56d5224fca 100644
--- a/pkgs/development/ocaml-modules/flex/default.nix
+++ b/pkgs/development/ocaml-modules/flex/default.nix
@@ -16,7 +16,7 @@ buildDunePackage rec {
   meta = with lib; {
     description = "Native Reason implementation of CSS Flexbox layout. An Yoga project port";
     homepage = "https://github.com/jordwalke/flex";
-    maintainers = with maintainers; [ superherointj ];
+    maintainers = with maintainers; [ ];
     license = licenses.mit;
   };
 }
diff --git a/pkgs/development/ocaml-modules/git/cohttp-unix.nix b/pkgs/development/ocaml-modules/git/cohttp-unix.nix
deleted file mode 100644
index ac6d423d58ae4..0000000000000
--- a/pkgs/development/ocaml-modules/git/cohttp-unix.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ buildDunePackage, git, git-cohttp
-, cohttp-lwt-unix, cohttp-lwt, fmt, lwt, result, rresult, uri
-}:
-
-buildDunePackage {
-  pname = "git-cohttp-unix";
-
-  inherit (git) version src minimumOCamlVersion useDune2;
-
-  propagatedBuildInputs = [
-    git git-cohttp cohttp-lwt-unix cohttp-lwt fmt lwt result rresult uri
-  ];
-
-  meta = git.meta // {
-    description = "A package to use HTTP-based ocaml-git with Unix backend";
-  };
-}
diff --git a/pkgs/development/ocaml-modules/git/cohttp.nix b/pkgs/development/ocaml-modules/git/cohttp.nix
deleted file mode 100644
index e9126ba4becec..0000000000000
--- a/pkgs/development/ocaml-modules/git/cohttp.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{ buildDunePackage, git
-, cohttp, cohttp-lwt, fmt, lwt, result, rresult, uri
-, alcotest, alcotest-lwt, bigstringaf, cstruct, logs
-, mirage-flow, ke
-}:
-
-buildDunePackage rec {
-  pname = "git-cohttp";
-
-  inherit (git) version minimumOCamlVersion src useDune2;
-
-  propagatedBuildInputs = [
-    git cohttp cohttp-lwt fmt lwt result rresult uri
-  ];
-
-  meta = git.meta // {
-    description = "A package to use HTTP-based ocaml-git with Unix backend";
-  };
-}
diff --git a/pkgs/development/ocaml-modules/git/default.nix b/pkgs/development/ocaml-modules/git/default.nix
index b359a397f313e..1e886e94dd163 100644
--- a/pkgs/development/ocaml-modules/git/default.nix
+++ b/pkgs/development/ocaml-modules/git/default.nix
@@ -1,21 +1,20 @@
 { stdenv, lib, fetchurl, buildDunePackage
-, alcotest, mtime, mirage-crypto-rng, tls, git-binary
-, angstrom, astring, cstruct, decompress, digestif, encore, duff, fmt, checkseum
+, alcotest, mirage-crypto-rng, git-binary
+, angstrom, astring, cstruct, decompress, digestif, encore, fmt, checkseum
 , fpath, ke, logs, lwt, ocamlgraph, uri, rresult, base64, hxd
 , result, bigstringaf, optint, mirage-flow, domain-name, emile
-, mimic, carton, carton-lwt, carton-git, ipaddr, psq, crowbar, alcotest-lwt
+, mimic, carton, carton-lwt, carton-git, ipaddr, psq, crowbar, alcotest-lwt, cmdliner
 }:
 
 buildDunePackage rec {
   pname = "git";
-  version = "3.5.0";
+  version = "3.9.1";
 
-  minimumOCamlVersion = "4.08";
-  useDune2 = true;
+  minimalOCamlVersion = "4.08";
 
   src = fetchurl {
     url = "https://github.com/mirage/ocaml-git/releases/download/${version}/git-${version}.tbz";
-    sha256 = "bcd5a0aef9957193cbaeeb17c22201e5ca4e815e67bbc696e88efdb38c25ec03";
+    sha256 = "sha256-OyeMW5gsq4fMEWRmhzPq2qardFZtMjoQk6mMKz5+Ds4=";
   };
 
   # remove changelog for the carton package
@@ -27,12 +26,12 @@ buildDunePackage rec {
     base64
   ];
   propagatedBuildInputs = [
-    angstrom astring checkseum cstruct decompress digestif encore duff fmt fpath
+    angstrom astring checkseum cstruct decompress digestif encore fmt fpath
     ke logs lwt ocamlgraph uri rresult result bigstringaf optint mirage-flow
     domain-name emile mimic carton carton-lwt carton-git ipaddr psq hxd
   ];
   checkInputs = [
-    alcotest alcotest-lwt mtime mirage-crypto-rng tls git-binary crowbar
+    alcotest alcotest-lwt mirage-crypto-rng git-binary crowbar cmdliner
   ];
   doCheck = !stdenv.isAarch64;
 
diff --git a/pkgs/development/ocaml-modules/git/mirage.nix b/pkgs/development/ocaml-modules/git/mirage.nix
new file mode 100644
index 0000000000000..e7398d0d1dac6
--- /dev/null
+++ b/pkgs/development/ocaml-modules/git/mirage.nix
@@ -0,0 +1,95 @@
+{ lib, buildDunePackage
+, git
+, mimic
+, mimic-happy-eyeballs
+, base64
+, git-paf
+, awa
+, awa-mirage
+, dns
+, dns-client
+, tls
+, tls-mirage
+, uri
+, hex
+, happy-eyeballs-mirage
+, happy-eyeballs
+, ca-certs-nss
+, mirage-crypto
+, ptime
+, x509
+, cstruct
+, tcpip
+, domain-name
+, fmt
+, ipaddr
+, lwt
+, mirage-clock
+, mirage-flow
+, mirage-random
+, mirage-time
+, result
+, rresult
+, alcotest
+, alcotest-lwt
+, bigstringaf
+, logs
+, ke
+}:
+
+buildDunePackage {
+  pname = "git-mirage";
+
+  inherit (git) version src;
+
+  minimalOCamlVersion = "4.08";
+
+  buildInputs = [
+    dns
+    dns-client
+    happy-eyeballs-mirage
+    ipaddr
+    mirage-random
+    rresult
+  ];
+
+  propagatedBuildInputs = [
+    git
+    mimic
+    mimic-happy-eyeballs
+    base64
+    git-paf
+    awa
+    awa-mirage
+    tls
+    tls-mirage
+    uri
+    hex
+    happy-eyeballs
+    ca-certs-nss
+    mirage-crypto
+    ptime
+    x509
+    cstruct
+    tcpip
+    domain-name
+    fmt
+    lwt
+    mirage-clock
+    mirage-flow
+    mirage-time
+    result
+  ];
+
+  checkInputs = [
+    alcotest
+    alcotest-lwt
+    bigstringaf
+    logs
+    ke
+  ];
+
+  meta = git.meta // {
+    description = "A package to use ocaml-git with MirageOS backend";
+  };
+}
diff --git a/pkgs/development/ocaml-modules/git/paf.nix b/pkgs/development/ocaml-modules/git/paf.nix
index 9db8c872798e3..476364a52fb95 100644
--- a/pkgs/development/ocaml-modules/git/paf.nix
+++ b/pkgs/development/ocaml-modules/git/paf.nix
@@ -8,7 +8,6 @@
 , logs
 , lwt
 , mirage-clock
-, mirage-stack
 , mirage-time
 , result
 , rresult
@@ -25,7 +24,9 @@
 buildDunePackage {
   pname = "git-paf";
 
-  inherit (git) version src minimumOCamlVersion useDune2;
+  inherit (git) version src;
+
+  minimalOCamlVersion = "4.08";
 
   propagatedBuildInputs = [
     git
@@ -39,7 +40,6 @@ buildDunePackage {
     ipaddr
     logs
     mirage-clock
-    mirage-stack
     mirage-time
     tls
     uri
diff --git a/pkgs/development/ocaml-modules/git/unix.nix b/pkgs/development/ocaml-modules/git/unix.nix
index 91f33d7eeb02c..bd2e6f31848ac 100644
--- a/pkgs/development/ocaml-modules/git/unix.nix
+++ b/pkgs/development/ocaml-modules/git/unix.nix
@@ -1,37 +1,38 @@
 { buildDunePackage, git
-, mmap, rresult, result, bigstringaf
-, fmt, bos, fpath, uri, digestif, logs, lwt, git-cohttp-unix
+, rresult, result, bigstringaf
+, fmt, bos, fpath, uri, digestif, logs, lwt
 , mirage-clock, mirage-clock-unix, astring, awa, cmdliner
-, cohttp-lwt-unix, decompress, domain-name, ipaddr, mtime
-, tcpip, awa-mirage, mirage-flow
+, decompress, domain-name, ipaddr, mtime
+, tcpip, awa-mirage, mirage-flow, mirage-unix
 , alcotest, alcotest-lwt, base64, cstruct
 , ke, mirage-crypto-rng, ocurl, git-binary
 , ptime, mimic, ca-certs-nss, tls, tls-mirage
-, cacert
+, cacert, happy-eyeballs-lwt, git-mirage
 }:
 
 buildDunePackage {
   pname = "git-unix";
-  inherit (git) version src minimumOCamlVersion;
+  inherit (git) version src;
 
-  useDune2 = true;
+  minimalOCamlVersion = "4.08";
 
   buildInputs = [
-    awa awa-mirage cmdliner git-cohttp-unix
-    mirage-clock mirage-clock-unix tcpip
+    awa awa-mirage cmdliner
+    mirage-clock tcpip
   ];
   propagatedBuildInputs = [
-    mmap rresult result bigstringaf
-    fmt bos fpath uri digestif logs lwt
-    astring cohttp-lwt-unix decompress
-    domain-name ipaddr mtime mirage-flow
+    rresult result bigstringaf
+    fmt bos fpath digestif logs lwt
+    astring decompress
+    domain-name ipaddr mirage-flow mirage-unix
     cstruct ptime mimic ca-certs-nss
-    tls tls-mirage git
+    tls tls-mirage git happy-eyeballs-lwt
+    git-mirage mirage-clock-unix
   ];
   checkInputs = [
     alcotest alcotest-lwt base64 ke
     mirage-crypto-rng git-binary
-    cohttp-lwt-unix
+    uri mtime
     cacert # sets up NIX_SSL_CERT_FILE
   ];
   doCheck = true;
@@ -39,7 +40,5 @@ buildDunePackage {
   meta = {
     description = "Unix backend for the Git protocol(s)";
     inherit (git.meta) homepage license maintainers;
-    # Not compatible with cmdliner ≥ 1.1
-    broken = true;
   };
 }
diff --git a/pkgs/development/ocaml-modules/gsl/default.nix b/pkgs/development/ocaml-modules/gsl/default.nix
index eacdda27f435f..4588d0c04b047 100644
--- a/pkgs/development/ocaml-modules/gsl/default.nix
+++ b/pkgs/development/ocaml-modules/gsl/default.nix
@@ -13,7 +13,8 @@ buildDunePackage rec {
     sha256 = "1mpzcgbrha2l8iikqbmn32668v2mnnsykxg5n5jgs0qnskn2nvrn";
   };
 
-  buildInputs = [ dune-configurator gsl pkg-config ];
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ dune-configurator gsl ];
   propagatedBuildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Accelerate ];
 
   meta = with lib; {
diff --git a/pkgs/development/ocaml-modules/irmin/chunk.nix b/pkgs/development/ocaml-modules/irmin/chunk.nix
index 0014bbbcfcb04..59bd81544945a 100644
--- a/pkgs/development/ocaml-modules/irmin/chunk.nix
+++ b/pkgs/development/ocaml-modules/irmin/chunk.nix
@@ -1,11 +1,11 @@
-{ lib, buildDunePackage, irmin, irmin-test, alcotest }:
+{ lib, buildDunePackage, irmin, irmin-test, fmt, logs, lwt, alcotest }:
 
 buildDunePackage rec {
 
   pname = "irmin-chunk";
-  inherit (irmin) version src useDune2;
+  inherit (irmin) version src strictDeps;
 
-  propagatedBuildInputs = [ irmin ];
+  propagatedBuildInputs = [ irmin fmt logs lwt ];
 
   doCheck = true;
   checkInputs = [ alcotest irmin-test ];
diff --git a/pkgs/development/ocaml-modules/irmin/containers.nix b/pkgs/development/ocaml-modules/irmin/containers.nix
index 76383099a41d7..547ec4105263a 100644
--- a/pkgs/development/ocaml-modules/irmin/containers.nix
+++ b/pkgs/development/ocaml-modules/irmin/containers.nix
@@ -1,19 +1,19 @@
 { buildDunePackage
-, irmin, irmin-unix, irmin-git, ppx_irmin, lwt, mtime
+, irmin, irmin-fs, ppx_irmin, lwt, mtime
 , alcotest, alcotest-lwt, cacert
 }:
 
 buildDunePackage {
   pname = "irmin-containers";
 
-  inherit (ppx_irmin) src version useDune2;
+  inherit (ppx_irmin) src version strictDeps;
 
   nativeBuildInputs = [
     ppx_irmin
   ];
 
   propagatedBuildInputs = [
-    irmin irmin-unix irmin-git ppx_irmin lwt mtime
+    irmin irmin-fs ppx_irmin lwt mtime
   ];
 
   doCheck = true;
diff --git a/pkgs/development/ocaml-modules/irmin/default.nix b/pkgs/development/ocaml-modules/irmin/default.nix
index 447024f6e120c..66b572f576d62 100644
--- a/pkgs/development/ocaml-modules/irmin/default.nix
+++ b/pkgs/development/ocaml-modules/irmin/default.nix
@@ -1,33 +1,41 @@
 { lib, buildDunePackage
 , astring, digestif, fmt, jsonm, logs, ocaml_lwt, ocamlgraph, uri
-, repr, ppx_irmin, bheap, uutf
+, repr, ppx_irmin, bheap, uutf, mtime, lwt, optint
+, vector, hex, alcotest, qcheck-alcotest
 }:
 
 buildDunePackage {
   pname = "irmin";
 
-  inherit (ppx_irmin) src version;
+  inherit (ppx_irmin) src version strictDeps;
 
-  useDune2 = true;
-  minimumOCamlVersion = "4.08";
+  minimalOCamlVersion = "4.08";
 
   propagatedBuildInputs = [
     astring
+    bheap
     digestif
     fmt
     jsonm
     logs
-    ocaml_lwt
+    lwt
+    mtime
     ocamlgraph
-    uri
-    repr
-    bheap
+    optint
     ppx_irmin
+    repr
+    uri
     uutf
   ];
 
-  # circular dependency on irmin-mem
-  doCheck = false;
+  checkInputs = [
+    vector
+    hex
+    alcotest
+    qcheck-alcotest
+  ];
+
+  doCheck = true;
 
   meta = ppx_irmin.meta // {
     description = "A distributed database built on the same principles as Git";
diff --git a/pkgs/development/ocaml-modules/irmin/fs.nix b/pkgs/development/ocaml-modules/irmin/fs.nix
index 0e9596751b82b..54483d39b7e67 100644
--- a/pkgs/development/ocaml-modules/irmin/fs.nix
+++ b/pkgs/development/ocaml-modules/irmin/fs.nix
@@ -1,16 +1,15 @@
-{ lib, buildDunePackage, irmin, irmin-test }:
+{ lib, buildDunePackage, irmin, astring, logs, lwt
+, alcotest, irmin-test, irmin-watcher }:
 
 buildDunePackage rec {
 
   pname = "irmin-fs";
 
-  inherit (irmin) version src;
+  inherit (irmin) version src strictDeps;
 
-  propagatedBuildInputs = [ irmin ];
+  propagatedBuildInputs = [ irmin astring logs lwt ];
 
-  useDune2 = true;
-
-  checkInputs = lib.optional doCheck irmin-test;
+  checkInputs = [ alcotest irmin-test irmin-watcher ];
 
   doCheck = true;
 
@@ -19,5 +18,3 @@ buildDunePackage rec {
   };
 
 }
-
-
diff --git a/pkgs/development/ocaml-modules/irmin/git.nix b/pkgs/development/ocaml-modules/irmin/git.nix
index d477c932928ee..387fc60a0aa9b 100644
--- a/pkgs/development/ocaml-modules/irmin/git.nix
+++ b/pkgs/development/ocaml-modules/irmin/git.nix
@@ -1,16 +1,15 @@
 { lib, buildDunePackage
-, git, irmin, irmin-test, ppx_irmin, git-cohttp-unix, git-unix
+, git, irmin, ppx_irmin, git-unix, irmin-watcher
 , digestif, cstruct, fmt, astring, fpath, logs, lwt, uri
-, mtime, alcotest, cacert
+, cohttp-lwt-unix, mimic
+, irmin-test, mtime, alcotest, cacert
 }:
 
 buildDunePackage {
 
   pname = "irmin-git";
 
-  inherit (irmin) version src;
-
-  useDune2 = true;
+  inherit (irmin) version src strictDeps;
 
   propagatedBuildInputs = [
     git
@@ -24,9 +23,13 @@ buildDunePackage {
     logs
     lwt
     uri
+    irmin-watcher
+    git-unix
+    mimic
+    cohttp-lwt-unix
   ];
 
-  checkInputs = [ mtime alcotest git-cohttp-unix git-unix irmin-test cacert ];
+  checkInputs = [ mtime alcotest irmin-test cacert ];
 
   doCheck = true;
 
diff --git a/pkgs/development/ocaml-modules/irmin/graphql.nix b/pkgs/development/ocaml-modules/irmin/graphql.nix
index 3074cfd368e1b..1b5ecb51396fb 100644
--- a/pkgs/development/ocaml-modules/irmin/graphql.nix
+++ b/pkgs/development/ocaml-modules/irmin/graphql.nix
@@ -1,5 +1,5 @@
-{ lib, buildDunePackage, cohttp-lwt, graphql-cohttp, graphql-lwt, irmin
-, alcotest, alcotest-lwt, logs, yojson, cohttp-lwt-unix, cacert
+{ lib, buildDunePackage, cohttp-lwt, cohttp-lwt-unix, graphql-cohttp, graphql-lwt, irmin, git-unix
+, alcotest, alcotest-lwt, logs, yojson, cacert
 }:
 
 buildDunePackage rec {
@@ -8,26 +8,19 @@ buildDunePackage rec {
 
   inherit (irmin) version src;
 
-  useDune2 = true;
-
-  propagatedBuildInputs = [ cohttp-lwt graphql-cohttp graphql-lwt irmin ];
+  propagatedBuildInputs = [ cohttp-lwt cohttp-lwt-unix graphql-cohttp graphql-lwt irmin git-unix ];
 
   doCheck = true;
+
   checkInputs = [
     alcotest
     alcotest-lwt
     logs
-    cohttp-lwt-unix
     yojson
     cacert
   ];
 
   meta = irmin.meta // {
     description = "GraphQL server for Irmin";
-    broken = true; # Not compatible with graphql 0.14
   };
-
 }
-
-
-
diff --git a/pkgs/development/ocaml-modules/irmin/http.nix b/pkgs/development/ocaml-modules/irmin/http.nix
index 7bfae99820216..1f58daca536af 100644
--- a/pkgs/development/ocaml-modules/irmin/http.nix
+++ b/pkgs/development/ocaml-modules/irmin/http.nix
@@ -1,5 +1,6 @@
-{ lib, buildDunePackage, cohttp-lwt, irmin, webmachine
-, checkseum, git-unix, irmin-git, irmin-test, digestif, git-cohttp-unix
+{ lib, buildDunePackage, astring, cohttp-lwt, cohttp-lwt-unix, irmin, webmachine
+, fmt, jsonm, logs, lwt, uri
+, git-unix, irmin-git, irmin-test, irmin-fs, digestif
 , cacert
 }:
 
@@ -7,14 +8,13 @@ buildDunePackage rec {
 
   pname = "irmin-http";
 
-  inherit (irmin) version src;
+  inherit (irmin) version src strictDeps;
 
-  useDune2 = true;
 
-  propagatedBuildInputs = [ cohttp-lwt irmin webmachine ];
+  propagatedBuildInputs = [ astring cohttp-lwt cohttp-lwt-unix fmt jsonm logs lwt uri irmin webmachine ];
 
   checkInputs = [
-    digestif checkseum git-cohttp-unix git-unix irmin-git irmin-test cacert
+    digestif git-unix irmin-git irmin-test irmin-fs cacert
   ];
 
   doCheck = true;
diff --git a/pkgs/development/ocaml-modules/irmin/layers.nix b/pkgs/development/ocaml-modules/irmin/layers.nix
deleted file mode 100644
index 40410b004ae74..0000000000000
--- a/pkgs/development/ocaml-modules/irmin/layers.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{ buildDunePackage, irmin, mtime, logs, lwt }:
-
-buildDunePackage {
-  pname = "irmin-layers";
-
-  inherit (irmin) version src useDune2;
-
-  propagatedBuildInputs = [
-    irmin
-    mtime
-    logs
-    lwt
-  ];
-
-  meta = irmin.meta // {
-    description = "Combine different Irmin stores into a single, layered store";
-  };
-}
diff --git a/pkgs/development/ocaml-modules/irmin/mirage-git.nix b/pkgs/development/ocaml-modules/irmin/mirage-git.nix
index e33b766bd4cbb..09c1820d6094d 100644
--- a/pkgs/development/ocaml-modules/irmin/mirage-git.nix
+++ b/pkgs/development/ocaml-modules/irmin/mirage-git.nix
@@ -6,7 +6,7 @@
 buildDunePackage {
   pname = "irmin-mirage-git";
 
-  inherit (irmin-mirage) version src useDune2;
+  inherit (irmin-mirage) version src strictDeps;
 
   propagatedBuildInputs = [
     irmin-mirage
diff --git a/pkgs/development/ocaml-modules/irmin/mirage-graphql.nix b/pkgs/development/ocaml-modules/irmin/mirage-graphql.nix
index d550b9c924b1f..bfbe45b390190 100644
--- a/pkgs/development/ocaml-modules/irmin/mirage-graphql.nix
+++ b/pkgs/development/ocaml-modules/irmin/mirage-graphql.nix
@@ -5,7 +5,7 @@
 buildDunePackage {
   pname = "irmin-mirage-graphql";
 
-  inherit (irmin-mirage) version src useDune2;
+  inherit (irmin-mirage) version src strictDeps;
 
   propagatedBuildInputs = [
     irmin-mirage
diff --git a/pkgs/development/ocaml-modules/irmin/mirage.nix b/pkgs/development/ocaml-modules/irmin/mirage.nix
index 675c8a3fdd28a..9e4bd9330799c 100644
--- a/pkgs/development/ocaml-modules/irmin/mirage.nix
+++ b/pkgs/development/ocaml-modules/irmin/mirage.nix
@@ -3,7 +3,7 @@
 buildDunePackage {
   pname = "irmin-mirage";
 
-  inherit (irmin) version src useDune2;
+  inherit (irmin) version src strictDeps;
 
   propagatedBuildInputs = [
     irmin fmt ptime mirage-clock
diff --git a/pkgs/development/ocaml-modules/irmin/pack.nix b/pkgs/development/ocaml-modules/irmin/pack.nix
index 63ad03a3a8661..a1a2974a4d748 100644
--- a/pkgs/development/ocaml-modules/irmin/pack.nix
+++ b/pkgs/development/ocaml-modules/irmin/pack.nix
@@ -1,23 +1,22 @@
 { lib, buildDunePackage
-, alcotest-lwt, index, irmin, irmin-layers, irmin-test, ocaml_lwt, fpath, optint
+, index, ppx_irmin, irmin, optint, fmt, logs, lwt, mtime, cmdliner
+, alcotest, alcotest-lwt, astring, irmin-test
 }:
 
 buildDunePackage rec {
-  minimumOCamlVersion = "4.02.3";
+  minimalOCamlVersion = "4.08";
 
   pname = "irmin-pack";
 
-  inherit (irmin) version src;
+  inherit (irmin) version src strictDeps;
 
-  useDune2 = true;
+  nativeBuildInputs = [ ppx_irmin ];
 
-  buildInputs = [ fpath ];
-  propagatedBuildInputs = [ index irmin irmin-layers ocaml_lwt optint ];
+  propagatedBuildInputs = [ index irmin optint fmt logs lwt mtime cmdliner ];
 
-  checkInputs = [ alcotest-lwt irmin-test ];
+  checkInputs = [ astring alcotest alcotest-lwt irmin-test ];
 
-  # Check fails with cmdliner ≥ 1.1
-  doCheck = false;
+  doCheck = true;
 
   meta = irmin.meta // {
     description = "Irmin backend which stores values in a pack file";
diff --git a/pkgs/development/ocaml-modules/irmin/ppx.nix b/pkgs/development/ocaml-modules/irmin/ppx.nix
index 2eecc3a1e5e6b..8749aef1433dc 100644
--- a/pkgs/development/ocaml-modules/irmin/ppx.nix
+++ b/pkgs/development/ocaml-modules/irmin/ppx.nix
@@ -1,21 +1,22 @@
-{ lib, fetchurl, buildDunePackage, ppxlib, ppx_repr }:
+{ lib, fetchurl, buildDunePackage, ppxlib, ppx_repr, logs }:
 
 buildDunePackage rec {
   pname = "ppx_irmin";
-  version = "2.9.1";
+  version = "3.4.1";
 
   src = fetchurl {
     url = "https://github.com/mirage/irmin/releases/download/${version}/irmin-${version}.tbz";
-    sha256 = "10r7j4z4gx3dp48lavjhpb1cam27n6ch751amslb0drphy53l00n";
+    sha256 = "sha256-kig2EWww7GgGijhpSgm7pSHPR+3Q5K5E4Ha5tJY9oYA=";
   };
 
-  minimumOCamlVersion = "4.08";
+  minimalOCamlVersion = "4.10";
 
-  useDune2 = true;
+  strictDeps = false; # We must provide checkInputs as buildInputs because dune builds tests at build time
 
   propagatedBuildInputs = [
     ppx_repr
     ppxlib
+    logs
   ];
 
   meta = {
diff --git a/pkgs/development/ocaml-modules/irmin/test.nix b/pkgs/development/ocaml-modules/irmin/test.nix
index 90141d925e6f8..942200bf429a0 100644
--- a/pkgs/development/ocaml-modules/irmin/test.nix
+++ b/pkgs/development/ocaml-modules/irmin/test.nix
@@ -1,19 +1,34 @@
-{ buildDunePackage
-, alcotest, cmdliner, irmin, metrics-unix, mtime, irmin-layers
+{ buildDunePackage, irmin, ppx_irmin, mtime, astring, fmt, jsonm, logs, lwt
+, metrics-unix, ocaml-syntax-shims, cmdliner, metrics, alcotest-lwt
+, hex, vector
 }:
 
 buildDunePackage {
 
   pname = "irmin-test";
 
-  inherit (irmin) version src;
+  inherit (irmin) version src strictDeps;
 
-  useDune2 = true;
+  nativeBuildInputs = [ ppx_irmin ];
 
   propagatedBuildInputs = [
-    alcotest cmdliner irmin metrics-unix mtime irmin-layers
+    irmin
+    ppx_irmin
+    alcotest-lwt
+    mtime
+    astring
+    fmt
+    jsonm
+    logs
+    lwt
+    metrics-unix
+    ocaml-syntax-shims
+    cmdliner
+    metrics
   ];
 
+  checkInputs = [ hex vector ];
+
   meta = irmin.meta // {
     description = "Irmin test suite";
   };
diff --git a/pkgs/development/ocaml-modules/irmin/tezos.nix b/pkgs/development/ocaml-modules/irmin/tezos.nix
new file mode 100644
index 0000000000000..8426316ed3987
--- /dev/null
+++ b/pkgs/development/ocaml-modules/irmin/tezos.nix
@@ -0,0 +1,33 @@
+{ lib, buildDunePackage
+, irmin, irmin-pack, ppx_irmin, digestif, cmdliner, fmt, yojson, tezos-base58
+, alcotest, hex, irmin-test, fpath
+}:
+
+buildDunePackage rec {
+  pname = "irmin-tezos";
+
+  inherit (irmin) version src strictDeps;
+
+  propagatedBuildInputs = [
+   irmin
+   irmin-pack
+   ppx_irmin
+   digestif
+   fmt
+   tezos-base58
+  ];
+
+  buildInputs = [
+   cmdliner
+   yojson
+  ];
+
+  checkInputs = [ alcotest hex irmin-test fpath ];
+
+  doCheck = true;
+
+  meta = irmin.meta // {
+    description = "Irmin implementation of the Tezos context hash specification";
+    maintainers = [ lib.maintainers.ulrikstrid ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/irmin/unix.nix b/pkgs/development/ocaml-modules/irmin/unix.nix
deleted file mode 100644
index 2906e77b1b6fa..0000000000000
--- a/pkgs/development/ocaml-modules/irmin/unix.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ lib, buildDunePackage
-, checkseum, cmdliner, git-unix, git-cohttp-unix, yaml, fpath
-, irmin, irmin-fs, irmin-git, irmin-graphql, irmin-http
-, irmin-pack, irmin-watcher, irmin-test, cacert
-}:
-
-buildDunePackage rec {
-
-  pname = "irmin-unix";
-
-  inherit (irmin) version src;
-
-  useDune2 = true;
-
-  propagatedBuildInputs = [
-    checkseum cmdliner git-unix yaml fpath
-    irmin irmin-fs irmin-git irmin-graphql irmin-http
-    irmin-pack irmin-watcher git-cohttp-unix
-  ];
-
-  checkInputs = [
-    irmin-test cacert
-  ];
-
-  doCheck = true;
-
-  meta = irmin.meta // {
-    description = "Unix backends for Irmin";
-    mainProgram = "irmin";
-  };
-
-}
-
diff --git a/pkgs/development/ocaml-modules/mimic/happy-eyeballs.nix b/pkgs/development/ocaml-modules/mimic/happy-eyeballs.nix
index 7a794105e7813..72e3f99ddbe7d 100644
--- a/pkgs/development/ocaml-modules/mimic/happy-eyeballs.nix
+++ b/pkgs/development/ocaml-modules/mimic/happy-eyeballs.nix
@@ -9,7 +9,7 @@ buildDunePackage {
 
   strictDeps = true;
 
-  buildInputs = [
+  propagatedBuildInputs = [
     mimic
     happy-eyeballs-mirage
   ];
diff --git a/pkgs/development/ocaml-modules/mirage-block-ramdisk/default.nix b/pkgs/development/ocaml-modules/mirage-block-ramdisk/default.nix
index 94e862a6bc9cc..78f3e48c5bd46 100644
--- a/pkgs/development/ocaml-modules/mirage-block-ramdisk/default.nix
+++ b/pkgs/development/ocaml-modules/mirage-block-ramdisk/default.nix
@@ -10,6 +10,11 @@ buildDunePackage rec {
     sha256 = "cc0e814fd54efe7a5b7a8c5eb1c04e2dece751b7d8dee2d95908a0768896e8af";
   };
 
+  # Make compatible with cstruct 6.1.0
+  postPatch = ''
+    substituteInPlace src/ramdisk.ml --replace 'Cstruct.len' 'Cstruct.length'
+  '';
+
   minimalOCamlVersion = "4.06";
 
   propagatedBuildInputs = [ io-page mirage-block ];
diff --git a/pkgs/development/ocaml-modules/pcre/default.nix b/pkgs/development/ocaml-modules/pcre/default.nix
index ea853c4648b12..ca3cc203f9689 100644
--- a/pkgs/development/ocaml-modules/pcre/default.nix
+++ b/pkgs/development/ocaml-modules/pcre/default.nix
@@ -2,15 +2,15 @@
 
 buildDunePackage rec {
   pname = "pcre";
-  version = "7.4.6";
+  version = "7.5.0";
 
   useDune2 = true;
 
-  minimalOCamlVersion = "4.08";
+  minimalOCamlVersion = "4.12";
 
   src = fetchurl {
     url = "https://github.com/mmottl/pcre-ocaml/releases/download/${version}/pcre-${version}.tbz";
-    sha256 = "17ajl0ra5xkxn5pf0m0zalylp44wsfy6mvcq213djh2pwznh4gya";
+    sha256 = "sha256-ZxFC9AtthhccvAZyU/qt+QMBkWHVdIi9D7bFRWwsvRo=";
   };
 
   buildInputs = [ dune-configurator ];
diff --git a/pkgs/development/ocaml-modules/ppx_tools/default.nix b/pkgs/development/ocaml-modules/ppx_tools/default.nix
index 9ec1c24dbe3e6..cc525d1d1e95b 100644
--- a/pkgs/development/ocaml-modules/ppx_tools/default.nix
+++ b/pkgs/development/ocaml-modules/ppx_tools/default.nix
@@ -1,10 +1,9 @@
 { lib, stdenv, fetchFromGitHub, buildDunePackage, ocaml, findlib, cppo }:
 
 let param =
-  let v6_5 = {
-    version = "6.5";
-    sha256 = "sha256:0fwibah2hgllrnbdrmfqil5gr5raf6pb5h2zx6zs1h3d4ykvy8k8";
-    useDune2 = true;
+  let v6_6 = {
+    version = "6.6";
+    sha256 = "sha256-QhuaQ9346a3neoRM4GrOVzjR8fg9ysMZR1VzNgyIQtc=";
     nativeBuildInputs = [cppo];
     buildInputs = [cppo];
   }; in
@@ -28,13 +27,13 @@ let param =
   "4.07" = {
     version = "5.1+4.06.0";
     sha256 = "1ww4cspdpgjjsgiv71s0im5yjkr3544x96wsq1vpdacq7dr7zwiw"; };
-  "4.08" = v6_5;
-  "4.09" = v6_5;
-  "4.10" = v6_5;
-  "4.11" = v6_5;
-  "4.12" = v6_5;
-  "4.13" = v6_5;
-  "4.14" = v6_5;
+  "4.08" = v6_6;
+  "4.09" = v6_6;
+  "4.10" = v6_6;
+  "4.11" = v6_6;
+  "4.12" = v6_6;
+  "4.13" = v6_6;
+  "4.14" = v6_6;
 }.${ocaml.meta.branch};
 in
 
@@ -56,7 +55,7 @@ if lib.versionAtLeast param.version "6.0"
 then
   buildDunePackage {
     inherit pname src meta;
-    inherit (param) version useDune2 buildInputs nativeBuildInputs;
+    inherit (param) version buildInputs nativeBuildInputs;
 
     strictDeps = true;
   }
diff --git a/pkgs/development/ocaml-modules/rebez/default.nix b/pkgs/development/ocaml-modules/rebez/default.nix
index 743f94454eeba..6a871069eb6af 100644
--- a/pkgs/development/ocaml-modules/rebez/default.nix
+++ b/pkgs/development/ocaml-modules/rebez/default.nix
@@ -17,7 +17,7 @@ buildDunePackage rec {
     description = "Cubic bezier implementation in Reason / OCaml";
     homepage = "https://github.com/jchavarri/rebez/";
     license = licenses.mit;
-    maintainers = with maintainers; [ superherointj ];
+    maintainers = with maintainers; [ ];
     mainProgram = "RebezApp.exe";
   };
 }
diff --git a/pkgs/development/ocaml-modules/reperf/default.nix b/pkgs/development/ocaml-modules/reperf/default.nix
index 6ec05a8614986..10c6ee65626c8 100644
--- a/pkgs/development/ocaml-modules/reperf/default.nix
+++ b/pkgs/development/ocaml-modules/reperf/default.nix
@@ -35,7 +35,7 @@ buildDunePackage rec {
       Outputs a JSON performance report, and compare it with previous iterations - and fail if a regression is detected.
     '';
     homepage = "https://github.com/bryphe/reperf";
-    maintainers = with maintainers; [ superherointj ];
+    maintainers = with maintainers; [ ];
     license = licenses.mit;
   };
 }
diff --git a/pkgs/development/ocaml-modules/repr/default.nix b/pkgs/development/ocaml-modules/repr/default.nix
index 168da21a04eb8..f5a11919c5dbc 100644
--- a/pkgs/development/ocaml-modules/repr/default.nix
+++ b/pkgs/development/ocaml-modules/repr/default.nix
@@ -1,16 +1,18 @@
-{ lib, buildDunePackage, fetchurl, base64, either, fmt, jsonm, uutf, optint }:
+{ lib, buildDunePackage, fetchFromGitHub, base64, either, fmt, jsonm, uutf, optint }:
 
 buildDunePackage rec {
   pname = "repr";
-  version = "0.5.0";
+  version = "0.6.0";
 
-  src = fetchurl {
-    url = "https://github.com/mirage/${pname}/releases/download/${version}/${pname}-fuzz-${version}.tbz";
-    sha256 = "1y9qnbaxcyxz7bzkkq5lwjrv715mvp2vphzcrd8vbvjhp7df3l1f";
+  src = fetchFromGitHub {
+    owner = "mirage";
+    repo = "repr";
+    rev = version;
+    sha256 = "sha256-jF8KmaG07CT26O/1ANc6s1yHFJqhXDtd0jgTA04tIgw=";
   };
 
-  minimumOCamlVersion = "4.08";
-  useDune2 = true;
+  minimalOCamlVersion = "4.08";
+  strictDeps = true;
 
   propagatedBuildInputs = [
     base64
diff --git a/pkgs/development/ocaml-modules/repr/ppx.nix b/pkgs/development/ocaml-modules/repr/ppx.nix
index b495f6bb77291..1eb762563621e 100644
--- a/pkgs/development/ocaml-modules/repr/ppx.nix
+++ b/pkgs/development/ocaml-modules/repr/ppx.nix
@@ -3,7 +3,7 @@
 buildDunePackage {
   pname = "ppx_repr";
 
-  inherit (repr) src version useDune2;
+  inherit (repr) src version strictDeps;
 
   propagatedBuildInputs = [
     ppx_deriving
diff --git a/pkgs/development/ocaml-modules/ringo/default.nix b/pkgs/development/ocaml-modules/ringo/default.nix
index 7bfd38b869dab..87a64beaa50d9 100644
--- a/pkgs/development/ocaml-modules/ringo/default.nix
+++ b/pkgs/development/ocaml-modules/ringo/default.nix
@@ -2,19 +2,17 @@
 
 buildDunePackage rec {
   pname = "ringo";
-  version = "0.5";
+  version = "0.9";
 
   src = fetchFromGitLab {
     owner = "nomadic-labs";
     repo = "ringo";
     rev = "v${version}";
-    sha256 = "1zwha0ycv3rm3qnw7nkg2m08ibx39yxnx5fan4lnn82b0pdasjag";
+    sha256 = "sha256-lPb+WrRsmtOow9BX9FW4HoILlsTuuMrVlK0XPcXWZ9U=";
   };
 
   minimalOCamlVersion = "4.05";
 
-  useDune2 = true;
-
   doCheck = true;
 
   # If we just run the test as is it will try to test ringo-lwt
diff --git a/pkgs/development/ocaml-modules/ringo/lwt.nix b/pkgs/development/ocaml-modules/ringo/lwt.nix
index be9f5bbf2b226..7fb8fb7054e15 100644
--- a/pkgs/development/ocaml-modules/ringo/lwt.nix
+++ b/pkgs/development/ocaml-modules/ringo/lwt.nix
@@ -2,7 +2,7 @@
 
 buildDunePackage {
   pname = "ringo-lwt";
-  inherit (ringo) version src doCheck useDune2;
+  inherit (ringo) version src doCheck;
 
   minimalOCamlVersion = "4.08";
 
diff --git a/pkgs/development/ocaml-modules/taglib/default.nix b/pkgs/development/ocaml-modules/taglib/default.nix
index ecd33145614c9..95b5ae04578ff 100644
--- a/pkgs/development/ocaml-modules/taglib/default.nix
+++ b/pkgs/development/ocaml-modules/taglib/default.nix
@@ -2,13 +2,13 @@
 
 buildDunePackage rec {
   pname = "taglib";
-  version = "0.3.9";
+  version = "0.3.10";
 
   src = fetchFromGitHub {
     owner = "savonet";
     repo = "ocaml-taglib";
     rev = "v${version}";
-    sha256 = "sha256-n8Vv8Vepvhx7anZdWIdBfw+HSQShKWjNe6l0gqRRsSs=";
+    sha256 = "sha256-tAvzVr0PW1o0kKFxdi/ks4obqnyBm8YfiiFupXZkUho=";
   };
 
   minimalOCamlVersion = "4.05.0"; # Documented version 4.02.0. 4.05.0 actually required.
diff --git a/pkgs/development/ocaml-modules/telegraml/default.nix b/pkgs/development/ocaml-modules/telegraml/default.nix
index b6f5f69b876fb..9fed705ce3eec 100644
--- a/pkgs/development/ocaml-modules/telegraml/default.nix
+++ b/pkgs/development/ocaml-modules/telegraml/default.nix
@@ -29,6 +29,6 @@ buildDunePackage rec {
     description = "An OCaml library implementing the Telegram bot API";
     homepage = "https://github.com/nv-vn/TelegraML/";
     license = licenses.mit;
-    maintainers = with maintainers; [ superherointj ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/tsdl-image/default.nix b/pkgs/development/ocaml-modules/tsdl-image/default.nix
index a8a2e2d38d62f..d4eaaae65caa0 100644
--- a/pkgs/development/ocaml-modules/tsdl-image/default.nix
+++ b/pkgs/development/ocaml-modules/tsdl-image/default.nix
@@ -32,6 +32,6 @@ buildDunePackage rec {
     description = "OCaml SDL2_image bindings to go with Tsdl";
     homepage = "https://github.com/sanette/tsdl-image";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ superherointj ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/tsdl-mixer/default.nix b/pkgs/development/ocaml-modules/tsdl-mixer/default.nix
index 4a59025f9d880..24043ef4391eb 100644
--- a/pkgs/development/ocaml-modules/tsdl-mixer/default.nix
+++ b/pkgs/development/ocaml-modules/tsdl-mixer/default.nix
@@ -32,6 +32,6 @@ buildDunePackage rec {
     description = "SDL2_mixer bindings to go with Tsdl";
     homepage = "https://github.com/sanette/tsdl-mixer";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ superherointj ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/tsdl-ttf/default.nix b/pkgs/development/ocaml-modules/tsdl-ttf/default.nix
index c8445bf4337c7..0ff1963fcaf02 100644
--- a/pkgs/development/ocaml-modules/tsdl-ttf/default.nix
+++ b/pkgs/development/ocaml-modules/tsdl-ttf/default.nix
@@ -32,6 +32,6 @@ buildDunePackage rec {
     description = "SDL2_ttf bindings for Ocaml with Tsdl";
     homepage = "https://github.com/sanette/tsdl-ttf";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ superherointj ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/wodan/irmin.nix b/pkgs/development/ocaml-modules/wodan/irmin.nix
index 4b158d5427ef4..6389b47b61796 100644
--- a/pkgs/development/ocaml-modules/wodan/irmin.nix
+++ b/pkgs/development/ocaml-modules/wodan/irmin.nix
@@ -1,4 +1,4 @@
-{ lib, buildDunePackage, irmin-chunk, irmin-git, irmin-unix
+{ lib, buildDunePackage, irmin-chunk, irmin-git
 , mirage-block-ramdisk, mirage-block-unix, wodan }:
 
 buildDunePackage rec {
@@ -9,7 +9,6 @@ buildDunePackage rec {
     /* io-page-unix */ # No longer available in nixpkgs
     irmin-chunk
     irmin-git
-    irmin-unix
     mirage-block-ramdisk
     mirage-block-unix
     wodan
diff --git a/pkgs/development/ocaml-modules/x509/default.nix b/pkgs/development/ocaml-modules/x509/default.nix
index 845581aa7cc5b..cea9d79333b4f 100644
--- a/pkgs/development/ocaml-modules/x509/default.nix
+++ b/pkgs/development/ocaml-modules/x509/default.nix
@@ -8,11 +8,11 @@ buildDunePackage rec {
   minimalOCamlVersion = "4.08";
 
   pname = "x509";
-  version = "0.16.0";
+  version = "0.16.2";
 
   src = fetchurl {
     url = "https://github.com/mirleft/ocaml-x509/releases/download/v${version}/x509-${version}.tbz";
-    sha256 = "sha256:159mhfwsiv08sj0zk7s3k813f0mc9vpziwpf6j9r32y3nizp59k7";
+    sha256 = "sha256-Zf/ZZjUAkeWe04XLmqMKgbxN/qe/Z1mpKM82veXVf2I=";
   };
 
   checkInputs = [ alcotest cstruct-unix ];
diff --git a/pkgs/development/perl-modules/Po4a/default.nix b/pkgs/development/perl-modules/Po4a/default.nix
index 119414907856a..3689122805e29 100644
--- a/pkgs/development/perl-modules/Po4a/default.nix
+++ b/pkgs/development/perl-modules/Po4a/default.nix
@@ -1,5 +1,7 @@
 { stdenv, lib, fetchurl, docbook_xsl, docbook_xsl_ns, gettext, libxslt, glibcLocales, docbook_xml_dtd_412, docbook_sgml_dtd_41, texlive, opensp
-, perl, buildPerlPackage, ModuleBuild, TextWrapI18N, LocaleGettext, TermReadKey, SGMLSpm, UnicodeLineBreak, PodParser, YAMLTiny }:
+, perl, buildPerlPackage, ModuleBuild, TextWrapI18N, LocaleGettext, TermReadKey, SGMLSpm, UnicodeLineBreak, PodParser, YAMLTiny
+, fetchpatch
+}:
 
 buildPerlPackage rec {
   pname = "po4a";
@@ -8,6 +10,14 @@ buildPerlPackage rec {
     url = "https://github.com/mquinson/po4a/releases/download/v${version}/po4a-${version}.tar.gz";
     sha256 = "0eb510a66f59de68cf7a205342036cc9fc08b39334b91f1456421a5f3359e68b";
   };
+  patches = [
+    (fetchpatch {
+      # make devdoc output reproducible
+      # https://github.com/mquinson/po4a/pull/387
+      url = "https://github.com/mquinson/po4a/commit/df7433b58f6570558d44b6aac885c2a8f7862e51.patch";
+      sha256 = "9MVkYiItR2P3PBCUc4OhEOUHQuLqTWUYtYlZ3L8miC8=";
+    })
+  ];
   nativeBuildInputs = [ docbook_xsl docbook_xsl_ns ModuleBuild ];
   propagatedBuildInputs = lib.optional (!stdenv.hostPlatform.isMusl) TextWrapI18N ++ [ LocaleGettext SGMLSpm UnicodeLineBreak PodParser YAMLTiny ];
   # TODO: TermReadKey was temporarily removed from propagatedBuildInputs to unfreeze the build
diff --git a/pkgs/development/perl-modules/mod_perl2-PL_hash_seed.patch b/pkgs/development/perl-modules/mod_perl2-PL_hash_seed.patch
deleted file mode 100644
index a8aac88de319d..0000000000000
--- a/pkgs/development/perl-modules/mod_perl2-PL_hash_seed.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-From https://github.com/Perl/perl5/issues/18617#issuecomment-822056978 by Leont
-
---- a/src/modules/perl/modperl_perl.c
-+++ a/src/modules/perl/modperl_perl.c
-@@ -268,7 +268,7 @@
- #ifdef MP_NEED_HASH_SEED_FIXUP
-     if (MP_init_hash_seed_set) {
- #if MP_PERL_VERSION_AT_LEAST(5, 17, 6)
--        memcpy(&PL_hash_seed, &MP_init_hash_seed,
-+        memcpy(PL_hash_seed, &MP_init_hash_seed,
-                 sizeof(PL_hash_seed) > sizeof(MP_init_hash_seed) ?
-                     sizeof(MP_init_hash_seed) : sizeof(PL_hash_seed));
-         PL_hash_seed_set   = MP_init_hash_seed_set;
diff --git a/pkgs/development/python-modules/acquire/default.nix b/pkgs/development/python-modules/acquire/default.nix
new file mode 100644
index 0000000000000..0b69bc68b046f
--- /dev/null
+++ b/pkgs/development/python-modules/acquire/default.nix
@@ -0,0 +1,70 @@
+{ lib
+, buildPythonPackage
+, defusedxml
+, dissect-cstruct
+, dissect-target
+, fetchFromGitHub
+, minio
+, pycryptodome
+, pytestCheckHook
+, pythonOlder
+, requests
+, requests-toolbelt
+, rich
+, setuptools
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "acquire";
+  version = "3.2";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "acquire";
+    rev = version;
+    hash = "sha256-YwmrdqWG5qD621+jQMVyTM0Uy0yXCVPv9zfVhZ+ohg0=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    defusedxml
+    dissect-cstruct
+    dissect-target
+  ];
+
+  passthru.optional-dependencies = {
+    full = [
+      dissect-target
+      minio
+      pycryptodome
+      requests
+      requests-toolbelt
+      rich
+    ] ++ dissect-target.optional-dependencies.full;
+  };
+
+  checkInputs = [
+    pytestCheckHook
+  ] ++ passthru.optional-dependencies.full;
+
+  pythonImportsCheck = [
+    "acquire"
+  ];
+
+  meta = with lib; {
+    description = "Tool to quickly gather forensic artifacts from disk images or a live system";
+    homepage = "https://github.com/fox-it/acquire";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/adafruit-platformdetect/default.nix b/pkgs/development/python-modules/adafruit-platformdetect/default.nix
index 7e8bae06a5bda..aab86edbf7f5a 100644
--- a/pkgs/development/python-modules/adafruit-platformdetect/default.nix
+++ b/pkgs/development/python-modules/adafruit-platformdetect/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "adafruit-platformdetect";
-  version = "3.30.0";
+  version = "3.31.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "Adafruit-PlatformDetect";
     inherit version;
-    hash = "sha256-jf7tVwv+XvaZcOKNKODRyu4JzLidBRXFd68HD5yi7b0=";
+    hash = "sha256-gXANW2nXoOVv8bZearpgQRhFAgyErUIgoJ4isnmgnnU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/adal/default.nix b/pkgs/development/python-modules/adal/default.nix
index 45c256b6647b7..e944248db17a6 100644
--- a/pkgs/development/python-modules/adal/default.nix
+++ b/pkgs/development/python-modules/adal/default.nix
@@ -20,6 +20,10 @@ buildPythonPackage rec {
     hash = "sha256-HE8/P0aohoZNeMdcQVKdz6M31FMrjsd7oVytiaD0idI=";
   };
 
+  postPatch = ''
+    sed -i '/cryptography/d' setup.py
+  '';
+
   propagatedBuildInputs = [
     pyjwt
     python-dateutil
diff --git a/pkgs/development/python-modules/ailment/default.nix b/pkgs/development/python-modules/ailment/default.nix
index 49f3b39b737ee..6fdc8b2dd4f27 100644
--- a/pkgs/development/python-modules/ailment/default.nix
+++ b/pkgs/development/python-modules/ailment/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "ailment";
-  version = "9.2.20";
+  version = "9.2.21";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-dfogVQZ6RP1GyuoiTEC/VLancb+ZmdM1xPSngLbcmYs=";
+    hash = "sha256-LIqazN7U0pRt9yUsnb5vM6ZOtQOstkwanNr7FufHyUo=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/aioesphomeapi/default.nix b/pkgs/development/python-modules/aioesphomeapi/default.nix
index 525abf0cfb210..bdef4b0b18580 100644
--- a/pkgs/development/python-modules/aioesphomeapi/default.nix
+++ b/pkgs/development/python-modules/aioesphomeapi/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "aioesphomeapi";
-  version = "11.0.0";
+  version = "11.1.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.9";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "esphome";
     repo = pname;
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-HHVA/eH6Ucn1shQy6QzcxvHWRQqjv/OEgHgq0ITS23Q=";
+    hash = "sha256-fyY3G2tsrqy5aTXYI+KGqMahWspdTjjjkS9JK/ohjhc=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/aiopvapi/default.nix b/pkgs/development/python-modules/aiopvapi/default.nix
index beebbf7a81754..0c1a2f70e10ff 100644
--- a/pkgs/development/python-modules/aiopvapi/default.nix
+++ b/pkgs/development/python-modules/aiopvapi/default.nix
@@ -9,17 +9,16 @@
 
 buildPythonPackage rec {
   pname = "aiopvapi";
-  version = "2.0.2";
+  version = "2.0.3";
   format = "setuptools";
 
-  disabled = pythonOlder "3.5";
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "sander76";
     repo = "aio-powerview-api";
-    # no tags on git, no sdist on pypi: https://github.com/sander76/aio-powerview-api/issues/12
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-OengPrUBaYzpLSWEU9Jc6GLx863YJfqRe64676oQ81Y=";
+    hash = "sha256-RBZuYgTySVL1YtyZ4ZJZly2zvWt/5pZ99/aPCwZ91xQ=";
   };
 
   propagatedBuildInputs = [
@@ -31,13 +30,6 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  postPatch = ''
-    # async_timeout 4.0.0 removes loop, https://github.com/sander76/aio-powerview-api/pull/13
-    # Patch doesn't apply due to different line endings
-    substituteInPlace aiopvapi/helpers/aiorequest.py \
-      --replace ", loop=self.loop)" ")"
-  '';
-
   pythonImportsCheck = [
     "aiopvapi"
   ];
diff --git a/pkgs/development/python-modules/aiosmb/default.nix b/pkgs/development/python-modules/aiosmb/default.nix
index 25b9e6fd37c16..70737dcca7967 100644
--- a/pkgs/development/python-modules/aiosmb/default.nix
+++ b/pkgs/development/python-modules/aiosmb/default.nix
@@ -16,14 +16,14 @@
 
 buildPythonPackage rec {
   pname = "aiosmb";
-  version = "0.4.2";
+  version = "0.4.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-h8wYBuxLq2JiQyGQFPirGblcSjtGqoi9ODvCNLH9ec8=";
+    hash = "sha256-jJVXGBK8wWXEGvCzOTicHUh9jH35d1ARIxkLwn/ctjM=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/aiounifi/default.nix b/pkgs/development/python-modules/aiounifi/default.nix
index 8425cb3f86c77..3cf08ad6ab890 100644
--- a/pkgs/development/python-modules/aiounifi/default.nix
+++ b/pkgs/development/python-modules/aiounifi/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "aiounifi";
-  version = "35";
+  version = "39";
 
   disabled = pythonOlder "3.9";
 
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "Kane610";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-mKAg6LNtHEmF223xIrZM7rSxE2+B4jUPCv0dCtHmHXc=";
+    hash = "sha256-FZ8Pu0PHSBC7azzVoSN+UM4UsVG/HRSS01Ys+DTfxRU=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/allure-python-commons-test/default.nix b/pkgs/development/python-modules/allure-python-commons-test/default.nix
index 9ff8d8610da26..fcdc76a0897ad 100644
--- a/pkgs/development/python-modules/allure-python-commons-test/default.nix
+++ b/pkgs/development/python-modules/allure-python-commons-test/default.nix
@@ -12,13 +12,13 @@
 
 buildPythonPackage rec {
   pname = "allure-python-commons-test";
-  version = "2.10.0";
+  version = "2.11.0";
 
   disabled = pythonOlder "3.4";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-wSISmLO1qE91tO0svQ+Dau35wP8h9hMfFtW5STGX5dg=";
+    sha256 = "sha256-69iSW5pUbYQpA/dgpCr088CUaa1BGIwlijltmFZnEa0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/angr/default.nix b/pkgs/development/python-modules/angr/default.nix
index 9a841aae8fd4a..cc88392d53c86 100644
--- a/pkgs/development/python-modules/angr/default.nix
+++ b/pkgs/development/python-modules/angr/default.nix
@@ -46,7 +46,7 @@ in
 
 buildPythonPackage rec {
   pname = "angr";
-  version = "9.2.20";
+  version = "9.2.21";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -55,7 +55,7 @@ buildPythonPackage rec {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-MQT9iebGVGM89QybQ/GcjfPHrp0ZeNsjYrXV9ITNSsM=";
+    hash = "sha256-DOH1yRdWpKpYEjcnQInYU3g2HRm3wj3y8W7Kyuz4i2M=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/ansible-lint/default.nix b/pkgs/development/python-modules/ansible-lint/default.nix
index 62af40ec39d05..46522ea9d6a93 100644
--- a/pkgs/development/python-modules/ansible-lint/default.nix
+++ b/pkgs/development/python-modules/ansible-lint/default.nix
@@ -22,13 +22,13 @@
 
 buildPythonPackage rec {
   pname = "ansible-lint";
-  version = "6.7.0";
+  version = "6.8.1";
   format = "pyproject";
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-oREpUVLS3oEoV8rGuyxrADMVgm2crhQQpPEOPuslWwk=";
+    sha256 = "sha256-E/ci0+AyOwzjoQc1jA4eIWnbWpO2j/zyDhAwu6Fv1w0=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/anyio/default.nix b/pkgs/development/python-modules/anyio/default.nix
index fde9fe67fccab..9d2e2a333590d 100644
--- a/pkgs/development/python-modules/anyio/default.nix
+++ b/pkgs/development/python-modules/anyio/default.nix
@@ -56,6 +56,9 @@ buildPythonPackage rec {
     typing-extensions
   ];
 
+  # trustme uses pyopenssl
+  doCheck = !(stdenv.isDarwin && stdenv.isAarch64);
+
   checkInputs = [
     curio
     hypothesis
diff --git a/pkgs/development/python-modules/apache-airflow/default.nix b/pkgs/development/python-modules/apache-airflow/default.nix
index 3c177a39edb4c..091020c76327c 100644
--- a/pkgs/development/python-modules/apache-airflow/default.nix
+++ b/pkgs/development/python-modules/apache-airflow/default.nix
@@ -11,6 +11,7 @@
 , cattrs
 , clickclick
 , colorlog
+, configupdater
 , connexion
 , cron-descriptor
 , croniter
@@ -77,7 +78,7 @@
 , enabledProviders ? []
 }:
 let
-  version = "2.3.4";
+  version = "2.4.1";
 
   airflow-src = fetchFromGitHub rec {
     owner = "apache";
@@ -85,7 +86,7 @@ let
     rev = "refs/tags/${version}";
     # Required because the GitHub archive tarballs don't appear to include tests
     leaveDotGit = true;
-    sha256 = "sha256-rxvLyz/hvZ6U8QKy9MiVofU0qeeo7OHctAj2PkxLh2c=";
+    sha256 = "sha256-HpPL/ocV7hRhYXsjfXMYvlP83Vh15kXyjBgubsaqaE8=";
   };
 
   # airflow bundles a web interface, which is built using webpack by an undocumented shell script in airflow's source tree.
@@ -146,6 +147,7 @@ buildPythonPackage rec {
     cattrs
     clickclick
     colorlog
+    configupdater
     connexion
     cron-descriptor
     croniter
@@ -223,7 +225,8 @@ buildPythonPackage rec {
   postPatch = ''
     substituteInPlace setup.cfg \
       --replace "colorlog>=4.0.2, <5.0" "colorlog" \
-      --replace "flask-login>=0.6.2" "flask-login"
+      --replace "flask-login>=0.6.2" "flask-login" \
+      --replace "pathspec~=0.9.0" "pathspec"
   '' + lib.optionalString stdenv.isDarwin ''
     # Fix failing test on Hydra
     substituteInPlace airflow/utils/db.py \
diff --git a/pkgs/development/python-modules/apache-airflow/package.json b/pkgs/development/python-modules/apache-airflow/package.json
index 644eaba0846e4..a2691cd96ae2e 100644
--- a/pkgs/development/python-modules/apache-airflow/package.json
+++ b/pkgs/development/python-modules/apache-airflow/package.json
@@ -7,8 +7,9 @@
     "dev": "NODE_ENV=development webpack --watch --progress --devtool eval-cheap-source-map --mode development",
     "prod": "NODE_ENV=production node --max_old_space_size=4096 ./node_modules/webpack/bin/webpack.js --mode production --progress",
     "build": "NODE_ENV=production webpack --progress --mode production",
-    "lint": "eslint --ignore-path=.eslintignore --ext .js,.jsx,.ts,.tsx . && tsc --noEmit",
-    "lint:fix": "eslint --fix --ignore-path=.eslintignore --ext .js,.jsx,.ts,.tsx . && tsc --noEmit"
+    "lint": "eslint --ignore-path=.eslintignore --ext .js,.jsx,.ts,.tsx . && tsc",
+    "lint:fix": "eslint --fix --ignore-path=.eslintignore --ext .js,.jsx,.ts,.tsx . && tsc",
+    "generate-api-types": "npx openapi-typescript \"../api_connexion/openapi/v1.yaml\" --output static/js/types/api-generated.ts && node alias-rest-types.js static/js/types/api-generated.ts"
   },
   "author": "Apache",
   "license": "Apache-2.0",
@@ -38,6 +39,7 @@
     "@testing-library/react": "^13.0.0",
     "@types/react": "^18.0.12",
     "@types/react-dom": "^18.0.5",
+    "@types/react-table": "^7.7.12",
     "@typescript-eslint/eslint-plugin": "^5.13.0",
     "@typescript-eslint/parser": "^5.0.0",
     "babel-jest": "^27.3.1",
@@ -61,15 +63,17 @@
     "imports-loader": "^1.1.0",
     "jest": "^27.3.1",
     "mini-css-extract-plugin": "^1.6.2",
-    "moment": "^2.29.3",
+    "moment": "^2.29.4",
     "moment-locales-webpack-plugin": "^1.2.0",
     "nock": "^13.2.4",
+    "openapi-typescript": "^5.4.1",
     "style-loader": "^1.2.1",
     "stylelint": "^13.6.1",
     "stylelint-config-standard": "^20.0.0",
     "terser-webpack-plugin": "<5.0.0",
     "typescript": "^4.6.3",
     "url-loader": "4.1.0",
+    "web-worker": "^1.2.0",
     "webpack": "^5.73.0",
     "webpack-cli": "^4.0.0",
     "webpack-license-plugin": "^4.2.1",
@@ -80,9 +84,14 @@
     "@emotion/cache": "^11.9.3",
     "@emotion/react": "^11.9.3",
     "@emotion/styled": "^11",
+    "@visx/group": "^2.10.0",
+    "@visx/marker": "^2.12.2",
+    "@visx/shape": "^2.12.2",
+    "@visx/zoom": "^2.10.0",
     "axios": "^0.26.0",
     "bootstrap-3-typeahead": "^4.0.2",
     "camelcase-keys": "^7.0.0",
+    "chakra-react-select": "^4.0.0",
     "codemirror": "^5.59.1",
     "d3": "^3.4.4",
     "d3-shape": "^2.1.0",
@@ -90,12 +99,13 @@
     "dagre-d3": "^0.6.4",
     "datatables.net": "^1.11.4",
     "datatables.net-bs": "^1.11.4",
+    "elkjs": "^0.7.1",
     "eonasdan-bootstrap-datetimepicker": "^4.17.47",
     "framer-motion": "^6.0.0",
     "jquery": ">=3.5.0",
     "jshint": "^2.13.4",
     "lodash": "^4.17.21",
-    "moment-timezone": "^0.5.34",
+    "moment-timezone": "^0.5.35",
     "nvd3": "^1.8.6",
     "react": "^18.0.0",
     "react-dom": "^18.0.0",
@@ -104,6 +114,7 @@
     "react-router-dom": "^6.3.0",
     "react-table": "^7.8.0",
     "redoc": "^2.0.0-rc.72",
+    "type-fest": "^2.17.0",
     "url-search-params-polyfill": "^8.1.0"
   }
 }
diff --git a/pkgs/development/python-modules/apache-airflow/providers.nix b/pkgs/development/python-modules/apache-airflow/providers.nix
index a4ca33a45aa5f..3c8205cfcb681 100644
--- a/pkgs/development/python-modules/apache-airflow/providers.nix
+++ b/pkgs/development/python-modules/apache-airflow/providers.nix
@@ -5,15 +5,15 @@
     imports = [ "airflow.providers.airbyte.hooks.airbyte" "airflow.providers.airbyte.operators.airbyte" ];
   };
   alibaba = {
-    deps = [  ];
+    deps = [ "oss2" ];
     imports = [ "airflow.providers.alibaba.cloud.hooks.oss" "airflow.providers.alibaba.cloud.operators.oss" ];
   };
   amazon = {
-    deps = [ "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "presto-python-client" "proto-plus" "psycopg2" "pymongo" "pymssql" "pyopenssl" "pysftp" "requests" "requests-toolbelt" "simple-salesforce" "slack-sdk" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
-    imports = [ "airflow.providers.amazon.aws.hooks.athena" "airflow.providers.amazon.aws.hooks.aws_dynamodb" "airflow.providers.amazon.aws.hooks.base_aws" "airflow.providers.amazon.aws.hooks.batch_client" "airflow.providers.amazon.aws.hooks.batch_waiters" "airflow.providers.amazon.aws.hooks.cloud_formation" "airflow.providers.amazon.aws.hooks.datasync" "airflow.providers.amazon.aws.hooks.dms" "airflow.providers.amazon.aws.hooks.dynamodb" "airflow.providers.amazon.aws.hooks.ec2" "airflow.providers.amazon.aws.hooks.eks" "airflow.providers.amazon.aws.hooks.elasticache_replication_group" "airflow.providers.amazon.aws.hooks.emr" "airflow.providers.amazon.aws.hooks.emr_containers" "airflow.providers.amazon.aws.hooks.glacier" "airflow.providers.amazon.aws.hooks.glue" "airflow.providers.amazon.aws.hooks.glue_catalog" "airflow.providers.amazon.aws.hooks.glue_crawler" "airflow.providers.amazon.aws.hooks.kinesis" "airflow.providers.amazon.aws.hooks.lambda_function" "airflow.providers.amazon.aws.hooks.logs" "airflow.providers.amazon.aws.hooks.rds" "airflow.providers.amazon.aws.hooks.redshift" "airflow.providers.amazon.aws.hooks.redshift_cluster" "airflow.providers.amazon.aws.hooks.redshift_data" "airflow.providers.amazon.aws.hooks.redshift_sql" "airflow.providers.amazon.aws.hooks.s3" "airflow.providers.amazon.aws.hooks.sagemaker" "airflow.providers.amazon.aws.hooks.secrets_manager" "airflow.providers.amazon.aws.hooks.ses" "airflow.providers.amazon.aws.hooks.sns" "airflow.providers.amazon.aws.hooks.sqs" "airflow.providers.amazon.aws.hooks.step_function" "airflow.providers.amazon.aws.operators.athena" "airflow.providers.amazon.aws.operators.aws_lambda" "airflow.providers.amazon.aws.operators.batch" "airflow.providers.amazon.aws.operators.cloud_formation" "airflow.providers.amazon.aws.operators.datasync" "airflow.providers.amazon.aws.operators.dms" "airflow.providers.amazon.aws.operators.dms_create_task" "airflow.providers.amazon.aws.operators.dms_delete_task" "airflow.providers.amazon.aws.operators.dms_describe_tasks" "airflow.providers.amazon.aws.operators.dms_start_task" "airflow.providers.amazon.aws.operators.dms_stop_task" "airflow.providers.amazon.aws.operators.ec2" "airflow.providers.amazon.aws.operators.ec2_start_instance" "airflow.providers.amazon.aws.operators.ec2_stop_instance" "airflow.providers.amazon.aws.operators.ecs" "airflow.providers.amazon.aws.operators.eks" "airflow.providers.amazon.aws.operators.emr" "airflow.providers.amazon.aws.operators.emr" "airflow.providers.amazon.aws.operators.emr_add_steps" "airflow.providers.amazon.aws.operators.emr_containers" "airflow.providers.amazon.aws.operators.emr_create_job_flow" "airflow.providers.amazon.aws.operators.emr_modify_cluster" "airflow.providers.amazon.aws.operators.emr_terminate_job_flow" "airflow.providers.amazon.aws.operators.glacier" "airflow.providers.amazon.aws.operators.glue" "airflow.providers.amazon.aws.operators.glue_crawler" "airflow.providers.amazon.aws.operators.rds" "airflow.providers.amazon.aws.operators.redshift" "airflow.providers.amazon.aws.operators.redshift_cluster" "airflow.providers.amazon.aws.operators.redshift_data" "airflow.providers.amazon.aws.operators.redshift_sql" "airflow.providers.amazon.aws.operators.s3" "airflow.providers.amazon.aws.operators.s3_bucket" "airflow.providers.amazon.aws.operators.s3_bucket_tagging" "airflow.providers.amazon.aws.operators.s3_copy_object" "airflow.providers.amazon.aws.operators.s3_delete_objects" "airflow.providers.amazon.aws.operators.s3_file_transform" "airflow.providers.amazon.aws.operators.s3_list" "airflow.providers.amazon.aws.operators.s3_list_prefixes" "airflow.providers.amazon.aws.operators.sagemaker" "airflow.providers.amazon.aws.operators.sagemaker_base" "airflow.providers.amazon.aws.operators.sagemaker_endpoint" "airflow.providers.amazon.aws.operators.sagemaker_endpoint_config" "airflow.providers.amazon.aws.operators.sagemaker_model" "airflow.providers.amazon.aws.operators.sagemaker_processing" "airflow.providers.amazon.aws.operators.sagemaker_training" "airflow.providers.amazon.aws.operators.sagemaker_transform" "airflow.providers.amazon.aws.operators.sagemaker_tuning" "airflow.providers.amazon.aws.operators.sns" "airflow.providers.amazon.aws.operators.sqs" "airflow.providers.amazon.aws.operators.step_function" "airflow.providers.amazon.aws.operators.step_function_get_execution_output" "airflow.providers.amazon.aws.operators.step_function_start_execution" ];
+    deps = [ "apache-beam" "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "azure-synapse-spark" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "proto-plus" "protobuf" "psycopg2" "pymongo" "pyopenssl" "pysftp" "simple-salesforce" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
+    imports = [ "airflow.providers.amazon.aws.hooks.appflow" "airflow.providers.amazon.aws.hooks.athena" "airflow.providers.amazon.aws.hooks.base_aws" "airflow.providers.amazon.aws.hooks.batch_client" "airflow.providers.amazon.aws.hooks.batch_waiters" "airflow.providers.amazon.aws.hooks.cloud_formation" "airflow.providers.amazon.aws.hooks.datasync" "airflow.providers.amazon.aws.hooks.dms" "airflow.providers.amazon.aws.hooks.dynamodb" "airflow.providers.amazon.aws.hooks.ec2" "airflow.providers.amazon.aws.hooks.ecs" "airflow.providers.amazon.aws.hooks.eks" "airflow.providers.amazon.aws.hooks.elasticache_replication_group" "airflow.providers.amazon.aws.hooks.emr" "airflow.providers.amazon.aws.hooks.emr" "airflow.providers.amazon.aws.hooks.glacier" "airflow.providers.amazon.aws.hooks.glue" "airflow.providers.amazon.aws.hooks.glue_catalog" "airflow.providers.amazon.aws.hooks.glue_crawler" "airflow.providers.amazon.aws.hooks.kinesis" "airflow.providers.amazon.aws.hooks.lambda_function" "airflow.providers.amazon.aws.hooks.logs" "airflow.providers.amazon.aws.hooks.quicksight" "airflow.providers.amazon.aws.hooks.rds" "airflow.providers.amazon.aws.hooks.redshift_cluster" "airflow.providers.amazon.aws.hooks.redshift_data" "airflow.providers.amazon.aws.hooks.redshift_sql" "airflow.providers.amazon.aws.hooks.s3" "airflow.providers.amazon.aws.hooks.sagemaker" "airflow.providers.amazon.aws.hooks.secrets_manager" "airflow.providers.amazon.aws.hooks.ses" "airflow.providers.amazon.aws.hooks.sns" "airflow.providers.amazon.aws.hooks.sqs" "airflow.providers.amazon.aws.hooks.step_function" "airflow.providers.amazon.aws.hooks.sts" "airflow.providers.amazon.aws.operators.appflow" "airflow.providers.amazon.aws.operators.athena" "airflow.providers.amazon.aws.operators.aws_lambda" "airflow.providers.amazon.aws.operators.batch" "airflow.providers.amazon.aws.operators.cloud_formation" "airflow.providers.amazon.aws.operators.datasync" "airflow.providers.amazon.aws.operators.dms" "airflow.providers.amazon.aws.operators.ec2" "airflow.providers.amazon.aws.operators.ecs" "airflow.providers.amazon.aws.operators.eks" "airflow.providers.amazon.aws.operators.emr" "airflow.providers.amazon.aws.operators.emr" "airflow.providers.amazon.aws.operators.glacier" "airflow.providers.amazon.aws.operators.glue" "airflow.providers.amazon.aws.operators.glue_crawler" "airflow.providers.amazon.aws.operators.lambda_function" "airflow.providers.amazon.aws.operators.quicksight" "airflow.providers.amazon.aws.operators.rds" "airflow.providers.amazon.aws.operators.redshift_cluster" "airflow.providers.amazon.aws.operators.redshift_data" "airflow.providers.amazon.aws.operators.redshift_sql" "airflow.providers.amazon.aws.operators.s3" "airflow.providers.amazon.aws.operators.sagemaker" "airflow.providers.amazon.aws.operators.sns" "airflow.providers.amazon.aws.operators.sqs" "airflow.providers.amazon.aws.operators.step_function" ];
   };
   apache_beam = {
-    deps = [ "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "presto-python-client" "proto-plus" "psycopg2" "pymongo" "pymssql" "pyopenssl" "pysftp" "requests" "requests-toolbelt" "simple-salesforce" "slack-sdk" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
+    deps = [ "apache-beam" "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "azure-synapse-spark" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "proto-plus" "protobuf" "psycopg2" "pymongo" "pyopenssl" "pysftp" "simple-salesforce" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
     imports = [ "airflow.providers.apache.beam.hooks.beam" "airflow.providers.apache.beam.operators.beam" ];
   };
   apache_cassandra = {
@@ -21,11 +21,11 @@
     imports = [ "airflow.providers.apache.cassandra.hooks.cassandra" ];
   };
   apache_drill = {
-    deps = [ "sqlparse" ];
+    deps = [  ];
     imports = [ "airflow.providers.apache.drill.hooks.drill" "airflow.providers.apache.drill.operators.drill" ];
   };
   apache_druid = {
-    deps = [ "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "presto-python-client" "proto-plus" "psycopg2" "pymongo" "pymssql" "pyopenssl" "pysftp" "requests" "requests-toolbelt" "simple-salesforce" "slack-sdk" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
+    deps = [ "apache-beam" "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "azure-synapse-spark" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "proto-plus" "protobuf" "psycopg2" "pymongo" "pyopenssl" "pysftp" "simple-salesforce" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
     imports = [ "airflow.providers.apache.druid.hooks.druid" "airflow.providers.apache.druid.operators.druid" "airflow.providers.apache.druid.operators.druid_check" ];
   };
   apache_hdfs = {
@@ -33,7 +33,7 @@
     imports = [ "airflow.providers.apache.hdfs.hooks.hdfs" "airflow.providers.apache.hdfs.hooks.webhdfs" ];
   };
   apache_hive = {
-    deps = [ "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "presto-python-client" "proto-plus" "psycopg2" "pymongo" "pymssql" "pyopenssl" "pysftp" "requests" "requests-toolbelt" "simple-salesforce" "slack-sdk" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
+    deps = [ "apache-beam" "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "azure-synapse-spark" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "proto-plus" "protobuf" "psycopg2" "pymongo" "pyopenssl" "pysftp" "simple-salesforce" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
     imports = [ "airflow.providers.apache.hive.hooks.hive" "airflow.providers.apache.hive.operators.hive" "airflow.providers.apache.hive.operators.hive_stats" ];
   };
   apache_kylin = {
@@ -49,7 +49,7 @@
     imports = [ "airflow.providers.apache.pig.hooks.pig" "airflow.providers.apache.pig.operators.pig" ];
   };
   apache_pinot = {
-    deps = [  ];
+    deps = [ "ciso8601" ];
     imports = [ "airflow.providers.apache.pinot.hooks.pinot" ];
   };
   apache_spark = {
@@ -68,6 +68,10 @@
     deps = [ "asana" ];
     imports = [ "airflow.providers.asana.hooks.asana" "airflow.providers.asana.operators.asana_tasks" ];
   };
+  atlassian_jira = {
+    deps = [ "jira" ];
+    imports = [ "airflow.providers.atlassian.jira.hooks.jira" "airflow.providers.atlassian.jira.operators.jira" ];
+  };
   celery = {
     deps = [ "celery" "flower" ];
     imports = [  ];
@@ -80,8 +84,12 @@
     deps = [ "cryptography" "kubernetes" ];
     imports = [ "airflow.providers.cncf.kubernetes.hooks.kubernetes" "airflow.providers.cncf.kubernetes.operators.kubernetes_pod" "airflow.providers.cncf.kubernetes.operators.spark_kubernetes" ];
   };
+  common_sql = {
+    deps = [ "sqlparse" ];
+    imports = [ "airflow.providers.common.sql.hooks.sql" "airflow.providers.common.sql.operators.sql" ];
+  };
   databricks = {
-    deps = [ "aiohttp" "requests" ];
+    deps = [ "aiohttp" "databricks-sql-connector" "requests" ];
     imports = [ "airflow.providers.databricks.hooks.databricks" "airflow.providers.databricks.hooks.databricks_base" "airflow.providers.databricks.hooks.databricks_sql" "airflow.providers.databricks.operators.databricks" "airflow.providers.databricks.operators.databricks_repos" "airflow.providers.databricks.operators.databricks_sql" ];
   };
   datadog = {
@@ -125,15 +133,15 @@
     imports = [ "airflow.providers.github.hooks.github" "airflow.providers.github.operators.github" ];
   };
   google = {
-    deps = [ "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "presto-python-client" "proto-plus" "psycopg2" "pymongo" "pymssql" "pyopenssl" "pysftp" "requests" "requests-toolbelt" "simple-salesforce" "slack-sdk" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
-    imports = [ "airflow.providers.google.ads.hooks.ads" "airflow.providers.google.ads.operators.ads" "airflow.providers.google.cloud.hooks.automl" "airflow.providers.google.cloud.hooks.bigquery" "airflow.providers.google.cloud.hooks.bigquery_dts" "airflow.providers.google.cloud.hooks.bigtable" "airflow.providers.google.cloud.hooks.cloud_build" "airflow.providers.google.cloud.hooks.cloud_composer" "airflow.providers.google.cloud.hooks.cloud_memorystore" "airflow.providers.google.cloud.hooks.cloud_sql" "airflow.providers.google.cloud.hooks.cloud_storage_transfer_service" "airflow.providers.google.cloud.hooks.compute" "airflow.providers.google.cloud.hooks.compute_ssh" "airflow.providers.google.cloud.hooks.datacatalog" "airflow.providers.google.cloud.hooks.dataflow" "airflow.providers.google.cloud.hooks.datafusion" "airflow.providers.google.cloud.hooks.dataplex" "airflow.providers.google.cloud.hooks.dataprep" "airflow.providers.google.cloud.hooks.dataproc" "airflow.providers.google.cloud.hooks.dataproc_metastore" "airflow.providers.google.cloud.hooks.datastore" "airflow.providers.google.cloud.hooks.dlp" "airflow.providers.google.cloud.hooks.functions" "airflow.providers.google.cloud.hooks.gcs" "airflow.providers.google.cloud.hooks.gdm" "airflow.providers.google.cloud.hooks.kms" "airflow.providers.google.cloud.hooks.kubernetes_engine" "airflow.providers.google.cloud.hooks.life_sciences" "airflow.providers.google.cloud.hooks.looker" "airflow.providers.google.cloud.hooks.mlengine" "airflow.providers.google.cloud.hooks.natural_language" "airflow.providers.google.cloud.hooks.os_login" "airflow.providers.google.cloud.hooks.pubsub" "airflow.providers.google.cloud.hooks.secret_manager" "airflow.providers.google.cloud.hooks.spanner" "airflow.providers.google.cloud.hooks.speech_to_text" "airflow.providers.google.cloud.hooks.stackdriver" "airflow.providers.google.cloud.hooks.tasks" "airflow.providers.google.cloud.hooks.text_to_speech" "airflow.providers.google.cloud.hooks.translate" "airflow.providers.google.cloud.hooks.vertex_ai.auto_ml" "airflow.providers.google.cloud.hooks.vertex_ai.batch_prediction_job" "airflow.providers.google.cloud.hooks.vertex_ai.custom_job" "airflow.providers.google.cloud.hooks.vertex_ai.dataset" "airflow.providers.google.cloud.hooks.vertex_ai.endpoint_service" "airflow.providers.google.cloud.hooks.vertex_ai.hyperparameter_tuning_job" "airflow.providers.google.cloud.hooks.vertex_ai.model_service" "airflow.providers.google.cloud.hooks.video_intelligence" "airflow.providers.google.cloud.hooks.vision" "airflow.providers.google.cloud.hooks.workflows" "airflow.providers.google.cloud.operators.automl" "airflow.providers.google.cloud.operators.bigquery" "airflow.providers.google.cloud.operators.bigquery_dts" "airflow.providers.google.cloud.operators.bigtable" "airflow.providers.google.cloud.operators.cloud_build" "airflow.providers.google.cloud.operators.cloud_composer" "airflow.providers.google.cloud.operators.cloud_memorystore" "airflow.providers.google.cloud.operators.cloud_sql" "airflow.providers.google.cloud.operators.cloud_storage_transfer_service" "airflow.providers.google.cloud.operators.compute" "airflow.providers.google.cloud.operators.datacatalog" "airflow.providers.google.cloud.operators.dataflow" "airflow.providers.google.cloud.operators.datafusion" "airflow.providers.google.cloud.operators.dataplex" "airflow.providers.google.cloud.operators.dataprep" "airflow.providers.google.cloud.operators.dataproc" "airflow.providers.google.cloud.operators.dataproc_metastore" "airflow.providers.google.cloud.operators.datastore" "airflow.providers.google.cloud.operators.dlp" "airflow.providers.google.cloud.operators.functions" "airflow.providers.google.cloud.operators.gcs" "airflow.providers.google.cloud.operators.kubernetes_engine" "airflow.providers.google.cloud.operators.life_sciences" "airflow.providers.google.cloud.operators.looker" "airflow.providers.google.cloud.operators.mlengine" "airflow.providers.google.cloud.operators.natural_language" "airflow.providers.google.cloud.operators.pubsub" "airflow.providers.google.cloud.operators.spanner" "airflow.providers.google.cloud.operators.speech_to_text" "airflow.providers.google.cloud.operators.stackdriver" "airflow.providers.google.cloud.operators.tasks" "airflow.providers.google.cloud.operators.text_to_speech" "airflow.providers.google.cloud.operators.translate" "airflow.providers.google.cloud.operators.translate_speech" "airflow.providers.google.cloud.operators.translate_speech" "airflow.providers.google.cloud.operators.vertex_ai.auto_ml" "airflow.providers.google.cloud.operators.vertex_ai.batch_prediction_job" "airflow.providers.google.cloud.operators.vertex_ai.custom_job" "airflow.providers.google.cloud.operators.vertex_ai.dataset" "airflow.providers.google.cloud.operators.vertex_ai.endpoint_service" "airflow.providers.google.cloud.operators.vertex_ai.hyperparameter_tuning_job" "airflow.providers.google.cloud.operators.vertex_ai.model_service" "airflow.providers.google.cloud.operators.video_intelligence" "airflow.providers.google.cloud.operators.vision" "airflow.providers.google.cloud.operators.workflows" "airflow.providers.google.common.hooks.base_google" "airflow.providers.google.common.hooks.discovery_api" "airflow.providers.google.firebase.hooks.firestore" "airflow.providers.google.firebase.operators.firestore" "airflow.providers.google.leveldb.hooks.leveldb" "airflow.providers.google.leveldb.operators.leveldb" "airflow.providers.google.marketing_platform.hooks.analytics" "airflow.providers.google.marketing_platform.hooks.campaign_manager" "airflow.providers.google.marketing_platform.hooks.display_video" "airflow.providers.google.marketing_platform.hooks.search_ads" "airflow.providers.google.marketing_platform.operators.analytics" "airflow.providers.google.marketing_platform.operators.campaign_manager" "airflow.providers.google.marketing_platform.operators.display_video" "airflow.providers.google.marketing_platform.operators.search_ads" "airflow.providers.google.suite.hooks.calendar" "airflow.providers.google.suite.hooks.drive" "airflow.providers.google.suite.hooks.sheets" "airflow.providers.google.suite.operators.sheets" ];
+    deps = [ "apache-beam" "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "azure-synapse-spark" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "proto-plus" "protobuf" "psycopg2" "pymongo" "pyopenssl" "pysftp" "simple-salesforce" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
+    imports = [ "airflow.providers.google.ads.hooks.ads" "airflow.providers.google.ads.operators.ads" "airflow.providers.google.cloud.hooks.automl" "airflow.providers.google.cloud.hooks.bigquery" "airflow.providers.google.cloud.hooks.bigquery_dts" "airflow.providers.google.cloud.hooks.bigtable" "airflow.providers.google.cloud.hooks.cloud_build" "airflow.providers.google.cloud.hooks.cloud_composer" "airflow.providers.google.cloud.hooks.cloud_memorystore" "airflow.providers.google.cloud.hooks.cloud_sql" "airflow.providers.google.cloud.hooks.cloud_storage_transfer_service" "airflow.providers.google.cloud.hooks.compute" "airflow.providers.google.cloud.hooks.compute_ssh" "airflow.providers.google.cloud.hooks.datacatalog" "airflow.providers.google.cloud.hooks.dataflow" "airflow.providers.google.cloud.hooks.dataform" "airflow.providers.google.cloud.hooks.datafusion" "airflow.providers.google.cloud.hooks.dataplex" "airflow.providers.google.cloud.hooks.dataprep" "airflow.providers.google.cloud.hooks.dataproc" "airflow.providers.google.cloud.hooks.dataproc_metastore" "airflow.providers.google.cloud.hooks.datastore" "airflow.providers.google.cloud.hooks.dlp" "airflow.providers.google.cloud.hooks.functions" "airflow.providers.google.cloud.hooks.gcs" "airflow.providers.google.cloud.hooks.gdm" "airflow.providers.google.cloud.hooks.kms" "airflow.providers.google.cloud.hooks.kubernetes_engine" "airflow.providers.google.cloud.hooks.life_sciences" "airflow.providers.google.cloud.hooks.looker" "airflow.providers.google.cloud.hooks.mlengine" "airflow.providers.google.cloud.hooks.natural_language" "airflow.providers.google.cloud.hooks.os_login" "airflow.providers.google.cloud.hooks.pubsub" "airflow.providers.google.cloud.hooks.secret_manager" "airflow.providers.google.cloud.hooks.spanner" "airflow.providers.google.cloud.hooks.speech_to_text" "airflow.providers.google.cloud.hooks.stackdriver" "airflow.providers.google.cloud.hooks.tasks" "airflow.providers.google.cloud.hooks.text_to_speech" "airflow.providers.google.cloud.hooks.translate" "airflow.providers.google.cloud.hooks.vertex_ai.auto_ml" "airflow.providers.google.cloud.hooks.vertex_ai.batch_prediction_job" "airflow.providers.google.cloud.hooks.vertex_ai.custom_job" "airflow.providers.google.cloud.hooks.vertex_ai.dataset" "airflow.providers.google.cloud.hooks.vertex_ai.endpoint_service" "airflow.providers.google.cloud.hooks.vertex_ai.hyperparameter_tuning_job" "airflow.providers.google.cloud.hooks.vertex_ai.model_service" "airflow.providers.google.cloud.hooks.video_intelligence" "airflow.providers.google.cloud.hooks.vision" "airflow.providers.google.cloud.hooks.workflows" "airflow.providers.google.cloud.operators.automl" "airflow.providers.google.cloud.operators.bigquery" "airflow.providers.google.cloud.operators.bigquery_dts" "airflow.providers.google.cloud.operators.bigtable" "airflow.providers.google.cloud.operators.cloud_build" "airflow.providers.google.cloud.operators.cloud_composer" "airflow.providers.google.cloud.operators.cloud_memorystore" "airflow.providers.google.cloud.operators.cloud_sql" "airflow.providers.google.cloud.operators.cloud_storage_transfer_service" "airflow.providers.google.cloud.operators.compute" "airflow.providers.google.cloud.operators.datacatalog" "airflow.providers.google.cloud.operators.dataflow" "airflow.providers.google.cloud.operators.dataform" "airflow.providers.google.cloud.operators.datafusion" "airflow.providers.google.cloud.operators.dataplex" "airflow.providers.google.cloud.operators.dataprep" "airflow.providers.google.cloud.operators.dataproc" "airflow.providers.google.cloud.operators.dataproc_metastore" "airflow.providers.google.cloud.operators.datastore" "airflow.providers.google.cloud.operators.dlp" "airflow.providers.google.cloud.operators.functions" "airflow.providers.google.cloud.operators.gcs" "airflow.providers.google.cloud.operators.kubernetes_engine" "airflow.providers.google.cloud.operators.life_sciences" "airflow.providers.google.cloud.operators.looker" "airflow.providers.google.cloud.operators.mlengine" "airflow.providers.google.cloud.operators.natural_language" "airflow.providers.google.cloud.operators.pubsub" "airflow.providers.google.cloud.operators.spanner" "airflow.providers.google.cloud.operators.speech_to_text" "airflow.providers.google.cloud.operators.stackdriver" "airflow.providers.google.cloud.operators.tasks" "airflow.providers.google.cloud.operators.text_to_speech" "airflow.providers.google.cloud.operators.translate" "airflow.providers.google.cloud.operators.translate_speech" "airflow.providers.google.cloud.operators.translate_speech" "airflow.providers.google.cloud.operators.vertex_ai.auto_ml" "airflow.providers.google.cloud.operators.vertex_ai.batch_prediction_job" "airflow.providers.google.cloud.operators.vertex_ai.custom_job" "airflow.providers.google.cloud.operators.vertex_ai.dataset" "airflow.providers.google.cloud.operators.vertex_ai.endpoint_service" "airflow.providers.google.cloud.operators.vertex_ai.hyperparameter_tuning_job" "airflow.providers.google.cloud.operators.vertex_ai.model_service" "airflow.providers.google.cloud.operators.video_intelligence" "airflow.providers.google.cloud.operators.vision" "airflow.providers.google.cloud.operators.workflows" "airflow.providers.google.common.hooks.base_google" "airflow.providers.google.common.hooks.discovery_api" "airflow.providers.google.firebase.hooks.firestore" "airflow.providers.google.firebase.operators.firestore" "airflow.providers.google.leveldb.hooks.leveldb" "airflow.providers.google.leveldb.operators.leveldb" "airflow.providers.google.marketing_platform.hooks.analytics" "airflow.providers.google.marketing_platform.hooks.campaign_manager" "airflow.providers.google.marketing_platform.hooks.display_video" "airflow.providers.google.marketing_platform.hooks.search_ads" "airflow.providers.google.marketing_platform.operators.analytics" "airflow.providers.google.marketing_platform.operators.campaign_manager" "airflow.providers.google.marketing_platform.operators.display_video" "airflow.providers.google.marketing_platform.operators.search_ads" "airflow.providers.google.suite.hooks.calendar" "airflow.providers.google.suite.hooks.drive" "airflow.providers.google.suite.hooks.sheets" "airflow.providers.google.suite.operators.sheets" ];
   };
   grpc = {
     deps = [ "google-auth" "google-auth-httplib2" "grpcio" ];
     imports = [ "airflow.providers.grpc.hooks.grpc" "airflow.providers.grpc.operators.grpc" ];
   };
   hashicorp = {
-    deps = [ "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "hvac" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "presto-python-client" "proto-plus" "psycopg2" "pymongo" "pymssql" "pyopenssl" "pysftp" "requests" "requests-toolbelt" "simple-salesforce" "slack-sdk" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
+    deps = [ "apache-beam" "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "azure-synapse-spark" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "hvac" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "proto-plus" "protobuf" "psycopg2" "pymongo" "pyopenssl" "pysftp" "simple-salesforce" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
     imports = [ "airflow.providers.hashicorp.hooks.vault" ];
   };
   http = {
@@ -161,15 +169,15 @@
     imports = [ "airflow.providers.jira.hooks.jira" "airflow.providers.jira.operators.jira" ];
   };
   microsoft_azure = {
-    deps = [ "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "presto-python-client" "proto-plus" "psycopg2" "pymongo" "pymssql" "pyopenssl" "pysftp" "requests" "requests-toolbelt" "simple-salesforce" "slack-sdk" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
-    imports = [ "airflow.providers.microsoft.azure.hooks.adx" "airflow.providers.microsoft.azure.hooks.azure_batch" "airflow.providers.microsoft.azure.hooks.azure_container_instance" "airflow.providers.microsoft.azure.hooks.azure_container_registry" "airflow.providers.microsoft.azure.hooks.azure_container_volume" "airflow.providers.microsoft.azure.hooks.azure_cosmos" "airflow.providers.microsoft.azure.hooks.azure_data_factory" "airflow.providers.microsoft.azure.hooks.azure_data_lake" "airflow.providers.microsoft.azure.hooks.azure_fileshare" "airflow.providers.microsoft.azure.hooks.base_azure" "airflow.providers.microsoft.azure.hooks.batch" "airflow.providers.microsoft.azure.hooks.container_instance" "airflow.providers.microsoft.azure.hooks.container_registry" "airflow.providers.microsoft.azure.hooks.container_volume" "airflow.providers.microsoft.azure.hooks.cosmos" "airflow.providers.microsoft.azure.hooks.data_factory" "airflow.providers.microsoft.azure.hooks.data_lake" "airflow.providers.microsoft.azure.hooks.fileshare" "airflow.providers.microsoft.azure.hooks.wasb" "airflow.providers.microsoft.azure.operators.adls" "airflow.providers.microsoft.azure.operators.adls_delete" "airflow.providers.microsoft.azure.operators.adls_list" "airflow.providers.microsoft.azure.operators.adx" "airflow.providers.microsoft.azure.operators.azure_batch" "airflow.providers.microsoft.azure.operators.azure_container_instances" "airflow.providers.microsoft.azure.operators.azure_cosmos" "airflow.providers.microsoft.azure.operators.batch" "airflow.providers.microsoft.azure.operators.container_instances" "airflow.providers.microsoft.azure.operators.cosmos" "airflow.providers.microsoft.azure.operators.data_factory" "airflow.providers.microsoft.azure.operators.wasb_delete_blob" ];
+    deps = [ "apache-beam" "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "azure-synapse-spark" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "proto-plus" "protobuf" "psycopg2" "pymongo" "pyopenssl" "pysftp" "simple-salesforce" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
+    imports = [ "airflow.providers.microsoft.azure.hooks.adx" "airflow.providers.microsoft.azure.hooks.asb" "airflow.providers.microsoft.azure.hooks.azure_batch" "airflow.providers.microsoft.azure.hooks.azure_container_instance" "airflow.providers.microsoft.azure.hooks.azure_container_registry" "airflow.providers.microsoft.azure.hooks.azure_container_volume" "airflow.providers.microsoft.azure.hooks.azure_cosmos" "airflow.providers.microsoft.azure.hooks.azure_data_factory" "airflow.providers.microsoft.azure.hooks.azure_data_lake" "airflow.providers.microsoft.azure.hooks.azure_fileshare" "airflow.providers.microsoft.azure.hooks.base_azure" "airflow.providers.microsoft.azure.hooks.batch" "airflow.providers.microsoft.azure.hooks.container_instance" "airflow.providers.microsoft.azure.hooks.container_registry" "airflow.providers.microsoft.azure.hooks.container_volume" "airflow.providers.microsoft.azure.hooks.cosmos" "airflow.providers.microsoft.azure.hooks.data_factory" "airflow.providers.microsoft.azure.hooks.data_lake" "airflow.providers.microsoft.azure.hooks.fileshare" "airflow.providers.microsoft.azure.hooks.synapse" "airflow.providers.microsoft.azure.hooks.wasb" "airflow.providers.microsoft.azure.operators.adls" "airflow.providers.microsoft.azure.operators.adls_delete" "airflow.providers.microsoft.azure.operators.adls_list" "airflow.providers.microsoft.azure.operators.adx" "airflow.providers.microsoft.azure.operators.asb" "airflow.providers.microsoft.azure.operators.azure_batch" "airflow.providers.microsoft.azure.operators.azure_container_instances" "airflow.providers.microsoft.azure.operators.azure_cosmos" "airflow.providers.microsoft.azure.operators.batch" "airflow.providers.microsoft.azure.operators.container_instances" "airflow.providers.microsoft.azure.operators.cosmos" "airflow.providers.microsoft.azure.operators.data_factory" "airflow.providers.microsoft.azure.operators.synapse" "airflow.providers.microsoft.azure.operators.wasb_delete_blob" ];
   };
   microsoft_mssql = {
-    deps = [ "pymssql" ];
+    deps = [  ];
     imports = [ "airflow.providers.microsoft.mssql.hooks.mssql" "airflow.providers.microsoft.mssql.operators.mssql" ];
   };
   microsoft_psrp = {
-    deps = [  ];
+    deps = [ "pypsrp" ];
     imports = [ "airflow.providers.microsoft.psrp.hooks.psrp" "airflow.providers.microsoft.psrp.operators.psrp" ];
   };
   microsoft_winrm = {
@@ -181,11 +189,11 @@
     imports = [ "airflow.providers.mongo.hooks.mongo" ];
   };
   mysql = {
-    deps = [ "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "presto-python-client" "proto-plus" "psycopg2" "pymongo" "pymssql" "pyopenssl" "pysftp" "requests" "requests-toolbelt" "simple-salesforce" "slack-sdk" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
+    deps = [ "apache-beam" "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "azure-synapse-spark" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "proto-plus" "protobuf" "psycopg2" "pymongo" "pyopenssl" "pysftp" "simple-salesforce" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
     imports = [ "airflow.providers.mysql.hooks.mysql" "airflow.providers.mysql.operators.mysql" ];
   };
   neo4j = {
-    deps = [  ];
+    deps = [ "neo4j" ];
     imports = [ "airflow.providers.neo4j.hooks.neo4j" "airflow.providers.neo4j.operators.neo4j" ];
   };
   odbc = {
@@ -217,11 +225,11 @@
     imports = [ "airflow.providers.plexus.hooks.plexus" "airflow.providers.plexus.operators.job" ];
   };
   postgres = {
-    deps = [ "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "presto-python-client" "proto-plus" "psycopg2" "pymongo" "pymssql" "pyopenssl" "pysftp" "requests" "requests-toolbelt" "simple-salesforce" "slack-sdk" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
+    deps = [ "apache-beam" "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "azure-synapse-spark" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "proto-plus" "protobuf" "psycopg2" "pymongo" "pyopenssl" "pysftp" "simple-salesforce" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
     imports = [ "airflow.providers.postgres.hooks.postgres" "airflow.providers.postgres.operators.postgres" ];
   };
   presto = {
-    deps = [ "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "presto-python-client" "proto-plus" "psycopg2" "pymongo" "pymssql" "pyopenssl" "pysftp" "requests" "requests-toolbelt" "simple-salesforce" "slack-sdk" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
+    deps = [ "apache-beam" "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "azure-synapse-spark" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "proto-plus" "protobuf" "psycopg2" "pymongo" "pyopenssl" "pysftp" "simple-salesforce" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
     imports = [ "airflow.providers.presto.hooks.presto" ];
   };
   qubole = {
@@ -234,7 +242,7 @@
   };
   salesforce = {
     deps = [ "pandas" "simple-salesforce" ];
-    imports = [ "airflow.providers.salesforce.hooks.salesforce" "airflow.providers.salesforce.hooks.tableau" "airflow.providers.salesforce.operators.salesforce_apex_rest" "airflow.providers.salesforce.operators.tableau_refresh_workbook" ];
+    imports = [ "airflow.providers.salesforce.hooks.salesforce" "airflow.providers.salesforce.operators.bulk" "airflow.providers.salesforce.operators.salesforce_apex_rest" ];
   };
   samba = {
     deps = [ "smbprotocol" ];
@@ -273,20 +281,20 @@
     imports = [ "airflow.providers.ssh.hooks.ssh" "airflow.providers.ssh.operators.ssh" ];
   };
   tableau = {
-    deps = [ "tableauserverclient" ];
+    deps = [  ];
     imports = [ "airflow.providers.tableau.hooks.tableau" "airflow.providers.tableau.operators.tableau" "airflow.providers.tableau.operators.tableau_refresh_workbook" ];
   };
   tabular = {
     deps = [  ];
-    imports = [  ];
+    imports = [ "airflow.providers.tabular.hooks.tabular" ];
   };
   telegram = {
     deps = [ "python-telegram-bot" ];
     imports = [ "airflow.providers.telegram.hooks.telegram" "airflow.providers.telegram.operators.telegram" ];
   };
   trino = {
-    deps = [ "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "presto-python-client" "proto-plus" "psycopg2" "pymongo" "pymssql" "pyopenssl" "pysftp" "requests" "requests-toolbelt" "simple-salesforce" "slack-sdk" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
-    imports = [ "airflow.providers.trino.hooks.trino" ];
+    deps = [ "apache-beam" "azure-batch" "azure-cosmos" "azure-datalake-store" "azure-identity" "azure-keyvault-secrets" "azure-mgmt-containerinstance" "azure-mgmt-datafactory" "azure-mgmt-datalake-store" "azure-mgmt-resource" "azure-servicebus" "azure-storage-blob" "azure-storage-common" "azure-storage-file" "azure-synapse-spark" "boto3" "cassandra-driver" "cryptography" "dnspython" "google-api-core" "google-api-python-client" "google-auth" "google-auth-httplib2" "google-cloud-automl" "google-cloud-bigquery-datatransfer" "google-cloud-bigtable" "google-cloud-container" "google-cloud-datacatalog" "google-cloud-dataproc" "google-cloud-dlp" "google-cloud-kms" "google-cloud-language" "google-cloud-logging" "google-cloud-monitoring" "google-cloud-pubsub" "google-cloud-redis" "google-cloud-secret-manager" "google-cloud-spanner" "google-cloud-speech" "google-cloud-storage" "google-cloud-tasks" "google-cloud-texttospeech" "google-cloud-translate" "google-cloud-videointelligence" "google-cloud-vision" "grpcio-gcp" "httpx" "json-merge-patch" "jsonpath-ng" "kubernetes" "mysqlclient" "pandas" "paramiko" "proto-plus" "protobuf" "psycopg2" "pymongo" "pyopenssl" "pysftp" "simple-salesforce" "smbprotocol" "sshtunnel" "thrift" "vertica-python" ];
+    imports = [ "airflow.providers.trino.hooks.trino" "airflow.providers.trino.operators.trino" ];
   };
   vertica = {
     deps = [ "vertica-python" ];
diff --git a/pkgs/development/python-modules/apache-airflow/yarn.lock b/pkgs/development/python-modules/apache-airflow/yarn.lock
index ddfe9654ab384..006831b90b292 100644
--- a/pkgs/development/python-modules/apache-airflow/yarn.lock
+++ b/pkgs/development/python-modules/apache-airflow/yarn.lock
@@ -1326,6 +1326,13 @@
   dependencies:
     regenerator-runtime "^0.13.4"
 
+"@babel/runtime@^7.12.0", "@babel/runtime@^7.16.3", "@babel/runtime@^7.8.7":
+  version "7.18.3"
+  resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.18.3.tgz#c7b654b57f6f63cf7f8b418ac9ca04408c4579f4"
+  integrity sha512-38Y8f7YUhce/K7RMwTp7m0uCumpv9hZkitCbBClqQIow1qSbCvGkcegKOXpEWCQLfWmevgRiWokZ1GkpfhbZug==
+  dependencies:
+    regenerator-runtime "^0.13.4"
+
 "@babel/runtime@^7.12.5", "@babel/runtime@^7.8.4", "@babel/runtime@^7.9.2":
   version "7.16.0"
   resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.16.0.tgz#e27b977f2e2088ba24748bf99b5e1dece64e4f0b"
@@ -1347,13 +1354,6 @@
   dependencies:
     regenerator-runtime "^0.13.4"
 
-"@babel/runtime@^7.16.3":
-  version "7.18.3"
-  resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.18.3.tgz#c7b654b57f6f63cf7f8b418ac9ca04408c4579f4"
-  integrity sha512-38Y8f7YUhce/K7RMwTp7m0uCumpv9hZkitCbBClqQIow1qSbCvGkcegKOXpEWCQLfWmevgRiWokZ1GkpfhbZug==
-  dependencies:
-    regenerator-runtime "^0.13.4"
-
 "@babel/runtime@^7.7.6":
   version "7.17.9"
   resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.17.9.tgz#d19fbf802d01a8cb6cf053a64e472d42c434ba72"
@@ -2077,7 +2077,7 @@
     source-map "^0.5.7"
     stylis "4.0.13"
 
-"@emotion/cache@^11.9.3":
+"@emotion/cache@^11.4.0", "@emotion/cache@^11.9.3":
   version "11.9.3"
   resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-11.9.3.tgz#96638449f6929fd18062cfe04d79b29b44c0d6cb"
   integrity sha512-0dgkI/JKlCXa+lEXviaMtGBL0ynpx4osh7rjOXE71q9bIF8G+XhJgvi+wDu0B0IdCVx37BffiwXlN9I3UuzFvg==
@@ -2117,7 +2117,7 @@
   resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.5.tgz#2c40f81449a4e554e9fc6396910ed4843ec2be50"
   integrity sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ==
 
-"@emotion/react@^11.9.3":
+"@emotion/react@^11.8.1", "@emotion/react@^11.9.3":
   version "11.9.3"
   resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.9.3.tgz#f4f4f34444f6654a2e550f5dab4f2d360c101df9"
   integrity sha512-g9Q1GcTOlzOEjqwuLF/Zd9LC+4FljjPjDfxSM7KmEakm+hsHXk+bYZ2q+/hTJzr0OUNkujo72pXLQvXj6H+GJQ==
@@ -2678,6 +2678,42 @@
   dependencies:
     "@babel/types" "^7.3.0"
 
+"@types/d3-color@^1":
+  version "1.4.2"
+  resolved "https://registry.yarnpkg.com/@types/d3-color/-/d3-color-1.4.2.tgz#944f281d04a0f06e134ea96adbb68303515b2784"
+  integrity sha512-fYtiVLBYy7VQX+Kx7wU/uOIkGQn8aAEY8oWMoyja3N4dLd8Yf6XgSIR/4yWvMuveNOH5VShnqCgRqqh/UNanBA==
+
+"@types/d3-interpolate@^1.3.1":
+  version "1.4.2"
+  resolved "https://registry.yarnpkg.com/@types/d3-interpolate/-/d3-interpolate-1.4.2.tgz#88902a205f682773a517612299a44699285eed7b"
+  integrity sha512-ylycts6llFf8yAEs1tXzx2loxxzDZHseuhPokrqKprTQSTcD3JbJI1omZP1rphsELZO3Q+of3ff0ZS7+O6yVzg==
+  dependencies:
+    "@types/d3-color" "^1"
+
+"@types/d3-path@^1", "@types/d3-path@^1.0.8":
+  version "1.0.9"
+  resolved "https://registry.yarnpkg.com/@types/d3-path/-/d3-path-1.0.9.tgz#73526b150d14cd96e701597cbf346cfd1fd4a58c"
+  integrity sha512-NaIeSIBiFgSC6IGUBjZWcscUJEq7vpVu7KthHN8eieTV9d9MqkSOZLH4chq1PmcKy06PNe3axLeKmRIyxJ+PZQ==
+
+"@types/d3-scale@^3.3.0":
+  version "3.3.2"
+  resolved "https://registry.yarnpkg.com/@types/d3-scale/-/d3-scale-3.3.2.tgz#18c94e90f4f1c6b1ee14a70f14bfca2bd1c61d06"
+  integrity sha512-gGqr7x1ost9px3FvIfUMi5XA/F/yAf4UkUDtdQhpH92XCT0Oa7zkkRzY61gPVJq+DxpHn/btouw5ohWkbBsCzQ==
+  dependencies:
+    "@types/d3-time" "^2"
+
+"@types/d3-shape@^1.3.1":
+  version "1.3.8"
+  resolved "https://registry.yarnpkg.com/@types/d3-shape/-/d3-shape-1.3.8.tgz#c3c15ec7436b4ce24e38de517586850f1fea8e89"
+  integrity sha512-gqfnMz6Fd5H6GOLYixOZP/xlrMtJms9BaS+6oWxTKHNqPGZ93BkWWupQSCYm6YHqx6h9wjRupuJb90bun6ZaYg==
+  dependencies:
+    "@types/d3-path" "^1"
+
+"@types/d3-time@^2", "@types/d3-time@^2.0.0":
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/@types/d3-time/-/d3-time-2.1.1.tgz#743fdc821c81f86537cbfece07093ac39b4bc342"
+  integrity sha512-9MVYlmIgmRR31C5b4FVSWtuMmBHh2mOWQYfl7XAYOa8dsnb7iEmUmRSWSFgXFtkjxO65d7hTUHQC+RhR/9IWFg==
+
 "@types/eslint-scope@^3.7.3":
   version "3.7.3"
   resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.3.tgz#125b88504b61e3c8bc6f870882003253005c3224"
@@ -2768,6 +2804,11 @@
   resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.178.tgz#341f6d2247db528d4a13ddbb374bcdc80406f4f8"
   integrity sha512-0d5Wd09ItQWH1qFbEyQ7oTQ3GZrMfth5JkbN3EvTKLXcHLRDSXeLnlvlOn0wvxVIwK5o2M8JzP/OWz7T3NRsbw==
 
+"@types/lodash@^4.14.172":
+  version "4.14.182"
+  resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.182.tgz#05301a4d5e62963227eaafe0ce04dd77c54ea5c2"
+  integrity sha512-/THyiqyQAP9AfARo4pF+aCGcyiQ94tX/Is2I7HofNRqoYLgN1PBoOWu2/zTA5zMxzP5EFutMtWtGAFRKUe961Q==
+
 "@types/mdast@^3.0.0":
   version "3.0.10"
   resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.10.tgz#4724244a82a4598884cbbe9bcfd73dff927ee8af"
@@ -2822,10 +2863,24 @@
   dependencies:
     "@types/react" "*"
 
+"@types/react-table@^7.7.12":
+  version "7.7.12"
+  resolved "https://registry.yarnpkg.com/@types/react-table/-/react-table-7.7.12.tgz#628011d3cb695b07c678704a61f2f1d5b8e567fd"
+  integrity sha512-bRUent+NR/WwtDGwI/BqhZ8XnHghwHw0HUKeohzB5xN3K2qKWYE5w19e7GCuOkL1CXD9Gi1HFy7TIm2AvgWUHg==
+  dependencies:
+    "@types/react" "*"
+
+"@types/react-transition-group@^4.4.0":
+  version "4.4.5"
+  resolved "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-4.4.5.tgz#aae20dcf773c5aa275d5b9f7cdbca638abc5e416"
+  integrity sha512-juKD/eiSM3/xZYzjuzH6ZwpP+/lejltmiS3QEzV/vmb/Q8+HfDmxu+Baga8UEMGBqV88Nbg4l2hY/K2DkyaLLA==
+  dependencies:
+    "@types/react" "*"
+
 "@types/react@*":
-  version "17.0.34"
-  resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.34.tgz#797b66d359b692e3f19991b6b07e4b0c706c0102"
-  integrity sha512-46FEGrMjc2+8XhHXILr+3+/sTe3OfzSPU9YGKILLrUYbQ1CLQC9Daqo1KzENGXAWwrFwiY0l4ZbF20gRvgpWTg==
+  version "18.0.15"
+  resolved "https://registry.yarnpkg.com/@types/react/-/react-18.0.15.tgz#d355644c26832dc27f3e6cbf0c4f4603fc4ab7fe"
+  integrity sha512-iz3BtLuIYH1uWdsv6wXYdhozhqj20oD4/Hk2DNXIn1kFsmp9x8d9QB6FnPhfkbhd2PgEONt9Q1x/ebkwjfFLow==
   dependencies:
     "@types/prop-types" "*"
     "@types/scheduler" "*"
@@ -2992,6 +3047,99 @@
     "@typescript-eslint/types" "5.27.1"
     eslint-visitor-keys "^3.3.0"
 
+"@use-gesture/core@10.2.17":
+  version "10.2.17"
+  resolved "https://registry.yarnpkg.com/@use-gesture/core/-/core-10.2.17.tgz#dc78913cd5d105217c3f1d1c16a32ad6426a00ba"
+  integrity sha512-62hCybe4x6oGZ1/JA9gSYIdghV1FqxCdvYWt9SqCEAAikwT1OmVl2Q/Uu8CP636L57D+DfXtw6PWM+fdhr4oJQ==
+
+"@use-gesture/react@^10.0.0-beta.22":
+  version "10.2.17"
+  resolved "https://registry.yarnpkg.com/@use-gesture/react/-/react-10.2.17.tgz#00bc413da42a358dd3f9173c0631b54522e76614"
+  integrity sha512-Vfrp1KgdYn/kOEUAYNXtGBCl2dr38s3G6rru1TOPs+cVUjfNyNxvJK56grUyJ336N3rQLK8F9G7+FfrHuc3g/Q==
+  dependencies:
+    "@use-gesture/core" "10.2.17"
+
+"@visx/curve@2.1.0":
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/@visx/curve/-/curve-2.1.0.tgz#f614bfe3db66df7db7382db7a75ced1506b94602"
+  integrity sha512-9b6JOnx91gmOQiSPhUOxdsvcnW88fgqfTPKoVgQxidMsD/I3wksixtwo8TR/vtEz2aHzzsEEhlv1qK7Y3yaSDw==
+  dependencies:
+    "@types/d3-shape" "^1.3.1"
+    d3-shape "^1.0.6"
+
+"@visx/event@2.6.0":
+  version "2.6.0"
+  resolved "https://registry.yarnpkg.com/@visx/event/-/event-2.6.0.tgz#0718eb1efabd5305cf659a153779c94ba4038996"
+  integrity sha512-WGp91g82s727g3NAnENF1ppC3ZAlvWg+Y+GG0WFg34NmmOZbvPI/PTOqTqZE3x6B8EUn8NJiMxRjxIMbi+IvRw==
+  dependencies:
+    "@types/react" "*"
+    "@visx/point" "2.6.0"
+
+"@visx/group@2.10.0", "@visx/group@^2.10.0":
+  version "2.10.0"
+  resolved "https://registry.yarnpkg.com/@visx/group/-/group-2.10.0.tgz#95839851832545621eb0d091866a61dafe552ae1"
+  integrity sha512-DNJDX71f65Et1+UgQvYlZbE66owYUAfcxTkC96Db6TnxV221VKI3T5l23UWbnMzwFBP9dR3PWUjjqhhF12N5pA==
+  dependencies:
+    "@types/react" "*"
+    classnames "^2.3.1"
+    prop-types "^15.6.2"
+
+"@visx/marker@^2.12.2":
+  version "2.12.2"
+  resolved "https://registry.yarnpkg.com/@visx/marker/-/marker-2.12.2.tgz#b81cea1a5d2b61c065aa97e4baccf9d0f17cab51"
+  integrity sha512-yvJDMBw9oKQDD2gX5q7O+raR9qk/NYqKFDZ0GtS4ZVH87PfNe0ZyTXt0vWbIaDaix/r58SMpv38GluIOxWE7jg==
+  dependencies:
+    "@types/react" "*"
+    "@visx/group" "2.10.0"
+    "@visx/shape" "2.12.2"
+    classnames "^2.3.1"
+    prop-types "^15.6.2"
+
+"@visx/point@2.6.0":
+  version "2.6.0"
+  resolved "https://registry.yarnpkg.com/@visx/point/-/point-2.6.0.tgz#c4316ca409b5b829c5455f07118d8c14a92cc633"
+  integrity sha512-amBi7yMz4S2VSchlPdliznN41TuES64506ySI22DeKQ+mc1s1+BudlpnY90sM1EIw4xnqbKmrghTTGfy6SVqvQ==
+
+"@visx/scale@2.2.2":
+  version "2.2.2"
+  resolved "https://registry.yarnpkg.com/@visx/scale/-/scale-2.2.2.tgz#b8eafabdcf92bb45ab196058fe184772ad80fd25"
+  integrity sha512-3aDySGUTpe6VykDQmF+g2nz5paFu9iSPTcCOEgkcru0/v5tmGzUdvivy8CkYbr87HN73V/Jc53lGm+kJUQcLBw==
+  dependencies:
+    "@types/d3-interpolate" "^1.3.1"
+    "@types/d3-scale" "^3.3.0"
+    "@types/d3-time" "^2.0.0"
+    d3-interpolate "^1.4.0"
+    d3-scale "^3.3.0"
+    d3-time "^2.1.1"
+
+"@visx/shape@2.12.2", "@visx/shape@^2.12.2":
+  version "2.12.2"
+  resolved "https://registry.yarnpkg.com/@visx/shape/-/shape-2.12.2.tgz#81ed88bf823aa84a4f5f32a9c9daf8371a606897"
+  integrity sha512-4gN0fyHWYXiJ+Ck8VAazXX0i8TOnLJvOc5jZBnaJDVxgnSIfCjJn0+Nsy96l9Dy/bCMTh4DBYUBv9k+YICBUOA==
+  dependencies:
+    "@types/d3-path" "^1.0.8"
+    "@types/d3-shape" "^1.3.1"
+    "@types/lodash" "^4.14.172"
+    "@types/react" "*"
+    "@visx/curve" "2.1.0"
+    "@visx/group" "2.10.0"
+    "@visx/scale" "2.2.2"
+    classnames "^2.3.1"
+    d3-path "^1.0.5"
+    d3-shape "^1.2.0"
+    lodash "^4.17.21"
+    prop-types "^15.5.10"
+
+"@visx/zoom@^2.10.0":
+  version "2.10.0"
+  resolved "https://registry.yarnpkg.com/@visx/zoom/-/zoom-2.10.0.tgz#143248813a35d2057eaf1a6336011d8650955533"
+  integrity sha512-sId1kuO3NvlzQTOorjeMWXRR3J44zQm8sofwKEt3O9IgaBZ49WzuPUm/owSdVT+YGsXnvxEr2qAdt26GRMzS7Q==
+  dependencies:
+    "@types/react" "*"
+    "@use-gesture/react" "^10.0.0-beta.22"
+    "@visx/event" "2.6.0"
+    prop-types "^15.6.2"
+
 "@webassemblyjs/ast@1.11.1":
   version "1.11.1"
   resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.1.tgz#2bfd767eae1a6996f432ff7e8d7fc75679c0b6a7"
@@ -3777,7 +3925,7 @@ caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001109:
 
 caniuse-lite@^1.0.30001219:
   version "1.0.30001312"
-  resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001312.tgz#e11eba4b87e24d22697dae05455d5aea28550d5f"
+  resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001312.tgz"
   integrity sha512-Wiz1Psk2MEK0pX3rUzWaunLTZzqS2JYZFzNKqAiJGiuxIjRPLgV6+VDPOg6lQOUxmDwhTlh198JsTTi8Hzw6aQ==
 
 caniuse-lite@^1.0.30001349:
@@ -3785,6 +3933,13 @@ caniuse-lite@^1.0.30001349:
   resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001354.tgz#95c5efdb64148bb4870771749b9a619304755ce5"
   integrity sha512-mImKeCkyGDAHNywYFA4bqnLAzTUvVkqPvhY4DV47X+Gl2c5Z8c3KNETnXp14GQt11LvxE8AwjzGxJ+rsikiOzg==
 
+chakra-react-select@^4.0.0:
+  version "4.0.3"
+  resolved "https://registry.yarnpkg.com/chakra-react-select/-/chakra-react-select-4.0.3.tgz#6760a92ee0b814ec89181503dde796584360e03d"
+  integrity sha512-QEjySGsd666s0LSrLxpJiOv0mVFPVHVjPMcj3JRga3H/rHpUukZ6ydYX0uXl0WMZtUST7R9hcKNs0bzA6RTP8Q==
+  dependencies:
+    react-select "^5.3.2"
+
 chalk@^2.0.0:
   version "2.4.2"
   resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
@@ -4275,6 +4430,13 @@ d3-array@1, d3-array@^1.1.1, d3-array@^1.2.0:
   resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-1.2.4.tgz#635ce4d5eea759f6f605863dbcfc30edc737f71f"
   integrity sha512-KHW6M86R+FUPYGb3R5XiYjXPq7VzwxZ22buHhAEVG5ztoEcZZMLov530mmccaqA1GghZArjQV46fuc8kUqhhHw==
 
+d3-array@2, d3-array@^2.3.0:
+  version "2.12.1"
+  resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-2.12.1.tgz#e20b41aafcdffdf5d50928004ececf815a465e81"
+  integrity sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==
+  dependencies:
+    internmap "^1.0.0"
+
 d3-axis@1:
   version "1.0.12"
   resolved "https://registry.yarnpkg.com/d3-axis/-/d3-axis-1.0.12.tgz#cdf20ba210cfbb43795af33756886fb3638daac9"
@@ -4309,6 +4471,11 @@ d3-color@1:
   resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-1.4.1.tgz#c52002bf8846ada4424d55d97982fef26eb3bc8a"
   integrity sha512-p2sTHSLCJI2QKunbGb7ocOh7DgTAn8IrLx21QRc/BSnodXM4sv6aLQlnfpvehFMLZEfBc6g9pH9SWQccFYfJ9Q==
 
+"d3-color@1 - 2":
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-2.0.0.tgz#8d625cab42ed9b8f601a1760a389f7ea9189d62e"
+  integrity sha512-SPXi0TSKPD4g9tw0NMZFnR95XVgUZiBH+uUTqQuDu1OsE2zomHU7ho0FISciaPvosimixwHFl3WHLGabv6dDgQ==
+
 d3-contour@1:
   version "1.3.2"
   resolved "https://registry.yarnpkg.com/d3-contour/-/d3-contour-1.3.2.tgz#652aacd500d2264cb3423cee10db69f6f59bead3"
@@ -4365,6 +4532,11 @@ d3-format@1:
   resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-1.4.5.tgz#374f2ba1320e3717eb74a9356c67daee17a7edb4"
   integrity sha512-J0piedu6Z8iB6TbIGfZgDzfXxUFN3qQRMofy2oPdXzQibYGqPB/9iMcxr/TGalU+2RsyDO+U4f33id8tbnSRMQ==
 
+"d3-format@1 - 2":
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-2.0.0.tgz#a10bcc0f986c372b729ba447382413aabf5b0767"
+  integrity sha512-Ab3S6XuE/Q+flY96HXT0jOXcM4EAClYFnRGY5zsjRGNy6qCYrQsMffs7cV5Q9xejb35zxW5hf/guKw34kvIKsA==
+
 d3-geo@1:
   version "1.12.1"
   resolved "https://registry.yarnpkg.com/d3-geo/-/d3-geo-1.12.1.tgz#7fc2ab7414b72e59fbcbd603e80d9adc029b035f"
@@ -4377,14 +4549,21 @@ d3-hierarchy@1:
   resolved "https://registry.yarnpkg.com/d3-hierarchy/-/d3-hierarchy-1.1.9.tgz#2f6bee24caaea43f8dc37545fa01628559647a83"
   integrity sha512-j8tPxlqh1srJHAtxfvOUwKNYJkQuBFdM1+JAUfq6xqH5eAqf93L7oG1NVqDa4CpFZNvnNKtCYEUC8KY9yEn9lQ==
 
-d3-interpolate@1:
+d3-interpolate@1, d3-interpolate@^1.4.0:
   version "1.4.0"
   resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-1.4.0.tgz#526e79e2d80daa383f9e0c1c1c7dcc0f0583e987"
   integrity sha512-V9znK0zc3jOPV4VD2zZn0sDhZU3WAE2bmlxdIwwQPPzPjvyLkd8B3JUVdS1IDUFDkWZ72c9qnv1GK2ZagTZ8EA==
   dependencies:
     d3-color "1"
 
-d3-path@1:
+"d3-interpolate@1.2.0 - 2":
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-2.0.1.tgz#98be499cfb8a3b94d4ff616900501a64abc91163"
+  integrity sha512-c5UhwwTs/yybcmTpAVqwSFl6vrQ8JZJoT5F7xNFK9pymv5C0Ymcc9/LIJHtYIggg/yS9YHw8i8O8tgb9pupjeQ==
+  dependencies:
+    d3-color "1 - 2"
+
+d3-path@1, d3-path@^1.0.5:
   version "1.0.9"
   resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-1.0.9.tgz#48c050bb1fe8c262493a8caf5524e3e9591701cf"
   integrity sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==
@@ -4429,12 +4608,23 @@ d3-scale@2:
     d3-time "1"
     d3-time-format "2"
 
+d3-scale@^3.3.0:
+  version "3.3.0"
+  resolved "https://registry.yarnpkg.com/d3-scale/-/d3-scale-3.3.0.tgz#28c600b29f47e5b9cd2df9749c206727966203f3"
+  integrity sha512-1JGp44NQCt5d1g+Yy+GeOnZP7xHo0ii8zsQp6PGzd+C1/dl0KGsp9A7Mxwp+1D1o4unbTTxVdU/ZOIEBoeZPbQ==
+  dependencies:
+    d3-array "^2.3.0"
+    d3-format "1 - 2"
+    d3-interpolate "1.2.0 - 2"
+    d3-time "^2.1.1"
+    d3-time-format "2 - 3"
+
 d3-selection@1, d3-selection@^1.1.0, d3-selection@^1.3.0:
   version "1.4.2"
   resolved "https://registry.yarnpkg.com/d3-selection/-/d3-selection-1.4.2.tgz#dcaa49522c0dbf32d6c1858afc26b6094555bc5c"
   integrity sha512-SJ0BqYihzOjDnnlfyeHT0e30k0K1+5sR3d5fNueCNeuhZTnGw4M4o8mqJchSwgKMXCNFo+e2VTChiSJ0vYtXkg==
 
-d3-shape@1:
+d3-shape@1, d3-shape@^1.0.6, d3-shape@^1.2.0:
   version "1.3.7"
   resolved "https://registry.yarnpkg.com/d3-shape/-/d3-shape-1.3.7.tgz#df63801be07bc986bc54f63789b4fe502992b5d7"
   integrity sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==
@@ -4455,11 +4645,25 @@ d3-time-format@2:
   dependencies:
     d3-time "1"
 
+"d3-time-format@2 - 3":
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-3.0.0.tgz#df8056c83659e01f20ac5da5fdeae7c08d5f1bb6"
+  integrity sha512-UXJh6EKsHBTjopVqZBhFysQcoXSv/5yLONZvkQ5Kk3qbwiUYkdX17Xa1PT6U1ZWXGGfB1ey5L8dKMlFq2DO0Ag==
+  dependencies:
+    d3-time "1 - 2"
+
 d3-time@1:
   version "1.1.0"
   resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-1.1.0.tgz#b1e19d307dae9c900b7e5b25ffc5dcc249a8a0f1"
   integrity sha512-Xh0isrZ5rPYYdqhAVk8VLnMEidhz5aP7htAADH6MfzgmmicPkTo8LhkLxci61/lCB7n7UmE3bN0leRt+qvkLxA==
 
+"d3-time@1 - 2", d3-time@^2.1.1:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-2.1.1.tgz#e9d8a8a88691f4548e68ca085e5ff956724a6682"
+  integrity sha512-/eIQe/eR4kCQwq7yxi7z4c6qEXf2IYGcjoWB5OOQy4Tq9Uv39/947qlDcN2TLkiTzQWzvnsuYPB9TrWaNfipKQ==
+  dependencies:
+    d3-array "2"
+
 d3-timer@1:
   version "1.0.10"
   resolved "https://registry.yarnpkg.com/d3-timer/-/d3-timer-1.0.10.tgz#dfe76b8a91748831b13b6d9c793ffbd508dd9de5"
@@ -4757,6 +4961,14 @@ dom-accessibility-api@^0.5.6, dom-accessibility-api@^0.5.9:
   resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.10.tgz#caa6d08f60388d0bb4539dd75fe458a9a1d0014c"
   integrity sha512-Xu9mD0UjrJisTmv7lmVSDMagQcU9R5hwAbxsaAE/35XPnPLJobbuREfV/rraiSaEj/UOvgrzQs66zyTWTlyd+g==
 
+dom-helpers@^5.0.1:
+  version "5.2.1"
+  resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.2.1.tgz#d9400536b2bf8225ad98fe052e029451ac40e902"
+  integrity sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==
+  dependencies:
+    "@babel/runtime" "^7.8.7"
+    csstype "^3.0.2"
+
 dom-serializer@0:
   version "0.2.2"
   resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51"
@@ -4868,6 +5080,11 @@ electron-to-chromium@^1.4.147:
   resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.156.tgz#fc398e1bfbe586135351ebfaf198473a82923af5"
   integrity sha512-/Wj5NC7E0wHaMCdqxWz9B0lv7CcycDTiHyXCtbbu3pXM9TV2AOp8BtMqkVuqvJNdEvltBG6LxT2Q+BxY4LUCIA==
 
+elkjs@^0.7.1:
+  version "0.7.1"
+  resolved "https://registry.yarnpkg.com/elkjs/-/elkjs-0.7.1.tgz#4751c5e918a4988139baf7f214e010aea22de969"
+  integrity sha512-lD86RWdh480/UuRoHhRcnv2IMkIcK6yMDEuT8TPBIbO3db4HfnVF+1lgYdQi99Ck0yb+lg5Eb46JCHI5uOsmAw==
+
 emittery@^0.8.1:
   version "0.8.1"
   resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860"
@@ -5703,6 +5920,11 @@ globals@^13.15.0:
   dependencies:
     type-fest "^0.20.2"
 
+globalyzer@0.1.0:
+  version "0.1.0"
+  resolved "https://registry.yarnpkg.com/globalyzer/-/globalyzer-0.1.0.tgz#cb76da79555669a1519d5a8edf093afaa0bf1465"
+  integrity sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==
+
 globby@^11.0.1, globby@^11.0.3, globby@^11.1.0:
   version "11.1.0"
   resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b"
@@ -5731,6 +5953,11 @@ globjoin@^0.1.4:
   resolved "https://registry.yarnpkg.com/globjoin/-/globjoin-0.1.4.tgz#2f4494ac8919e3767c5cbb691e9f463324285d43"
   integrity sha1-L0SUrIkZ43Z8XLtpHp9GMyQoXUM=
 
+globrex@^0.1.2:
+  version "0.1.2"
+  resolved "https://registry.yarnpkg.com/globrex/-/globrex-0.1.2.tgz#dd5d9ec826232730cd6793a5e33a9302985e6098"
+  integrity sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==
+
 gonzales-pe@^4.3.0:
   version "4.3.0"
   resolved "https://registry.yarnpkg.com/gonzales-pe/-/gonzales-pe-4.3.0.tgz#fe9dec5f3c557eead09ff868c65826be54d067b3"
@@ -6019,6 +6246,11 @@ internal-slot@^1.0.3:
     has "^1.0.3"
     side-channel "^1.0.4"
 
+internmap@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/internmap/-/internmap-1.0.1.tgz#0017cc8a3b99605f0302f2b198d272e015e5df95"
+  integrity sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==
+
 interpret@^2.2.0:
   version "2.2.0"
   resolved "https://registry.yarnpkg.com/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9"
@@ -7230,6 +7462,11 @@ mdn-data@2.0.14:
   resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.14.tgz#7113fc4281917d63ce29b43446f701e68c25ba50"
   integrity sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==
 
+memoize-one@^5.0.0:
+  version "5.2.1"
+  resolved "https://registry.yarnpkg.com/memoize-one/-/memoize-one-5.2.1.tgz#8337aa3c4335581839ec01c3d594090cebe8f00e"
+  integrity sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==
+
 meow@^9.0.0:
   version "9.0.0"
   resolved "https://registry.yarnpkg.com/meow/-/meow-9.0.0.tgz#cd9510bc5cac9dee7d03c73ee1f9ad959f4ea364"
@@ -7315,6 +7552,11 @@ mime-types@^2.1.27:
   dependencies:
     mime-db "1.52.0"
 
+mime@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/mime/-/mime-3.0.0.tgz#b374550dca3a0c18443b0c950a6a58f1931cf7a7"
+  integrity sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==
+
 mimic-fn@^2.1.0:
   version "2.1.0"
   resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"
@@ -7436,22 +7678,17 @@ moment-timezone@^0.4.0:
   dependencies:
     moment ">= 2.6.0"
 
-moment-timezone@^0.5.34:
-  version "0.5.34"
-  resolved "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.34.tgz#a75938f7476b88f155d3504a9343f7519d9a405c"
-  integrity sha512-3zAEHh2hKUs3EXLESx/wsgw6IQdusOT8Bxm3D9UrHPQR7zlMmzwybC8zHEM1tQ4LJwP7fcxrWr8tuBg05fFCbg==
+moment-timezone@^0.5.35:
+  version "0.5.35"
+  resolved "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.35.tgz#6fa2631bdbe8ff04f6b8753f7199516be6dc9839"
+  integrity sha512-cY/pBOEXepQvlgli06ttCTKcIf8cD1nmNwOKQQAdHBqYApQSpAqotBMX0RJZNgMp6i0PlZuf1mFtnlyEkwyvFw==
   dependencies:
     moment ">= 2.9.0"
 
-"moment@>= 2.6.0", moment@^2.10:
-  version "2.29.2"
-  resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.2.tgz#00910c60b20843bcba52d37d58c628b47b1f20e4"
-  integrity sha512-UgzG4rvxYpN15jgCmVJwac49h9ly9NurikMWGPdVxm8GZD6XjkKPxDTjQQ43gtGgnV3X0cAyWDdP2Wexoquifg==
-
-"moment@>= 2.9.0", moment@^2.29.3:
-  version "2.29.3"
-  resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.3.tgz#edd47411c322413999f7a5940d526de183c031f3"
-  integrity sha512-c6YRvhEo//6T2Jz/vVtYzqBzwvPT95JBQ+smCytzf7c50oMZRsR/a4w88aD34I+/QVSfnoAnSBFPJHItlOMJVw==
+"moment@>= 2.6.0", "moment@>= 2.9.0", moment@^2.10, moment@^2.29.4:
+  version "2.29.4"
+  resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.4.tgz#3dbe052889fe7c1b2ed966fcb3a77328964ef108"
+  integrity sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==
 
 ms@2.0.0:
   version "2.0.0"
@@ -7772,6 +8009,18 @@ openapi-sampler@^1.3.0:
     "@types/json-schema" "^7.0.7"
     json-pointer "0.6.2"
 
+openapi-typescript@^5.4.1:
+  version "5.4.1"
+  resolved "https://registry.yarnpkg.com/openapi-typescript/-/openapi-typescript-5.4.1.tgz#38b4b45244acc1361f3c444537833a9e9cb03bf6"
+  integrity sha512-AGB2QiZPz4rE7zIwV3dRHtoUC/CWHhUjuzGXvtmMQN2AFV8xCTLKcZUHLcdPQmt/83i22nRE7+TxXOXkK+gf4Q==
+  dependencies:
+    js-yaml "^4.1.0"
+    mime "^3.0.0"
+    prettier "^2.6.2"
+    tiny-glob "^0.2.9"
+    undici "^5.4.0"
+    yargs-parser "^21.0.1"
+
 optionator@^0.8.1:
   version "0.8.3"
   resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495"
@@ -8348,6 +8597,11 @@ prelude-ls@~1.1.2:
   resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
   integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=
 
+prettier@^2.6.2:
+  version "2.7.1"
+  resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.7.1.tgz#e235806850d057f97bb08368a4f7d899f7760c64"
+  integrity sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==
+
 pretty-format@^27.0.0, pretty-format@^27.0.2, pretty-format@^27.3.1:
   version "27.3.1"
   resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.3.1.tgz#7e9486365ccdd4a502061fa761d3ab9ca1b78df5"
@@ -8394,7 +8648,7 @@ prop-types@^15.5.0:
     object-assign "^4.1.1"
     react-is "^16.8.1"
 
-prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1:
+prop-types@^15.5.10, prop-types@^15.6.0, prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1:
   version "15.8.1"
   resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5"
   integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==
@@ -8530,6 +8784,19 @@ react-router@6.3.0:
   dependencies:
     history "^5.2.0"
 
+react-select@^5.3.2:
+  version "5.3.2"
+  resolved "https://registry.yarnpkg.com/react-select/-/react-select-5.3.2.tgz#ecee0d5c59ed4acb7f567f7de3c75a488d93dacb"
+  integrity sha512-W6Irh7U6Ha7p5uQQ2ZnemoCQ8mcfgOtHfw3wuMzG6FAu0P+CYicgofSLOq97BhjMx8jS+h+wwWdCBeVVZ9VqlQ==
+  dependencies:
+    "@babel/runtime" "^7.12.0"
+    "@emotion/cache" "^11.4.0"
+    "@emotion/react" "^11.8.1"
+    "@types/react-transition-group" "^4.4.0"
+    memoize-one "^5.0.0"
+    prop-types "^15.6.0"
+    react-transition-group "^4.3.0"
+
 react-style-singleton@^2.2.1:
   version "2.2.1"
   resolved "https://registry.yarnpkg.com/react-style-singleton/-/react-style-singleton-2.2.1.tgz#f99e420492b2d8f34d38308ff660b60d0b1205b4"
@@ -8552,6 +8819,16 @@ react-tabs@^3.2.2:
     clsx "^1.1.0"
     prop-types "^15.5.0"
 
+react-transition-group@^4.3.0:
+  version "4.4.2"
+  resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-4.4.2.tgz#8b59a56f09ced7b55cbd53c36768b922890d5470"
+  integrity sha512-/RNYfRAMlZwDSr6z4zNKV6xu53/e2BuaBbGhbyYIXTrmgu/bGHzmqOs7mJSJBHy9Ud+ApHx3QjrkKSp1pxvlFg==
+  dependencies:
+    "@babel/runtime" "^7.5.5"
+    dom-helpers "^5.0.1"
+    loose-envify "^1.4.0"
+    prop-types "^15.6.2"
+
 react@^18.0.0:
   version "18.1.0"
   resolved "https://registry.yarnpkg.com/react/-/react-18.1.0.tgz#6f8620382decb17fdc5cc223a115e2adbf104890"
@@ -9580,6 +9857,14 @@ throat@^6.0.1:
   resolved "https://registry.yarnpkg.com/throat/-/throat-6.0.1.tgz#d514fedad95740c12c2d7fc70ea863eb51ade375"
   integrity sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==
 
+tiny-glob@^0.2.9:
+  version "0.2.9"
+  resolved "https://registry.yarnpkg.com/tiny-glob/-/tiny-glob-0.2.9.tgz#2212d441ac17928033b110f8b3640683129d31e2"
+  integrity sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==
+  dependencies:
+    globalyzer "0.1.0"
+    globrex "^0.1.2"
+
 tiny-invariant@^1.0.6:
   version "1.2.0"
   resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.2.0.tgz#a1141f86b672a9148c72e978a19a73b9b94a15a9"
@@ -9719,6 +10004,11 @@ type-fest@^1.2.1:
   resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-1.4.0.tgz#e9fb813fe3bf1744ec359d55d1affefa76f14be1"
   integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==
 
+type-fest@^2.17.0:
+  version "2.17.0"
+  resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-2.17.0.tgz#c677030ce61e5be0c90c077d52571eb73c506ea9"
+  integrity sha512-U+g3/JVXnOki1kLSc+xZGPRll3Ah9u2VIG6Sn9iH9YX6UkPERmt6O/0fIyTgsd2/whV0+gAaHAg8fz6sG1QzMA==
+
 typedarray-to-buffer@^3.1.5:
   version "3.1.5"
   resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080"
@@ -9751,6 +10041,11 @@ unbox-primitive@^1.0.2:
     has-symbols "^1.0.3"
     which-boxed-primitive "^1.0.2"
 
+undici@^5.4.0:
+  version "5.9.1"
+  resolved "https://registry.yarnpkg.com/undici/-/undici-5.9.1.tgz#fc9fd85dd488f965f153314a63d9426a11f3360b"
+  integrity sha512-6fB3a+SNnWEm4CJbgo0/CWR8RGcOCQP68SF4X0mxtYTq2VNN8T88NYrWVBAeSX+zb7bny2dx2iYhP3XHi00omg==
+
 unicode-canonical-property-names-ecmascript@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc"
@@ -9947,6 +10242,11 @@ watchpack@^2.3.1:
     glob-to-regexp "^0.4.1"
     graceful-fs "^4.1.2"
 
+web-worker@^1.2.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/web-worker/-/web-worker-1.2.0.tgz#5d85a04a7fbc1e7db58f66595d7a3ac7c9c180da"
+  integrity sha512-PgF341avzqyx60neE9DD+XS26MMNMoUQRz9NOZwW32nPQrF6p77f1htcnjBSEV8BGMKZ16choqUG4hyI0Hx7mA==
+
 webidl-conversions@^3.0.0:
   version "3.0.1"
   resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871"
@@ -10187,6 +10487,11 @@ yargs-parser@^20.2.2, yargs-parser@^20.2.3:
   resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.7.tgz#61df85c113edfb5a7a4e36eb8aa60ef423cbc90a"
   integrity sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==
 
+yargs-parser@^21.0.1:
+  version "21.0.1"
+  resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.0.1.tgz#0267f286c877a4f0f728fceb6f8a3e4cb95c6e35"
+  integrity sha512-9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg==
+
 yargs@^16.2.0:
   version "16.2.0"
   resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66"
diff --git a/pkgs/development/python-modules/apache-airflow/yarn.nix b/pkgs/development/python-modules/apache-airflow/yarn.nix
index a3ce81f446d4e..0fc3dd1da2609 100644
--- a/pkgs/development/python-modules/apache-airflow/yarn.nix
+++ b/pkgs/development/python-modules/apache-airflow/yarn.nix
@@ -1234,6 +1234,14 @@
       };
     }
     {
+      name = "_babel_runtime___runtime_7.18.3.tgz";
+      path = fetchurl {
+        name = "_babel_runtime___runtime_7.18.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.18.3.tgz";
+        sha512 = "38Y8f7YUhce/K7RMwTp7m0uCumpv9hZkitCbBClqQIow1qSbCvGkcegKOXpEWCQLfWmevgRiWokZ1GkpfhbZug==";
+      };
+    }
+    {
       name = "_babel_runtime___runtime_7.16.0.tgz";
       path = fetchurl {
         name = "_babel_runtime___runtime_7.16.0.tgz";
@@ -1258,14 +1266,6 @@
       };
     }
     {
-      name = "_babel_runtime___runtime_7.18.3.tgz";
-      path = fetchurl {
-        name = "_babel_runtime___runtime_7.18.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.18.3.tgz";
-        sha512 = "38Y8f7YUhce/K7RMwTp7m0uCumpv9hZkitCbBClqQIow1qSbCvGkcegKOXpEWCQLfWmevgRiWokZ1GkpfhbZug==";
-      };
-    }
-    {
       name = "_babel_runtime___runtime_7.17.9.tgz";
       path = fetchurl {
         name = "_babel_runtime___runtime_7.17.9.tgz";
@@ -2354,6 +2354,54 @@
       };
     }
     {
+      name = "_types_d3_color___d3_color_1.4.2.tgz";
+      path = fetchurl {
+        name = "_types_d3_color___d3_color_1.4.2.tgz";
+        url  = "https://registry.yarnpkg.com/@types/d3-color/-/d3-color-1.4.2.tgz";
+        sha512 = "fYtiVLBYy7VQX+Kx7wU/uOIkGQn8aAEY8oWMoyja3N4dLd8Yf6XgSIR/4yWvMuveNOH5VShnqCgRqqh/UNanBA==";
+      };
+    }
+    {
+      name = "_types_d3_interpolate___d3_interpolate_1.4.2.tgz";
+      path = fetchurl {
+        name = "_types_d3_interpolate___d3_interpolate_1.4.2.tgz";
+        url  = "https://registry.yarnpkg.com/@types/d3-interpolate/-/d3-interpolate-1.4.2.tgz";
+        sha512 = "ylycts6llFf8yAEs1tXzx2loxxzDZHseuhPokrqKprTQSTcD3JbJI1omZP1rphsELZO3Q+of3ff0ZS7+O6yVzg==";
+      };
+    }
+    {
+      name = "_types_d3_path___d3_path_1.0.9.tgz";
+      path = fetchurl {
+        name = "_types_d3_path___d3_path_1.0.9.tgz";
+        url  = "https://registry.yarnpkg.com/@types/d3-path/-/d3-path-1.0.9.tgz";
+        sha512 = "NaIeSIBiFgSC6IGUBjZWcscUJEq7vpVu7KthHN8eieTV9d9MqkSOZLH4chq1PmcKy06PNe3axLeKmRIyxJ+PZQ==";
+      };
+    }
+    {
+      name = "_types_d3_scale___d3_scale_3.3.2.tgz";
+      path = fetchurl {
+        name = "_types_d3_scale___d3_scale_3.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/@types/d3-scale/-/d3-scale-3.3.2.tgz";
+        sha512 = "gGqr7x1ost9px3FvIfUMi5XA/F/yAf4UkUDtdQhpH92XCT0Oa7zkkRzY61gPVJq+DxpHn/btouw5ohWkbBsCzQ==";
+      };
+    }
+    {
+      name = "_types_d3_shape___d3_shape_1.3.8.tgz";
+      path = fetchurl {
+        name = "_types_d3_shape___d3_shape_1.3.8.tgz";
+        url  = "https://registry.yarnpkg.com/@types/d3-shape/-/d3-shape-1.3.8.tgz";
+        sha512 = "gqfnMz6Fd5H6GOLYixOZP/xlrMtJms9BaS+6oWxTKHNqPGZ93BkWWupQSCYm6YHqx6h9wjRupuJb90bun6ZaYg==";
+      };
+    }
+    {
+      name = "_types_d3_time___d3_time_2.1.1.tgz";
+      path = fetchurl {
+        name = "_types_d3_time___d3_time_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/d3-time/-/d3-time-2.1.1.tgz";
+        sha512 = "9MVYlmIgmRR31C5b4FVSWtuMmBHh2mOWQYfl7XAYOa8dsnb7iEmUmRSWSFgXFtkjxO65d7hTUHQC+RhR/9IWFg==";
+      };
+    }
+    {
       name = "_types_eslint_scope___eslint_scope_3.7.3.tgz";
       path = fetchurl {
         name = "_types_eslint_scope___eslint_scope_3.7.3.tgz";
@@ -2466,6 +2514,14 @@
       };
     }
     {
+      name = "_types_lodash___lodash_4.14.182.tgz";
+      path = fetchurl {
+        name = "_types_lodash___lodash_4.14.182.tgz";
+        url  = "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.182.tgz";
+        sha512 = "/THyiqyQAP9AfARo4pF+aCGcyiQ94tX/Is2I7HofNRqoYLgN1PBoOWu2/zTA5zMxzP5EFutMtWtGAFRKUe961Q==";
+      };
+    }
+    {
       name = "_types_mdast___mdast_3.0.10.tgz";
       path = fetchurl {
         name = "_types_mdast___mdast_3.0.10.tgz";
@@ -2546,11 +2602,27 @@
       };
     }
     {
-      name = "_types_react___react_17.0.34.tgz";
+      name = "_types_react_table___react_table_7.7.12.tgz";
+      path = fetchurl {
+        name = "_types_react_table___react_table_7.7.12.tgz";
+        url  = "https://registry.yarnpkg.com/@types/react-table/-/react-table-7.7.12.tgz";
+        sha512 = "bRUent+NR/WwtDGwI/BqhZ8XnHghwHw0HUKeohzB5xN3K2qKWYE5w19e7GCuOkL1CXD9Gi1HFy7TIm2AvgWUHg==";
+      };
+    }
+    {
+      name = "_types_react_transition_group___react_transition_group_4.4.5.tgz";
       path = fetchurl {
-        name = "_types_react___react_17.0.34.tgz";
-        url  = "https://registry.yarnpkg.com/@types/react/-/react-17.0.34.tgz";
-        sha512 = "46FEGrMjc2+8XhHXILr+3+/sTe3OfzSPU9YGKILLrUYbQ1CLQC9Daqo1KzENGXAWwrFwiY0l4ZbF20gRvgpWTg==";
+        name = "_types_react_transition_group___react_transition_group_4.4.5.tgz";
+        url  = "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-4.4.5.tgz";
+        sha512 = "juKD/eiSM3/xZYzjuzH6ZwpP+/lejltmiS3QEzV/vmb/Q8+HfDmxu+Baga8UEMGBqV88Nbg4l2hY/K2DkyaLLA==";
+      };
+    }
+    {
+      name = "_types_react___react_18.0.15.tgz";
+      path = fetchurl {
+        name = "_types_react___react_18.0.15.tgz";
+        url  = "https://registry.yarnpkg.com/@types/react/-/react-18.0.15.tgz";
+        sha512 = "iz3BtLuIYH1uWdsv6wXYdhozhqj20oD4/Hk2DNXIn1kFsmp9x8d9QB6FnPhfkbhd2PgEONt9Q1x/ebkwjfFLow==";
       };
     }
     {
@@ -2714,6 +2786,86 @@
       };
     }
     {
+      name = "_use_gesture_core___core_10.2.17.tgz";
+      path = fetchurl {
+        name = "_use_gesture_core___core_10.2.17.tgz";
+        url  = "https://registry.yarnpkg.com/@use-gesture/core/-/core-10.2.17.tgz";
+        sha512 = "62hCybe4x6oGZ1/JA9gSYIdghV1FqxCdvYWt9SqCEAAikwT1OmVl2Q/Uu8CP636L57D+DfXtw6PWM+fdhr4oJQ==";
+      };
+    }
+    {
+      name = "_use_gesture_react___react_10.2.17.tgz";
+      path = fetchurl {
+        name = "_use_gesture_react___react_10.2.17.tgz";
+        url  = "https://registry.yarnpkg.com/@use-gesture/react/-/react-10.2.17.tgz";
+        sha512 = "Vfrp1KgdYn/kOEUAYNXtGBCl2dr38s3G6rru1TOPs+cVUjfNyNxvJK56grUyJ336N3rQLK8F9G7+FfrHuc3g/Q==";
+      };
+    }
+    {
+      name = "_visx_curve___curve_2.1.0.tgz";
+      path = fetchurl {
+        name = "_visx_curve___curve_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/@visx/curve/-/curve-2.1.0.tgz";
+        sha512 = "9b6JOnx91gmOQiSPhUOxdsvcnW88fgqfTPKoVgQxidMsD/I3wksixtwo8TR/vtEz2aHzzsEEhlv1qK7Y3yaSDw==";
+      };
+    }
+    {
+      name = "_visx_event___event_2.6.0.tgz";
+      path = fetchurl {
+        name = "_visx_event___event_2.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/@visx/event/-/event-2.6.0.tgz";
+        sha512 = "WGp91g82s727g3NAnENF1ppC3ZAlvWg+Y+GG0WFg34NmmOZbvPI/PTOqTqZE3x6B8EUn8NJiMxRjxIMbi+IvRw==";
+      };
+    }
+    {
+      name = "_visx_group___group_2.10.0.tgz";
+      path = fetchurl {
+        name = "_visx_group___group_2.10.0.tgz";
+        url  = "https://registry.yarnpkg.com/@visx/group/-/group-2.10.0.tgz";
+        sha512 = "DNJDX71f65Et1+UgQvYlZbE66owYUAfcxTkC96Db6TnxV221VKI3T5l23UWbnMzwFBP9dR3PWUjjqhhF12N5pA==";
+      };
+    }
+    {
+      name = "_visx_marker___marker_2.12.2.tgz";
+      path = fetchurl {
+        name = "_visx_marker___marker_2.12.2.tgz";
+        url  = "https://registry.yarnpkg.com/@visx/marker/-/marker-2.12.2.tgz";
+        sha512 = "yvJDMBw9oKQDD2gX5q7O+raR9qk/NYqKFDZ0GtS4ZVH87PfNe0ZyTXt0vWbIaDaix/r58SMpv38GluIOxWE7jg==";
+      };
+    }
+    {
+      name = "_visx_point___point_2.6.0.tgz";
+      path = fetchurl {
+        name = "_visx_point___point_2.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/@visx/point/-/point-2.6.0.tgz";
+        sha512 = "amBi7yMz4S2VSchlPdliznN41TuES64506ySI22DeKQ+mc1s1+BudlpnY90sM1EIw4xnqbKmrghTTGfy6SVqvQ==";
+      };
+    }
+    {
+      name = "_visx_scale___scale_2.2.2.tgz";
+      path = fetchurl {
+        name = "_visx_scale___scale_2.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/@visx/scale/-/scale-2.2.2.tgz";
+        sha512 = "3aDySGUTpe6VykDQmF+g2nz5paFu9iSPTcCOEgkcru0/v5tmGzUdvivy8CkYbr87HN73V/Jc53lGm+kJUQcLBw==";
+      };
+    }
+    {
+      name = "_visx_shape___shape_2.12.2.tgz";
+      path = fetchurl {
+        name = "_visx_shape___shape_2.12.2.tgz";
+        url  = "https://registry.yarnpkg.com/@visx/shape/-/shape-2.12.2.tgz";
+        sha512 = "4gN0fyHWYXiJ+Ck8VAazXX0i8TOnLJvOc5jZBnaJDVxgnSIfCjJn0+Nsy96l9Dy/bCMTh4DBYUBv9k+YICBUOA==";
+      };
+    }
+    {
+      name = "_visx_zoom___zoom_2.10.0.tgz";
+      path = fetchurl {
+        name = "_visx_zoom___zoom_2.10.0.tgz";
+        url  = "https://registry.yarnpkg.com/@visx/zoom/-/zoom-2.10.0.tgz";
+        sha512 = "sId1kuO3NvlzQTOorjeMWXRR3J44zQm8sofwKEt3O9IgaBZ49WzuPUm/owSdVT+YGsXnvxEr2qAdt26GRMzS7Q==";
+      };
+    }
+    {
       name = "_webassemblyjs_ast___ast_1.11.1.tgz";
       path = fetchurl {
         name = "_webassemblyjs_ast___ast_1.11.1.tgz";
@@ -3546,10 +3698,10 @@
       };
     }
     {
-      name = "caniuse_lite___caniuse_lite_1.0.30001312.tgz";
+      name = "https___registry.npmjs.org_caniuse_lite___caniuse_lite_1.0.30001312.tgz";
       path = fetchurl {
-        name = "caniuse_lite___caniuse_lite_1.0.30001312.tgz";
-        url  = "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001312.tgz";
+        name = "https___registry.npmjs.org_caniuse_lite___caniuse_lite_1.0.30001312.tgz";
+        url  = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001312.tgz";
         sha512 = "Wiz1Psk2MEK0pX3rUzWaunLTZzqS2JYZFzNKqAiJGiuxIjRPLgV6+VDPOg6lQOUxmDwhTlh198JsTTi8Hzw6aQ==";
       };
     }
@@ -3562,6 +3714,14 @@
       };
     }
     {
+      name = "chakra_react_select___chakra_react_select_4.0.3.tgz";
+      path = fetchurl {
+        name = "chakra_react_select___chakra_react_select_4.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/chakra-react-select/-/chakra-react-select-4.0.3.tgz";
+        sha512 = "QEjySGsd666s0LSrLxpJiOv0mVFPVHVjPMcj3JRga3H/rHpUukZ6ydYX0uXl0WMZtUST7R9hcKNs0bzA6RTP8Q==";
+      };
+    }
+    {
       name = "chalk___chalk_2.4.2.tgz";
       path = fetchurl {
         name = "chalk___chalk_2.4.2.tgz";
@@ -4114,6 +4274,14 @@
       };
     }
     {
+      name = "d3_array___d3_array_2.12.1.tgz";
+      path = fetchurl {
+        name = "d3_array___d3_array_2.12.1.tgz";
+        url  = "https://registry.yarnpkg.com/d3-array/-/d3-array-2.12.1.tgz";
+        sha512 = "B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==";
+      };
+    }
+    {
       name = "d3_axis___d3_axis_1.0.12.tgz";
       path = fetchurl {
         name = "d3_axis___d3_axis_1.0.12.tgz";
@@ -4154,6 +4322,14 @@
       };
     }
     {
+      name = "d3_color___d3_color_2.0.0.tgz";
+      path = fetchurl {
+        name = "d3_color___d3_color_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/d3-color/-/d3-color-2.0.0.tgz";
+        sha512 = "SPXi0TSKPD4g9tw0NMZFnR95XVgUZiBH+uUTqQuDu1OsE2zomHU7ho0FISciaPvosimixwHFl3WHLGabv6dDgQ==";
+      };
+    }
+    {
       name = "d3_contour___d3_contour_1.3.2.tgz";
       path = fetchurl {
         name = "d3_contour___d3_contour_1.3.2.tgz";
@@ -4218,6 +4394,14 @@
       };
     }
     {
+      name = "d3_format___d3_format_2.0.0.tgz";
+      path = fetchurl {
+        name = "d3_format___d3_format_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/d3-format/-/d3-format-2.0.0.tgz";
+        sha512 = "Ab3S6XuE/Q+flY96HXT0jOXcM4EAClYFnRGY5zsjRGNy6qCYrQsMffs7cV5Q9xejb35zxW5hf/guKw34kvIKsA==";
+      };
+    }
+    {
       name = "d3_geo___d3_geo_1.12.1.tgz";
       path = fetchurl {
         name = "d3_geo___d3_geo_1.12.1.tgz";
@@ -4242,6 +4426,14 @@
       };
     }
     {
+      name = "d3_interpolate___d3_interpolate_2.0.1.tgz";
+      path = fetchurl {
+        name = "d3_interpolate___d3_interpolate_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-2.0.1.tgz";
+        sha512 = "c5UhwwTs/yybcmTpAVqwSFl6vrQ8JZJoT5F7xNFK9pymv5C0Ymcc9/LIJHtYIggg/yS9YHw8i8O8tgb9pupjeQ==";
+      };
+    }
+    {
       name = "d3_path___d3_path_1.0.9.tgz";
       path = fetchurl {
         name = "d3_path___d3_path_1.0.9.tgz";
@@ -4298,6 +4490,14 @@
       };
     }
     {
+      name = "d3_scale___d3_scale_3.3.0.tgz";
+      path = fetchurl {
+        name = "d3_scale___d3_scale_3.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/d3-scale/-/d3-scale-3.3.0.tgz";
+        sha512 = "1JGp44NQCt5d1g+Yy+GeOnZP7xHo0ii8zsQp6PGzd+C1/dl0KGsp9A7Mxwp+1D1o4unbTTxVdU/ZOIEBoeZPbQ==";
+      };
+    }
+    {
       name = "d3_selection___d3_selection_1.4.2.tgz";
       path = fetchurl {
         name = "d3_selection___d3_selection_1.4.2.tgz";
@@ -4330,6 +4530,14 @@
       };
     }
     {
+      name = "d3_time_format___d3_time_format_3.0.0.tgz";
+      path = fetchurl {
+        name = "d3_time_format___d3_time_format_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-3.0.0.tgz";
+        sha512 = "UXJh6EKsHBTjopVqZBhFysQcoXSv/5yLONZvkQ5Kk3qbwiUYkdX17Xa1PT6U1ZWXGGfB1ey5L8dKMlFq2DO0Ag==";
+      };
+    }
+    {
       name = "d3_time___d3_time_1.1.0.tgz";
       path = fetchurl {
         name = "d3_time___d3_time_1.1.0.tgz";
@@ -4338,6 +4546,14 @@
       };
     }
     {
+      name = "d3_time___d3_time_2.1.1.tgz";
+      path = fetchurl {
+        name = "d3_time___d3_time_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/d3-time/-/d3-time-2.1.1.tgz";
+        sha512 = "/eIQe/eR4kCQwq7yxi7z4c6qEXf2IYGcjoWB5OOQy4Tq9Uv39/947qlDcN2TLkiTzQWzvnsuYPB9TrWaNfipKQ==";
+      };
+    }
+    {
       name = "d3_timer___d3_timer_1.0.10.tgz";
       path = fetchurl {
         name = "d3_timer___d3_timer_1.0.10.tgz";
@@ -4658,6 +4874,14 @@
       };
     }
     {
+      name = "dom_helpers___dom_helpers_5.2.1.tgz";
+      path = fetchurl {
+        name = "dom_helpers___dom_helpers_5.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.2.1.tgz";
+        sha512 = "nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==";
+      };
+    }
+    {
       name = "dom_serializer___dom_serializer_0.2.2.tgz";
       path = fetchurl {
         name = "dom_serializer___dom_serializer_0.2.2.tgz";
@@ -4786,6 +5010,14 @@
       };
     }
     {
+      name = "elkjs___elkjs_0.7.1.tgz";
+      path = fetchurl {
+        name = "elkjs___elkjs_0.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/elkjs/-/elkjs-0.7.1.tgz";
+        sha512 = "lD86RWdh480/UuRoHhRcnv2IMkIcK6yMDEuT8TPBIbO3db4HfnVF+1lgYdQi99Ck0yb+lg5Eb46JCHI5uOsmAw==";
+      };
+    }
+    {
       name = "emittery___emittery_0.8.1.tgz";
       path = fetchurl {
         name = "emittery___emittery_0.8.1.tgz";
@@ -5650,6 +5882,14 @@
       };
     }
     {
+      name = "globalyzer___globalyzer_0.1.0.tgz";
+      path = fetchurl {
+        name = "globalyzer___globalyzer_0.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/globalyzer/-/globalyzer-0.1.0.tgz";
+        sha512 = "40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==";
+      };
+    }
+    {
       name = "globby___globby_11.1.0.tgz";
       path = fetchurl {
         name = "globby___globby_11.1.0.tgz";
@@ -5674,6 +5914,14 @@
       };
     }
     {
+      name = "globrex___globrex_0.1.2.tgz";
+      path = fetchurl {
+        name = "globrex___globrex_0.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/globrex/-/globrex-0.1.2.tgz";
+        sha512 = "uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==";
+      };
+    }
+    {
       name = "gonzales_pe___gonzales_pe_4.3.0.tgz";
       path = fetchurl {
         name = "gonzales_pe___gonzales_pe_4.3.0.tgz";
@@ -6034,6 +6282,14 @@
       };
     }
     {
+      name = "internmap___internmap_1.0.1.tgz";
+      path = fetchurl {
+        name = "internmap___internmap_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/internmap/-/internmap-1.0.1.tgz";
+        sha512 = "lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==";
+      };
+    }
+    {
       name = "interpret___interpret_2.2.0.tgz";
       path = fetchurl {
         name = "interpret___interpret_2.2.0.tgz";
@@ -7250,6 +7506,14 @@
       };
     }
     {
+      name = "memoize_one___memoize_one_5.2.1.tgz";
+      path = fetchurl {
+        name = "memoize_one___memoize_one_5.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/memoize-one/-/memoize-one-5.2.1.tgz";
+        sha512 = "zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==";
+      };
+    }
+    {
       name = "meow___meow_9.0.0.tgz";
       path = fetchurl {
         name = "meow___meow_9.0.0.tgz";
@@ -7346,6 +7610,14 @@
       };
     }
     {
+      name = "mime___mime_3.0.0.tgz";
+      path = fetchurl {
+        name = "mime___mime_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/mime/-/mime-3.0.0.tgz";
+        sha512 = "jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==";
+      };
+    }
+    {
       name = "mimic_fn___mimic_fn_2.1.0.tgz";
       path = fetchurl {
         name = "mimic_fn___mimic_fn_2.1.0.tgz";
@@ -7490,27 +7762,19 @@
       };
     }
     {
-      name = "moment_timezone___moment_timezone_0.5.34.tgz";
-      path = fetchurl {
-        name = "moment_timezone___moment_timezone_0.5.34.tgz";
-        url  = "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.34.tgz";
-        sha512 = "3zAEHh2hKUs3EXLESx/wsgw6IQdusOT8Bxm3D9UrHPQR7zlMmzwybC8zHEM1tQ4LJwP7fcxrWr8tuBg05fFCbg==";
-      };
-    }
-    {
-      name = "moment___moment_2.29.2.tgz";
+      name = "moment_timezone___moment_timezone_0.5.35.tgz";
       path = fetchurl {
-        name = "moment___moment_2.29.2.tgz";
-        url  = "https://registry.yarnpkg.com/moment/-/moment-2.29.2.tgz";
-        sha512 = "UgzG4rvxYpN15jgCmVJwac49h9ly9NurikMWGPdVxm8GZD6XjkKPxDTjQQ43gtGgnV3X0cAyWDdP2Wexoquifg==";
+        name = "moment_timezone___moment_timezone_0.5.35.tgz";
+        url  = "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.35.tgz";
+        sha512 = "cY/pBOEXepQvlgli06ttCTKcIf8cD1nmNwOKQQAdHBqYApQSpAqotBMX0RJZNgMp6i0PlZuf1mFtnlyEkwyvFw==";
       };
     }
     {
-      name = "moment___moment_2.29.3.tgz";
+      name = "moment___moment_2.29.4.tgz";
       path = fetchurl {
-        name = "moment___moment_2.29.3.tgz";
-        url  = "https://registry.yarnpkg.com/moment/-/moment-2.29.3.tgz";
-        sha512 = "c6YRvhEo//6T2Jz/vVtYzqBzwvPT95JBQ+smCytzf7c50oMZRsR/a4w88aD34I+/QVSfnoAnSBFPJHItlOMJVw==";
+        name = "moment___moment_2.29.4.tgz";
+        url  = "https://registry.yarnpkg.com/moment/-/moment-2.29.4.tgz";
+        sha512 = "5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==";
       };
     }
     {
@@ -7898,6 +8162,14 @@
       };
     }
     {
+      name = "openapi_typescript___openapi_typescript_5.4.1.tgz";
+      path = fetchurl {
+        name = "openapi_typescript___openapi_typescript_5.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/openapi-typescript/-/openapi-typescript-5.4.1.tgz";
+        sha512 = "AGB2QiZPz4rE7zIwV3dRHtoUC/CWHhUjuzGXvtmMQN2AFV8xCTLKcZUHLcdPQmt/83i22nRE7+TxXOXkK+gf4Q==";
+      };
+    }
+    {
       name = "optionator___optionator_0.8.3.tgz";
       path = fetchurl {
         name = "optionator___optionator_0.8.3.tgz";
@@ -8578,6 +8850,14 @@
       };
     }
     {
+      name = "prettier___prettier_2.7.1.tgz";
+      path = fetchurl {
+        name = "prettier___prettier_2.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/prettier/-/prettier-2.7.1.tgz";
+        sha512 = "ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==";
+      };
+    }
+    {
       name = "pretty_format___pretty_format_27.3.1.tgz";
       path = fetchurl {
         name = "pretty_format___pretty_format_27.3.1.tgz";
@@ -8786,6 +9066,14 @@
       };
     }
     {
+      name = "react_select___react_select_5.3.2.tgz";
+      path = fetchurl {
+        name = "react_select___react_select_5.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/react-select/-/react-select-5.3.2.tgz";
+        sha512 = "W6Irh7U6Ha7p5uQQ2ZnemoCQ8mcfgOtHfw3wuMzG6FAu0P+CYicgofSLOq97BhjMx8jS+h+wwWdCBeVVZ9VqlQ==";
+      };
+    }
+    {
       name = "react_style_singleton___react_style_singleton_2.2.1.tgz";
       path = fetchurl {
         name = "react_style_singleton___react_style_singleton_2.2.1.tgz";
@@ -8810,6 +9098,14 @@
       };
     }
     {
+      name = "react_transition_group___react_transition_group_4.4.2.tgz";
+      path = fetchurl {
+        name = "react_transition_group___react_transition_group_4.4.2.tgz";
+        url  = "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-4.4.2.tgz";
+        sha512 = "/RNYfRAMlZwDSr6z4zNKV6xu53/e2BuaBbGhbyYIXTrmgu/bGHzmqOs7mJSJBHy9Ud+ApHx3QjrkKSp1pxvlFg==";
+      };
+    }
+    {
       name = "react___react_18.1.0.tgz";
       path = fetchurl {
         name = "react___react_18.1.0.tgz";
@@ -9914,6 +10210,14 @@
       };
     }
     {
+      name = "tiny_glob___tiny_glob_0.2.9.tgz";
+      path = fetchurl {
+        name = "tiny_glob___tiny_glob_0.2.9.tgz";
+        url  = "https://registry.yarnpkg.com/tiny-glob/-/tiny-glob-0.2.9.tgz";
+        sha512 = "g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==";
+      };
+    }
+    {
       name = "tiny_invariant___tiny_invariant_1.2.0.tgz";
       path = fetchurl {
         name = "tiny_invariant___tiny_invariant_1.2.0.tgz";
@@ -10106,6 +10410,14 @@
       };
     }
     {
+      name = "type_fest___type_fest_2.17.0.tgz";
+      path = fetchurl {
+        name = "type_fest___type_fest_2.17.0.tgz";
+        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-2.17.0.tgz";
+        sha512 = "U+g3/JVXnOki1kLSc+xZGPRll3Ah9u2VIG6Sn9iH9YX6UkPERmt6O/0fIyTgsd2/whV0+gAaHAg8fz6sG1QzMA==";
+      };
+    }
+    {
       name = "typedarray_to_buffer___typedarray_to_buffer_3.1.5.tgz";
       path = fetchurl {
         name = "typedarray_to_buffer___typedarray_to_buffer_3.1.5.tgz";
@@ -10138,6 +10450,14 @@
       };
     }
     {
+      name = "undici___undici_5.9.1.tgz";
+      path = fetchurl {
+        name = "undici___undici_5.9.1.tgz";
+        url  = "https://registry.yarnpkg.com/undici/-/undici-5.9.1.tgz";
+        sha512 = "6fB3a+SNnWEm4CJbgo0/CWR8RGcOCQP68SF4X0mxtYTq2VNN8T88NYrWVBAeSX+zb7bny2dx2iYhP3XHi00omg==";
+      };
+    }
+    {
       name = "unicode_canonical_property_names_ecmascript___unicode_canonical_property_names_ecmascript_2.0.0.tgz";
       path = fetchurl {
         name = "unicode_canonical_property_names_ecmascript___unicode_canonical_property_names_ecmascript_2.0.0.tgz";
@@ -10362,6 +10682,14 @@
       };
     }
     {
+      name = "web_worker___web_worker_1.2.0.tgz";
+      path = fetchurl {
+        name = "web_worker___web_worker_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/web-worker/-/web-worker-1.2.0.tgz";
+        sha512 = "PgF341avzqyx60neE9DD+XS26MMNMoUQRz9NOZwW32nPQrF6p77f1htcnjBSEV8BGMKZ16choqUG4hyI0Hx7mA==";
+      };
+    }
+    {
       name = "webidl_conversions___webidl_conversions_3.0.1.tgz";
       path = fetchurl {
         name = "webidl_conversions___webidl_conversions_3.0.1.tgz";
@@ -10610,6 +10938,14 @@
       };
     }
     {
+      name = "yargs_parser___yargs_parser_21.0.1.tgz";
+      path = fetchurl {
+        name = "yargs_parser___yargs_parser_21.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.0.1.tgz";
+        sha512 = "9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg==";
+      };
+    }
+    {
       name = "yargs___yargs_16.2.0.tgz";
       path = fetchurl {
         name = "yargs___yargs_16.2.0.tgz";
diff --git a/pkgs/development/python-modules/apprise/default.nix b/pkgs/development/python-modules/apprise/default.nix
index 5c1b779b79e05..95a993e359a6a 100644
--- a/pkgs/development/python-modules/apprise/default.nix
+++ b/pkgs/development/python-modules/apprise/default.nix
@@ -20,14 +20,14 @@
 
 buildPythonPackage rec {
   pname = "apprise";
-  version = "1.0.0";
+  version = "1.1.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-llOQAzH4vR9O+pzaLCueJ7aar7Kt8UsrzmV5f3UzOss=";
+    hash = "sha256-92eoBwp3fcKb9zCBeeC2ndLeZeZpM+2JsZmef/5yO2A=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/archinfo/default.nix b/pkgs/development/python-modules/archinfo/default.nix
index 0488e7e0fd9d7..8119ac5cdb442 100644
--- a/pkgs/development/python-modules/archinfo/default.nix
+++ b/pkgs/development/python-modules/archinfo/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "archinfo";
-  version = "9.2.20";
+  version = "9.2.21";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-JitAp536AM0EnE+LWlKceoYIk/gYxnbOUPtX7CK5SiM=";
+    hash = "sha256-29KWlXZ4KrDq4CmTeF6z1CDVDgnO2JyxOdOi5bhl1nI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/asyauth/default.nix b/pkgs/development/python-modules/asyauth/default.nix
index 7ff95908c7e17..9faf3902d0f30 100644
--- a/pkgs/development/python-modules/asyauth/default.nix
+++ b/pkgs/development/python-modules/asyauth/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "asyauth";
-  version = "0.0.4";
+  version = "0.0.5";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-dKoTagJa3zszr/E2p1HsrtOOdykQw1lsKAEy56zweOQ=";
+    hash = "sha256-zf1HqkqCpu0VtgMso7OaWCoTYQeDRXzh8Uda+AsVt0Q=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/atomman/default.nix b/pkgs/development/python-modules/atomman/default.nix
index d703240cec451..ca2075cab7a30 100644
--- a/pkgs/development/python-modules/atomman/default.nix
+++ b/pkgs/development/python-modules/atomman/default.nix
@@ -4,7 +4,6 @@
 , cython
 , datamodeldict
 , fetchFromGitHub
-, fetchpatch
 , matplotlib
 , numericalunits
 , numpy
@@ -18,47 +17,27 @@
 , pythonAtLeast
 , requests
 , scipy
+, setuptools
 , toolz
 , xmltodict
 }:
 
 buildPythonPackage rec {
-  version = "1.4.5";
+  version = "1.4.6";
   pname = "atomman";
-  format = "setuptools";
+  format = "pyproject";
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "usnistgov";
     repo = "atomman";
     rev = "v${version}";
-    hash = "sha256-wXz/uHjXKHVKJu/HoFF2mADSBLp6UGF9ivOp2ZOz/Ys=";
+    hash = "sha256-tcsxtFbBdMC6+ixzqhnR+5UNwcQmnPQSvuyNA2IYelI=";
   };
 
-  patches = [
-    # Fix several tests that are failing on master.
-    # https://github.com/usnistgov/atomman/pull/9
-    (fetchpatch {
-      name = "fix-tests-1.patch";
-      url = "https://github.com/usnistgov/atomman/commit/d255977a5e0ce4584e2c886f6c55ccb9f5932731.patch";
-      hash = "sha256-lBFOgcozY85JfQVsVjd51Jf9mrokwQuYdxa8l7VzkqU=";
-    })
-    (fetchpatch {
-      name = "fix-tests-2.patch";
-      url = "https://github.com/usnistgov/atomman/commit/de4177f28ad7c48d482cb606f323128e2fcb86aa.patch";
-      hash = "sha256-+YpwdKCT/OTue3b2GOk9Jagg26r1PTTV2Zg+GGBd8sM=";
-    })
-    (fetchpatch {
-      name = "fix-tests-3.patch";
-      url = "https://github.com/usnistgov/atomman/commit/10b168493ee883348699f1e42680423cec84bed5.patch";
-      hash = "sha256-b4f3POjiceq3xApfjnKAs9dEf1trCiTIyu7hMPL0ZTw=";
-    })
-    (fetchpatch {
-      name = "fix-tests-4.patch";
-      url = "https://github.com/usnistgov/atomman/commit/057d24c70427bab3c7c530251ceb5f4e27eb5c56.patch";
-      hash = "sha256-FTg/GNRZ5xigGW8SpUTIw2/GEzOxwb1rsv2wGebmZOk=";
-    })
+  nativeBuildInputs = [
+    setuptools
   ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/auth0-python/default.nix b/pkgs/development/python-modules/auth0-python/default.nix
index fe52973c2cd7d..caa24743d3a90 100644
--- a/pkgs/development/python-modules/auth0-python/default.nix
+++ b/pkgs/development/python-modules/auth0-python/default.nix
@@ -26,7 +26,8 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     requests
     pyjwt
-  ];
+  ]
+  ++ pyjwt.optional-dependencies.crypto;
 
   checkInputs = [
     aiohttp
diff --git a/pkgs/development/python-modules/awscrt/default.nix b/pkgs/development/python-modules/awscrt/default.nix
index 7390d861dd3ed..fe99e97118187 100644
--- a/pkgs/development/python-modules/awscrt/default.nix
+++ b/pkgs/development/python-modules/awscrt/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "awscrt";
-  version = "0.14.6";
+  version = "0.14.7";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-sLh9kM4HcsLrvljvdyLBa0FkkJyTT9zbwumKGTHN1UE=";
+    hash = "sha256-59bwgjT3zFYx4q8G5Bi5RMUSQCVIlupu7rtycgXNXtg=";
   };
 
   buildInputs = lib.optionals stdenv.isDarwin [
diff --git a/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix b/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix
index 77c1ece09b292..5bedaef2b4daf 100644
--- a/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-containerservice";
-  version = "20.3.0";
+  version = "20.4.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "sha256-p2q1fzpPrwYKUAilPTGzRDlkT9OKqnjZVN2jslY/WSw=";
+    sha256 = "sha256-X2Pz7Rx5utwOfiG2wLbdloQF7wM9bF80J5EOaB4k6jQ=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-kusto/default.nix b/pkgs/development/python-modules/azure-mgmt-kusto/default.nix
index 26bc4064fb269..615ab0f33e6ff 100644
--- a/pkgs/development/python-modules/azure-mgmt-kusto/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-kusto/default.nix
@@ -6,13 +6,13 @@
 }:
 
 buildPythonPackage rec {
-  version = "2.2.0";
+  version = "3.0.0";
   pname = "azure-mgmt-kusto";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-A369Y5cqKthMz43QUvWQHq5ggz93plGObl7K4xnUdnc=";
+    sha256 = "sha256-sSE/jN2YWuf81dUsZFLgYUnTv9e1PnO9qszjuHlUcDI=";
     extension = "zip";
   };
 
diff --git a/pkgs/development/python-modules/azure-mgmt-monitor/default.nix b/pkgs/development/python-modules/azure-mgmt-monitor/default.nix
index d2583b157f769..20d72093dcd3c 100644
--- a/pkgs/development/python-modules/azure-mgmt-monitor/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-monitor/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-monitor";
-  version = "4.0.1";
+  version = "5.0.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    hash = "sha256-rwUhKm9arvUW3EWAgv3+SdJYR54Hob2RmMDA6IjEpn4=";
+    hash = "sha256-U5OSFnOZV7/eXUEDU1TQBywrXjxwQ8qiEQJVFd3y57Q=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-netapp/default.nix b/pkgs/development/python-modules/azure-mgmt-netapp/default.nix
index 717637933e84a..38eb003b8eb82 100644
--- a/pkgs/development/python-modules/azure-mgmt-netapp/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-netapp/default.nix
@@ -10,13 +10,13 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-netapp";
-  version = "8.1.0";
+  version = "9.0.0";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Fdf9wzgeK5HY5d8HwFBokXB2ojHFNMVi9ne9ZQyVh5w=";
+    hash = "sha256-OJ4rKfpHri9bnKOPZ7X1obOOM7RUxj554JxllNitKFw=";
     extension = "zip";
   };
 
diff --git a/pkgs/development/python-modules/azure-mgmt-reservations/default.nix b/pkgs/development/python-modules/azure-mgmt-reservations/default.nix
index 0be05eb390f14..fc4d923f4ca6a 100644
--- a/pkgs/development/python-modules/azure-mgmt-reservations/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-reservations/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-reservations";
-  version = "2.0.0";
+  version = "2.1.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    hash = "sha256-5vXdXiRubnzPk4uTFeNHR6rwiHSGbeUREX9eW1pqC3E=";
+    hash = "sha256-CtTOw6cC9fkL+2XgfG/r/LXpzhQoYXLjrwlI6Q5XpP4=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-security/default.nix b/pkgs/development/python-modules/azure-mgmt-security/default.nix
index a947e84f9aef8..30c4fe2e7627a 100644
--- a/pkgs/development/python-modules/azure-mgmt-security/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-security/default.nix
@@ -6,13 +6,13 @@
 }:
 
 buildPythonPackage rec {
-  version = "1.0.0";
+  version = "2.0.0";
   pname = "azure-mgmt-security";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "ae1cff598dfe80e93406e524c55c3f2cbffced9f9b7a5577e3375008a4c3bcad";
+    sha256 = "sha256-2sr3clHf5EvbXAx5FH3d3ab1/Y48r6Ojww3p9WX35aM=";
     extension = "zip";
   };
 
diff --git a/pkgs/development/python-modules/batchspawner/default.nix b/pkgs/development/python-modules/batchspawner/default.nix
index 2b7cd1b21ecc7..09023536a94b4 100644
--- a/pkgs/development/python-modules/batchspawner/default.nix
+++ b/pkgs/development/python-modules/batchspawner/default.nix
@@ -2,29 +2,33 @@
 , buildPythonPackage
 , fetchFromGitHub
 , jupyterhub
-, isPy27
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "batchspawner";
-  version = "1.1.0";
-  disabled = isPy27;
+  version = "1.2.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.5";
 
   src = fetchFromGitHub {
     owner = "jupyterhub";
     repo = "batchspawner";
-    rev = "v${version}";
-    sha256 = "0zv485b7fk5zlwgp5fyibanqzbpisdl2a0gz70fwdj4kl462axnw";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-oyS47q+gsO7JmRsbVJXglZsSRfits5rS/nrHW5E7EV0=";
   };
 
   propagatedBuildInputs = [
     jupyterhub
   ];
 
-  # tests require a job scheduler e.g. slurm, pbs, etc.
+  # Tests require a job scheduler e.g. slurm, pbs, etc.
   doCheck = false;
 
-  pythonImportsCheck = [ "batchspawner" ];
+  pythonImportsCheck = [
+    "batchspawner"
+  ];
 
   meta = with lib; {
     description = "A spawner for Jupyterhub to spawn notebooks using batch resource managers";
diff --git a/pkgs/development/python-modules/bellows/default.nix b/pkgs/development/python-modules/bellows/default.nix
index 4dcd49595173f..4e509e1b3c27c 100644
--- a/pkgs/development/python-modules/bellows/default.nix
+++ b/pkgs/development/python-modules/bellows/default.nix
@@ -17,14 +17,14 @@
 
 buildPythonPackage rec {
   pname = "bellows";
-  version = "0.33.1";
+  version = "0.34.2";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "zigpy";
     repo = "bellows";
     rev = "refs/tags/${version}";
-    sha256 = "sha256-cpWQdsuW3CA/8HowhMoVV++rrDnjFQcgp+A5CCElj6o=";
+    sha256 = "sha256-78LUQBFV4TFPDLiSHBG+RLnQLaCPX4LZpow9aszQAQA=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/bleach-allowlist/default.nix b/pkgs/development/python-modules/bleach-allowlist/default.nix
new file mode 100644
index 0000000000000..4c52df127b00d
--- /dev/null
+++ b/pkgs/development/python-modules/bleach-allowlist/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, bleach
+}:
+
+buildPythonPackage rec {
+  pname = "bleach-allowlist";
+  version = "1.0.3";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-VuIghgeaDmoxAK6Z5NuvIOslhUhlmOsOmUAIoRQo2ps=";
+  };
+
+  propagatedBuildInputs = [
+    bleach
+  ];
+
+  # No tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "bleach_allowlist" ];
+
+  meta = with lib; {
+    description = "Curated lists of tags and attributes for sanitizing html";
+    homepage = "https://github.com/yourcelf/bleach-allowlist";
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ ambroisie ];
+  };
+}
diff --git a/pkgs/development/python-modules/bluetooth-adapters/default.nix b/pkgs/development/python-modules/bluetooth-adapters/default.nix
index b40b0d3c12655..3d541bfa7bc01 100644
--- a/pkgs/development/python-modules/bluetooth-adapters/default.nix
+++ b/pkgs/development/python-modules/bluetooth-adapters/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "bluetooth-adapters";
-  version = "0.5.2";
+  version = "0.6.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "Bluetooth-Devices";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-SyEe/auJaagRl3wg7JjBkLAgHyAeCeesEXvWXE733M4=";
+    hash = "sha256-26w7513h5WWGqKz4OqHob42O0bk1yW8ePPKB2V9+AHs=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/bluetooth-auto-recovery/default.nix b/pkgs/development/python-modules/bluetooth-auto-recovery/default.nix
index b24fb270b78c7..c11e09790eb76 100644
--- a/pkgs/development/python-modules/bluetooth-auto-recovery/default.nix
+++ b/pkgs/development/python-modules/bluetooth-auto-recovery/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "bluetooth-auto-recovery";
-  version = "0.3.3";
+  version = "0.3.4";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "Bluetooth-Devices";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-vzSpQ43vy0a+8PWdTz/RjdXGxwmebdBX/qXhF6Mnw4Y=";
+    hash = "sha256-jInCWya146QI7D89zSAPChF8GMDj7NRzu9NvVIbkntM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/brother/default.nix b/pkgs/development/python-modules/brother/default.nix
index 7dbab50b63bf4..297f1161fe2a5 100644
--- a/pkgs/development/python-modules/brother/default.nix
+++ b/pkgs/development/python-modules/brother/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, dacite
 , pysnmplib
 , pytest-asyncio
 , pytest-error-for-skips
@@ -10,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "brother";
-  version = "1.2.3";
+  version = "2.0.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -19,10 +20,11 @@ buildPythonPackage rec {
     owner = "bieniu";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-+o6hv63u6FBEu57mD02lss0LQPwgBnXsP8CKQ+/74/Q=";
+    hash = "sha256-pk9VBFha2NfQWI+fbWwGKcGFa93eKr5Cqh85r1CAXpI=";
   };
 
   propagatedBuildInputs = [
+    dacite
     pysnmplib
   ];
 
diff --git a/pkgs/development/python-modules/browser-cookie3/default.nix b/pkgs/development/python-modules/browser-cookie3/default.nix
index cfb9364c30d83..b072c5576d1ff 100644
--- a/pkgs/development/python-modules/browser-cookie3/default.nix
+++ b/pkgs/development/python-modules/browser-cookie3/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "browser-cookie3";
-  version = "0.16.1";
+  version = "0.16.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Gamys354RIvUQOelN8YDY6GfpJanC7CjWXC1plmh/jU=";
+    hash = "sha256-IB0Ms+mCHh7lfG3XYfvE2h/2lec5Tq9AAjqANz7x0hE=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/bthome-ble/default.nix b/pkgs/development/python-modules/bthome-ble/default.nix
index 4f216bd2eee1e..5f82f2a1852fa 100644
--- a/pkgs/development/python-modules/bthome-ble/default.nix
+++ b/pkgs/development/python-modules/bthome-ble/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "bthome-ble";
-  version = "1.0.0";
+  version = "1.2.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "Bluetooth-Devices";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-yTbJ69FPMIsc/w7UXfvXPLXGRs9s0F4YiccljRyI5Ek=";
+    hash = "sha256-2/2ODlHqQOl4LHUb2fyQpmsBYnoz0Rvc9lLEfZTKijA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/cairo-lang/default.nix b/pkgs/development/python-modules/cairo-lang/default.nix
index 00a9361c27f8b..ec11772fb50f8 100644
--- a/pkgs/development/python-modules/cairo-lang/default.nix
+++ b/pkgs/development/python-modules/cairo-lang/default.nix
@@ -1,35 +1,40 @@
 { lib
-, fetchzip
+, aiohttp
 , buildPythonPackage
-, setuptools
+, cachetools
 , ecdsa
+, eth-hash
 , fastecdsa
-, sympy
+, fetchzip
 , frozendict
+, gmp
+, lark
 , marshmallow
-, marshmallow-enum
 , marshmallow-dataclass
+, marshmallow-enum
 , marshmallow-oneofschema
-, pipdeptree
-, eth-hash
-, web3
-, aiohttp
-, cachetools
 , mpmath
 , numpy
+, pipdeptree
 , prometheus-client
-, typeguard
-, lark
-, pyyaml
-, pytest-asyncio
 , pytest
+, pytest-asyncio
 , pytestCheckHook
-, gmp
+, pythonOlder
+, pythonRelaxDepsHook
+, pyyaml
+, setuptools
+, sympy
+, typeguard
+, web3
 }:
 
 buildPythonPackage rec {
   pname = "cairo-lang";
   version = "0.10.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchzip {
     url = "https://github.com/starkware-libs/cairo-lang/releases/download/v${version}/cairo-lang-${version}.zip";
@@ -37,13 +42,9 @@ buildPythonPackage rec {
   };
 
   # TODO: remove a substantial part when https://github.com/starkware-libs/cairo-lang/pull/88/files is merged.
-  # TODO: pytest and pytest-asyncio must be removed as they are check inputs in fact.
   postPatch = ''
     substituteInPlace requirements.txt \
-      --replace 'frozendict==1.2' 'frozendict>=1.2' \
-      --replace 'lark-parser' 'lark' \
-      --replace 'pytest-asyncio' ''' \
-      --replace "pytest" '''
+      --replace "lark-parser" "lark"
 
     substituteInPlace starkware/cairo/lang/compiler/parser_transformer.py \
       --replace 'value, meta' 'meta, value' \
@@ -52,7 +53,13 @@ buildPythonPackage rec {
       --replace 'standard' 'basic'
   '';
 
-  buildInputs = [ gmp ];
+  nativeBuildInputs = [
+    pythonRelaxDepsHook
+  ];
+
+  buildInputs = [
+    gmp
+  ];
 
   propagatedBuildInputs = [
     aiohttp
@@ -74,23 +81,33 @@ buildPythonPackage rec {
     lark
     web3
     eth-hash
-    eth-hash.optional-dependencies.pycryptodome
     pyyaml
-  ];
+  ] ++ eth-hash.optional-dependencies.pycryptodome;
 
   checkInputs = [
+    pytest-asyncio
     pytestCheckHook
   ];
 
+  pythonRelaxDeps = [
+    "frozendict"
+  ];
+
+  pythonRemoveDeps = [
+    # TODO: pytest and pytest-asyncio must be removed as they are check inputs
+    "pytest"
+    "pytest-asyncio"
+  ];
+
   # There seems to be no test included in the ZIP release…
   # Cloning from GitHub is harder because they use a custom CMake setup
   # TODO(raitobezarius): upstream was pinged out of band about it.
   doCheck = false;
 
-  meta = {
-    homepage = "https://github.com/starkware/cairo-lang";
+  meta = with lib; {
     description = "Tooling for Cairo language";
-    license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ raitobezarius ];
+    homepage = "https://github.com/starkware/cairo-lang";
+    license = licenses.mit;
+    maintainers = with maintainers; [ raitobezarius ];
   };
 }
diff --git a/pkgs/development/python-modules/catboost/default.nix b/pkgs/development/python-modules/catboost/default.nix
index 6cda5a23aee95..02e107f27e19c 100644
--- a/pkgs/development/python-modules/catboost/default.nix
+++ b/pkgs/development/python-modules/catboost/default.nix
@@ -1,11 +1,11 @@
-{ buildPythonPackage, fetchFromGitHub, fetchpatch, lib, pythonOlder
-, clang_7, python2
+{ buildPythonPackage, fetchFromGitHub, lib, pythonOlder
+, clang_12, python2, python
 , graphviz, matplotlib, numpy, pandas, plotly, scipy, six
 , withCuda ? false, cudatoolkit }:
 
 buildPythonPackage rec {
   pname = "catboost";
-  version = "0.24.4";
+  version = "1.0.5";
 
   disabled = pythonOlder "3.4";
 
@@ -13,26 +13,26 @@ buildPythonPackage rec {
     owner = "catboost";
     repo = "catboost";
     rev = "v${version}";
-    sha256 = "sha256-pzmwEiKziB4ldnKgeCsP2HdnisX8sOkLssAzNfcSEx8=";
+    sha256 = "ILemeZUBI9jPb9G6F7QX/T1HaVhQ+g6y7YmsT6DFCJk=";
   };
 
-  nativeBuildInputs = [ clang_7 python2 ];
+  nativeBuildInputs = [ clang_12 python2 ];
 
   propagatedBuildInputs = [ graphviz matplotlib numpy pandas scipy plotly six ]
     ++ lib.optional withCuda [ cudatoolkit ];
 
   patches = [
     ./nix-support.patch
-    (fetchpatch {
-      name = "format.patch";
-      url = "https://github.com/catboost/catboost/pull/1528/commits/a692ba42e5c0f62e5da82b2f6fccfa77deb3419c.patch";
-      sha256 = "sha256-fNGucHxsSDFRLk3hFH7rm+zzTdDpY9/QjRs8K+AzVvo=";
-    })
   ];
 
+  postPatch = ''
+    # substituteInPlace is too slow for these large files, and the target has lots of numbers in it that change often.
+    sed -e 's|\$(YMAKE_PYTHON3-.*)/python3|${python.interpreter}|' -i make/*.makefile
+  '';
+
   preBuild = ''
     cd catboost/python-package
-    '';
+  '';
   setupPyBuildFlags = [ "--with-ymake=no" ];
   CUDA_ROOT = lib.optional withCuda cudatoolkit;
   enableParallelBuilding = true;
diff --git a/pkgs/development/python-modules/catboost/nix-support.patch b/pkgs/development/python-modules/catboost/nix-support.patch
index feaf97d57070b..b8294420e09c3 100644
--- a/pkgs/development/python-modules/catboost/nix-support.patch
+++ b/pkgs/development/python-modules/catboost/nix-support.patch
@@ -1,5 +1,5 @@
 diff --git a/catboost/python-package/setup.py b/catboost/python-package/setup.py
-index 17f1d8ff14..07da618cd1 100644
+index fe9251a21f..86b880c5d0 100644
 --- a/catboost/python-package/setup.py
 +++ b/catboost/python-package/setup.py
 @@ -80,7 +80,7 @@ class Helper(object):
@@ -15,23 +15,23 @@ index 17f1d8ff14..07da618cd1 100644
  
      def build_with_make(self, topsrc_dir, build_dir, catboost_ext, put_dir, verbose, dry_run):
          logging.info('Buildling {} with gnu make'.format(catboost_ext))
--        makefile = 'python{}.{}CLANG50-LINUX-X86_64.makefile'.format(python_version()[0], 'CUDA.' if self.with_cuda else '')
-+        makefile = 'python{}.{}CLANG7-LINUX-X86_64.makefile'.format(python_version()[0], 'CUDA.' if self.with_cuda else '')
+-        makefile = 'python{}.{}CLANG11-LINUX-X86_64.makefile'.format(python_version()[0], 'CUDA.' if self.with_cuda else '')
++        makefile = 'python{}.{}CLANG12-LINUX-X86_64.makefile'.format(python_version()[0], 'CUDA.' if self.with_cuda else '')
          make_cmd = [
              'make', '-f', '../../make/' + makefile,
--            'CC=clang-5.0',
--            'CXX=clang++-5.0',
+-            'CC=clang-11',
+-            'CXX=clang++-11',
 +            'CC=clang',
 +            'CXX=clang++',
-+            'PYTHON=python2',
++            'PYTHON=python{}'.format(python_version()[0]),
              'BUILD_ROOT=' + build_dir,
              'SOURCE_ROOT=' + topsrc_dir,
          ]
-diff --git a/make/python2.CLANG7-LINUX-X86_64.makefile b/make/python2.CLANG7-LINUX-X86_64.makefile
-index e54b7078e8..fb7b208af9 100644
---- a/make/python2.CLANG7-LINUX-X86_64.makefile
-+++ b/make/python2.CLANG7-LINUX-X86_64.makefile
-@@ -4,33 +4,6 @@ BUILD_ROOT = $(shell pwd)
+diff --git a/make/python2.CLANG12-LINUX-X86_64.makefile b/make/python2.CLANG12-LINUX-X86_64.makefile
+index b49a36fb3f..33996af995 100644
+--- a/make/python2.CLANG12-LINUX-X86_64.makefile
++++ b/make/python2.CLANG12-LINUX-X86_64.makefile
+@@ -4,31 +4,6 @@ BUILD_ROOT = $(shell pwd)
  SOURCE_ROOT = $(shell pwd)
  PYTHON = $(shell which python)
  
@@ -43,8 +43,8 @@ index e54b7078e8..fb7b208af9 100644
 -_CC_VERSION = $(shell echo '$(_CC_TEST)' | $(CC) -E -P -)
 -$(info _CC_VERSION = '$(_CC_VERSION)')
 -
--ifneq '$(_CC_VERSION)' '7 0'
--    $(error clang 7.0 is required)
+-ifneq '$(_CC_VERSION)' '12 0'
+-    $(error clang 12.0 is required)
 -endif
 -endif
 -
@@ -56,20 +56,18 @@ index e54b7078e8..fb7b208af9 100644
 -_CXX_VERSION = $(shell echo '$(_CXX_TEST)' | $(CXX) -E -P -)
 -$(info _CXX_VERSION = '$(_CXX_VERSION)')
 -
--ifneq '$(_CXX_VERSION)' '7 0'
--    $(error clang 7.0 is required)
+-ifneq '$(_CXX_VERSION)' '12 0'
+-    $(error clang 12.0 is required)
 -endif
 -endif
--
--
+ 
+ 
  all\
-         ::\
-         $(BUILD_ROOT)/catboost/python-package/catboost/_catboost.so\
-diff --git a/make/python2.CUDA.CLANG7-LINUX-X86_64.makefile b/make/python2.CUDA.CLANG7-LINUX-X86_64.makefile
-index 2a22a79b25..522fb54a7c 100644
---- a/make/python2.CUDA.CLANG7-LINUX-X86_64.makefile
-+++ b/make/python2.CUDA.CLANG7-LINUX-X86_64.makefile
-@@ -4,33 +4,6 @@ BUILD_ROOT = $(shell pwd)
+diff --git a/make/python2.CUDA.CLANG12-LINUX-X86_64.makefile b/make/python2.CUDA.CLANG12-LINUX-X86_64.makefile
+index 82935b297e..093cc86532 100644
+--- a/make/python2.CUDA.CLANG12-LINUX-X86_64.makefile
++++ b/make/python2.CUDA.CLANG12-LINUX-X86_64.makefile
+@@ -4,31 +4,6 @@ BUILD_ROOT = $(shell pwd)
  SOURCE_ROOT = $(shell pwd)
  PYTHON = $(shell which python)
  
@@ -81,8 +79,8 @@ index 2a22a79b25..522fb54a7c 100644
 -_CC_VERSION = $(shell echo '$(_CC_TEST)' | $(CC) -E -P -)
 -$(info _CC_VERSION = '$(_CC_VERSION)')
 -
--ifneq '$(_CC_VERSION)' '7 0'
--    $(error clang 7.0 is required)
+-ifneq '$(_CC_VERSION)' '12 0'
+-    $(error clang 12.0 is required)
 -endif
 -endif
 -
@@ -94,20 +92,18 @@ index 2a22a79b25..522fb54a7c 100644
 -_CXX_VERSION = $(shell echo '$(_CXX_TEST)' | $(CXX) -E -P -)
 -$(info _CXX_VERSION = '$(_CXX_VERSION)')
 -
--ifneq '$(_CXX_VERSION)' '7 0'
--    $(error clang 7.0 is required)
+-ifneq '$(_CXX_VERSION)' '12 0'
+-    $(error clang 12.0 is required)
 -endif
 -endif
--
--
+ 
+ 
  all\
-         ::\
-         $(BUILD_ROOT)/catboost/python-package/catboost/_catboost.so\
-diff --git a/make/python3.CLANG7-LINUX-X86_64.makefile b/make/python3.CLANG7-LINUX-X86_64.makefile
-index fee6750bcb..dc55908371 100644
---- a/make/python3.CLANG7-LINUX-X86_64.makefile
-+++ b/make/python3.CLANG7-LINUX-X86_64.makefile
-@@ -4,33 +4,6 @@ BUILD_ROOT = $(shell pwd)
+diff --git a/make/python3.CLANG12-LINUX-X86_64.makefile b/make/python3.CLANG12-LINUX-X86_64.makefile
+index 1c5d646ae4..6c091fbe17 100644
+--- a/make/python3.CLANG12-LINUX-X86_64.makefile
++++ b/make/python3.CLANG12-LINUX-X86_64.makefile
+@@ -4,31 +4,6 @@ BUILD_ROOT = $(shell pwd)
  SOURCE_ROOT = $(shell pwd)
  PYTHON = $(shell which python)
  
@@ -119,8 +115,8 @@ index fee6750bcb..dc55908371 100644
 -_CC_VERSION = $(shell echo '$(_CC_TEST)' | $(CC) -E -P -)
 -$(info _CC_VERSION = '$(_CC_VERSION)')
 -
--ifneq '$(_CC_VERSION)' '7 0'
--    $(error clang 7.0 is required)
+-ifneq '$(_CC_VERSION)' '12 0'
+-    $(error clang 12.0 is required)
 -endif
 -endif
 -
@@ -132,20 +128,18 @@ index fee6750bcb..dc55908371 100644
 -_CXX_VERSION = $(shell echo '$(_CXX_TEST)' | $(CXX) -E -P -)
 -$(info _CXX_VERSION = '$(_CXX_VERSION)')
 -
--ifneq '$(_CXX_VERSION)' '7 0'
--    $(error clang 7.0 is required)
+-ifneq '$(_CXX_VERSION)' '12 0'
+-    $(error clang 12.0 is required)
 -endif
 -endif
--
--
+ 
+ 
  all\
-         ::\
-         $(BUILD_ROOT)/catboost/python-package/catboost/_catboost.so\
-diff --git a/make/python3.CUDA.CLANG7-LINUX-X86_64.makefile b/make/python3.CUDA.CLANG7-LINUX-X86_64.makefile
-index 5146830476..ff8535b03e 100644
---- a/make/python3.CUDA.CLANG7-LINUX-X86_64.makefile
-+++ b/make/python3.CUDA.CLANG7-LINUX-X86_64.makefile
-@@ -4,33 +4,6 @@ BUILD_ROOT = $(shell pwd)
+diff --git a/make/python3.CUDA.CLANG12-LINUX-X86_64.makefile b/make/python3.CUDA.CLANG12-LINUX-X86_64.makefile
+index fcdb75a719..4e1dbc3cd7 100644
+--- a/make/python3.CUDA.CLANG12-LINUX-X86_64.makefile
++++ b/make/python3.CUDA.CLANG12-LINUX-X86_64.makefile
+@@ -4,31 +4,6 @@ BUILD_ROOT = $(shell pwd)
  SOURCE_ROOT = $(shell pwd)
  PYTHON = $(shell which python)
  
@@ -157,8 +151,8 @@ index 5146830476..ff8535b03e 100644
 -_CC_VERSION = $(shell echo '$(_CC_TEST)' | $(CC) -E -P -)
 -$(info _CC_VERSION = '$(_CC_VERSION)')
 -
--ifneq '$(_CC_VERSION)' '7 0'
--    $(error clang 7.0 is required)
+-ifneq '$(_CC_VERSION)' '12 0'
+-    $(error clang 12.0 is required)
 -endif
 -endif
 -
@@ -170,12 +164,10 @@ index 5146830476..ff8535b03e 100644
 -_CXX_VERSION = $(shell echo '$(_CXX_TEST)' | $(CXX) -E -P -)
 -$(info _CXX_VERSION = '$(_CXX_VERSION)')
 -
--ifneq '$(_CXX_VERSION)' '7 0'
--    $(error clang 7.0 is required)
+-ifneq '$(_CXX_VERSION)' '12 0'
+-    $(error clang 12.0 is required)
 -endif
 -endif
--
--
+ 
+ 
  all\
-         ::\
-         $(BUILD_ROOT)/catboost/python-package/catboost/_catboost.so\
diff --git a/pkgs/development/python-modules/chiabip158/default.nix b/pkgs/development/python-modules/chiabip158/default.nix
index ce4ffd6271faa..b9615fec7b6b3 100644
--- a/pkgs/development/python-modules/chiabip158/default.nix
+++ b/pkgs/development/python-modules/chiabip158/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "chiabip158";
-  version = "1.1";
+  version = "1.2";
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-2iQeiQl/CLq2zwo/mUKBwIwV5wlNYUdUfENGNxeDMU8=";
+    hash = "sha256-t0Fnsh9B83KiT5dFVVfHs7sm9HyNbMsp6goj3esoph8=";
   };
 
   nativeBuildInputs = [ cmake setuptools-scm ];
diff --git a/pkgs/development/python-modules/cinemagoer/default.nix b/pkgs/development/python-modules/cinemagoer/default.nix
index 45d80c26b8b3a..8b62a57b306fa 100644
--- a/pkgs/development/python-modules/cinemagoer/default.nix
+++ b/pkgs/development/python-modules/cinemagoer/default.nix
@@ -29,6 +29,6 @@ buildPythonPackage rec {
     downloadPage = "https://github.com/cinemagoer/cinemagoer/";
     homepage = "https://cinemagoer.github.io/";
     license = licenses.gpl2Only;
-    maintainers = with maintainers; [ superherointj ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/development/python-modules/claripy/default.nix b/pkgs/development/python-modules/claripy/default.nix
index 9286c28f4e53b..60f46431bf9b1 100644
--- a/pkgs/development/python-modules/claripy/default.nix
+++ b/pkgs/development/python-modules/claripy/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "claripy";
-  version = "9.2.20";
+  version = "9.2.21";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-G4Tes9X7dz+bBTJCdbr3o4nTlN2c4Ixtl6iwZv0XYvA=";
+    hash = "sha256-4Ql1oYWNxoDKwl6IOrJQ5uMepqtRqrY2cmjsa3w0h9E=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/cle/default.nix b/pkgs/development/python-modules/cle/default.nix
index 9976093489b84..417e8becf36eb 100644
--- a/pkgs/development/python-modules/cle/default.nix
+++ b/pkgs/development/python-modules/cle/default.nix
@@ -16,7 +16,7 @@
 
 let
   # The binaries are following the argr projects release cycle
-  version = "9.2.20";
+  version = "9.2.21";
 
   # Binary files from https://github.com/angr/binaries (only used for testing and only here)
   binaries = fetchFromGitHub {
@@ -38,7 +38,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-ORNlmdkAlMj1CaWj5pDve0yJe3TEv9IfKOwqRd+gVH4=";
+    hash = "sha256-pVatQJMDocP6RWzCzgyJ1vzmqfdEVYjVFW9m+rS1IoI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/cock/default.nix b/pkgs/development/python-modules/cock/default.nix
index 384e2c42fea54..a7c23554729a4 100644
--- a/pkgs/development/python-modules/cock/default.nix
+++ b/pkgs/development/python-modules/cock/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "cock";
-  version = "0.10.0";
+  version = "0.11.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-B6r6+b+x5vEp4+yfhV03dfjlVjRbW2W6Pm91PC0Tb+o=";
+    sha256 = "sha256-Hi8aFxATsYcEO6qNzZnF73V8WLTQjb6Dw2xF4VgT2o4=";
   };
 
   propagatedBuildInputs = [ click sortedcontainers pyyaml ];
diff --git a/pkgs/development/python-modules/configupdater/default.nix b/pkgs/development/python-modules/configupdater/default.nix
new file mode 100644
index 0000000000000..8dae9c0f8c95b
--- /dev/null
+++ b/pkgs/development/python-modules/configupdater/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pytestCheckHook
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "configupdater";
+  version = "3.1.1";
+
+  src = fetchPypi {
+    inherit version;
+    pname = "ConfigUpdater";
+    sha256 = "sha256-RvDHTXPvpyN3Z2S0PJc59oBSSV3T1zQxnB0OtYUR8Vs=";
+  };
+
+  postPatch = ''
+    substituteInPlace setup.cfg \
+      --replace '--cov configupdater --cov-report term-missing' ""
+  '';
+
+  nativeBuildInputs = [ setuptools-scm ];
+
+  pythonImportsCheck = [ "configupdater" ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "Parser like ConfigParser but for updating configuration files";
+    homepage = "https://configupdater.readthedocs.io/en/latest/";
+    license = with licenses; [ mit psfl ];
+    maintainers = with maintainers; [ ris ];
+  };
+}
diff --git a/pkgs/development/python-modules/coqui-trainer/default.nix b/pkgs/development/python-modules/coqui-trainer/default.nix
index c8bd0d67839e7..1a6bf6b2aeb07 100644
--- a/pkgs/development/python-modules/coqui-trainer/default.nix
+++ b/pkgs/development/python-modules/coqui-trainer/default.nix
@@ -30,6 +30,10 @@ buildPythonPackage {
     hash = "sha256-WBFsQuGnpqOiQW7VFfsk0t7qEBs1ScOChfQFpLmqTz4=";
   };
 
+  postPatch = ''
+    sed -i 's/^protobuf.*/protobuf/' requirements.txt
+  '';
+
   propagatedBuildInputs = [
     coqpit
     fsspec
diff --git a/pkgs/development/python-modules/crytic-compile/default.nix b/pkgs/development/python-modules/crytic-compile/default.nix
index 393dcd5e9d83f..d09fccfe5e102 100644
--- a/pkgs/development/python-modules/crytic-compile/default.nix
+++ b/pkgs/development/python-modules/crytic-compile/default.nix
@@ -1,8 +1,15 @@
-{ lib, buildPythonPackage, fetchFromGitHub, pythonOlder, pysha3, setuptools }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, pysha3
+, setuptools
+}:
 
 buildPythonPackage rec {
   pname = "crytic-compile";
-  version = "0.2.3";
+  version = "0.2.4";
+  format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
@@ -10,13 +17,19 @@ buildPythonPackage rec {
     owner = "crytic";
     repo = "crytic-compile";
     rev = "refs/tags/${version}";
-    sha256 = "sha256-l8a9QXERpkVrx7zHluMlb3zBvJSODsviNtJPzvL3hDo=";
+    hash = "sha256-phb4Y8CUxuHsNt43oKsgDAZTraNauPkcYQtzcsiWyy8=";
   };
 
-  propagatedBuildInputs = [ pysha3 setuptools ];
+  propagatedBuildInputs = [
+    pysha3
+    setuptools
+  ];
 
   doCheck = false;
-  pythonImportsCheck = [ "crytic_compile" ];
+
+  pythonImportsCheck = [
+    "crytic_compile"
+  ];
 
   meta = with lib; {
     description = "Abstraction layer for smart contract build systems";
diff --git a/pkgs/development/python-modules/curtsies/default.nix b/pkgs/development/python-modules/curtsies/default.nix
index 80b80e32b75b0..2c63de46fdcd2 100644
--- a/pkgs/development/python-modules/curtsies/default.nix
+++ b/pkgs/development/python-modules/curtsies/default.nix
@@ -1,29 +1,32 @@
-{ stdenv
-, lib
+{ lib
+, stdenv
+, backports-cached-property
+, blessed
 , buildPythonPackage
+, cwcwidth
 , fetchPypi
-, pythonOlder
-, blessed
-, backports-cached-property
 , pyte
 , pytestCheckHook
-, cwcwidth
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "curtsies";
-  version = "0.4.0";
+  version = "0.4.1";
   format = "pyproject";
 
+  disabled = pythonOlder "3.7";
+
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-yynvzjP+85WinvpWjyf1kTF4Rp+zqrEUCA1spiZBQv4=";
+    hash = "sha256-YtEPNJxVOEUwZVan8mY86WsJjYxbvEDa7Hpu7d4WIrA=";
   };
 
   propagatedBuildInputs = [
-    backports-cached-property
     blessed
     cwcwidth
+  ] ++ lib.optionals (pythonOlder "3.8") [
+    backports-cached-property
   ];
 
   checkInputs = [
@@ -32,10 +35,10 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    broken = stdenv.isDarwin;
     description = "Curses-like terminal wrapper, with colored strings!";
     homepage = "https://github.com/bpython/curtsies";
     license = licenses.mit;
     maintainers = with maintainers; [ flokli ];
+    broken = stdenv.isDarwin;
   };
 }
diff --git a/pkgs/development/python-modules/dataclasses-json/default.nix b/pkgs/development/python-modules/dataclasses-json/default.nix
index 2a4fd2cef42b0..9f32be70a5b1d 100644
--- a/pkgs/development/python-modules/dataclasses-json/default.nix
+++ b/pkgs/development/python-modules/dataclasses-json/default.nix
@@ -30,6 +30,12 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  disabledTests = [
+    # mypy_main(None, text_io, text_io, [__file__], clean_exit=True)
+    # TypeError: main() takes at most 4 arguments (5 given)
+    "test_type_hints"
+  ];
+
   pythonImportsCheck = [ "dataclasses_json" ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/datasets/default.nix b/pkgs/development/python-modules/datasets/default.nix
index 1d43c142187e3..aabd0cd414319 100644
--- a/pkgs/development/python-modules/datasets/default.nix
+++ b/pkgs/development/python-modules/datasets/default.nix
@@ -20,7 +20,7 @@
 
 buildPythonPackage rec {
   pname = "datasets";
-  version = "2.5.1";
+  version = "2.5.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -29,7 +29,7 @@ buildPythonPackage rec {
     owner = "huggingface";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-1I7ZnYgzEFd3JvlrnHRcEd48nbO1UR5s7sddVkYM23Y=";
+    hash = "sha256-C+REl68BZKP3NwkSmBQ/Xs8/sMGNT4bjXa8Jkk/C0Uw=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/dbus-fast/default.nix b/pkgs/development/python-modules/dbus-fast/default.nix
index 24723fdafada0..72cb7b7ee9c7b 100644
--- a/pkgs/development/python-modules/dbus-fast/default.nix
+++ b/pkgs/development/python-modules/dbus-fast/default.nix
@@ -6,11 +6,12 @@
 , pytest-asyncio
 , pytestCheckHook
 , pythonOlder
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "dbus-fast";
-  version = "1.17.0";
+  version = "1.29.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -19,11 +20,12 @@ buildPythonPackage rec {
     owner = "Bluetooth-Devices";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-HbjeO+imWocc5bL62gdWHf8kBR6HNWwEu+KqO4ldHe4=";
+    hash = "sha256-GqL6PZlqFi5Es8VYeqeTsXX6j5fol2JzcosFtVCQn60=";
   };
 
   nativeBuildInputs = [
     poetry-core
+    setuptools
   ];
 
   propagatedBuildInputs = [
@@ -37,8 +39,7 @@ buildPythonPackage rec {
 
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace " --cov=dbus_fast --cov-report=term-missing:skip-covered" "" \
-      --replace "[tool.poetry.group.dev.dependencies]" ""
+      --replace " --cov=dbus_fast --cov-report=term-missing:skip-covered" ""
   '';
 
   pythonImportsCheck = [
diff --git a/pkgs/development/python-modules/deltachat/default.nix b/pkgs/development/python-modules/deltachat/default.nix
index a342538d4acec..9a4d924b71f55 100644
--- a/pkgs/development/python-modules/deltachat/default.nix
+++ b/pkgs/development/python-modules/deltachat/default.nix
@@ -57,6 +57,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/deltachat/deltachat-core-rust/tree/master/python";
     changelog = "https://github.com/deltachat/deltachat-core-rust/blob/${version}/python/CHANGELOG";
     license = licenses.mpl20;
-    maintainers = with maintainers; [ dotlambda ];
+    maintainers = with maintainers; [ dotlambda srapenne ];
   };
 }
diff --git a/pkgs/development/python-modules/detect-secrets/default.nix b/pkgs/development/python-modules/detect-secrets/default.nix
index a46c445be944f..85ee0e51bfb01 100644
--- a/pkgs/development/python-modules/detect-secrets/default.nix
+++ b/pkgs/development/python-modules/detect-secrets/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "detect-secrets";
-  version = "1.3.0";
+  version = "1.4.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "Yelp";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-Dl/2HgCacDko/ug9nGA9X+LyOkuDot11H28lxrgkwdE=";
+    hash = "sha256-6EmL6XPySqcA3EA+FFkfw7Dkxl5LvyBorIw0hesV5eU=";
     leaveDotGit = true;
   };
 
diff --git a/pkgs/development/python-modules/devito/default.nix b/pkgs/development/python-modules/devito/default.nix
index 2aa669e44a331..2a47f58c6a8e0 100644
--- a/pkgs/development/python-modules/devito/default.nix
+++ b/pkgs/development/python-modules/devito/default.nix
@@ -18,6 +18,8 @@
 , pytestCheckHook
 , matplotlib
 , pytest-xdist
+, gcc
+, llvmPackages
 }:
 
 buildPythonPackage rec {
@@ -46,7 +48,7 @@ buildPythonPackage rec {
         -i requirements.txt
   '';
 
-  checkInputs = [ pytestCheckHook pytest-xdist matplotlib ];
+  checkInputs = [ pytestCheckHook pytest-xdist matplotlib gcc ];
 
   # I've had to disable the following tests since they fail while using nix-build, but they do pass
   # outside the build. They mostly related to the usage of MPI in a sandboxed environment.
@@ -88,12 +90,11 @@ buildPythonPackage rec {
     pyrevolve
     scipy
     sympy
-  ];
+  ] ++ lib.optionals stdenv.cc.isClang [ llvmPackages.openmp ];
 
   pythonImportsCheck = [ "devito" ];
 
   meta = with lib; {
-    broken = stdenv.isDarwin;
     homepage = "https://www.devitoproject.org/";
     description = "Code generation framework for automated finite difference computation";
     license = licenses.mit;
diff --git a/pkgs/development/python-modules/discogs-client/default.nix b/pkgs/development/python-modules/discogs-client/default.nix
index a07500aba1b6e..65463eca207ab 100644
--- a/pkgs/development/python-modules/discogs-client/default.nix
+++ b/pkgs/development/python-modules/discogs-client/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "discogs-client";
-  version = "2.4";
+  version = "2.5";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "joalla";
     repo = "discogs_client";
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-gGAtRhAg/W0dREhCOmif1XlQ4gldIGQ2hIC8gzifRu8=";
+    sha256 = "sha256-whLneq8RE1bok8jPlOteqIb5U07TvEa0O2mrzORp5HU=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect-cim/default.nix b/pkgs/development/python-modules/dissect-cim/default.nix
new file mode 100644
index 0000000000000..a7b815242275a
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-cim/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonPackage
+, dissect-cstruct
+, dissect-util
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-cim";
+  version = "3.2";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.cim";
+    rev = version;
+    hash = "sha256-rWlAYndqqZ6l/iwk1u2gG0mtQHvAMYUUEWo23hLykXI=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+    dissect-util
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "dissect.cim"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing a parser for the Windows Common Information Model (CIM) database";
+    homepage = "https://github.com/fox-it/dissect.cim";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-clfs/default.nix b/pkgs/development/python-modules/dissect-clfs/default.nix
new file mode 100644
index 0000000000000..2265792f88075
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-clfs/default.nix
@@ -0,0 +1,50 @@
+{ lib
+, buildPythonPackage
+, dissect-cstruct
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-clfs";
+  version = "1.1";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.clfs";
+    rev = version;
+    hash = "sha256-5rG8YiVBU4ETLgQoFnMaeXHttIB26+OhIdYjKDKmPBc=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "dissect.clfs"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing a parser for the CLFS (Common Log File System) file system";
+    homepage = "https://github.com/fox-it/dissect.clfs";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-cstruct/default.nix b/pkgs/development/python-modules/dissect-cstruct/default.nix
new file mode 100644
index 0000000000000..5cf571e02004d
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-cstruct/default.nix
@@ -0,0 +1,45 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-cstruct";
+  version = "3.2";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.cstruct";
+    rev = version;
+    hash = "sha256-iP00EcEkUWoYi+SCo/gY9LSVtCSQZ3g2wMs4Z8m+X2M=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "dissect.cstruct"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing a parser for C-like structures";
+    homepage = "https://github.com/fox-it/dissect.cstruct";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-esedb/default.nix b/pkgs/development/python-modules/dissect-esedb/default.nix
new file mode 100644
index 0000000000000..a2d1cad5d4ec9
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-esedb/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonPackage
+, dissect-cstruct
+, dissect-util
+, fetchFromGitHub
+, pytestCheckHook
+, pythonOlder
+, setuptools
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-esedb";
+  version = "3.2";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.esedb";
+    rev = version;
+    hash = "sha256-DLu6FCWqeESFlsIB21jN/IKCwSKlBoibildv07/hPcw=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+    dissect-util
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "dissect.esedb"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing a parser for Microsofts Extensible Storage Engine Database (ESEDB)";
+    homepage = "https://github.com/fox-it/dissect.esedb";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-etl/default.nix b/pkgs/development/python-modules/dissect-etl/default.nix
new file mode 100644
index 0000000000000..fba8a126d1a24
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-etl/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonPackage
+, dissect-cstruct
+, dissect-util
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-etl";
+  version = "3.1";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.etl";
+    rev = version;
+    hash = "sha256-EqEYw2MpNjdw8nXkxe76R5y99Y+rsK42qfTpT/kxtZ0=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+    dissect-util
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "dissect.etl"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing a parser for Event Trace Log (ETL) files";
+    homepage = "https://github.com/fox-it/dissect.etl";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-eventlog/default.nix b/pkgs/development/python-modules/dissect-eventlog/default.nix
new file mode 100644
index 0000000000000..d5b8b87a22712
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-eventlog/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonPackage
+, dissect-cstruct
+, dissect-util
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-eventlog";
+  version = "3.1";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.eventlog";
+    rev = version;
+    hash = "sha256-cLIsK2/pL9nNOitoTZprqAio1BOo3/Uqfbl8uL/1tG4=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+    dissect-util
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "dissect.eventlog"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing parsers for the Windows EVT, EVTX and WEVT log file formats";
+    homepage = "https://github.com/fox-it/dissect.eventlog";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-evidence/default.nix b/pkgs/development/python-modules/dissect-evidence/default.nix
new file mode 100644
index 0000000000000..4548ecd6d9023
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-evidence/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonPackage
+, dissect-cstruct
+, dissect-util
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-evidence";
+  version = "3.1";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.evidence";
+    rev = version;
+    hash = "sha256-X0WMv96Wo3vDZ6HYGdWfn7OKhFuT5Qjzkyj4HzMqCiM=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+    dissect-util
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "dissect.evidence"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing a parsers for various forensic evidence file containers";
+    homepage = "https://github.com/fox-it/dissect.evidence";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-extfs/default.nix b/pkgs/development/python-modules/dissect-extfs/default.nix
new file mode 100644
index 0000000000000..54ac3280bf506
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-extfs/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonPackage
+, dissect-cstruct
+, dissect-util
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-extfs";
+  version = "3.1";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.extfs";
+    rev = version;
+    hash = "sha256-i52hlTh0uJJcprA6oVlFQ3v6BpOtSnQAQ0p6BHt56Ac=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+    dissect-util
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "dissect.extfs"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing a parser for the ExtFS file system";
+    homepage = "https://github.com/fox-it/dissect.extfs";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-fat/default.nix b/pkgs/development/python-modules/dissect-fat/default.nix
new file mode 100644
index 0000000000000..91958b8c71c2d
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-fat/default.nix
@@ -0,0 +1,50 @@
+{ lib
+, buildPythonPackage
+, dissect-cstruct
+, dissect-util
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-fat";
+  version = "3.1";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.fat";
+    rev = version;
+    hash = "sha256-GBeacQtNA1onh67Svqo5R43gap/Lzpm+20TXcUMmU5k=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+    dissect-util
+  ];
+
+  # dissect.fat.exceptions.InvalidBPB: Invalid BS_jmpBoot
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "dissect.fat"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing a parser for the FAT file system";
+    homepage = "https://github.com/fox-it/dissect.fat";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-ffs/default.nix b/pkgs/development/python-modules/dissect-ffs/default.nix
new file mode 100644
index 0000000000000..a4898bfce98b8
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-ffs/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonPackage
+, dissect-cstruct
+, dissect-util
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-ffs";
+  version = "3.1";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.ffs";
+    rev = version;
+    hash = "sha256-JI0i0pvOOChWCDB8rynDuf0txvPQT7z2JJ1EsE4VNLw=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+    dissect-util
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "dissect.ffs"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing a parser for the FFS file system";
+    homepage = "https://github.com/fox-it/dissect.ffs";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-hypervisor/default.nix b/pkgs/development/python-modules/dissect-hypervisor/default.nix
new file mode 100644
index 0000000000000..2106cf780c171
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-hypervisor/default.nix
@@ -0,0 +1,61 @@
+{ lib
+, buildPythonPackage
+, dissect-cstruct
+, dissect-util
+, fetchFromGitHub
+, pycryptodome
+, pytestCheckHook
+, pythonOlder
+, rich
+, setuptools
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-hypervisor";
+  version = "3.2";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.hypervisor";
+    rev = version;
+    hash = "sha256-yc9QfzvWX8jsRVZYglZZuMfxsYUoPr5gf407DABjQcU=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+    dissect-util
+  ];
+
+  passthru.optional-dependencies = {
+    full = [
+      pycryptodome
+      rich
+    ];
+  };
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "dissect.hypervisor"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing parsers for various hypervisor disk, backup and configuration files";
+    homepage = "https://github.com/fox-it/dissect.hypervisor";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-ntfs/default.nix b/pkgs/development/python-modules/dissect-ntfs/default.nix
new file mode 100644
index 0000000000000..b8abeb1313abb
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-ntfs/default.nix
@@ -0,0 +1,57 @@
+{ lib
+, buildPythonPackage
+, dissect-cstruct
+, dissect-util
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-ntfs";
+  version = "3.1";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.ntfs";
+    rev = version;
+    hash = "sha256-hZz/v6qLZnbsZkS/cBU/to4XmZNgUJQwCaPkY2ebl4Q=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+    dissect-util
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "dissect.ntfs"
+  ];
+
+  disabledTestPaths = [
+    # Test is very time consuming
+    "tests/test_index.py"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing a parser for the NTFS file system";
+    homepage = "https://github.com/fox-it/dissect.ntfs";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-ole/default.nix b/pkgs/development/python-modules/dissect-ole/default.nix
new file mode 100644
index 0000000000000..60f39dde8bda9
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-ole/default.nix
@@ -0,0 +1,50 @@
+{ lib
+, buildPythonPackage
+, dissect-cstruct
+, dissect-util
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-ole";
+  version = "3.1";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.ole";
+    rev = version;
+    hash = "sha256-qnrbS+gdzBV/mQ08fQzpvevkDtrJ1qXpteW0lxJ+ZUI=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+    dissect-util
+  ];
+
+  # Module has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "dissect.ole"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing a parser for the Object Linking & Embedding (OLE) format";
+    homepage = "https://github.com/fox-it/dissect.ole";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-regf/default.nix b/pkgs/development/python-modules/dissect-regf/default.nix
new file mode 100644
index 0000000000000..8c5ecc583daff
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-regf/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonPackage
+, dissect-cstruct
+, dissect-util
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-regf";
+  version = "3.1";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.regf";
+    rev = version;
+    hash = "sha256-88qG90jza0EVP5dgz09ZA8Z+zFwqanOODlUgsvkMxGo=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+    dissect-util
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "dissect.regf"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing a parser for Windows registry file format";
+    homepage = "https://github.com/fox-it/dissect.regf";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-shellitem/default.nix b/pkgs/development/python-modules/dissect-shellitem/default.nix
new file mode 100644
index 0000000000000..3fd88649ae23d
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-shellitem/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonPackage
+, dissect-cstruct
+, dissect-util
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-shellitem";
+  version = "3.1";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.shellitem";
+    rev = version;
+    hash = "sha256-HVnfHsD1V+4kWt9qOClsKuIZMpX4VKrr/5eD7KRq5ww=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+    dissect-util
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "dissect.shellitem"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing a parser for the Shellitem structures";
+    homepage = "https://github.com/fox-it/dissect.shellitem";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-sql/default.nix b/pkgs/development/python-modules/dissect-sql/default.nix
new file mode 100644
index 0000000000000..816fe7e612f20
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-sql/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonPackage
+, dissect-cstruct
+, dissect-util
+, fetchFromGitHub
+, pytestCheckHook
+, pythonOlder
+, setuptools
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-sql";
+  version = "3.1";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.sql";
+    rev = version;
+    hash = "sha256-uKCCwTFLQSos+L0qc1pFlF3O4FV13up0qFqDYdTZJBk=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+    dissect-util
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "dissect.sql"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing a parsers for the SQLite database file format";
+    homepage = "https://github.com/fox-it/dissect.sql";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-target/default.nix b/pkgs/development/python-modules/dissect-target/default.nix
new file mode 100644
index 0000000000000..04fc69f51252d
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-target/default.nix
@@ -0,0 +1,110 @@
+{ lib
+, asn1crypto
+, buildPythonPackage
+, defusedxml
+, dissect-cim
+, dissect-clfs
+, dissect-cstruct
+, dissect-esedb
+, dissect-etl
+, dissect-eventlog
+, dissect-evidence
+, dissect-extfs
+, dissect-fat
+, dissect-ffs
+, dissect-hypervisor
+, dissect-ntfs
+, dissect-regf
+, dissect-sql
+, dissect-util
+, dissect-volume
+, dissect-xfs
+, fetchFromGitHub
+, flow-record
+, fusepy
+, ipython
+, pytestCheckHook
+, pythonOlder
+, pyyaml
+, setuptools
+, setuptools-scm
+, structlog
+, yara-python
+, zstandard
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-target";
+  version = "3.3";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.target";
+    rev = version;
+    hash = "sha256-EWUYN2OsYeDo3C+QgjAVq9NXiVk1KWGILwtT0cI0tB0=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+    dissect-eventlog
+    dissect-evidence
+    dissect-hypervisor
+    dissect-ntfs
+    dissect-regf
+    dissect-util
+    dissect-volume
+    flow-record
+    structlog
+  ];
+
+  passthru.optional-dependencies = {
+    full = [
+      asn1crypto
+      defusedxml
+      dissect-cim
+      dissect-clfs
+      dissect-esedb
+      dissect-etl
+      dissect-extfs
+      dissect-fat
+      dissect-ffs
+      dissect-sql
+      dissect-xfs
+      fusepy
+      ipython
+      pyyaml
+      yara-python
+      zstandard
+    ];
+  };
+
+  checkInputs = [
+    pytestCheckHook
+  ] ++ passthru.optional-dependencies.full;
+
+  pythonImportsCheck = [
+    "dissect.target"
+  ];
+
+  disabledTests = [
+    # Test requires rdump
+    "test_exec_target_command"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module that provides a programming API and command line tools";
+    homepage = "https://github.com/fox-it/dissect.target";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-util/default.nix b/pkgs/development/python-modules/dissect-util/default.nix
new file mode 100644
index 0000000000000..f6021d9ae981b
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-util/default.nix
@@ -0,0 +1,45 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-util";
+  version = "3.2";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.util";
+    rev = version;
+    hash = "sha256-vit+SQ368limLvdVP/0eVINiEAY/dzD/simHFw489Ck=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "dissect.util"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing various utility functions for the other Dissect modules";
+    homepage = "https://github.com/fox-it/dissect.util";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-vmfs/default.nix b/pkgs/development/python-modules/dissect-vmfs/default.nix
new file mode 100644
index 0000000000000..9789f264de355
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-vmfs/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonPackage
+, dissect-cstruct
+, dissect-util
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-vmfs";
+  version = "3.1";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.vmfs";
+    rev = version;
+    hash = "sha256-JVJvuH+ZTlGOnmTSB/nnBuMrc/VtkKVrLDRYnukDXBA=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+    dissect-util
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "dissect.vmfs"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing a parser for the VMFS file system";
+    homepage = "https://github.com/fox-it/dissect.vmfs";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-volume/default.nix b/pkgs/development/python-modules/dissect-volume/default.nix
new file mode 100644
index 0000000000000..8e409a846cc3a
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-volume/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonPackage
+, dissect-cstruct
+, dissect-util
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-volume";
+  version = "3.1";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.volume";
+    rev = version;
+    hash = "sha256-9SbluaB2wV4gOCry5c7ZLABMwhGfnYg7dTPdKMXYSZM=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+    dissect-util
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "dissect.volume"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing various utility functions for the other Dissect modules";
+    homepage = "https://github.com/fox-it/dissect.volume";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-xfs/default.nix b/pkgs/development/python-modules/dissect-xfs/default.nix
new file mode 100644
index 0000000000000..97eb2ed157a3c
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-xfs/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonPackage
+, dissect-cstruct
+, dissect-util
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-xfs";
+  version = "3.1";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.xfs";
+    rev = version;
+    hash = "sha256-Tg4su78Na6IAQhi7aOY8QNs3tnYOYvdnNQV6rn8QpSE=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cstruct
+    dissect-util
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "dissect.xfs"
+  ];
+
+  meta = with lib; {
+    description = "Dissect module implementing a parser for the XFS file system";
+    homepage = "https://github.com/fox-it/dissect.xfs";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect/default.nix b/pkgs/development/python-modules/dissect/default.nix
new file mode 100644
index 0000000000000..ab6921f69348c
--- /dev/null
+++ b/pkgs/development/python-modules/dissect/default.nix
@@ -0,0 +1,88 @@
+{ lib
+, buildPythonPackage
+, dissect-cim
+, dissect-clfs
+, dissect-cstruct
+, dissect-esedb
+, dissect-etl
+, dissect-eventlog
+, dissect-evidence
+, dissect-extfs
+, dissect-fat
+, dissect-ffs
+, dissect-hypervisor
+, dissect-ntfs
+, dissect-ole
+, dissect-regf
+, dissect-shellitem
+, dissect-sql
+, dissect-target
+, dissect-util
+, dissect-vmfs
+, dissect-volume
+, dissect-xfs
+, fetchFromGitHub
+, pythonOlder
+, setuptools
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "dissect";
+  version = "3.2";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect";
+    rev = version;
+    hash = "sha256-DtiaBKQtz6CgU1csfGhCw0LJLoiKwyH6N6b7/elpJkU=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    dissect-cim
+    dissect-clfs
+    dissect-cstruct
+    dissect-esedb
+    dissect-etl
+    dissect-eventlog
+    dissect-evidence
+    dissect-extfs
+    dissect-fat
+    dissect-ffs
+    dissect-hypervisor
+    dissect-ntfs
+    dissect-ole
+    dissect-regf
+    dissect-shellitem
+    dissect-sql
+    dissect-target
+    dissect-util
+    dissect-vmfs
+    dissect-volume
+    dissect-xfs
+  ] ++ dissect-target.optional-dependencies.full;
+
+  # Module has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "dissect"
+  ];
+
+  meta = with lib; {
+    description = "Dissect meta module";
+    homepage = "https://github.com/fox-it/dissect";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/django-allauth/default.nix b/pkgs/development/python-modules/django-allauth/default.nix
index 6db3cbefedb8d..0cc201169d80c 100644
--- a/pkgs/development/python-modules/django-allauth/default.nix
+++ b/pkgs/development/python-modules/django-allauth/default.nix
@@ -6,6 +6,7 @@
 , pythonOlder
 , requests
 , requests-oauthlib
+, pyjwt
 }:
 
 buildPythonPackage rec {
@@ -30,9 +31,11 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     django
     python3-openid
+    pyjwt
     requests
     requests-oauthlib
-  ];
+  ]
+  ++ pyjwt.optional-dependencies.crypto;
 
   checkPhase = ''
     # test is out of date
diff --git a/pkgs/development/python-modules/django-annoying/default.nix b/pkgs/development/python-modules/django-annoying/default.nix
new file mode 100644
index 0000000000000..3e062f29a0e08
--- /dev/null
+++ b/pkgs/development/python-modules/django-annoying/default.nix
@@ -0,0 +1,48 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, fetchpatch
+, django
+, six
+, pytest-django
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "django-annoying";
+  version = "0.10.6";
+
+  src = fetchFromGitHub {
+    owner = "skorokithakis";
+    repo = "django-annoying";
+    rev = "v${version}";
+    sha256 = "sha256-M1zOLr1Vjf2U0xlW66Mpno+S+b4IKLklN+kYxRaj6cA=";
+  };
+
+  patches = [
+    (fetchpatch {
+      name = "django-4-compatibility.patch";
+      url = "https://github.com/skorokithakis/django-annoying/pull/101/commits/51b5bd7bc8bb7a410400667e00d0813603df32bd.patch";
+      sha256 = "sha256-gLRlAtIHHJ85I88af3C3y+ZT+nXrj2KrV7QgOuEqspk=";
+    })
+  ];
+
+  propagatedBuildInputs = [
+    django
+    six
+  ];
+
+  DJANGO_SETTINGS_MODULE = "tests.settings";
+
+  checkInputs = [
+    pytest-django
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "A django application that tries to eliminate annoying things in the Django framework";
+    homepage = "https://skorokithakis.github.io/django-annoying/";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ ambroisie ];
+  };
+}
diff --git a/pkgs/development/python-modules/django-autocomplete-light/default.nix b/pkgs/development/python-modules/django-autocomplete-light/default.nix
new file mode 100644
index 0000000000000..26138a4ab4af1
--- /dev/null
+++ b/pkgs/development/python-modules/django-autocomplete-light/default.nix
@@ -0,0 +1,73 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, django
+, six
+, pytestCheckHook
+, django-debug-toolbar
+, django-extensions
+, django-taggit
+, django_tagging
+, mock
+, pytest-django
+, selenium
+, splinter
+, sqlparse
+, tenacity
+, whitenoise
+}:
+
+buildPythonPackage rec {
+  pname = "django-autocomplete-light";
+  version = "3.9.4";
+
+  src = fetchFromGitHub {
+    owner = "yourlabs";
+    repo = "django-autocomplete-light";
+    rev = version;
+    sha256 = "sha256-YUiGN6q7ARM/rg7d+ykeDEYZDYjB+DHxMCmdme6QccU=";
+  };
+
+  propagatedBuildInputs = [
+    django
+    six
+  ];
+
+  # Too many un-packaged dependencies
+  doCheck = false;
+
+  checkInputs = [
+    pytestCheckHook
+    django-debug-toolbar
+    django-extensions
+    django-taggit
+    django_tagging
+    mock
+    pytest-django
+    selenium
+    splinter
+    sqlparse
+    tenacity
+    whitenoise
+
+    # FIXME: not packaged
+    # django-generic-m2m
+    # django-gm2m
+    # django-querysetsequence
+    # pytest-splinter
+    # dango-nested-admin
+    # djhacker
+  ];
+
+  # Taken from tox.ini
+  preCheck = "cd test_project";
+
+  pythonImportsCheck = [ "dal" ];
+
+  meta = with lib; {
+    description = "A fresh approach to autocomplete implementations, specially for Django";
+    homepage = "https://django-autocomplete-light.readthedocs.io";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ ambroisie ];
+  };
+}
diff --git a/pkgs/development/python-modules/django-cors-headers/default.nix b/pkgs/development/python-modules/django-cors-headers/default.nix
index ace1dc4f2de50..452c00b6e37f8 100644
--- a/pkgs/development/python-modules/django-cors-headers/default.nix
+++ b/pkgs/development/python-modules/django-cors-headers/default.nix
@@ -8,13 +8,13 @@
 
 buildPythonPackage rec {
   pname = "django-cors-headers";
-  version = "3.7.0";
+  version = "3.13.0";
 
   src = fetchFromGitHub {
     owner = "adamchainz";
     repo = "django-cors-headers";
     rev = version;
-    sha256 = "1wc8cs1gpg9v98bq5qwnd4pcv043za50wd63gwkm86lbvjxyxynz";
+    sha256 = "sha256-pIyf4poW8/slxj4PVvmXpuYp//v5w00yU0Vz6Jiy2yM=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/django-crispy-forms/default.nix b/pkgs/development/python-modules/django-crispy-forms/default.nix
new file mode 100644
index 0000000000000..2677d8ec5262c
--- /dev/null
+++ b/pkgs/development/python-modules/django-crispy-forms/default.nix
@@ -0,0 +1,45 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, django
+, pytestCheckHook
+, pytest-django
+}:
+
+buildPythonPackage rec {
+  pname = "django-crispy-forms";
+  version = "1.14.0";
+
+  src = fetchFromGitHub {
+    owner = "django-crispy-forms";
+    repo = "django-crispy-forms";
+    rev = version;
+    sha256 = "sha256-NZ2lWxsQHc7Qc4HDoWgjJTZ/bJHmjpBf3q1LVLtzA+8=";
+  };
+
+  propagatedBuildInputs = [
+    django
+  ];
+
+  # FIXME: RuntimeError: Model class source.crispy_forms.tests.forms.CrispyTestModel doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.
+  doCheck = false;
+
+  checkInputs = [
+    pytest-django
+    pytestCheckHook
+  ];
+
+  pytestFlagsArray = [
+    "--ds=crispy_forms.tests.test_settings"
+    "crispy_forms/tests/"
+  ];
+
+  pythonImportsCheck = [ "crispy_forms" ];
+
+  meta = with lib; {
+    description = "The best way to have DRY Django forms.";
+    homepage = "https://django-crispy-forms.readthedocs.io/en/latest/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ambroisie ];
+  };
+}
diff --git a/pkgs/development/python-modules/django-hcaptcha/default.nix b/pkgs/development/python-modules/django-hcaptcha/default.nix
new file mode 100644
index 0000000000000..d200444ab50fb
--- /dev/null
+++ b/pkgs/development/python-modules/django-hcaptcha/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, django
+}:
+
+buildPythonPackage rec {
+  pname = "django-hcaptcha";
+  version = "0.2.0";
+
+  src = fetchPypi {
+    inherit version;
+    pname = "django-hCaptcha";
+    sha256 = "sha256-slGerwzJeGWscvglMBEixc9h4eSFLWiVmUFgIirLbBo=";
+  };
+
+  propagatedBuildInputs = [
+    django
+  ];
+
+  # No tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "hcaptcha" ];
+
+  meta = with lib; {
+    description = "Django hCaptcha provides a simple way to protect your django forms using hCaptcha";
+    homepage = "https://github.com/AndrejZbin/django-hcaptcha";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ ambroisie ];
+  };
+}
diff --git a/pkgs/development/python-modules/django-js-reverse/default.nix b/pkgs/development/python-modules/django-js-reverse/default.nix
new file mode 100644
index 0000000000000..9757d9aa27825
--- /dev/null
+++ b/pkgs/development/python-modules/django-js-reverse/default.nix
@@ -0,0 +1,54 @@
+{ lib
+, buildPythonPackage
+, fetchpatch
+, fetchFromGitHub
+, python
+, django
+, nodejs
+, js2py
+, six
+}:
+
+buildPythonPackage rec {
+  pname = "django-js-reverse";
+  # Support for Django 4.0 not yet released
+  version = "unstable-2022-09-16";
+
+  src = fetchFromGitHub {
+    owner = "ierror";
+    repo = "django-js-reverse";
+    rev = "7cab78c4531780ab4b32033d5104ccd5be1a246a";
+    sha256 = "sha256-oA4R5MciDMcSsb+GAgWB5jhj+nl7E8t69u0qlx2G93E=";
+  };
+
+  patches = [
+    (fetchpatch {
+      name = "fix-requires_system_checks-list-or-tuple";
+      url = "https://github.com/ierror/django-js-reverse/commit/1477ba44b62c419d12ebec86e56973f1ae56f712.patch";
+      sha256 = "sha256-xUtCziewVhnCOaNWddJBH4/Vvhwjjq/wcQDvh2YzWMQ=";
+    })
+  ];
+
+  propagatedBuildInputs = [
+    django
+  ];
+
+  checkInputs = [
+    nodejs
+    js2py
+    six
+  ];
+
+  checkPhase = ''
+    ${python.interpreter} django_js_reverse/tests/unit_tests.py
+  '';
+
+  pythonImportsCheck = [ "django_js_reverse" ];
+
+  meta = with lib; {
+    description = "Javascript url handling for Django that doesn't hurt";
+    homepage = "https://django-js-reverse.readthedocs.io/en/latest/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ambroisie ];
+  };
+}
diff --git a/pkgs/development/python-modules/django-oauth-toolkit/default.nix b/pkgs/development/python-modules/django-oauth-toolkit/default.nix
index 65bf5045a0351..7905c1c985fec 100644
--- a/pkgs/development/python-modules/django-oauth-toolkit/default.nix
+++ b/pkgs/development/python-modules/django-oauth-toolkit/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, pythonRelaxDepsHook
 
 # propagates
 , django
@@ -39,6 +40,11 @@ buildPythonPackage rec {
     requests
   ];
 
+  nativeBuildInputs = [ pythonRelaxDepsHook ];
+  pythonRelaxDeps = [
+    "django"
+  ];
+
   DJANGO_SETTINGS_MODULE = "tests.settings";
 
   checkInputs = [
diff --git a/pkgs/development/python-modules/django-reversion/default.nix b/pkgs/development/python-modules/django-reversion/default.nix
index 2932eb31e114e..5a29f75911bfd 100644
--- a/pkgs/development/python-modules/django-reversion/default.nix
+++ b/pkgs/development/python-modules/django-reversion/default.nix
@@ -2,23 +2,31 @@
 , buildPythonPackage
 , fetchPypi
 , django
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "django-reversion";
-  version = "5.0.2";
+  version = "5.0.3";
+  format = "setuptools";
 
-  src = fetchPypi {
+  disabled = pythonOlder "3.7";
+
+src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-JDoS7k4EwWEcDwdvv8MHTxrUCvxFrcZN5bokFMxOryk=";
+    hash = "sha256-rLYA+EghRzEqJ71Y5jdmqgODMQGB5IXm6qL0LSZQLJs=";
   };
 
-  # tests assume the availability of a mysql/postgresql database
-  doCheck = false;
+  propagatedBuildInputs = [
+    django
+  ];
 
-  propagatedBuildInputs = [ django ];
+  # Tests assume the availability of a mysql/postgresql database
+  doCheck = false;
 
-  pythonImportsCheck = [ "reversion" ];
+  pythonImportsCheck = [
+    "reversion"
+  ];
 
   meta = with lib; {
     description = "An extension to the Django web framework that provides comprehensive version control facilities";
diff --git a/pkgs/development/python-modules/django-scopes/default.nix b/pkgs/development/python-modules/django-scopes/default.nix
new file mode 100644
index 0000000000000..26810445faad3
--- /dev/null
+++ b/pkgs/development/python-modules/django-scopes/default.nix
@@ -0,0 +1,38 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, django
+, pytestCheckHook
+, pytest-django
+}:
+
+buildPythonPackage rec {
+  pname = "django-scopes";
+  version = "1.2.0.post1";
+
+  src = fetchFromGitHub {
+    owner = "raphaelm";
+    repo = "django-scopes";
+    # No 1.2.0.post1 tag, see https://github.com/raphaelm/django-scopes/issues/27
+    rev = "0b93cdb6a8335cb02a8ea7296511358ba841d137";
+    sha256 = "sha256-djptJRkW1pfVbxhhs58fJA4d8dKZuvYRy01Aa3Btr+k=";
+  };
+
+  propagatedBuildInputs = [
+    django
+  ];
+
+  checkInputs = [
+    pytest-django
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "django_scopes" ];
+
+  meta = with lib; {
+    description = "Safely separate multiple tenants in a Django database";
+    homepage = "https://github.com/raphaelm/django-scopes";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ ambroisie ];
+  };
+}
diff --git a/pkgs/development/python-modules/django/3.nix b/pkgs/development/python-modules/django/3.nix
index d902779618000..f881ed5221aeb 100644
--- a/pkgs/development/python-modules/django/3.nix
+++ b/pkgs/development/python-modules/django/3.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "django";
-  version = "3.2.15";
+  version = "3.2.16";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     pname = "Django";
     inherit version;
-    hash = "sha256-9xk0sagi8UqGyayWNAU2iSec0ErmnLat5KWUcbiGWCs=";
+    hash = "sha256-OtwoUSQkRySjlPqbmDnMjNEW+vfRWVVMQ+zaqM3wuU0=";
   };
 
   patches = [
diff --git a/pkgs/development/python-modules/django/4.nix b/pkgs/development/python-modules/django/4.nix
index 96ee036d12594..fce3751dc20c7 100644
--- a/pkgs/development/python-modules/django/4.nix
+++ b/pkgs/development/python-modules/django/4.nix
@@ -43,14 +43,14 @@
 
 buildPythonPackage rec {
   pname = "Django";
-  version = "4.1.1";
+  version = "4.1.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-oVP/1RQ78mqHe/ri9Oxzbr2JJKRmAMoImtlrVKHU4o4=";
+    hash = "sha256-uNhDcUgQq4jVk0RQfURHvoss8SpJAxNjtu7Z8bmyKA8=";
   };
 
   patches = [
diff --git a/pkgs/development/python-modules/djangorestframework-simplejwt/default.nix b/pkgs/development/python-modules/djangorestframework-simplejwt/default.nix
index 7a24ba5a84543..e41d6ed51dab0 100644
--- a/pkgs/development/python-modules/djangorestframework-simplejwt/default.nix
+++ b/pkgs/development/python-modules/djangorestframework-simplejwt/default.nix
@@ -5,17 +5,21 @@
 , fetchPypi
 , pyjwt
 , python-jose
+, pythonOlder
 , setuptools-scm
 }:
 
 buildPythonPackage rec {
   pname = "djangorestframework-simplejwt";
-  version = "5.2.0";
+  version = "5.2.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     pname = "djangorestframework_simplejwt";
     inherit version;
-    sha256 = "sha256-pgsJr7J9ka0deskEzGMr1Szs6tjzifD6FTLOsPt1enQ=";
+    hash = "sha256-dhOHTDIqP24zDMEY+fAKPblX/qf4477YG6RRhTzR29U=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/djangorestframework/default.nix b/pkgs/development/python-modules/djangorestframework/default.nix
index 7feb65620265f..ca81d7bd57bb3 100644
--- a/pkgs/development/python-modules/djangorestframework/default.nix
+++ b/pkgs/development/python-modules/djangorestframework/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , coreapi
 , django
 , django-guardian
@@ -24,6 +25,15 @@ buildPythonPackage rec {
     sha256 = "sha256-XmX6DZBZYzVCe72GERplAWt5jIjV/cYercZGb0pYjoc=";
   };
 
+  patches = [
+    # See https://github.com/encode/django-rest-framework/issues/8608
+    # and https://github.com/encode/django-rest-framework/pull/8591/
+    (fetchpatch {
+      name = "fix-django-collect-static.patch";
+      url = "https://github.com/encode/django-rest-framework/pull/8591/commits/65943bb58deba6ee1a89fe4504f270ab1806fce6.patch";
+      sha256 = "sha256-wI7EzX9tlyyXAPrJEr+/2uTg7dVY98IKgh7Cc/NZo5k=";
+    })
+  ];
 
   propagatedBuildInputs = [
     django
diff --git a/pkgs/development/python-modules/dlib/default.nix b/pkgs/development/python-modules/dlib/default.nix
index 6427948356541..601c5ca50758d 100644
--- a/pkgs/development/python-modules/dlib/default.nix
+++ b/pkgs/development/python-modules/dlib/default.nix
@@ -4,7 +4,17 @@
 }:
 
 buildPythonPackage {
-  inherit (dlib) name src nativeBuildInputs buildInputs meta;
+  inherit (dlib) pname version src nativeBuildInputs buildInputs meta;
+
+  patches = [ ./build-cores.patch ];
+
+  checkInputs = [ pytest more-itertools ];
+
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "more-itertools<6.0.0" "more-itertools" \
+      --replace "pytest==3.8" "pytest"
+  '';
 
   # although AVX can be enabled, we never test with it. Some Hydra machines
   # fail because of this, however their build results are probably used on hardware
@@ -18,15 +28,5 @@ buildPythonPackage {
     "--set USE_AVX_INSTRUCTIONS=${if avxSupport then "yes" else "no"}"
   ];
 
-  patches = [ ./build-cores.patch ];
-
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace "more-itertools<6.0.0" "more-itertools" \
-      --replace "pytest==3.8" "pytest"
-  '';
-
-  checkInputs = [ pytest more-itertools ];
-
   dontUseCmakeConfigure = true;
 }
diff --git a/pkgs/development/python-modules/drf-jwt/default.nix b/pkgs/development/python-modules/drf-jwt/default.nix
index 1b2292b46b7a1..6ae583c98e068 100644
--- a/pkgs/development/python-modules/drf-jwt/default.nix
+++ b/pkgs/development/python-modules/drf-jwt/default.nix
@@ -19,7 +19,8 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     pyjwt
     djangorestframework
-  ];
+  ]
+  ++ pyjwt.optional-dependencies.crypto;
 
   # requires setting up a django instance
   doCheck = false;
diff --git a/pkgs/development/python-modules/drf-writable-nested/default.nix b/pkgs/development/python-modules/drf-writable-nested/default.nix
new file mode 100644
index 0000000000000..77ce7d37ff8d7
--- /dev/null
+++ b/pkgs/development/python-modules/drf-writable-nested/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, django
+, djangorestframework
+, pytestCheckHook
+, pytest-django
+}:
+
+buildPythonPackage rec {
+  pname = "drf-writable-nested";
+  version = "0.6.4";
+
+  src = fetchFromGitHub {
+    owner = "beda-software";
+    repo = "drf-writable-nested";
+    rev = "v${version}";
+    sha256 = "sha256-RybtXZ5HipQHaA2RV6TOKIpl6aI9V49mqXDhCH6lg58=";
+  };
+
+  propagatedBuildInputs = [
+    django
+    djangorestframework
+  ];
+
+  checkInputs = [
+    pytest-django
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "Writable nested model serializer for Django REST Framework";
+    homepage = "https://github.com/beda-software/drf-writable-nested";
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ ambroisie ];
+  };
+}
diff --git a/pkgs/development/python-modules/ducc0/default.nix b/pkgs/development/python-modules/ducc0/default.nix
index af7d501ee20d9..81ce58ed73b87 100644
--- a/pkgs/development/python-modules/ducc0/default.nix
+++ b/pkgs/development/python-modules/ducc0/default.nix
@@ -2,7 +2,7 @@
 
 buildPythonPackage rec {
   pname = "ducc0";
-  version = "0.25.0";
+  version = "0.26.0";
 
   disabled = pythonOlder "3.7";
 
@@ -11,7 +11,7 @@ buildPythonPackage rec {
     owner = "mtr";
     repo = "ducc";
     rev = "ducc0_${lib.replaceStrings ["."] ["_"] version}";
-    sha256 = "h+x6dakjyTyqOT9nzzZiCmjw5duZBGu+zpnQJnTnN1M=";
+    sha256 = "p5TW8utFDlN80zD6hvWPcmM2DfKqvEuOzRUtTvLwNT0=";
   };
 
   buildInputs = [ pybind11 ];
diff --git a/pkgs/development/python-modules/ecos/default.nix b/pkgs/development/python-modules/ecos/default.nix
index da1f9fa510696..0f5ef9c2e1fa7 100644
--- a/pkgs/development/python-modules/ecos/default.nix
+++ b/pkgs/development/python-modules/ecos/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , nose
 , numpy
 , pythonOlder
@@ -22,6 +23,15 @@ buildPythonPackage rec {
     fetchSubmodules = true;
   };
 
+  patches = [
+    # Fix for test_interface_bb.py tests
+    (fetchpatch {
+      name = "test_interface_bb_use_nparray.patch";
+      url = "https://github.com/embotech/ecos-python/commit/4440dcb7ddbd92217bc83d8916b72b61537dffbf.patch";
+      hash = "sha256-pcTPviK916jzCLllRhopbC9wDHv+aS6GmV/92sUwzHc=";
+    })
+  ];
+
   propagatedBuildInputs = [
     numpy
     scipy
diff --git a/pkgs/development/python-modules/eth-keys/default.nix b/pkgs/development/python-modules/eth-keys/default.nix
index 903d9bf950182..00029b7df05f8 100644
--- a/pkgs/development/python-modules/eth-keys/default.nix
+++ b/pkgs/development/python-modules/eth-keys/default.nix
@@ -49,6 +49,7 @@ buildPythonPackage rec {
     "test_native_to_coincurve_recover"
     "test_public_key_compression_is_equal"
     "test_public_key_decompression_is_equal"
+    "test_signatures_with_high_s"
   ];
 
   pythonImportsCheck = [ "eth_keys" ];
diff --git a/pkgs/development/python-modules/extruct/default.nix b/pkgs/development/python-modules/extruct/default.nix
new file mode 100644
index 0000000000000..39591ac55fa2e
--- /dev/null
+++ b/pkgs/development/python-modules/extruct/default.nix
@@ -0,0 +1,61 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonRelaxDepsHook
+, html-text
+, jstyleson
+, lxml
+, mf2py
+, pyrdfa3
+, rdflib
+, six
+, w3lib
+, pytestCheckHook
+, mock
+}:
+
+buildPythonPackage rec {
+  pname = "extruct";
+  version = "0.13.0";
+
+  src = fetchFromGitHub {
+    owner = "scrapinghub";
+    repo = "extruct";
+    rev = "v${version}";
+    sha256 = "sha256-hf6b/tZLggHzgFmZ6aldZIBd17Ni7vCTIIzhNlyjvxw=";
+  };
+
+  nativeBuildInputs = [
+    pythonRelaxDepsHook
+  ];
+
+  # rdflib-jsonld functionality is part of rdblib from version 6 onwards
+  pythonRemoveDeps = [
+    "rdflib-jsonld"
+  ];
+
+  propagatedBuildInputs = [
+    html-text
+    jstyleson
+    lxml
+    mf2py
+    pyrdfa3
+    rdflib
+    six
+    w3lib
+  ];
+
+  checkInputs = [
+    mock
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "extruct" ];
+
+  meta = with lib; {
+    description = "Extract embedded metadata from HTML markup";
+    homepage = "https://github.com/scrapinghub/extruct";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ ambroisie ];
+  };
+}
diff --git a/pkgs/development/python-modules/fastapi-mail/default.nix b/pkgs/development/python-modules/fastapi-mail/default.nix
index f7e63bbd32eb3..f1ddf3bce7883 100644
--- a/pkgs/development/python-modules/fastapi-mail/default.nix
+++ b/pkgs/development/python-modules/fastapi-mail/default.nix
@@ -19,7 +19,7 @@
 
 buildPythonPackage rec {
   pname = "fastapi-mail";
-  version = "1.1.4";
+  version = "1.1.5";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -28,7 +28,7 @@ buildPythonPackage rec {
     owner = "sabuhish";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-eQVDPkoRWlzCLwsOh+ksYniRyg02fhda6ys5QMqeLM0=";
+    hash = "sha256-Rt+0ZZqo9tiATwS7iwtp7K2RW3t2tsLw5Hp2WrT40B0=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/flask-jwt-extended/default.nix b/pkgs/development/python-modules/flask-jwt-extended/default.nix
index 3764cc36cb0fa..464894e9cfdd4 100644
--- a/pkgs/development/python-modules/flask-jwt-extended/default.nix
+++ b/pkgs/development/python-modules/flask-jwt-extended/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, cryptography
 , flask
 , pyjwt
 , pytestCheckHook
@@ -29,9 +30,14 @@ buildPythonPackage rec {
     werkzeug
   ];
 
+  passthru.optional-dependencies.asymmetric_crypto = [
+    cryptography
+  ];
+
   checkInputs = [
     pytestCheckHook
-  ];
+  ]
+  ++ lib.flatten (lib.attrValues passthru.optional-dependencies);
 
   pythonImportsCheck = [
     "flask_jwt_extended"
diff --git a/pkgs/development/python-modules/flow-record/default.nix b/pkgs/development/python-modules/flow-record/default.nix
new file mode 100644
index 0000000000000..cf75588e20bde
--- /dev/null
+++ b/pkgs/development/python-modules/flow-record/default.nix
@@ -0,0 +1,68 @@
+{ lib
+, buildPythonPackage
+, elasticsearch
+, fetchFromGitHub
+, lz4
+, msgpack
+, pytestCheckHook
+, pythonOlder
+, setuptools
+, setuptools-scm
+, zstandard
+}:
+
+buildPythonPackage rec {
+  pname = "flow-record";
+  version = "3.5";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "flow.record";
+    rev = version;
+    hash = "sha256-hULz5pIqCKujVH3SpzFgzNM9R7WTtqAmuNOxG7VlUd0=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    msgpack
+  ];
+
+  passthru.optional-dependencies = {
+    compression = [
+      lz4
+      zstandard
+    ];
+    elastic = [
+      elasticsearch
+    ];
+  };
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "flow.record"
+  ];
+
+  disabledTestPaths = [
+    # Test requires rdump
+    "tests/test_rdump.py"
+  ];
+
+  meta = with lib; {
+    description = "Library for defining and creating structured data";
+    homepage = "https://github.com/fox-it/flow.record";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/fritzconnection/default.nix b/pkgs/development/python-modules/fritzconnection/default.nix
index 092b00f6b02e6..ae2f69a8a7e66 100644
--- a/pkgs/development/python-modules/fritzconnection/default.nix
+++ b/pkgs/development/python-modules/fritzconnection/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "fritzconnection";
-  version = "1.9.1";
+  version = "1.10.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "kbr";
     repo = pname;
     rev = version;
-    sha256 = "sha256-wapZ4lCG0tfE+LbFVeIxVlbMJN/sSwIeYK5GLCqoWLs=";
+    sha256 = "sha256-eRvo40VXgo+SQGeh88vRfHPnbrsVDyz03ToIgwRc43Q=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/funcparserlib/default.nix b/pkgs/development/python-modules/funcparserlib/default.nix
index ba535146cf25b..0eab273848ec1 100644
--- a/pkgs/development/python-modules/funcparserlib/default.nix
+++ b/pkgs/development/python-modules/funcparserlib/default.nix
@@ -1,7 +1,6 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, fetchpatch
 , poetry-core
 , python
 , pytestCheckHook
@@ -11,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "funcparserlib";
-  version = "1.0.0a0";
+  version = "1.0.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.6";
@@ -20,7 +19,7 @@ buildPythonPackage rec {
     owner = "vlasovskikh";
     repo = pname;
     rev = version;
-    sha256 = "sha256-YfcboKjyc5ASzrp0duu2R6psf51MGZIeZ0owo5QNSnU=";
+    sha256 = "sha256-moWaOzyF/yhDQCLEp7bc0j8wNv7FM7cvvpCwon3j+gI=";
   };
 
   nativeBuildInputs = [
@@ -32,15 +31,6 @@ buildPythonPackage rec {
     six
   ];
 
-  patches = [
-    # Support for poetry-core, https://github.com/vlasovskikh/funcparserlib/pull/73
-    (fetchpatch {
-      name = "support-poetry-core.patch";
-      url = "https://github.com/vlasovskikh/funcparserlib/commit/61ed558fc146b7a30879919325dfa8aae77be556.patch";
-      sha256 = "sha256-tqdR3r4/t7RWBYZeAabaN7oYf6VxkVVz006XICX9rYI=";
-    })
-  ];
-
   pythonImportsCheck = [
     "funcparserlib"
   ];
diff --git a/pkgs/development/python-modules/gidgethub/default.nix b/pkgs/development/python-modules/gidgethub/default.nix
index 144a48f593244..dfe1c186f4930 100644
--- a/pkgs/development/python-modules/gidgethub/default.nix
+++ b/pkgs/development/python-modules/gidgethub/default.nix
@@ -14,20 +14,21 @@
 
 buildPythonPackage rec {
   pname = "gidgethub";
-  version = "5.2.0";
+  version = "5.2.1";
   format = "flit";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-w1m3aRlOcvmE0uMo3g7o64G3AjQrCkTcXOuskhBOz0s=";
+    sha256 = "sha256-pTP4WleVUmFDPCUHAUdjBMw3QDfAq2aw5TcrSEZ0nVw=";
   };
 
   propagatedBuildInputs = [
     uritemplate
     pyjwt
-  ];
+  ]
+  ++ pyjwt.optional-dependencies.crypto;
 
   checkInputs = [
     pytestCheckHook
diff --git a/pkgs/development/python-modules/github3_py/default.nix b/pkgs/development/python-modules/github3_py/default.nix
index 08786916bd994..a5c930ba9eb05 100644
--- a/pkgs/development/python-modules/github3_py/default.nix
+++ b/pkgs/development/python-modules/github3_py/default.nix
@@ -28,7 +28,8 @@ buildPythonPackage rec {
     uritemplate
     python-dateutil
     pyjwt
-  ];
+  ]
+  ++ pyjwt.optional-dependencies.crypto;
 
   checkInputs = [
     pytestCheckHook
diff --git a/pkgs/development/python-modules/glad/default.nix b/pkgs/development/python-modules/glad/default.nix
index 9d05720d84dfd..5307a2e46124d 100644
--- a/pkgs/development/python-modules/glad/default.nix
+++ b/pkgs/development/python-modules/glad/default.nix
@@ -13,6 +13,6 @@ buildPythonPackage rec {
     description = "Multi-Language Vulkan/GL/GLES/EGL/GLX/WGL Loader-Generator based on the official specs";
     homepage = "https://github.com/Dav1dde/glad";
     license = licenses.mit;
-    maintainers = with maintainers; [ superherointj ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/development/python-modules/glyphslib/default.nix b/pkgs/development/python-modules/glyphslib/default.nix
index 67cd4093374ba..6e960f9b62e08 100644
--- a/pkgs/development/python-modules/glyphslib/default.nix
+++ b/pkgs/development/python-modules/glyphslib/default.nix
@@ -16,15 +16,15 @@
 
 buildPythonPackage rec {
   pname = "glyphslib";
-  version = "6.0.7";
+  version = "6.1.0";
 
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "googlefonts";
     repo = "glyphsLib";
-    rev = "v${version}";
-    sha256 = "sha256-PrHK9uEgs0DcNYW6EQ5Qw29CN4R2OcxOHrMeIswsxdA=";
+    rev = "refs/tags/v${version}";
+    sha256 = "sha256-TulMOubqY1hI1No0yW4d9Wo5xjqBm0qXqmo17+Fvq0w=";
   };
 
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
diff --git a/pkgs/development/python-modules/google-cloud-appengine-logging/default.nix b/pkgs/development/python-modules/google-cloud-appengine-logging/default.nix
index 85b1a7bdfa454..bab843f81ccf1 100644
--- a/pkgs/development/python-modules/google-cloud-appengine-logging/default.nix
+++ b/pkgs/development/python-modules/google-cloud-appengine-logging/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-appengine-logging";
-  version = "1.1.4";
+  version = "1.1.5";
   format = "setuptools";
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-im0A14OQghyYqgtkD767qG+niKQX4jpb0pm2yNBwBCQ=";
+    hash = "sha256-/zKQX6olZS0yl1yAu7Hguj87GUCiPfuf9oamobFHxjw=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-asset/default.nix b/pkgs/development/python-modules/google-cloud-asset/default.nix
index 82598d1f3a4f5..68fe9c08a7405 100644
--- a/pkgs/development/python-modules/google-cloud-asset/default.nix
+++ b/pkgs/development/python-modules/google-cloud-asset/default.nix
@@ -17,14 +17,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-asset";
-  version = "3.14.0";
+  version = "3.14.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-gRM4tOq3nXV6koBNqBxwY3OS576E8gnVjzwDAsS2Ols=";
+    hash = "sha256-pwn9fU1kniouSQbDSEDlANkeoBN4gzTeuuhnuD5Puq8=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-automl/default.nix b/pkgs/development/python-modules/google-cloud-automl/default.nix
index ffa2e73e9acb8..87ac3fe68f1a8 100644
--- a/pkgs/development/python-modules/google-cloud-automl/default.nix
+++ b/pkgs/development/python-modules/google-cloud-automl/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-automl";
-  version = "2.8.1";
+  version = "2.8.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-FlR7jpj/NKJgGLjTvfGr/YusKi+FQ43dyhd6GhTjNE0=";
+    hash = "sha256-aMkYgmx4TDGSW2/0KB7FTNUHUxtTaVpmeDiIWq7Z5lc=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-bigquery-datatransfer/default.nix b/pkgs/development/python-modules/google-cloud-bigquery-datatransfer/default.nix
index f23ee1e4f5196..ebb6d95eb1f32 100644
--- a/pkgs/development/python-modules/google-cloud-bigquery-datatransfer/default.nix
+++ b/pkgs/development/python-modules/google-cloud-bigquery-datatransfer/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-bigquery-datatransfer";
-  version = "3.7.1";
+  version = "3.7.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-ZabPYA56yhoKOYAgvXJLgxAv3VkmV4wiDiAYGoZ61Es=";
+    hash = "sha256-oPgbgaq5RQM4C2qmf36i+qXDQA9sV16abCleNkdGYC0=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-bigquery-logging/default.nix b/pkgs/development/python-modules/google-cloud-bigquery-logging/default.nix
index e965debbcf57b..fecccef18cf2e 100644
--- a/pkgs/development/python-modules/google-cloud-bigquery-logging/default.nix
+++ b/pkgs/development/python-modules/google-cloud-bigquery-logging/default.nix
@@ -7,15 +7,19 @@
 , proto-plus
 , pytest-asyncio
 , pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "google-cloud-bigquery-logging";
-  version = "1.0.5";
+  version = "1.0.6";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-mKsRLljxWe6CYaWy08Gk5XvkygzoVWmu7wOIOGivmZM=";
+    hash = "sha256-n32dnkSujb8npafG4OQZpKqyfdPsIt9hZVpvtjhI6U0=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-bigquery-storage/default.nix b/pkgs/development/python-modules/google-cloud-bigquery-storage/default.nix
index 6d98528e511ed..766a793082cb0 100644
--- a/pkgs/development/python-modules/google-cloud-bigquery-storage/default.nix
+++ b/pkgs/development/python-modules/google-cloud-bigquery-storage/default.nix
@@ -9,11 +9,11 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-bigquery-storage";
-  version = "2.16.1";
+  version = "2.16.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-2qCPfrhuR5lqzKXcHvwZlNFFP8CN/sJbm/U/Q37zAOY=";
+    sha256 = "sha256-5qyk97b06tuH+FEJBhd1Y1GOFYfIt7FivPjhyede9BY=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-bigquery/default.nix b/pkgs/development/python-modules/google-cloud-bigquery/default.nix
index 206d149188830..1c71878ed0b48 100644
--- a/pkgs/development/python-modules/google-cloud-bigquery/default.nix
+++ b/pkgs/development/python-modules/google-cloud-bigquery/default.nix
@@ -22,14 +22,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-bigquery";
-  version = "3.3.3";
+  version = "3.3.5";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-r7tZyBb8t9T6y6EDPGOfTC1J7xSL/q/0L13gz05Qa/k=";
+    hash = "sha256-+7ZXmcAnVN3K7ZgfSotrAhtpzADUzZw1yh1swnLq2dE=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-container/default.nix b/pkgs/development/python-modules/google-cloud-container/default.nix
index cd7d980927903..4759a71c6d7a4 100644
--- a/pkgs/development/python-modules/google-cloud-container/default.nix
+++ b/pkgs/development/python-modules/google-cloud-container/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-container";
-  version = "2.12.0";
+  version = "2.12.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-8zf8PYSOI0KE1P4wAjcehuEzPKZ7RdQlxdUGWYygzIM=";
+    hash = "sha256-GnA60NjGi33i9P5D8IItQjLKlLirJITyijrGQROQHvM=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-datacatalog/default.nix b/pkgs/development/python-modules/google-cloud-datacatalog/default.nix
index 3a534fa74ffc2..297847f6f3ac8 100644
--- a/pkgs/development/python-modules/google-cloud-datacatalog/default.nix
+++ b/pkgs/development/python-modules/google-cloud-datacatalog/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-datacatalog";
-  version = "3.9.1";
+  version = "3.9.3";
   format = "setuptools";
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-8TwAwl9/gq47lW+MXi5x2RlqaAs6dnQiuAZkb4oPD84=";
+    hash = "sha256-JgGs4lqOruHohIy6GaUGSHr0vd+lFsI5u4PVZwt7tdo=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-dataproc/default.nix b/pkgs/development/python-modules/google-cloud-dataproc/default.nix
index 039a1d5c844bc..7e75978a3510a 100644
--- a/pkgs/development/python-modules/google-cloud-dataproc/default.nix
+++ b/pkgs/development/python-modules/google-cloud-dataproc/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-dataproc";
-  version = "5.0.1";
+  version = "5.0.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-U3j9ohPdZ6sTLJ/tII4HeG28h40IGDH+Ljbz/fS8WBk=";
+    hash = "sha256-gE4PyJCrgEekqR3S4YNUtp3yd2AOt7TmKvvDaJ4stk0=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-datastore/default.nix b/pkgs/development/python-modules/google-cloud-datastore/default.nix
index a23716632d02b..c5c2fdf988bd2 100644
--- a/pkgs/development/python-modules/google-cloud-datastore/default.nix
+++ b/pkgs/development/python-modules/google-cloud-datastore/default.nix
@@ -13,11 +13,11 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-datastore";
-  version = "2.8.1";
+  version = "2.8.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-AohJ0TAQy3GFALvzqd4i2BiyaCzfTjMMAVIe1ZUZ5eI=";
+    sha256 = "sha256-JtSY/mQ7BAatBiq9XCO9O0x6nnyPpECnlSYNq9brxp8=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-dlp/default.nix b/pkgs/development/python-modules/google-cloud-dlp/default.nix
index 4b50072264ad4..390af1240dcb2 100644
--- a/pkgs/development/python-modules/google-cloud-dlp/default.nix
+++ b/pkgs/development/python-modules/google-cloud-dlp/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-dlp";
-  version = "3.9.0";
+  version = "3.9.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-fTBNCox9Hbk4iNQfxZZRfNiOozaIL5HTrsN/Parc6m0=";
+    hash = "sha256-UZ44USwAVUCXYUelrFj+5DZ7x67BIU7Q6zPeV5Fh68s=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-error-reporting/default.nix b/pkgs/development/python-modules/google-cloud-error-reporting/default.nix
index 908c1061f197b..9dc701dcb1eff 100644
--- a/pkgs/development/python-modules/google-cloud-error-reporting/default.nix
+++ b/pkgs/development/python-modules/google-cloud-error-reporting/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-error-reporting";
-  version = "1.6.1";
+  version = "1.6.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-PPY5DIaGkx5EXcAO04qbLf6JRPVXU450XnjE+n+v97o=";
+    hash = "sha256-uiKJOec6chc0YB3OowQ2CQajo/iQekcEwIDkXVLEve8=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-firestore/default.nix b/pkgs/development/python-modules/google-cloud-firestore/default.nix
index c17a6a1deb70f..3e8d3734ba78e 100644
--- a/pkgs/development/python-modules/google-cloud-firestore/default.nix
+++ b/pkgs/development/python-modules/google-cloud-firestore/default.nix
@@ -13,11 +13,11 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-firestore";
-  version = "2.7.0";
+  version = "2.7.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-Pi0nRYBfw2A2Bz/i8b+ddtrji2q5Ug1wyo40Vok1MXk=";
+    sha256 = "sha256-UcgDxbFf5/ZRdtEcMaGhOkPZrJDAmKSOSTJv1fIbY48=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-iot/default.nix b/pkgs/development/python-modules/google-cloud-iot/default.nix
index d5752e3205ac8..bd902197416a6 100644
--- a/pkgs/development/python-modules/google-cloud-iot/default.nix
+++ b/pkgs/development/python-modules/google-cloud-iot/default.nix
@@ -7,21 +7,34 @@
 , proto-plus
 , pytestCheckHook
 , pytest-asyncio
+, pythonOlder
 , mock
 }:
 
 buildPythonPackage rec {
   pname = "google-cloud-iot";
-  version = "2.6.2";
+  version = "2.6.4";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-BCNpEZdpBRkRa6p8OwDoE6F70ljbSg6doG83hCnQbwM=";
+    hash = "sha256-d3RRVqgetOS3sAT6UkV5DB/NZMjeZd5tBtd9ME8Wvs4=";
   };
 
-  propagatedBuildInputs = [ grpc-google-iam-v1 google-api-core libcst proto-plus ];
+  propagatedBuildInputs = [
+    grpc-google-iam-v1
+    google-api-core
+    libcst
+    proto-plus
+  ];
 
-  checkInputs = [ mock pytestCheckHook pytest-asyncio ];
+  checkInputs = [
+    mock
+    pytestCheckHook
+    pytest-asyncio
+  ];
 
   disabledTests = [
     # requires credentials
diff --git a/pkgs/development/python-modules/google-cloud-language/default.nix b/pkgs/development/python-modules/google-cloud-language/default.nix
index d5860007ab9f0..84b2c14ee7005 100644
--- a/pkgs/development/python-modules/google-cloud-language/default.nix
+++ b/pkgs/development/python-modules/google-cloud-language/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-language";
-  version = "2.6.0";
+  version = "2.6.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-2boU+QCBYsQUPVEVzmL1WNQ1PkQVv0Zm4CRzyhQ6OPo=";
+    sha256 = "sha256-KAZmikDsTmNarRo9fxrTR5EtGfSYm1i4rP1iX8pa6Zo=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-logging/default.nix b/pkgs/development/python-modules/google-cloud-logging/default.nix
index 71a7e80269fe2..81f032a095d98 100644
--- a/pkgs/development/python-modules/google-cloud-logging/default.nix
+++ b/pkgs/development/python-modules/google-cloud-logging/default.nix
@@ -19,14 +19,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-logging";
-  version = "3.2.2";
+  version = "3.2.5";
   format = "setuptools";
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-cZEhSRzDSe4/hGAPPCkWtbuV1oYLlNkNNPj2PZedEiA=";
+    hash = "sha256-wbB4AD+PwsCGSvBGUeK+EhPltzjqgykeX/VlJSm8Xlg=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-monitoring/default.nix b/pkgs/development/python-modules/google-cloud-monitoring/default.nix
index 31c0b127c1110..d6d3f5f9815d2 100644
--- a/pkgs/development/python-modules/google-cloud-monitoring/default.nix
+++ b/pkgs/development/python-modules/google-cloud-monitoring/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-monitoring";
-  version = "2.11.1";
+  version = "2.11.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-PXZGPMer/Y4zmx2Us8EfrLYLnF1tgF63ZDHmBmPPM0w=";
+    hash = "sha256-Nm27yxdf6woQoP37CeNrHggM2Wobv9W9JrmTlx5A4uY=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-os-config/default.nix b/pkgs/development/python-modules/google-cloud-os-config/default.nix
index bc3737f5bfd19..18f7dafae7a5d 100644
--- a/pkgs/development/python-modules/google-cloud-os-config/default.nix
+++ b/pkgs/development/python-modules/google-cloud-os-config/default.nix
@@ -1,19 +1,42 @@
-{ lib, buildPythonPackage, fetchPypi, google-api-core, libcst, mock, proto-plus, pytestCheckHook, pytest-asyncio }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, google-api-core
+, libcst
+, mock
+, proto-plus
+, pytestCheckHook
+, pytest-asyncio
+, pythonOlder
+}:
 
 buildPythonPackage rec {
   pname = "google-cloud-os-config";
-  version = "1.12.2";
+  version = "1.12.4";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-pr/JPao4GS5XrmeRLk3f1bCaDqlqXodWsn+cTEoR+NM=";
+    hash = "sha256-SmzCo/nh6FbTt+7lw4XAyF5gwDHQCOz8Nbl05/AkDfY=";
   };
 
-  propagatedBuildInputs = [ google-api-core libcst proto-plus ];
+  propagatedBuildInputs = [
+    google-api-core
+    libcst
+    proto-plus
+  ];
 
-  checkInputs = [ mock pytestCheckHook pytest-asyncio ];
+  checkInputs = [
+    mock
+    pytestCheckHook
+    pytest-asyncio
+  ];
 
-  pythonImportsCheck = [ "google.cloud.osconfig" ];
+  pythonImportsCheck = [
+    "google.cloud.osconfig"
+  ];
 
   disabledTests = [
     "test_patch_deployment"
diff --git a/pkgs/development/python-modules/google-cloud-pubsub/default.nix b/pkgs/development/python-modules/google-cloud-pubsub/default.nix
index 25d8d6e55f3e6..9b7e9f63d5ec8 100644
--- a/pkgs/development/python-modules/google-cloud-pubsub/default.nix
+++ b/pkgs/development/python-modules/google-cloud-pubsub/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-pubsub";
-  version = "2.13.7";
+  version = "2.13.9";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-ZQofVdFmK0Rs9w7tdX7op1IFglK0BH2vhjjdvnUE0yY=";
+    hash = "sha256-5hD6Pi55OviEF0szcDu6j6ME4gOcr+8dBdBW4ohJzIE=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-redis/default.nix b/pkgs/development/python-modules/google-cloud-redis/default.nix
index 94641ead4529a..96b20dcc26074 100644
--- a/pkgs/development/python-modules/google-cloud-redis/default.nix
+++ b/pkgs/development/python-modules/google-cloud-redis/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-redis";
-  version = "2.9.1";
+  version = "2.9.3";
   format = "setuptools";
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-tVBbsZod71v3hvkuWI4xIJYsx2xT7m7c4B9in/P2ww0=";
+    hash = "sha256-81RPV8GaSU0jpYTyjFWxakpbuBz994eA7I/wyTxmg8Y=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-resource-manager/default.nix b/pkgs/development/python-modules/google-cloud-resource-manager/default.nix
index 2109694c439f7..7291702a83d34 100644
--- a/pkgs/development/python-modules/google-cloud-resource-manager/default.nix
+++ b/pkgs/development/python-modules/google-cloud-resource-manager/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-resource-manager";
-  version = "1.6.2";
+  version = "1.6.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-OOxxazWbHSYyhHLDtKZIixzHUgsTZmxyyulfzh/TIrM=";
+    hash = "sha256-bPipp05loDhXiWlnx5MHt1gFx1Kt47xBIk5hZ3dLyck=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-secret-manager/default.nix b/pkgs/development/python-modules/google-cloud-secret-manager/default.nix
index 6bee80695f0d8..f8a0e4053d8e5 100644
--- a/pkgs/development/python-modules/google-cloud-secret-manager/default.nix
+++ b/pkgs/development/python-modules/google-cloud-secret-manager/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-secret-manager";
-  version = "2.12.4";
+  version = "2.12.6";
   format = "setuptools";
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-nbM+uZr7a3RXvtLI7n5XZZD9r9ZVoh5iCSoZAnDIuQQ=";
+    hash = "sha256-equimX9D+MOzWQPvxUw4moAvOYU7qB6B4RkPCTQg7PY=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-securitycenter/default.nix b/pkgs/development/python-modules/google-cloud-securitycenter/default.nix
index 0af64ef9f6865..bdf3aca4653a8 100644
--- a/pkgs/development/python-modules/google-cloud-securitycenter/default.nix
+++ b/pkgs/development/python-modules/google-cloud-securitycenter/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-securitycenter";
-  version = "1.16.0";
+  version = "1.16.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-LuC8zMJP4SF/pOUSmA0TV/U/12bo9Wg+UYxdpHaGFfM=";
+    hash = "sha256-DU+0gpnWqmtm5nkLoHbEq5k3pnybsEag+aKEp7+HFmo=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-spanner/default.nix b/pkgs/development/python-modules/google-cloud-spanner/default.nix
index eddd412a4c67e..09b93e721b95f 100644
--- a/pkgs/development/python-modules/google-cloud-spanner/default.nix
+++ b/pkgs/development/python-modules/google-cloud-spanner/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-spanner";
-  version = "3.22.0";
+  version = "3.22.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-3EZMUyF9Se+DD3EK0/srYODRJo8OQkAr5RilTbMTHIo=";
+    hash = "sha256-l8HB0gfWM0ABHiIE5Ej6PMvZ7MRRAumUOj5lmSoTbmI=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-speech/default.nix b/pkgs/development/python-modules/google-cloud-speech/default.nix
index b45490087ebf8..a0e68cdff34f1 100644
--- a/pkgs/development/python-modules/google-cloud-speech/default.nix
+++ b/pkgs/development/python-modules/google-cloud-speech/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-speech";
-  version = "2.15.1";
+  version = "2.16.2";
   format = "setuptools";
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-kTNDOgqSNdl2GytcrkZg8APCEFZ4ofUcEBIlvIXv/M8=";
+    hash = "sha256-aegM+pgdKsM7qC8sfPMxV74gwPYasArFWzkJ/p9ESzU=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-tasks/default.nix b/pkgs/development/python-modules/google-cloud-tasks/default.nix
index 1aa58d8728426..f784a412d788c 100644
--- a/pkgs/development/python-modules/google-cloud-tasks/default.nix
+++ b/pkgs/development/python-modules/google-cloud-tasks/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-tasks";
-  version = "2.10.2";
+  version = "2.10.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-9vAUmK1GG06fNK+d3WMRht2/7Ftaz56ec9xwP5eXxDU=";
+    hash = "sha256-iICX2Na3FQgOMzx5R66sKgTPrVeZEk5ofPBPKQWRRv0=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-texttospeech/default.nix b/pkgs/development/python-modules/google-cloud-texttospeech/default.nix
index 7a3e2a85b1b50..6920239879fc0 100644
--- a/pkgs/development/python-modules/google-cloud-texttospeech/default.nix
+++ b/pkgs/development/python-modules/google-cloud-texttospeech/default.nix
@@ -7,20 +7,32 @@
 , mock
 , proto-plus
 , pytest-asyncio
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "google-cloud-texttospeech";
-  version = "2.12.1";
+  version = "2.12.3";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-JWwYnz12E56GrUSDoatB8pbS+S9C3ZSPsxDW25GfDhA=";
+    hash = "sha256-gnSl/W0mTv6It//+xV5ti0Rd6io1Gh4yxd0arrbEPtQ=";
   };
 
-  propagatedBuildInputs = [ libcst google-api-core proto-plus ];
+  propagatedBuildInputs = [
+    libcst
+    google-api-core
+    proto-plus
+  ];
 
-  checkInputs = [ mock pytest-asyncio pytestCheckHook ];
+  checkInputs = [
+    mock
+    pytest-asyncio
+    pytestCheckHook
+  ];
 
   disabledTests = [
     # Disable tests that require credentials
diff --git a/pkgs/development/python-modules/google-cloud-trace/default.nix b/pkgs/development/python-modules/google-cloud-trace/default.nix
index b828ea516a466..6576f2d2e29a5 100644
--- a/pkgs/development/python-modules/google-cloud-trace/default.nix
+++ b/pkgs/development/python-modules/google-cloud-trace/default.nix
@@ -8,20 +8,33 @@
 , proto-plus
 , pytestCheckHook
 , pytest-asyncio
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "google-cloud-trace";
-  version = "1.7.1";
+  version = "1.7.2";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-zd/N/eVhacopDiYiVbcVNaBOvpMfO426ktuQYhForkQ=";
+    hash = "sha256-m0dwEm0uQSh4wS+j01BIbRtznyOanv+Joo7LbLplXUQ=";
   };
 
-  propagatedBuildInputs = [ google-api-core google-cloud-core proto-plus ];
+  propagatedBuildInputs = [
+    google-api-core
+    google-cloud-core
+    proto-plus
+  ];
 
-  checkInputs = [ google-cloud-testutils mock pytestCheckHook pytest-asyncio ];
+  checkInputs = [
+    google-cloud-testutils
+    mock
+    pytestCheckHook
+    pytest-asyncio
+  ];
 
   disabledTests = [
     # require credentials
diff --git a/pkgs/development/python-modules/google-cloud-translate/default.nix b/pkgs/development/python-modules/google-cloud-translate/default.nix
index dfe50519c428c..295eb13a240ee 100644
--- a/pkgs/development/python-modules/google-cloud-translate/default.nix
+++ b/pkgs/development/python-modules/google-cloud-translate/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-translate";
-  version = "3.8.2";
+  version = "3.8.4";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-wxKWoRQ8DW94De9Z0sOYjm+oTXuEcW5Vw3Iu4YITBQ0=";
+    hash = "sha256-cptSFyAByZRZ7Dr93skVPeCvUoh0/PMACp3dmOEQfuc=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-videointelligence/default.nix b/pkgs/development/python-modules/google-cloud-videointelligence/default.nix
index 0af930a08f2d0..4738926e9d5c7 100644
--- a/pkgs/development/python-modules/google-cloud-videointelligence/default.nix
+++ b/pkgs/development/python-modules/google-cloud-videointelligence/default.nix
@@ -7,20 +7,32 @@
 , proto-plus
 , pytestCheckHook
 , pytest-asyncio
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "google-cloud-videointelligence";
-  version = "2.8.1";
+  version = "2.8.2";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-I86T4Zw7y4pn5ixy+RM6LBMTEGuv7LR2uE2mwoEeCh0=";
+    hash = "sha256-NqElDocBlpARYFTK4k47kCsC/7D1048rNYrrARHeWmg=";
   };
 
-  propagatedBuildInputs = [ google-api-core proto-plus ];
+  propagatedBuildInputs = [
+    google-api-core
+    proto-plus
+  ];
 
-  checkInputs = [ google-cloud-testutils mock pytestCheckHook pytest-asyncio ];
+  checkInputs = [
+    google-cloud-testutils
+    mock
+    pytestCheckHook
+    pytest-asyncio
+  ];
 
   disabledTests = [
     # require credentials
diff --git a/pkgs/development/python-modules/google-cloud-websecurityscanner/default.nix b/pkgs/development/python-modules/google-cloud-websecurityscanner/default.nix
index 260c67bed7336..0e2cc1cac3384 100644
--- a/pkgs/development/python-modules/google-cloud-websecurityscanner/default.nix
+++ b/pkgs/development/python-modules/google-cloud-websecurityscanner/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-websecurityscanner";
-  version = "1.9.0";
+  version = "1.9.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-T+a154A4EakPGk7OL65mweveLBEL1ol3ZYYh2MTyxy8=";
+    hash = "sha256-TBZI32KX1c5XPAV1AmjQvQVhE5UgGOGd5U/enLRV3IU=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/gspread/default.nix b/pkgs/development/python-modules/gspread/default.nix
index 6bbc951ec9f99..c8ab772fe4e84 100644
--- a/pkgs/development/python-modules/gspread/default.nix
+++ b/pkgs/development/python-modules/gspread/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "gspread";
-  version = "5.5.0";
+  version = "5.6.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-hiDph+U0AxXyuNjSbPl+RzaoSzMloXx9m8/3BSXcMAM=";
+    hash = "sha256-n8qFUXP9suZIs9qee7/7g2Ab/XxxMdRPp4HfhMaJ5/w=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/hahomematic/default.nix b/pkgs/development/python-modules/hahomematic/default.nix
index 8a9e0c1e20cd4..593b9004b8252 100644
--- a/pkgs/development/python-modules/hahomematic/default.nix
+++ b/pkgs/development/python-modules/hahomematic/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "hahomematic";
-  version = "2022.9.1";
+  version = "2022.10.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "danielperna84";
     repo = pname;
     rev = "refs/tags/${version}";
-    sha256 = "sha256-OWEF1CJ4ZW64P4w3M+uur/NKCmjhS1c19izA041cC8A=";
+    sha256 = "sha256-WQbTs29cbCm8i7cAlCkyBaBjwOKFawY9Xyj0fPhZQUk=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/holoviews/default.nix b/pkgs/development/python-modules/holoviews/default.nix
index d0d2de64660da..70d021318fdd0 100644
--- a/pkgs/development/python-modules/holoviews/default.nix
+++ b/pkgs/development/python-modules/holoviews/default.nix
@@ -17,14 +17,14 @@
 
 buildPythonPackage rec {
   pname = "holoviews";
-  version = "1.15.0";
+  version = "1.15.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-MS5g0kQGw6euxGJhg2s426JYXjZrzLReR0eVBIBetbo=";
+    hash = "sha256-bQpOXKK/piX1+243BS8BCEX/0FEl5YnOvegvAR53az4=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/home-assistant-bluetooth/default.nix b/pkgs/development/python-modules/home-assistant-bluetooth/default.nix
index 17c25f74b7658..631e0b6eaad38 100644
--- a/pkgs/development/python-modules/home-assistant-bluetooth/default.nix
+++ b/pkgs/development/python-modules/home-assistant-bluetooth/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "home-assistant-bluetooth";
-  version = "1.4.0";
+  version = "1.5.1";
   format = "pyproject";
   disabled = pythonOlder "3.9";
 
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "home-assistant-libs";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-viJOrmvrooHh47yyJJomOGBhQvcoWM3jKMRwZ+6/UJ8=";
+    hash = "sha256-//e+Kb85TBAC9/mHz/T/Dm/pNjbj0488/L/NeS1RMqY=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/homematicip/default.nix b/pkgs/development/python-modules/homematicip/default.nix
index 451a383f84a64..e620f317b9fd1 100644
--- a/pkgs/development/python-modules/homematicip/default.nix
+++ b/pkgs/development/python-modules/homematicip/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "homematicip";
-  version = "1.0.7";
+  version = "1.0.9";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "hahn-th";
     repo = "homematicip-rest-api";
     rev = "refs/tags/${version}";
-    hash = "sha256-1nT5P3HNwwEJSSRbl77DXCuPPxGqiVFXNUK6Q3ZiByU=";
+    hash = "sha256-pQVSbR4MLbyHQRAoCFOMnOrhuAnGRMyiXm1szHvANuA=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/html-text/default.nix b/pkgs/development/python-modules/html-text/default.nix
new file mode 100644
index 0000000000000..997cf053a5f78
--- /dev/null
+++ b/pkgs/development/python-modules/html-text/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, lxml
+, six
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "html-text";
+  version = "0.5.2";
+
+  src = fetchFromGitHub {
+    owner = "TeamHG-Memex";
+    repo = "html-text";
+    rev = version;
+    sha256 = "sha256-jw/hpz0QfcgP5OEJcmre0h1OzOfpPtaROxHm+YUqces=";
+  };
+
+  propagatedBuildInputs = [
+    lxml
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+    six
+  ];
+
+  pythonImportsCheck = [ "html_text" ];
+
+  meta = with lib; {
+    description = "Extract text from HTML";
+    homepage = "https://github.com/TeamHG-Memex/html-text";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ambroisie ];
+  };
+}
diff --git a/pkgs/development/python-modules/httpx/default.nix b/pkgs/development/python-modules/httpx/default.nix
index ab5a6820529e7..4085a2e0893f2 100644
--- a/pkgs/development/python-modules/httpx/default.nix
+++ b/pkgs/development/python-modules/httpx/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , brotli
 , brotlicffi
 , buildPythonPackage
@@ -63,6 +64,9 @@ buildPythonPackage rec {
     ];
   };
 
+  # trustme uses pyopenssl
+  doCheck = !(stdenv.isDarwin && stdenv.isAarch64);
+
   checkInputs = [
     chardet
     pytestCheckHook
diff --git a/pkgs/development/python-modules/huawei-lte-api/default.nix b/pkgs/development/python-modules/huawei-lte-api/default.nix
index 2effc358f5dde..0eb45b7a36d71 100644
--- a/pkgs/development/python-modules/huawei-lte-api/default.nix
+++ b/pkgs/development/python-modules/huawei-lte-api/default.nix
@@ -10,7 +10,8 @@
 
 buildPythonPackage rec {
   pname = "huawei-lte-api";
-  version = "1.6.1";
+  version = "1.6.3";
+  format = "setuptools";
 
   disabled = pythonOlder "3.4";
 
@@ -18,7 +19,7 @@ buildPythonPackage rec {
     owner = "Salamek";
     repo = "huawei-lte-api";
     rev = "refs/tags/${version}";
-    hash = "sha256-ZjSD+/okbFF14YQgCzzH1+FDS+MZQZb1JUINOKdSshs=";
+    hash = "sha256-nF9NOf7H9a3wLA/zgUlk8+T0ID1sYGuu/H7axdJ1P3M=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/hy/default.nix b/pkgs/development/python-modules/hy/default.nix
index a962f86854f2a..c40ba37cec664 100644
--- a/pkgs/development/python-modules/hy/default.nix
+++ b/pkgs/development/python-modules/hy/default.nix
@@ -10,13 +10,11 @@
 , pythonOlder
 , rply
 , testers
-, toPythonApplication
-, hyDefinedPythonPackages ? python-packages: [ ] /* Packages like with python.withPackages */
 }:
 
 buildPythonPackage rec {
   pname = "hy";
-  version = "1.0a4";
+  version = "0.24.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -25,7 +23,7 @@ buildPythonPackage rec {
     owner = "hylang";
     repo = pname;
     rev = version;
-    sha256 = "sha256-MBzp3jqBg/kH233wcgYYHc+Yg9GuOaBsXIfjFDihD1E=";
+    sha256 = "sha256-PmnYOniYqNHGTxpWuAc+zBhOsgRgMMbERHq81KpHheg=";
   };
 
   # https://github.com/hylang/hy/blob/1.0a4/get_version.py#L9-L10
@@ -34,24 +32,23 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     colorama
     funcparserlib
-    rply # TODO: remove on the next release
-  ]
-  ++ lib.optionals (pythonOlder "3.9") [
+  ] ++
+  lib.optionals (pythonOlder "3.9") [
     astor
-  ]
-  # for backwards compatibility with removed pkgs/development/interpreters/hy
-  # See: https://github.com/NixOS/nixpkgs/issues/171428
-  ++ (hyDefinedPythonPackages python.pkgs);
+  ];
 
   checkInputs = [
     pytestCheckHook
   ];
 
+  preCheck = ''
+    # For test_bin_hy
+    export PATH="$out/bin:$PATH"
+  '';
+
   disabledTests = [
-    # Don't test the binary
-    "test_bin_hy"
-    "test_hystartup"
-    "est_hy2py_import"
+    "test_circular_macro_require"
+    "test_macro_require"
   ];
 
   pythonImportsCheck = [ "hy" ];
@@ -61,10 +58,10 @@ buildPythonPackage rec {
       package = hy;
       command = "hy -v";
     };
-    # also for backwards compatibility with removed pkgs/development/interpreters/hy
-    withPackages = python-packages: (toPythonApplication hy).override {
-      hyDefinedPythonPackages = python-packages;
-    };
+    # For backwards compatibility with removed pkgs/development/interpreters/hy
+    # Example usage:
+    #   hy.withPackages (ps: with ps; [ hyrule requests ])
+    withPackages = python-packages: python.withPackages (ps: (python-packages ps) ++ [ ps.hy ]);
   };
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/ibeacon-ble/default.nix b/pkgs/development/python-modules/ibeacon-ble/default.nix
new file mode 100644
index 0000000000000..ad58a71535690
--- /dev/null
+++ b/pkgs/development/python-modules/ibeacon-ble/default.nix
@@ -0,0 +1,51 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, home-assistant-bluetooth
+, poetry-core
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "ibeacon-ble";
+  version = "0.7.3";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.9";
+
+  src = fetchFromGitHub {
+    owner = "Bluetooth-Devices";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-+DPbIIarEAaH1bNzo+FvLp0QpNUPhaJ8nPLdKJKfz0k=";
+  };
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = [
+    home-assistant-bluetooth
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace " --cov=ibeacon_ble --cov-report=term-missing:skip-covered" ""
+  '';
+
+  pythonImportsCheck = [
+    "ibeacon_ble"
+  ];
+
+  meta = with lib; {
+    description = "Library for iBeacon BLE devices";
+    homepage = "https://github.com/Bluetooth-Devices/ibeacon-ble";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/identify/default.nix b/pkgs/development/python-modules/identify/default.nix
index 800172340dc04..0fdf636532118 100644
--- a/pkgs/development/python-modules/identify/default.nix
+++ b/pkgs/development/python-modules/identify/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "identify";
-  version = "2.5.5";
+  version = "2.5.6";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "pre-commit";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Lv2rydAW1qvCa7cFmkmlOEpO2af+kMhsvG4yxTUy3FA=";
+    sha256 = "sha256-DAVCQQmL6ABMjygKm48knZL+smovES5CWv149GoDp34=";
   };
 
   checkInputs = [
diff --git a/pkgs/development/python-modules/ipfshttpclient/default.nix b/pkgs/development/python-modules/ipfshttpclient/default.nix
index 6af860a398058..71e0194a6b2ff 100644
--- a/pkgs/development/python-modules/ipfshttpclient/default.nix
+++ b/pkgs/development/python-modules/ipfshttpclient/default.nix
@@ -14,7 +14,7 @@
 , pytest-order
 , pytest-cid
 , mock
-, ipfs
+, kubo
 , httpx
 , httpcore
 }:
@@ -46,7 +46,7 @@ buildPythonPackage rec {
     pytest-order
     pytest-cid
     mock
-    ipfs
+    kubo
     httpcore
     httpx
   ];
diff --git a/pkgs/development/python-modules/ipwhl/default.nix b/pkgs/development/python-modules/ipwhl/default.nix
index 8bbf257ebdcf4..6ccb1dabebb3c 100644
--- a/pkgs/development/python-modules/ipwhl/default.nix
+++ b/pkgs/development/python-modules/ipwhl/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, pythonOlder, fetchFromSourcehut
-, ipfs, packaging, tomli }:
+, kubo, packaging, tomli }:
 
 buildPythonPackage rec {
   pname = "ipwhl";
@@ -14,7 +14,7 @@ buildPythonPackage rec {
     sha256 = "sha256-YaIYcoUnbiv9wUOFIzGj2sWGbh7NsqRQcqOR2X6+QZA=";
   };
 
-  buildInputs = [ ipfs ];
+  buildInputs = [ kubo ];
   propagatedBuildInputs = [ packaging tomli ];
   doCheck = false; # there's no test
   pythonImportsCheck = [ "ipwhl" ];
diff --git a/pkgs/development/python-modules/json-stream/default.nix b/pkgs/development/python-modules/json-stream/default.nix
index 022b25d9db52d..bcfbe82ac9435 100644
--- a/pkgs/development/python-modules/json-stream/default.nix
+++ b/pkgs/development/python-modules/json-stream/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "json-stream";
-  version = "1.4.3";
+  version = "1.5.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-6VWAaTjzVDss01aFI53Lg0oNuus5u4TRF/co9DHOhLU=";
+    hash = "sha256-htajifmbXtivUwsORzBzJA68nJCACcL75kiBysVYCxY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/jstyleson/default.nix b/pkgs/development/python-modules/jstyleson/default.nix
new file mode 100644
index 0000000000000..be6eff6755f56
--- /dev/null
+++ b/pkgs/development/python-modules/jstyleson/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "jstyleson";
+  version = "0.0.2";
+
+  src = fetchFromGitHub {
+    owner = "linjackson78";
+    repo = "jstyleson";
+    # https://github.com/linjackson78/jstyleson/issues/6
+    rev = "544b9fdb43339cdd15dd03dc69a6d0f36dd73241";
+    sha256 = "sha256-s/0DDfy+07TuUNjHPqKRT3xMMQl6spZCacB7Dweof7A=";
+  };
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "jstyleson" ];
+
+  meta = with lib; {
+    description = "A python library to parse JSON with js-style comments";
+    homepage = "https://github.com/linjackson78/jstyleson";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ambroisie ];
+  };
+}
diff --git a/pkgs/development/python-modules/jupyter_server/default.nix b/pkgs/development/python-modules/jupyter_server/default.nix
index f031528db3e62..791e238f38744 100644
--- a/pkgs/development/python-modules/jupyter_server/default.nix
+++ b/pkgs/development/python-modules/jupyter_server/default.nix
@@ -84,6 +84,9 @@ buildPythonPackage rec {
   disabledTestPaths = [
     "tests/services/kernels/test_api.py"
     "tests/services/sessions/test_api.py"
+    # nbconvert failed: `relax_add_props` kwargs of validate has been
+    # deprecated for security reasons, and will be removed soon.
+    "tests/nbconvert/test_handlers.py"
   ];
 
   __darwinAllowLocalNetworking = true;
diff --git a/pkgs/development/python-modules/jupyterlab_server/default.nix b/pkgs/development/python-modules/jupyterlab_server/default.nix
index ae6e599be3fa4..1c2976cdf03e4 100644
--- a/pkgs/development/python-modules/jupyterlab_server/default.nix
+++ b/pkgs/development/python-modules/jupyterlab_server/default.nix
@@ -9,6 +9,7 @@
 , json5
 , babel
 , jupyter_server
+, tomli
 , openapi-core
 , pytest-timeout
 , pytest-tornasync
@@ -37,6 +38,7 @@ buildPythonPackage rec {
     json5
     babel
     jupyter_server
+    tomli
   ] ++ lib.optional (pythonOlder "3.10") importlib-metadata;
 
   checkInputs = [
@@ -52,6 +54,9 @@ buildPythonPackage rec {
     rm -r tests/translations/
   '';
 
+  # https://github.com/jupyterlab/jupyterlab_server/blob/v2.15.2/pyproject.toml#L61
+  doCheck = false;
+
   preCheck = ''
     export HOME=$(mktemp -d)
   '';
diff --git a/pkgs/development/python-modules/kegtron-ble/default.nix b/pkgs/development/python-modules/kegtron-ble/default.nix
new file mode 100644
index 0000000000000..4af4817d7f842
--- /dev/null
+++ b/pkgs/development/python-modules/kegtron-ble/default.nix
@@ -0,0 +1,55 @@
+{ lib
+, bluetooth-data-tools
+, bluetooth-sensor-state-data
+, buildPythonPackage
+, fetchFromGitHub
+, poetry-core
+, pytestCheckHook
+, pythonOlder
+, sensor-state-data
+}:
+
+buildPythonPackage rec {
+  pname = "kegtron-ble";
+  version = "0.4.0";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.9";
+
+  src = fetchFromGitHub {
+    owner = "Bluetooth-Devices";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-O5I5shW8nL2RAQptS2Bp/GI/4L6o0xXXmwYvRq0MM8o=";
+  };
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = [
+    bluetooth-data-tools
+    bluetooth-sensor-state-data
+    sensor-state-data
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace " --cov=kegtron_ble --cov-report=term-missing:skip-covered" ""
+  '';
+
+  pythonImportsCheck = [
+    "kegtron_ble"
+  ];
+
+  meta = with lib; {
+    description = "Library for Kegtron BLE devices";
+    homepage = "https://github.com/Bluetooth-Devices/kegtron-ble";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/langcodes/default.nix b/pkgs/development/python-modules/langcodes/default.nix
index e3454acd5cd92..72a80298c5cd9 100644
--- a/pkgs/development/python-modules/langcodes/default.nix
+++ b/pkgs/development/python-modules/langcodes/default.nix
@@ -6,6 +6,7 @@
 , poetry-core
 , pytestCheckHook
 , language-data
+, setuptools
 }:
 
 buildPythonPackage rec {
@@ -27,6 +28,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     language-data
     marisa-trie
+    setuptools # pkg_resources import in language_data/util.py
   ];
 
   checkInputs = [
diff --git a/pkgs/development/python-modules/language-tags/default.nix b/pkgs/development/python-modules/language-tags/default.nix
new file mode 100644
index 0000000000000..ea3be88335c90
--- /dev/null
+++ b/pkgs/development/python-modules/language-tags/default.nix
@@ -0,0 +1,30 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "language-tags";
+  version = "1.1.0";
+
+  src = fetchFromGitHub {
+    owner = "OnroerendErfgoed";
+    repo = "language-tags";
+    rev = version;
+    sha256 = "sha256-4Ira3EMS64AM8I3SLmUm+m6V5vwtDYf8WDmVDvI+ZOw=";
+  };
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "language_tags" ];
+
+  meta = with lib; {
+    description = "Dealing with IANA language tags in Python";
+    homepage = "https://language-tags.readthedocs.io/en/latest/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ambroisie ];
+  };
+}
diff --git a/pkgs/development/python-modules/ledgerblue/default.nix b/pkgs/development/python-modules/ledgerblue/default.nix
index b52a8e5b4c8e9..7480045f7008e 100644
--- a/pkgs/development/python-modules/ledgerblue/default.nix
+++ b/pkgs/development/python-modules/ledgerblue/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "ledgerblue";
-  version = "0.1.42";
+  version = "0.1.43";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-UNquetZ1sCLO9T5p5b3jTSu+52xuc5XdyHNKsvvPdck=";
+    hash = "sha256-t0mdw8cBGUZ33BWOSeEHyFAGga/Tf1F/gATFSfCpAJQ=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/lektor/default.nix b/pkgs/development/python-modules/lektor/default.nix
index 0749a54706466..74fecc7f0e533 100644
--- a/pkgs/development/python-modules/lektor/default.nix
+++ b/pkgs/development/python-modules/lektor/default.nix
@@ -2,10 +2,12 @@
 , babel
 , buildPythonPackage
 , click
+, deprecated
 , exifread
 , fetchFromGitHub
 , filetype
 , flask
+, importlib-metadata
 , inifile
 , jinja2
 , marshmallow
@@ -21,13 +23,14 @@
 , python-slugify
 , requests
 , setuptools
+, typing-inspect
 , watchdog
 , werkzeug
 }:
 
 buildPythonPackage rec {
   pname = "lektor";
-  version = "3.3.5";
+  version = "3.4.0b2";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -36,12 +39,13 @@ buildPythonPackage rec {
     owner = "lektor";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-i3SuvRREuq0EENDtXjQegdmz30RmH1HVqBwdjq/mkTM=";
+    hash = "sha256-5w3tT0celHgjmLlsM3sdBdYlXx57z3kMePVGSQkOP7M=";
   };
 
   propagatedBuildInputs = [
     babel
     click
+    deprecated
     exifread
     filetype
     flask
@@ -55,8 +59,11 @@ buildPythonPackage rec {
     python-slugify
     requests
     setuptools
+    typing-inspect
     watchdog
     werkzeug
+  ] ++ lib.optionals (pythonOlder "3.8") [
+    importlib-metadata
   ];
 
   checkInputs = [
@@ -65,6 +72,11 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  postPatch = ''
+    substituteInPlace setup.cfg \
+      --replace "typing.inspect < 0.8.0" "typing.inspect"
+  '';
+
   pythonImportsCheck = [
     "lektor"
   ];
diff --git a/pkgs/development/python-modules/libvirt/default.nix b/pkgs/development/python-modules/libvirt/default.nix
index 5d2b49e548a5d..37114eb70c6f5 100644
--- a/pkgs/development/python-modules/libvirt/default.nix
+++ b/pkgs/development/python-modules/libvirt/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "libvirt";
-  version = "8.7.0";
+  version = "8.8.0";
 
   src = fetchFromGitLab {
     owner = "libvirt";
     repo = "libvirt-python";
     rev = "v${version}";
-    sha256 = "sha256-B7pJDFjamFtNAhnPWMzNUWFEBhM48y0QG4MUtX7GP4o=";
+    sha256 = "sha256-UguqUsIfrql1UZeBoHLKXvLYuWicbJWamglkvqS++FI=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/development/python-modules/lxmf/default.nix b/pkgs/development/python-modules/lxmf/default.nix
index 51c692455557f..d2605a0fdd6ca 100644
--- a/pkgs/development/python-modules/lxmf/default.nix
+++ b/pkgs/development/python-modules/lxmf/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "lxmf";
-  version = "0.1.8";
+  version = "0.2.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "markqvist";
     repo = "lxmf";
     rev = "refs/tags/${version}";
-    hash = "sha256-NwjijbRSg9RYl1NS5dXAG4HohkZx5oeEyMyvEFYQhYk=";
+    hash = "sha256-5GQil5ReK0DEURPDgrGxfUhhIFHrRSSmtZ+l6xA9oA8=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/maestral/default.nix b/pkgs/development/python-modules/maestral/default.nix
index aeae43aeee4d9..370655029e42b 100644
--- a/pkgs/development/python-modules/maestral/default.nix
+++ b/pkgs/development/python-modules/maestral/default.nix
@@ -5,6 +5,7 @@
 , pythonOlder
 , python
 , click
+, dbus-python
 , desktop-notifier
 , dropbox
 , fasteners
@@ -40,6 +41,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     click
     desktop-notifier
+    dbus-python
     dropbox
     fasteners
     keyring
diff --git a/pkgs/development/python-modules/marshmallow-dataclass/default.nix b/pkgs/development/python-modules/marshmallow-dataclass/default.nix
index 32a490822d2ac..9ebb16b833056 100644
--- a/pkgs/development/python-modules/marshmallow-dataclass/default.nix
+++ b/pkgs/development/python-modules/marshmallow-dataclass/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "marshmallow-dataclass";
-  version = "8.5.8";
+  version = "8.5.9";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "lovasoa";
     repo = "marshmallow_dataclass";
     rev = "v${version}";
-    sha256 = "sha256-3kd/V3U3+/HfUmzwkp3/ChwSjknQ8rIYnTUsRH3WoP4=";
+    sha256 = "sha256-gA5GxE2as/P5yT3ymvXmLQfG2GyZE7Fj+zBaT88O4vY=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/meshtastic/default.nix b/pkgs/development/python-modules/meshtastic/default.nix
index 2432abe7b09ca..1d8c0d0dccaf1 100644
--- a/pkgs/development/python-modules/meshtastic/default.nix
+++ b/pkgs/development/python-modules/meshtastic/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "meshtastic";
-  version = "1.3.36";
+  version = "1.3.39";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "meshtastic";
     repo = "Meshtastic-python";
     rev = version;
-    hash = "sha256-mv4sj9W8bWSaqiPlBdW0v0QAPr9beD/sOgrfJH68S5o=";
+    hash = "sha256-ymh8PNis9qh6mgc2IrDiFSwGm9sxC/6YWTxQ9HD0TJo=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/mf2py/default.nix b/pkgs/development/python-modules/mf2py/default.nix
new file mode 100644
index 0000000000000..110da8e60f8f6
--- /dev/null
+++ b/pkgs/development/python-modules/mf2py/default.nix
@@ -0,0 +1,43 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, beautifulsoup4
+, html5lib
+, requests
+, lxml
+, mock
+, nose
+}:
+
+buildPythonPackage rec {
+  pname = "mf2py";
+  version = "1.1.2";
+
+  src = fetchFromGitHub {
+    owner = "microformats";
+    repo = "mf2py";
+    rev = version;
+    sha256 = "sha256-9pAD/eCmc/l7LGmKixDhZy3hhj1jCmcyo9wbqgtz/wI=";
+  };
+
+  propagatedBuildInputs = [
+    beautifulsoup4
+    html5lib
+    requests
+  ];
+
+  checkInputs = [
+    lxml
+    mock
+    nose
+  ];
+
+  pythonImportsCheck = [ "mf2py" ];
+
+  meta = with lib; {
+    description = "Microformats2 parser written in Python";
+    homepage = "https://microformats.org/wiki/mf2py";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ambroisie ];
+  };
+}
diff --git a/pkgs/development/python-modules/microdata/default.nix b/pkgs/development/python-modules/microdata/default.nix
new file mode 100644
index 0000000000000..39ed19395c5df
--- /dev/null
+++ b/pkgs/development/python-modules/microdata/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, html5lib
+, unittestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "microdata";
+  version = "0.8.0";
+
+  src = fetchFromGitHub {
+    owner = "edsu";
+    repo = "microdata";
+    rev = "v${version}";
+    sha256 = "sha256-BAygCLBLxZ033ZWRFSR52dSM2nPY8jXplDXQ8WW3KPo=";
+  };
+
+  propagatedBuildInputs = [
+    html5lib
+  ];
+
+  checkInputs = [
+    unittestCheckHook
+  ];
+
+  pythonImportsCheck = [ "microdata" ];
+
+  meta = with lib; {
+    description = "Library for extracting html microdata";
+    homepage = "https://github.com/edsu/microdata";
+    license = licenses.cc0;
+    maintainers = with maintainers; [ ambroisie ];
+  };
+}
diff --git a/pkgs/development/python-modules/minikerberos/default.nix b/pkgs/development/python-modules/minikerberos/default.nix
index 5670663960c84..ed59c2f3425eb 100644
--- a/pkgs/development/python-modules/minikerberos/default.nix
+++ b/pkgs/development/python-modules/minikerberos/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "minikerberos";
-  version = "0.3.2";
+  version = "0.3.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-6nsc/LVyzjXCtX7GhWbOVc98hPbJZOWAOuys3WPTfYw=";
+    hash = "sha256-xO7d5GCihEzIH/DZziRR1SRpzAywPe99WJXeRyuh7S8=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/mkdocs-jupyter/default.nix b/pkgs/development/python-modules/mkdocs-jupyter/default.nix
new file mode 100644
index 0000000000000..2c9b85e64e0bc
--- /dev/null
+++ b/pkgs/development/python-modules/mkdocs-jupyter/default.nix
@@ -0,0 +1,50 @@
+{ buildPythonPackage
+, fetchPypi
+, ipykernel
+, jupytext
+, lib
+, mkdocs
+, mkdocs-material
+, nbconvert
+, pygments
+, pytestCheckHook
+, pytest-cov
+}:
+
+buildPythonPackage rec {
+  pname = "mkdocs-jupyter";
+  version = "0.22.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-WFzGm+pMufr2iYExl43JqbIlCR7UtghPWrZWUqXhIYU=";
+  };
+
+  postPatch = ''
+    substituteInPlace mkdocs_jupyter/tests/test_base_usage.py \
+          --replace "[\"mkdocs\"," "[\"${mkdocs.out}/bin/mkdocs\","
+  '';
+
+  propagatedBuildInputs = [
+    nbconvert
+    jupytext
+    mkdocs
+    mkdocs-material
+    pygments
+    ipykernel
+  ];
+
+  pythonImportsCheck = [ "mkdocs_jupyter" ];
+
+  checkInputs = [
+    pytest-cov
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "Use Jupyter Notebook in mkdocs";
+    homepage = "https://github.com/danielfrg/mkdocs-jupyter";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ net-mist ];
+  };
+}
diff --git a/pkgs/development/python-modules/msal/default.nix b/pkgs/development/python-modules/msal/default.nix
index f50818f5587d4..b00a7703cf05e 100644
--- a/pkgs/development/python-modules/msal/default.nix
+++ b/pkgs/development/python-modules/msal/default.nix
@@ -8,25 +8,21 @@
 
 buildPythonPackage rec {
   pname = "msal";
-  version = "1.19.0";
+  version = "1.20.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-ZeMp1py/5Iuz3TI2se+OTMkfhpY3YGwYTiJ+htKwYp0=";
+    hash = "sha256-eDRM1MkdYTSlk7Xj5FVB5mbje3R/+KYxbDZo3R5qtrI=";
   };
 
   propagatedBuildInputs = [
     pyjwt
     requests
-  ];
-
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace "PyJWT[crypto]>=1.0.0,<3" "PyJWT"
-  '';
+  ]
+  ++ pyjwt.optional-dependencies.crypto;
 
   # Tests assume Network Connectivity:
   # https://github.com/AzureAD/microsoft-authentication-library-for-python/blob/e2958961e8ec16d0af4199f60c36c3f913497e48/tests/test_authority.py#L73
diff --git a/pkgs/development/python-modules/msldap/default.nix b/pkgs/development/python-modules/msldap/default.nix
index 64f8e2e7ecaf8..445eea622d243 100644
--- a/pkgs/development/python-modules/msldap/default.nix
+++ b/pkgs/development/python-modules/msldap/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "msldap";
-  version = "0.4.1";
+  version = "0.4.6";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-+zfFCWtqIrK0tQNJ+noilvvXO6y1umWoNQ2TvhDosls=";
+    hash = "sha256-iiAtylJIzcfNyh1d92wA1oOYk7UWdD/F0sWtlAMMv2g=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/mypy-boto3-builder/default.nix b/pkgs/development/python-modules/mypy-boto3-builder/default.nix
index dc44c361a9caf..659ca88d0f9a7 100644
--- a/pkgs/development/python-modules/mypy-boto3-builder/default.nix
+++ b/pkgs/development/python-modules/mypy-boto3-builder/default.nix
@@ -12,20 +12,21 @@
 , pyparsing
 , pytestCheckHook
 , pythonOlder
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "mypy-boto3-builder";
-  version = "7.5.5";
+  version = "7.11.10";
   format = "pyproject";
 
   disabled = pythonOlder "3.10";
 
   src = fetchFromGitHub {
-    owner = "vemel";
+    owner = "youtype";
     repo = "mypy_boto3_builder";
     rev = version;
-    hash = "sha256-rv0c0QoXOd7aSOLhGDGfq4v0bnGBOJhGhZVNhS5hgOs=";
+    hash = "sha256-bS56xHrAoYKjwfbz5vh6O41EGDM821z4ZFZfpqc65cE=";
   };
 
   nativeBuildInputs = [
@@ -41,6 +42,7 @@ buildPythonPackage rec {
     mdformat
     newversion
     pyparsing
+    setuptools
   ];
 
   checkInputs = [
@@ -59,6 +61,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Type annotations builder for boto3";
     homepage = "https://github.com/youtype/mypy_boto3_builder";
+    changelog = "https://github.com/youtype/mypy_boto3_builder/releases/tag/${version}";
     license = with licenses; [ bsd3 ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/mypy/default.nix b/pkgs/development/python-modules/mypy/default.nix
index e62a84ae91dde..3e58b91b16005 100644
--- a/pkgs/development/python-modules/mypy/default.nix
+++ b/pkgs/development/python-modules/mypy/default.nix
@@ -18,13 +18,14 @@
 , typed-ast
 , typing-extensions
 , tomli
+, types-setuptools
 , types-typed-ast
 , virtualenv
 }:
 
 buildPythonPackage rec {
   pname = "mypy";
-  version = "0.971";
+  version = "0.981";
   format = "pyproject";
   disabled = pythonOlder "3.7";
 
@@ -32,12 +33,13 @@ buildPythonPackage rec {
     owner = "python";
     repo = "mypy";
     rev = "refs/tags/v${version}";
-    hash = "sha256-J1lUnJco9rLYgFpJkfujGfVq1CfC4pdvvDzoan3jGkU=";
+    hash = "sha256-CkRK/j5DRUZU2enpZtqX4l+89E7ODDG9MeRYFQp9kSs=";
   };
 
   nativeBuildInputs = [
     setuptools
     types-typed-ast
+    types-setuptools
   ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/myst-nb/default.nix b/pkgs/development/python-modules/myst-nb/default.nix
index e3527afdef8ce..8d9bc3ff72cb1 100644
--- a/pkgs/development/python-modules/myst-nb/default.nix
+++ b/pkgs/development/python-modules/myst-nb/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "myst-nb";
-  version = "0.17.0";
+  version = "0.17.1";
 
   format = "flit";
 
@@ -26,7 +26,7 @@ buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-eEYtfUm9GtE2h+ogeF+7EaoACeZeMutYpX3M6+WxYX8=";
+    sha256 = "sha256-FN9yXz4Ay17+9PhjvwwnNJDIxmLf7jntins3S/JWGTM=";
   };
 
   nativeBuildInputs = [ flit-core ];
@@ -50,6 +50,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "A Jupyter Notebook Sphinx reader built on top of the MyST markdown parser";
     homepage = "https://github.com/executablebooks/myst-nb";
+    changelog = "https://github.com/executablebooks/MyST-NB/raw/v${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ marsam ];
   };
diff --git a/pkgs/development/python-modules/nbclassic/default.nix b/pkgs/development/python-modules/nbclassic/default.nix
index a1e16bc752196..c034b6ab35803 100644
--- a/pkgs/development/python-modules/nbclassic/default.nix
+++ b/pkgs/development/python-modules/nbclassic/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "nbclassic";
-  version = "0.4.3";
+  version = "0.4.5";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-8DERss66ppuINwp7I7GbKzfJu3F2fxgozf16BH6ujt0=";
+    sha256 = "sha256-BXBMbN2DAb9S5A7Z+uOegNa8XS1EfcZ4McFFtN2Sh3k=";
   };
 
   propagatedBuildInputs = [ jupyter_server notebook notebook-shim ];
diff --git a/pkgs/development/python-modules/nbconvert/default.nix b/pkgs/development/python-modules/nbconvert/default.nix
index 82d3aad69626c..1940da96047da 100644
--- a/pkgs/development/python-modules/nbconvert/default.nix
+++ b/pkgs/development/python-modules/nbconvert/default.nix
@@ -39,6 +39,18 @@ buildPythonPackage rec {
       hash = "sha256-kdOmE7BnkRy2lsNQ2OVrEXXZntJUPJ//b139kSsfKmI=";
       excludes = [ "pyproject.toml" ];
     })
+
+    # patch nbconvert/filters/markdown_mistune.py
+    (fetchpatch {
+      name = "clean-up-markdown-parsing.patch";
+      url = "https://github.com/jupyter/nbconvert/commit/4df1f5451c9c3e8121036dfbc7e07f0095f4d524.patch";
+      hash = "sha256-O+VWUaQi8UMCpE9/h/IsrenmEuJ2ac/kBkUBq7GFJTY";
+    })
+    (fetchpatch {
+      name = "fix-markdown-table.patch";
+      url = "https://github.com/jupyter/nbconvert/commit/d3900ed4527f024138dc3a8658c6a1b1dfc43c09.patch";
+      hash = "sha256-AFE1Zhw29JMLB0Sj17zHcOfy7VEFqLekO8NYbyMLrdI=";
+    })
   ];
 
   postPatch = ''
@@ -47,6 +59,10 @@ buildPythonPackage rec {
     # Use mistune 2.x
     substituteInPlace setup.py \
         --replace "mistune>=0.8.1,<2" "mistune>=2.0.3,<3"
+
+    # Equivalent of the upstream patch https://github.com/jupyter/nbconvert/commit/aec39288c9a6c614d659bcaf9f5cb36634d6b37b.patch
+    substituteInPlace share/jupyter/nbconvert/templates/lab/base.html.j2 \
+        --replace "{{ output.data['image/svg+xml'] | clean_html }}" "{{ output.data['image/svg+xml'].encode(\"utf-8\") | clean_html }}"
   '';
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/nbxmpp/default.nix b/pkgs/development/python-modules/nbxmpp/default.nix
index 0e6a156a4a9e9..725953f0726c7 100644
--- a/pkgs/development/python-modules/nbxmpp/default.nix
+++ b/pkgs/development/python-modules/nbxmpp/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "nbxmpp";
-  version = "3.2.2";
+  version = "3.2.4";
 
   disabled = pythonOlder "3.7";
 
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "gajim";
     repo = "python-nbxmpp";
     rev = version;
-    sha256 = "sha256-WVE8evbfWdQNsuDEQF7WfEYDQEKGKXElKQBkUn7bJ1I=";
+    sha256 = "sha256-ydOJBgKPkmw2Qf0TB3ukWGpi8P0BgcCGA47dASjRrgQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/nix-prefetch-github/default.nix b/pkgs/development/python-modules/nix-prefetch-github/default.nix
index d1f493d0279e5..42533cfcacd8c 100644
--- a/pkgs/development/python-modules/nix-prefetch-github/default.nix
+++ b/pkgs/development/python-modules/nix-prefetch-github/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "nix-prefetch-github";
-  version = "5.2.1";
+  version = "5.2.2";
 
   disabled = pythonOlder "3.7";
 
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "seppeljordan";
     repo = "nix-prefetch-github";
     rev = "v${version}";
-    sha256 = "etmlRavPzJKLmyw3PYMgeMveFj4aVi38crHjdtDuaLg=";
+    sha256 = "sha256-+0s47YhpMojxmRHKC7kazov2ZUsOs2/Y2EmHAAcARf0=";
   };
 
   checkInputs = [ unittestCheckHook git which ];
diff --git a/pkgs/development/python-modules/nomadnet/default.nix b/pkgs/development/python-modules/nomadnet/default.nix
index 431caf19a570a..28e6da843dafe 100644
--- a/pkgs/development/python-modules/nomadnet/default.nix
+++ b/pkgs/development/python-modules/nomadnet/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "nomadnet";
-  version = "0.2.2";
+  version = "0.2.4";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "markqvist";
     repo = "NomadNet";
     rev = version;
-    hash = "sha256-NCnf50li0RZa8RCDutS1s7DfLfOK3RjEeJ4QvQzqsHs=";
+    hash = "sha256-SfKIbgt+F4CPA5r5NHjgPXOiq3+3UtvzEQfXkmN1VR0=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/notifications-python-client/default.nix b/pkgs/development/python-modules/notifications-python-client/default.nix
index 1f59b808912f7..3f79613685132 100644
--- a/pkgs/development/python-modules/notifications-python-client/default.nix
+++ b/pkgs/development/python-modules/notifications-python-client/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "notifications-python-client";
-  version = "6.3.0";
+  version = "6.4.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "alphagov";
     repo = pname;
     rev = version;
-    sha256 = "sha256-pfOTVgsfXJQ9GIGowra3RAwxCri76RgnA9iyWbjomCk=";
+    sha256 = "sha256-9HK7N35XqTl9VsRmwxalfdOuaBWiB5j05R8CSMwSHH0=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/oci/default.nix b/pkgs/development/python-modules/oci/default.nix
index 3377d44ae9366..11525c7103822 100644
--- a/pkgs/development/python-modules/oci/default.nix
+++ b/pkgs/development/python-modules/oci/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "oci";
-  version = "2.84.0";
+  version = "2.85.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "oracle";
     repo = "oci-python-sdk";
     rev = "refs/tags/v${version}";
-    hash = "sha256-nG8bml9mTlKz48PhQjrLmAYYznb1qlrEI+XgvpM9zlk=";
+    hash = "sha256-NaVD7oWdKrUC0wjoFTbRg02tCFMlRyNIRHciTtyra7w=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/onnxruntime/default.nix b/pkgs/development/python-modules/onnxruntime/default.nix
new file mode 100644
index 0000000000000..af369b0d82d18
--- /dev/null
+++ b/pkgs/development/python-modules/onnxruntime/default.nix
@@ -0,0 +1,64 @@
+{ lib
+, buildPythonPackage
+, autoPatchelfHook
+, pythonRelaxDepsHook
+, onnxruntime
+, coloredlogs
+, numpy
+, packaging
+, oneDNN
+
+}:
+
+# onnxruntime requires an older protobuf.
+# Doing an override in protobuf in the python-packages set
+# can give you a functioning Python package but note not
+# all Python packages will be compatible then.
+#
+# Because protobuf is not always needed we remove it
+# as a runtime dependency from our wheel.
+#
+# We do include here the non-Python protobuf so the shared libs
+# link correctly. If you do also want to include the Python
+# protobuf, you can add it to your Python env, but be aware
+# the version likely mismatches with what is used here.
+
+buildPythonPackage {
+  inherit (onnxruntime) pname version;
+  format = "wheel";
+  src = onnxruntime.dist;
+
+  unpackPhase = ''
+    cp -r $src dist
+    chmod +w dist
+  '';
+
+  nativeBuildInputs = [
+    autoPatchelfHook
+    pythonRelaxDepsHook
+  ];
+
+  # This project requires fairly large dependencies such as sympy which we really don't always need.
+  pythonRemoveDeps = [
+    "flatbuffers"
+    "protobuf"
+    "sympy"
+  ];
+
+  # Libraries are not linked correctly.
+  buildInputs = [
+    oneDNN
+    onnxruntime.protobuf
+  ];
+
+  propagatedBuildInputs = [
+    coloredlogs
+    # flatbuffers
+    numpy
+    packaging
+    # protobuf
+    # sympy
+  ];
+
+  meta = onnxruntime.meta // { maintainers = with lib.maintainers; [ fridh ]; };
+}
diff --git a/pkgs/development/python-modules/openai/default.nix b/pkgs/development/python-modules/openai/default.nix
index 15d3b79e0bbc3..b6c539150ccd3 100644
--- a/pkgs/development/python-modules/openai/default.nix
+++ b/pkgs/development/python-modules/openai/default.nix
@@ -1,36 +1,35 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, pythonOlder
-
-# Python dependencies
+, matplotlib
 , numpy
 , openpyxl
 , pandas
 , pandas-stubs
+, plotly
+, pytest-mock
+, pytestCheckHook
+, pythonOlder
 , requests
 , scikit-learn
 , tenacity
 , tqdm
+, typing-extensions
 , wandb
-
-# Check dependencies
-, pytest-mock
-, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "openai";
-  version = "0.23.0";
+  version = "0.23.1";
+  format = "setuptools";
 
   disabled = pythonOlder "3.7.1";
 
-  # Use GitHub source since PyPi source does not include tests
   src = fetchFromGitHub {
     owner = "openai";
     repo = "openai-python";
     rev = "v${version}";
-    sha256 = "sha256-VH1XR2FocRX5AYpCruAKwQUXjXqvdJsVwKdtot5Bo+Y=";
+    hash = "sha256-4RdER6ecvHGXTLZ1GnBNI1hIETI8O/t+kuOXiQhMigs=";
   };
 
   propagatedBuildInputs = [
@@ -39,18 +38,40 @@ buildPythonPackage rec {
     pandas
     pandas-stubs
     requests
-    scikit-learn
-    tenacity
     tqdm
-    wandb
+    typing-extensions
+  ];
+
+  passthru.optional-dependencies = {
+    wandb = [
+      wandb
+    ];
+    embeddings = [
+      matplotlib
+      plotly
+      scikit-learn
+      tenacity
+    ];
+  };
+
+  pythonImportsCheck = [
+    "openai"
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+    pytest-mock
+  ];
+
+  pytestFlagsArray = [
+    "openai/tests"
   ];
 
-  pythonImportsCheck = [ "openai" ];
-  checkInputs = [ pytestCheckHook pytest-mock ];
-  pytestFlagsArray = [ "openai/tests" ];
   OPENAI_API_KEY = "sk-foo";
+
   disabledTestPaths = [
-    "openai/tests/test_endpoints.py" # requires a real API key
+    # Requires a real API key
+    "openai/tests/test_endpoints.py"
     "openai/tests/test_file_cli.py"
   ];
 
@@ -58,6 +79,6 @@ buildPythonPackage rec {
     description = "Python client library for the OpenAI API";
     homepage = "https://github.com/openai/openai-python";
     license = licenses.mit;
-    maintainers = [ maintainers.malo ];
+    maintainers = with maintainers; [ malo ];
   };
 }
diff --git a/pkgs/development/python-modules/pandas-stubs/default.nix b/pkgs/development/python-modules/pandas-stubs/default.nix
index c568476977690..a719f98e9d1d6 100644
--- a/pkgs/development/python-modules/pandas-stubs/default.nix
+++ b/pkgs/development/python-modules/pandas-stubs/default.nix
@@ -1,39 +1,116 @@
 { lib
 , buildPythonPackage
-, isPy27
 , fetchFromGitHub
+, jinja2
+, matplotlib
+, openpyxl
+, pandas
+, poetry-core
+, scipy
+, sqlalchemy
+, tabulate
+, pyarrow
+, pyreadstat
+, tables
+, pytestCheckHook
+, pythonOlder
+, types-pytz
 , typing-extensions
-, mypy
+, xarray
 }:
 
 buildPythonPackage rec {
   pname = "pandas-stubs";
-  version = "1.2.0.39";
+  version = "1.5.0.221003";
+  format = "pyproject";
 
-  disabled = isPy27;
+  disabled = pythonOlder "3.8";
 
-  # Use GitHub source since PyPi source does not include tests
   src = fetchFromGitHub {
-    owner = "VirtusLab";
+    owner = "pandas-dev";
     repo = pname;
-    rev = "2bd932777d1050ea8f86c527266a4cd205aa15b1";
-    sha256 = "m2McU53NNvRwnWKN9GL8dW1eCGKbTi0471szRQwZu1Q=";
+    rev = "v${version}";
+    sha256 = "sha256-RV0pOTPtlwBmYs3nu8+lNwVpl/VC/VzcXKOQMg9C3qk=";
   };
 
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
   propagatedBuildInputs = [
+    pandas
+    types-pytz
+  ];
+
+  checkInputs = [
+    jinja2
+    matplotlib
+    openpyxl
+    scipy
+    sqlalchemy
+    tabulate
+    pyarrow
+    tables
+    pyreadstat
+    pytestCheckHook
     typing-extensions
+    xarray
   ];
 
-  pythonImportsCheck = [ "pandas" ];
-  checkInputs = [ mypy ];
-  checkPhase = ''
-    mypy --config-file mypy.ini third_party/3/pandas tests/snippets
-  '';
+  disabledTests = [
+    # AttributeErrors, missing dependencies, error and warning checks
+    "test_data_error"
+    "test_specification_error"
+    "test_setting_with_copy_error"
+    "test_setting_with_copy_warning"
+    "test_numexpr_clobbering_error"
+    "test_undefined_variable_error"
+    "test_indexing_error"
+    "test_pyperclip_exception"
+    "test_css_warning"
+    "test_possible_data_loss_error"
+    "test_closed_file_error"
+    "test_incompatibility_warning"
+    "test_attribute_conflict_warning"
+    "test_database_error"
+    "test_possible_precision_loss"
+    "test_value_label_type_mismatch"
+    "test_invalid_column_name"
+    "test_categorical_conversion_warning"
+    "test_join"
+    "test_isetframe"
+    "test_reset_index_150_changes"
+    "test_compare_150_changes"
+    "test_quantile_150_changes"
+    "test_resample_150_changes"
+    "test_index_astype"
+    "test_orc"
+    "test_orc_path"
+    "test_orc_buffer"
+    "test_orc_columns"
+    "test_orc_bytes"
+    "test_clipboard"
+    "test_clipboard_iterator"
+    "test_arrow_dtype"
+    "test_aggregate_series_combinations"
+    "test_aggregate_frame_combinations"
+    "test_types_rank"
+    "test_reset_index"
+    "test_types_assert_series_equal"
+    "test_show_version"
+    "test_dummies"
+    "test_from_dummies_args"
+    "test_rolling_step_method"
+  ];
+
+  pythonImportsCheck = [
+    "pandas"
+  ];
 
   meta = with lib; {
     description = "Type annotations for Pandas";
     homepage = "https://github.com/VirtusLab/pandas-stubs";
     license = licenses.mit;
-    maintainers = [ maintainers.malo ];
+    maintainers = with maintainers; [ malo ];
   };
 }
diff --git a/pkgs/development/python-modules/panel/default.nix b/pkgs/development/python-modules/panel/default.nix
index 466f3e1e6dfa8..d59fb9bf3bcd8 100644
--- a/pkgs/development/python-modules/panel/default.nix
+++ b/pkgs/development/python-modules/panel/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "panel";
-  version = "0.13.1";
+  version = "0.14.0";
 
   format = "wheel";
 
@@ -23,7 +23,7 @@ buildPythonPackage rec {
   # tries to fetch even more artifacts
   src = fetchPypi {
     inherit pname version format;
-    hash = "sha256-1GC119AUfmse3fhQQxSi9eDJJorYvt2NeE7UY1GrW3E=";
+    hash = "sha256-3kZba0R9J978bvjsjRMLSTo7dOPd5Ml7VPkZqMQV2uY=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/patsy/default.nix b/pkgs/development/python-modules/patsy/default.nix
index 71bf10bb3c00b..0f607df1de0ce 100644
--- a/pkgs/development/python-modules/patsy/default.nix
+++ b/pkgs/development/python-modules/patsy/default.nix
@@ -9,11 +9,11 @@
 
 buildPythonPackage rec {
   pname = "patsy";
-  version = "0.5.2";
+  version = "0.5.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "5053de7804676aba62783dbb0f23a2b3d74e35e5bfa238b88b7cbf148a38b69d";
+    sha256 = "sha256-vcGAAYdeMZvJHIEsHrahC+S7E8uB63Y/RmF53KO2cnc=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pebble/default.nix b/pkgs/development/python-modules/pebble/default.nix
index 102907df46fa8..996d85b67d9fc 100644
--- a/pkgs/development/python-modules/pebble/default.nix
+++ b/pkgs/development/python-modules/pebble/default.nix
@@ -1,22 +1,34 @@
-{ lib, stdenv, buildPythonPackage, isPy27, fetchPypi, pytestCheckHook }:
+{ lib
+, stdenv
+, buildPythonPackage
+, fetchPypi
+, pytestCheckHook
+, pythonOlder
+}:
 
 buildPythonPackage rec {
   pname = "pebble";
-  version = "5.0.0";
-  disabled = isPy27;
+  version = "5.0.2";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     pname = "Pebble";
     inherit version;
-    sha256 = "sha256-rdKgfXHmZphfG9AkAkeH3XkPcfGi27n1+sA3y7NY4M4=";
+    hash = "sha256-nFjAPq+SDDEodETG/vOdxTuurJ3iIerRBPXJtI6L1Yc=";
   };
 
-  doCheck = !stdenv.isDarwin;
-
   checkInputs = [
     pytestCheckHook
   ];
 
+  doCheck = !stdenv.isDarwin;
+
+  pythonImportsCheck = [
+    "pebble"
+  ];
+
   meta = with lib; {
     description = "API to manage threads and processes within an application";
     homepage = "https://github.com/noxdafox/pebble";
diff --git a/pkgs/development/python-modules/pex/default.nix b/pkgs/development/python-modules/pex/default.nix
index c247aa51326c8..817bd4be1be76 100644
--- a/pkgs/development/python-modules/pex/default.nix
+++ b/pkgs/development/python-modules/pex/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "pex";
-  version = "2.1.106";
+  version = "2.1.109";
   format = "flit";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-pKDt+IWt3uKT4v/cyBhSO7/ptwDa0eVaQppK3nWUiKc=";
+    hash = "sha256-G9HcDLVvRB+OXmcp2SYp2rSUsbOcKjrN8KdUMQP8DKo=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/phonopy/default.nix b/pkgs/development/python-modules/phonopy/default.nix
index d8a56ab714f53..a4fbeb81e3657 100644
--- a/pkgs/development/python-modules/phonopy/default.nix
+++ b/pkgs/development/python-modules/phonopy/default.nix
@@ -8,15 +8,19 @@
 , scipy
 , spglib
 , pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "phonopy";
-  version = "2.16.2";
+  version = "2.16.3";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-tOTkI71BkqKgnX5HrzlPLVohSMtrSpHs9PzeuWQOVis=";
+    hash = "sha256-xTbTVRVmJvJuXV/RWLA+EMShPEYdagKiawXjtjEbnXk=";
   };
 
   propagatedBuildInputs = [
@@ -37,9 +41,13 @@ buildPythonPackage rec {
     rm -r phonopy
   '';
 
+  pythonImportsCheck = [
+    "phonopy"
+  ];
+
   meta = with lib; {
-    description = "A package for phonon calculations at harmonic and quasi-harmonic levels";
-    homepage = "https://atztogo.github.io/phonopy/";
+    description = "Modulefor phonon calculations at harmonic and quasi-harmonic levels";
+    homepage = "https://phonopy.github.io/phonopy/";
     license = licenses.bsd0;
     maintainers = with maintainers; [ psyanticy ];
   };
diff --git a/pkgs/development/python-modules/plugwise/default.nix b/pkgs/development/python-modules/plugwise/default.nix
index a011ae0faa77d..d65f3d1f7dcae 100644
--- a/pkgs/development/python-modules/plugwise/default.nix
+++ b/pkgs/development/python-modules/plugwise/default.nix
@@ -21,7 +21,7 @@
 
 buildPythonPackage rec {
   pname = "plugwise";
-  version = "0.23.0";
+  version = "0.24.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -30,7 +30,7 @@ buildPythonPackage rec {
     owner = pname;
     repo = "python-plugwise";
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-nLJLp5LnsluZe/pzLvycvjPmPYXGGobZaS5kI70CVa8=";
+    sha256 = "sha256-LUvhSk1iZSw1K6oMaIj5bSH0/f0vfQbprwAPe6vdf08=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/potentials/default.nix b/pkgs/development/python-modules/potentials/default.nix
index 9396a170ba1d8..e6b1d2b37e179 100644
--- a/pkgs/development/python-modules/potentials/default.nix
+++ b/pkgs/development/python-modules/potentials/default.nix
@@ -20,7 +20,7 @@
 }:
 
 buildPythonPackage rec {
-  version = "0.3.4";
+  version = "0.3.5";
   pname = "potentials";
   format = "setuptools";
 
@@ -28,7 +28,7 @@ buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-yBqU1FN2KlWE2Stg9OMdBLUfIQdbUGWCH4GU6r6HkDI=";
+    hash = "sha256-e2+Yrgpj6Cy76qzw9/NhDq9ogsNQAJcKi9kvY2fZE+k=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/psutil/default.nix b/pkgs/development/python-modules/psutil/default.nix
index 3815a64eec605..088541552ec2c 100644
--- a/pkgs/development/python-modules/psutil/default.nix
+++ b/pkgs/development/python-modules/psutil/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, buildPythonPackage, fetchPypi, isPy27, python
-, IOKit
+, CoreFoundation, IOKit
 , pytestCheckHook
 , mock
 , unittest2
@@ -41,7 +41,10 @@ buildPythonPackage rec {
     "cpu_freq"
   ];
 
-  buildInputs = lib.optionals stdenv.isDarwin [ IOKit ];
+  buildInputs =
+    # workaround for https://github.com/NixOS/nixpkgs/issues/146760
+    lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [ CoreFoundation ] ++
+    lib.optionals stdenv.isDarwin [ IOKit ];
 
   pythonImportsCheck = [ "psutil" ];
 
diff --git a/pkgs/development/python-modules/psycopg/default.nix b/pkgs/development/python-modules/psycopg/default.nix
index a2c4e8dcc897b..6d2bdc8691be8 100644
--- a/pkgs/development/python-modules/psycopg/default.nix
+++ b/pkgs/development/python-modules/psycopg/default.nix
@@ -32,13 +32,13 @@
 
 let
   pname = "psycopg";
-  version = "3.1.2";
+  version = "3.1.3";
 
   src = fetchFromGitHub {
     owner = "psycopg";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-44aJeefBpNcD+ns4WD8/G8NVsPKLQFJ72lhAJ4pP1g0=";
+    hash = "sha256-cAfFxUDgfI3KTlBU9wV/vQkPun4cR3se8eSIHHcEr4g=";
   };
 
   patches = [
diff --git a/pkgs/development/python-modules/pubnub/default.nix b/pkgs/development/python-modules/pubnub/default.nix
index c5c0b9fe4ec4d..bee8e83536321 100644
--- a/pkgs/development/python-modules/pubnub/default.nix
+++ b/pkgs/development/python-modules/pubnub/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "pubnub";
-  version = "7.0.0";
+  version = "7.0.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = pname;
     repo = "python";
     rev = "refs/tags/${version}";
-    hash = "sha256-+uW6fsYsn/3PGK4wTQLKcoq+NFNI8SjJ9cL6Q3Fh2uQ=";
+    hash = "sha256-rOpTPj9g9WKc8MLX4HqsZit7yvTtDqha7ImewW/tH7g=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pulumi-aws/default.nix b/pkgs/development/python-modules/pulumi-aws/default.nix
index 11b58e65d0eed..57de5cf3a1962 100644
--- a/pkgs/development/python-modules/pulumi-aws/default.nix
+++ b/pkgs/development/python-modules/pulumi-aws/default.nix
@@ -12,7 +12,7 @@
 buildPythonPackage rec {
   pname = "pulumi-aws";
   # Version is independant of pulumi's.
-  version = "5.16.0";
+  version = "5.16.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "pulumi";
     repo = "pulumi-aws";
     rev = "refs/tags/v${version}";
-    hash = "sha256-SyRSRcKCIIaoyLdWYfFERjRp3pyXHGn35WXMqjOe3DY=";
+    hash = "sha256-ta25THygR0zlberqelDRr/EwUwxSq2hZjtWW0RjOJnI=";
   };
 
   sourceRoot = "${src.name}/sdk/python";
diff --git a/pkgs/development/python-modules/pyatmo/default.nix b/pkgs/development/python-modules/pyatmo/default.nix
index 25d61641f2076..9d8f12bc410b6 100644
--- a/pkgs/development/python-modules/pyatmo/default.nix
+++ b/pkgs/development/python-modules/pyatmo/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "pyatmo";
-  version = "7.0.1";
+  version = "7.1.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "jabesq";
     repo = "pyatmo";
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-WrpRLAfViudC0n7AG5es2CM8XbZ0yJqXCY9yod9czb0=";
+    sha256 = "sha256-qFF2uhaaw2hz5jH/xeLiNlyvFgx17P+WmujnoF9qcqo=";
   };
 
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
diff --git a/pkgs/development/python-modules/pybind11/default.nix b/pkgs/development/python-modules/pybind11/default.nix
index 327a44690da31..241953cda3ed2 100644
--- a/pkgs/development/python-modules/pybind11/default.nix
+++ b/pkgs/development/python-modules/pybind11/default.nix
@@ -41,7 +41,7 @@ buildPythonPackage rec {
 
   postBuild = ''
     # build tests
-    make -j $NIX_BUILD_CORES -l $NIX_BUILD_CORES
+    make -j $NIX_BUILD_CORES
   '';
 
   postInstall = ''
diff --git a/pkgs/development/python-modules/pydaikin/default.nix b/pkgs/development/python-modules/pydaikin/default.nix
index adbb0d21a8c36..66608d7783ccd 100644
--- a/pkgs/development/python-modules/pydaikin/default.nix
+++ b/pkgs/development/python-modules/pydaikin/default.nix
@@ -12,14 +12,16 @@
 
 buildPythonPackage rec {
   pname = "pydaikin";
-  version = "2.7.0";
+  version = "2.7.2";
+  format = "setuptools";
+
   disabled = pythonOlder "3.6";
 
   src = fetchFromBitbucket {
     owner = "mustang51";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-k6NAQvt79Qo7sAXQwOjq4Coz2iTZAUImasc/oMSpmmg=";
+    hash = "sha256-IONmzrCW/5nAEa7GlWMZsnweQWTSUwV4HwhXww6/9ig=";
   };
 
   propagatedBuildInputs = [
@@ -28,17 +30,15 @@ buildPythonPackage rec {
     urllib3
   ];
 
-  # while they have tests, they do not run them in their CI and they fail as of 2.7.0
-  # AttributeError: 'DaikinBRP069' object has no attribute 'last_hour_cool_energy_consumption'
-  doCheck = false;
-
   checkInputs = [
     freezegun
     pytest-aiohttp
     pytestCheckHook
   ];
 
-  pythonImportsCheck = [ "pydaikin" ];
+  pythonImportsCheck = [
+    "pydaikin"
+  ];
 
   meta = with lib; {
     description = "Python Daikin HVAC appliances interface";
diff --git a/pkgs/development/python-modules/pydash/default.nix b/pkgs/development/python-modules/pydash/default.nix
index 08e7fe72acf41..57a0c6d1790ef 100644
--- a/pkgs/development/python-modules/pydash/default.nix
+++ b/pkgs/development/python-modules/pydash/default.nix
@@ -11,8 +11,8 @@
 
 buildPythonPackage rec {
   pname = "pydash";
-  version = "5.1.0";
-  format = "setuptools";
+  version = "5.1.1";
+  format = "pyproject";
 
   disabled = pythonOlder "3.6";
 
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "dgilland";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-BAyiSnILvujUOFOAkiXSgyozs2Q809pYihHwa+6BHcQ=";
+    hash = "sha256-VbuRzKwPMh5S4GZQYnh0sZOBi4LNFjMuol95tMC43b0=";
   };
 
   checkInputs = [
@@ -40,7 +40,6 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    broken = stdenv.isDarwin;
     description = "Python utility libraries for doing stuff in a functional way";
     homepage = "https://pydash.readthedocs.io";
     license = licenses.mit;
diff --git a/pkgs/development/python-modules/pydata-sphinx-theme/default.nix b/pkgs/development/python-modules/pydata-sphinx-theme/default.nix
index 9ab1da97a5723..70b047733d6a8 100644
--- a/pkgs/development/python-modules/pydata-sphinx-theme/default.nix
+++ b/pkgs/development/python-modules/pydata-sphinx-theme/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "pydata-sphinx-theme";
-  version = "0.10.1";
+  version = "0.11.0";
 
   format = "wheel";
 
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     dist = "py3";
     python = "py3";
     pname = "pydata_sphinx_theme";
-    sha256 = "sha256-RzH5N8f0L1Fukn1Svgo1ara5AWmK74MxsJfmxP2BAPQ=";
+    sha256 = "sha256-ZPH8THmh8Ga5E1QRFs1afoPhQLoOmDUJ7t2eZuH5SMg=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pydmd/default.nix b/pkgs/development/python-modules/pydmd/default.nix
index 92caf8a0fa0ec..f813cfb23214f 100644
--- a/pkgs/development/python-modules/pydmd/default.nix
+++ b/pkgs/development/python-modules/pydmd/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "pydmd";
-  version = "0.4.0.post2209";
+  version = "0.4.0.post2210";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "mathLab";
     repo = "PyDMD";
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-09KnVuBNe1aVjO1OW+rhVsHplSO4qBIayy//9Jv0fQM=";
+    sha256 = "sha256-2GSmd+OxdGW9XdLGL08Bnrz0WCtTAYQtYHf2gM5CFIE=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pyftpdlib/default.nix b/pkgs/development/python-modules/pyftpdlib/default.nix
index b3aa456c4a9db..b69b7acc99d4f 100644
--- a/pkgs/development/python-modules/pyftpdlib/default.nix
+++ b/pkgs/development/python-modules/pyftpdlib/default.nix
@@ -5,28 +5,48 @@
 , psutil
 , pyopenssl
 , pysendfile
+, pythonOlder
 }:
 
 buildPythonPackage rec {
-  version = "1.5.6";
   pname = "pyftpdlib";
+  version = "1.5.7";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0pnv2byzmzg84q5nmmhn1xafvfil85qa5y52bj455br93zc5b9px";
+    hash = "sha256-fqPOQTfbggmvH2ueoCBZD0YsY+18ehJAvVluTTp7ZW4=";
   };
 
-  checkInputs = [ mock psutil ];
-  propagatedBuildInputs = [ pyopenssl pysendfile ];
+  propagatedBuildInputs = [
+    pysendfile
+  ];
+
+  passthru.optional-dependencies = {
+    ssl = [
+      pyopenssl
+    ];
+  };
 
-  # impure filesystem-related tests cause timeouts
+  checkInputs = [
+    mock
+    psutil
+  ];
+
+  # Impure filesystem-related tests cause timeouts
   # on Hydra: https://hydra.nixos.org/build/84374861
   doCheck = false;
 
+  pythonImportsCheck = [
+    "pyftpdlib"
+  ];
+
   meta = with lib; {
+    description = "Asynchronous FTP server library";
     homepage = "https://github.com/giampaolo/pyftpdlib/";
-    description = "Very fast asynchronous FTP server library";
     license = licenses.mit;
-    maintainers = [ maintainers.costrouc ];
+    maintainers = with maintainers; [ costrouc ];
   };
 }
diff --git a/pkgs/development/python-modules/pygobject/default.nix b/pkgs/development/python-modules/pygobject/default.nix
index bf42d17b4debf..14acb15e03b57 100644
--- a/pkgs/development/python-modules/pygobject/default.nix
+++ b/pkgs/development/python-modules/pygobject/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, python, buildPythonPackage, pkg-config, glib, isPy3k, pythonAtLeast }:
+{ lib, stdenv, fetchurl, fetchpatch, python, buildPythonPackage, pkg-config, glib, isPy3k, pythonAtLeast }:
 
 buildPythonPackage rec {
   pname = "pygobject";
@@ -15,6 +15,11 @@ buildPythonPackage rec {
 
   patches = lib.optionals stdenv.isDarwin [
     ./pygobject-2.0-fix-darwin.patch
+    (fetchpatch {
+      url = "https://github.com/macports/macports-ports/raw/f2975d5bbbc2459c661905c5a850cc661fa32f55/python/py-gobject/files/py-gobject-dynamic_lookup-11.patch";
+      sha256 = "sha256-mtlyu+La3+iC5iQAmVJzDA5E35XGaRQy/EKXzvrWRCg=";
+      extraPrefix = "";
+    })
   ];
 
   configureFlags = [ "--disable-introspection" ];
diff --git a/pkgs/development/python-modules/pyhiveapi/default.nix b/pkgs/development/python-modules/pyhiveapi/default.nix
index bd85e0dfa73c8..b2035077fa0dc 100644
--- a/pkgs/development/python-modules/pyhiveapi/default.nix
+++ b/pkgs/development/python-modules/pyhiveapi/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "pyhiveapi";
-  version = "0.5.13";
+  version = "0.5.14";
 
   format = "pyproject";
 
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "Pyhass";
     repo = "Pyhiveapi";
     rev = "refs/tags/v${version}";
-    hash = "sha256-VuWP+yypQznirNcjvqbI3x+bWRiVIfO1NxG76Mdc37g=";
+    hash = "sha256-YBcVoffcM3nkVmuPKE6WR/1TqAiz6ePzCxcrntqCQkY=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/pyhumps/default.nix b/pkgs/development/python-modules/pyhumps/default.nix
index 70366adaa4068..87a9930ef3a28 100644
--- a/pkgs/development/python-modules/pyhumps/default.nix
+++ b/pkgs/development/python-modules/pyhumps/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , poetry-core
 , pytestCheckHook
 , pythonOlder
@@ -20,6 +21,14 @@ buildPythonPackage rec {
     hash = "sha256-7jkwf4qGQ+AD4/hOrEe/oAPY+gnSySUVBWFf70rU7xc=";
   };
 
+  patches = [
+    (fetchpatch {
+      # https://github.com/nficano/humps/pull/281
+      url = "https://github.com/nficano/humps/commit/e248c26195804fa04c43e88c5682528f367e27b3.patch";
+      hash = "sha256-+TCVfuMgfkDaS1tPu4q6PIOC3Kn1MBWyuoyAO6W0/h4=";
+    })
+  ];
+
   nativeBuildInputs = [
     poetry-core
   ];
diff --git a/pkgs/development/python-modules/pyipp/default.nix b/pkgs/development/python-modules/pyipp/default.nix
index dfef79a4dcae3..b9ab9b695bd23 100644
--- a/pkgs/development/python-modules/pyipp/default.nix
+++ b/pkgs/development/python-modules/pyipp/default.nix
@@ -1,28 +1,40 @@
 { lib
 , aiohttp
 , aresponses
+, awesomeversion
+, backoff
 , buildPythonPackage
 , deepmerge
 , fetchFromGitHub
+, poetry-core
 , pytest-asyncio
 , pytestCheckHook
-, pytest-cov
+, pythonOlder
 , yarl
 }:
 
 buildPythonPackage rec {
   pname = "pyipp";
-  version = "0.11.0";
+  version = "0.12.0";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.9";
 
   src = fetchFromGitHub {
    owner = "ctalkington";
    repo = "python-ipp";
    rev = version;
-   sha256 = "0ar3mkyfa9qi3av3885bvacpwlxh420if9ymdj8i4x06ymzc213d";
+   hash = "sha256-umlFGI0Y9cWF3N46yFztv0OlhLIzqhQF8e4quCmqn78=";
   };
 
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
   propagatedBuildInputs = [
     aiohttp
+    awesomeversion
+    backoff
     deepmerge
     yarl
   ];
@@ -30,11 +42,18 @@ buildPythonPackage rec {
   checkInputs = [
     aresponses
     pytest-asyncio
-    pytest-cov
     pytestCheckHook
   ];
 
-  pythonImportsCheck = [ "pyipp" ];
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace 'version = "0.0.0"' 'version = "${version}"' \
+      --replace " --cov" ""
+  '';
+
+  pythonImportsCheck = [
+    "pyipp"
+  ];
 
   meta = with lib; {
     description = "Asynchronous Python client for Internet Printing Protocol (IPP)";
diff --git a/pkgs/development/python-modules/pyjwt/default.nix b/pkgs/development/python-modules/pyjwt/default.nix
index 500f46b024088..a46a05ba9c23c 100644
--- a/pkgs/development/python-modules/pyjwt/default.nix
+++ b/pkgs/development/python-modules/pyjwt/default.nix
@@ -4,26 +4,46 @@
 , cryptography
 , pytestCheckHook
 , pythonOlder
+, sphinxHook
+, sphinx-rtd-theme
+, zope_interface
 }:
 
 buildPythonPackage rec {
   pname = "pyjwt";
-  version = "2.4.0";
-  disabled = pythonOlder "3.6";
+  version = "2.5.0";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     pname = "PyJWT";
     inherit version;
-    sha256 = "sha256-1CkIIIxpmzuXPL6wGpabpqlsgh7vscW/5MOQwB1nq7o=";
+    sha256 = "sha256-53q4lICQXYaZhEKsV4jzUzP6hfZQR6U0rcOO3zyI/Ds=";
   };
 
-  propagatedBuildInputs = [
+  postPatch = ''
+    sed -i '/types-cryptography/d' setup.cfg
+  '';
+
+  outputs = [
+    "out"
+    "doc"
+  ];
+
+  nativeBuildInputs = [
+    sphinxHook
+    sphinx-rtd-theme
+    zope_interface
+  ];
+
+  passthru.optional-dependencies.crypto = [
     cryptography
   ];
 
   checkInputs = [
     pytestCheckHook
-  ];
+  ] ++ (lib.flatten (lib.attrValues passthru.optional-dependencies));
 
   pythonImportsCheck = [ "jwt" ];
 
diff --git a/pkgs/development/python-modules/pylsp-mypy/default.nix b/pkgs/development/python-modules/pylsp-mypy/default.nix
index c9f263ad2b08f..718a64b28f0b0 100644
--- a/pkgs/development/python-modules/pylsp-mypy/default.nix
+++ b/pkgs/development/python-modules/pylsp-mypy/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "pylsp-mypy";
-  version = "0.6.2";
+  version = "0.6.3";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "Richardk2n";
     repo = "pylsp-mypy";
     rev = "refs/tags/${version}";
-    sha256 = "sha256-uOfNSdQ1ONybEiYXW6xDHfUH+0HY9bxDlBCNl3xHEn8=";
+    sha256 = "sha256-fZ2bPPjBK/H2jMI4S3EhvWJaNl4tK7HstxcHSAkoFW4=";
   };
 
   disabledTests = [
diff --git a/pkgs/development/python-modules/pymicrobot/default.nix b/pkgs/development/python-modules/pymicrobot/default.nix
index 5def66a11ef56..0923d8214c619 100644
--- a/pkgs/development/python-modules/pymicrobot/default.nix
+++ b/pkgs/development/python-modules/pymicrobot/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "pymicrobot";
-  version = "0.0.6";
+  version = "0.0.8";
   format = "setuptools";
 
   disabled = pythonOlder "3.9";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "PyMicroBot";
     inherit version;
-    hash = "sha256-BvxF/9bnA0oXCAXq1GXoR7AUnPF9hQLxmlOHxfYX+u8=";
+    hash = "sha256-I4EkiG39v0yJXOAR7lmaqedLf9zHQCcxLXQ0nTfYq70=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pymsteams/default.nix b/pkgs/development/python-modules/pymsteams/default.nix
index 0f452607518b1..45aecdb00b05b 100644
--- a/pkgs/development/python-modules/pymsteams/default.nix
+++ b/pkgs/development/python-modules/pymsteams/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "pymsteams";
-  version = "0.2.1";
+  version = "0.2.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "rveachkc";
     repo = pname;
     rev = version;
-    sha256 = "03lna3p8qkmsmaz2nzl76dnz6rci08wsybvr151zl8wwpjdj1sam";
+    sha256 = "sha256-H1AEjUnEK+seKsnFnHpn1/aHxXcbyz67NbzhlGDtbk4=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pynobo/default.nix b/pkgs/development/python-modules/pynobo/default.nix
index 83422d319132a..1fe4262df4ca4 100644
--- a/pkgs/development/python-modules/pynobo/default.nix
+++ b/pkgs/development/python-modules/pynobo/default.nix
@@ -1,26 +1,32 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "pynobo";
-  version = "1.4.0";
+  version = "1.5.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "echoromeo";
     repo = pname;
-    rev = "v${version}";
-    sha256 = "sha256-7OWCp09XxCZJMz0BJWKfGkkl8z4XpRS2sjowp/bnl0A=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-msJClYHljib8sATooI8q4irz6cC8hEgvcxLmmgatvwU=";
   };
 
   # Project has no tests
   doCheck = false;
 
-  pythonImportsCheck = [ "pynobo" ];
+  pythonImportsCheck = [
+    "pynobo"
+  ];
 
   meta = with lib; {
-    description = "Python 3 TCP/IP interface for Nobo Hub/Nobo Energy Control devices";
+    description = "Python TCP/IP interface for Nobo Hub/Nobo Energy Control devices";
     homepage = "https://github.com/echoromeo/pynobo";
     license = with licenses; [ gpl3Plus ];
     maintainers = with maintainers; [ fab ];
diff --git a/pkgs/development/python-modules/pyoctoprintapi/default.nix b/pkgs/development/python-modules/pyoctoprintapi/default.nix
index a61f38ebc8c24..da3ebac2c1e23 100644
--- a/pkgs/development/python-modules/pyoctoprintapi/default.nix
+++ b/pkgs/development/python-modules/pyoctoprintapi/default.nix
@@ -12,7 +12,7 @@
 
 let
   pname = "pyoctoprintapi";
-  version = "0.1.8";
+  version = "0.1.9";
 in
 buildPythonPackage {
   inherit pname version;
@@ -21,8 +21,8 @@ buildPythonPackage {
   src = fetchFromGitHub {
     owner = "rfleming71";
     repo = pname;
-    rev = "v${version}";
-    hash = "sha256-TeMgEwKVZd0gq8J0kYsg0/v6A2BVTOE0/VmyiyrjV5c=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-kZMTHw0S12aUn/DYQuyjQa48QtiwLGYyY4gYKA5063A=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pyoverkiz/default.nix b/pkgs/development/python-modules/pyoverkiz/default.nix
index 640cad81a5e6f..3eff843631027 100644
--- a/pkgs/development/python-modules/pyoverkiz/default.nix
+++ b/pkgs/development/python-modules/pyoverkiz/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "pyoverkiz";
-  version = "1.5.3";
+  version = "1.5.5";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -24,9 +24,14 @@ buildPythonPackage rec {
     owner = "iMicknl";
     repo = "python-overkiz-api";
     rev = "refs/tags/v${version}";
-    hash = "sha256-1PTlNW40lqg10c1wtAqwIvUwanDFgg81DIZNbfaHhXE=";
+    hash = "sha256-5HoCoVgq1pg+VxD324Fijosk2ln4sGE0oWpemFVAsfc=";
   };
 
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace 'pyhumps = "^3.0.2,!=3.7.3"' 'pyhumps = "^3.0.2"'
+  '';
+
   nativeBuildInputs = [
     poetry-core
   ];
@@ -45,11 +50,6 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  postPatch = ''
-    substituteInPlace pyproject.toml \
-      --replace 'backoff = "^1.10.0"' 'backoff = "*"'
-  '';
-
   pythonImportsCheck = [
     "pyoverkiz"
   ];
diff --git a/pkgs/development/python-modules/pypdf2/default.nix b/pkgs/development/python-modules/pypdf2/default.nix
index f66e6dddbbad8..3bee9f61780b4 100644
--- a/pkgs/development/python-modules/pypdf2/default.nix
+++ b/pkgs/development/python-modules/pypdf2/default.nix
@@ -9,11 +9,11 @@
 
 buildPythonPackage rec {
   pname = "PyPDF2";
-  version = "2.11.0";
+  version = "2.11.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-2IF2H2xjEJqFkJPJHckKFdAf816s3rkoCTYLliPiw8k=";
+    sha256 = "sha256-PHut1RLCFxHrF4nC6tv5YnkonA+URS7lSoZHO/vv1zI=";
   };
 
   LC_ALL = "en_US.UTF-8";
diff --git a/pkgs/development/python-modules/pyqt-builder/default.nix b/pkgs/development/python-modules/pyqt-builder/default.nix
index 5e87e700a55f6..1aef6e13d2c75 100644
--- a/pkgs/development/python-modules/pyqt-builder/default.nix
+++ b/pkgs/development/python-modules/pyqt-builder/default.nix
@@ -2,20 +2,14 @@
 
 buildPythonPackage rec {
   pname = "pyqt-builder";
-  version = "1.13.0";
+  version = "1.14.0";
 
   src = fetchPypi {
     pname = "PyQt-builder";
     inherit version;
-    sha256 = "sha256-SHdYDDjOtTIOEps4HQg7CoYBxoFm2LmXB/CPoKFonu8=";
+    sha256 = "sha256-Z1WTHG0viUBVPgM00QyTPOXMGLZEJelP2hrM9P93T1k=";
   };
 
-  patches = [
-    # use the sip-distinfo executable from PATH instead of trying to guess,
-    # we know it's the right one because it's the _only_ one
-    ./use-sip-distinfo-from-path.patch
-  ];
-
   propagatedBuildInputs = [ packaging sip ];
 
   pythonImportsCheck = [ "pyqtbuild" ];
@@ -27,6 +21,6 @@ buildPythonPackage rec {
     description = "PEP 517 compliant build system for PyQt";
     homepage = "https://pypi.org/project/PyQt-builder/";
     license = licenses.gpl3Only;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ nrdxp ];
   };
 }
diff --git a/pkgs/development/python-modules/pyqt/6.x.nix b/pkgs/development/python-modules/pyqt/6.x.nix
new file mode 100644
index 0000000000000..c2ef82a158c68
--- /dev/null
+++ b/pkgs/development/python-modules/pyqt/6.x.nix
@@ -0,0 +1,138 @@
+{ lib
+, buildPythonPackage
+, isPy27
+, fetchPypi
+, pkg-config
+, dbus
+, lndir
+, setuptools
+, dbus-python
+, sip
+, pyqt6-sip
+, pyqt-builder
+, qt6Packages
+, pythonOlder
+, withMultimedia ? true
+, withWebSockets ? true
+# FIXME: Once QtLocation is available for Qt6 enable this
+# https://bugreports.qt.io/browse/QTBUG-96795
+#, withLocation ? true
+# Not currently part of PyQt6
+#, withConnectivity ? true
+}:
+
+buildPythonPackage rec {
+  pname = "PyQt6";
+  version = "6.4.0";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-kTkkab4fSRkF+p54+k5AWaiathbd8uz9UlvB1lwmu5M=";
+  };
+
+  patches = [
+    # Fix some wrong assumptions by ./project.py
+    # TODO: figure out how to send this upstream
+    # FIXME: make a version for PyQt6?
+    # ./pyqt5-fix-dbus-mainloop-support.patch
+    # confirm license when installing via pyqt6_sip
+    ./pyqt5-confirm-license.patch
+  ];
+
+  # be more verbose
+  postPatch = ''
+    cat >> pyproject.toml <<EOF
+    [tool.sip.project]
+    verbose = true
+    EOF
+  '';
+
+  enableParallelBuilding = true;
+  # HACK: paralellize compilation of make calls within pyqt's setup.py
+  # pkgs/stdenv/generic/setup.sh doesn't set this for us because
+  # make gets called by python code and not its build phase
+  # format=pyproject means the pip-build-hook hook gets used to build this project
+  # pkgs/development/interpreters/python/hooks/pip-build-hook.sh
+  # does not use the enableParallelBuilding flag
+  postUnpack = ''
+    export MAKEFLAGS+=" -j$NIX_BUILD_CORES -l$NIX_BUILD_CORES"
+  '';
+
+  outputs = [ "out" "dev" ];
+
+  dontWrapQtApps = true;
+
+  nativeBuildInputs = with qt6Packages; [
+    pkg-config
+    lndir
+    sip
+    qtbase
+    qtsvg
+    qtdeclarative
+    qtwebchannel
+    qmake
+    qtquick3d
+    qtquicktimeline
+  ]
+  # ++ lib.optional withConnectivity qtconnectivity
+  ++ lib.optional withMultimedia qtmultimedia
+  ++ lib.optional withWebSockets qtwebsockets
+  # ++ lib.optional withLocation qtlocation
+  ;
+
+  buildInputs = with qt6Packages; [
+    dbus
+    qtbase
+    qtsvg
+    qtdeclarative
+    pyqt-builder
+    qtquick3d
+    qtquicktimeline
+  ]
+  # ++ lib.optional withConnectivity qtconnectivity
+  ++ lib.optional withWebSockets qtwebsockets
+  # ++ lib.optional withLocation qtlocation
+  ;
+
+  propagatedBuildInputs = [
+    dbus-python
+    pyqt6-sip
+    setuptools
+  ];
+
+  passthru = {
+    inherit sip pyqt6-sip;
+    multimediaEnabled = withMultimedia;
+    WebSocketsEnabled = withWebSockets;
+  };
+
+  dontConfigure = true;
+
+  # Checked using pythonImportsCheck, has no tests
+  doCheck = true;
+
+  pythonImportsCheck = [
+    "PyQt6"
+    "PyQt6.QtCore"
+    "PyQt6.QtQml"
+    "PyQt6.QtWidgets"
+    "PyQt6.QtGui"
+    "PyQt6.QtQuick"
+  ]
+  ++ lib.optional withWebSockets "PyQt6.QtWebSockets"
+  ++ lib.optional withMultimedia "PyQt6.QtMultimedia"
+  # ++ lib.optional withConnectivity "PyQt6.QtConnectivity"
+  # ++ lib.optional withLocation "PyQt6.QtPositioning"
+  ;
+
+  meta = with lib; {
+    description = "Python bindings for Qt6";
+    homepage = "https://riverbankcomputing.com/";
+    license = licenses.gpl3Only;
+    platforms = platforms.mesaPlatforms;
+    maintainers = with maintainers; [ LunNova ];
+  };
+}
diff --git a/pkgs/development/python-modules/pyqt/pyqt6-sip.nix b/pkgs/development/python-modules/pyqt/pyqt6-sip.nix
new file mode 100644
index 0000000000000..3518c9820a411
--- /dev/null
+++ b/pkgs/development/python-modules/pyqt/pyqt6-sip.nix
@@ -0,0 +1,28 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+}:
+
+buildPythonPackage rec {
+  pname = "pyqt6-sip";
+  version = "13.4.0";
+
+  src = fetchPypi {
+    pname = "PyQt6_sip";
+    inherit version;
+    sha256 = "sha256-bYej7lhy11EbdpV9aKMhCTUsrzt6QqAdnuIAMrNQ2Xk=";
+  };
+
+  # There is no test code and the check phase fails with:
+  # > error: could not create 'PyQt5/sip.cpython-38-x86_64-linux-gnu.so': No such file or directory
+  doCheck = false;
+  pythonImportsCheck = [ "PyQt6.sip" ];
+
+  meta = with lib; {
+    description = "Python bindings for Qt5";
+    homepage = "https://www.riverbankcomputing.com/software/sip/";
+    license = licenses.gpl3Only;
+    platforms = platforms.mesaPlatforms;
+    maintainers = with maintainers; [ LunNova ];
+  };
+}
diff --git a/pkgs/development/python-modules/pyqt6-webengine.nix b/pkgs/development/python-modules/pyqt6-webengine.nix
new file mode 100644
index 0000000000000..96fa057a47cae
--- /dev/null
+++ b/pkgs/development/python-modules/pyqt6-webengine.nix
@@ -0,0 +1,89 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pkg-config
+, lndir
+, sip
+, pyqt-builder
+, qt6Packages
+, pythonOlder
+, pyqt6
+, python
+}:
+
+buildPythonPackage rec {
+  pname = "PyQt6_WebEngine";
+  version = "6.4.0";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-THHBMIYKvNEeBMr7IuM5g/qaOu6DI8UZCbFaFwGCjiE=";
+  };
+
+  # fix include path and increase verbosity
+  postPatch = ''
+    sed -i \
+      '/\[tool.sip.project\]/a\
+      verbose = true\
+      sip-include-dirs = [\"${pyqt6}/${python.sitePackages}/PyQt6/bindings\"]' \
+      pyproject.toml
+  '';
+
+  enableParallelBuilding = true;
+  # HACK: paralellize compilation of make calls within pyqt's setup.py
+  # pkgs/stdenv/generic/setup.sh doesn't set this for us because
+  # make gets called by python code and not its build phase
+  # format=pyproject means the pip-build-hook hook gets used to build this project
+  # pkgs/development/interpreters/python/hooks/pip-build-hook.sh
+  # does not use the enableParallelBuilding flag
+  postUnpack = ''
+    export MAKEFLAGS+=" -j$NIX_BUILD_CORES -l$NIX_BUILD_CORES"
+  '';
+
+  outputs = [ "out" "dev" ];
+
+  dontWrapQtApps = true;
+
+  nativeBuildInputs = with qt6Packages; [
+    pkg-config
+    lndir
+    sip
+    qtwebengine
+    qmake
+    pyqt-builder
+  ];
+
+  buildInputs = with qt6Packages; [
+    qtwebengine
+  ];
+
+  propagatedBuildInputs = [
+    pyqt6
+  ];
+
+  passthru = {
+    inherit sip;
+  };
+
+  dontConfigure = true;
+
+  # Checked using pythonImportsCheck, has no tests
+  doCheck = true;
+
+  pythonImportsCheck = [
+    "PyQt6.QtWebEngineCore"
+    "PyQt6.QtWebEngineQuick"
+    "PyQt6.QtWebEngineWidgets"
+  ];
+
+  meta = with lib; {
+    description = "Python bindings for Qt6 WebEngine";
+    homepage = "https://riverbankcomputing.com/";
+    license = licenses.gpl3Only;
+    platforms = platforms.mesaPlatforms;
+    maintainers = with maintainers; [ LunNova nrdxp ];
+  };
+}
diff --git a/pkgs/development/python-modules/pyquil/default.nix b/pkgs/development/python-modules/pyquil/default.nix
index 71d73e9a29f5f..7fa842230f45d 100644
--- a/pkgs/development/python-modules/pyquil/default.nix
+++ b/pkgs/development/python-modules/pyquil/default.nix
@@ -14,15 +14,17 @@
 , pytestCheckHook
 , pythonOlder
 , qcs-api-client
-, retry
 , respx
+, retry
 , rpcq
 , scipy
+, types-python-dateutil
+, types-retry
 }:
 
 buildPythonPackage rec {
   pname = "pyquil";
-  version = "3.3.1";
+  version = "3.3.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -31,7 +33,7 @@ buildPythonPackage rec {
     owner = "rigetti";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-eBEv0rpM0IOaMHWjXDgF0yFK+NNr49cI8fxVi0sfbXs=";
+    hash = "sha256-Ur7dRxmnaAWXHk7c6NC3lBw59RRgh9vwAHFW00fViD4=";
   };
 
   nativeBuildInputs = [
@@ -46,6 +48,8 @@ buildPythonPackage rec {
     retry
     rpcq
     scipy
+    types-python-dateutil
+    types-retry
   ] ++ lib.optionals (pythonOlder "3.8") [
     importlib-metadata
   ];
diff --git a/pkgs/development/python-modules/pyrdfa3/default.nix b/pkgs/development/python-modules/pyrdfa3/default.nix
new file mode 100644
index 0000000000000..97768e7fed507
--- /dev/null
+++ b/pkgs/development/python-modules/pyrdfa3/default.nix
@@ -0,0 +1,42 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, isPy27
+, rdflib
+, html5lib
+}:
+
+buildPythonPackage rec {
+  pname = "pyrdfa3";
+  version = "3.5.3";
+  disabled = isPy27;
+
+  src = fetchPypi {
+    inherit version;
+    pname = "pyRdfa3";
+    sha256 = "sha256-FXZjqSuH3zRbb2m94jXf9feXiRYI4S/h5PqNrWhxMa4=";
+  };
+
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "'html = pyRdfa.rdflibparsers:StructuredDataParser'" "'html = pyRdfa.rdflibparsers:StructuredDataParser'," \
+      --replace "'hturtle = pyRdfa.rdflibparsers:HTurtleParser'" "'hturtle = pyRdfa.rdflibparsers:HTurtleParser',"
+  '';
+
+  propagatedBuildInputs = [
+    rdflib
+    html5lib
+  ];
+
+  # Does not work with python3
+  doCheck = false;
+
+  pythonImportsCheck = [ "pyRdfa" ];
+
+  meta = with lib; {
+    description = "RDFa 1.1 distiller/parser library";
+    homepage = "https://www.w3.org/2012/pyRdfa/";
+    license = licenses.w3c;
+    maintainers = with maintainers; [ ambroisie ];
+  };
+}
diff --git a/pkgs/development/python-modules/pyreadstat/default.nix b/pkgs/development/python-modules/pyreadstat/default.nix
new file mode 100644
index 0000000000000..4992d260471c4
--- /dev/null
+++ b/pkgs/development/python-modules/pyreadstat/default.nix
@@ -0,0 +1,61 @@
+{ lib
+, buildPythonPackage
+, cython
+, fetchFromGitHub
+, pandas
+, python
+, pythonOlder
+, readstat
+, zlib
+}:
+
+buildPythonPackage rec {
+  pname = "pyreadstat";
+  version = "1.1.9";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "Roche";
+    repo = "pyreadstat";
+    rev = "v${version}";
+    hash = "sha256-OtvAvZTmcBTGfgp3Ddp9JJuZegr1o6c7rTMOuLwJSpk=";
+  };
+
+  nativeBuildInputs = [
+    cython
+  ];
+
+  buildInputs = [
+    zlib
+  ];
+
+  propagatedBuildInputs = [
+    readstat
+    pandas
+  ];
+
+  pythonImportsCheck = [
+    "pyreadstat"
+  ];
+
+  preCheck = ''
+    export HOME=$(mktemp -d);
+  '';
+
+  checkPhase = ''
+    runHook preCheck
+
+    ${python.interpreter} tests/test_basic.py
+
+    runHook postCheck
+  '';
+
+  meta = with lib; {
+    description = "Python package to read SAS, SPSS and Stata files into pandas data frames using the readstat C library";
+    homepage = "https://github.com/Roche/pyreadstat";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ swflint ];
+  };
+}
diff --git a/pkgs/development/python-modules/pysdl2/PySDL2-dll.patch b/pkgs/development/python-modules/pysdl2/PySDL2-dll.patch
index 37b318ebb7c76..9b8374a0f0516 100644
--- a/pkgs/development/python-modules/pysdl2/PySDL2-dll.patch
+++ b/pkgs/development/python-modules/pysdl2/PySDL2-dll.patch
@@ -1,8 +1,8 @@
 diff --git a/sdl2/dll.py b/sdl2/dll.py
-index 6e30259..12e1f7d 100644
+index 2413329..f460bf6 100644
 --- a/sdl2/dll.py
 +++ b/sdl2/dll.py
-@@ -145,7 +145,7 @@ class DLL(object):
+@@ -235,7 +235,7 @@ class DLL(object):
      """Function wrapper around the different DLL functions. Do not use or
      instantiate this one directly from your user code.
      """
@@ -11,49 +11,31 @@ index 6e30259..12e1f7d 100644
          self._dll = None
          self._deps = None
          self._libname = libinfo
-@@ -157,11 +157,12 @@ class DLL(object):
-             "SDL2_image": 2001,
-             "SDL2_gfx": 1003
+@@ -247,11 +247,7 @@ class DLL(object):
+             "SDL2_image": (2, 0, 1),
+             "SDL2_gfx": (1, 0, 3)
          }
 -        foundlibs = _findlib(libnames, path)
 -        dllmsg = "PYSDL2_DLL_PATH: %s" % (os.getenv("PYSDL2_DLL_PATH") or "unset")
 -        if len(foundlibs) == 0:
 -            raise RuntimeError("could not find any library for %s (%s)" %
 -                               (libinfo, dllmsg))
-+        #foundlibs = _findlib(libnames, path)
-+        #dllmsg = "PYSDL2_DLL_PATH: %s" % (os.getenv("PYSDL2_DLL_PATH") or "unset")
-+        #if len(foundlibs) == 0:
-+        #    raise RuntimeError("could not find any library for %s (%s)" %
-+        #                       (libinfo, dllmsg))
 +        foundlibs = [ libfile ]
          for libfile in foundlibs:
              try:
                  self._dll = CDLL(libfile)
-@@ -185,19 +186,19 @@ class DLL(object):
+@@ -276,9 +272,6 @@ class DLL(object):
                                 (foundlibs, libinfo))
          if _using_ms_store_python():
              self._deps = _preload_deps(libinfo, self._libfile)
 -        if path is not None and sys.platform in ("win32",) and \
 -            path in self._libfile:
 -            os.environ["PATH"] = "%s;%s" % (path, os.environ["PATH"])
-+        #if path is not None and sys.platform in ("win32",) and \
-+        #    path in self._libfile:
-+        #    os.environ["PATH"] = "%s;%s" % (path, os.environ["PATH"])
  
      def bind_function(self, funcname, args=None, returns=None, added=None):
          """Binds the passed argument and return value types to the specified
-         function. If the version of the loaded library is older than the
-         version where the function was added, an informative exception will
-         be raised if the bound function is called.
-         
-         Args:
-             funcname (str): The name of the function to bind.
-             args (List or None, optional): The data types of the C function's 
-                 arguments. Should be 'None' if function takes no arguments.
-             returns (optional): The return type of the bound C function. Should
-                 be 'None' if function returns 'void'.
-@@ -288,7 +289,7 @@ def nullfunc(*args):
-     return
+@@ -359,7 +352,7 @@ class DLL(object):
+ # Once the DLL class is defined, try loading the main SDL2 library
  
  try:
 -    dll = DLL("SDL2", ["SDL2", "SDL2-2.0", "SDL2-2.0.0"], os.getenv("PYSDL2_DLL_PATH"))
@@ -62,10 +44,10 @@ index 6e30259..12e1f7d 100644
      raise ImportError(exc)
  
 diff --git a/sdl2/sdlgfx.py b/sdl2/sdlgfx.py
-index 090752e..a8a7488 100644
+index 015eeaf..d6ce52f 100644
 --- a/sdl2/sdlgfx.py
 +++ b/sdl2/sdlgfx.py
-@@ -50,8 +50,7 @@ __all__ = [
+@@ -27,8 +27,7 @@ __all__ = [
  
  
  try:
@@ -76,32 +58,25 @@ index 090752e..a8a7488 100644
      raise ImportError(exc)
  
 diff --git a/sdl2/sdlimage.py b/sdl2/sdlimage.py
-index a6884e8..95d96df 100644
+index a702136..dcdea51 100644
 --- a/sdl2/sdlimage.py
 +++ b/sdl2/sdlimage.py
-@@ -32,15 +32,14 @@ __all__ = [
-     "IMG_LoadXCF_RW", "IMG_LoadWEBP_RW", "IMG_LoadXPM_RW",
-     "IMG_LoadXV_RW", "IMG_ReadXPMFromArray",
-     "IMG_GetError", "IMG_SetError", "IMG_SaveJPG", "IMG_SaveJPG_RW",
--    
-+
-     # Python Functions
-     "get_dll_file"
- ]
+@@ -30,9 +30,7 @@ __all__ = [
  
  
  try:
--    dll = DLL("SDL2_image", ["SDL2_image", "SDL2_image-2.0"],
--              os.getenv("PYSDL2_DLL_PATH"))
+-    dll = DLL(
+-        "SDL2_image", ["SDL2_image", "SDL2_image-2.0"], os.getenv("PYSDL2_DLL_PATH")
+-    )
 +    dll = DLL("SDL2_image", "@sdl2_image@")
  except RuntimeError as exc:
      raise ImportError(exc)
  
 diff --git a/sdl2/sdlmixer.py b/sdl2/sdlmixer.py
-index 9ad9b85..1c36289 100644
+index 5f2163c..23d95b0 100644
 --- a/sdl2/sdlmixer.py
 +++ b/sdl2/sdlmixer.py
-@@ -76,8 +76,7 @@ __all__ = [
+@@ -50,8 +50,7 @@ __all__ = [
  ]
  
  try:
@@ -112,10 +87,10 @@ index 9ad9b85..1c36289 100644
      raise ImportError(exc)
  
 diff --git a/sdl2/sdlttf.py b/sdl2/sdlttf.py
-index 9c2d951..bd5a16a 100644
+index 7c5f7db..61814cd 100644
 --- a/sdl2/sdlttf.py
 +++ b/sdl2/sdlttf.py
-@@ -54,8 +54,7 @@ __all__ = [
+@@ -41,8 +41,7 @@ __all__ = [
  
  
  try:
diff --git a/pkgs/development/python-modules/pysdl2/default.nix b/pkgs/development/python-modules/pysdl2/default.nix
index f5d76eda9b94f..04a59fa5df903 100644
--- a/pkgs/development/python-modules/pysdl2/default.nix
+++ b/pkgs/development/python-modules/pysdl2/default.nix
@@ -3,11 +3,13 @@
 buildPythonPackage rec {
   pname = "PySDL2";
   version = "0.9.14";
+
   # The tests use OpenGL using find_library, which would have to be
   # patched; also they seem to actually open X windows and test stuff
   # like "screensaver disabling", which would have to be cleverly
   # sandboxed. Disable for now.
   doCheck = false;
+  pythonImportsCheck = [ "sdl2" ];
 
   src = fetchPypi {
     inherit pname version;
diff --git a/pkgs/development/python-modules/pysigma/default.nix b/pkgs/development/python-modules/pysigma/default.nix
index 2b63614b1df41..82fde07aef484 100644
--- a/pkgs/development/python-modules/pysigma/default.nix
+++ b/pkgs/development/python-modules/pysigma/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "pysigma";
-  version = "0.8.2";
+  version = "0.8.9";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "SigmaHQ";
     repo = "pySigma";
     rev = "refs/tags/v${version}";
-    hash = "sha256-3XzY3p9tYQX39uM/LUcz9XpKrQ4+XofGSPl9gHwrDog=";
+    hash = "sha256-SXZ6bo1b5xhVGSlWr51ZCxT0Ov1g/qd8V43P5KEhY+s=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pysnmplib/default.nix b/pkgs/development/python-modules/pysnmplib/default.nix
index 2f7b73732cd50..642d0a9b69d74 100644
--- a/pkgs/development/python-modules/pysnmplib/default.nix
+++ b/pkgs/development/python-modules/pysnmplib/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "pysnmplib";
-  version = "5.0.18";
+  version = "5.0.19";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "pysnmp";
     repo = "pysnmp";
     rev = "refs/tags/v${version}";
-    hash = "sha256-sruZWwvcpAACRPXAN+WKFsdOr9EXo4Ipu8H5I22iuRg=";
+    hash = "sha256-xplQ12LLtTsU1AfEmWDwpbTK9NBxoLIfpF/QzA8Xot0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pyswitchbot/default.nix b/pkgs/development/python-modules/pyswitchbot/default.nix
index 497b516a66363..ec7758f664b86 100644
--- a/pkgs/development/python-modules/pyswitchbot/default.nix
+++ b/pkgs/development/python-modules/pyswitchbot/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "pyswitchbot";
-  version = "0.19.8";
+  version = "0.19.15";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "Danielhiversen";
     repo = "pySwitchbot";
     rev = "refs/tags/${version}";
-    hash = "sha256-1vzHd6ouWZrc951a5s0OsjeMbEluP/kS7LDiZ3YOUqk=";
+    hash = "sha256-iWd67JEnlI60mvd5hhMPRooZ3VECTt+M9UFvXWdJVPg=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pytest-subprocess/default.nix b/pkgs/development/python-modules/pytest-subprocess/default.nix
index cc890096f796c..7dc1bd9d08e93 100644
--- a/pkgs/development/python-modules/pytest-subprocess/default.nix
+++ b/pkgs/development/python-modules/pytest-subprocess/default.nix
@@ -13,15 +13,15 @@
 
 buildPythonPackage rec {
   pname = "pytest-subprocess";
-  version = "1.4.1";
+  version = "1.4.2";
 
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "aklajnert";
     repo = "pytest-subprocess";
-    rev = version;
-    hash = "sha256-xNkOXBCQ4AH/JVmxFzI3VSouA6jkCbUom7AdckfjGiE=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-8Of3/RltijfF5MXtVazGzIqpmRIhreT26kLNjzXLF1k=";
   };
 
   buildInputs = [
diff --git a/pkgs/development/python-modules/pytibber/default.nix b/pkgs/development/python-modules/pytibber/default.nix
index 370510ff7d07b..caf8496549779 100644
--- a/pkgs/development/python-modules/pytibber/default.nix
+++ b/pkgs/development/python-modules/pytibber/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "pytibber";
-  version = "0.25.2";
+  version = "0.25.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.9";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "Danielhiversen";
     repo = "pyTibber";
     rev = "refs/tags/${version}";
-    hash = "sha256-gR2AAI/ZQ7TX48QsTCwv8qZJOGb978nWLP2+cY9XcI8=";
+    hash = "sha256-QpKPGAksaKfdLpiBn4fbVxTsoBUd8S6loSKF+EE443g=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pytrafikverket/default.nix b/pkgs/development/python-modules/pytrafikverket/default.nix
index 660a6a70bfc59..65ddd8fd8b04e 100644
--- a/pkgs/development/python-modules/pytrafikverket/default.nix
+++ b/pkgs/development/python-modules/pytrafikverket/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "pytrafikverket";
-  version = "0.2.0.1";
+  version = "0.2.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-RsB8b96aCIBM3aABOuuexB5fIo7H1Kq/XsGvV8b7/sA=";
+    hash = "sha256-LBOq1AvJrRmyWIe2w4dQbWvlRAJN6s2/lsJRI2LZK2o=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pyupgrade/default.nix b/pkgs/development/python-modules/pyupgrade/default.nix
index 9bb458151a834..634bb0a6a5014 100644
--- a/pkgs/development/python-modules/pyupgrade/default.nix
+++ b/pkgs/development/python-modules/pyupgrade/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "pyupgrade";
-  version = "2.38.1";
+  version = "3.0.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "asottile";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-OWV8SdxvAYxkBj/3pPXgnEZ5RS3R+wBWJVMkqcQirEU=";
+    sha256 = "sha256-x85bu0dnhYwQU1l7mPH6lr9p6aO7AHG0wLvI/6MYe88=";
   };
 
   checkInputs = [
diff --git a/pkgs/development/python-modules/pyvex/default.nix b/pkgs/development/python-modules/pyvex/default.nix
index 0328328b825fe..eb91d68069c42 100644
--- a/pkgs/development/python-modules/pyvex/default.nix
+++ b/pkgs/development/python-modules/pyvex/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "pyvex";
-  version = "9.2.20";
+  version = "9.2.21";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-qMWJk+vq8JyHjkEScpnlfRG7NzmyH6VyoZLNMAz6BWI=";
+    hash = "sha256-uMUK8bnRaig71mdAmTc9rUu4zZnSgbAFZkv2o3hj6G0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/qcs-api-client/default.nix b/pkgs/development/python-modules/qcs-api-client/default.nix
index 925d2e014a03d..22e29ce3a762c 100644
--- a/pkgs/development/python-modules/qcs-api-client/default.nix
+++ b/pkgs/development/python-modules/qcs-api-client/default.nix
@@ -20,7 +20,7 @@
 
 buildPythonPackage rec {
   pname = "qcs-api-client";
-  version = "0.21.1";
+  version = "0.21.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -29,7 +29,7 @@ buildPythonPackage rec {
     owner = "rigetti";
     repo = "qcs-api-client-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-Fhu2XtreilkxwUZPmr79jFsNoajpLs0AzTMc7BaiduA=";
+    hash = "sha256-gQow1bNRPhUm4zRu2T5FpcgOTcS2F1TQIz8WP1K0Xww=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/recipe-scrapers/default.nix b/pkgs/development/python-modules/recipe-scrapers/default.nix
new file mode 100644
index 0000000000000..897a8239f0fa6
--- /dev/null
+++ b/pkgs/development/python-modules/recipe-scrapers/default.nix
@@ -0,0 +1,50 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, beautifulsoup4
+, extruct
+, language-tags
+, regex
+, requests
+, pytestCheckHook
+, responses
+}:
+
+buildPythonPackage rec {
+  pname = "recipe-scrapers";
+  version = "14.14.0";
+
+  src = fetchFromGitHub {
+    owner = "hhursev";
+    repo = "recipe-scrapers";
+    rev = version;
+    sha256 = "sha256-3qrjNd1jX4JP3qG9YX8MQqwPh8cvfkZa1tEk0uCwego=";
+  };
+
+  propagatedBuildInputs = [
+    beautifulsoup4
+    extruct
+    language-tags
+    regex
+    requests
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+    responses
+  ];
+
+  disabledTestPaths = [
+    # This is not actual code, just some pre-written boiler-plate template
+    "templates/test_scraper.py"
+  ];
+
+  pythonImportsCheck = [ "recipe_scrapers" ];
+
+  meta = with lib; {
+    description = "Python package for scraping recipes data ";
+    homepage = "https://github.com/hhursev/recipe-scrapers";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ambroisie ];
+  };
+}
diff --git a/pkgs/development/python-modules/rns/default.nix b/pkgs/development/python-modules/rns/default.nix
index c2c727f7f8db1..b0d16afd5c280 100644
--- a/pkgs/development/python-modules/rns/default.nix
+++ b/pkgs/development/python-modules/rns/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "rns";
-  version = "0.3.12";
+  version = "0.3.14";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "markqvist";
     repo = "Reticulum";
     rev = "refs/tags/${version}";
-    hash = "sha256-2GTMpIYDbvwAuRVOEW1Tp8idelHAV5SkAyGBj2yh1OQ=";
+    hash = "sha256-W5zQiGzuBHzEebVZjnVUO7Htx2/hnpeBHWoBfeXuaOQ=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/rst2pdf/default.nix b/pkgs/development/python-modules/rst2pdf/default.nix
new file mode 100644
index 0000000000000..2a276c1aab7cb
--- /dev/null
+++ b/pkgs/development/python-modules/rst2pdf/default.nix
@@ -0,0 +1,72 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, setuptools
+, docutils
+, importlib-metadata
+, jinja2
+, packaging
+, pygments
+, pyyaml
+, reportlab
+, smartypants
+, pillow
+, pytestCheckHook
+, pymupdf
+, sphinx
+}:
+
+buildPythonPackage rec {
+  pname = "rst2pdf";
+  version = "0.99";
+
+  format = "pyproject";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "8fa23fa93bddd1f52d058ceaeab6582c145546d80f2f8a95974f3703bd6c8152";
+  };
+
+  outputs = [ "out" "man" ];
+
+  nativeBuildInputs = [
+    setuptools
+  ];
+
+  propagatedBuildInputs = [
+    docutils
+    importlib-metadata
+    jinja2
+    packaging
+    pygments
+    pyyaml
+    reportlab
+    smartypants
+    pillow
+  ];
+
+  pythonImportsCheck = [
+    "rst2pdf"
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+    pymupdf
+    sphinx
+  ];
+
+  # Test suite fails: https://github.com/rst2pdf/rst2pdf/issues/1067
+  doCheck = false;
+
+  postInstall = ''
+    mkdir -p $man/share/man/man1/
+    ${docutils}/bin/rst2man.py doc/rst2pdf.rst $man/share/man/man1/rst2pdf.1
+  '';
+
+  meta = with lib; {
+    description = "Convert reStructured Text to PDF via ReportLab";
+    homepage = "https://rst2pdf.org/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ marsam ];
+  };
+}
diff --git a/pkgs/development/python-modules/safety/default.nix b/pkgs/development/python-modules/safety/default.nix
index 1f777501bee1e..20f0beecb70f4 100644
--- a/pkgs/development/python-modules/safety/default.nix
+++ b/pkgs/development/python-modules/safety/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "safety";
-  version = "2.2.0";
+  version = "2.2.1";
 
   disabled = pythonOlder "3.6";
 
@@ -21,7 +21,7 @@ buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Z0XeEqy9YKWAAf5my1QDVRh9e5kbMBBNnvFP9OSCYHM=";
+    hash = "sha256-2LSMRqxmKLuDRBt93cR1bP4lgqvhOhEu5uTvGjSq0DI=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/sensor-state-data/default.nix b/pkgs/development/python-modules/sensor-state-data/default.nix
index fe6b2be16ea6a..ea26d5b86f210 100644
--- a/pkgs/development/python-modules/sensor-state-data/default.nix
+++ b/pkgs/development/python-modules/sensor-state-data/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "sensor-state-data";
-  version = "2.9.0";
+  version = "2.9.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "Bluetooth-Devices";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-g5h+ZBQyosnt+hlbJF1DaX0HKTJoEtJ/JSGpto5ZXLs=";
+    hash = "sha256-bBLBDdwVUCh8VA/6w/5DmJNvayaWHNIe1kRhnOQ2Llc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/sentry-sdk/default.nix b/pkgs/development/python-modules/sentry-sdk/default.nix
index 70635de5e4f78..cd052afdacb36 100644
--- a/pkgs/development/python-modules/sentry-sdk/default.nix
+++ b/pkgs/development/python-modules/sentry-sdk/default.nix
@@ -46,7 +46,7 @@
 
 buildPythonPackage rec {
   pname = "sentry-sdk";
-  version = "1.9.9";
+  version = "1.9.10";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -55,7 +55,7 @@ buildPythonPackage rec {
     owner = "getsentry";
     repo = "sentry-python";
     rev = version;
-    hash = "sha256-DIiShIiTHmJdOtf1WYi4ofJdZnsg13VczVvGW+ngE+I=";
+    hash = "sha256-ZrteALD+HsqUwkFDPih8adxNP5TO5JqdPFI8oMBphY4=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/setuptools-rust/default.nix b/pkgs/development/python-modules/setuptools-rust/default.nix
index 0afa482960c6a..1ad0095e0096a 100644
--- a/pkgs/development/python-modules/setuptools-rust/default.nix
+++ b/pkgs/development/python-modules/setuptools-rust/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "setuptools-rust";
-  version = "1.5.1";
+  version = "1.5.2";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-DgXkVmRdWUKcsQITcK7ec8B2DpNgu/2q77W87VMOudc=";
+    sha256 = "sha256-2NrMsU3A6uG2tus+zveWdb03tAZTafecNTk91cVWUsc=";
   };
 
   nativeBuildInputs = [ setuptools-scm ];
diff --git a/pkgs/development/python-modules/shap/default.nix b/pkgs/development/python-modules/shap/default.nix
index 3041a7d92a74f..661c6622195fc 100644
--- a/pkgs/development/python-modules/shap/default.nix
+++ b/pkgs/development/python-modules/shap/default.nix
@@ -1,17 +1,27 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, writeText
 , isPy27
 , pytestCheckHook
+, pytest-mpl
 , numpy
 , scipy
 , scikit-learn
 , pandas
+, transformers
+, opencv4
+, lightgbm
+, catboost
+, pyspark
+, sentencepiece
 , tqdm
 , slicer
 , numba
 , matplotlib
 , nose
+, lime
+, cloudpickle
 , ipython
 }:
 
@@ -35,29 +45,102 @@ buildPythonPackage rec {
     tqdm
     slicer
     numba
+    cloudpickle
   ];
 
-  preCheck = ''
+  passthru.optional-dependencies = {
+    plots = [ matplotlib ipython ];
+    others = [ lime ];
+  };
+
+  preCheck = let
+    # This pytest hook mocks and catches attempts at accessing the network
+    # tests that try to access the network will raise, get caught, be marked as skipped and tagged as xfailed.
+    conftestSkipNetworkErrors = writeText "conftest.py" ''
+      from _pytest.runner import pytest_runtest_makereport as orig_pytest_runtest_makereport
+      import urllib, requests
+
+      class NetworkAccessDeniedError(RuntimeError): pass
+      def deny_network_access(*a, **kw):
+        raise NetworkAccessDeniedError
+
+      requests.head = deny_network_access
+      requests.get  = deny_network_access
+      urllib.request.urlopen = deny_network_access
+      urllib.request.Request = deny_network_access
+
+      def pytest_runtest_makereport(item, call):
+        tr = orig_pytest_runtest_makereport(item, call)
+        if call.excinfo is not None and call.excinfo.type is NetworkAccessDeniedError:
+            tr.outcome = 'skipped'
+            tr.wasxfail = "reason: Requires network access."
+        return tr
+    '';
+  in ''
     export HOME=$TMPDIR
     # when importing the local copy the extension is not found
     rm -r shap
+
+    # coverage testing is a waste considering how much we have to skip
+    substituteInPlace pytest.ini \
+      --replace "--cov=shap --cov-report=term-missing" ""
+
+    # Add pytest hook skipping tests that access network.
+    # These tests are marked as "Expected fail" (xfail)
+    cat ${conftestSkipNetworkErrors} >> tests/conftest.py
   '';
-  checkInputs = [ pytestCheckHook matplotlib nose ipython ];
-  # Those tests access the network
+  checkInputs = [
+    pytestCheckHook
+    pytest-mpl
+    matplotlib
+    nose
+    ipython
+    # optional dependencies, which only serve to enable more tests:
+    opencv4
+    #pytorch # we already skip all its tests due to slowness, adding it does nothing
+    transformers
+    #xgboost # numerically unstable? xgboost tests randomly fails pending on nixpkgs revision
+    lightgbm
+    catboost
+    pyspark
+    sentencepiece
+  ];
+  disabledTestPaths = [
+    # takes forever without GPU acceleration
+    "tests/explainers/test_deep.py"
+    "tests/explainers/test_gradient.py"
+    # requires GPU. We skip here instead of having pytest repeatedly check for GPU
+    "tests/explainers/test_gpu_tree.py"
+    # The resulting plots look sane, but does not match pixel-perfectly with the baseline.
+    # Likely due to a matplotlib version mismatch, different backend, or due to missing fonts.
+    "tests/plots/test_summary.py" # FIXME: enable
+    # 100% of the tests in these paths require network
+    "tests/explainers/test_explainer.py"
+    "tests/explainers/test_exact.py"
+    "tests/explainers/test_partition.py"
+    "tests/maskers/test_fixed_composite.py"
+    "tests/maskers/test_text.py"
+    "tests/models/test_teacher_forcing_logits.py"
+    "tests/models/test_text_generation.py"
+  ];
   disabledTests = [
-    "test_kernel_shap_with_a1a_sparse_zero_background"
-    "test_kernel_shap_with_a1a_sparse_nonzero_background"
-    "test_kernel_shap_with_high_dim_sparse"
-    "test_sklearn_random_forest_newsgroups"
-    "test_sum_match_random_forest"
-    "test_sum_match_extra_trees"
-    "test_single_row_random_forest"
-    "test_sum_match_gradient_boosting_classifier"
-    "test_single_row_gradient_boosting_classifier"
-    "test_HistGradientBoostingClassifier_proba"
-    "test_HistGradientBoostingClassifier_multidim"
-    "test_sum_match_gradient_boosting_regressor"
-    "test_single_row_gradient_boosting_regressor"
+    # unstable. A xgboost-enabled test. possibly related: https://github.com/slundberg/shap/issues/2480
+    "test_provided_background_tree_path_dependent"
+  ];
+
+  #pytestFlagsArray = ["-x" "-W" "ignore"]; # uncomment this to debug
+
+  pythonImportCheck = [
+    "shap"
+    "shap.explainers"
+    "shap.explainers.other"
+    "shap.plots"
+    "shap.plots.colors"
+    "shap.benchmark"
+    "shap.maskers"
+    "shap.utils"
+    "shap.actions"
+    "shap.models"
   ];
 
   meta = with lib; {
@@ -66,7 +149,5 @@ buildPythonPackage rec {
     license = licenses.mit;
     maintainers = with maintainers; [ evax ];
     platforms = platforms.unix;
-    # ModuleNotFoundError: No module named 'sklearn.ensemble.iforest'
-    broken = true;
   };
 }
diff --git a/pkgs/development/python-modules/sip/default.nix b/pkgs/development/python-modules/sip/default.nix
index 68052145766c3..ab2701fefdc33 100644
--- a/pkgs/development/python-modules/sip/default.nix
+++ b/pkgs/development/python-modules/sip/default.nix
@@ -2,35 +2,19 @@
 
 buildPythonPackage rec {
   pname = "sip";
-  version = "6.6.2";
+  version = "6.7.1";
 
   src = fetchPypi {
     pname = "sip";
     inherit version;
-    sha256 = "sha256-Dj76wcXf2OUlrlcUCSffJpk+E/WLidFXfDFPQQW/2Q0=";
+    sha256 = "sha256-KBcP34gPk3Am/If6qcF3sGLDU8XRaeoyQrB4AmFN3Qw=";
   };
 
-  patches = [
-    # on non-x86 Linux platforms, sip incorrectly detects the manylinux version
-    # and PIP will refuse to install the resulting wheel.
-    # remove once upstream fixes this, hopefully in 6.5.2
-    ./fix-manylinux-version.patch
-
-    # fix issue triggered by QGIS 3.26.x, already fixed upstream
-    # in SIP, waiting for release past 6.6.2
-    (fetchpatch {
-      url = "https://riverbankcomputing.com/hg/sip/raw-diff/323d39a2d602/sipbuild/generator/parser/instantiations.py";
-      hash = "sha256-QEQuRzXA+wK9Dt22U/LgIwtherY9pJURGJYpKpJkiok=";
-    })
-  ];
-
   propagatedBuildInputs = [ packaging ply toml ];
 
   # There aren't tests
   doCheck = false;
 
-  pythonImportsCheck = [ "sipbuild" ];
-
   # FIXME: Why isn't this detected automatically?
   # Needs to be specified in pyproject.toml, e.g.:
   # [tool.sip.bindings.MODULE]
@@ -45,10 +29,12 @@ buildPythonPackage rec {
     else
       throw "unsupported platform";
 
+  pythonImportsCheck = [ "sipbuild" ];
+
   meta = with lib; {
     description = "Creates C++ bindings for Python modules";
     homepage    = "https://riverbankcomputing.com/";
     license     = licenses.gpl3Only;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ nrdxp ];
   };
 }
diff --git a/pkgs/development/python-modules/sip/fix-manylinux-version.patch b/pkgs/development/python-modules/sip/fix-manylinux-version.patch
deleted file mode 100644
index 4b8e99ae8e472..0000000000000
--- a/pkgs/development/python-modules/sip/fix-manylinux-version.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-diff --git a/sipbuild/project.py b/sipbuild/project.py
---- a/sipbuild/project.py
-+++ b/sipbuild/project.py
-@@ -336,13 +336,13 @@ class Project(AbstractProject, Configurable):
-             # We expect a two part tag so leave anything else unchanged.
-             parts = platform_tag.split('-')
-             if len(parts) == 2:
--                if self.minimum_glibc_version > (2, 17):
-+                if self.minimum_glibc_version > (2, 17) or parts[1] not in {"x86_64", "i686", "aarch64", "armv7l", "ppc64", "ppc64le", "s390x"}:
-                     # PEP 600.
-                     parts[0] = 'manylinux'
-                     parts.insert(1,
-                             '{}.{}'.format(self.minimum_glibc_version[0],
-                                     self.minimum_glibc_version[1]))
--                elif self.minimum_glibc_version > (2, 12):
-+                elif self.minimum_glibc_version > (2, 12) or parts[1] not in {"x86_64", "i686"}:
-                     # PEP 599.
-                     parts[0] = 'manylinux2014'
-                 elif self.minimum_glibc_version > (2, 5):
diff --git a/pkgs/development/python-modules/slack-sdk/default.nix b/pkgs/development/python-modules/slack-sdk/default.nix
index 36a105e7dc1d6..f90820b8de96f 100644
--- a/pkgs/development/python-modules/slack-sdk/default.nix
+++ b/pkgs/development/python-modules/slack-sdk/default.nix
@@ -21,7 +21,7 @@
 
 buildPythonPackage rec {
   pname = "slack-sdk";
-  version = "3.18.4";
+  version = "3.19.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -30,7 +30,7 @@ buildPythonPackage rec {
     owner = "slackapi";
     repo = "python-slack-sdk";
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-iQxtIpswXQWlknUoq9a7nsTCnVDP2aNUEuWco5xKnVc=";
+    sha256 = "sha256-DYDyWlNl/3SjSiA0kyMfz4/t42Oxh7VX43ZDL94eFzo=";
   };
 
   propagatedBuildInputs = [
@@ -74,7 +74,6 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    broken = stdenv.isDarwin;
     description = "Slack Developer Kit for Python";
     homepage = "https://slack.dev/python-slack-sdk/";
     license = with licenses; [ mit ];
diff --git a/pkgs/development/python-modules/slither-analyzer/default.nix b/pkgs/development/python-modules/slither-analyzer/default.nix
index d3295cbb1f8b6..bb6ffcad00059 100644
--- a/pkgs/development/python-modules/slither-analyzer/default.nix
+++ b/pkgs/development/python-modules/slither-analyzer/default.nix
@@ -13,16 +13,16 @@
 
 buildPythonPackage rec {
   pname = "slither-analyzer";
-  version = "0.8.3";
+  version = "0.9.0";
   format = "setuptools";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "crytic";
     repo = "slither";
-    rev = version;
-    sha256 = "sha256-Kh5owlkRB9hDlfIRiS+aNFe4YtZj38CLeE3Fe+R7diM=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-Td7WBPpc+ZYlFroZNzvUqQZJag0lbkCgj8TVOPrAAPY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/social-auth-core/default.nix b/pkgs/development/python-modules/social-auth-core/default.nix
index b00e5044c64fc..6427208420f2b 100644
--- a/pkgs/development/python-modules/social-auth-core/default.nix
+++ b/pkgs/development/python-modules/social-auth-core/default.nix
@@ -56,9 +56,7 @@ buildPythonPackage rec {
   checkInputs = [
     pytestCheckHook
     httpretty
-  ] ++ passthru.optional-dependencies.openidconnect
-  ++ passthru.optional-dependencies.saml
-  ++ passthru.optional-dependencies.azuread;
+  ] ++ lib.flatten (lib.attrValues passthru.optional-dependencies);
 
   # Disable checking the code coverage
   prePatch = ''
diff --git a/pkgs/development/python-modules/sphinx-argparse/default.nix b/pkgs/development/python-modules/sphinx-argparse/default.nix
index 60ef3ceb48e83..a4a414328b552 100644
--- a/pkgs/development/python-modules/sphinx-argparse/default.nix
+++ b/pkgs/development/python-modules/sphinx-argparse/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "sphinx-argparse";
-  version = "0.3.1";
+  version = "0.3.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "82151cbd43ccec94a1530155f4ad34f251aaca6a0ffd5516d7fadf952d32dc1e";
+    sha256 = "sha256-5UrWyPiVrGu50N2foH5H4TeipCrhinFFFSYuhrTMS6s=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/sphinx-automodapi/default.nix b/pkgs/development/python-modules/sphinx-automodapi/default.nix
new file mode 100644
index 0000000000000..c8b586d0fc6e5
--- /dev/null
+++ b/pkgs/development/python-modules/sphinx-automodapi/default.nix
@@ -0,0 +1,56 @@
+{ lib
+, buildPythonPackage
+, cython
+, fetchFromGitHub
+, fetchurl
+, gcc
+, graphviz
+, pytestCheckHook
+, pythonOlder
+, sphinx
+}:
+
+buildPythonPackage rec {
+  pname = "sphinx-automodapi";
+  version = "0.14.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "astropy";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-olD9LIyFCNEu287wQIRqoabfrdcdyZpNc69jq/e1304=";
+  };
+
+  propagatedBuildInputs = [ sphinx ];
+
+  # https://github.com/astropy/sphinx-automodapi/issues/155
+  testInventory = fetchurl {
+    # Originally: https://docs.python.org/3/objects.inv
+    url = "https://web.archive.org/web/20221007193144/https://docs.python.org/3/objects.inv";
+    hash = "sha256-1cbUmdJJSoifkiIYa70SxnLsaK3F2gvnTEWo9vo/6rY=";
+  };
+
+  postPatch = ''
+    substituteInPlace "sphinx_automodapi/tests/helpers.py" \
+      --replace '[0]), None)' "[0]), (None, '${testInventory}'))"
+  '';
+
+  checkInputs = [
+    pytestCheckHook
+    cython
+    gcc
+    graphviz
+  ];
+
+  pythonImportsCheck = [ "sphinx_automodapi" ];
+
+  meta = with lib; {
+    description = "Sphinx extension for generating API documentation";
+    homepage = "https://github.com/astropy/sphinx-automodapi";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ lovesegfault ];
+  };
+}
diff --git a/pkgs/development/python-modules/sphinx-book-theme/default.nix b/pkgs/development/python-modules/sphinx-book-theme/default.nix
index 3fd28acef9cbd..10f45cb6a7d5d 100644
--- a/pkgs/development/python-modules/sphinx-book-theme/default.nix
+++ b/pkgs/development/python-modules/sphinx-book-theme/default.nix
@@ -36,5 +36,8 @@ buildPythonPackage rec {
     homepage = "https://github.com/executablebooks/sphinx-book-theme";
     license = licenses.bsd3;
     maintainers = with maintainers; [ marsam ];
+    # Missing sphinx 5.X support
+    # https://github.com/executablebooks/sphinx-book-theme/issues/592
+    broken = true;
   };
 }
diff --git a/pkgs/development/python-modules/sphinx-jupyterbook-latex/default.nix b/pkgs/development/python-modules/sphinx-jupyterbook-latex/default.nix
index 6c80d6715dcc2..5aa69c47beb2e 100644
--- a/pkgs/development/python-modules/sphinx-jupyterbook-latex/default.nix
+++ b/pkgs/development/python-modules/sphinx-jupyterbook-latex/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "sphinx-jupyterbook-latex";
-  version = "0.5.0";
+  version = "0.5.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.6";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     inherit version;
     pname = "sphinx_jupyterbook_latex";
-    sha256 = "sha256-XEYsrMcg85loIYvD3ikfgGXGeox0q03H/0wRgTaz+SI=";
+    sha256 = "sha256-QErSEpolSEkJaQLzfcF0oDlugEhN5Y9/KwVwC2IknLY=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/sphinxcontrib-spelling/default.nix b/pkgs/development/python-modules/sphinxcontrib-spelling/default.nix
index a8a55ff8780b1..4b9149538e10c 100644
--- a/pkgs/development/python-modules/sphinxcontrib-spelling/default.nix
+++ b/pkgs/development/python-modules/sphinxcontrib-spelling/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "sphinxcontrib-spelling";
-  version = "7.6.0";
+  version = "7.6.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-KSzX4fc6djRRaTtNSMm97RUQhPapHlM3cz6fqHFdIOw=";
+    hash = "sha256-REhXV53WGRTzlwrRBGx0v2dYE29+FEtGypwoEIhw9Qg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/sqlmap/default.nix b/pkgs/development/python-modules/sqlmap/default.nix
index 595066b0de0cc..23a6de2c955af 100644
--- a/pkgs/development/python-modules/sqlmap/default.nix
+++ b/pkgs/development/python-modules/sqlmap/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "sqlmap";
-  version = "1.6.9";
+  version = "1.6.10";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-azAhpt6Qo/arTYeJSeQdBnqOmg2m7h+1pTsV30/pAOc=";
+    sha256 = "sha256-gBDHRV+5N9dcsH/55I6AcguiJSIP57fUtQJ6sMGPzyg=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/strictyaml/default.nix b/pkgs/development/python-modules/strictyaml/default.nix
index 66ed134772d70..5660a032876e2 100644
--- a/pkgs/development/python-modules/strictyaml/default.nix
+++ b/pkgs/development/python-modules/strictyaml/default.nix
@@ -7,13 +7,13 @@
 }:
 
 buildPythonPackage rec {
-  version = "1.6.1";
+  version = "1.6.2";
   pname = "strictyaml";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "688be16ee5d1a2f94aa4abdc6d881e8e254d173d724ac88725955fe66bdb63d4";
+    sha256 = "sha256-cM1VmA/ikp3AOJJMoI9o+WFIIjqHd4EPphbjR46+cco=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/sumo/default.nix b/pkgs/development/python-modules/sumo/default.nix
index 9569de3e6496f..a13841435650a 100644
--- a/pkgs/development/python-modules/sumo/default.nix
+++ b/pkgs/development/python-modules/sumo/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "sumo";
-  version = "2.3.4";
+  version = "2.3.5";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "SMTG-UCL";
     repo = "sumo";
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-kgTTYCTq8jTNOmc92TRskbsOcnk6wTZgf0UfoctJ4M4=";
+    sha256 = "sha256-eGQOFTo/tg1aM/P1la3stE7RLxpACUdcJ7g1z3zSasc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/tcxreader/default.nix b/pkgs/development/python-modules/tcxreader/default.nix
index 1f20dfeffdf76..ec4abfd886d46 100644
--- a/pkgs/development/python-modules/tcxreader/default.nix
+++ b/pkgs/development/python-modules/tcxreader/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "tcxreader";
-  version = "0.4.1";
+  version = "0.4.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "alenrajsp";
     repo = "tcxreader";
     rev = "v${version}";
-    hash = "sha256-gPoYxdYCHVzSjCxhodRsbd60dGbPQtQQihdT0h3uVpU=";
+    hash = "sha256-YJDuyInO5FCIdz7xE29qOpuH6rPKvO4FZChjgXdc+Aw=";
   };
 
   checkInputs = [
@@ -28,7 +28,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "A reader for Garmin’s TCX file format.";
+    description = "A reader for Garmin’s TCX file format";
     homepage = "https://github.com/alenrajsp/tcxreader";
     license = licenses.mit;
     maintainers = with maintainers; [ firefly-cpp ];
diff --git a/pkgs/development/python-modules/tensorboardx/default.nix b/pkgs/development/python-modules/tensorboardx/default.nix
index 4bc85a5cd08e0..7d0a28a4198cd 100644
--- a/pkgs/development/python-modules/tensorboardx/default.nix
+++ b/pkgs/development/python-modules/tensorboardx/default.nix
@@ -8,7 +8,7 @@
 , moto
 , numpy
 , pillow
-, protobuf3_8
+, protobuf
 , pytestCheckHook
 , torch
 , six
@@ -19,13 +19,14 @@
 
 buildPythonPackage rec {
   pname = "tensorboardx";
-  version = "2.5";
+  version = "2.5.1";
+  format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "lanpa";
     repo = "tensorboardX";
-    rev = "refs/tags/${version}";
-    sha256 = "sha256-g6x0yUpofeSNA4rKPidqOKC7/TrOICstcc98VnQcfDY=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-Np0Ibn51qL0ORwq1IY8lUle05MQDdb5XkI1uzGOKJno=";
   };
 
   # apparently torch API changed a bit at 1.6
@@ -33,11 +34,16 @@ buildPythonPackage rec {
     substituteInPlace tensorboardX/pytorch_graph.py --replace \
       "torch.onnx.set_training(model, False)" \
       "torch.onnx.select_model_mode_for_export(model, torch.onnx.TrainingMode.EVAL)"
+
+    # Version detection seems broken here, the version reported by python is
+    # newer than the protobuf package itself.
+    sed -i -e "s/'protobuf[^']*'/'protobuf'/" setup.py
   '';
 
-  # Wanted protobuf version is mentioned here:
-  # https://github.com/lanpa/tensorboardX/blob/0d08112618a2bbda4c028a15a137fed3afe77401/compile.sh#L6
-  nativeBuildInputs = [ which protobuf3_8 ];
+  nativeBuildInputs = [
+    which
+    protobuf
+  ];
 
   # required to make tests deterministic
   PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION = "python";
diff --git a/pkgs/development/python-modules/teslajsonpy/default.nix b/pkgs/development/python-modules/teslajsonpy/default.nix
index 6d506bc2079fe..084d9b4e0781e 100644
--- a/pkgs/development/python-modules/teslajsonpy/default.nix
+++ b/pkgs/development/python-modules/teslajsonpy/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "teslajsonpy";
-  version = "2.4.4";
+  version = "2.4.5";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "zabuldon";
     repo = pname;
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-MTVL/yDKCqeSdBe3opdor+aBfgsO/FgOq6jPcFEK5rY=";
+    sha256 = "sha256-fsZBHJUX/DytSO680hiXhS6+jCKOKz1n+PxZa9kyWnc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/time-machine/default.nix b/pkgs/development/python-modules/time-machine/default.nix
index 81dcf10537125..44335c7248b92 100644
--- a/pkgs/development/python-modules/time-machine/default.nix
+++ b/pkgs/development/python-modules/time-machine/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "time-machine";
-  version = "2.8.1";
+  version = "2.8.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "adamchainz";
     repo = pname;
     rev = version;
-    sha256 = "sha256-65jX6R3tZ5guouEug/mClvNqg0LE4v9OGzCL0eFyqsA=";
+    sha256 = "sha256-EFlvO9QlOP351kZAFQ+hwghL+7m+Cin/OyLV3NX+y8E=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/timetagger/default.nix b/pkgs/development/python-modules/timetagger/default.nix
index b9454f9ad097d..5bd7d15d11219 100644
--- a/pkgs/development/python-modules/timetagger/default.nix
+++ b/pkgs/development/python-modules/timetagger/default.nix
@@ -16,13 +16,13 @@
 
 buildPythonPackage rec {
   pname = "timetagger";
-  version = "22.6.6";
+  version = "22.9.3";
 
   src = fetchFromGitHub {
     owner = "almarklein";
     repo = pname;
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-2qPtC8gsRw9ZOkl+H8euTwTrPVAB0cdfFflhbLqXz/I=";
+    sha256 = "sha256-9YmO0nD6QSFMSXsWlfbRxNWW1nwe7WXinC9pLe7rDEY=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/tldextract/default.nix b/pkgs/development/python-modules/tldextract/default.nix
index f92ea4b8dd8a6..1aac6f45575ca 100644
--- a/pkgs/development/python-modules/tldextract/default.nix
+++ b/pkgs/development/python-modules/tldextract/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname   = "tldextract";
-  version = "3.3.1";
+  version = "3.4.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-/hWsMgXlolthaJNp+Yy0XHd4qPKvET18EVWezlGV8tY=";
+    hash = "sha256-eK7xOsFFnVGbRXoD8fdMG/HCgIEiprzA5oQPgbpVrXM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/traitsui/default.nix b/pkgs/development/python-modules/traitsui/default.nix
index 9fcfafd99e0af..cf5e8bf8302a4 100644
--- a/pkgs/development/python-modules/traitsui/default.nix
+++ b/pkgs/development/python-modules/traitsui/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "traitsui";
-  version = "7.4.0";
+  version = "7.4.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-JTNa/+4jQtR+NcJd9ed4XSKlM1hP4b4JQ8y6Rdwa5Yk=";
+    hash = "sha256-TFs9Oq6qvR7IGgqMQPnM0o+oy51k7RORfJkNF0ZU+h0=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/transmission-rpc/default.nix b/pkgs/development/python-modules/transmission-rpc/default.nix
index 2788d0ec8cb83..b82a61b7518c7 100644
--- a/pkgs/development/python-modules/transmission-rpc/default.nix
+++ b/pkgs/development/python-modules/transmission-rpc/default.nix
@@ -1,50 +1,53 @@
 { lib
 , buildPythonPackage
+, fetchFromGitHub
 , fetchPypi
-, six
-, typing-extensions
+, poetry-core
+, pydantic
+, pytestCheckHook
+, pythonOlder
+, pytz
 , requests
 , yarl
-, pythonOlder
-, fetchFromGitHub
-, poetry-core
 }:
 
 buildPythonPackage rec {
   pname = "transmission-rpc";
-  version = "3.3.2";
-  disabled = pythonOlder "3.6";
-
+  version = "3.4.0";
   format = "pyproject";
 
+  disabled = pythonOlder "3.8";
+
   src = fetchFromGitHub {
     owner = "Trim21";
     repo = "transmission-rpc";
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-GkhNOKatT/hJFw1l1xrf43jtgxvJ+WVvhz83Oe0MZ6w=";
+    hash = "sha256-O+VimSIVsO4P7v+8HHdYujaKpPx4FV8bF/Nn4EHP2vo=";
   };
 
-  # remove once upstream has tagged version with dumped typing-extensions
-  postPatch = ''
-    substituteInPlace pyproject.toml \
-      --replace 'typing_extensions = ">=3.7.4.2,<4.0.0.0"' 'typing_extensions = "*"'
-  '';
-
   nativeBuildInputs = [
     poetry-core
   ];
 
   propagatedBuildInputs = [
-    six
-    typing-extensions
+    pydantic
     requests
+  ];
+
+  checkInputs = [
+    pytz
+    pytestCheckHook
     yarl
   ];
 
-  # no tests
-  doCheck = false;
+  pythonImportsCheck = [
+    "transmission_rpc"
+  ];
 
-  pythonImportsCheck = [ "transmission_rpc" ];
+  disabledTests = [
+    # Tests require a running Transmission instance
+    "test_real"
+  ];
 
   meta = with lib; {
     description = "Python module that implements the Transmission bittorent client RPC protocol";
diff --git a/pkgs/development/python-modules/trimesh/default.nix b/pkgs/development/python-modules/trimesh/default.nix
index f25ab691965d1..5bd24653f30d8 100644
--- a/pkgs/development/python-modules/trimesh/default.nix
+++ b/pkgs/development/python-modules/trimesh/default.nix
@@ -6,11 +6,11 @@
 
 buildPythonPackage rec {
   pname = "trimesh";
-  version = "3.15.2";
+  version = "3.15.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-RnqHmqF29r1VU8s920mxQE80f2kJKHJtMmRi1R2caAM=";
+    sha256 = "sha256-wvoxZXSlPWEifwP4Gdgg4wsVjDGm5NzhaZjAUZ886ZI=";
   };
 
   propagatedBuildInputs = [ numpy ];
diff --git a/pkgs/development/python-modules/twilio/default.nix b/pkgs/development/python-modules/twilio/default.nix
index b5ce76c79888b..5e07b694e6d4f 100644
--- a/pkgs/development/python-modules/twilio/default.nix
+++ b/pkgs/development/python-modules/twilio/default.nix
@@ -1,5 +1,6 @@
 { lib
 , buildPythonPackage
+, cryptography
 , django
 , fetchFromGitHub
 , mock
@@ -13,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "twilio";
-  version = "7.14.1";
+  version = "7.14.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -22,7 +23,7 @@ buildPythonPackage rec {
     owner = "twilio";
     repo = "twilio-python";
     rev = "refs/tags/${version}";
-    hash = "sha256-VKAeM1a1TMXrewJ+j+Outyp7vxh9xovqjJ+GneYa6eg=";
+    hash = "sha256-lamP7ltKLizwPGX1063bZ90M89oPmXVSogi3HNksvHE=";
   };
 
   propagatedBuildInputs = [
@@ -32,6 +33,7 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
+    cryptography
     django
     mock
     multidict
diff --git a/pkgs/development/python-modules/typed-settings/default.nix b/pkgs/development/python-modules/typed-settings/default.nix
index 8d04df43efebf..81ca0bfd0bf3c 100644
--- a/pkgs/development/python-modules/typed-settings/default.nix
+++ b/pkgs/development/python-modules/typed-settings/default.nix
@@ -13,13 +13,13 @@
 
 buildPythonPackage rec {
   pname = "typed-settings";
-  version = "1.1.0";
+  version = "1.1.1";
   format = "pyproject";
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-Ja2ZLqzJSSvK5hIMhayMztJta/Jc3tmb2tzdlxageAs=";
+    sha256 = "sha256-fbo4oj84j7Vkz2V6B/EqoyRl9OutSpm5Ko9Tctu2DYM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/types-protobuf/default.nix b/pkgs/development/python-modules/types-protobuf/default.nix
index 803e6fce25125..1973e7e0d228b 100644
--- a/pkgs/development/python-modules/types-protobuf/default.nix
+++ b/pkgs/development/python-modules/types-protobuf/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "types-protobuf";
-  version = "3.20.3";
+  version = "3.20.4";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-quZASpyQKXDaM5d9G8RM665JV6XO7O1lC5r6+zYFG7I=";
+    sha256 = "sha256-Da06UAmJXJhaVuKDf2GQK62VlBUSZawO6Qe7FtCwHrc=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/types-python-dateutil/default.nix b/pkgs/development/python-modules/types-python-dateutil/default.nix
new file mode 100644
index 0000000000000..d177013f7f57c
--- /dev/null
+++ b/pkgs/development/python-modules/types-python-dateutil/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+}:
+
+buildPythonPackage rec {
+  pname = "types-python-dateutil";
+  version = "2.8.19";
+  format = "setuptools";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-v9PrOcclOupLojsQ9psBfTCwE2YrtL5KtIsgu9dj8wk=";
+  };
+
+  # Modules doesn't have tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "dateutil-stubs"
+  ];
+
+  meta = with lib; {
+    description = "Typing stubs for python-dateutil";
+    homepage = "https://github.com/python/typeshed";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/types-pytz/default.nix b/pkgs/development/python-modules/types-pytz/default.nix
index a74673b05518e..776d3d59c43af 100644
--- a/pkgs/development/python-modules/types-pytz/default.nix
+++ b/pkgs/development/python-modules/types-pytz/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "types-pytz";
-  version = "2022.2.1.0";
+  version = "2022.4.0.0";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-R8+xnFK591iWRAVB2zkv0xKjWyecYwelMdtxFS6mPis=";
+    sha256 = "sha256-F9ZuSxboDOrgeHcm86IiiN99P5/evrCR3GS5LA5OoJ0=";
   };
 
   # Modules doesn't have tests
diff --git a/pkgs/development/python-modules/types-redis/default.nix b/pkgs/development/python-modules/types-redis/default.nix
index 789cf6b879494..b0cd9fdd1991c 100644
--- a/pkgs/development/python-modules/types-redis/default.nix
+++ b/pkgs/development/python-modules/types-redis/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "types-redis";
-  version = "4.3.21";
+  version = "4.3.21.1";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-/QF6ZzOvGT0U8bsptP95wKvJBuhlQVjRerpFemOBr+I=";
+    sha256 = "sha256-STgUgpZD/AShRZXtpszWm9wGBkd1QczaVCOM4/YLyZM=";
   };
 
   # Module doesn't have tests
diff --git a/pkgs/development/python-modules/types-requests/default.nix b/pkgs/development/python-modules/types-requests/default.nix
index 51210e5abb2e8..2b1f4d1380ce6 100644
--- a/pkgs/development/python-modules/types-requests/default.nix
+++ b/pkgs/development/python-modules/types-requests/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "types-requests";
-  version = "2.28.11";
+  version = "2.28.11.2";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-fugn64zmEbArURfP7F2mRVNltqV19eP/GfZVumA+a04=";
+    sha256 = "sha256-/c170UgTn7ju9yz0pBrHJzhyytnmraFLEf9d/e7mDtM=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/types-retry/default.nix b/pkgs/development/python-modules/types-retry/default.nix
new file mode 100644
index 0000000000000..53323d950cbfc
--- /dev/null
+++ b/pkgs/development/python-modules/types-retry/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+}:
+
+buildPythonPackage rec {
+  pname = "types-retry";
+  version = "0.9.9";
+  format = "setuptools";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-sQh7J0aAtULHllSehIiJjQsizYmYjvEBbvVtQ2f/T0E=";
+  };
+
+  # Modules doesn't have tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "retry-stubs"
+  ];
+
+  meta = with lib; {
+    description = "Typing stubs for retry";
+    homepage = "https://github.com/python/typeshed";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/types-tabulate/default.nix b/pkgs/development/python-modules/types-tabulate/default.nix
index dd3a6b461c780..767e597cec58d 100644
--- a/pkgs/development/python-modules/types-tabulate/default.nix
+++ b/pkgs/development/python-modules/types-tabulate/default.nix
@@ -5,11 +5,11 @@
 
 buildPythonPackage rec {
   pname = "types-tabulate";
-  version = "0.8.11";
+  version = "0.9.0.0";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-F6X6O1ykU4FXePyYZejs0BGLB7K5+v8+Kwb+RIF03V4=";
+    hash = "sha256-SnlHRxTOoVa80hhbub3dj7nT1SJ8jQp/Ib8hyvX2Dmc=";
   };
 
   # Module doesn't have tests
diff --git a/pkgs/development/python-modules/ultraheat-api/default.nix b/pkgs/development/python-modules/ultraheat-api/default.nix
index 98dd8de8fe73e..2bec7261719f2 100644
--- a/pkgs/development/python-modules/ultraheat-api/default.nix
+++ b/pkgs/development/python-modules/ultraheat-api/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "ultraheat-api";
-  version = "0.4.3";
+  version = "0.5.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "ultraheat_api";
     inherit version;
-    hash = "sha256-sdZweq5TDl54UKHqQ0zlFQq0h+piisMKs2P/3E2vqX8=";
+    hash = "sha256-fXTv4rWMkAOBYwKeb0MCC9mwEfeYT/YFYW0OpwXN4OQ=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/unrardll/default.nix b/pkgs/development/python-modules/unrardll/default.nix
index 4feb29a090161..f0a0cbbf17590 100644
--- a/pkgs/development/python-modules/unrardll/default.nix
+++ b/pkgs/development/python-modules/unrardll/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, unrar }:
+{ lib, stdenv, buildPythonPackage, fetchPypi, unrar }:
 
 buildPythonPackage rec {
   pname = "unrardll";
@@ -11,6 +11,13 @@ buildPythonPackage rec {
 
   buildInputs = [ unrar ];
 
+  NIX_CFLAGS_LINK = lib.optionalString stdenv.isDarwin "-headerpad_max_install_names";
+
+  postInstall = lib.optionalString stdenv.isDarwin ''
+    install_name_tool -change libunrar.so ${unrar}/lib/libunrar.so $out/lib/python*/site-packages/unrardll/unrar.*-darwin.so
+    install_name_tool -change libunrar.so ${unrar}/lib/libunrar.so build/lib.*/unrardll/unrar.*-darwin.so
+  '';
+
   pythonImportsCheck = [ "unrardll" ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/uproot/default.nix b/pkgs/development/python-modules/uproot/default.nix
index 81a6cf99da0b4..784d02dafa42c 100644
--- a/pkgs/development/python-modules/uproot/default.nix
+++ b/pkgs/development/python-modules/uproot/default.nix
@@ -1,62 +1,75 @@
 { lib
-, fetchFromGitHub
-, buildPythonPackage
 , awkward
-, numpy
+, buildPythonPackage
+, fetchFromGitHub
+, importlib-metadata
 , lz4
-, setuptools
-, xxhash
-, zstandard
+, numpy
+, packaging
 , pytestCheckHook
+, pythonOlder
 , scikit-hep-testdata
+, xxhash
+, zstandard
 }:
 
 buildPythonPackage rec {
   pname = "uproot";
-  version = "4.3.5";
+  version = "4.3.6";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
-  # fetch from github for tests
   src = fetchFromGitHub {
     owner = "scikit-hep";
     repo = "uproot4";
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-oAL4FjrNNm7xCQq275pnY/UjfAxRWgLgYBS/lCq+uwE=";
+    hash = "sha256-Te4D2tHVD5fD8DH2njjQMGnTUvLQdcGBzApklnGn6g8=";
   };
 
   propagatedBuildInputs = [
     awkward
     numpy
     lz4
-    setuptools
+    packaging
     xxhash
     zstandard
+  ]  ++ lib.optionals (pythonOlder "3.8") [
+    importlib-metadata
   ];
 
   checkInputs = [
     pytestCheckHook
     scikit-hep-testdata
   ];
+
   preCheck = ''
     export HOME="$(mktemp -d)"
   '';
+
   disabledTests = [
-    # tests that try to download files
+    # Tests that try to download files
     "test_http"
     "test_no_multipart"
     "test_fallback"
     "test_pickle_roundtrip_http"
   ];
+
   disabledTestPaths = [
-    # tests that try to download files
+    # Tests that try to download files
     "tests/test_0066-fix-http-fallback-freeze.py"
     "tests/test_0088-read-with-http.py"
     "tests/test_0220-contiguous-byte-ranges-in-http.py"
   ];
-  pythonImportsCheck = [ "uproot" ];
+
+  pythonImportsCheck = [
+    "uproot"
+  ];
 
   meta = with lib; {
-    homepage = "https://github.com/scikit-hep/uproot5";
     description = "ROOT I/O in pure Python and Numpy";
+    homepage = "https://github.com/scikit-hep/uproot5";
+    changelog = "https://github.com/scikit-hep/uproot5/releases/tag/v${version}";
     license = licenses.bsd3;
     maintainers = with maintainers; [ veprbl ];
   };
diff --git a/pkgs/development/python-modules/velbus-aio/default.nix b/pkgs/development/python-modules/velbus-aio/default.nix
index e001ce95d03ee..62596add2c866 100644
--- a/pkgs/development/python-modules/velbus-aio/default.nix
+++ b/pkgs/development/python-modules/velbus-aio/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "velbus-aio";
-  version = "2022.9.1";
+  version = "2022.10.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "Cereal2nd";
     repo = pname;
     rev = version;
-    sha256 = "sha256-sJ90vfw3JefDsafmEc5sUtPxlQJ4CPtWHpY+mp1cMw8=";
+    sha256 = "sha256-p/oWyi5417rTSG2+xYsPlaiiHfdyAACyvRwTsmqAoUI=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/development/python-modules/venstarcolortouch/default.nix b/pkgs/development/python-modules/venstarcolortouch/default.nix
index 0672060d35700..2eb878e8d9c2a 100644
--- a/pkgs/development/python-modules/venstarcolortouch/default.nix
+++ b/pkgs/development/python-modules/venstarcolortouch/default.nix
@@ -6,11 +6,11 @@
 
 buildPythonPackage rec {
   pname = "venstarcolortouch";
-  version = "0.18";
+  version = "0.19";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-ucz0Ejpgiss8boF8dzt45FwpieNoJ6S3DUvtay6FDrw=";
+    sha256 = "sha256-QjcoF46GrBH7ExGQno8xDgtOSGNxhAP+NycJb22hL+E=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/versioningit/default.nix b/pkgs/development/python-modules/versioningit/default.nix
new file mode 100644
index 0000000000000..5f058d5f1b15f
--- /dev/null
+++ b/pkgs/development/python-modules/versioningit/default.nix
@@ -0,0 +1,68 @@
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchPypi
+, importlib-metadata
+, packaging
+, setuptools
+, tomli
+, pytestCheckHook
+, build
+, pydantic
+, pytest-mock
+, git
+, mercurial
+}:
+
+buildPythonPackage rec {
+  pname = "versioningit";
+  version = "2.0.1";
+  disabled = pythonOlder "3.8";
+  format = "pyproject";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-gJfiYNm99nZYW9gTO/e1//rDeox2KWJVtC2Gy1EqsuM=";
+  };
+
+  postPatch = ''
+    substituteInPlace tox.ini \
+      --replace "--cov=versioningit" "" \
+      --replace "--cov-config=tox.ini" "" \
+      --replace "--no-cov-on-fail" ""
+  '';
+
+  propagatedBuildInputs = [
+    packaging
+    setuptools
+    tomli
+  ] ++ lib.optionals (pythonOlder "3.10") [
+    importlib-metadata
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+    build
+    pydantic
+    pytest-mock
+    git
+    mercurial
+  ];
+
+  disabledTests = [
+    # wants to write to the Nix store
+    "test_editable_mode"
+  ];
+
+  pythonImportsCheck = [
+    "versioningit"
+  ];
+
+  meta = with lib; {
+    description = "setuptools plugin for determining package version from VCS";
+    homepage = "https://github.com/jwodder/versioningit";
+    changelog = "https://versioningit.readthedocs.io/en/latest/changelog.html";
+    license     = licenses.mit;
+    maintainers = with maintainers; [ DeeUnderscore ];
+  };
+}
diff --git a/pkgs/development/python-modules/vt-py/default.nix b/pkgs/development/python-modules/vt-py/default.nix
index f47570a3f878d..1d0c7b4ffb71f 100644
--- a/pkgs/development/python-modules/vt-py/default.nix
+++ b/pkgs/development/python-modules/vt-py/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "vt-py";
-  version = "0.16.0";
+  version = "0.17.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "VirusTotal";
     repo = pname;
     rev = "refs/tags/${version}";
-    sha256 = "sha256-Z2rTZCPquyNA+81FCJV1f8p2YvOdSLZFGzPGplzmESc=";
+    hash = "sha256-yG0bKBn3pQWtxjuxkhKMMJW1nzbsk5y/9h2OOCkdch8=";
   };
 
   propagatedBuildInputs = [
@@ -44,6 +44,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Python client library for VirusTotal";
     homepage = "https://virustotal.github.io/vt-py/";
+    changelog = "https://github.com/VirusTotal/vt-py/releases/tag//${version}";
     license = with licenses; [ asl20 ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/wallbox/default.nix b/pkgs/development/python-modules/wallbox/default.nix
index 20896da9d2227..8e0fa53112836 100644
--- a/pkgs/development/python-modules/wallbox/default.nix
+++ b/pkgs/development/python-modules/wallbox/default.nix
@@ -9,13 +9,13 @@
 
 buildPythonPackage rec {
   pname = "wallbox";
-  version = "0.4.9";
+  version = "0.4.10";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "90e664cf7d99eb1baf20a9ff5fd415dfa14ddafabcefd606e15b5bcd25f969e9";
+    sha256 = "sha256-+LJ0ggRUXFfqmiDbIF2ZWL6qsE6gOzp5OKMFSY3dGG0=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/wandb/default.nix b/pkgs/development/python-modules/wandb/default.nix
index a466c9919f430..b1ad380f04b96 100644
--- a/pkgs/development/python-modules/wandb/default.nix
+++ b/pkgs/development/python-modules/wandb/default.nix
@@ -25,6 +25,7 @@
 , pytestCheckHook
 , python-dateutil
 , pythonOlder
+, pythonRelaxDepsHook
 , torch
 , pyyaml
 , requests
@@ -52,12 +53,17 @@ buildPythonPackage rec {
   };
 
   patches = [
+    # Replace git paths
     (substituteAll {
       src = ./hardcode-git-path.patch;
       git = "${lib.getBin git}/bin/git";
     })
   ];
 
+  nativeBuildInputs = [
+    pythonRelaxDepsHook
+  ];
+
   # setuptools is necessary since pkg_resources is required at runtime.
   propagatedBuildInputs = [
     click
@@ -76,10 +82,6 @@ buildPythonPackage rec {
     shortuuid
   ];
 
-  preCheck = ''
-    export HOME=$(mktemp -d)
-  '';
-
   checkInputs = [
     azure-core
     bokeh
@@ -99,6 +101,12 @@ buildPythonPackage rec {
     tqdm
   ];
 
+  preCheck = ''
+    export HOME=$(mktemp -d)
+  '';
+
+  pythonRelaxDeps = [ "protobuf" ];
+
   disabledTestPaths = [
     # Tests that try to get chatty over sockets or spin up servers, not possible in the nix build environment.
     "tests/unit_tests/integrations/test_keras.py"
diff --git a/pkgs/development/python-modules/web3/default.nix b/pkgs/development/python-modules/web3/default.nix
index a8b5f077b9edd..b07bc9cee9d75 100644
--- a/pkgs/development/python-modules/web3/default.nix
+++ b/pkgs/development/python-modules/web3/default.nix
@@ -20,36 +20,32 @@
 # , py-geth
 , pytestCheckHook
 , pythonOlder
+, pythonRelaxDepsHook
 }:
 
 buildPythonPackage rec {
   pname = "web3";
-  version = "5.30.0";
-  disabled = pythonOlder "3.6";
+  version = "5.31.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "ethereum";
     repo = "web3.py";
     rev = "v${version}";
-    sha256 = "sha256-HajumvOG18r7TslkmCfI0iiLsEddevGrRZQFWICGeYE=";
+    hash = "sha256-YsAbPI9Y6z+snKZ9NsA0YSpB38n+ra4+Ei6COYFe8v4=";
   };
 
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace "eth-account>=0.5.7,<0.6.0" "eth-account>=0.5.7,<0.7" \
-      --replace "eth-utils>=1.9.5,<2.0.0" "eth-utils>=1.9.5,<3" \
-      --replace "eth-rlp<0.3" "eth-rlp<0.4" \
-      --replace "websockets>=9.1,<10" "websockets>=9.1,<11" \
-      --replace "eth-abi>=2.0.0b6,<3.0.0" "eth-abi>=2.0.0b6,<4" \
-      --replace "eth-typing>=2.0.0,<3.0.0" "eth-typing>=2.0.0,<4"
-  '';
+  nativeBuildInputs = [
+    pythonRelaxDepsHook
+  ];
 
   propagatedBuildInputs = [
     aiohttp
     eth-abi
     eth-account
     eth-hash
-    eth-hash.optional-dependencies.pycryptodome
     eth-rlp
     eth-typing
     eth-utils
@@ -60,7 +56,11 @@ buildPythonPackage rec {
     protobuf
     requests
     websockets
-  ] ++ lib.optional (pythonOlder "3.8") [ typing-extensions ];
+  ] ++ lib.optional (pythonOlder "3.8") [
+    typing-extensions
+  ] ++ eth-hash.optional-dependencies.pycryptodome;
+
+  pythonRelaxDeps = true;
 
   # TODO: package eth-tester
   #checkInputs = [
@@ -72,7 +72,9 @@ buildPythonPackage rec {
 
   doCheck = false;
 
-  pythonImportsCheck = [ "web3" ];
+  pythonImportsCheck = [
+    "web3"
+  ];
 
   meta = with lib; {
     description = "Web3 library for interactions";
diff --git a/pkgs/development/python-modules/weconnect-mqtt/default.nix b/pkgs/development/python-modules/weconnect-mqtt/default.nix
index dce4cae83d42e..c75d4559927d3 100644
--- a/pkgs/development/python-modules/weconnect-mqtt/default.nix
+++ b/pkgs/development/python-modules/weconnect-mqtt/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "weconnect-mqtt";
-  version = "0.40.1";
+  version = "0.40.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "tillsteinbach";
     repo = "WeConnect-mqtt";
     rev = "refs/tags/v${version}";
-    hash = "sha256-WnaVE9WEJmdlxsPUZcEmeCf4DK1GCyd2yQmBiQZ7NkI=";
+    hash = "sha256-TRBS51ZlE4TbDAQdQyODUNDVfIuKZtrf38iBPIGyRhI=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/weconnect/default.nix b/pkgs/development/python-modules/weconnect/default.nix
index c9a2f87f91a74..3508b26a9525d 100644
--- a/pkgs/development/python-modules/weconnect/default.nix
+++ b/pkgs/development/python-modules/weconnect/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "weconnect";
-  version = "0.48.1";
+  version = "0.48.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "tillsteinbach";
     repo = "WeConnect-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-SLVOvGGhyn/kMYgZUmcy5cw7tDHS7wIcVdP5ZnRgmVc=";
+    hash = "sha256-4QltLEapYOzCwejeBWAhTdI8UVdlSAqcqFanvsTKBLw=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/whirlpool-sixth-sense/default.nix b/pkgs/development/python-modules/whirlpool-sixth-sense/default.nix
index 5f745a5210027..d77ad762d89da 100644
--- a/pkgs/development/python-modules/whirlpool-sixth-sense/default.nix
+++ b/pkgs/development/python-modules/whirlpool-sixth-sense/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "whirlpool-sixth-sense";
-  version = "0.17.1";
+  version = "0.18";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "abmantis";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-M7V+JgbaFxrijaP8znZv8tOoHGVlQmTJIdiBXK6g8LM=";
+    hash = "sha256-XmbRUVivV+jSJUpksMIJ88CwNtOD+Qkwtqyg3dX33ZU=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/wxPython/4.0.nix b/pkgs/development/python-modules/wxPython/4.0.nix
index 3a86ef4c63907..9b4dcd5e6b485 100644
--- a/pkgs/development/python-modules/wxPython/4.0.nix
+++ b/pkgs/development/python-modules/wxPython/4.0.nix
@@ -2,6 +2,7 @@
 , stdenv
 , buildPythonPackage
 , fetchPypi
+, setuptools
 , pkg-config
 , which
 , cairo
@@ -25,6 +26,7 @@
 buildPythonPackage rec {
   pname = "wxPython";
   version = "4.0.7.post2";
+  format = "other";
 
   src = fetchPypi {
     inherit pname version;
@@ -33,7 +35,7 @@ buildPythonPackage rec {
 
   doCheck = false;
 
-  nativeBuildInputs = [ pkg-config which doxygen ]
+  nativeBuildInputs = [ pkg-config which doxygen setuptools ]
   ++ (if stdenv.isDarwin then [ wxmac ] else [ wxGTK ]);
 
   buildInputs = [ ncurses libintl ]
diff --git a/pkgs/development/python-modules/wxPython/4.1.nix b/pkgs/development/python-modules/wxPython/4.1.nix
index 94fb10f113b38..3731ea988f61b 100644
--- a/pkgs/development/python-modules/wxPython/4.1.nix
+++ b/pkgs/development/python-modules/wxPython/4.1.nix
@@ -1,7 +1,9 @@
 { lib
 , stdenv
 , fetchPypi
+, fetchpatch
 , buildPythonPackage
+, setuptools
 , which
 , pkg-config
 , python
@@ -11,6 +13,19 @@
 , ncurses
 , pango
 , wxGTK
+, AGL
+, AudioToolbox
+, AVFoundation
+, AVKit
+, Carbon
+, Cocoa
+, CoreFoundation
+, CoreMedia
+, IOKit
+, Kernel
+, OpenGL
+, Security
+, WebKit
 , pillow
 , numpy
 , libXinerama
@@ -33,12 +48,20 @@ buildPythonPackage rec {
   pname = "wxPython";
   version = "4.1.1";
   disabled = isPy27;
+  format = "other";
 
   src = fetchPypi {
     inherit pname version;
     sha256 = "0a1mdhdkda64lnwm1dg0dlrf9rs4gkal3lra6hpqbwn718cf7r80";
   };
 
+  # ld: framework not found System
+  postPatch = ''
+    for file in ext/wxWidgets/configure*; do
+      substituteInPlace $file --replace "-framework System" ""
+    done
+  '';
+
   # https://github.com/NixOS/nixpkgs/issues/75759
   # https://github.com/wxWidgets/Phoenix/issues/1316
   doCheck = false;
@@ -48,6 +71,7 @@ buildPythonPackage rec {
     doxygen
     wxGTK.gtk
     pkg-config
+    setuptools
   ] ++ lib.optionals stdenv.isLinux [
     autoPatchelfHook
   ];
@@ -68,6 +92,20 @@ buildPythonPackage rec {
     libglvnd
     mesa
     webkitgtk
+  ] ++ lib.optionals stdenv.isDarwin [
+    AGL
+    AudioToolbox
+    AVFoundation
+    AVKit
+    Carbon
+    Cocoa
+    CoreFoundation
+    CoreMedia
+    IOKit
+    Kernel
+    OpenGL
+    Security
+    WebKit
   ];
 
   propagatedBuildInputs = [ pillow numpy ];
@@ -94,7 +132,6 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    broken = stdenv.isDarwin;
     description = "Cross platform GUI toolkit for Python, Phoenix version";
     homepage = "http://wxpython.org/";
     license = licenses.wxWindows;
diff --git a/pkgs/development/python-modules/yabadaba/default.nix b/pkgs/development/python-modules/yabadaba/default.nix
index d476e10adc760..9c9013df2da07 100644
--- a/pkgs/development/python-modules/yabadaba/default.nix
+++ b/pkgs/development/python-modules/yabadaba/default.nix
@@ -10,11 +10,12 @@
 , pymongo
 , pytestCheckHook
 , pythonOlder
+, tqdm
 }:
 
 buildPythonPackage rec {
   pname = "yabadaba";
-  version = "0.1.2";
+  version = "0.1.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -23,7 +24,7 @@ buildPythonPackage rec {
     owner = "usnistgov";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-Svw15epiSMEGMuFuMLqX2C9YFGtRtdg7DW2OVLPRmNI=";
+    hash = "sha256-0Rwo2d3vEfXmeZvZA1udbGKxUERymeVhvyu+okqQDJk=";
   };
 
   propagatedBuildInputs = [
@@ -34,6 +35,7 @@ buildPythonPackage rec {
     numpy
     pandas
     pymongo
+    tqdm
   ];
 
   checkInputs = [
diff --git a/pkgs/development/python-modules/yaspin/default.nix b/pkgs/development/python-modules/yaspin/default.nix
index 012ee677ae0e0..9bad354d732c2 100644
--- a/pkgs/development/python-modules/yaspin/default.nix
+++ b/pkgs/development/python-modules/yaspin/default.nix
@@ -1,27 +1,47 @@
-{ buildPythonPackage
+{ lib
+, buildPythonPackage
 , fetchFromGitHub
-, lib
 , poetry-core
+, pytestCheckHook
+, pythonOlder
 , termcolor
 }:
 
 buildPythonPackage rec {
   pname = "yaspin";
-  version = "2.1.0";
+  version = "2.2.0";
   format = "pyproject";
 
+  disabled = pythonOlder "3.7";
+
   src = fetchFromGitHub {
     owner = "pavdmyt";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0vhh4mp706kz5fba8nvr9jm51jsd32xj97m3law6ixw3lj91sh1a";
+    hash = "sha256-Z+L0SaRe/uN20KS25Di40AjHww9QUjkFaw0Jgbe9yPg=";
   };
 
-  nativeBuildInputs = [ poetry-core ];
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = [
+    termcolor
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
 
-  propagatedBuildInputs = [ termcolor ];
+  postPatch = ''
+    # https://github.com/pavdmyt/yaspin/pull/212
+    substituteInPlace pyproject.toml \
+      --replace 'termcolor-whl = "1.1.2"' 'termcolor = "*"'
+  '';
 
-  pythonImportsCheck = [ "yaspin" ];
+  pythonImportsCheck = [
+    "yaspin"
+  ];
 
   meta = with lib; {
     description = "Yet Another Terminal Spinner";
diff --git a/pkgs/development/python-modules/yolink-api/default.nix b/pkgs/development/python-modules/yolink-api/default.nix
index 4247cb7d7895f..ed5edf43c03db 100644
--- a/pkgs/development/python-modules/yolink-api/default.nix
+++ b/pkgs/development/python-modules/yolink-api/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "yolink-api";
-  version = "0.0.9";
+  version = "0.1.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "YoSmart-Inc";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-ROw+azrexDfATo7KtFwNEx175s6O6Zqcv9bZbOHMnP8=";
+    hash = "sha256-uEW8d8b7ObwmGwVTOq25kZWaLVv4lxTl+cqZK5Kjkmo=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/youtube-search/default.nix b/pkgs/development/python-modules/youtube-search/default.nix
index 7eac21a5e7ee7..215b9516c6503 100644
--- a/pkgs/development/python-modules/youtube-search/default.nix
+++ b/pkgs/development/python-modules/youtube-search/default.nix
@@ -1,20 +1,32 @@
-{ lib, buildPythonPackage, fetchPypi, requests }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+, requests
+}:
 
 buildPythonPackage rec {
   pname = "youtube-search";
-  version = "2.1.1";
+  version = "2.1.2";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-veu7PUPAbTz3B7tRYMGptIMbmmaGLCdL6azv0kCEd08=";
+    hash = "sha256-V0mm2Adv2mVVfJE2fw+rCTYpDs3qRXyDHJ8/BZGKOqI=";
   };
 
-  propagatedBuildInputs = [ requests ];
+  propagatedBuildInputs = [
+    requests
+  ];
 
-  # tests require network connection
+  # Tests require network connection
   doCheck = false;
 
-  pythonImportsCheck = [ "youtube_search" ];
+  pythonImportsCheck = [
+    "youtube_search"
+  ];
 
   meta = with lib; {
     description = "Tool for searching for youtube videos to avoid using their heavily rate-limited API";
diff --git a/pkgs/development/python-modules/zha-quirks/default.nix b/pkgs/development/python-modules/zha-quirks/default.nix
index 2b85a66853f12..0f5601bd4851a 100644
--- a/pkgs/development/python-modules/zha-quirks/default.nix
+++ b/pkgs/development/python-modules/zha-quirks/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "zha-quirks";
-  version = "0.0.80";
+  version = "0.0.82";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "zigpy";
     repo = "zha-device-handlers";
     rev = "refs/tags/${version}";
-    hash = "sha256-tmXOkOUW2d3Kntx1wgzN3J4l5jrSfz2q9YT1gfHjtro=";
+    hash = "sha256-2pm0fLPw/ROjYwvaL1wyZ39ZAbAjwc1TPsbYsO0+vcI=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/zigpy-deconz/default.nix b/pkgs/development/python-modules/zigpy-deconz/default.nix
index 30a08a37a628a..de08bb59320c2 100644
--- a/pkgs/development/python-modules/zigpy-deconz/default.nix
+++ b/pkgs/development/python-modules/zigpy-deconz/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "zigpy-deconz";
-  version = "0.18.1";
+  version = "0.19.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "zigpy";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-in40vbSupz0DhYZQYkGo5nUBt8sEwJ15wZCMVq4YRbA=";
+    hash = "sha256-HYLL+1o133Is40wVCPJoUGZO1B/43p+V8K2rJ/mdMFQ=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/zigpy-xbee/default.nix b/pkgs/development/python-modules/zigpy-xbee/default.nix
index 43cab32768c0d..30bfe8ad41670 100644
--- a/pkgs/development/python-modules/zigpy-xbee/default.nix
+++ b/pkgs/development/python-modules/zigpy-xbee/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "zigpy-xbee";
-  version = "0.15.0";
+  version = "0.16.2";
   # https://github.com/Martiusweb/asynctest/issues/152
   # broken by upstream python bug with asynctest and
   # is used exclusively by home-assistant with python 3.8
@@ -22,8 +22,8 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "zigpy";
     repo = "zigpy-xbee";
-    rev = version;
-    sha256 = "sha256-NT7d5JWaVZOrk32uYh0z0sI9RA4eJYYIa2D/Ei81KjY=";
+    rev = "refs/tags/${version}";
+    sha256 = "sha256-EzdKY/VisMUc/5yHN+7JUz1fDM4mCpk5TyApC24z4CU=";
   };
 
   buildInputs = [
diff --git a/pkgs/development/python-modules/zigpy-zigate/default.nix b/pkgs/development/python-modules/zigpy-zigate/default.nix
index d81e7c16e6fdd..694871fbf78ae 100644
--- a/pkgs/development/python-modules/zigpy-zigate/default.nix
+++ b/pkgs/development/python-modules/zigpy-zigate/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "zigpy-zigate";
-  version = "0.9.2";
+  version = "0.10.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -22,8 +22,8 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "zigpy";
     repo = "zigpy-zigate";
-    rev = "refs/tags/${version}";
-    hash = "sha256-89e9QkFxBdw5YujL73zR7jys0sCJz5r/jNaVmLxv37g=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-Vb87G+R4SvAhCF3h/U5Q4/avxPgfIjklWdWGaiIWGhk=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/zigpy-znp/default.nix b/pkgs/development/python-modules/zigpy-znp/default.nix
index 229dcc41d82f4..2b7fef4c8e273 100644
--- a/pkgs/development/python-modules/zigpy-znp/default.nix
+++ b/pkgs/development/python-modules/zigpy-znp/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "zigpy-znp";
-  version = "0.8.2";
+  version = "0.9.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "zigpy";
     repo = pname;
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-90D8MP8p0zFvmxtWXxfPzLuRACeVk4vGdUYxh6cZb08=";
+    sha256 = "sha256-32QSFBzYg+E++5euCWKgbF3/uLEn1uObenmR/Wv9XZc=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/zigpy/default.nix b/pkgs/development/python-modules/zigpy/default.nix
index 6f147990174e2..fbce8f8db61ea 100644
--- a/pkgs/development/python-modules/zigpy/default.nix
+++ b/pkgs/development/python-modules/zigpy/default.nix
@@ -8,7 +8,8 @@
 , freezegun
 , fetchFromGitHub
 , pycryptodome
-, pytest-aiohttp
+, pyserial-asyncio
+, pytest-asyncio
 , pytest-timeout
 , pytestCheckHook
 , pythonOlder
@@ -17,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "zigpy";
-  version = "0.50.3";
+  version = "0.51.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -26,7 +27,7 @@ buildPythonPackage rec {
     owner = "zigpy";
     repo = "zigpy";
     rev = "refs/tags/${version}";
-    hash = "sha256-Od5BEi5Cu1Gzd4ZkPc2lfmsEZoqsxqiUKqZ2vkW/8sE=";
+    hash = "sha256-IfYWuJfmQtJnVANyiBE3AurhucqZ8qzYXBV3jprS5qw=";
   };
 
   propagatedBuildInputs = [
@@ -34,17 +35,17 @@ buildPythonPackage rec {
     aiosqlite
     crccheck
     cryptography
+    pyserial-asyncio
     pycryptodome
     voluptuous
   ];
 
   checkInputs = [
+    asynctest
     freezegun
-    pytest-aiohttp
+    pytest-asyncio
     pytest-timeout
     pytestCheckHook
-  ]  ++ lib.optionals (pythonOlder "3.8") [
-    asynctest
   ];
 
   pythonImportsCheck = [
diff --git a/pkgs/development/python-modules/zwave-js-server-python/default.nix b/pkgs/development/python-modules/zwave-js-server-python/default.nix
index 1800e5a6d6bbd..dcbeca33f8273 100644
--- a/pkgs/development/python-modules/zwave-js-server-python/default.nix
+++ b/pkgs/development/python-modules/zwave-js-server-python/default.nix
@@ -10,16 +10,16 @@
 
 buildPythonPackage rec {
   pname = "zwave-js-server-python";
-  version = "0.41.1";
+  version = "0.43.0";
   format = "setuptools";
 
-  disabled = pythonOlder "3.8";
+  disabled = pythonOlder "3.9";
 
   src = fetchFromGitHub {
     owner = "home-assistant-libs";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-V4QEsHkakqYsZ09Q8BJG9fhREdGboirF5sNxm8t+dAQ=";
+    hash = "sha256-qzAM3vcVySJB6OfOHKXYYXDR+xOSbGpyH7b9TaYkOLM=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python2-modules/pygtk/default.nix b/pkgs/development/python2-modules/pygtk/default.nix
index 20e9498ea30e6..de0a0a282cf71 100644
--- a/pkgs/development/python2-modules/pygtk/default.nix
+++ b/pkgs/development/python2-modules/pygtk/default.nix
@@ -37,7 +37,8 @@ buildPythonPackage rec {
 
   buildPhase = "buildPhase";
 
-  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-ObjC";
+  NIX_CFLAGS_COMPILE = lib.optional stdenv.isDarwin "-ObjC"
+    ++ lib.optional (stdenv.isDarwin && stdenv.isAarch64) "-lpython2.7";
 
   installPhase = "installPhase";
 
diff --git a/pkgs/development/python2-modules/scandir/add-aarch64-darwin-dirent.patch b/pkgs/development/python2-modules/scandir/add-aarch64-darwin-dirent.patch
new file mode 100644
index 0000000000000..1b35a0b950ce2
--- /dev/null
+++ b/pkgs/development/python2-modules/scandir/add-aarch64-darwin-dirent.patch
@@ -0,0 +1,28 @@
+diff --git a/scandir.py b/scandir.py
+index 3f602fb..40af3e5 100644
+--- a/scandir.py
++++ b/scandir.py
+@@ -23,6 +23,7 @@ from os import listdir, lstat, stat, strerror
+ from os.path import join, islink
+ from stat import S_IFDIR, S_IFLNK, S_IFREG
+ import collections
++import platform
+ import sys
+ 
+ try:
+@@ -432,6 +433,15 @@ elif sys.platform.startswith(('linux', 'darwin', 'sunos5')) or 'bsd' in sys.plat
+                     ('__d_padding', ctypes.c_uint8 * 4),
+                     ('d_name', ctypes.c_char * 256),
+                 )
++            elif 'darwin' in sys.platform and 'arm64' in platform.machine():
++                _fields_ = (
++                    ('d_ino', ctypes.c_uint64),
++                    ('d_off', ctypes.c_uint64),
++                    ('d_reclen', ctypes.c_uint16),
++                    ('d_namlen', ctypes.c_uint16),
++                    ('d_type', ctypes.c_uint8),
++                    ('d_name', ctypes.c_char * 1024),
++                )
+             else:
+                 _fields_ = (
+                     ('d_ino', ctypes.c_uint32),  # must be uint32, not ulong
diff --git a/pkgs/development/python2-modules/scandir/default.nix b/pkgs/development/python2-modules/scandir/default.nix
index f92b1f5a6ed73..e712cca8348d1 100644
--- a/pkgs/development/python2-modules/scandir/default.nix
+++ b/pkgs/development/python2-modules/scandir/default.nix
@@ -6,9 +6,13 @@ buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 ="1bkqwmf056pkchf05ywbnf659wqlp6lljcdb0y88wr9f0vv32ijd";
+    sha256 = "1bkqwmf056pkchf05ywbnf659wqlp6lljcdb0y88wr9f0vv32ijd";
   };
 
+  patches = [
+    ./add-aarch64-darwin-dirent.patch
+  ];
+
   checkPhase = "${python.interpreter} test/run_tests.py";
 
   meta = with lib; {
diff --git a/pkgs/development/r-modules/default.nix b/pkgs/development/r-modules/default.nix
index 1e511534ec509..583b2bf4c3b51 100644
--- a/pkgs/development/r-modules/default.nix
+++ b/pkgs/development/r-modules/default.nix
@@ -622,6 +622,7 @@ let
     ncdfFlow = [ pkgs.zlib.dev ];
     proj4 = [ pkgs.proj.dev ];
     rtmpt = [ pkgs.gsl ];
+    rmarkdown = [ pkgs.pandoc ];
     mixcat = [ pkgs.gsl ];
     libstableR = [ pkgs.gsl ];
     landsepi = [ pkgs.gsl ];
diff --git a/pkgs/development/ruby-modules/gem-config/default.nix b/pkgs/development/ruby-modules/gem-config/default.nix
index 2ed9d860f8bbb..12c24cd99a923 100644
--- a/pkgs/development/ruby-modules/gem-config/default.nix
+++ b/pkgs/development/ruby-modules/gem-config/default.nix
@@ -40,6 +40,10 @@ let
 in
 
 {
+  ZenTest = attrs: {
+    meta.mainProgram = "zentest";
+  };
+
   atk = attrs: {
     dependencies = attrs.dependencies ++ [ "gobject-introspection" ];
     nativeBuildInputs = [ rake bundler pkg-config ]
@@ -241,6 +245,10 @@ in
     '';
   };
 
+  parser = attrs: {
+    meta.mainProgram = "ruby-parse";
+  };
+
   pg_query = attrs: lib.optionalAttrs (attrs.version == "2.0.2") {
     dontBuild = false;
     postPatch = ''
@@ -260,6 +268,10 @@ in
     '';
   };
 
+  prettier = attrs: {
+    meta.mainProgram = "rbprettier";
+  };
+
   glib2 = attrs: {
     nativeBuildInputs = [ pkg-config ]
       ++ lib.optionals stdenv.isDarwin [ DarwinTools ];
@@ -533,6 +545,14 @@ in
     buildInputs = [ openssl ];
   };
 
+  rack = attrs: {
+    meta.mainProgram = "rackup";
+  };
+
+  railties = attrs: {
+    meta.mainProgram = "rails";
+  };
+
   rainbow = attrs: {
     buildInputs = [ rainbow_rake ];
   };
@@ -562,17 +582,30 @@ in
     buildInputs = [ re2 ];
   };
 
+  rest-client = attrs: {
+    meta.mainProgram = "restclient";
+  };
+
   rmagick = attrs: {
     nativeBuildInputs = [ pkg-config ];
     buildInputs = [ imagemagick which ];
   };
 
+  rouge = attrs: {
+    meta.mainProgram = "rougify";
+  };
+
   rpam2 = attrs: {
     buildInputs = [ linux-pam ];
   };
 
+  rspec-core = attrs: {
+    meta.mainProgram = "rspec";
+  };
+
   ruby-libvirt = attrs: {
-    buildInputs = [ libvirt pkg-config ];
+    nativeBuildInputs = [ pkg-config ];
+    buildInputs = [ libvirt ];
     buildFlags = [
       "--with-libvirt-include=${libvirt}/include"
       "--with-libvirt-lib=${libvirt}/lib"
@@ -676,6 +709,10 @@ in
     buildInputs = [ freetds ];
   };
 
+  treetop = attrs: {
+    meta.mainProgram = "tt";
+  };
+
   typhoeus = attrs: {
     buildInputs = [ curl ];
   };
@@ -698,6 +735,10 @@ in
     buildInputs = [ which libossp_uuid ];
   };
 
+  whois = attrs: {
+    meta.mainProgram = "whoisrb";
+  };
+
   xapian-ruby = attrs: {
     # use the system xapian
     dontBuild = false;
diff --git a/pkgs/development/ruby-modules/gem/default.nix b/pkgs/development/ruby-modules/gem/default.nix
index e5f9d045a5b49..32bf8ed820799 100644
--- a/pkgs/development/ruby-modules/gem/default.nix
+++ b/pkgs/development/ruby-modules/gem/default.nix
@@ -250,6 +250,7 @@ stdenv.mkDerivation ((builtins.removeAttrs attrs ["source"]) // {
   meta = {
     # default to Ruby's platforms
     platforms = ruby.meta.platforms;
+    mainProgram = gemName;
   } // meta;
 })
 
diff --git a/pkgs/development/scheme-modules/scheme-bytestructures/default.nix b/pkgs/development/scheme-modules/scheme-bytestructures/default.nix
index 602b0d86f44bf..1cbbdf0bf29d6 100644
--- a/pkgs/development/scheme-modules/scheme-bytestructures/default.nix
+++ b/pkgs/development/scheme-modules/scheme-bytestructures/default.nix
@@ -17,11 +17,6 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-Wvs288K8BVjUuWvvzpDGBwOxL7mAXjVtgIwJAsQd0L4=";
   };
 
-  postConfigure = ''
-    sed -i '/moddir\s*=/s%=.*%=''${out}/share/guile/site%' Makefile;
-    sed -i '/godir\s*=/s%=.*%=''${out}/share/guile/ccache%' Makefile;
-  '';
-
   nativeBuildInputs = [
     autoreconfHook pkg-config
   ];
@@ -29,6 +24,9 @@ stdenv.mkDerivation rec {
     guile
   ];
 
+  doCheck = true;
+  makeFlags = [ "GUILE_AUTO_COMPILE=0" ];
+
   meta = with lib; {
     description = "Structured access to bytevector contents";
     homepage = "https://github.com/TaylanUB/scheme-bytestructures";
diff --git a/pkgs/development/tools/analysis/actionlint/default.nix b/pkgs/development/tools/analysis/actionlint/default.nix
index 8e91eeeb304c2..4e958176fa74f 100644
--- a/pkgs/development/tools/analysis/actionlint/default.nix
+++ b/pkgs/development/tools/analysis/actionlint/default.nix
@@ -10,7 +10,7 @@
 
 buildGoModule rec {
   pname = "actionlint";
-  version = "1.6.20";
+  version = "1.6.21";
 
   subPackages = [ "cmd/actionlint" ];
 
@@ -18,7 +18,7 @@ buildGoModule rec {
     owner = "rhysd";
     repo = "actionlint";
     rev = "v${version}";
-    sha256 = "sha256-WQqEST5f3yUsvjw86ckS/jRaxcnUd13zb7lmQvfmsjM=";
+    sha256 = "sha256-EbiyWDcDin11pGNIJtIVI44avNdZZ/4EmV5w22yx/YI=";
   };
 
   vendorSha256 = "sha256-vWU3tEC+ZlrrTnX3fbuEuZRoSg1KtfpgpXmK4+HWrNY=";
diff --git a/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix b/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
index 502a72cd4c048..890ce162164a5 100644
--- a/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
+++ b/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-tarpaulin";
-  version = "0.21.0";
+  version = "0.22.0";
 
   src = fetchFromGitHub {
     owner = "xd009642";
     repo = "tarpaulin";
     rev = version;
-    sha256 = "sha256-u6HZekrFfL+jqUh7UAo9DbgYxzS/drpt1/WdJqRFFe4=";
+    sha256 = "sha256-NABmCLEJBt+lpe28pgztMmPFja2httg3THlvk9EMbUI=";
   };
 
   nativeBuildInputs = [
@@ -17,7 +17,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ]
     ++ lib.optionals stdenv.isDarwin [ curl Security ];
 
-  cargoSha256 = "sha256-g3PrsyGhBiN32wPtdrIPjnQK79gaJtTfZkwv7MzYYrU=";
+  cargoSha256 = "sha256-PyY7H7he/LhfhIhZnT13rSc7zNnOWnLMfgwTUfX39bQ=";
   #checkFlags = [ "--test-threads" "1" ];
   doCheck = false;
 
diff --git a/pkgs/development/tools/analysis/flow/default.nix b/pkgs/development/tools/analysis/flow/default.nix
index 147d3503e9413..edc57ab10b130 100644
--- a/pkgs/development/tools/analysis/flow/default.nix
+++ b/pkgs/development/tools/analysis/flow/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "flow";
-  version = "0.188.1";
+  version = "0.188.2";
 
   src = fetchFromGitHub {
     owner = "facebook";
     repo = "flow";
     rev = "v${version}";
-    sha256 = "sha256-6VHqjLG11JB1WmXZ6+i5H3ovSGd7hA/oZ+AN5Sw++4I=";
+    sha256 = "sha256-oMiq4NMerhyLWtx4NhvTbK5yt7LhqnGTkFPRb+vwuug=";
   };
 
   makeFlags = [ "FLOW_RELEASE=1" ];
diff --git a/pkgs/development/tools/b4/default.nix b/pkgs/development/tools/b4/default.nix
index ec5542e8f1a3e..130d7f1d23afb 100644
--- a/pkgs/development/tools/b4/default.nix
+++ b/pkgs/development/tools/b4/default.nix
@@ -2,11 +2,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "b4";
-  version = "0.8.0";
+  version = "0.10.1";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "sha256-fVHW27KIBT/GQ7hOx67qpVlOHLjHwdQcYl2XgCPTvoQ=";
+    sha256 = "zESWjmKz4DaiGg1VmbDlouTNm71YqIr1y9MCev72tEQ=";
   };
 
   # tests make dns requests and fails
@@ -17,12 +17,13 @@ python3Packages.buildPythonApplication rec {
     dnspython
     dkimpy
     patatt
+    git-filter-repo
   ];
 
   meta = with lib; {
     homepage = "https://git.kernel.org/pub/scm/utils/b4/b4.git/about";
     license = licenses.gpl2Only;
     description = "A helper utility to work with patches made available via a public-inbox archive";
-    maintainers = with maintainers; [ jb55 ];
+    maintainers = with maintainers; [ jb55 qyliss ];
   };
 }
diff --git a/pkgs/development/tools/bacon/default.nix b/pkgs/development/tools/bacon/default.nix
index 1801b3d4d3832..162bfa9b65ae6 100644
--- a/pkgs/development/tools/bacon/default.nix
+++ b/pkgs/development/tools/bacon/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "bacon";
-  version = "2.2.3";
+  version = "2.2.5";
 
   src = fetchFromGitHub {
     owner = "Canop";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-9HyGHj1JWZ2S7XZCj69VdzlG4nwgzr1BKW4+4f+L+yM=";
+    sha256 = "sha256-KoAaECfZ8DwGN/U1HCp/4NUvTvFYiN+li3I5gNYM/oU=";
   };
 
-  cargoSha256 = "sha256-DlBOZUdIg7yqLeLWqiiOFb+NSeTYJUl0RIJRG35oV4M=";
+  cargoSha256 = "sha256-ifUbUeqWm/gwOqzxY8lpGvW1ArZmGAy8XxAkvEfpLVQ=";
 
   buildInputs = lib.optional stdenv.isDarwin CoreServices;
 
diff --git a/pkgs/development/tools/bashate/default.nix b/pkgs/development/tools/bashate/default.nix
index 9b6d936172669..d768ff481a429 100644
--- a/pkgs/development/tools/bashate/default.nix
+++ b/pkgs/development/tools/bashate/default.nix
@@ -12,12 +12,12 @@
 
 buildPythonApplication rec {
   pname = "bashate";
-  version = "2.1.0";
+  version = "2.1.1";
   disabled = pythonOlder "3.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "a0df143639715dc2fb6cf9aa6907e4a372d6f0a43afeffc55c5fb3ecfe3523c8";
+    sha256 = "sha256-S6tul3+DBacgU1+Pk/H7QsUh/LxKbCs9PXZx9C8iH0w=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/tools/benthos/default.nix b/pkgs/development/tools/benthos/default.nix
index 0723995ce7432..c3f7e75d4d6ac 100644
--- a/pkgs/development/tools/benthos/default.nix
+++ b/pkgs/development/tools/benthos/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "benthos";
-  version = "4.8.0";
+  version = "4.9.0";
 
   src = fetchFromGitHub {
     owner = "benthosdev";
     repo = "benthos";
     rev = "v${version}";
-    sha256 = "sha256-jddPUNl+W8BYpBlz3h/bsz7xFvE8tSlaagBmUbOGfFI=";
+    sha256 = "sha256-gFtlu+Jg5XC9OlUArTCHPFN4iTF7kdyrcRcymRwSHsw=";
   };
 
-  vendorSha256 = "sha256-xnrw/rXOGlZduCG/Sy4GxGJaojtve+oe2zVf3sV3lJ4=";
+  vendorSha256 = "sha256-sRhiTati1EsU+gBv29OkBAxqot+Bjp1BemYR1qbqN1w=";
 
   doCheck = false;
 
diff --git a/pkgs/development/tools/build-managers/bloop/default.nix b/pkgs/development/tools/build-managers/bloop/default.nix
index d35092f159fa4..bdc2fcce3ca4d 100644
--- a/pkgs/development/tools/build-managers/bloop/default.nix
+++ b/pkgs/development/tools/build-managers/bloop/default.nix
@@ -10,7 +10,7 @@
 
 stdenv.mkDerivation rec {
   pname = "bloop";
-  version = "1.5.3";
+  version = "1.5.4";
 
   platform =
     if stdenv.isLinux && stdenv.isx86_64 then "x86_64-pc-linux"
@@ -35,8 +35,8 @@ stdenv.mkDerivation rec {
   bloop-binary = fetchurl rec {
     url = "https://github.com/scalacenter/bloop/releases/download/v${version}/bloop-${platform}";
     sha256 =
-      if stdenv.isLinux && stdenv.isx86_64 then "sha256-Ub9o5XbMRTB1QET0LP3XAgUBcO7q7XfB8bI9bu/lQGw="
-      else if stdenv.isDarwin && stdenv.isx86_64 then "sha256-Z4XkbPb2xXbYweRx7NY76a9twjP6aRWz1VoqXZFe9wo="
+      if stdenv.isLinux && stdenv.isx86_64 then "sha256-q8K5dzzLhQ8T6VzhoJ5iGk0yz9pOPrP/V4eiTwyzlgo="
+      else if stdenv.isDarwin && stdenv.isx86_64 then "sha256-7zTKOAnlQWk9BbdBZLBfSLyBhFqhkscbcHN1zVTjDjQ="
       else throw "unsupported platform";
   };
 
diff --git a/pkgs/development/tools/build-managers/build2/default.nix b/pkgs/development/tools/build-managers/build2/default.nix
index 7b64c14e2ec32..40899903df29f 100644
--- a/pkgs/development/tools/build-managers/build2/default.nix
+++ b/pkgs/development/tools/build-managers/build2/default.nix
@@ -32,6 +32,8 @@ stdenv.mkDerivation rec {
     ./remove-config-store-paths.patch
     # Pick up sysdirs from NIX_LDFLAGS
     ./nix-ldflags-sysdirs.patch
+
+    ./remove-const-void-param.patch
   ];
 
   strictDeps = true;
diff --git a/pkgs/development/tools/build-managers/build2/remove-const-void-param.patch b/pkgs/development/tools/build-managers/build2/remove-const-void-param.patch
new file mode 100644
index 0000000000000..a0fd973caabb9
--- /dev/null
+++ b/pkgs/development/tools/build-managers/build2/remove-const-void-param.patch
@@ -0,0 +1,11 @@
+--- build2-0.14.0_/libbuild2/cc/pkgconfig.cxx	2022-10-04 14:18:24.864604892 -0400
++++ build2-0.14.0/libbuild2/cc/pkgconfig.cxx	2022-10-04 14:20:58.153254961 -0400
+@@ -186,7 +186,7 @@
+     ;
+
+   static bool
+-  pkgconf_error_handler (const char* msg, const pkgconf_client_t*, const void*)
++  pkgconf_error_handler (const char* msg, const pkgconf_client_t*, void*)
+   {
+     error << runtime_error (msg); // Sanitize the message.
+     return true;
diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix
index 722c8b63034b6..d64b3bbe1a881 100644
--- a/pkgs/development/tools/build-managers/cmake/default.nix
+++ b/pkgs/development/tools/build-managers/cmake/default.nix
@@ -37,11 +37,11 @@ stdenv.mkDerivation rec {
     + lib.optionalString isBootstrap "-boot"
     + lib.optionalString cursesUI "-cursesUI"
     + lib.optionalString qt5UI "-qt5UI";
-  version = "3.24.1";
+  version = "3.24.2";
 
   src = fetchurl {
     url = "https://cmake.org/files/v${lib.versions.majorMinor version}/cmake-${version}.tar.gz";
-    sha256 = "sha256-STHid6TbGoBfE7qnATp3V6DL/lt5MogpJccGHZ0fqCs=";
+    sha256 = "sha256-DZAg8G893xf7U33CKOGlbJJ+5Qa0hvVf4twZ9pvwyNs=";
   };
 
   patches = [
diff --git a/pkgs/development/tools/build-managers/gup/default.nix b/pkgs/development/tools/build-managers/gup/default.nix
index 7fa8feb8e33f6..c051b34dea359 100644
--- a/pkgs/development/tools/build-managers/gup/default.nix
+++ b/pkgs/development/tools/build-managers/gup/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchFromGitHub, nix-update-source, lib, python3
 , which, runtimeShell, pychecker ? null }:
 stdenv.mkDerivation rec {
-  version = "0.8.0";
+  version = "0.8.4";
   src = fetchFromGitHub {
     owner = "timbertson";
     repo = "gup";
     rev = "version-${version}";
-    sha256 = "1zjd76jyb5zc9w3l368723bjmxjl05s096g8ipwncfks1p9hdgf3";
+    sha256 = "0b8q9mrr7b9silwc4mp733j1z18g4lp6ppdi8p2rxzgb2fb4bkvp";
   };
   pname = "gup";
   nativeBuildInputs = [ python3 which pychecker ];
diff --git a/pkgs/development/tools/build-managers/leiningen/default.nix b/pkgs/development/tools/build-managers/leiningen/default.nix
index f2cf2694e5774..191a77d1d2c33 100644
--- a/pkgs/development/tools/build-managers/leiningen/default.nix
+++ b/pkgs/development/tools/build-managers/leiningen/default.nix
@@ -3,16 +3,16 @@
 
 stdenv.mkDerivation rec {
   pname = "leiningen";
-  version = "2.9.8";
+  version = "2.9.10";
 
   src = fetchurl {
     url = "https://raw.github.com/technomancy/leiningen/${version}/bin/lein-pkg";
-    sha256 = "1sgnxw58srjxqnskl700p7r7n23pfpjvqpiqnz1m8r6c76jwnllr";
+    sha256 = "0ckzivinbgg6gw1nss544hy160yixvd3k6pqyyxqanyzsq9lvf6v";
   };
 
   jarsrc = fetchurl {
     url = "https://github.com/technomancy/leiningen/releases/download/${version}/${pname}-${version}-standalone.jar";
-    sha256 = "13f4n15i0gsk9jq52gxivnsk32qjahmxgrddm54cf8ynw0a923ia";
+    sha256 = "1ja9q8lav83h5qhayjgc39f6yyvk1n5f6gfwznn561xm007m6a52";
   };
 
   JARNAME = "${pname}-${version}-standalone.jar";
diff --git a/pkgs/development/tools/build-managers/meson/setup-hook.sh b/pkgs/development/tools/build-managers/meson/setup-hook.sh
index 3d946fcffd522..ded9c3c63b84c 100644
--- a/pkgs/development/tools/build-managers/meson/setup-hook.sh
+++ b/pkgs/development/tools/build-managers/meson/setup-hook.sh
@@ -20,7 +20,7 @@ mesonConfigurePhase() {
 
     echo "meson flags: $mesonFlags ${mesonFlagsArray[@]}"
 
-    meson build $mesonFlags "${mesonFlagsArray[@]}"
+    meson setup build $mesonFlags "${mesonFlagsArray[@]}"
     cd build
 
     if ! [[ -v enableParallelBuilding ]]; then
diff --git a/pkgs/development/tools/build-managers/mill/default.nix b/pkgs/development/tools/build-managers/mill/default.nix
index e654c32bd56f2..1bc2e198d3fcd 100644
--- a/pkgs/development/tools/build-managers/mill/default.nix
+++ b/pkgs/development/tools/build-managers/mill/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mill";
-  version = "0.10.7";
+  version = "0.10.8";
 
   src = fetchurl {
     url = "https://github.com/com-lihaoyi/mill/releases/download/${version}/${version}-assembly";
-    hash = "sha256-pRyuTxQWRnGBTasdskIZ0F1LGgwE+Y5ksHsE1Rmp1Bg=";
+    hash = "sha256-5mJc5cLT9xkixB8mbDYuJYel+fNeCwr1PMzU/ZCncK0=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/build-managers/ninja/default.nix b/pkgs/development/tools/build-managers/ninja/default.nix
index ffa582b561879..f80f0289dbe8d 100644
--- a/pkgs/development/tools/build-managers/ninja/default.nix
+++ b/pkgs/development/tools/build-managers/ninja/default.nix
@@ -1,6 +1,16 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, python3, buildDocs ? true, asciidoc, docbook_xml_dtd_45, docbook_xsl, libxslt, re2c }:
-
-with lib;
+{ lib
+, stdenv
+, fetchFromGitHub
+, fetchpatch
+, asciidoc
+, docbook_xml_dtd_45
+, docbook_xsl
+, installShellFiles
+, libxslt
+, python3
+, re2c
+, buildDocs ? true
+}:
 
 stdenv.mkDerivation rec {
   pname = "ninja";
@@ -10,30 +20,51 @@ stdenv.mkDerivation rec {
     owner = "ninja-build";
     repo = "ninja";
     rev = "v${version}";
-    sha256 = "sha256-LvV/Fi2ARXBkfyA1paCRmLUwCh/rTyz+tGMg2/qEepI=";
+    hash = "sha256-LvV/Fi2ARXBkfyA1paCRmLUwCh/rTyz+tGMg2/qEepI=";
   };
 
-  nativeBuildInputs = [ python3 re2c ] ++ optionals buildDocs [ asciidoc docbook_xml_dtd_45 docbook_xsl libxslt.bin ];
+  nativeBuildInputs = [
+    python3
+    re2c
+    installShellFiles
+  ]
+  ++ lib.optionals buildDocs [
+    asciidoc
+    docbook_xml_dtd_45
+    docbook_xsl
+    libxslt.bin
+  ];
 
   buildPhase = ''
+    runHook preBuild
+
     python configure.py --bootstrap
-  '' + optionalString buildDocs ''
+  '' + lib.optionalString buildDocs ''
     # "./ninja -vn manual" output copied here to support cross compilation.
     asciidoc -b docbook -d book -o build/manual.xml doc/manual.asciidoc
     xsltproc --nonet doc/docbook.xsl build/manual.xml > doc/manual.html
+  '' + ''
+
+    runHook postBuild
   '';
 
   installPhase = ''
+    runHook preInstall
+
     install -Dm555 -t $out/bin ninja
-    install -Dm444 misc/bash-completion $out/share/bash-completion/completions/ninja
-    install -Dm444 misc/zsh-completion $out/share/zsh/site-functions/_ninja
-  '' + optionalString buildDocs ''
+    installShellCompletion --name ninja \
+      --bash misc/bash-completion \
+      --zsh misc/zsh-completion
+  '' + lib.optionalString buildDocs ''
     install -Dm444 -t $out/share/doc/ninja doc/manual.asciidoc doc/manual.html
+  '' + ''
+
+    runHook postInstall
   '';
 
   setupHook = ./setup-hook.sh;
 
-  meta = {
+  meta = with lib; {
     description = "Small build system with a focus on speed";
     longDescription = ''
       Ninja is a small build system with a focus on speed. It differs from
diff --git a/pkgs/development/tools/build-managers/ninja/setup-hook.sh b/pkgs/development/tools/build-managers/ninja/setup-hook.sh
index 63fa7d8f16f72..ecaa8b88c1aaa 100644
--- a/pkgs/development/tools/build-managers/ninja/setup-hook.sh
+++ b/pkgs/development/tools/build-managers/ninja/setup-hook.sh
@@ -9,7 +9,7 @@ ninjaBuildPhase() {
     fi
 
     local flagsArray=(
-        -j$buildCores -l$NIX_BUILD_CORES
+        -j$buildCores
         $ninjaFlags "${ninjaFlagsArray[@]}"
     )
 
@@ -19,29 +19,6 @@ ninjaBuildPhase() {
     runHook postBuild
 }
 
-if [ -z "${dontUseNinjaBuild-}" -a -z "${buildPhase-}" ]; then
-    buildPhase=ninjaBuildPhase
-fi
-
-ninjaInstallPhase() {
-    runHook preInstall
-
-    # shellcheck disable=SC2086
-    local flagsArray=(
-        $ninjaFlags "${ninjaFlagsArray[@]}"
-        ${installTargets:-install}
-    )
-
-    echoCmd 'install flags' "${flagsArray[@]}"
-    TERM=dumb ninja "${flagsArray[@]}"
-
-    runHook postInstall
-}
-
-if [ -z "${dontUseNinjaInstall-}" -a -z "${installPhase-}" ]; then
-    installPhase=ninjaInstallPhase
-fi
-
 ninjaCheckPhase() {
     runHook preCheck
 
@@ -61,7 +38,7 @@ ninjaCheckPhase() {
         fi
 
         local flagsArray=(
-            -j$buildCores -l$NIX_BUILD_CORES
+            -j$buildCores
             $ninjaFlags "${ninjaFlagsArray[@]}"
             $checkTarget
         )
@@ -73,6 +50,29 @@ ninjaCheckPhase() {
     runHook postCheck
 }
 
+ninjaInstallPhase() {
+    runHook preInstall
+
+    # shellcheck disable=SC2086
+    local flagsArray=(
+        $ninjaFlags "${ninjaFlagsArray[@]}"
+        ${installTargets:-install}
+    )
+
+    echoCmd 'install flags' "${flagsArray[@]}"
+    TERM=dumb ninja "${flagsArray[@]}"
+
+    runHook postInstall
+}
+
+if [ -z "${dontUseNinjaBuild-}" -a -z "${buildPhase-}" ]; then
+    buildPhase=ninjaBuildPhase
+fi
+
 if [ -z "${dontUseNinjaCheck-}" -a -z "${checkPhase-}" ]; then
     checkPhase=ninjaCheckPhase
 fi
+
+if [ -z "${dontUseNinjaInstall-}" -a -z "${installPhase-}" ]; then
+    installPhase=ninjaInstallPhase
+fi
diff --git a/pkgs/development/tools/build-managers/sbt-extras/default.nix b/pkgs/development/tools/build-managers/sbt-extras/default.nix
index 8bd5a2c1e1c05..e6665e38321da 100644
--- a/pkgs/development/tools/build-managers/sbt-extras/default.nix
+++ b/pkgs/development/tools/build-managers/sbt-extras/default.nix
@@ -3,14 +3,14 @@
 
 stdenv.mkDerivation rec {
   pname = "sbt-extras";
-  rev = "ddc1c0a9e9df598ad60edbd004e5abb51b32e42c";
-  version = "2022-09-23";
+  rev = "52fa7de64091bc687fe11e3a8c660bbbfb42742f";
+  version = "2022-10-03";
 
   src = fetchFromGitHub {
     owner = "paulp";
     repo = "sbt-extras";
     inherit rev;
-    sha256 = "SsqxDipM6B2w1kT1yuNc+PXYDE8qpUSwaXqItYuCgRU=";
+    sha256 = "TMp5qxUf7U3re8HKXvtArEJMtn4iZy4zs4SqFTxX5X4=";
   };
 
   dontBuild = true;
diff --git a/pkgs/development/tools/build-managers/sbt/default.nix b/pkgs/development/tools/build-managers/sbt/default.nix
index 782b2007d138d..99fad259e3a68 100644
--- a/pkgs/development/tools/build-managers/sbt/default.nix
+++ b/pkgs/development/tools/build-managers/sbt/default.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation rec {
   pname = "sbt";
-  version = "1.7.1";
+  version = "1.7.2";
 
   src = fetchurl {
     url = "https://github.com/sbt/sbt/releases/download/v${version}/sbt-${version}.tgz";
-    sha256 = "sha256-ihg6/bNRkpDd4vjIHJsrrRnd14c17zEftfub3PaNP+Q=";
+    sha256 = "sha256-vWSDnIzWPy3sMdbqJODeFsYTyEqSeh9FiuQBmyujENc=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/tools/buildah/default.nix b/pkgs/development/tools/buildah/default.nix
index 79e238351b4da..b146ea7376a9f 100644
--- a/pkgs/development/tools/buildah/default.nix
+++ b/pkgs/development/tools/buildah/default.nix
@@ -15,13 +15,13 @@
 
 buildGoModule rec {
   pname = "buildah";
-  version = "1.27.2";
+  version = "1.28.0";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = "buildah";
     rev = "v${version}";
-    sha256 = "sha256-jEAfiPNb7qpbKiKDx6slnBeR0fISalebAedBfY7OS6E=";
+    sha256 = "sha256-Q8IqyI6okTaXKDoYvaTcIv+wy4aiHXOjFkKBxTn4wwk=";
   };
 
   outputs = [ "out" "man" ];
diff --git a/pkgs/development/tools/clj-kondo/default.nix b/pkgs/development/tools/clj-kondo/default.nix
index 1a785b6d41479..a568be182b890 100644
--- a/pkgs/development/tools/clj-kondo/default.nix
+++ b/pkgs/development/tools/clj-kondo/default.nix
@@ -2,11 +2,11 @@
 
 buildGraalvmNativeImage rec {
   pname = "clj-kondo";
-  version = "2022.09.08";
+  version = "2022.10.05";
 
   src = fetchurl {
     url = "https://github.com/clj-kondo/${pname}/releases/download/v${version}/${pname}-${version}-standalone.jar";
-    sha256 = "sha256-HOGxSIRH6uD3ZrrEjddZtomzpfWBJa1FhTmlk8HTxSM=";
+    sha256 = "sha256-0X+DWjxkXqcST5Wwecqiv8BpJK+xJsXl0Kjfdvx18xU=";
   };
 
   extraNativeImageBuildArgs = [
diff --git a/pkgs/development/tools/continuous-integration/cirrus-cli/default.nix b/pkgs/development/tools/continuous-integration/cirrus-cli/default.nix
index 60bda337d03f6..34cd4c5d618a0 100644
--- a/pkgs/development/tools/continuous-integration/cirrus-cli/default.nix
+++ b/pkgs/development/tools/continuous-integration/cirrus-cli/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "cirrus-cli";
-  version = "0.86.0";
+  version = "0.87.2";
 
   src = fetchFromGitHub {
     owner = "cirruslabs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-ilQNwxqi7PMj6zgJ7SbpKfHDiTEjfIey3jV/Owrbddc=";
+    sha256 = "sha256-xw9eqaToasONmkld2EeiykuuVaMG77eGIsx6YDmXKKM=";
   };
 
-  vendorSha256 = "sha256-GRCcKIUimPFdeAhnz6RC5arZ0E+z+SpaAC1uDaxpJkI=";
+  vendorSha256 = "sha256-HX4seTtO5DWeR1PqXnYKIKq1/wP6/ppTclDpkQSzgbM=";
 
   ldflags = [
     "-X github.com/cirruslabs/cirrus-cli/internal/version.Version=v${version}"
diff --git a/pkgs/development/tools/continuous-integration/github-runner/default.nix b/pkgs/development/tools/continuous-integration/github-runner/default.nix
index 5dcc556660fab..928d52dd6bc89 100644
--- a/pkgs/development/tools/continuous-integration/github-runner/default.nix
+++ b/pkgs/development/tools/continuous-integration/github-runner/default.nix
@@ -27,11 +27,14 @@ let
     inherit sha256;
   };
 
-  nugetSource = linkFarmFromDrvs "nuget-packages" (
-    import ./deps.nix { inherit fetchNuGet; } ++
+  sdkSource = linkFarmFromDrvs "nuget-sdk-packages" (
     dotnetSdk.passthru.packages { inherit fetchNuGet; }
   );
 
+  nugetSource = linkFarmFromDrvs "nuget-packages" (
+    import ./deps.nix { inherit fetchNuGet; }
+  );
+
   dotnetSdk = dotnetCorePackages.sdk_6_0;
   # Map Nix systems to .NET runtime ids
   runtimeIds = {
@@ -43,13 +46,15 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "github-runner";
-  version = "2.297.0";
+  version = "2.298.2";
+
+  inherit sdkSource;
 
   src = fetchFromGitHub {
     owner = "actions";
     repo = "runner";
     rev = "v${version}";
-    hash = "sha256-Bp8uNBnjhP3AR29N7C4cPmOp6FeJ+zny4+5Gmn/PGTA=";
+    hash = "sha256-ejYNuaijUOG3czW+7i4UmR+ysDnZwXXmS3V8INqeeTg=";
   };
 
   nativeBuildInputs = [
@@ -110,6 +115,7 @@ stdenv.mkDerivation rec {
     # Restore the dependencies
     dotnet restore src/ActionsRunner.sln \
       --runtime "${runtimeId}" \
+      --source "${sdkSource}" \
       --source "${nugetSource}"
 
     runHook postConfigure
@@ -302,12 +308,12 @@ stdenv.mkDerivation rec {
   # Inspired by passthru.fetch-deps in pkgs/build-support/build-dotnet-module/default.nix
   passthru.createDepsFile = writeShellApplication {
     name = "create-deps-file";
-    runtimeInputs = [ dotnetSdk nuget-to-nix ];
+    runtimeInputs = [ dotnetSdk (nuget-to-nix.override { dotnet-sdk = dotnetSdk; }) ];
     text = ''
       # Disable telemetry data
       export DOTNET_CLI_TELEMETRY_OPTOUT=1
 
-      rundir=$(pwd)
+      deps_file="$(realpath "''${1:-$(mktemp -t "${pname}-deps-XXXXXX.nix")}")"
 
       printf "\n* Setup workdir\n"
       workdir="$(mktemp -d /tmp/${pname}.XXX)"
@@ -324,10 +330,8 @@ stdenv.mkDerivation rec {
       dotnet restore src/ActionsRunner.sln --packages nuget_pkgs --no-cache --force --runtime "${rid}"
       '') (lib.attrValues runtimeIds)}
 
-      cd "$rundir"
-      deps_file=''${1-"/tmp/${pname}-deps.nix"}
       printf "\n* Make %s file\n" "$(basename "$deps_file")"
-      nuget-to-nix "$workdir/nuget_pkgs" > "$deps_file"
+      nuget-to-nix "$workdir/nuget_pkgs" "${sdkSource}" > "$deps_file"
       printf "\n* Dependency file writen to %s" "$deps_file"
     '';
   };
diff --git a/pkgs/development/tools/continuous-integration/github-runner/deps.nix b/pkgs/development/tools/continuous-integration/github-runner/deps.nix
index 55ecd3f5d8cc8..8a6fb8de943c2 100644
--- a/pkgs/development/tools/continuous-integration/github-runner/deps.nix
+++ b/pkgs/development/tools/continuous-integration/github-runner/deps.nix
@@ -1,16 +1,11 @@
 { fetchNuGet }: [
   (fetchNuGet { pname = "Castle.Core"; version = "4.4.0"; sha256 = "0rpcbmyhckvlvp6vbzpj03c1gqz56ixc6f15vgmxmyf1g40c24pf"; })
   (fetchNuGet { pname = "Microsoft.AspNet.WebApi.Client"; version = "5.2.4"; sha256 = "00fkczf69z2rwarcd8kjjdp47517a0ca6lggn72qbilsp03a5scj"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "6.0.6"; sha256 = "1z50gqg0jimk98yd0zr2vxn087h3h1qn08fdcqbaxfgpcw30yi87"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.6"; sha256 = "0ndah9cqkgswhi60wrnni10j1d2hdg8jljij83lk1wbfqbng86jm"; })
-  (fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "17.2.0"; sha256 = "sha256-ckbeFz5ArvZUE7w3EYiciBIGlmbmjwpxqWeAOEKgHgU="; })
+  (fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "17.2.0"; sha256 = "018yl113i037m5qhm3z6csb0c4l8kj412dxw2dagdbj07qbxwikj"; })
   (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.0.1"; sha256 = "0zxc0apx1gcx361jlq8smc9pfdgmyjh6hpka8dypc9w23nlsh6yj"; })
   (fetchNuGet { pname = "Microsoft.IdentityModel.Logging"; version = "5.2.1"; sha256 = "1gpka9jm2gl6f07pcwzwvaxw9xq1a19i9fskn0qs921c5grhlp3g"; })
   (fetchNuGet { pname = "Microsoft.IdentityModel.Tokens"; version = "5.2.1"; sha256 = "03v6145vr1winq8xxfikydicds4f10qmy1ybyz2gfimnzzx51w00"; })
-  (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.2.0"; sha256 = "sha256-IXyc+oc7EwalDaq+UkkWx3bhZC/H+SZ8rTHMi87Allk="; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "6.0.6"; sha256 = "0hlxq0k60ras0wj7d7q94dxd8nzjcry0kixxs6z1hyrbm4q0y3ls"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "6.0.6"; sha256 = "117rz4gm7ihns5jlc2x05h7kdcgrl0ic4v67dzfbbr9kpra1bmcw"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.6"; sha256 = "0fjbjh7yxqc9h47ix37y963xi9f9y99jvl26cw3x3kvjlb8x0bgj"; })
+  (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.2.0"; sha256 = "0ncnq378pk1immy2dyf75xjf2xn72r4m5gma1njhc4rvhzx9qz11"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1"; sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1-rc2-24027"; sha256 = "1a0w5fv8slfr4q7m3mh78lb9awdwyz4zv3bb73vybkyq1f6z7lx8"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
@@ -22,8 +17,8 @@
   (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.0.1-rc2-24027"; sha256 = "1j1458jska7540ng7fdf5i06k2vy71mxl5dld4x5s8gfndxpdzdj"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Windows.ApiSets"; version = "1.0.1-rc2-24027"; sha256 = "034m9p417iq3yzipg393wp4bddsh80di9iad78vvvh7w5difdv0x"; })
-  (fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.2.0"; sha256 = "sha256-OwtuyH4rBS2S2mp1rlUQcVxFPS04OWBcUa59+VjVBVA="; })
-  (fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; version = "17.2.0"; sha256 = "sha256-ty2fxo3mQESh+cpsGfhSpMCEqmvPdzZE0EK8BkeHaIg="; })
+  (fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.2.0"; sha256 = "0l05smcgjzdfa5f60f9q5lylap3i21aswxbava92s19bgv46w2rv"; })
+  (fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; version = "17.2.0"; sha256 = "1238hx3hdg22s123cxygdfm89h54abw1jv6az6hl8h76ip39ybdp"; })
   (fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.0.1-rc2-24027"; sha256 = "1rvb076s4ksvmbvnxi4sv2f9f22izqp2rca0scjqya5x1qhcgkp0"; })
   (fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0j0c1wj4ndj21zsgivsc24whiya605603kxrbiw6wkfdync464wq"; })
   (fetchNuGet { pname = "Microsoft.Win32.Registry"; version = "4.4.0"; sha256 = "088j2anh1rnkxdcycw5kgp97ahk7cj741y6kask84880835arsb6"; })
@@ -34,7 +29,7 @@
   (fetchNuGet { pname = "Newtonsoft.Json"; version = "13.0.1"; sha256 = "0fijg0w6iwap8gvzyjnndds0q4b8anwxxvik7y8vgq97dram4srb"; })
   (fetchNuGet { pname = "Newtonsoft.Json"; version = "9.0.1"; sha256 = "0mcy0i7pnfpqm4pcaiyzzji4g0c8i3a5gjz28rrr28110np8304r"; })
   (fetchNuGet { pname = "Newtonsoft.Json.Bson"; version = "1.0.1"; sha256 = "1r1hvj5gjl466bya2bfl5aaj8rbwyf5x1msg710wf3k2llbci1xa"; })
-  (fetchNuGet { pname = "NuGet.Frameworks"; version = "5.11.0"; sha256 = "sha256-n+hxcrf+sXM80Tv9YH9x4+hwTslVidFq4tjBNPAzYnM="; })
+  (fetchNuGet { pname = "NuGet.Frameworks"; version = "5.11.0"; sha256 = "0wv26gq39hfqw9md32amr5771s73f5zn1z9vs4y77cgynxr73s4z"; })
   (fetchNuGet { pname = "runtime.any.System.Collections"; version = "4.3.0"; sha256 = "0bv5qgm6vr47ynxqbnkc7i797fdi8gbjjxii173syrx14nmrkwg0"; })
   (fetchNuGet { pname = "runtime.any.System.Diagnostics.Tools"; version = "4.3.0"; sha256 = "1wl76vk12zhdh66vmagni66h5xbhgqq7zkdpgw21jhxhvlbcl8pk"; })
   (fetchNuGet { pname = "runtime.any.System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "00j6nv2xgmd3bi347k00m7wr542wjlig53rmj28pmw7ddcn97jbn"; })
diff --git a/pkgs/development/tools/cpm/default.nix b/pkgs/development/tools/cpm/default.nix
index 4221b688d53a4..1d5bdc3b694ff 100644
--- a/pkgs/development/tools/cpm/default.nix
+++ b/pkgs/development/tools/cpm/default.nix
@@ -5,11 +5,11 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "cpm";
-  version = "0.35.6";
+  version = "0.36.0";
 
   src = fetchurl {
     url = "https://github.com/cpm-cmake/CPM.cmake/releases/download/v${version}/CPM.cmake";
-    sha256 = "sha256-a0fiqUtpxZrNpVZ0Aa/GesU+mpW/kM/U8el5LE2OyBU=";
+    sha256 = "sha256-F5YA1Z8OdSihipjo7QhqIZMKBcvm9WyfJ5l4WZwW9Cc=";
   };
 
   dontUnpack = true;
diff --git a/pkgs/development/tools/ctlptl/default.nix b/pkgs/development/tools/ctlptl/default.nix
index 972c407167985..569ba12d4923d 100644
--- a/pkgs/development/tools/ctlptl/default.nix
+++ b/pkgs/development/tools/ctlptl/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "ctlptl";
-  version = "0.8.8";
+  version = "0.8.9";
 
   src = fetchFromGitHub {
     owner = "tilt-dev";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-OuLA8Yq0ihvj4wCQxQ/GqN85KW8Cj5eTWN+UZ52T0DU=";
+    sha256 = "sha256-Q8blJNfxdP1V5poOlLXEmFsZ1OxVqi+qok47VCdSSQE=";
   };
 
   vendorSha256 = "sha256-M9B/rfMBjYJb9szmYPVZqURlcv62qHOLJ3ka0v++z0s=";
diff --git a/pkgs/development/tools/database/prisma-engines/default.nix b/pkgs/development/tools/database/prisma-engines/default.nix
index 969a04b3d1919..fd25a497dc003 100644
--- a/pkgs/development/tools/database/prisma-engines/default.nix
+++ b/pkgs/development/tools/database/prisma-engines/default.nix
@@ -59,7 +59,7 @@ rustPlatform.buildRustPackage rec {
     homepage = "https://www.prisma.io/";
     license = licenses.asl20;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ pamplemousse pimeys superherointj tomhoule ];
+    maintainers = with maintainers; [ pamplemousse pimeys tomhoule ];
   };
 }
 
diff --git a/pkgs/development/tools/database/replibyte/default.nix b/pkgs/development/tools/database/replibyte/default.nix
new file mode 100644
index 0000000000000..ed47d29cffe35
--- /dev/null
+++ b/pkgs/development/tools/database/replibyte/default.nix
@@ -0,0 +1,46 @@
+{ lib
+, stdenv
+, rustPlatform
+, fetchFromGitHub
+, fetchpatch
+, pkg-config
+, openssl
+, Security
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "replibyte";
+  version = "0.9.7";
+
+  src = fetchFromGitHub {
+    owner = "Qovery";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "02bdz0464d6gbkgbvn67sgn6cc6p6pjqacblh8nimy0r8b13x2ki";
+  };
+
+  # Lockfile was updated in a commit after the release
+  cargoPatches = [
+    (fetchpatch {
+      url = "https://github.com/Qovery/Replibyte/commit/15f122cc83fff03ae410be705779ab964fa7b375.patch";
+      sha256 = "sha256-v95V4pl/2WN2do2SLVTJIO+5J7esqhC2BZaGBEtDhe0=";
+    })
+  ];
+
+  cargoSha256 = "sha256-Y9CXpJTY/uszAVAbafa2+FumWKWFGaOLhK1FY+Nc+EU=";
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security ];
+
+  cargoBuildFlags = [ "--all-features" ];
+
+  doCheck = false; # requires multiple dbs to be installed
+
+  meta = with lib; {
+    description = "Seed your development database with real data";
+    homepage = "https://github.com/Qovery/replibyte";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ dit7ya ];
+  };
+}
diff --git a/pkgs/development/tools/devpi-server/default.nix b/pkgs/development/tools/devpi-server/default.nix
index dad3b14c4ca9d..9d3d1b71aa9d9 100644
--- a/pkgs/development/tools/devpi-server/default.nix
+++ b/pkgs/development/tools/devpi-server/default.nix
@@ -1,49 +1,56 @@
-{ lib, fetchFromGitHub, python3, nginx }:
+{ lib, fetchFromGitHub, buildPythonApplication, isPy27
+, aiohttp
+, appdirs
+, beautifulsoup4
+, defusedxml
+, devpi-common
+, execnet
+, itsdangerous
+, nginx
+, packaging
+, passlib
+, platformdirs
+, pluggy
+, pyramid
+, pytest-flake8
+, pytestCheckHook
+, repoze_lru
+, setuptools
+, strictyaml
+, waitress
+, webtest
+}:
 
-let
-  py = python3.override {
-    packageOverrides = self: super: {
-      # pyramid 2.0 no longer has a 'pyramid.compat' module
-      pyramid = super.pyramid.overridePythonAttrs (oldAttrs: rec {
-        version = "1.10.8";
-        src = oldAttrs.src.override {
-          inherit version;
-          sha256 = "sha256-t81mWVvvkvgXZLl23d4rL6jk9fMl4C9l9ux/NwiynPY=";
-        };
-      });
-    };
-  };
 
-in with py.pkgs;
 buildPythonApplication rec {
   pname = "devpi-server";
-  version = "6.2.0";
+  version = "6.7.0";
+
+  disabled = isPy27;
 
   src = fetchFromGitHub {
     owner = "devpi";
     repo = "devpi";
-    rev = "68ee291ef29a93f6d921d4927aec8d13919b4a4c";
-    sha256 = "1ivd5dy9f2gq07w8n2gywa0n0d9wv8644l53ni9fz7i69jf8q2fm";
+    rev = "server-${version}";
+    hash = "sha256-tevQ/Ocusz2PythGnedP6r4xARgetVosAc8uTD49H3M=";
   };
 
   sourceRoot = "source/server";
 
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace "pluggy>=0.6.0,<1.0" "pluggy>=0.6.0,<2.0"
-  '';
-
   propagatedBuildInputs = [
-    py
+    aiohttp
     appdirs
-    devpi-common
     defusedxml
+    devpi-common
     execnet
     itsdangerous
-    repoze_lru
+    packaging
     passlib
+    platformdirs
     pluggy
     pyramid
+    repoze_lru
+    setuptools
     strictyaml
     waitress
   ] ++ passlib.optional-dependencies.argon2;
@@ -51,10 +58,10 @@ buildPythonApplication rec {
   checkInputs = [
     beautifulsoup4
     nginx
-    pytestCheckHook
     pytest-flake8
+    pytestCheckHook
     webtest
-  ] ++ lib.optionals isPy27 [ mock ];
+  ];
 
   # root_passwd_hash tries to write to store
   # TestMirrorIndexThings tries to write to /var through ngnix
diff --git a/pkgs/development/tools/doctl/default.nix b/pkgs/development/tools/doctl/default.nix
index e13fa3e94529b..064e5c98c3401 100644
--- a/pkgs/development/tools/doctl/default.nix
+++ b/pkgs/development/tools/doctl/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "doctl";
-  version = "1.82.2";
+  version = "1.83.0";
 
   vendorSha256 = null;
 
@@ -31,7 +31,7 @@ buildGoModule rec {
     owner = "digitalocean";
     repo = "doctl";
     rev = "v${version}";
-    sha256 = "sha256-o8Wp9zrpIkeigQhbsaMURIiL6coOX8OwUDQmRfO8VoY=";
+    sha256 = "sha256-dh22Pawrcq+f9Mm014KhOjMwfSQ0IatFuY7C6RcvGXs=";
   };
 
   meta = with lib; {
diff --git a/pkgs/development/tools/electron/default.nix b/pkgs/development/tools/electron/default.nix
index 237f350fa488f..f941b83bb5b40 100644
--- a/pkgs/development/tools/electron/default.nix
+++ b/pkgs/development/tools/electron/default.nix
@@ -23,7 +23,7 @@ let
 in
 rec {
 
-  electron = electron_20;
+  electron = electron_21;
 
   electron_9 = mkElectron "9.4.4" {
     x86_64-linux = "781d6ca834d415c71078e1c2c198faba926d6fce19e31448bbf4450869135450";
@@ -140,4 +140,13 @@ rec {
     aarch64-darwin = "a09f83442f1e9f4b1edc07445a1dca73d9597529b23d62731eaa3fa0488f4ab0";
     headers = "11cv0p52864k4knwlwakiq8v6rxdv3iz6kvwhn0w8mpap2h5pzii";
   };
+
+  electron_21 = mkElectron "21.0.1" {
+    armv7l-linux = "07cb5a4642248c3662b64fdba8ff7a245674e09bdc52a45e9067e8b508bf4866";
+    aarch64-linux = "86d7eca977042c5fd9204d5aefe2dad5aae81538de1707f04cac59c912edf780";
+    x86_64-linux = "4fd6d7b5a65f44a43165ae77d0484db992b30d6efba478a192e984506fbd52b6";
+    x86_64-darwin = "f1ee563ac2b2defbf856e444c0f8fdbd7afae1a81dc0a29ebb190e2f68f48efd";
+    aarch64-darwin = "0027d3ffe795e44a959e23f0e9e91452e742ea697fc1141eb93f31b840c3a26f";
+    headers = "0ra6gd09ly184m6icj6k4wzp6qrjlbc2hdmy06xp2wcdgzc8dsn8";
+  };
 }
diff --git a/pkgs/development/tools/ent/default.nix b/pkgs/development/tools/ent/default.nix
index 42de24825e412..31c6007fb0a4e 100644
--- a/pkgs/development/tools/ent/default.nix
+++ b/pkgs/development/tools/ent/default.nix
@@ -34,7 +34,7 @@ buildGoModule rec {
     homepage = "https://entgo.io/";
     downloadPage = "https://github.com/ent/ent";
     license = licenses.asl20;
-    maintainers = with maintainers; [ superherointj ];
+    maintainers = with maintainers; [ ];
     mainProgram = "ent";
   };
 }
diff --git a/pkgs/development/tools/fblog/default.nix b/pkgs/development/tools/fblog/default.nix
new file mode 100644
index 0000000000000..63592bb1359bd
--- /dev/null
+++ b/pkgs/development/tools/fblog/default.nix
@@ -0,0 +1,22 @@
+{ lib, rustPlatform, fetchFromGitHub }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "fblog";
+  version = "4.1.0";
+
+  src = fetchFromGitHub {
+    owner = "brocode";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1lj0cv1rmcqg36rxnnjh1dazn0sdggfc9kigjg3id6h0y8k7d9b3";
+  };
+
+  cargoSha256 = "sha256-xHvnxRPxe09EmxUK9j7+V2AA1xJFP3ibwbkSs3FBgcw=";
+
+  meta = with lib; {
+    description = "A small command-line JSON log viewer";
+    homepage = "https://github.com/brocode/fblog";
+    license = licenses.wtfpl;
+    maintainers = with maintainers; [ figsoda ];
+  };
+}
diff --git a/pkgs/development/tools/fq/default.nix b/pkgs/development/tools/fq/default.nix
index befae0e211d06..8c76493430ccd 100644
--- a/pkgs/development/tools/fq/default.nix
+++ b/pkgs/development/tools/fq/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "fq";
-  version = "0.0.9";
+  version = "0.0.10";
 
   src = fetchFromGitHub {
     owner = "wader";
     repo = "fq";
     rev = "v${version}";
-    sha256 = "sha256-tKJ07CNyiL2z/FYd8K3Iurif2hmdHKcNClV3odR2c64=";
+    sha256 = "sha256-0/5MjnBP7Aeczky5VQ1N1siX4/Qw4rjlrWp8+kKaiFo=";
   };
 
-  vendorSha256 = "sha256-v4bpShw78hJE4KupE1VhbbUYmQftwpRmQ67Nuw+HAZU=";
+  vendorSha256 = "sha256-GwHQvL1XxQLkW8jvsKXIpQI5zdlZurQ4PqNFahBpYDc=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/development/tools/fundoc/default.nix b/pkgs/development/tools/fundoc/default.nix
index f7a81a27701f0..dfeab3a6efd71 100644
--- a/pkgs/development/tools/fundoc/default.nix
+++ b/pkgs/development/tools/fundoc/default.nix
@@ -1,4 +1,4 @@
-{ lib, rustPlatform, fetchFromGitHub }:
+{ lib, rustPlatform, fetchFromGitHub, fetchpatch }:
 
 rustPlatform.buildRustPackage rec {
   pname = "fundoc";
@@ -8,10 +8,19 @@ rustPlatform.buildRustPackage rec {
     owner = "csssr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-qmsr4bhErpMzS71NhLep0EWimZb/S3aEhMbeBNa5y8E=";
+    hash = "sha256-qmsr4bhErpMzS71NhLep0EWimZb/S3aEhMbeBNa5y8E=";
   };
 
-  cargoSha256 = "sha256-G2KRjkccS/rfrb7BtotbG6L4WaVnfwY1UEXLnVBLSzM=";
+  cargoPatches = [
+    # https://github.com/CSSSR/fundoc/pull/36
+    (fetchpatch {
+      name = "update-dependencies-for-rust-1.64.patch";
+      url = "https://github.com/CSSSR/fundoc/commit/9e0c5f747088467b70bd385fcb8888950351143f.patch";
+      hash = "sha256-JUTwMdxxt+2jst9DyqgkblZodBSYJzaDtjiLRQ8mJFU=";
+    })
+  ];
+
+  cargoHash = "sha256-1gKxFznoGYGme0UicP73FQt8CnI9IeyHJxLgRcLffm0=";
 
   meta = with lib; {
     description = "Language agnostic documentation generator";
diff --git a/pkgs/development/tools/geckodriver/cargo-lock.patch b/pkgs/development/tools/geckodriver/cargo-lock.patch
deleted file mode 100644
index 2a19cca202e62..0000000000000
--- a/pkgs/development/tools/geckodriver/cargo-lock.patch
+++ /dev/null
@@ -1,1455 +0,0 @@
-diff --git a/testing/geckodriver/Cargo.lock b/testing/geckodriver/Cargo.lock
-new file mode 100644
-index 0000000..4430666
---- /dev/null
-+++ b/Cargo.lock
-@@ -0,0 +1,1449 @@
-+# 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 = "autocfg"
-+version = "1.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
-+
-+[[package]]
-+name = "base64"
-+version = "0.10.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e"
-+dependencies = [
-+ "byteorder",
-+]
-+
-+[[package]]
-+name = "base64"
-+version = "0.12.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff"
-+
-+[[package]]
-+name = "base64"
-+version = "0.13.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd"
-+
-+[[package]]
-+name = "bitflags"
-+version = "1.3.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-+
-+[[package]]
-+name = "block-buffer"
-+version = "0.9.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4"
-+dependencies = [
-+ "generic-array",
-+]
-+
-+[[package]]
-+name = "byteorder"
-+version = "1.4.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
-+
-+[[package]]
-+name = "bytes"
-+version = "0.5.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0e4cec68f03f32e44924783795810fa50a7035d8c8ebe78580ad7e6c703fba38"
-+
-+[[package]]
-+name = "bytes"
-+version = "1.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c4872d67bab6358e59559027aa3b9157c53d9358c51423c17554809a8858e0f8"
-+
-+[[package]]
-+name = "cfg-if"
-+version = "0.1.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
-+
-+[[package]]
-+name = "cfg-if"
-+version = "1.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
-+
-+[[package]]
-+name = "chrono"
-+version = "0.4.19"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73"
-+dependencies = [
-+ "libc",
-+ "num-integer",
-+ "num-traits",
-+ "time",
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "clap"
-+version = "2.34.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
-+dependencies = [
-+ "bitflags",
-+ "strsim",
-+ "term_size",
-+ "textwrap",
-+ "unicode-width",
-+]
-+
-+[[package]]
-+name = "cookie"
-+version = "0.12.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "888604f00b3db336d2af898ec3c1d5d0ddf5e6d462220f2ededc33a87ac4bbd5"
-+dependencies = [
-+ "time",
-+]
-+
-+[[package]]
-+name = "cpufeatures"
-+version = "0.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "95059428f66df56b63431fdb4e1947ed2190586af5c5a8a8b71122bdf5a7f469"
-+dependencies = [
-+ "libc",
-+]
-+
-+[[package]]
-+name = "crc32fast"
-+version = "1.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "738c290dfaea84fc1ca15ad9c168d083b05a714e1efddd8edaab678dc28d2836"
-+dependencies = [
-+ "cfg-if 1.0.0",
-+]
-+
-+[[package]]
-+name = "digest"
-+version = "0.9.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066"
-+dependencies = [
-+ "generic-array",
-+]
-+
-+[[package]]
-+name = "dirs"
-+version = "2.0.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "13aea89a5c93364a98e9b37b2fa237effbb694d5cfe01c5b70941f7eb087d5e3"
-+dependencies = [
-+ "cfg-if 0.1.10",
-+ "dirs-sys",
-+]
-+
-+[[package]]
-+name = "dirs-sys"
-+version = "0.3.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "03d86534ed367a67548dc68113a0f5db55432fdfbb6e6f9d77704397d95d5780"
-+dependencies = [
-+ "libc",
-+ "redox_users",
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "dtoa"
-+version = "0.4.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "56899898ce76aaf4a0f24d914c97ea6ed976d42fec6ad33fcbb0a1103e07b2b0"
-+
-+[[package]]
-+name = "flate2"
-+version = "1.0.22"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1e6988e897c1c9c485f43b47a529cef42fde0547f9d8d41a7062518f1d8fc53f"
-+dependencies = [
-+ "cfg-if 1.0.0",
-+ "crc32fast",
-+ "libc",
-+ "miniz_oxide",
-+]
-+
-+[[package]]
-+name = "fnv"
-+version = "1.0.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
-+
-+[[package]]
-+name = "form_urlencoded"
-+version = "1.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191"
-+dependencies = [
-+ "matches",
-+ "percent-encoding",
-+]
-+
-+[[package]]
-+name = "fuchsia-zircon"
-+version = "0.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
-+dependencies = [
-+ "bitflags",
-+ "fuchsia-zircon-sys",
-+]
-+
-+[[package]]
-+name = "fuchsia-zircon-sys"
-+version = "0.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
-+
-+[[package]]
-+name = "futures"
-+version = "0.3.19"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "28560757fe2bb34e79f907794bb6b22ae8b0e5c669b638a1132f2592b19035b4"
-+dependencies = [
-+ "futures-channel",
-+ "futures-core",
-+ "futures-io",
-+ "futures-sink",
-+ "futures-task",
-+ "futures-util",
-+]
-+
-+[[package]]
-+name = "futures-channel"
-+version = "0.3.19"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ba3dda0b6588335f360afc675d0564c17a77a2bda81ca178a4b6081bd86c7f0b"
-+dependencies = [
-+ "futures-core",
-+ "futures-sink",
-+]
-+
-+[[package]]
-+name = "futures-core"
-+version = "0.3.19"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d0c8ff0461b82559810cdccfde3215c3f373807f5e5232b71479bff7bb2583d7"
-+
-+[[package]]
-+name = "futures-io"
-+version = "0.3.19"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b1f9d34af5a1aac6fb380f735fe510746c38067c5bf16c7fd250280503c971b2"
-+
-+[[package]]
-+name = "futures-sink"
-+version = "0.3.19"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e3055baccb68d74ff6480350f8d6eb8fcfa3aa11bdc1a1ae3afdd0514617d508"
-+
-+[[package]]
-+name = "futures-task"
-+version = "0.3.19"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6ee7c6485c30167ce4dfb83ac568a849fe53274c831081476ee13e0dce1aad72"
-+
-+[[package]]
-+name = "futures-util"
-+version = "0.3.19"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d9b5cf40b47a271f77a8b1bec03ca09044d99d2372c0de244e66430761127164"
-+dependencies = [
-+ "futures-core",
-+ "futures-sink",
-+ "futures-task",
-+ "pin-project-lite 0.2.8",
-+ "pin-utils",
-+]
-+
-+[[package]]
-+name = "geckodriver"
-+version = "0.30.0"
-+dependencies = [
-+ "base64 0.12.3",
-+ "chrono",
-+ "clap",
-+ "hyper",
-+ "lazy_static",
-+ "log",
-+ "marionette",
-+ "mozdevice",
-+ "mozprofile",
-+ "mozrunner",
-+ "mozversion",
-+ "regex",
-+ "serde",
-+ "serde_derive",
-+ "serde_json",
-+ "serde_yaml",
-+ "uuid",
-+ "webdriver",
-+ "zip",
-+]
-+
-+[[package]]
-+name = "generic-array"
-+version = "0.14.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "fd48d33ec7f05fbfa152300fdad764757cbded343c1aa1cff2fbaf4134851803"
-+dependencies = [
-+ "typenum",
-+ "version_check",
-+]
-+
-+[[package]]
-+name = "getrandom"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7fcd999463524c52659517fe2cea98493cfe485d10565e7b0fb07dbba7ad2753"
-+dependencies = [
-+ "cfg-if 1.0.0",
-+ "libc",
-+ "wasi",
-+]
-+
-+[[package]]
-+name = "h2"
-+version = "0.2.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "5e4728fd124914ad25e99e3d15a9361a879f6620f63cb56bbb08f95abb97a535"
-+dependencies = [
-+ "bytes 0.5.6",
-+ "fnv",
-+ "futures-core",
-+ "futures-sink",
-+ "futures-util",
-+ "http",
-+ "indexmap",
-+ "slab",
-+ "tokio",
-+ "tokio-util",
-+ "tracing",
-+ "tracing-futures",
-+]
-+
-+[[package]]
-+name = "hashbrown"
-+version = "0.11.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e"
-+
-+[[package]]
-+name = "headers"
-+version = "0.3.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a4c4eb0471fcb85846d8b0690695ef354f9afb11cb03cac2e1d7c9253351afb0"
-+dependencies = [
-+ "base64 0.13.0",
-+ "bitflags",
-+ "bytes 1.1.0",
-+ "headers-core",
-+ "http",
-+ "httpdate 1.0.2",
-+ "mime",
-+ "sha-1",
-+]
-+
-+[[package]]
-+name = "headers-core"
-+version = "0.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e7f66481bfee273957b1f20485a4ff3362987f85b2c236580d81b4eb7a326429"
-+dependencies = [
-+ "http",
-+]
-+
-+[[package]]
-+name = "http"
-+version = "0.2.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "31f4c6746584866f0feabcc69893c5b51beef3831656a968ed7ae254cdc4fd03"
-+dependencies = [
-+ "bytes 1.1.0",
-+ "fnv",
-+ "itoa 1.0.1",
-+]
-+
-+[[package]]
-+name = "http-body"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "13d5ff830006f7646652e057693569bfe0d51760c0085a071769d142a205111b"
-+dependencies = [
-+ "bytes 0.5.6",
-+ "http",
-+]
-+
-+[[package]]
-+name = "httparse"
-+version = "1.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "acd94fdbe1d4ff688b67b04eee2e17bd50995534a61539e45adfefb45e5e5503"
-+
-+[[package]]
-+name = "httpdate"
-+version = "0.3.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "494b4d60369511e7dea41cf646832512a94e542f68bb9c49e54518e0f468eb47"
-+
-+[[package]]
-+name = "httpdate"
-+version = "1.0.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421"
-+
-+[[package]]
-+name = "hyper"
-+version = "0.13.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8a6f157065790a3ed2f88679250419b5cdd96e714a0d65f7797fd337186e96bb"
-+dependencies = [
-+ "bytes 0.5.6",
-+ "futures-channel",
-+ "futures-core",
-+ "futures-util",
-+ "h2",
-+ "http",
-+ "http-body",
-+ "httparse",
-+ "httpdate 0.3.2",
-+ "itoa 0.4.8",
-+ "pin-project 1.0.10",
-+ "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.8.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "282a6247722caba404c065016bbfa522806e51714c34f5dfc3e4a3a46fcb4223"
-+dependencies = [
-+ "autocfg",
-+ "hashbrown",
-+]
-+
-+[[package]]
-+name = "iovec"
-+version = "0.1.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e"
-+dependencies = [
-+ "libc",
-+]
-+
-+[[package]]
-+name = "itoa"
-+version = "0.4.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4"
-+
-+[[package]]
-+name = "itoa"
-+version = "1.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35"
-+
-+[[package]]
-+name = "kernel32-sys"
-+version = "0.2.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
-+dependencies = [
-+ "winapi 0.2.8",
-+ "winapi-build",
-+]
-+
-+[[package]]
-+name = "lazy_static"
-+version = "1.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-+
-+[[package]]
-+name = "libc"
-+version = "0.2.112"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1b03d17f364a3a042d5e5d46b053bbbf82c92c9430c592dd4c064dc6ee997125"
-+
-+[[package]]
-+name = "line-wrap"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f30344350a2a51da54c1d53be93fade8a237e545dbcc4bdbe635413f2117cab9"
-+dependencies = [
-+ "safemem",
-+]
-+
-+[[package]]
-+name = "linked-hash-map"
-+version = "0.5.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7fb9b38af92608140b86b693604b9ffcc5824240a484d1ecd4795bacb2fe88f3"
-+
-+[[package]]
-+name = "log"
-+version = "0.4.14"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710"
-+dependencies = [
-+ "cfg-if 1.0.0",
-+]
-+
-+[[package]]
-+name = "marionette"
-+version = "0.1.0"
-+dependencies = [
-+ "serde",
-+ "serde_json",
-+ "serde_repr",
-+]
-+
-+[[package]]
-+name = "matches"
-+version = "0.1.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f"
-+
-+[[package]]
-+name = "memchr"
-+version = "2.4.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a"
-+
-+[[package]]
-+name = "mime"
-+version = "0.3.16"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d"
-+
-+[[package]]
-+name = "mime_guess"
-+version = "2.0.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2684d4c2e97d99848d30b324b00c8fcc7e5c897b7cbb5819b09e7c90e8baf212"
-+dependencies = [
-+ "mime",
-+ "unicase",
-+]
-+
-+[[package]]
-+name = "miniz_oxide"
-+version = "0.4.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b"
-+dependencies = [
-+ "adler",
-+ "autocfg",
-+]
-+
-+[[package]]
-+name = "mio"
-+version = "0.6.23"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "4afd66f5b91bf2a3bc13fad0e21caedac168ca4c707504e75585648ae80e4cc4"
-+dependencies = [
-+ "cfg-if 0.1.10",
-+ "fuchsia-zircon",
-+ "fuchsia-zircon-sys",
-+ "iovec",
-+ "kernel32-sys",
-+ "libc",
-+ "log",
-+ "miow",
-+ "net2",
-+ "slab",
-+ "winapi 0.2.8",
-+]
-+
-+[[package]]
-+name = "miow"
-+version = "0.2.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ebd808424166322d4a38da87083bfddd3ac4c131334ed55856112eb06d46944d"
-+dependencies = [
-+ "kernel32-sys",
-+ "net2",
-+ "winapi 0.2.8",
-+ "ws2_32-sys",
-+]
-+
-+[[package]]
-+name = "mozdevice"
-+version = "0.4.0"
-+dependencies = [
-+ "log",
-+ "once_cell",
-+ "regex",
-+ "tempfile",
-+ "unix_path",
-+ "uuid",
-+ "walkdir",
-+]
-+
-+[[package]]
-+name = "mozprofile"
-+version = "0.7.3"
-+dependencies = [
-+ "tempfile",
-+]
-+
-+[[package]]
-+name = "mozrunner"
-+version = "0.13.0"
-+dependencies = [
-+ "dirs",
-+ "log",
-+ "mozprofile",
-+ "plist",
-+ "winreg",
-+]
-+
-+[[package]]
-+name = "mozversion"
-+version = "0.4.2"
-+dependencies = [
-+ "regex",
-+ "rust-ini",
-+ "semver",
-+]
-+
-+[[package]]
-+name = "msdos_time"
-+version = "0.1.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "aad9dfe950c057b1bfe9c1f2aa51583a8468ef2a5baba2ebbe06d775efeb7729"
-+dependencies = [
-+ "time",
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "net2"
-+version = "0.2.37"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "391630d12b68002ae1e25e8f974306474966550ad82dac6886fb8910c19568ae"
-+dependencies = [
-+ "cfg-if 0.1.10",
-+ "libc",
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "num-integer"
-+version = "0.1.44"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db"
-+dependencies = [
-+ "autocfg",
-+ "num-traits",
-+]
-+
-+[[package]]
-+name = "num-traits"
-+version = "0.2.14"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
-+dependencies = [
-+ "autocfg",
-+]
-+
-+[[package]]
-+name = "once_cell"
-+version = "1.9.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "da32515d9f6e6e489d7bc9d84c71b060db7247dc035bbe44eac88cf87486d8d5"
-+
-+[[package]]
-+name = "opaque-debug"
-+version = "0.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
-+
-+[[package]]
-+name = "percent-encoding"
-+version = "2.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
-+
-+[[package]]
-+name = "pin-project"
-+version = "0.4.29"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9615c18d31137579e9ff063499264ddc1278e7b1982757ebc111028c4d1dc909"
-+dependencies = [
-+ "pin-project-internal 0.4.29",
-+]
-+
-+[[package]]
-+name = "pin-project"
-+version = "1.0.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "58ad3879ad3baf4e44784bc6a718a8698867bb991f8ce24d1bcbe2cfb4c3a75e"
-+dependencies = [
-+ "pin-project-internal 1.0.10",
-+]
-+
-+[[package]]
-+name = "pin-project-internal"
-+version = "0.4.29"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "044964427019eed9d49d9d5bbce6047ef18f37100ea400912a9fa4a3523ab12a"
-+dependencies = [
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "pin-project-internal"
-+version = "1.0.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "744b6f092ba29c3650faf274db506afd39944f48420f6c86b17cfe0ee1cb36bb"
-+dependencies = [
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "pin-project-lite"
-+version = "0.1.12"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "257b64915a082f7811703966789728173279bdebb956b143dbcd23f6f970a777"
-+
-+[[package]]
-+name = "pin-project-lite"
-+version = "0.2.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e280fbe77cc62c91527259e9442153f4688736748d24660126286329742b4c6c"
-+
-+[[package]]
-+name = "pin-utils"
-+version = "0.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
-+
-+[[package]]
-+name = "plist"
-+version = "0.5.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9b59eb8d91dfa89208ec74a920e3b55f840476cf46568026c18dbaa2999e0d48"
-+dependencies = [
-+ "base64 0.10.1",
-+ "chrono",
-+ "indexmap",
-+ "line-wrap",
-+ "serde",
-+ "xml-rs",
-+]
-+
-+[[package]]
-+name = "podio"
-+version = "0.1.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b18befed8bc2b61abc79a457295e7e838417326da1586050b919414073977f19"
-+
-+[[package]]
-+name = "ppv-lite86"
-+version = "0.2.16"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872"
-+
-+[[package]]
-+name = "proc-macro2"
-+version = "1.0.36"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029"
-+dependencies = [
-+ "unicode-xid",
-+]
-+
-+[[package]]
-+name = "quote"
-+version = "1.0.14"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "47aa80447ce4daf1717500037052af176af5d38cc3e571d9ec1c7353fc10c87d"
-+dependencies = [
-+ "proc-macro2",
-+]
-+
-+[[package]]
-+name = "rand"
-+version = "0.8.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2e7573632e6454cf6b99d7aac4ccca54be06da05aca2ef7423d22d27d4d4bcd8"
-+dependencies = [
-+ "libc",
-+ "rand_chacha",
-+ "rand_core",
-+ "rand_hc",
-+]
-+
-+[[package]]
-+name = "rand_chacha"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
-+dependencies = [
-+ "ppv-lite86",
-+ "rand_core",
-+]
-+
-+[[package]]
-+name = "rand_core"
-+version = "0.6.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7"
-+dependencies = [
-+ "getrandom",
-+]
-+
-+[[package]]
-+name = "rand_hc"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d51e9f596de227fda2ea6c84607f5558e196eeaf43c986b724ba4fb8fdf497e7"
-+dependencies = [
-+ "rand_core",
-+]
-+
-+[[package]]
-+name = "redox_syscall"
-+version = "0.2.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8383f39639269cde97d255a32bdb68c047337295414940c68bdd30c2e13203ff"
-+dependencies = [
-+ "bitflags",
-+]
-+
-+[[package]]
-+name = "redox_users"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "528532f3d801c87aec9def2add9ca802fe569e44a544afe633765267840abe64"
-+dependencies = [
-+ "getrandom",
-+ "redox_syscall",
-+]
-+
-+[[package]]
-+name = "regex"
-+version = "1.5.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461"
-+dependencies = [
-+ "aho-corasick",
-+ "memchr",
-+ "regex-syntax",
-+]
-+
-+[[package]]
-+name = "regex-syntax"
-+version = "0.6.25"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
-+
-+[[package]]
-+name = "remove_dir_all"
-+version = "0.5.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
-+dependencies = [
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "rust-ini"
-+version = "0.10.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8a654c5bda722c699be6b0fe4c0d90de218928da5b724c3e467fc48865c37263"
-+
-+[[package]]
-+name = "ryu"
-+version = "1.0.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "73b4b750c782965c211b42f022f59af1fbceabdd026623714f104152f1ec149f"
-+
-+[[package]]
-+name = "safemem"
-+version = "0.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072"
-+
-+[[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 = "scoped-tls"
-+version = "1.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ea6a9290e3c9cf0f18145ef7ffa62d68ee0bf5fcd651017e586dc7fd5da448c2"
-+
-+[[package]]
-+name = "semver"
-+version = "0.9.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
-+dependencies = [
-+ "semver-parser",
-+]
-+
-+[[package]]
-+name = "semver-parser"
-+version = "0.7.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
-+
-+[[package]]
-+name = "serde"
-+version = "1.0.133"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "97565067517b60e2d1ea8b268e59ce036de907ac523ad83a0475da04e818989a"
-+dependencies = [
-+ "serde_derive",
-+]
-+
-+[[package]]
-+name = "serde_derive"
-+version = "1.0.133"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ed201699328568d8d08208fdd080e3ff594e6c422e438b6705905da01005d537"
-+dependencies = [
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "serde_json"
-+version = "1.0.74"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ee2bb9cd061c5865d345bb02ca49fcef1391741b672b54a0bf7b679badec3142"
-+dependencies = [
-+ "itoa 1.0.1",
-+ "ryu",
-+ "serde",
-+]
-+
-+[[package]]
-+name = "serde_repr"
-+version = "0.1.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "98d0516900518c29efa217c298fa1f4e6c6ffc85ae29fd7f4ee48f176e1a9ed5"
-+dependencies = [
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "serde_urlencoded"
-+version = "0.6.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9ec5d77e2d4c73717816afac02670d5c4f534ea95ed430442cad02e7a6e32c97"
-+dependencies = [
-+ "dtoa",
-+ "itoa 0.4.8",
-+ "serde",
-+ "url",
-+]
-+
-+[[package]]
-+name = "serde_yaml"
-+version = "0.8.23"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a4a521f2940385c165a24ee286aa8599633d162077a54bdcae2a6fd5a7bfa7a0"
-+dependencies = [
-+ "indexmap",
-+ "ryu",
-+ "serde",
-+ "yaml-rust",
-+]
-+
-+[[package]]
-+name = "sha-1"
-+version = "0.9.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "99cd6713db3cf16b6c84e06321e049a9b9f699826e16096d23bbcc44d15d51a6"
-+dependencies = [
-+ "block-buffer",
-+ "cfg-if 1.0.0",
-+ "cpufeatures",
-+ "digest",
-+ "opaque-debug",
-+]
-+
-+[[package]]
-+name = "slab"
-+version = "0.4.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9def91fd1e018fe007022791f865d0ccc9b3a0d5001e01aabb8b40e46000afb5"
-+
-+[[package]]
-+name = "socket2"
-+version = "0.3.19"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "122e570113d28d773067fab24266b66753f6ea915758651696b6e35e49f88d6e"
-+dependencies = [
-+ "cfg-if 1.0.0",
-+ "libc",
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "strsim"
-+version = "0.8.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
-+
-+[[package]]
-+name = "syn"
-+version = "1.0.85"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a684ac3dcd8913827e18cd09a68384ee66c1de24157e3c556c9ab16d85695fb7"
-+dependencies = [
-+ "proc-macro2",
-+ "quote",
-+ "unicode-xid",
-+]
-+
-+[[package]]
-+name = "tempfile"
-+version = "3.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "dac1c663cfc93810f88aed9b8941d48cabf856a1b111c29a40439018d870eb22"
-+dependencies = [
-+ "cfg-if 1.0.0",
-+ "libc",
-+ "rand",
-+ "redox_syscall",
-+ "remove_dir_all",
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "term_size"
-+version = "0.3.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1e4129646ca0ed8f45d09b929036bafad5377103edd06e50bf574b353d2b08d9"
-+dependencies = [
-+ "libc",
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "textwrap"
-+version = "0.11.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
-+dependencies = [
-+ "term_size",
-+ "unicode-width",
-+]
-+
-+[[package]]
-+name = "time"
-+version = "0.1.43"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438"
-+dependencies = [
-+ "libc",
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "tinyvec"
-+version = "1.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2c1c1d5a42b6245520c249549ec267180beaffcc0615401ac8e31853d4b6d8d2"
-+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 = "0.2.25"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6703a273949a90131b290be1fe7b039d0fc884aa1935860dfcbe056f28cd8092"
-+dependencies = [
-+ "bytes 0.5.6",
-+ "fnv",
-+ "futures-core",
-+ "iovec",
-+ "lazy_static",
-+ "memchr",
-+ "mio",
-+ "pin-project-lite 0.1.12",
-+ "slab",
-+]
-+
-+[[package]]
-+name = "tokio-util"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "be8242891f2b6cbef26a2d7e8605133c2c554cd35b3e4948ea892d6d68436499"
-+dependencies = [
-+ "bytes 0.5.6",
-+ "futures-core",
-+ "futures-sink",
-+ "log",
-+ "pin-project-lite 0.1.12",
-+ "tokio",
-+]
-+
-+[[package]]
-+name = "tower-service"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "360dfd1d6d30e05fda32ace2c8c70e9c0a9da713275777f5a4dbb8a1893930c6"
-+
-+[[package]]
-+name = "tracing"
-+version = "0.1.29"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "375a639232caf30edfc78e8d89b2d4c375515393e7af7e16f01cd96917fb2105"
-+dependencies = [
-+ "cfg-if 1.0.0",
-+ "log",
-+ "pin-project-lite 0.2.8",
-+ "tracing-core",
-+]
-+
-+[[package]]
-+name = "tracing-core"
-+version = "0.1.21"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1f4ed65637b8390770814083d20756f87bfa2c21bf2f110babdc5438351746e4"
-+dependencies = [
-+ "lazy_static",
-+]
-+
-+[[package]]
-+name = "tracing-futures"
-+version = "0.2.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2"
-+dependencies = [
-+ "pin-project 1.0.10",
-+ "tracing",
-+]
-+
-+[[package]]
-+name = "try-lock"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642"
-+
-+[[package]]
-+name = "typenum"
-+version = "1.15.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "dcf81ac59edc17cc8697ff311e8f5ef2d99fcbd9817b34cec66f90b6c3dfd987"
-+
-+[[package]]
-+name = "unicase"
-+version = "2.6.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6"
-+dependencies = [
-+ "version_check",
-+]
-+
-+[[package]]
-+name = "unicode-bidi"
-+version = "0.3.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1a01404663e3db436ed2746d9fefef640d868edae3cceb81c3b8d5732fda678f"
-+
-+[[package]]
-+name = "unicode-normalization"
-+version = "0.1.19"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d54590932941a9e9266f0832deed84ebe1bf2e4c9e4a3554d393d18f5e854bf9"
-+dependencies = [
-+ "tinyvec",
-+]
-+
-+[[package]]
-+name = "unicode-segmentation"
-+version = "1.8.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8895849a949e7845e06bd6dc1aa51731a103c42707010a5b591c0038fb73385b"
-+
-+[[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.2.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3"
-+
-+[[package]]
-+name = "unix_path"
-+version = "1.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "af8e291873ae77c4c8d9c9b34d0bee68a35b048fb39c263a5155e0e353783eaf"
-+dependencies = [
-+ "unix_str",
-+]
-+
-+[[package]]
-+name = "unix_str"
-+version = "1.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2ace0b4755d0a2959962769239d56267f8a024fef2d9b32666b3dcd0946b0906"
-+
-+[[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 = "urlencoding"
-+version = "1.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "5a1f0175e03a0973cf4afd476bef05c26e228520400eb1fd473ad417b1c00ffb"
-+
-+[[package]]
-+name = "uuid"
-+version = "0.8.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7"
-+dependencies = [
-+ "getrandom",
-+ "serde",
-+]
-+
-+[[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 0.3.9",
-+ "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 = "warp"
-+version = "0.2.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f41be6df54c97904af01aa23e613d4521eed7ab23537cede692d4058f6449407"
-+dependencies = [
-+ "bytes 0.5.6",
-+ "futures",
-+ "headers",
-+ "http",
-+ "hyper",
-+ "log",
-+ "mime",
-+ "mime_guess",
-+ "pin-project 0.4.29",
-+ "scoped-tls",
-+ "serde",
-+ "serde_json",
-+ "serde_urlencoded",
-+ "tokio",
-+ "tower-service",
-+ "tracing",
-+ "tracing-futures",
-+ "urlencoding",
-+]
-+
-+[[package]]
-+name = "wasi"
-+version = "0.10.2+wasi-snapshot-preview1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
-+
-+[[package]]
-+name = "webdriver"
-+version = "0.44.0"
-+dependencies = [
-+ "base64 0.12.3",
-+ "bytes 0.5.6",
-+ "cookie",
-+ "http",
-+ "log",
-+ "once_cell",
-+ "regex",
-+ "serde",
-+ "serde_derive",
-+ "serde_json",
-+ "time",
-+ "tokio",
-+ "unicode-segmentation",
-+ "url",
-+ "warp",
-+]
-+
-+[[package]]
-+name = "winapi"
-+version = "0.2.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
-+
-+[[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-build"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
-+
-+[[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 0.3.9",
-+]
-+
-+[[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 = "winreg"
-+version = "0.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a27a759395c1195c4cc5cda607ef6f8f6498f64e78f7900f5de0a127a424704a"
-+dependencies = [
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "ws2_32-sys"
-+version = "0.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e"
-+dependencies = [
-+ "winapi 0.2.8",
-+ "winapi-build",
-+]
-+
-+[[package]]
-+name = "xml-rs"
-+version = "0.8.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d2d7d3948613f75c98fd9328cfdcc45acc4d360655289d0a7d4ec931392200a3"
-+
-+[[package]]
-+name = "yaml-rust"
-+version = "0.4.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85"
-+dependencies = [
-+ "linked-hash-map",
-+]
-+
-+[[package]]
-+name = "zip"
-+version = "0.4.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "36b9e08fb518a65cf7e08a1e482573eb87a2f4f8c6619316612a3c1f162fe822"
-+dependencies = [
-+ "flate2",
-+ "msdos_time",
-+ "podio",
-+ "time",
-+]
diff --git a/pkgs/development/tools/geckodriver/default.nix b/pkgs/development/tools/geckodriver/default.nix
index beb55c21a5041..203178eed8d87 100644
--- a/pkgs/development/tools/geckodriver/default.nix
+++ b/pkgs/development/tools/geckodriver/default.nix
@@ -1,28 +1,23 @@
 { lib
-, fetchzip
+, fetchFromGitHub
 , rustPlatform
 , stdenv
 , Security
 , libiconv
 }:
 
-rustPlatform.buildRustPackage {
-  version = "0.30.0";
+rustPlatform.buildRustPackage rec {
+  version = "0.31.0";
   pname = "geckodriver";
-  sourceRoot = "source/testing/geckodriver";
 
-  # Source revisions are noted alongside the binary releases:
-  # https://github.com/mozilla/geckodriver/releases
-  src = (fetchzip {
-    url = "https://hg.mozilla.org/mozilla-central/archive/d372710b98a6ce5d1b2a9dffd53a879091c5c148.zip/testing";
-    sha256 = "0d27h9c8vw4rs9c2l9wms4lc931nbp2g5hacsh24zhc9y3v454i6";
-  }).overrideAttrs (_: {
-    # normally guessed by the url's file extension, force it to unpack properly
-    unpackCmd = "unzip $curSrc";
-  });
+  src = fetchFromGitHub {
+    owner = "mozilla";
+    repo = "geckodriver";
+    rev = "refs/tags/v${version}";
+    sha256 = "sha256-sUu1D3HAxUTQFas4ylQ9LYC0dcKPyljoU+keENg17os=";
+  };
 
-  cargoPatches = [ ./cargo-lock.patch ];
-  cargoSha256 = "08zcrhrmxh3c3iwd7kbnr19lfisikb779i2r7ir7b1i1ynmi4v6r";
+  cargoSha256 = "sha256-alwsxC1xDAAhqMTkgmUO4iDDUAK0lisXn3Yxgo7ZBhg=";
 
   buildInputs = lib.optionals stdenv.isDarwin [ libiconv Security ];
 
diff --git a/pkgs/development/tools/gojq/default.nix b/pkgs/development/tools/gojq/default.nix
index 14ec4ca792b7d..5c85a5c174182 100644
--- a/pkgs/development/tools/gojq/default.nix
+++ b/pkgs/development/tools/gojq/default.nix
@@ -11,9 +11,7 @@ buildGoModule rec {
     sha256 = "sha256-AII3mC+JWOP0x4zf8FQdRhOmckPgY7BDRoKICCFkn9Q=";
   };
 
-  proxyVendor = true;
-
-  vendorSha256 = "sha256-kq9vfmST8M69yiWqzsM/ORG7F7ERtEv9dyfy8u3sWYk=";
+  vendorSha256 = "sha256-RtackQ4uJo1j2jePu9xd0idQBKbwBh4L2spiS2mRynw=";
 
   ldflags = [ "-s" "-w" ];
 
diff --git a/pkgs/development/tools/golangci-lint/default.nix b/pkgs/development/tools/golangci-lint/default.nix
index 87cb9258c83e7..ec0cd56e019b3 100644
--- a/pkgs/development/tools/golangci-lint/default.nix
+++ b/pkgs/development/tools/golangci-lint/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "golangci-lint";
-  version = "1.49.0";
+  version = "1.50.0";
 
   src = fetchFromGitHub {
     owner = "golangci";
     repo = "golangci-lint";
     rev = "v${version}";
-    sha256 = "sha256-L2PtDiMtT+vcMU4uW3GYZexLtDqnHRuUts7bIh/g0YA=";
+    sha256 = "sha256-bYLKju4+X28KpAcd1OcniTHwLZz97qDj9ZruGFqspaY=";
   };
 
-  vendorSha256 = "sha256-VPkOFUwp0Bm/YyBCbfQTa+R1bjau7Ai+p/TbgNxeejc=";
+  vendorSha256 = "sha256-DYfoPyE8MA2NiPDE1y8bE+tOn81adkN9zQJ7G3dqA64=";
 
   doCheck = false;
 
diff --git a/pkgs/development/tools/goresym/default.nix b/pkgs/development/tools/goresym/default.nix
index 1cd154fe0f7c2..ac804f6d11c59 100644
--- a/pkgs/development/tools/goresym/default.nix
+++ b/pkgs/development/tools/goresym/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "goresym";
-  version = "1.4";
+  version = "1.5";
 
   src = fetchFromGitHub {
     owner = "mandiant";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-wb/qyMLhqNLpgOl9YFuByTxkUBK4GdhdWzAMcWjOG/U=";
+    sha256 = "sha256-j548FzbxrtJz2N5y9ItO6F+52vQ+2RVCFPUW1cqeJUA=";
   };
 
   subPackages = [ "." ];
diff --git a/pkgs/development/tools/hover/default.nix b/pkgs/development/tools/hover/default.nix
index 388525db6de51..f42bd44c50e20 100644
--- a/pkgs/development/tools/hover/default.nix
+++ b/pkgs/development/tools/hover/default.nix
@@ -41,7 +41,7 @@ let
       homepage = "https://github.com/go-flutter-desktop/hover";
       license = licenses.bsd3;
       platforms = platforms.linux;
-      maintainers = with maintainers; [ ericdallo flexagoon ];
+      maintainers = with maintainers; [ ericdallo ];
     };
 
     subPackages = [ "." ];
diff --git a/pkgs/development/tools/jaq/default.nix b/pkgs/development/tools/jaq/default.nix
index 9c28cdf73994c..bac766ac60764 100644
--- a/pkgs/development/tools/jaq/default.nix
+++ b/pkgs/development/tools/jaq/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "jaq";
-  version = "0.8.0";
+  version = "0.8.2";
 
   src = fetchFromGitHub {
     owner = "01mf02";
     repo = "jaq";
     rev = "v${version}";
-    sha256 = "sha256-4WCVXrw/v3cGsl7S1nGqKmWrIHeM/ODCXQBxQJgZLjw=";
+    sha256 = "sha256-a2LJUWRQsUnwU0DZnO5T+geeVOBXPfsBptEMnO+jnFA=";
   };
 
-  cargoSha256 = "sha256-D+Wpzgj05PJcMlGS9eL43SdncHO/q1Wt00gvPlC7ZAE=";
+  cargoSha256 = "sha256-IJqM9XuJSEZadYc38TnyVrszuL5noYktnlyVu7IBE5k=";
 
   buildInputs = lib.optionals stdenv.isDarwin [ Security ];
 
diff --git a/pkgs/development/tools/jql/default.nix b/pkgs/development/tools/jql/default.nix
index b91777a8e56c9..fca3f825d54d1 100644
--- a/pkgs/development/tools/jql/default.nix
+++ b/pkgs/development/tools/jql/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "jql";
-  version = "5.0.2";
+  version = "5.1.0";
 
   src = fetchFromGitHub {
     owner = "yamafaktory";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-bCq8EUczhBx/txafdJvTKqbJoZaGZlrdl87TQt8iMDM=";
+    sha256 = "sha256-8qL6ryCbCdHA9Zl/yScQ8tJh+i0Vr4JeH+fQYGb+wPE=";
   };
 
-  cargoSha256 = "sha256-V+fzGg0MOCG8ikuiFtN3k6825QXRfBRpUKfdTjQVChM=";
+  cargoSha256 = "sha256-E7uuvE2xVyAiDfMEFbvVHt4agPEEt7JwF+SRFe+fqYk=";
 
   meta = with lib; {
     description = "A JSON Query Language CLI tool built with Rust";
diff --git a/pkgs/development/tools/jqp/default.nix b/pkgs/development/tools/jqp/default.nix
index 7563972d0e17b..519bef162ac2a 100644
--- a/pkgs/development/tools/jqp/default.nix
+++ b/pkgs/development/tools/jqp/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "jqp";
-  version = "0.2.0";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "noahgorstein";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-dVarasXLJrB/akMUvjZn313+bqM39Ji4l91PAxwmfG0=";
+    sha256 = "sha256-f1HSwo0TwNpw02bNT1dzfovXcRQuP/IxAmomBgKuQxQ=";
   };
 
-  vendorSha256 = "sha256-KlnKWeLbmLH6M5+oD/BYuqkTyrV9Xo7ibrNjukFe7ss=";
+  vendorSha256 = "sha256-cx5esdxAJInxXHXx0xeKQNGTDBjKD3GhnY0Fu/Tzy9U=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/development/tools/leaps/default.nix b/pkgs/development/tools/leaps/default.nix
index 934881b6781c4..ce948edd5aa35 100644
--- a/pkgs/development/tools/leaps/default.nix
+++ b/pkgs/development/tools/leaps/default.nix
@@ -1,24 +1,27 @@
-{ lib, buildGoPackage, fetchFromGitHub }:
+{ lib, buildGoModule, fetchFromGitHub, testers, leaps }:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "leaps";
-  version = "0.9.0";
-
-  goPackagePath = "github.com/Jeffail/leaps";
+  version = "0.9.1";
 
   src = fetchFromGitHub {
     owner = "Jeffail";
     repo = "leaps";
-    sha256 = "1bzas7ixyfsfh81lnvplhx59yghkmnmy5p7jv9rnwp219dwbylpz";
     rev = "v${version}";
+    sha256 = "sha256-9AYE8+K6B6/odwNR+UhTTqmJ1RD6HhKvtC3WibWUZic=";
   };
 
-  goDeps = ./deps.nix;
+  proxyVendor = true; # darwin/linux hash mismatch
+  vendorSha256 = "sha256-0dwUOoV2bxPB+B6CKxJPImPIDlBMPcm0AwEMrVUkALc=";
+
+  ldflags = [ "-s" "-w" "-X main.version=${version}" ];
+
+  passthru.tests.version = testers.testVersion { package = leaps; };
 
-  meta = {
+  meta = with lib; {
     description = "A pair programming tool and library written in Golang";
     homepage = "https://github.com/jeffail/leaps/";
-    license = "MIT";
+    license = licenses.mit;
     maintainers = with lib.maintainers; [ qknight ];
     platforms = lib.platforms.unix;
   };
diff --git a/pkgs/development/tools/leaps/deps.nix b/pkgs/development/tools/leaps/deps.nix
deleted file mode 100644
index ee06659c72ec6..0000000000000
--- a/pkgs/development/tools/leaps/deps.nix
+++ /dev/null
@@ -1,165 +0,0 @@
-# file generated from Gopkg.lock using dep2nix (https://github.com/nixcloud/dep2nix)
-[
-  {
-    goPackagePath  = "github.com/Azure/go-autorest";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Azure/go-autorest";
-      rev =  "fc3b03a2d2d1f43fad3007038bd16f044f870722";
-      sha256 = "1j6aqbizlpiqcywdsj4dy4i76g8fbqc7d61c22ppc9knw0968h4r";
-    };
-  }
-  {
-    goPackagePath  = "github.com/Jeffail/gabs";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Jeffail/gabs";
-      rev =  "2a3aa15961d5fee6047b8151b67ac2f08ba2c48c";
-      sha256 = "1fx6fyl5x037viwlj319f3gsq749an17q5l6n2zvf3ny5wq0iqxr";
-    };
-  }
-  {
-    goPackagePath  = "github.com/amir/raidman";
-    fetch = {
-      type = "git";
-      url = "https://github.com/amir/raidman";
-      rev =  "1ccc43bfb9c93cb401a4025e49c64ba71e5e668b";
-      sha256 = "074ckbyslrwn23q4x01hn3j7c3xngagn36lbli2g51n9j3x14jxr";
-    };
-  }
-  {
-    goPackagePath  = "github.com/azure/azure-sdk-for-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/azure/azure-sdk-for-go";
-      rev =  "21b68149ccf7c16b3f028bb4c7fd0ab458fe308f";
-      sha256 = "0zlhrh3n9mc5w7r0sdaqmpqfm2d290b50an0k1bvrr892m4cnxaq";
-    };
-  }
-  {
-    goPackagePath  = "github.com/cenkalti/backoff";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cenkalti/backoff";
-      rev =  "61153c768f31ee5f130071d08fc82b85208528de";
-      sha256 = "08x77mgb9zsj047n74rx6c16jjx985lmy4s6fl58mdgxgxjv54y5";
-    };
-  }
-  {
-    goPackagePath  = "github.com/dgrijalva/jwt-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/dgrijalva/jwt-go";
-      rev =  "dbeaa9332f19a944acb5736b4456cfcc02140e29";
-      sha256 = "0zk6l6kzsjdijfn7c4h0aywdjx5j2hjwi67vy1k6wr46hc8ks2hs";
-    };
-  }
-  {
-    goPackagePath  = "github.com/elazarl/go-bindata-assetfs";
-    fetch = {
-      type = "git";
-      url = "https://github.com/elazarl/go-bindata-assetfs";
-      rev =  "30f82fa23fd844bd5bb1e5f216db87fd77b5eb43";
-      sha256 = "1swfb37g6sga3awvcmxf49ngbpvjv7ih5an9f8ixjqcfcwnb7nzp";
-    };
-  }
-  {
-    goPackagePath  = "github.com/garyburd/redigo";
-    fetch = {
-      type = "git";
-      url = "https://github.com/garyburd/redigo";
-      rev =  "d1ed5c67e5794de818ea85e6b522fda02623a484";
-      sha256 = "0gw18k9kg93hvdks93hckrdqppg1bav82sp2c98q6z36dkvaih24";
-    };
-  }
-  {
-    goPackagePath  = "github.com/go-sql-driver/mysql";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-sql-driver/mysql";
-      rev =  "a0583e0143b1624142adab07e0e97fe106d99561";
-      sha256 = "1rw1m91dpm23s6nn6jc4zi6rq2mgl7zx07gyadrdn0sh7cj8c89d";
-    };
-  }
-  {
-    goPackagePath  = "github.com/golang/protobuf";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/protobuf";
-      rev =  "925541529c1fa6821df4e44ce2723319eb2be768";
-      sha256 = "1d3zjvhl115l23xakj0014qpjchivlg098h10v5nfirkk1i9f9sa";
-    };
-  }
-  {
-    goPackagePath  = "github.com/gorilla/websocket";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gorilla/websocket";
-      rev =  "ea4d1f681babbce9545c9c5f3d5194a789c89f5b";
-      sha256 = "1bhgs2542qs49p1dafybqxfs2qc072xv41w5nswyrknwyjxxs2a1";
-    };
-  }
-  {
-    goPackagePath  = "github.com/kardianos/osext";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kardianos/osext";
-      rev =  "ae77be60afb1dcacde03767a8c37337fad28ac14";
-      sha256 = "056dkgxrqjj5r18bnc3knlpgdz5p3yvp12y4y978hnsfhwaqvbjz";
-    };
-  }
-  {
-    goPackagePath  = "github.com/lib/pq";
-    fetch = {
-      type = "git";
-      url = "https://github.com/lib/pq";
-      rev =  "88edab0803230a3898347e77b474f8c1820a1f20";
-      sha256 = "02y7c8xy33x5q4167x2drzrys41nfi7wxxp9hy4vpazfws88al9p";
-    };
-  }
-  {
-    goPackagePath  = "github.com/marstr/guid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/marstr/guid";
-      rev =  "8bdf7d1a087ccc975cf37dd6507da50698fd19ca";
-      sha256 = "1mxcigzfc1bbh5b616hm89bp06allhwcsas9v9lks235h0acgn4x";
-    };
-  }
-  {
-    goPackagePath  = "github.com/satori/go.uuid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/satori/go.uuid";
-      rev =  "f58768cc1a7a7e77a3bd49e98cdd21419399b6a3";
-      sha256 = "1j4s5pfg2ldm35y8ls8jah4dya2grfnx2drb4jcbjsyrp4cm5yfb";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/net";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/net";
-      rev =  "cbe0f9307d0156177f9dd5dc85da1a31abc5f2fb";
-      sha256 = "1hmpqkxh97ayyy0xcdvf1bwirwja4wyin3sh0fzjlh93aqmqgylf";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/alexcesaro/statsd.v2";
-    fetch = {
-      type = "git";
-      url = "https://github.com/alexcesaro/statsd";
-      rev =  "7fea3f0d2fab1ad973e641e51dba45443a311a90";
-      sha256 = "02jdx68vicwsgabrnwgg1rvc45rinyh8ikinqgbqc56c5hkx3brj";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/yaml.v2";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-yaml/yaml";
-      rev =  "d670f9405373e636a5a2765eea47fac0c9bc91a4";
-      sha256 = "1w1xid51n8v1mydn2m3vgggw8qgpd5a5sr62snsc77d99fpjsrs0";
-    };
-  }
-]
diff --git a/pkgs/development/tools/mdk/default.nix b/pkgs/development/tools/mdk/default.nix
index 9c92764fdaf55..30ae23e85a8d8 100644
--- a/pkgs/development/tools/mdk/default.nix
+++ b/pkgs/development/tools/mdk/default.nix
@@ -7,8 +7,8 @@ stdenv.mkDerivation rec {
     url = "mirror://gnu/gnu/mdk/v${version}/mdk-${version}.tar.gz";
     sha256 = "0bhk3c82kyp8167h71vdpbcr852h5blpnwggcswqqwvvykbms7lb";
   };
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ intltool glib ];
+  nativeBuildInputs = [ pkg-config intltool ];
+  buildInputs = [ glib ];
   postInstall = ''
     mkdir -p $out/share/emacs/site-lisp/
     cp -v ./misc/*.el $out/share/emacs/site-lisp
diff --git a/pkgs/development/tools/memray/default.nix b/pkgs/development/tools/memray/default.nix
index 405e7e7b9b073..4dc94dcf5d5a4 100644
--- a/pkgs/development/tools/memray/default.nix
+++ b/pkgs/development/tools/memray/default.nix
@@ -18,10 +18,11 @@ python3.pkgs.buildPythonApplication rec {
     hash = "sha256-zHdgVpe92OiwLC4jHVtT3oC+WnB30e5U3ZOHnmuo+Ao=";
   };
 
+  nativeBuildInputs = [ pkg-config ];
+
   buildInputs = [
     libunwind
     lz4
-    pkg-config
   ] ++ (with python3.pkgs; [
     cython
   ]);
diff --git a/pkgs/development/tools/metals/default.nix b/pkgs/development/tools/metals/default.nix
index a5718c1745804..5b275f82346b8 100644
--- a/pkgs/development/tools/metals/default.nix
+++ b/pkgs/development/tools/metals/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "metals";
-  version = "0.11.8";
+  version = "0.11.9";
 
   deps = stdenv.mkDerivation {
     name = "${pname}-deps-${version}";
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     '';
     outputHashMode = "recursive";
     outputHashAlgo = "sha256";
-    outputHash = "sha256-j7je+ZBTIkRfOPpUWbwz4JR06KprMn8sZXONrtI/n8s=";
+    outputHash = "sha256-CJ34OZOAM0Le9U0KSe0nKINnxA3iUgqUMtS06YnjvVo=";
   };
 
   nativeBuildInputs = [ makeWrapper setJavaClassPath ];
diff --git a/pkgs/development/tools/millet/default.nix b/pkgs/development/tools/millet/default.nix
index 809a2cedbb2c8..afe20aef049b3 100644
--- a/pkgs/development/tools/millet/default.nix
+++ b/pkgs/development/tools/millet/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "millet";
-  version = "0.3.12";
+  version = "0.3.14";
 
   src = fetchFromGitHub {
     owner = "azdavis";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-VqcC5RWo7az1SyrdLmbModK9I5za33plXm/PJ8b7Pbk=";
+    sha256 = "sha256-fi0kU1+gazSfQEyL3qYcK/qeMh1UGuitGXJ9FsVAiTw=";
   };
 
-  cargoSha256 = "sha256-1gU1SnKqLsIbipAbczu/WvAGxKHZ2NYhAqXwMAuISa0=";
+  cargoSha256 = "sha256-ijXGXq5+OOnf4Nmg68GcSKZe/5tjG0KebOsCWU+vmHc=";
 
   postPatch = ''
     rm .cargo/config.toml
diff --git a/pkgs/development/tools/misc/binutils/2.38/R_ARM_COPY.patch b/pkgs/development/tools/misc/binutils/2.38/R_ARM_COPY.patch
deleted file mode 100644
index 874809863523d..0000000000000
--- a/pkgs/development/tools/misc/binutils/2.38/R_ARM_COPY.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-@@ -, +, @@ 
----
- bfd/elf32-arm.c | 8 +++++++-
- 1 file changed, 7 insertions(+), 1 deletion(-)
---- a/bfd/elf32-arm.c	
-+++ a/bfd/elf32-arm.c	
-@@ -15398,7 +15398,11 @@ elf32_arm_adjust_dynamic_symbol (struct bfd_link_info * info,
-      linker to copy the initial value out of the dynamic object and into
-      the runtime process image.  We need to remember the offset into the
-      .rel(a).bss section we are going to use.  */
--  if ((h->root.u.def.section->flags & SEC_READONLY) != 0)
-+  if (info->nocopyreloc == 0
-+      && (h->root.u.def.section->flags & SEC_ALLOC) != 0
-+      /* PR 16177: A copy is only needed if the input section is readonly.  */
-+      && (h->root.u.def.section->flags & SEC_READONLY) != 0
-+      && h->size != 0)
-     {
-       s = globals->root.sdynrelro;
-       srel = globals->root.sreldynrelro;
-@@ -15410,6 +15414,8 @@ elf32_arm_adjust_dynamic_symbol (struct bfd_link_info * info,
-     }
-   if (info->nocopyreloc == 0
-       && (h->root.u.def.section->flags & SEC_ALLOC) != 0
-+      /* PR 16177: A copy is only needed if the input section is readonly.  */
-+      && (h->root.u.def.section->flags & SEC_READONLY) != 0
-       && h->size != 0)
-     {
-       elf32_arm_allocate_dynrelocs (info, srel, 1);
-
diff --git a/pkgs/development/tools/misc/binutils/2.38/default.nix b/pkgs/development/tools/misc/binutils/2.38/default.nix
index 3ea42ee422999..820f667bf9d0f 100644
--- a/pkgs/development/tools/misc/binutils/2.38/default.nix
+++ b/pkgs/development/tools/misc/binutils/2.38/default.nix
@@ -90,14 +90,6 @@ stdenv.mkDerivation {
     ./deterministic-temp-prefixes.patch
   ]
   ++ lib.optional targetPlatform.isiOS ./support-ios.patch
-  # This patch was suggested by Nick Clifton to fix
-  # https://sourceware.org/bugzilla/show_bug.cgi?id=16177
-  # It can be removed when that 7-year-old bug is closed.
-  # This binutils bug causes GHC to emit broken binaries on armv7, and indeed
-  # GHC will refuse to compile with a binutils suffering from it. See this
-  # comment for more information:
-  # https://gitlab.haskell.org/ghc/ghc/issues/4210#note_78333
-  ++ lib.optional (targetPlatform.isAarch32 && hostPlatform.system != targetPlatform.system) ./R_ARM_COPY.patch
   ++ lib.optional stdenv.targetPlatform.isWindows ./windres-locate-gcc.patch
   ++ lib.optional stdenv.targetPlatform.isMips64n64
      # this patch is from debian:
diff --git a/pkgs/development/tools/misc/binutils/R_ARM_COPY.patch b/pkgs/development/tools/misc/binutils/R_ARM_COPY.patch
deleted file mode 100644
index 874809863523d..0000000000000
--- a/pkgs/development/tools/misc/binutils/R_ARM_COPY.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-@@ -, +, @@ 
----
- bfd/elf32-arm.c | 8 +++++++-
- 1 file changed, 7 insertions(+), 1 deletion(-)
---- a/bfd/elf32-arm.c	
-+++ a/bfd/elf32-arm.c	
-@@ -15398,7 +15398,11 @@ elf32_arm_adjust_dynamic_symbol (struct bfd_link_info * info,
-      linker to copy the initial value out of the dynamic object and into
-      the runtime process image.  We need to remember the offset into the
-      .rel(a).bss section we are going to use.  */
--  if ((h->root.u.def.section->flags & SEC_READONLY) != 0)
-+  if (info->nocopyreloc == 0
-+      && (h->root.u.def.section->flags & SEC_ALLOC) != 0
-+      /* PR 16177: A copy is only needed if the input section is readonly.  */
-+      && (h->root.u.def.section->flags & SEC_READONLY) != 0
-+      && h->size != 0)
-     {
-       s = globals->root.sdynrelro;
-       srel = globals->root.sreldynrelro;
-@@ -15410,6 +15414,8 @@ elf32_arm_adjust_dynamic_symbol (struct bfd_link_info * info,
-     }
-   if (info->nocopyreloc == 0
-       && (h->root.u.def.section->flags & SEC_ALLOC) != 0
-+      /* PR 16177: A copy is only needed if the input section is readonly.  */
-+      && (h->root.u.def.section->flags & SEC_READONLY) != 0
-       && h->size != 0)
-     {
-       elf32_arm_allocate_dynrelocs (info, srel, 1);
-
diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix
index e5ecc365d48bf..c294dbbb35597 100644
--- a/pkgs/development/tools/misc/binutils/default.nix
+++ b/pkgs/development/tools/misc/binutils/default.nix
@@ -93,14 +93,6 @@ stdenv.mkDerivation {
     ./gas-dwarf-zero-PR29451.patch
   ]
   ++ lib.optional targetPlatform.isiOS ./support-ios.patch
-  # This patch was suggested by Nick Clifton to fix
-  # https://sourceware.org/bugzilla/show_bug.cgi?id=16177
-  # It can be removed when that 7-year-old bug is closed.
-  # This binutils bug causes GHC to emit broken binaries on armv7, and indeed
-  # GHC will refuse to compile with a binutils suffering from it. See this
-  # comment for more information:
-  # https://gitlab.haskell.org/ghc/ghc/issues/4210#note_78333
-  ++ lib.optional (targetPlatform.isAarch32 && hostPlatform.system != targetPlatform.system) ./R_ARM_COPY.patch
   ++ lib.optional stdenv.targetPlatform.isWindows ./windres-locate-gcc.patch
   ++ lib.optional stdenv.targetPlatform.isMips64n64
      # this patch is from debian:
diff --git a/pkgs/development/tools/misc/cli11/default.nix b/pkgs/development/tools/misc/cli11/default.nix
index 67cdfb2c68ef9..f55857a4ef013 100644
--- a/pkgs/development/tools/misc/cli11/default.nix
+++ b/pkgs/development/tools/misc/cli11/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cli11";
-  version = "2.2.0";
+  version = "2.3.0";
 
   src = fetchFromGitHub {
     owner = "CLIUtils";
     repo = "CLI11";
     rev = "v${version}";
-    sha256 = "sha256-emTIaoUyTINbAAn9tw1r3zLTQt58N8A1zoP+0y41yKo=";
+    sha256 = "sha256-J/hOgCDQPI0n2BGJK0+HIwlfNDVaZcxCC45uFAR7JUc=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/tools/misc/clojure-lsp/default.nix b/pkgs/development/tools/misc/clojure-lsp/default.nix
index 3ec71ab11d9c7..5334ea0df8a86 100644
--- a/pkgs/development/tools/misc/clojure-lsp/default.nix
+++ b/pkgs/development/tools/misc/clojure-lsp/default.nix
@@ -2,18 +2,18 @@
 
 buildGraalvmNativeImage rec {
   pname = "clojure-lsp";
-  version = "2022.09.01-15.27.31";
+  version = "2022.10.05-16.39.51";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = version;
-    sha256 = "sha256-+LdHdEPwfU712KHk7NLJeOgaTdfFADqglT1TEXrFWt8=";
+    sha256 = "sha256-44GAG9PSLpeV6rBGnw6f0EvmQDwCGtrTbPrKWx5pP8Q=";
   };
 
   jar = fetchurl {
     url = "https://github.com/clojure-lsp/clojure-lsp/releases/download/${version}/clojure-lsp-standalone.jar";
-    sha256 = "0yi0ni172by7kp9sfw29rsdva5xpgmc0sha2s4rff72lq9js3xp0";
+    sha256 = "7976ad30713ff0886421de42906622aa84d1409b37c8d603189059201daa4fb3";
   };
 
   extraNativeImageBuildArgs = [
diff --git a/pkgs/development/tools/misc/cvise/default.nix b/pkgs/development/tools/misc/cvise/default.nix
index e85ddbaed7427..cd3a38d300ef5 100644
--- a/pkgs/development/tools/misc/cvise/default.nix
+++ b/pkgs/development/tools/misc/cvise/default.nix
@@ -16,14 +16,14 @@
 
 buildPythonApplication rec {
   pname = "cvise";
-  version = "2.5.0";
+  version = "2.6.0";
   format = "other";
 
   src = fetchFromGitHub {
     owner = "marxin";
     repo = "cvise";
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-Nt6Zs3FxO8Ti+ikVPVaMCejzBIuUxrzG4VLhChCSJQw=";
+    sha256 = "sha256-yREdWrGiH8Bb2bIxvlg4okGbkIM5XqC039Fj0rrsJos=";
   };
 
   patches = [
diff --git a/pkgs/development/tools/misc/distcc/default.nix b/pkgs/development/tools/misc/distcc/default.nix
index b20d172a403dc..27ff1b5e69dd6 100644
--- a/pkgs/development/tools/misc/distcc/default.nix
+++ b/pkgs/development/tools/misc/distcc/default.nix
@@ -17,8 +17,8 @@ let
       sha256 = "0zjba1090awxkmgifr9jnjkxf41zhzc4f6mrnbayn3v6s77ca9x4";
     };
 
-  nativeBuildInputs = [ pkg-config autoconf automake ];
-    buildInputs = [popt avahi pkg-config python3 gtk3 which procps libiberty_static];
+    nativeBuildInputs = [ pkg-config autoconf automake ];
+    buildInputs = [popt avahi python3 gtk3 which procps libiberty_static];
     preConfigure =
     ''
       export CPATH=$(ls -d ${gcc.cc}/lib/gcc/*/${gcc.cc.version}/plugin/include)
diff --git a/pkgs/development/tools/misc/elfutils/default.nix b/pkgs/development/tools/misc/elfutils/default.nix
index 16989c13b8258..60afcbf258a53 100644
--- a/pkgs/development/tools/misc/elfutils/default.nix
+++ b/pkgs/development/tools/misc/elfutils/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchurl, fetchpatch, pkg-config, musl-fts
 , musl-obstack, m4, zlib, zstd, bzip2, bison, flex, gettext, xz, setupDebugInfoDirs
 , argp-standalone
-, enableDebuginfod ? false, sqlite, curl, libmicrohttpd_0_9_70, libarchive
+, enableDebuginfod ? false, sqlite, curl, libmicrohttpd, libarchive
 , gitUpdater
 }:
 
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
   ] ++ lib.optionals enableDebuginfod [
     sqlite
     curl
-    libmicrohttpd_0_9_70
+    libmicrohttpd
     libarchive
   ];
 
diff --git a/pkgs/development/tools/misc/gf/default.nix b/pkgs/development/tools/misc/gf/default.nix
index d47a4ae2c2411..53746bb377801 100644
--- a/pkgs/development/tools/misc/gf/default.nix
+++ b/pkgs/development/tools/misc/gf/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gf";
-  version = "unstable-2022-08-01";
+  version = "unstable-2022-09-26";
 
   src = fetchFromGitHub {
     repo = "gf";
     owner = "nakst";
-    rev = "c0a018a9b965eb97551ee87d5236a9f57011cea2";
-    hash = "sha256-i0aLSy+4/fbYZpUKExFDUZ/2nXJmEhRsAX0JQZ8EhNk=";
+    rev = "404fc6d66c60bb01e9bcbb69021e66c543bda2d5";
+    hash = "sha256-HRejpEN/29Q+wukU3Jv3vZoK6/VjZK6VnZdvPuFBC9I=";
   };
 
   nativeBuildInputs = [ makeWrapper pkg-config ];
diff --git a/pkgs/development/tools/misc/grpc-client-cli/default.nix b/pkgs/development/tools/misc/grpc-client-cli/default.nix
index c7aba473b8cc9..15d9dc6fdcaa4 100644
--- a/pkgs/development/tools/misc/grpc-client-cli/default.nix
+++ b/pkgs/development/tools/misc/grpc-client-cli/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "grpc-client-cli";
-  version = "1.14.0";
+  version = "1.15.0";
 
   src = fetchFromGitHub {
     owner = "vadimi";
     repo = "grpc-client-cli";
     rev = "v${version}";
-    sha256 = "sha256-ckvCgwpgEK/GJ+uqe81Gv3tx3sFlSKdh1nwLZU6LoHs=";
+    sha256 = "sha256-MZEsThE0cajIJXvsuefNjQMAmnATNCWYBVVJQnd+q6c=";
   };
 
-  vendorSha256 = "sha256-QcBPbwWVdjPFTEifKGtZH9wr7UI5OKcyWfVa8aWs4iA=";
+  vendorSha256 = "sha256-4rU2r0hOR+XCZubLZCNnqoJ1br/WNtb70HN5urat5jQ=";
 
   meta = with lib; {
     description = "generic gRPC command line client";
diff --git a/pkgs/development/tools/misc/lttng-ust/generic.nix b/pkgs/development/tools/misc/lttng-ust/generic.nix
index e6e67352c859c..56ad3b19e520f 100644
--- a/pkgs/development/tools/misc/lttng-ust/generic.nix
+++ b/pkgs/development/tools/misc/lttng-ust/generic.nix
@@ -22,6 +22,8 @@ stdenv.mkDerivation rec {
     inherit sha256;
   };
 
+  outputs = [ "bin" "out" "dev" "devdoc" ];
+
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ numactl python3 ];
 
@@ -29,6 +31,8 @@ stdenv.mkDerivation rec {
     patchShebangs .
   '';
 
+  configureFlags = [ "--disable-examples" ];
+
   propagatedBuildInputs = [ liburcu ];
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/tools/misc/nxpmicro-mfgtools/default.nix b/pkgs/development/tools/misc/nxpmicro-mfgtools/default.nix
index 9041d1f8c589e..2106a649775c1 100644
--- a/pkgs/development/tools/misc/nxpmicro-mfgtools/default.nix
+++ b/pkgs/development/tools/misc/nxpmicro-mfgtools/default.nix
@@ -7,22 +7,23 @@
 , libusb1
 , libzip
 , openssl
+, zstd
 }:
 
 stdenv.mkDerivation rec {
   pname = "nxpmicro-mfgtools";
-  version = "1.4.165";
+  version = "1.4.243";
 
   src = fetchFromGitHub {
     owner = "NXPmicro";
     repo = "mfgtools";
     rev = "uuu_${version}";
-    sha256 = "0k309lp27d4k6x4qq0badbk8i47xsc6f3fffz73650iyfs4hcniw";
+    hash = "sha256-gyy9D6y1y+9GlT3wfW+huoWaZP1e8YzZnc7EbJftppI=";
   };
 
   nativeBuildInputs = [ cmake pkg-config installShellFiles ];
 
-  buildInputs = [ bzip2 libusb1 libzip openssl ];
+  buildInputs = [ bzip2 libusb1 libzip openssl zstd ];
 
   preConfigure = "echo ${version} > .tarball-version";
 
diff --git a/pkgs/development/tools/misc/slint-lsp/default.nix b/pkgs/development/tools/misc/slint-lsp/default.nix
new file mode 100644
index 0000000000000..2211b5211d6a6
--- /dev/null
+++ b/pkgs/development/tools/misc/slint-lsp/default.nix
@@ -0,0 +1,66 @@
+{ lib
+, stdenv
+, rustPlatform
+, fetchCrate
+, pkg-config
+, cmake
+, fontconfig
+, libGL
+, libxcb
+, libX11
+, libXcursor
+, libXi
+, libXrandr
+, libxkbcommon
+, wayland
+  # Darwin Frameworks
+, AppKit
+, CoreGraphics
+, CoreServices
+, CoreText
+, Foundation
+, libiconv
+, OpenGL
+}:
+
+let
+  rpathLibs = [ fontconfig libGL libxcb libX11 libXcursor libXrandr libXi ]
+    ++ lib.optionals stdenv.isLinux [ libxkbcommon wayland ];
+in
+rustPlatform.buildRustPackage rec {
+  pname = "slint-lsp";
+  version = "0.3.0";
+
+  src = fetchCrate {
+    inherit pname version;
+    sha256 = "sha256-dZYkiYrotW8td5dxnPSvDzkWf+xV4ceISVLRZx2goXo=";
+  };
+
+  cargoSha256 = "sha256-9zbA9JXfLdosCU6gVsrsAyiyX8Qh6x5wMw1W4QKqbp4=";
+
+  nativeBuildInputs = [ cmake pkg-config fontconfig ];
+  buildInputs = rpathLibs ++ [ libxcb.dev ]
+    ++ lib.optionals stdenv.isDarwin [
+    AppKit
+    CoreGraphics
+    CoreServices
+    CoreText
+    Foundation
+    libiconv
+    OpenGL
+  ];
+
+  postInstall = lib.optionalString stdenv.isLinux  ''
+    patchelf --set-rpath ${lib.makeLibraryPath rpathLibs} $out/bin/slint-lsp
+  '';
+
+  dontPatchELF = true;
+
+  meta = with lib; {
+    description = "Language Server Protocol (LSP) for Slint UI language";
+    homepage = "https://slint-ui.com/";
+    changelog = "https://github.com/slint-ui/slint/blob/v${version}/CHANGELOG.md";
+    license = with licenses; [ gpl3Plus ];
+    maintainers = with maintainers; [ xgroleau ];
+  };
+}
diff --git a/pkgs/development/tools/napi-rs-cli/default.nix b/pkgs/development/tools/napi-rs-cli/default.nix
new file mode 100644
index 0000000000000..e32658713866f
--- /dev/null
+++ b/pkgs/development/tools/napi-rs-cli/default.nix
@@ -0,0 +1,33 @@
+{ lib, stdenv, fetchurl, makeWrapper, nodejs }:
+
+stdenv.mkDerivation rec {
+  pname = "napi-rs-cli";
+  version = "2.12.0";
+
+  src = fetchurl {
+    url = "https://registry.npmjs.org/@napi-rs/cli/-/cli-${version}.tgz";
+    hash = "sha256-TGhPPv73tb3tr1cY9mUuN4FaVql5tGh436uJeTkbnJs=";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p "$out/bin" "$out/lib/napi-rs-cli"
+
+    cp scripts/index.js "$out/lib/napi-rs-cli"
+
+    makeWrapper ${nodejs}/bin/node "$out/bin/napi" --add-flags "$out/lib/napi-rs-cli/index.js"
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "CLI tools for napi-rs";
+    homepage = "https://napi.rs";
+    license = licenses.mit;
+    maintainers = with maintainers; [ winter ];
+    inherit (nodejs.meta) platforms;
+  };
+}
diff --git a/pkgs/development/tools/nil/default.nix b/pkgs/development/tools/nil/default.nix
index fca968c909a71..29a4a4c425bd2 100644
--- a/pkgs/development/tools/nil/default.nix
+++ b/pkgs/development/tools/nil/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "nil";
-  version = "2022-09-26";
+  version = "2022-10-03";
 
   src = fetchFromGitHub {
     owner = "oxalica";
     repo = pname;
     rev = version;
-    hash = "sha256-2bcAXcJiFV+xKSIy3oD2/TkijV4302jAtTF3xtHiOhU=";
+    hash = "sha256-Oo0y/333YyeW9zeYQyiUUay7q7GK/Uu/FdEa6+5c4Pk=";
   };
 
-  cargoHash = "sha256-RL9n2kfWPpu17qudqSx5DkZbgxqVCf2IRBu/koCAqFA=";
+  cargoHash = "sha256-z7wjap7IL2OTd2wEUB6EbSbP71dZiqbKDmJ7oUjVi0U=";
 
   CFG_DATE = version;
   CFG_REV = "release";
diff --git a/pkgs/development/tools/oh-my-posh/default.nix b/pkgs/development/tools/oh-my-posh/default.nix
index b3a56fb9d0987..16fc99f302833 100644
--- a/pkgs/development/tools/oh-my-posh/default.nix
+++ b/pkgs/development/tools/oh-my-posh/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "oh-my-posh";
-  version = "11.1.1";
+  version = "12.0.1";
 
   src = fetchFromGitHub {
     owner = "jandedobbeleer";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-6BTH4wiiiQEP8DMq+pYHizIgnJrj8bO3i/RIwvqAYbQ=";
+    sha256 = "sha256-69H3ZhkK0WPiQY2COP5sMR6maoLyYs+Z3LuXHs8ZiJc=";
   };
 
-  vendorSha256 = "sha256-A4+sshIzPla7udHfnMmbFqn+fW3SOCrI6g7tArzmh1E=";
+  vendorSha256 = "sha256-cgE2HMtH6vnXmNheFBLOeBakNloeDs6X7JBry3sp2fc=";
 
   sourceRoot = "source/src";
 
diff --git a/pkgs/development/tools/omnisharp-roslyn/default.nix b/pkgs/development/tools/omnisharp-roslyn/default.nix
index 505f19c5427c4..bd1d80ef88f78 100644
--- a/pkgs/development/tools/omnisharp-roslyn/default.nix
+++ b/pkgs/development/tools/omnisharp-roslyn/default.nix
@@ -9,7 +9,7 @@
 , expect
 }:
 let
-  inherit (dotnetCorePackages) sdk_6_0;
+  inherit (dotnetCorePackages) sdk_6_0 runtime_6_0;
 in
 let finalPackage = buildDotnetModule rec {
   pname = "omnisharp-roslyn";
@@ -37,7 +37,7 @@ let finalPackage = buildDotnetModule rec {
     "-property:AssemblyVersion=${version}.0"
     "-property:FileVersion=${version}.0"
     "-property:InformationalVersion=${version}"
-    "-property:RuntimeFrameworkVersion=6.0.0-preview.7.21317.1"
+    "-property:RuntimeFrameworkVersion=${runtime_6_0.version}"
     "-property:RollForward=LatestMajor"
   ];
 
diff --git a/pkgs/development/tools/omnisharp-roslyn/deps.nix b/pkgs/development/tools/omnisharp-roslyn/deps.nix
index f96ad2fa941eb..d3d626aff5e0e 100644
--- a/pkgs/development/tools/omnisharp-roslyn/deps.nix
+++ b/pkgs/development/tools/omnisharp-roslyn/deps.nix
@@ -1,3 +1,6 @@
+# This file was automatically generated by passthru.fetch-deps.
+# Please dont edit it manually, your changes might get overwritten!
+
 { fetchNuGet }: [
   (fetchNuGet { pname = "Cake.Scripting.Abstractions"; version = "0.9.0"; sha256 = "15nqr100crclha0lzgil25j1wn45517gb34059qypj05j8psfmjx"; })
   (fetchNuGet { pname = "Cake.Scripting.Transport"; version = "0.9.0"; sha256 = "1gpbvframx4dx4mzfh44cib6dfd26q7878vf073m9gv3y43sws7b"; })
@@ -7,11 +10,6 @@
   (fetchNuGet { pname = "ICSharpCode.Decompiler"; version = "7.1.0.6543"; sha256 = "1xrajs5dcd7aqsg9ibhdcy39yrd8737kknkmqf907n7fqs2jxr46"; })
   (fetchNuGet { pname = "McMaster.Extensions.CommandLineUtils"; version = "3.1.0"; sha256 = "075n1mfsxwz514r94l8i3ax0wp43c3xb4f9w25a96h6xxnj0k2hd"; })
   (fetchNuGet { pname = "MediatR"; version = "8.1.0"; sha256 = "0cqx7yfh998xhsfk5pr6229lcjcs1jxxyqz7dwskc9jddl6a2akp"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "6.0.6"; sha256 = "08pjgsq2vcsdy4vgff146izvxq5hpg02a8lvih0wcsgghv1m1qki"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "6.0.0-preview.7.21317.1"; sha256 = "0m1qlzj1d8fhljvc5xk1smvs20h7j2x6jbrjiiiw9pfnfylcr79j"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/825db618-e3eb-4426-ba54-b1d6e6c944d8/nuget/v3/flat2/microsoft.aspnetcore.app.runtime.linux-arm64/6.0.0-preview.7.21317.1/microsoft.aspnetcore.app.runtime.linux-arm64.6.0.0-preview.7.21317.1.nupkg"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.0-preview.7.21317.1"; sha256 = "0jq1vnlqfg2359y0rb8ndf04nrg8f8j1smjwldssb24a92q153iy"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/825db618-e3eb-4426-ba54-b1d6e6c944d8/nuget/v3/flat2/microsoft.aspnetcore.app.runtime.linux-x64/6.0.0-preview.7.21317.1/microsoft.aspnetcore.app.runtime.linux-x64.6.0.0-preview.7.21317.1.nupkg"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-arm64"; version = "6.0.0-preview.7.21317.1"; sha256 = "16shhyj1429509blhnscxaylbmdsryis1mwxrc4a1j04mf2p2g03"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/825db618-e3eb-4426-ba54-b1d6e6c944d8/nuget/v3/flat2/microsoft.aspnetcore.app.runtime.osx-arm64/6.0.0-preview.7.21317.1/microsoft.aspnetcore.app.runtime.osx-arm64.6.0.0-preview.7.21317.1.nupkg"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "6.0.0-preview.7.21317.1"; sha256 = "0pnbc1661r3gnqfidayja5jm9s5sjjb639pgk2c629g6qqvvaisv"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/825db618-e3eb-4426-ba54-b1d6e6c944d8/nuget/v3/flat2/microsoft.aspnetcore.app.runtime.osx-x64/6.0.0-preview.7.21317.1/microsoft.aspnetcore.app.runtime.osx-x64.6.0.0-preview.7.21317.1.nupkg"; })
   (fetchNuGet { pname = "Microsoft.Bcl.AsyncInterfaces"; version = "1.1.1"; sha256 = "0a1ahssqds2ympr7s4xcxv5y8jgxs7ahd6ah6fbgglj4rki1f1vw"; })
   (fetchNuGet { pname = "Microsoft.Bcl.AsyncInterfaces"; version = "5.0.0"; sha256 = "0cp5jbax2mf6xr3dqiljzlwi05fv6n9a35z337s92jcljiq674kf"; })
   (fetchNuGet { pname = "Microsoft.Bcl.AsyncInterfaces"; version = "6.0.0"; sha256 = "15gqy2m14fdlvy1g59207h5kisznm355kbw010gy19vh47z8gpz3"; })
@@ -71,15 +69,6 @@
   (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "2.0.0"; sha256 = "1xppr5jbny04slyjgngxjdm0maxdh47vq481ps944d7jrfs0p3mb"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "6.0.0"; sha256 = "1kjiw6s4yfz9gm7mx3wkhp06ghnbs95icj9hi505shz9rjrg42q2"; })
   (fetchNuGet { pname = "Microsoft.NET.StringTools"; version = "1.0.0"; sha256 = "06yakiyzgss399giivfx6xdrnfxqfsvy5fzm90scjanvandv0sdj"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "6.0.0-preview.7.21317.1"; sha256 = "02pqxy48yzywijrqhzg7ip6jslnkf1w788yyfvk9flxq2anlax9l"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/825db618-e3eb-4426-ba54-b1d6e6c944d8/nuget/v3/flat2/microsoft.netcore.app.host.linux-arm64/6.0.0-preview.7.21317.1/microsoft.netcore.app.host.linux-arm64.6.0.0-preview.7.21317.1.nupkg"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "6.0.0-preview.7.21317.1"; sha256 = "1249kp3bdgf23ayk8qdrdahxzgf5ibiwjqjc42c92vv3gq7976iz"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/825db618-e3eb-4426-ba54-b1d6e6c944d8/nuget/v3/flat2/microsoft.netcore.app.host.linux-x64/6.0.0-preview.7.21317.1/microsoft.netcore.app.host.linux-x64.6.0.0-preview.7.21317.1.nupkg"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-arm64"; version = "6.0.0-preview.7.21317.1"; sha256 = "0bhqamkqj697rb4gn47fjh39565pf83fhvp2cxzvkiwl6hvyj5n6"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/825db618-e3eb-4426-ba54-b1d6e6c944d8/nuget/v3/flat2/microsoft.netcore.app.host.osx-arm64/6.0.0-preview.7.21317.1/microsoft.netcore.app.host.osx-arm64.6.0.0-preview.7.21317.1.nupkg"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "6.0.0-preview.7.21317.1"; sha256 = "1a9flva8llnwmn8bmlriflzrcazzzxfr7xm4m27apdc9fmci4kgv"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/825db618-e3eb-4426-ba54-b1d6e6c944d8/nuget/v3/flat2/microsoft.netcore.app.host.osx-x64/6.0.0-preview.7.21317.1/microsoft.netcore.app.host.osx-x64.6.0.0-preview.7.21317.1.nupkg"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "6.0.6"; sha256 = "146fr1gbs8bb5cbiz94xqddd29bnbi18ljnsd0yw2dqhf3ln0vpf"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "6.0.0-preview.7.21317.1"; sha256 = "0ah6lkvxk81c1xz32jz7x49gwllcw84jssx17g1mq2k49vp5s6ss"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/825db618-e3eb-4426-ba54-b1d6e6c944d8/nuget/v3/flat2/microsoft.netcore.app.runtime.linux-arm64/6.0.0-preview.7.21317.1/microsoft.netcore.app.runtime.linux-arm64.6.0.0-preview.7.21317.1.nupkg"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.0-preview.7.21317.1"; sha256 = "1pq0x10jmxzk0zhky3hq2wc3ffx2mjv57zjq6z75yd8x2yiww153"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/825db618-e3eb-4426-ba54-b1d6e6c944d8/nuget/v3/flat2/microsoft.netcore.app.runtime.linux-x64/6.0.0-preview.7.21317.1/microsoft.netcore.app.runtime.linux-x64.6.0.0-preview.7.21317.1.nupkg"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-arm64"; version = "6.0.0-preview.7.21317.1"; sha256 = "1nc6rcr5qnh32bsvj78zj2078srp3d4qc0gdd79kqajgp0lckqc2"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/825db618-e3eb-4426-ba54-b1d6e6c944d8/nuget/v3/flat2/microsoft.netcore.app.runtime.osx-arm64/6.0.0-preview.7.21317.1/microsoft.netcore.app.runtime.osx-arm64.6.0.0-preview.7.21317.1.nupkg"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "6.0.0-preview.7.21317.1"; sha256 = "13523hyx9s11c84qjmv3miyfgjkyy8879ki3wny2xkfw8ldzm91p"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/825db618-e3eb-4426-ba54-b1d6e6c944d8/nuget/v3/flat2/microsoft.netcore.app.runtime.osx-x64/6.0.0-preview.7.21317.1/microsoft.netcore.app.runtime.osx-x64.6.0.0-preview.7.21317.1.nupkg"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1"; sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "2.0.0"; sha256 = "1fk2fk2639i7nzy58m9dvpdnzql4vb8yl8vr19r2fp8lmj9w2jr0"; })
diff --git a/pkgs/development/tools/opcr-policy/default.nix b/pkgs/development/tools/opcr-policy/default.nix
new file mode 100644
index 0000000000000..c14cabbfa32ba
--- /dev/null
+++ b/pkgs/development/tools/opcr-policy/default.nix
@@ -0,0 +1,44 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "opcr-policy";
+  version = "0.1.42";
+
+  src = fetchFromGitHub {
+    owner = "opcr-io";
+    repo = "policy";
+    rev = "v${version}";
+    sha256 = "sha256-taC/VZBalJMFi8kVw7R03ibmHTwbKTxj3mcYbXms26M=";
+  };
+  vendorSha256 = "sha256-r2eKRJC8/fDY38u924ViLCf7kT54Tc+zIBD2YV9Qn6c=";
+
+  ldflags = [ "-s" "-w" "-X github.com/opcr-io/policy/pkg/version.ver=${version}" ];
+
+  doCheck = false;
+
+  doInstallCheck = true;
+  installCheckPhase = ''
+    runHook preInstallCheck
+
+    $out/bin/policy --help
+    $out/bin/policy version | grep "version: ${version}"
+
+    runHook postInstallCheck
+  '';
+
+  meta = with lib; {
+    mainProgram = "policy";
+    homepage = "https://www.openpolicyregistry.io/";
+    changelog = "https://github.com/opcr-io/policy/releases/tag/v${version}";
+    description = "CLI for managing authorization policies";
+    longDescription = ''
+      The policy CLI is a tool for building, versioning and publishing your authorization policies.
+      It uses OCI standards to manage artifacts, and the Open Policy Agent (OPA) to compile and run.
+    '';
+    license = licenses.asl20;
+    maintainers = with maintainers; [ naphta jk ];
+  };
+}
diff --git a/pkgs/development/tools/open-policy-agent/default.nix b/pkgs/development/tools/open-policy-agent/default.nix
index f9def6885e7bc..b7f94177c5868 100644
--- a/pkgs/development/tools/open-policy-agent/default.nix
+++ b/pkgs/development/tools/open-policy-agent/default.nix
@@ -11,13 +11,13 @@ assert enableWasmEval && stdenv.isDarwin -> builtins.throw "building with wasm o
 
 buildGoModule rec {
   pname = "open-policy-agent";
-  version = "0.44.0";
+  version = "0.45.0";
 
   src = fetchFromGitHub {
     owner = "open-policy-agent";
     repo = "opa";
     rev = "v${version}";
-    sha256 = "sha256-N5OVGffUJXbRN3eJ5LQHWpyYxuA1/JEsro/yi+qHF14=";
+    sha256 = "sha256-7w5HOZr1cei7AvMdHdVzjB3ZQGWCOgm/g9UhuO3vSJI=";
   };
   vendorSha256 = null;
 
diff --git a/pkgs/development/tools/parsing/tree-sitter/default.nix b/pkgs/development/tools/parsing/tree-sitter/default.nix
index 0db37008ae71e..11af21a6e48b4 100644
--- a/pkgs/development/tools/parsing/tree-sitter/default.nix
+++ b/pkgs/development/tools/parsing/tree-sitter/default.nix
@@ -30,9 +30,9 @@ let
   # 2) nix-build -A tree-sitter.updater.update-all-grammars
   # 3) OPTIONAL: Set GITHUB_TOKEN env variable to avoid api rate limit
   # 4) run the ./result script that is output by that (it updates ./grammars)
-  version = "0.20.6";
-  sha256 = "sha256-zaxy8VCfJKK8NtfuFFojmmP5a19FP1zO/eB5q1EoQPw=";
-  cargoSha256 = "sha256-sOOhzm2nz+HC6dvT+8hj/wh19o+OB2zQ6Uz+H89txSA=";
+  version = "0.20.7";
+  sha256 = "sha256-5ILiN5EfJ7WpeYBiXynfcLucdp8zmxVOj4gLkaFQYts=";
+  cargoSha256 = "sha256-V4frCaU5QzTx3ujdaplw7vNkosbzyXHQvE+T7ntVOtU=";
 
   src = fetchFromGitHub {
     owner = "tree-sitter";
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix b/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix
index 9786412e91927..5b3862082d8f7 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix
@@ -46,6 +46,7 @@
   tree-sitter-jsdoc = lib.importJSON ./tree-sitter-jsdoc.json;
   tree-sitter-json = lib.importJSON ./tree-sitter-json.json;
   tree-sitter-json5 = lib.importJSON ./tree-sitter-json5.json;
+  tree-sitter-jsonnet = lib.importJSON ./tree-sitter-jsonnet.json;
   tree-sitter-julia = lib.importJSON ./tree-sitter-julia.json;
   tree-sitter-kotlin = lib.importJSON ./tree-sitter-kotlin.json;
   tree-sitter-latex = lib.importJSON ./tree-sitter-latex.json;
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-jsonnet.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-jsonnet.json
new file mode 100644
index 0000000000000..11ef27c05e92c
--- /dev/null
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-jsonnet.json
@@ -0,0 +1,11 @@
+{
+  "url": "https://github.com/sourcegraph/tree-sitter-jsonnet",
+  "rev": "0475a5017ad7dc84845d1d33187f2321abcb261d",
+  "date": "2022-05-27T01:23:53-04:00",
+  "path": "/nix/store/n4yijz5b0bky4zd8kvh632a5zlxc3rfv-tree-sitter-jsonnet",
+  "sha256": "1dh8wqi8mnsapzicrdjg6cj6skj9f2ia4ijg08pl45bcxc1lidzc",
+  "fetchLFS": false,
+  "fetchSubmodules": false,
+  "deepClone": false,
+  "leaveDotGit": false
+}
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-smithy.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-smithy.json
index dbf91927edda1..09d2c55c97de5 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-smithy.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-smithy.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/indoorvivants/tree-sitter-smithy",
-  "rev": "1cdb3578dfec76f19e566ea4c1e305632e88026a",
-  "date": "2022-05-21T16:39:36+01:00",
-  "path": "/nix/store/smvp9nkdg6amfzspfj0inmfvcsjgrsjz-tree-sitter-smithy",
-  "sha256": "14xaflvz43m1c892jh0bg2yzsj1mrambkvsj6xkx84j141nnf4vm",
+  "rev": "084537ae85d186448c447de959a4955c0b855d2b",
+  "date": "2022-10-09T13:04:45+01:00",
+  "path": "/nix/store/4r9gfwad9f769y0ivivprlpqjbq8di8s-tree-sitter-smithy",
+  "sha256": "17l94ay7vv2b1iihnzssbw3i027yvk5a44waqlyzgf2bkqk7iqs0",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/update.nix b/pkgs/development/tools/parsing/tree-sitter/update.nix
index 81c9debe84b52..49863f189dad0 100644
--- a/pkgs/development/tools/parsing/tree-sitter/update.nix
+++ b/pkgs/development/tools/parsing/tree-sitter/update.nix
@@ -53,7 +53,7 @@ let
     # this is the haskell language bindings, tree-sitter-haskell is the grammar
     "haskell-tree-sitter"
     # this is the ruby language bindings, tree-sitter-ruby is the grammar
-    "ruby-tree-sitter"
+    "ruby-tree-sitter.old"
     # this is the (unmaintained) rust language bindings, tree-sitter-rust is the grammar
     "rust-tree-sitter"
     # this is the nodejs language bindings, tree-sitter-javascript is the grammar
@@ -347,6 +347,10 @@ let
       orga = "indoorvivants";
       repo = "tree-sitter-smithy";
     };
+    "tree-sitter-jsonnet" = {
+      orga = "sourcegraph";
+      repo = "tree-sitter-jsonnet";
+    };
   };
 
   allGrammars =
diff --git a/pkgs/development/tools/patatt/default.nix b/pkgs/development/tools/patatt/default.nix
index d4925778aaba8..d819e4f35cfad 100644
--- a/pkgs/development/tools/patatt/default.nix
+++ b/pkgs/development/tools/patatt/default.nix
@@ -2,11 +2,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "patatt";
-  version = "0.5.0";
+  version = "0.6.2";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "sha256-OUDu98f3CPI/hezdcIA2ndSOfCscVthuhkqq2jr9jXo=";
+    sha256 = "sha256-WaEq4qWL6xAZ3cJJ/lkJ5XTIrXcOMIESbytvWbsYx2s=";
   };
 
   propagatedBuildInputs = with python3Packages; [
@@ -23,6 +23,6 @@ python3Packages.buildPythonApplication rec {
       DKIM email signature standard to include cryptographic
       signatures via the X-Developer-Signature email header.
     '';
-    maintainers = with maintainers; [ yoctocell ];
+    maintainers = with maintainers; [ qyliss yoctocell ];
   };
 }
diff --git a/pkgs/development/tools/pip-audit/default.nix b/pkgs/development/tools/pip-audit/default.nix
index c5362cc0abf6d..1a6fd40776aba 100644
--- a/pkgs/development/tools/pip-audit/default.nix
+++ b/pkgs/development/tools/pip-audit/default.nix
@@ -25,14 +25,14 @@ with py.pkgs;
 
 buildPythonApplication rec {
   pname = "pip-audit";
-  version = "2.4.3";
+  version = "2.4.4";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "trailofbits";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-Q5wZJKP5YgLZQ9lrwE+8W9V7pZCJTLBm6qbjzmYJ9yg=";
+    hash = "sha256-xOcBOk+ac1djfCLKqrCTS+WnOXFf1niRUWN5hItO0v0=";
   };
 
   nativeBuildInputs = [
@@ -68,7 +68,7 @@ buildPythonApplication rec {
   disabledTestPaths = [
     # Tests require network access
     "test/dependency_source/test_requirement.py"
-    "test/dependency_source/test_resolvelib.py"
+    "test/dependency_source/resolvelib/test_resolvelib.py"
     "test/service/test_pypi.py"
     "test/service/test_osv.py"
   ];
diff --git a/pkgs/development/tools/pipenv/default.nix b/pkgs/development/tools/pipenv/default.nix
index 4aacf43d95a7b..9e3e34ed6ba28 100644
--- a/pkgs/development/tools/pipenv/default.nix
+++ b/pkgs/development/tools/pipenv/default.nix
@@ -23,11 +23,11 @@ let
 
 in buildPythonApplication rec {
   pname = "pipenv";
-  version = "2022.9.8";
+  version = "2022.10.9";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-tt//Bt6lbjut6S/CZ8LaHwgHxcewkD7vYRX9uJnCtLY=";
+    sha256 = "sha256-MuBqtQlX2549Kpn8e+vdRF5zg9lP8rME64sz33FhTmA=";
   };
 
   LC_ALL = "en_US.UTF-8";
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/default.nix b/pkgs/development/tools/poetry2nix/poetry2nix/default.nix
index 0575e38135d5a..2547c42b8cb45 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/default.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/default.nix
@@ -5,9 +5,9 @@
 }:
 let
   # Poetry2nix version
-  version = "1.31.0";
+  version = "1.34.1";
 
-  inherit (poetryLib) isCompatible readTOML moduleName;
+  inherit (poetryLib) isCompatible readTOML normalizePackageName normalizePackageSet;
 
   # Map SPDX identifiers to license names
   spdxLicenses = lib.listToAttrs (lib.filter (pair: pair.name != null) (builtins.map (v: { name = if lib.hasAttr "spdxId" v then v.spdxId else null; value = v; }) (lib.attrValues lib.licenses)));
@@ -17,29 +17,34 @@ let
   # Experimental withPlugins functionality
   toPluginAble = (import ./plugins.nix { inherit pkgs lib; }).toPluginAble;
 
+  # List of known build systems that are passed through from nixpkgs unmodified
+  knownBuildSystems = builtins.fromJSON (builtins.readFile ./known-build-systems.json);
+  nixpkgsBuildSystems = lib.subtractLists [ "poetry" "poetry-core" ] knownBuildSystems;
+
   mkInputAttrs =
     { py
     , pyProject
     , attrs
     , includeBuildSystem ? true
+    , groups ? [ ]
+    , checkGroups ? [ "dev" ]
     }:
     let
       getInputs = attr: attrs.${attr} or [ ];
 
       # Get dependencies and filter out depending on interpreter version
-      getDeps = depAttr:
+      getDeps = depSet:
         let
           compat = isCompatible (poetryLib.getPythonVersion py);
-          deps = pyProject.tool.poetry.${depAttr} or { };
-          depAttrs = builtins.map (d: lib.toLower d) (builtins.attrNames deps);
+          depAttrs = builtins.map (d: lib.toLower d) (builtins.attrNames depSet);
         in
         (
           builtins.map
             (
               dep:
               let
-                pkg = py.pkgs."${moduleName dep}";
-                constraints = deps.${dep}.python or "";
+                pkg = py.pkgs."${normalizePackageName dep}";
+                constraints = depSet.${dep}.python or "";
                 isCompat = compat constraints;
               in
               if isCompat then pkg else null
@@ -57,9 +62,21 @@ let
     in
     {
       buildInputs = mkInput "buildInputs" (if includeBuildSystem then buildSystemPkgs else [ ]);
-      propagatedBuildInputs = mkInput "propagatedBuildInputs" (getDeps "dependencies") ++ ([ py.pkgs.setuptools ]);
+      propagatedBuildInputs = mkInput "propagatedBuildInputs" (
+        (getDeps pyProject.tool.poetry."dependencies" or { })
+        ++ (
+          # >=poetry-1.2.0 dependency groups
+          if pyProject.tool.poetry.group or { } != { }
+          then lib.flatten (map (g: getDeps pyProject.tool.poetry.group.${g}.dependencies) groups)
+          else [ ]
+        )
+      );
       nativeBuildInputs = mkInput "nativeBuildInputs" [ ];
-      checkInputs = mkInput "checkInputs" (getDeps "dev-dependencies");
+      checkInputs = mkInput "checkInputs" (
+        getDeps (pyProject.tool.poetry."dev-dependencies" or { })  # <poetry-1.2.0
+        # >=poetry-1.2.0 dependency groups
+        ++ lib.flatten (map (g: getDeps (pyProject.tool.poetry.group.${g}.dependencies or { })) checkGroups)
+      );
     };
 
 
@@ -115,7 +132,9 @@ lib.makeScope pkgs.newScope (self: {
       # Example: { my-app = ./src; }
     , editablePackageSources ? { }
     , pyProject ? readTOML pyproject
-    }@attrs:
+    , groups ? [ ]
+    , checkGroups ? [ "dev" ]
+    }:
     let
       /* The default list of poetry2nix override overlays */
       mkEvalPep508 = import ./pep508.nix {
@@ -144,15 +163,7 @@ lib.makeScope pkgs.newScope (self: {
         let
           lockfiles = lib.getAttrFromPath [ "metadata" "files" ] poetryLock;
         in
-        lib.listToAttrs (lib.mapAttrsToList (n: v: { name = moduleName n; value = v; }) lockfiles);
-      specialAttrs = [
-        "overrides"
-        "poetrylock"
-        "projectDir"
-        "pwd"
-        "preferWheels"
-      ];
-      passedAttrs = builtins.removeAttrs attrs specialAttrs;
+        lib.listToAttrs (lib.mapAttrsToList (n: v: { name = normalizePackageName n; value = v; }) lockfiles);
       evalPep508 = mkEvalPep508 python;
 
       # Filter packages by their PEP508 markers & pyproject interpreter version
@@ -170,27 +181,35 @@ lib.makeScope pkgs.newScope (self: {
       # closure as python can only ever have one version of a dependency
       baseOverlay = self: super:
         let
-          getDep = depName: self.${depName};
           lockPkgs = builtins.listToAttrs (
             builtins.map
               (
-                pkgMeta: rec {
-                  name = moduleName pkgMeta.name;
+                pkgMeta:
+                let normalizedName = normalizePackageName pkgMeta.name; in
+                {
+                  name = normalizedName;
                   value = self.mkPoetryDep (
                     pkgMeta // {
                       inherit pwd preferWheels;
                       source = pkgMeta.source or null;
-                      files = lockFiles.${name};
+                      files = lockFiles.${normalizedName};
                       pythonPackages = self;
-                      sourceSpec = pyProject.tool.poetry.dependencies.${name} or pyProject.tool.poetry.dev-dependencies.${name} or { };
+
+                      sourceSpec = (
+                        (normalizePackageSet pyProject.tool.poetry.dependencies or { }).${normalizedName}
+                          or (normalizePackageSet pyProject.tool.poetry.dev-dependencies or { }).${normalizedName}
+                          or (normalizePackageSet pyProject.tool.poetry.group.dev.dependencies { }).${normalizedName} # Poetry 1.2.0+
+                          or { }
+                      );
                     }
                   );
                 }
               )
               (lib.reverseList compatible)
           );
+          buildSystems = builtins.listToAttrs (builtins.map (x: { name = x; value = super.${x}; }) nixpkgsBuildSystems);
         in
-        lockPkgs // {
+        lockPkgs // buildSystems // {
           # Create a dummy null package for the current project in case any dependencies depend on the root project (issue #307)
           ${pyProject.tool.poetry.name} = null;
         };
@@ -231,7 +250,7 @@ lib.makeScope pkgs.newScope (self: {
               super)
 
             # Null out any filtered packages, we don't want python.pkgs from nixpkgs
-            (self: super: builtins.listToAttrs (builtins.map (x: { name = moduleName x.name; value = null; }) incompatible))
+            (self: super: builtins.listToAttrs (builtins.map (x: { name = normalizePackageName x.name; value = null; }) incompatible))
             # Create poetry2nix layer
             baseOverlay
 
@@ -241,7 +260,7 @@ lib.makeScope pkgs.newScope (self: {
       packageOverrides = lib.foldr lib.composeExtensions (self: super: { }) overlays;
       py = python.override { inherit packageOverrides; self = py; };
 
-      inputAttrs = mkInputAttrs { inherit py pyProject; attrs = { }; includeBuildSystem = false; };
+      inputAttrs = mkInputAttrs { inherit py pyProject groups checkGroups; attrs = { }; includeBuildSystem = false; };
 
       requiredPythonModules = python.pkgs.requiredPythonModules;
       /* Include all the nested dependencies which are required for each package.
@@ -276,9 +295,10 @@ lib.makeScope pkgs.newScope (self: {
     , preferWheels ? false
     , editablePackageSources ? { }
     , extraPackages ? ps: [ ]
+    , groups ? [ "dev" ]
     }:
     let
-      inherit (lib) elem hasAttr;
+      inherit (lib) hasAttr;
 
       pyProject = readTOML pyproject;
 
@@ -294,6 +314,12 @@ lib.makeScope pkgs.newScope (self: {
       allEditablePackageSources = (
         (getEditableDeps (pyProject.tool.poetry."dependencies" or { }))
         // (getEditableDeps (pyProject.tool.poetry."dev-dependencies" or { }))
+        // (
+          # Poetry>=1.2.0
+          if pyProject.tool.poetry.group or { } != { } then
+            builtins.foldl' (acc: g: acc // getEditableDeps pyProject.tool.poetry.group.${g}.dependencies) { } groups
+          else { }
+        )
         // editablePackageSources
       );
 
@@ -302,7 +328,7 @@ lib.makeScope pkgs.newScope (self: {
         excludedEditablePackageNames;
 
       poetryPython = self.mkPoetryPackages {
-        inherit pyproject poetrylock overrides python pwd preferWheels pyProject;
+        inherit pyproject poetrylock overrides python pwd preferWheels pyProject groups;
         editablePackageSources = editablePackageSources';
       };
 
@@ -335,11 +361,13 @@ lib.makeScope pkgs.newScope (self: {
     , python ? pkgs.python3
     , pwd ? projectDir
     , preferWheels ? false
+    , groups ? [ ]
+    , checkGroups ? [ "dev" ]
     , ...
     }@attrs:
     let
       poetryPython = self.mkPoetryPackages {
-        inherit pyproject poetrylock overrides python pwd preferWheels;
+        inherit pyproject poetrylock overrides python pwd preferWheels groups checkGroups;
       };
       py = poetryPython.python;
 
@@ -354,7 +382,7 @@ lib.makeScope pkgs.newScope (self: {
       ];
       passedAttrs = builtins.removeAttrs attrs specialAttrs;
 
-      inputAttrs = mkInputAttrs { inherit py pyProject attrs; };
+      inputAttrs = mkInputAttrs { inherit py pyProject attrs groups checkGroups; };
 
       app = py.pkgs.buildPythonPackage (
         passedAttrs // inputAttrs // {
@@ -363,7 +391,7 @@ lib.makeScope pkgs.newScope (self: {
             py.pkgs.removeGitDependenciesHook
           ];
         } // {
-          pname = moduleName pyProject.tool.poetry.name;
+          pname = normalizePackageName pyProject.tool.poetry.name;
           version = pyProject.tool.poetry.version;
 
           inherit src;
@@ -445,7 +473,7 @@ lib.makeScope pkgs.newScope (self: {
 
     Can be overriden by calling defaultPoetryOverrides.overrideOverlay which takes an overlay function
   */
-  defaultPoetryOverrides = self.mkDefaultPoetryOverrides (import ./overrides { inherit pkgs lib; });
+  defaultPoetryOverrides = self.mkDefaultPoetryOverrides (import ./overrides { inherit pkgs lib poetryLib; });
 
   /*
     Convenience functions for specifying overlays with or without the poerty2nix default overrides
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/editable.nix b/pkgs/development/tools/poetry2nix/poetry2nix/editable.nix
index 1365d19032b40..13a07e4c85c74 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/editable.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/editable.nix
@@ -6,7 +6,7 @@
 , editablePackageSources
 }:
 let
-  name = poetryLib.moduleName pyProject.tool.poetry.name;
+  name = poetryLib.normalizePackageName pyProject.tool.poetry.name;
 
   # Just enough standard PKG-INFO fields for an editable installation
   pkgInfoFields = {
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/fetch_from_legacy.py b/pkgs/development/tools/poetry2nix/poetry2nix/fetch_from_legacy.py
index 8858b64ec3ee1..fee7374d34054 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/fetch_from_legacy.py
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/fetch_from_legacy.py
@@ -80,14 +80,23 @@ if package_filename not in parser.sources:
     exit(1)
 
 package_file = open(package_filename, "wb")
-# Sometimes the href is a relative path
-if urlparse(parser.sources[package_filename]).netloc == "":
+# Sometimes the href is a relative or absolute path within the index's domain.
+indicated_url = urlparse(parser.sources[package_filename])
+if indicated_url.netloc == "":
     parsed_url = urlparse(index_url)
+
+    if indicated_url.path.startswith("/"):
+        # An absolute path within the index's domain.
+        path = parser.sources[package_filename]
+    else:
+        # A relative path.
+        path = parsed_url.path + "/" + parser.sources[package_filename]
+
     package_url = urlunparse(
         (
             parsed_url.scheme,
             parsed_url.netloc,
-            parsed_url.path + "/" + parser.sources[package_filename],
+            path,
             None,
             None,
             None,
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/hooks/default.nix b/pkgs/development/tools/poetry2nix/poetry2nix/hooks/default.nix
index f6d1ea5418fad..a503ea594fb41 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/hooks/default.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/hooks/default.nix
@@ -70,6 +70,7 @@ in
             filenames = builtins.concatStringsSep " " [
               "pyproject.toml"
               "README.md"
+              "LICENSE"
             ];
           };
         } ./fixup-hook.sh
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/hooks/pyproject-without-special-deps.py b/pkgs/development/tools/poetry2nix/poetry2nix/hooks/pyproject-without-special-deps.py
index b74bfebf64009..76f52604e431e 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/hooks/pyproject-without-special-deps.py
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/hooks/pyproject-without-special-deps.py
@@ -22,6 +22,7 @@ def main(input, output, fields_to_remove):
                     any_removed |= dep.pop(field, None) is not None
                 if any_removed:
                     dep["version"] = "*"
+                    dep.pop("develop", None)
 
     output.write(tomlkit.dumps(data))
 
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/known-build-systems.json b/pkgs/development/tools/poetry2nix/poetry2nix/known-build-systems.json
new file mode 100644
index 0000000000000..10c7b9e4ca4cc
--- /dev/null
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/known-build-systems.json
@@ -0,0 +1,13 @@
+[
+    "poetry",
+    "poetry-core",
+    "flit",
+    "flit-core",
+    "pbr",
+    "flitBuildHook",
+    "cython",
+    "hatchling",
+    "hatch-vcs",
+    "setuptools",
+    "setuptools-scm"
+]
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/lib.nix b/pkgs/development/tools/poetry2nix/poetry2nix/lib.nix
index b5bf0c975e05d..dd1e2640a528e 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/lib.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/lib.nix
@@ -8,8 +8,16 @@ let
     genList (i: if i == idx then value else (builtins.elemAt list i)) (length list)
   );
 
-  # Do some canonicalisation of module names
-  moduleName = name: lib.toLower (lib.replaceStrings [ "_" "." ] [ "-" "-" ] name);
+  # Normalize package names as per PEP 503
+  normalizePackageName = name:
+    let
+      parts = builtins.split "[-_.]+" name;
+      partsWithoutSeparator = builtins.filter (x: builtins.typeOf x == "string") parts;
+    in
+    lib.strings.toLower (lib.strings.concatStringsSep "-" partsWithoutSeparator);
+
+  # Normalize an entire attrset of packages
+  normalizePackageSet = lib.attrsets.mapAttrs' (name: value: lib.attrsets.nameValuePair (normalizePackageName name) value);
 
   # Get a full semver pythonVersion from a python derivation
   getPythonVersion = python:
@@ -233,7 +241,8 @@ in
     getBuildSystemPkgs
     satisfiesSemver
     cleanPythonSources
-    moduleName
+    normalizePackageName
+    normalizePackageSet
     getPythonVersion
     getTargetMachine
     ;
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix b/pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix
index 63f8403de1151..56c312f4b50cc 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix
@@ -26,7 +26,7 @@ pythonPackages.callPackage
     }@args:
     let
       inherit (python) stdenv;
-      inherit (poetryLib) isCompatible getManyLinuxDeps fetchFromLegacy fetchFromPypi moduleName;
+      inherit (poetryLib) isCompatible getManyLinuxDeps fetchFromLegacy fetchFromPypi normalizePackageName;
 
       inherit (import ./pep425.nix {
         inherit lib poetryLib python stdenv;
@@ -88,26 +88,14 @@ pythonPackages.callPackage
             else (builtins.elemAt (lib.strings.splitString "-" name) 2);
         };
 
-      # Prevent infinite recursion
-      skipSetupToolsSCM = [
-        "setuptools_scm"
-        "setuptools-scm"
-        "toml" # Toml is an extra for setuptools-scm
-        "tomli" # tomli is an extra for later versions of setuptools-scm
-        "flit-core"
-        "packaging"
-        "six"
-        "pyparsing"
-        "typing-extensions"
-      ];
-      baseBuildInputs = lib.optional (! lib.elem name skipSetupToolsSCM) pythonPackages.setuptools-scm;
       format = if isDirectory || isGit || isUrl then "pyproject" else fileInfo.format;
     in
     buildPythonPackage {
-      pname = moduleName name;
+      pname = normalizePackageName name;
       version = version;
 
-      inherit format;
+      # Circumvent output separation (https://github.com/NixOS/nixpkgs/pull/190487)
+      format = if format == "pyproject" then "poetry2nix" else format;
 
       doCheck = false; # We never get development deps
 
@@ -118,16 +106,21 @@ pythonPackages.callPackage
         pythonPackages.poetry2nixFixupHook
       ]
       ++ lib.optional (!isSource && (getManyLinuxDeps fileInfo.name).str != null) autoPatchelfHook
+      ++ lib.optionals (format == "wheel") [
+        pythonPackages.wheelUnpackHook
+        pythonPackages.pipInstallHook
+        pythonPackages.setuptools
+      ]
       ++ lib.optionals (format == "pyproject") [
         pythonPackages.removePathDependenciesHook
         pythonPackages.removeGitDependenciesHook
+        pythonPackages.pipBuildHook
       ];
 
       buildInputs = (
-        baseBuildInputs
-        ++ lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) pythonPackages.setuptools
-        ++ lib.optional (!isSource) (getManyLinuxDeps fileInfo.name).pkg
+        lib.optional (!isSource) (getManyLinuxDeps fileInfo.name).pkg
         ++ lib.optional isDirectory buildSystemPkgs
+        ++ lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) pythonPackages.setuptools
       );
 
       propagatedBuildInputs =
@@ -149,7 +142,7 @@ pythonPackages.callPackage
             );
           depAttrs = lib.attrNames deps;
         in
-        builtins.map (n: pythonPackages.${moduleName n}) depAttrs;
+        builtins.map (n: pythonPackages.${normalizePackageName n}) depAttrs;
 
       meta = {
         broken = ! isCompatible (poetryLib.getPythonVersion python) python-versions;
@@ -172,10 +165,7 @@ pythonPackages.callPackage
               rev = source.resolved_reference or source.reference;
               ref = sourceSpec.branch or (if sourceSpec ? tag then "refs/tags/${sourceSpec.tag}" else "HEAD");
             } // (
-              let
-                nixVersion = builtins.substring 0 3 builtins.nixVersion;
-              in
-              lib.optionalAttrs ((sourceSpec ? rev) && (lib.versionAtLeast nixVersion "2.4")) {
+              lib.optionalAttrs ((sourceSpec ? rev) && (lib.versionAtLeast builtins.nixVersion "2.4")) {
                 allRefs = true;
               }
             ))
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/overrides/build-systems.json b/pkgs/development/tools/poetry2nix/poetry2nix/overrides/build-systems.json
index 73550b488fe60..fd63cb1ff73e1 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/overrides/build-systems.json
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/overrides/build-systems.json
@@ -1,1164 +1,12375 @@
 {
-  "HTSeq": [
-    "cython"
+  "aadict": [
+    "setuptools"
   ],
-  "PyStemmer": [
-    "cython"
+  "aafigure": [
+    "setuptools"
+  ],
+  "aardwolf": [
+    "setuptools"
+  ],
+  "abodepy": [
+    "setuptools"
+  ],
+  "absl-py": [
+    "setuptools"
+  ],
+  "absolufy-imports": [
+    "setuptools"
+  ],
+  "accuweather": [
+    "setuptools"
+  ],
+  "acme": [
+    "setuptools"
+  ],
+  "acme-tiny": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "acoustics": [
+    "setuptools"
+  ],
+  "actdiag": [
+    "setuptools"
+  ],
+  "adafruit-io": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "adafruit-nrfutil": [
+    "setuptools"
+  ],
+  "adafruit-platformdetect": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "adafruit-pureio": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "adal": [
+    "setuptools"
+  ],
+  "adax": [
+    "setuptools"
+  ],
+  "adax-local": [
+    "setuptools"
+  ],
+  "adb-enhanced": [
+    "setuptools"
+  ],
+  "adb-homeassistant": [
+    "setuptools"
+  ],
+  "adb-shell": [
+    "setuptools"
+  ],
+  "adblock": [
+    "setuptools"
+  ],
+  "add-trailing-comma": [
+    "setuptools"
+  ],
+  "addict": [
+    "setuptools"
+  ],
+  "adext": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "adguardhome": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "adjusttext": [
+    "setuptools"
+  ],
+  "adlfs": [
+    "setuptools"
+  ],
+  "advantage-air": [
+    "setuptools"
+  ],
+  "advocate": [
+    "setuptools"
+  ],
+  "aemet-opendata": [
+    "setuptools"
+  ],
+  "aenum": [
+    "setuptools"
+  ],
+  "aeppl": [
+    "setuptools"
   ],
   "aesara": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "aesedb": [
+    "setuptools"
+  ],
+  "afdko": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "affine": [
+    "setuptools"
+  ],
+  "afsapi": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "agate": [
+    "setuptools"
+  ],
+  "agate-dbf": [
+    "setuptools"
+  ],
+  "agate-excel": [
+    "setuptools"
+  ],
+  "agate-sql": [
+    "setuptools"
+  ],
+  "agent-py": [
+    "setuptools"
+  ],
+  "aggdraw": [
+    "setuptools"
+  ],
+  "ailment": [
+    "setuptools"
+  ],
+  "aio-geojson-client": [
+    "setuptools"
+  ],
+  "aio-geojson-generic-client": [
+    "setuptools"
+  ],
+  "aio-geojson-geonetnz-quakes": [
+    "setuptools"
+  ],
+  "aio-geojson-geonetnz-volcano": [
+    "setuptools"
+  ],
+  "aio-geojson-nsw-rfs-incidents": [
+    "setuptools"
+  ],
+  "aio-geojson-usgs-earthquakes": [
+    "setuptools"
+  ],
+  "aio-georss-client": [
+    "setuptools"
+  ],
+  "aio-georss-gdacs": [
+    "setuptools"
+  ],
+  "aioairq": [
+    "setuptools"
+  ],
+  "aioairzone": [
+    "setuptools"
+  ],
+  "aioaladdinconnect": [
+    "setuptools"
   ],
   "aioambient": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "aioamqp": [
+    "setuptools"
+  ],
+  "aioapns": [
+    "setuptools"
+  ],
+  "aioaseko": [
+    "setuptools"
+  ],
+  "aioasuswrt": [
+    "setuptools"
+  ],
+  "aioazuredevops": [
+    "setuptools"
+  ],
+  "aiobiketrax": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "aioblescan": [
+    "setuptools"
   ],
   "aioboto3": [
     "poetry"
   ],
+  "aiobotocore": [
+    "setuptools"
+  ],
+  "aiobroadlink": [
+    "setuptools"
+  ],
+  "aiocache": [
+    "setuptools"
+  ],
+  "aiocoap": [
+    "setuptools"
+  ],
+  "aioconsole": [
+    "setuptools"
+  ],
+  "aiocontextvars": [
+    "setuptools"
+  ],
+  "aiocron": [
+    "setuptools"
+  ],
   "aiocurrencylayer": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "aiodiscover": [
+    "setuptools"
+  ],
+  "aiodns": [
+    "setuptools"
   ],
   "aioeafm": [
-    "poetry"
+    "poetry",
+    "setuptools"
+  ],
+  "aioeagle": [
+    "setuptools"
+  ],
+  "aioecowitt": [
+    "setuptools"
+  ],
+  "aioemonitor": [
+    "setuptools"
+  ],
+  "aioesphomeapi": [
+    "setuptools"
+  ],
+  "aioextensions": [
+    "setuptools"
+  ],
+  "aiofile": [
+    "poetry-core",
+    "setuptools"
   ],
   "aiofiles": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "aioflo": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "aioftp": [
+    "setuptools"
   ],
   "aiogithubapi": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "aioguardian": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "aioharmony": [
+    "setuptools"
   ],
   "aiohomekit": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "aiohttp": [
+    "setuptools"
+  ],
+  "aiohttp-apispec": [
+    "setuptools"
+  ],
+  "aiohttp-cors": [
+    "setuptools"
+  ],
+  "aiohttp-jinja2": [
+    "setuptools"
   ],
   "aiohttp-remotes": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "aiohttp-retry": [
+    "setuptools"
+  ],
+  "aiohttp-socks": [
+    "setuptools"
+  ],
+  "aiohttp-swagger": [
+    "setuptools"
+  ],
+  "aiohttp-wsgi": [
+    "setuptools"
+  ],
+  "aiohue": [
+    "setuptools"
+  ],
+  "aiohwenergy": [
+    "setuptools"
+  ],
+  "aioimaplib": [
+    "setuptools"
+  ],
+  "aioinflux": [
+    "setuptools"
   ],
   "aioitertools": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
   ],
   "aiojobs": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
   ],
   "aiokafka": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "aiokef": [
+    "setuptools"
+  ],
+  "aiolifx": [
+    "setuptools"
+  ],
+  "aiolifx-connection": [
+    "setuptools"
+  ],
+  "aiolifx-effects": [
+    "setuptools"
   ],
   "aiolimiter": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "aiolip": [
+    "setuptools"
+  ],
+  "aiolookin": [
+    "setuptools"
+  ],
+  "aiolyric": [
+    "setuptools"
+  ],
+  "aiomodernforms": [
+    "setuptools"
   ],
   "aiomultiprocess": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
   ],
   "aiomusiccast": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "aiomysensors": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "aiomysql": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "aionanoleaf": [
+    "setuptools"
+  ],
+  "aionotify": [
+    "setuptools"
   ],
   "aionotion": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "aiooncue": [
+    "setuptools"
+  ],
+  "aioopenexchangerates": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "aiopath": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "aiopg": [
+    "setuptools"
+  ],
+  "aioprocessing": [
+    "flit-core",
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "aiopulse": [
+    "setuptools"
+  ],
+  "aiopvapi": [
+    "setuptools"
   ],
   "aiopvpc": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "aiopyarr": [
+    "setuptools"
+  ],
+  "aiopylgtv": [
+    "setuptools"
+  ],
+  "aioqsw": [
+    "setuptools"
   ],
   "aiorecollect": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "aioredis": [
+    "setuptools"
   ],
   "aioresponses": [
-    "pbr"
+    "pbr",
+    "setuptools"
   ],
   "aioridwell": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "aiorpcx": [
+    "setuptools"
+  ],
+  "aiortm": [
+    "poetry-core",
+    "setuptools"
   ],
   "aiorun": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "aiosenseme": [
+    "setuptools"
+  ],
+  "aiosenz": [
+    "setuptools"
+  ],
+  "aioserial": [
+    "setuptools"
+  ],
+  "aioshelly": [
+    "setuptools"
+  ],
+  "aioshutil": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "aiosignal": [
+    "setuptools"
+  ],
+  "aioskybell": [
+    "setuptools"
+  ],
+  "aioslimproto": [
+    "setuptools"
+  ],
+  "aiosmb": [
+    "setuptools"
+  ],
+  "aiosmtpd": [
+    "setuptools"
+  ],
+  "aiosmtplib": [
+    "poetry-core",
+    "setuptools"
   ],
   "aiosqlite": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
   ],
   "aiosteamist": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "aiostream": [
+    "setuptools"
   ],
   "aioswitcher": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "aiosyncthing": [
+    "setuptools"
+  ],
+  "aiotractive": [
+    "setuptools"
+  ],
+  "aiounifi": [
+    "setuptools"
+  ],
+  "aiounittest": [
+    "setuptools"
+  ],
+  "aiovlc": [
+    "setuptools"
   ],
   "aiowatttime": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "aiowebostv": [
+    "setuptools"
+  ],
+  "aiowinreg": [
+    "setuptools"
+  ],
+  "aioymaps": [
+    "setuptools"
+  ],
+  "aiozeroconf": [
+    "setuptools"
+  ],
+  "airly": [
+    "setuptools"
+  ],
+  "airthings-ble": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "airthings-cloud": [
+    "setuptools"
+  ],
+  "airtouch4pyapi": [
+    "setuptools"
+  ],
+  "ajpy": [
+    "setuptools"
+  ],
+  "ajsonrpc": [
+    "setuptools"
+  ],
+  "alabaster": [
+    "setuptools"
+  ],
+  "aladdin-connect": [
+    "setuptools"
+  ],
+  "alarmdecoder": [
+    "setuptools"
+  ],
+  "alectryon": [
+    "setuptools"
+  ],
+  "alembic": [
+    "setuptools"
+  ],
+  "algebraic-data-types": [
+    "setuptools"
+  ],
+  "aliyun-python-sdk-cdn": [
+    "setuptools"
+  ],
+  "aliyun-python-sdk-config": [
+    "setuptools"
+  ],
+  "aliyun-python-sdk-core": [
+    "setuptools"
+  ],
+  "aliyun-python-sdk-dbfs": [
+    "setuptools"
+  ],
+  "aliyun-python-sdk-iot": [
+    "setuptools"
+  ],
+  "aliyun-python-sdk-kms": [
+    "setuptools"
+  ],
+  "aliyun-python-sdk-sts": [
+    "setuptools"
+  ],
+  "allpairspy": [
+    "setuptools"
+  ],
+  "allure-behave": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "allure-pytest": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "allure-python-commons": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "allure-python-commons-test": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "alpha-vantage": [
+    "setuptools"
+  ],
+  "altair": [
+    "setuptools"
+  ],
+  "amaranth": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "amaranth-boards": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "amaranth-soc": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "amarna": [
+    "setuptools"
+  ],
+  "amazon-ion": [
+    "setuptools"
   ],
   "ambee": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "amberelectric": [
+    "setuptools"
+  ],
+  "ambiclimate": [
+    "setuptools"
+  ],
+  "amcrest": [
+    "setuptools"
+  ],
+  "amiibo-py": [
+    "setuptools"
+  ],
+  "amply": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "amqp": [
+    "setuptools"
+  ],
+  "amqplib": [
+    "setuptools"
   ],
   "amqtt": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "androguard": [
+    "setuptools"
+  ],
+  "android-backup": [
+    "setuptools"
+  ],
+  "androidtv": [
+    "setuptools"
+  ],
+  "angr": [
+    "setuptools"
+  ],
+  "angrcli": [
+    "setuptools"
+  ],
+  "angrop": [
+    "setuptools"
+  ],
+  "aniso8601": [
+    "setuptools"
+  ],
+  "annexremote": [
+    "setuptools"
+  ],
+  "annoy": [
+    "setuptools"
+  ],
+  "anonip": [
+    "setuptools"
+  ],
+  "ansi": [
+    "setuptools"
+  ],
+  "ansi2html": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "ansible": [
+    "setuptools"
+  ],
+  "ansible-compat": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "ansible-core": [
+    "setuptools"
   ],
   "ansible-doctor": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "ansible-kernel": [
+    "setuptools"
   ],
   "ansible-later": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "ansible-lint": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "ansible-molecule": [
+    "setuptools"
   ],
   "ansible-runner": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "ansicolor": [
+    "setuptools"
+  ],
+  "ansicolors": [
+    "setuptools"
+  ],
+  "ansiconv": [
+    "setuptools"
+  ],
+  "ansimarkup": [
+    "setuptools"
+  ],
+  "ansiwrap": [
+    "setuptools"
+  ],
+  "antlr4-8-python3-runtime": [
+    "setuptools"
+  ],
+  "antlr4-9-python3-runtime": [
+    "setuptools"
+  ],
+  "antlr4-python3-runtime": [
+    "setuptools"
+  ],
+  "anyascii": [
+    "setuptools"
+  ],
+  "anybadge": [
+    "setuptools"
+  ],
+  "anyconfig": [
+    "setuptools"
+  ],
+  "anyio": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "anytree": [
+    "setuptools"
+  ],
+  "aocd": [
+    "setuptools"
   ],
   "apache-beam": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "apache-libcloud": [
+    "setuptools"
+  ],
+  "apcaccess": [
+    "setuptools"
+  ],
+  "apipkg": [
+    "hatch-vcs",
+    "hatchling",
+    "setuptools"
+  ],
+  "apispec": [
+    "setuptools"
   ],
   "aplpy": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "appdirs": [
+    "setuptools"
+  ],
+  "applicationinsights": [
+    "setuptools"
+  ],
+  "appnope": [
+    "setuptools"
+  ],
+  "apprise": [
+    "setuptools"
+  ],
+  "approvaltests": [
+    "setuptools"
+  ],
+  "appthreat-vulnerability-db": [
+    "setuptools"
+  ],
+  "apptools": [
+    "setuptools"
+  ],
+  "aprslib": [
+    "setuptools"
+  ],
+  "apscheduler": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "apsw": [
+    "setuptools"
+  ],
+  "apycula": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "aqipy-atmotech": [
+    "setuptools"
+  ],
+  "aqualogic": [
+    "setuptools"
+  ],
+  "arabic-reshaper": [
+    "setuptools"
+  ],
+  "arc4": [
+    "setuptools"
+  ],
+  "arcam-fmj": [
+    "setuptools"
+  ],
+  "archinfo": [
+    "setuptools"
+  ],
+  "archspec": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "area": [
+    "setuptools"
+  ],
+  "arelle": [
+    "setuptools"
+  ],
+  "arelle-headless": [
+    "setuptools"
+  ],
+  "aresponses": [
+    "setuptools"
   ],
-  "argon2_cffi": [
-    "flitBuildHook"
+  "argcomplete": [
+    "setuptools"
+  ],
+  "argh": [
+    "setuptools"
+  ],
+  "argon2-cffi": [
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "argon2-cffi-bindings": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "argparse-addons": [
+    "setuptools"
+  ],
+  "args": [
+    "setuptools"
   ],
   "aria2p": [
-    "poetry"
+    "poetry",
+    "setuptools"
+  ],
+  "arnparse": [
+    "setuptools"
+  ],
+  "arpeggio": [
+    "setuptools"
+  ],
+  "arrayqueues": [
+    "setuptools"
+  ],
+  "arris-tg2492lg": [
+    "setuptools"
+  ],
+  "arrow": [
+    "setuptools"
+  ],
+  "arviz": [
+    "setuptools"
+  ],
+  "arxiv2bib": [
+    "setuptools"
+  ],
+  "asana": [
+    "setuptools"
+  ],
+  "ascii-magic": [
+    "setuptools"
+  ],
+  "asciimatics": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "asciitree": [
+    "setuptools"
+  ],
+  "asdf": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "asdf-standard": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "asdf-transform-schemas": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "ase": [
+    "setuptools"
+  ],
+  "asf-search": [
+    "setuptools"
+  ],
+  "asgi-csrf": [
+    "setuptools"
+  ],
+  "asgineer": [
+    "setuptools"
+  ],
+  "asgiref": [
+    "setuptools"
+  ],
+  "asks": [
+    "setuptools"
+  ],
+  "asmog": [
+    "setuptools"
+  ],
+  "asn1": [
+    "setuptools"
+  ],
+  "asn1ate": [
+    "setuptools"
+  ],
+  "asn1crypto": [
+    "setuptools"
+  ],
+  "asn1tools": [
+    "setuptools"
+  ],
+  "aspell-python": [
+    "setuptools"
+  ],
+  "aspy-refactor-imports": [
+    "setuptools"
+  ],
+  "aspy-yaml": [
+    "setuptools"
+  ],
+  "assay": [
+    "setuptools"
+  ],
+  "assertpy": [
+    "setuptools"
+  ],
+  "asterisk-mbox": [
+    "setuptools"
+  ],
+  "asteval": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "astor": [
+    "setuptools"
+  ],
+  "astral": [
+    "setuptools"
+  ],
+  "astroid": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "astropy": [
-    "cython"
+    "cython",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "astropy-extension-helpers": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "astropy-healpix": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "astropy-helpers": [
+    "setuptools"
+  ],
+  "astroquery": [
+    "setuptools"
+  ],
+  "asttokens": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "astunparse": [
+    "setuptools"
   ],
   "async-dns": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "async-generator": [
+    "setuptools"
+  ],
+  "async-lru": [
+    "setuptools"
+  ],
+  "async-stagger": [
+    "setuptools"
+  ],
+  "async-timeout": [
+    "setuptools"
+  ],
+  "async-upnp-client": [
+    "setuptools"
+  ],
+  "asyncclick": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "asynccmd": [
+    "setuptools"
+  ],
+  "asyncio-dgram": [
+    "setuptools"
+  ],
+  "asyncio-mqtt": [
+    "setuptools"
+  ],
+  "asyncio-nats-client": [
+    "setuptools"
+  ],
+  "asyncio-rlock": [
+    "setuptools"
+  ],
+  "asyncio-throttle": [
+    "setuptools"
   ],
   "asyncmy": [
     "cython",
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "asyncpg": [
+    "setuptools"
+  ],
+  "asyncsleepiq": [
+    "setuptools"
+  ],
+  "asyncssh": [
+    "setuptools"
   ],
   "asyncstdlib": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "asynctest": [
+    "setuptools"
+  ],
+  "asyncwhois": [
+    "setuptools"
+  ],
+  "asysocks": [
+    "setuptools"
+  ],
+  "atc-ble": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "atenpdu": [
+    "setuptools"
+  ],
+  "atlassian-python-api": [
+    "setuptools"
+  ],
+  "atom": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "atomiclong": [
+    "setuptools"
+  ],
+  "atomicwrites": [
+    "setuptools"
+  ],
+  "atomicwrites-homeassistant": [
+    "setuptools"
   ],
   "atomman": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "atpublic": [
-    "pdm-pep517"
+    "pdm-pep517",
+    "setuptools"
+  ],
+  "atsim-potentials": [
+    "setuptools"
+  ],
+  "attrdict": [
+    "setuptools"
+  ],
+  "attrs": [
+    "setuptools"
+  ],
+  "aubio": [
+    "setuptools"
+  ],
+  "audible": [
+    "setuptools"
+  ],
+  "audio-metadata": [
+    "setuptools"
+  ],
+  "audioread": [
+    "setuptools"
+  ],
+  "audiotools": [
+    "setuptools"
+  ],
+  "augeas": [
+    "setuptools"
+  ],
+  "augmax": [
+    "setuptools"
+  ],
+  "auroranoaa": [
+    "setuptools"
+  ],
+  "aurorapy": [
+    "setuptools"
   ],
   "autarco": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "auth0-python": [
+    "setuptools"
   ],
   "authcaptureproxy": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "authheaders": [
+    "setuptools"
+  ],
+  "authlib": [
+    "setuptools"
+  ],
+  "authres": [
+    "setuptools"
+  ],
+  "autobahn": [
+    "setuptools"
+  ],
+  "autograd": [
+    "setuptools"
+  ],
+  "autoit-ripper": [
+    "setuptools"
+  ],
+  "autologging": [
+    "setuptools"
+  ],
+  "automat": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "automate-home": [
+    "setuptools"
+  ],
+  "autopage": [
+    "setuptools"
+  ],
+  "autopep8": [
+    "setuptools"
   ],
   "av": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "avea": [
+    "setuptools"
+  ],
+  "avion": [
+    "setuptools"
+  ],
+  "avro": [
+    "setuptools"
+  ],
+  "avro-python3": [
+    "setuptools"
+  ],
+  "avro3k": [
+    "setuptools"
+  ],
+  "awesome-slugify": [
+    "setuptools"
   ],
   "awesomeversion": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "awkward": [
+    "setuptools"
+  ],
+  "awkward0": [
+    "setuptools"
   ],
   "aws-adfs": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "aws-error-utils": [
     "poetry"
   ],
+  "aws-lambda-builders": [
+    "setuptools"
+  ],
+  "aws-sam-translator": [
+    "setuptools"
+  ],
+  "aws-xray-sdk": [
+    "setuptools"
+  ],
+  "awscli": [
+    "setuptools"
+  ],
+  "awscli-cwlogs": [
+    "setuptools"
+  ],
+  "awscrt": [
+    "setuptools"
+  ],
+  "awsiotpythonsdk": [
+    "setuptools"
+  ],
+  "awslambdaric": [
+    "setuptools"
+  ],
+  "axis": [
+    "setuptools"
+  ],
+  "azure-appconfiguration": [
+    "setuptools"
+  ],
+  "azure-applicationinsights": [
+    "setuptools"
+  ],
+  "azure-batch": [
+    "setuptools"
+  ],
+  "azure-common": [
+    "setuptools"
+  ],
+  "azure-containerregistry": [
+    "setuptools"
+  ],
+  "azure-core": [
+    "setuptools"
+  ],
+  "azure-cosmos": [
+    "setuptools"
+  ],
+  "azure-cosmosdb-nspkg": [
+    "setuptools"
+  ],
+  "azure-cosmosdb-table": [
+    "setuptools"
+  ],
+  "azure-data-tables": [
+    "setuptools"
+  ],
+  "azure-datalake-store": [
+    "setuptools"
+  ],
+  "azure-eventgrid": [
+    "setuptools"
+  ],
+  "azure-eventhub": [
+    "setuptools"
+  ],
+  "azure-functions-devops-build": [
+    "setuptools"
+  ],
+  "azure-graphrbac": [
+    "setuptools"
+  ],
+  "azure-identity": [
+    "setuptools"
+  ],
+  "azure-keyvault": [
+    "setuptools"
+  ],
+  "azure-keyvault-administration": [
+    "setuptools"
+  ],
+  "azure-keyvault-certificates": [
+    "setuptools"
+  ],
+  "azure-keyvault-keys": [
+    "setuptools"
+  ],
+  "azure-keyvault-nspkg": [
+    "setuptools"
+  ],
+  "azure-keyvault-secrets": [
+    "setuptools"
+  ],
+  "azure-loganalytics": [
+    "setuptools"
+  ],
+  "azure-mgmt-advisor": [
+    "setuptools"
+  ],
+  "azure-mgmt-apimanagement": [
+    "setuptools"
+  ],
+  "azure-mgmt-appconfiguration": [
+    "setuptools"
+  ],
+  "azure-mgmt-applicationinsights": [
+    "setuptools"
+  ],
+  "azure-mgmt-authorization": [
+    "setuptools"
+  ],
+  "azure-mgmt-batch": [
+    "setuptools"
+  ],
+  "azure-mgmt-batchai": [
+    "setuptools"
+  ],
+  "azure-mgmt-billing": [
+    "setuptools"
+  ],
+  "azure-mgmt-botservice": [
+    "setuptools"
+  ],
+  "azure-mgmt-cdn": [
+    "setuptools"
+  ],
+  "azure-mgmt-cognitiveservices": [
+    "setuptools"
+  ],
+  "azure-mgmt-commerce": [
+    "setuptools"
+  ],
+  "azure-mgmt-common": [
+    "setuptools"
+  ],
+  "azure-mgmt-compute": [
+    "setuptools"
+  ],
+  "azure-mgmt-consumption": [
+    "setuptools"
+  ],
+  "azure-mgmt-containerinstance": [
+    "setuptools"
+  ],
+  "azure-mgmt-containerregistry": [
+    "setuptools"
+  ],
+  "azure-mgmt-containerservice": [
+    "setuptools"
+  ],
+  "azure-mgmt-core": [
+    "setuptools"
+  ],
+  "azure-mgmt-cosmosdb": [
+    "setuptools"
+  ],
+  "azure-mgmt-databoxedge": [
+    "setuptools"
+  ],
+  "azure-mgmt-datafactory": [
+    "setuptools"
+  ],
+  "azure-mgmt-datalake-analytics": [
+    "setuptools"
+  ],
+  "azure-mgmt-datalake-nspkg": [
+    "setuptools"
+  ],
+  "azure-mgmt-datalake-store": [
+    "setuptools"
+  ],
+  "azure-mgmt-datamigration": [
+    "setuptools"
+  ],
+  "azure-mgmt-deploymentmanager": [
+    "setuptools"
+  ],
+  "azure-mgmt-devspaces": [
+    "setuptools"
+  ],
+  "azure-mgmt-devtestlabs": [
+    "setuptools"
+  ],
+  "azure-mgmt-dns": [
+    "setuptools"
+  ],
+  "azure-mgmt-eventgrid": [
+    "setuptools"
+  ],
+  "azure-mgmt-eventhub": [
+    "setuptools"
+  ],
+  "azure-mgmt-extendedlocation": [
+    "setuptools"
+  ],
+  "azure-mgmt-hanaonazure": [
+    "setuptools"
+  ],
+  "azure-mgmt-hdinsight": [
+    "setuptools"
+  ],
+  "azure-mgmt-imagebuilder": [
+    "setuptools"
+  ],
+  "azure-mgmt-iotcentral": [
+    "setuptools"
+  ],
+  "azure-mgmt-iothub": [
+    "setuptools"
+  ],
+  "azure-mgmt-iothubprovisioningservices": [
+    "setuptools"
+  ],
+  "azure-mgmt-keyvault": [
+    "setuptools"
+  ],
+  "azure-mgmt-kusto": [
+    "setuptools"
+  ],
+  "azure-mgmt-loganalytics": [
+    "setuptools"
+  ],
+  "azure-mgmt-logic": [
+    "setuptools"
+  ],
+  "azure-mgmt-machinelearningcompute": [
+    "setuptools"
+  ],
+  "azure-mgmt-managedservices": [
+    "setuptools"
+  ],
+  "azure-mgmt-managementgroups": [
+    "setuptools"
+  ],
+  "azure-mgmt-managementpartner": [
+    "setuptools"
+  ],
+  "azure-mgmt-maps": [
+    "setuptools"
+  ],
+  "azure-mgmt-marketplaceordering": [
+    "setuptools"
+  ],
+  "azure-mgmt-media": [
+    "setuptools"
+  ],
+  "azure-mgmt-monitor": [
+    "setuptools"
+  ],
+  "azure-mgmt-msi": [
+    "setuptools"
+  ],
+  "azure-mgmt-netapp": [
+    "setuptools"
+  ],
+  "azure-mgmt-network": [
+    "setuptools"
+  ],
+  "azure-mgmt-notificationhubs": [
+    "setuptools"
+  ],
+  "azure-mgmt-nspkg": [
+    "setuptools"
+  ],
+  "azure-mgmt-policyinsights": [
+    "setuptools"
+  ],
+  "azure-mgmt-powerbiembedded": [
+    "setuptools"
+  ],
+  "azure-mgmt-privatedns": [
+    "setuptools"
+  ],
+  "azure-mgmt-rdbms": [
+    "setuptools"
+  ],
+  "azure-mgmt-recoveryservices": [
+    "setuptools"
+  ],
+  "azure-mgmt-recoveryservicesbackup": [
+    "setuptools"
+  ],
+  "azure-mgmt-redhatopenshift": [
+    "setuptools"
+  ],
+  "azure-mgmt-redis": [
+    "setuptools"
+  ],
+  "azure-mgmt-relay": [
+    "setuptools"
+  ],
+  "azure-mgmt-reservations": [
+    "setuptools"
+  ],
+  "azure-mgmt-resource": [
+    "setuptools"
+  ],
+  "azure-mgmt-scheduler": [
+    "setuptools"
+  ],
+  "azure-mgmt-search": [
+    "setuptools"
+  ],
+  "azure-mgmt-security": [
+    "setuptools"
+  ],
+  "azure-mgmt-servicebus": [
+    "setuptools"
+  ],
+  "azure-mgmt-servicefabric": [
+    "setuptools"
+  ],
+  "azure-mgmt-servicefabricmanagedclusters": [
+    "setuptools"
+  ],
+  "azure-mgmt-servicelinker": [
+    "setuptools"
+  ],
+  "azure-mgmt-signalr": [
+    "setuptools"
+  ],
+  "azure-mgmt-sql": [
+    "setuptools"
+  ],
+  "azure-mgmt-sqlvirtualmachine": [
+    "setuptools"
+  ],
+  "azure-mgmt-storage": [
+    "setuptools"
+  ],
+  "azure-mgmt-subscription": [
+    "setuptools"
+  ],
+  "azure-mgmt-synapse": [
+    "setuptools"
+  ],
+  "azure-mgmt-trafficmanager": [
+    "setuptools"
+  ],
+  "azure-mgmt-web": [
+    "setuptools"
+  ],
+  "azure-multiapi-storage": [
+    "setuptools"
+  ],
+  "azure-nspkg": [
+    "setuptools"
+  ],
+  "azure-servicebus": [
+    "setuptools"
+  ],
+  "azure-servicefabric": [
+    "setuptools"
+  ],
+  "azure-servicemanagement-legacy": [
+    "setuptools"
+  ],
+  "azure-storage": [
+    "setuptools"
+  ],
+  "azure-storage-blob": [
+    "setuptools"
+  ],
+  "azure-storage-common": [
+    "setuptools"
+  ],
+  "azure-storage-file": [
+    "setuptools"
+  ],
+  "azure-storage-file-share": [
+    "setuptools"
+  ],
+  "azure-storage-nspkg": [
+    "setuptools"
+  ],
+  "azure-storage-queue": [
+    "setuptools"
+  ],
+  "azure-synapse-accesscontrol": [
+    "setuptools"
+  ],
+  "azure-synapse-artifacts": [
+    "setuptools"
+  ],
+  "azure-synapse-managedprivateendpoints": [
+    "setuptools"
+  ],
+  "azure-synapse-spark": [
+    "setuptools"
+  ],
+  "b2sdk": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "babel": [
+    "setuptools"
+  ],
+  "babelfish": [
+    "setuptools"
+  ],
+  "babelgladeextractor": [
+    "setuptools"
+  ],
   "backcall": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
   ],
   "backoff": [
-    "poetry"
+    "poetry",
+    "poetry-core",
+    "setuptools"
+  ],
+  "backports-abc": [
+    "setuptools"
+  ],
+  "backports-cached-property": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "backports-csv": [
+    "setuptools"
+  ],
+  "backports-datetime-fromisoformat": [
+    "setuptools"
+  ],
+  "backports-entry-points-selectable": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "backports-functools-lru-cache": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "backports-shutil-which": [
+    "setuptools"
+  ],
+  "backports-ssl-match-hostname": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "backports-tempfile": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "backports-unittest-mock": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "backports-weakref": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "bagit": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "banal": [
+    "setuptools"
   ],
   "bandit": [
-    "pbr"
+    "pbr",
+    "setuptools"
   ],
-  "bash_kernel": [
-    "flitBuildHook"
+  "bap": [
+    "setuptools"
+  ],
+  "baron": [
+    "setuptools"
+  ],
+  "base36": [
+    "setuptools"
+  ],
+  "base58": [
+    "setuptools"
+  ],
+  "base58check": [
+    "setuptools"
+  ],
+  "baseline": [
+    "setuptools"
+  ],
+  "baselines": [
+    "setuptools"
+  ],
+  "basemap": [
+    "cython",
+    "setuptools"
+  ],
+  "basemap-data": [
+    "setuptools"
+  ],
+  "bash-kernel": [
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "bashlex": [
+    "setuptools"
+  ],
+  "basiciw": [
+    "setuptools"
+  ],
+  "batchgenerators": [
+    "setuptools"
+  ],
+  "batchspawner": [
+    "setuptools"
+  ],
+  "batinfo": [
+    "setuptools"
+  ],
+  "bayesian-optimization": [
+    "setuptools"
+  ],
+  "bayespy": [
+    "setuptools"
+  ],
+  "bbox": [
+    "setuptools"
+  ],
+  "bc-python-hcl2": [
+    "setuptools"
+  ],
+  "bcdoc": [
+    "setuptools"
+  ],
+  "bcrypt": [
+    "setuptools"
+  ],
+  "beancount": [
+    "setuptools"
+  ],
+  "beancount-docverif": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "beanstalkc": [
+    "setuptools"
+  ],
+  "beartype": [
+    "setuptools"
+  ],
+  "beautifulsoup4": [
+    "setuptools"
+  ],
+  "beautifultable": [
+    "setuptools"
+  ],
+  "bech32": [
+    "setuptools"
+  ],
+  "bedup": [
+    "setuptools"
+  ],
+  "behave": [
+    "setuptools"
+  ],
+  "bellows": [
+    "setuptools"
+  ],
+  "beniget": [
+    "setuptools"
+  ],
+  "bespon": [
+    "setuptools"
+  ],
+  "betacode": [
+    "setuptools"
+  ],
+  "betamax": [
+    "setuptools"
+  ],
+  "betamax-matchers": [
+    "setuptools"
+  ],
+  "betamax-serializers": [
+    "setuptools"
+  ],
+  "betterproto": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "bibtexparser": [
+    "setuptools"
+  ],
+  "bidict": [
+    "setuptools"
+  ],
+  "bids-validator": [
+    "setuptools"
+  ],
+  "biliass": [
+    "setuptools"
+  ],
+  "billiard": [
+    "setuptools"
   ],
   "bimmer-connected": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "binaryornot": [
+    "setuptools"
+  ],
+  "bincopy": [
+    "setuptools"
+  ],
+  "binho-host-adapter": [
+    "setuptools"
+  ],
+  "binwalk": [
+    "setuptools"
+  ],
+  "binwalk-full": [
+    "setuptools"
+  ],
+  "biopython": [
+    "setuptools"
+  ],
+  "bip-utils": [
+    "setuptools"
+  ],
+  "biplist": [
+    "setuptools"
+  ],
+  "bitarray": [
+    "setuptools"
+  ],
+  "bitbox02": [
+    "setuptools"
+  ],
+  "bitcoin-utils-fork-minimal": [
+    "setuptools"
+  ],
+  "bitcoinlib": [
+    "setuptools"
+  ],
+  "bitcoinrpc": [
+    "setuptools"
+  ],
+  "bite-parser": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "bitlist": [
+    "setuptools"
+  ],
+  "bitmath": [
+    "setuptools"
+  ],
+  "bitstring": [
+    "setuptools"
+  ],
+  "bitstruct": [
+    "setuptools"
+  ],
+  "bitvavo-aio": [
+    "setuptools"
+  ],
+  "bizkaibus": [
+    "setuptools"
+  ],
+  "bjoern": [
+    "setuptools"
+  ],
+  "bkcharts": [
+    "setuptools"
+  ],
+  "black": [
+    {
+      "buildSystem": "setuptools",
+      "until": "22.10.0"
+    },
+    {
+      "buildSystem": "setuptools-scm",
+      "until": "22.10.0"
+    },
+    {
+      "buildSystem": "hatchling",
+      "from": "22.10.0"
+    },
+    {
+      "buildSystem": "hatch-vcs",
+      "from": "22.10.0"
+    },
+    {
+      "buildSystem": "hatch-fancy-pypi-readme",
+      "from": "22.10.0"
+    }
+  ],
+  "black-macchiato": [
+    "setuptools"
+  ],
+  "blacken-docs": [
+    "setuptools"
+  ],
+  "bleach": [
+    "setuptools"
+  ],
+  "bleak": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "bleak-retry-connector": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "blebox-uniapi": [
+    "setuptools"
+  ],
+  "bless": [
+    "setuptools"
+  ],
+  "blessed": [
+    "setuptools"
+  ],
+  "blessings": [
+    "setuptools"
+  ],
+  "blinker": [
+    "setuptools"
+  ],
+  "blinkpy": [
+    "setuptools"
+  ],
+  "blinkstick": [
+    "setuptools"
   ],
   "blis": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "block-io": [
+    "setuptools"
+  ],
+  "blockchain": [
+    "setuptools"
+  ],
+  "blockdiag": [
+    "setuptools"
+  ],
+  "blocksat-cli": [
+    "setuptools"
+  ],
+  "blspy": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "bluemaestro-ble": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "bluepy": [
+    "setuptools"
+  ],
+  "bluepy-devices": [
+    "setuptools"
+  ],
+  "bluetooth-adapters": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "bluetooth-auto-recovery": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "bluetooth-data-tools": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "bluetooth-sensor-state-data": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "blurhash": [
+    "setuptools"
+  ],
+  "bme280spi": [
+    "setuptools"
+  ],
+  "bme680": [
+    "setuptools"
+  ],
+  "bokeh": [
+    "setuptools"
+  ],
+  "boltons": [
+    "setuptools"
   ],
   "boltztrap2": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "bond-api": [
+    "setuptools"
+  ],
+  "bond-async": [
+    "setuptools"
+  ],
+  "boolean-py": [
+    "setuptools"
+  ],
+  "booleanoperations": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "boost-histogram": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "boschshcpy": [
+    "setuptools"
+  ],
+  "boto": [
+    "setuptools"
+  ],
+  "boto3": [
+    "setuptools"
+  ],
+  "boto3-stubs": [
+    "setuptools"
+  ],
+  "botocore": [
+    "setuptools"
+  ],
+  "botocore-stubs": [
+    "poetry-core"
+  ],
+  "bottle": [
+    "setuptools"
+  ],
+  "bottleneck": [
+    "setuptools"
+  ],
+  "boxx": [
+    "setuptools"
+  ],
+  "bpycv": [
+    "setuptools"
+  ],
+  "bpython": [
+    "setuptools"
+  ],
+  "braceexpand": [
+    "setuptools"
   ],
   "bracex": [
-    "hatchling"
+    "hatchling",
+    "setuptools"
+  ],
+  "braintree": [
+    "setuptools"
+  ],
+  "branca": [
+    "setuptools"
+  ],
+  "bravado-core": [
+    "setuptools"
+  ],
+  "bravia-tv": [
+    "setuptools"
+  ],
+  "breathe": [
+    "setuptools"
+  ],
+  "breezy": [
+    "setuptools"
+  ],
+  "brelpy": [
+    "setuptools"
+  ],
+  "broadlink": [
+    "setuptools"
+  ],
+  "brother": [
+    "setuptools"
+  ],
+  "brother-ql": [
+    "setuptools"
+  ],
+  "brotli": [
+    "setuptools"
+  ],
+  "brotlicffi": [
+    "setuptools"
+  ],
+  "brotlipy": [
+    "setuptools"
+  ],
+  "brottsplatskartan": [
+    "setuptools"
+  ],
+  "browser-cookie3": [
+    "setuptools"
+  ],
+  "brunt": [
+    "setuptools"
   ],
   "bsblan": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "bsddb3": [
+    "setuptools"
+  ],
+  "bsdiff4": [
+    "setuptools"
+  ],
+  "bson": [
+    "setuptools"
+  ],
+  "bsuite": [
+    "setuptools"
+  ],
+  "bt-proximity": [
+    "setuptools"
+  ],
+  "btchip": [
+    "setuptools"
+  ],
+  "bthome-ble": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "btrees": [
+    "setuptools"
+  ],
+  "btrfs": [
+    "setuptools"
+  ],
+  "btrfsutil": [
+    "setuptools"
+  ],
+  "btsocket": [
+    "setuptools"
+  ],
+  "bucketstore": [
+    "setuptools"
+  ],
+  "bugsnag": [
+    "setuptools"
+  ],
+  "bugwarrior": [
+    "setuptools"
+  ],
+  "bugz": [
+    "setuptools"
+  ],
+  "bugzilla": [
+    "setuptools"
+  ],
+  "buienradar": [
+    "setuptools"
   ],
   "build": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
+  ],
+  "buildbot": [
+    "setuptools"
+  ],
+  "buildbot-full": [
+    "setuptools"
+  ],
+  "buildbot-pkg": [
+    "setuptools"
+  ],
+  "buildbot-plugins-console-view": [
+    "setuptools"
+  ],
+  "buildbot-plugins-grid-view": [
+    "setuptools"
+  ],
+  "buildbot-plugins-waterfall-view": [
+    "setuptools"
+  ],
+  "buildbot-plugins-wsgi-dashboards": [
+    "setuptools"
+  ],
+  "buildbot-plugins-www": [
+    "setuptools"
+  ],
+  "buildbot-ui": [
+    "setuptools"
+  ],
+  "buildbot-worker": [
+    "setuptools"
+  ],
+  "buildcatrust": [
+    "setuptools"
+  ],
+  "bumps": [
+    "setuptools"
+  ],
+  "bunch": [
+    "setuptools"
+  ],
+  "bwapy": [
+    "setuptools"
   ],
   "bx-python": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "bytecode": [
+    "setuptools"
+  ],
+  "bz2file": [
+    "setuptools"
+  ],
+  "cachecontrol": [
+    "setuptools"
+  ],
+  "cached-property": [
+    "setuptools"
+  ],
+  "cachelib": [
+    "setuptools"
+  ],
+  "cachetools": [
+    "setuptools"
+  ],
+  "cachey": [
+    "setuptools"
+  ],
+  "cachy": [
+    "setuptools"
+  ],
+  "caio": [
+    "setuptools"
+  ],
+  "cairo-lang": [
+    "setuptools"
+  ],
+  "cairocffi": [
+    "setuptools"
+  ],
+  "cairosvg": [
+    "setuptools"
+  ],
+  "caldav": [
+    "setuptools"
+  ],
+  "callee": [
+    "setuptools"
+  ],
+  "calmjs-parse": [
+    "setuptools"
+  ],
+  "can": [
+    "setuptools"
+  ],
+  "canmatrix": [
+    "setuptools"
+  ],
+  "canonicaljson": [
+    "setuptools"
+  ],
+  "canopen": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "capstone": [
+    "setuptools"
+  ],
+  "capturer": [
+    "setuptools"
+  ],
+  "carbon": [
+    "setuptools"
+  ],
+  "cart": [
+    "setuptools"
   ],
   "cartopy": [
-    "cython"
+    "cython",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "casa-formats-io": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "casbin": [
+    "setuptools"
+  ],
+  "case": [
+    "setuptools"
   ],
   "cassandra-driver": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "castepxbin": [
+    "setuptools"
+  ],
+  "casttube": [
+    "setuptools"
+  ],
+  "catalogue": [
+    "setuptools"
+  ],
+  "catboost": [
+    "setuptools"
   ],
   "cattrs": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "cbeams": [
+    "setuptools"
+  ],
+  "cbor": [
+    "setuptools"
+  ],
+  "cbor2": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "cccolutils": [
+    "setuptools"
+  ],
+  "cchardet": [
+    "setuptools"
+  ],
+  "cdcs": [
+    "setuptools"
+  ],
+  "celery": [
+    "setuptools"
+  ],
+  "celery-redbeat": [
+    "setuptools"
+  ],
+  "cement": [
+    "setuptools"
   ],
   "censys": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "cepa": [
+    "setuptools"
+  ],
+  "cerberus": [
+    "setuptools"
+  ],
+  "cert-chain-resolver": [
+    "setuptools"
+  ],
+  "certauth": [
+    "setuptools"
+  ],
+  "certbot": [
+    "setuptools"
+  ],
+  "certbot-dns-cloudflare": [
+    "setuptools"
+  ],
+  "certbot-dns-google": [
+    "setuptools"
+  ],
+  "certbot-dns-inwx": [
+    "setuptools"
+  ],
+  "certbot-dns-rfc2136": [
+    "setuptools"
+  ],
+  "certbot-dns-route53": [
+    "setuptools"
+  ],
+  "certifi": [
+    "setuptools"
+  ],
+  "certipy": [
+    "setuptools"
+  ],
+  "certomancer": [
+    "setuptools"
+  ],
+  "certvalidator": [
+    "setuptools"
+  ],
+  "cexprtk": [
+    "setuptools"
+  ],
+  "cfel-pylint-checkers": [
     "poetry-core"
   ],
+  "cffi": [
+    "setuptools"
+  ],
+  "cffsubr": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "cfgv": [
+    "setuptools"
+  ],
+  "cfn-flip": [
+    "setuptools"
+  ],
+  "cfn-lint": [
+    "setuptools"
+  ],
+  "cfscrape": [
+    "setuptools"
+  ],
   "cftime": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "cgen": [
+    "setuptools"
+  ],
+  "cgroup-utils": [
+    "setuptools"
+  ],
+  "chacha20poly1305-reuseable": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "chai": [
+    "setuptools"
+  ],
+  "chainer": [
+    "setuptools"
+  ],
+  "chainmap": [
+    "setuptools"
+  ],
+  "chalice": [
+    "setuptools"
+  ],
+  "chameleon": [
+    "setuptools"
+  ],
+  "channels": [
+    "setuptools"
+  ],
+  "channels-redis": [
+    "setuptools"
+  ],
+  "characteristic": [
+    "setuptools"
+  ],
+  "chardet": [
+    "setuptools"
+  ],
+  "charset-normalizer": [
+    "setuptools"
+  ],
+  "chart-studio": [
+    "setuptools"
+  ],
+  "chat-downloader": [
+    "setuptools"
+  ],
+  "check-manifest": [
+    "setuptools"
+  ],
+  "cheetah3": [
+    "setuptools"
+  ],
+  "cheroot": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "cherrypy": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "chess": [
+    "setuptools"
+  ],
+  "chevron": [
+    "setuptools"
+  ],
+  "chex": [
+    "setuptools"
+  ],
+  "chia-rs": [
+    "setuptools"
+  ],
+  "chiabip158": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "chiapos": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "chiavdf": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "chirpstack-api": [
+    "setuptools"
   ],
   "chispa": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "ci-info": [
+    "setuptools"
+  ],
+  "ci-py": [
+    "setuptools"
+  ],
+  "cinemagoer": [
+    "setuptools"
+  ],
+  "circuit-webhook": [
+    "setuptools"
+  ],
+  "circuitbreaker": [
+    "setuptools"
+  ],
+  "cirq": [
+    "setuptools"
+  ],
+  "cirq-aqt": [
+    "setuptools"
+  ],
+  "cirq-core": [
+    "setuptools"
+  ],
+  "cirq-google": [
+    "setuptools"
+  ],
+  "cirq-ionq": [
+    "setuptools"
+  ],
+  "cirq-pasqal": [
+    "setuptools"
+  ],
+  "cirq-rigetti": [
+    "setuptools"
+  ],
+  "cirq-web": [
+    "setuptools"
   ],
   "ciscoconfparse": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "ciscomobilityexpress": [
+    "setuptools"
+  ],
+  "ciso8601": [
+    "setuptools"
+  ],
+  "citeproc-py": [
+    "setuptools"
+  ],
+  "cjkwrap": [
+    "setuptools"
+  ],
+  "ckcc-protocol": [
+    "setuptools"
+  ],
+  "claripy": [
+    "setuptools"
+  ],
+  "class-registry": [
+    "setuptools"
+  ],
+  "classify-imports": [
+    "setuptools"
+  ],
+  "cld2-cffi": [
+    "setuptools"
+  ],
+  "cle": [
+    "setuptools"
   ],
   "cleo": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "clevercsv": [
+    "setuptools"
+  ],
+  "clf": [
+    "setuptools"
+  ],
+  "cli-helpers": [
+    "setuptools"
+  ],
+  "click": [
+    "setuptools"
+  ],
+  "click-completion": [
+    "setuptools"
+  ],
+  "click-configfile": [
+    "setuptools"
+  ],
+  "click-datetime": [
+    "setuptools"
+  ],
+  "click-default-group": [
+    "setuptools"
+  ],
+  "click-didyoumean": [
+    "setuptools"
+  ],
+  "click-help-colors": [
+    "setuptools"
+  ],
+  "click-log": [
+    "setuptools"
+  ],
+  "click-option-group": [
+    "setuptools"
+  ],
+  "click-plugins": [
+    "setuptools"
+  ],
+  "click-repl": [
+    "setuptools"
+  ],
+  "click-spinner": [
+    "setuptools"
+  ],
+  "click-threading": [
+    "setuptools"
+  ],
+  "clickclick": [
+    "setuptools"
+  ],
+  "clickgen": [
+    "setuptools"
+  ],
+  "clickhouse-cityhash": [
+    "setuptools"
+  ],
+  "clickhouse-cli": [
+    "setuptools"
+  ],
+  "clickhouse-driver": [
+    "setuptools"
   ],
   "cliff": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "clifford": [
+    "setuptools"
+  ],
+  "cligj": [
+    "setuptools"
   ],
   "clikit": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "clint": [
+    "setuptools"
+  ],
+  "clintermission": [
+    "setuptools"
+  ],
+  "clize": [
+    "setuptools"
+  ],
+  "clldutils": [
+    "setuptools"
+  ],
+  "cloudflare": [
+    "setuptools"
   ],
   "cloudflare-dyndns": [
-    "poetry"
+    "poetry",
+    "poetry-core",
+    "setuptools"
+  ],
+  "cloudpickle": [
+    "setuptools"
+  ],
+  "cloudscraper": [
+    "setuptools"
+  ],
+  "cloudsmith-api": [
+    "setuptools"
+  ],
+  "cloudsplaining": [
+    "setuptools"
+  ],
+  "cloup": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "clustershell": [
+    "setuptools"
+  ],
+  "clvm": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "clvm-rs": [
+    "setuptools"
+  ],
+  "clvm-tools": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "clvm-tools-rs": [
+    "setuptools"
+  ],
+  "cma": [
+    "setuptools"
+  ],
+  "cmarkgfm": [
+    "setuptools"
+  ],
+  "cmd2": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "cmdline": [
+    "setuptools"
+  ],
+  "cmigemo": [
+    "setuptools"
+  ],
+  "cmsis-pack-manager": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "cmsis-svd": [
+    "setuptools"
+  ],
+  "cnvkit": [
+    "setuptools"
+  ],
+  "co2signal": [
+    "setuptools"
+  ],
+  "coapthon3": [
+    "setuptools"
+  ],
+  "cock": [
+    "setuptools"
+  ],
+  "coconut": [
+    "setuptools"
+  ],
+  "cocotb": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "cocotb-bus": [
+    "setuptools"
+  ],
+  "codecov": [
+    "setuptools"
+  ],
+  "codepy": [
+    "setuptools"
+  ],
+  "codespell": [
+    "setuptools"
+  ],
+  "cogapp": [
+    "setuptools"
+  ],
+  "coincurve": [
+    "setuptools"
+  ],
+  "coinmetrics-api-client": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "colander": [
+    "setuptools"
+  ],
+  "colanderalchemy": [
+    "setuptools"
   ],
   "collections-extended": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "colorama": [
+    "setuptools"
+  ],
+  "colorcet": [
+    "setuptools"
   ],
   "colorclass": [
-    "poetry"
+    "poetry",
+    "setuptools"
+  ],
+  "colored": [
+    "setuptools"
+  ],
+  "colored-traceback": [
+    "setuptools"
+  ],
+  "coloredlogs": [
+    "setuptools"
+  ],
+  "colorful": [
+    "setuptools"
   ],
   "colorhash": [
     "poetry"
   ],
+  "colorlog": [
+    "setuptools"
+  ],
+  "colorlover": [
+    "setuptools"
+  ],
+  "colormath": [
+    "setuptools"
+  ],
+  "colorspacious": [
+    "setuptools"
+  ],
+  "colorthief": [
+    "setuptools"
+  ],
+  "colorzero": [
+    "setuptools"
+  ],
+  "colour": [
+    "setuptools"
+  ],
+  "cometblue-lite": [
+    "setuptools"
+  ],
+  "commandparse": [
+    "setuptools"
+  ],
+  "commentjson": [
+    "setuptools"
+  ],
   "commitizen": [
     "poetry-core"
   ],
+  "commoncode": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "commonmark": [
+    "setuptools"
+  ],
+  "compiledb": [
+    "setuptools"
+  ],
+  "compreffor": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "concurrent-log-handler": [
+    "setuptools"
+  ],
+  "conda": [
+    "setuptools"
+  ],
+  "configargparse": [
+    "setuptools"
+  ],
+  "configclass": [
+    "setuptools"
+  ],
+  "confight": [
+    "setuptools"
+  ],
+  "configobj": [
+    "setuptools"
+  ],
+  "configparser": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "configshell": [
+    "setuptools"
+  ],
+  "confluent-kafka": [
+    "setuptools"
+  ],
   "confuse": [
     "flit-core",
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "connect-box": [
+    "setuptools"
+  ],
+  "connection-pool": [
+    "setuptools"
+  ],
+  "connexion": [
+    "setuptools"
+  ],
+  "cons": [
+    "setuptools"
+  ],
+  "consonance": [
+    "setuptools"
+  ],
+  "constantly": [
+    "setuptools"
+  ],
+  "construct": [
+    "setuptools"
+  ],
+  "consul": [
+    "setuptools"
+  ],
+  "container-inspector": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "contexter": [
+    "setuptools"
+  ],
+  "contextlib2": [
+    "setuptools"
+  ],
+  "contexttimer": [
+    "setuptools"
+  ],
+  "contourpy": [
+    "pybind11",
+    "setuptools"
+  ],
+  "convertdate": [
+    "setuptools"
+  ],
+  "cookiecutter": [
+    "setuptools"
+  ],
+  "cookies": [
+    "setuptools"
+  ],
+  "coordinates": [
+    "setuptools"
   ],
   "copier": [
     "poetry-core"
   ],
+  "coqpit": [
+    "setuptools"
+  ],
+  "coqui-trainer": [
+    "setuptools"
+  ],
+  "coreapi": [
+    "setuptools"
+  ],
+  "coreschema": [
+    "setuptools"
+  ],
+  "cornice": [
+    "setuptools"
+  ],
+  "coronavirus": [
+    "setuptools"
+  ],
+  "corsair-scan": [
+    "setuptools"
+  ],
+  "cot": [
+    "setuptools"
+  ],
+  "covcore": [
+    "setuptools"
+  ],
+  "coverage": [
+    "setuptools"
+  ],
+  "coveralls": [
+    "setuptools"
+  ],
+  "cppe": [
+    "setuptools"
+  ],
+  "cppheaderparser": [
+    "setuptools"
+  ],
+  "cppy": [
+    "setuptools",
+    "setuptools-scm"
+  ],
   "cpyparsing": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "cram": [
+    "setuptools"
+  ],
+  "cramjam": [
+    "setuptools"
   ],
   "crashtest": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "crate": [
+    "setuptools"
+  ],
+  "crayons": [
+    "setuptools"
+  ],
+  "crc16": [
+    "setuptools"
+  ],
+  "crc32c": [
+    "setuptools"
+  ],
+  "crccheck": [
+    "setuptools"
+  ],
+  "crcmod": [
+    "setuptools"
   ],
   "credis": [
     "cython",
     "poetry-core"
   ],
+  "credstash": [
+    "setuptools"
+  ],
+  "criticality-score": [
+    "setuptools"
+  ],
+  "cron-descriptor": [
+    "setuptools"
+  ],
+  "croniter": [
+    "setuptools"
+  ],
+  "cronsim": [
+    "setuptools"
+  ],
+  "crossplane": [
+    "setuptools"
+  ],
+  "crownstone-cloud": [
+    "setuptools"
+  ],
+  "crownstone-core": [
+    "setuptools"
+  ],
+  "crownstone-sse": [
+    "setuptools"
+  ],
+  "crownstone-uart": [
+    "setuptools"
+  ],
   "cruft": [
     "poetry-core"
   ],
+  "cryptg": [
+    "setuptools"
+  ],
+  "cryptography": [
+    "setuptools"
+  ],
+  "cryptolyzer": [
+    "setuptools"
+  ],
+  "cryptoparser": [
+    "setuptools"
+  ],
+  "crytic-compile": [
+    "setuptools"
+  ],
+  "csrmesh": [
+    "setuptools"
+  ],
+  "css-html-js-minify": [
+    "setuptools"
+  ],
+  "css-parser": [
+    "setuptools"
+  ],
+  "csscompressor": [
+    "setuptools"
+  ],
+  "cssmin": [
+    "setuptools"
+  ],
+  "cssselect": [
+    "setuptools"
+  ],
   "cssselect2": [
     "flit",
-    "flit-core"
+    "flit-core",
+    "setuptools"
+  ],
+  "cssutils": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "csvw": [
+    "setuptools"
+  ],
+  "cucumber-tag-expressions": [
+    "setuptools"
+  ],
+  "cufflinks": [
+    "setuptools"
+  ],
+  "curio": [
+    "setuptools"
+  ],
+  "curtsies": [
+    "setuptools"
+  ],
+  "curve25519-donna": [
+    "setuptools"
+  ],
+  "cvxopt": [
+    "setuptools"
+  ],
+  "cvxpy": [
+    "setuptools"
   ],
   "cwcwidth": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "cx-freeze": [
+    "setuptools"
+  ],
+  "cx-oracle": [
+    "setuptools"
+  ],
+  "cxxfilt": [
+    "setuptools"
+  ],
+  "cycler": [
+    "setuptools"
   ],
   "cyclonedx-python-lib": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "cymem": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "cypari2": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "cypherpunkpay": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "cysignals": [
+    "cython",
+    "setuptools"
+  ],
+  "cysimdjson": [
     "cython"
   ],
+  "cython": [
+    "setuptools"
+  ],
+  "cython-3": [
+    "setuptools"
+  ],
+  "cytoolz": [
+    "cython",
+    "setuptools"
+  ],
+  "d20": [
+    "setuptools"
+  ],
+  "d2to1": [
+    "setuptools"
+  ],
+  "dacite": [
+    "setuptools"
+  ],
+  "daemonize": [
+    "setuptools"
+  ],
+  "daemonocle": [
+    "setuptools"
+  ],
+  "dalle-mini": [
+    "setuptools"
+  ],
+  "daphne": [
+    "setuptools"
+  ],
+  "darglint": [
+    "poetry"
+  ],
+  "dasbus": [
+    "setuptools"
+  ],
+  "dash": [
+    "setuptools"
+  ],
+  "dash-core-components": [
+    "setuptools"
+  ],
+  "dash-html-components": [
+    "setuptools"
+  ],
+  "dash-renderer": [
+    "setuptools"
+  ],
+  "dash-table": [
+    "setuptools"
+  ],
+  "dask": [
+    "setuptools"
+  ],
+  "dask-gateway": [
+    "setuptools"
+  ],
+  "dask-gateway-server": [
+    "setuptools"
+  ],
+  "dask-glm": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "dask-image": [
+    "setuptools"
+  ],
+  "dask-jobqueue": [
+    "setuptools"
+  ],
+  "dask-ml": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "dask-mpi": [
+    "setuptools"
+  ],
+  "dask-yarn": [
+    "setuptools"
+  ],
+  "databases": [
+    "setuptools"
+  ],
+  "databricks-cli": [
+    "setuptools"
+  ],
+  "databricks-connect": [
+    "setuptools"
+  ],
+  "databricks-sql-connector": [
+    "poetry-core"
+  ],
+  "dataclasses-json": [
+    "setuptools"
+  ],
+  "dataclasses-serialization": [
+    "setuptools"
+  ],
+  "datadiff": [
+    "setuptools"
+  ],
   "datadog": [
-    "hatchling"
+    "hatchling",
+    "setuptools"
+  ],
+  "datafusion": [
+    "setuptools"
+  ],
+  "datamodeldict": [
+    "setuptools"
+  ],
+  "datapoint": [
+    "setuptools"
+  ],
+  "dataset": [
+    "setuptools"
+  ],
+  "datasets": [
+    "setuptools"
+  ],
+  "datasette": [
+    "setuptools"
+  ],
+  "datasette-template-sql": [
+    "setuptools"
+  ],
+  "datashader": [
+    "setuptools"
+  ],
+  "datashape": [
+    "setuptools"
+  ],
+  "datauri": [
+    "setuptools"
+  ],
+  "dateparser": [
+    "setuptools"
+  ],
+  "dateutil": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "dateutils": [
+    "setuptools"
   ],
   "datrie": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "dawg-python": [
+    "setuptools"
+  ],
+  "db-dtypes": [
+    "setuptools"
+  ],
+  "dbf": [
+    "setuptools"
+  ],
+  "dbfread": [
+    "setuptools"
+  ],
+  "dbus-client-gen": [
+    "setuptools"
+  ],
+  "dbus-fast": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "dbus-next": [
+    "setuptools"
+  ],
+  "dbus-python": [
+    "setuptools"
+  ],
+  "dbus-python-client-gen": [
+    "setuptools"
+  ],
+  "dbus-signature-pyparsing": [
+    "setuptools"
+  ],
+  "dbutils": [
+    "setuptools"
+  ],
+  "ddt": [
+    "setuptools"
   ],
   "ddtrace": [
     "cython"
   ],
+  "deal": [
+    "flit-core",
+    "setuptools"
+  ],
+  "deal-solver": [
+    "flit-core",
+    "setuptools"
+  ],
+  "deap": [
+    "setuptools"
+  ],
+  "debian": [
+    "setuptools"
+  ],
+  "debian-inspector": [
+    "setuptools",
+    "setuptools-scm"
+  ],
   "debtcollector": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "debts": [
+    "setuptools"
+  ],
+  "debuglater": [
+    "setuptools"
+  ],
+  "debugpy": [
+    "setuptools"
+  ],
+  "decli": [
+    "setuptools"
+  ],
+  "decopatch": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "decorator": [
+    "setuptools"
+  ],
+  "deemix": [
+    "setuptools"
+  ],
+  "deep-chainmap": [
+    "setuptools"
+  ],
+  "deep-merge": [
+    "setuptools"
+  ],
+  "deep-translator": [
+    "setuptools"
+  ],
+  "deepdiff": [
+    "setuptools"
+  ],
+  "deepdish": [
+    "setuptools"
+  ],
+  "deepmerge": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "deeptoolsintervals": [
+    "setuptools"
+  ],
+  "deepwave": [
+    "setuptools"
+  ],
+  "deezer-py": [
+    "setuptools"
   ],
   "deezer-python": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "defcon": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "deform": [
+    "setuptools"
+  ],
+  "defusedxml": [
+    "setuptools"
+  ],
+  "delegator-py": [
+    "setuptools"
+  ],
+  "delorean": [
+    "setuptools"
+  ],
+  "deltachat": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "deluge-client": [
+    "setuptools"
+  ],
+  "demjson3": [
+    "setuptools"
+  ],
+  "dendropy": [
+    "setuptools"
+  ],
+  "denonavr": [
+    "setuptools"
+  ],
+  "dependency-injector": [
+    "setuptools"
+  ],
+  "deprecated": [
+    "setuptools"
+  ],
+  "deprecation": [
+    "setuptools"
+  ],
+  "derpconf": [
+    "setuptools"
+  ],
+  "desktop-notifier": [
+    "setuptools"
+  ],
+  "detect-secrets": [
+    "setuptools"
+  ],
+  "devito": [
+    "setuptools"
+  ],
+  "devolo-home-control-api": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "devolo-plc-api": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "devtools": [
+    "setuptools"
   ],
   "diagrams": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "diceware": [
+    "setuptools"
+  ],
+  "dicom2nifti": [
+    "setuptools"
+  ],
+  "dict2xml": [
+    "setuptools"
+  ],
+  "dictdiffer": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "dictionaries": [
+    "setuptools"
+  ],
+  "dictpath": [
+    "setuptools"
+  ],
+  "dicttoxml": [
+    "setuptools"
+  ],
+  "dicttoxml2": [
+    "setuptools"
+  ],
+  "diff-cover": [
+    "setuptools"
+  ],
+  "diff-match-patch": [
+    "setuptools"
+  ],
+  "digi-xbee": [
+    "setuptools"
+  ],
+  "digital-ocean": [
+    "setuptools"
+  ],
+  "dill": [
+    "setuptools"
+  ],
+  "dinghy": [
+    "setuptools"
+  ],
+  "dingz": [
+    "setuptools"
+  ],
+  "diofant": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "dipy": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "directv": [
+    "setuptools"
+  ],
+  "dirty-equals": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "discid": [
+    "setuptools"
+  ],
+  "discogs-client": [
+    "setuptools"
+  ],
+  "discordpy": [
+    "setuptools"
   ],
   "discovery30303": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "diskcache": [
+    "setuptools"
+  ],
+  "dissononce": [
+    "setuptools"
+  ],
+  "distlib": [
+    "setuptools"
+  ],
+  "distorm3": [
+    "setuptools"
+  ],
+  "distrax": [
+    "setuptools"
+  ],
+  "distributed": [
+    "setuptools"
+  ],
+  "distro": [
+    "setuptools"
+  ],
+  "distutils-extra": [
+    "setuptools"
+  ],
+  "dj-database-url": [
+    "setuptools"
+  ],
+  "dj-email-url": [
+    "setuptools"
+  ],
+  "dj-rest-auth": [
+    "setuptools"
+  ],
+  "dj-search-url": [
+    "setuptools"
+  ],
+  "django": [
+    "setuptools"
+  ],
+  "django-3": [
+    "setuptools"
+  ],
+  "django-4": [
+    "setuptools"
+  ],
+  "django-allauth": [
+    "setuptools"
+  ],
+  "django-anymail": [
+    "setuptools"
+  ],
+  "django-appconf": [
+    "setuptools"
+  ],
+  "django-auth-ldap": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "django-cache-url": [
+    "setuptools"
+  ],
+  "django-cacheops": [
+    "setuptools"
+  ],
+  "django-celery-beat": [
+    "setuptools"
+  ],
+  "django-celery-email": [
+    "setuptools"
+  ],
+  "django-classytags": [
+    "setuptools"
+  ],
+  "django-cleanup": [
+    "setuptools"
+  ],
+  "django-colorful": [
+    "setuptools"
+  ],
+  "django-compat": [
+    "setuptools"
+  ],
+  "django-compressor": [
+    "setuptools"
+  ],
+  "django-configurations": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "django-contrib-comments": [
+    "setuptools"
+  ],
+  "django-cors-headers": [
+    "setuptools"
+  ],
+  "django-cryptography": [
+    "setuptools"
+  ],
+  "django-csp": [
+    "setuptools"
+  ],
+  "django-debug-toolbar": [
+    "setuptools"
+  ],
+  "django-discover-runner": [
+    "setuptools"
+  ],
+  "django-dynamic-preferences": [
+    "setuptools"
+  ],
+  "django-encrypted-model-fields": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "django-environ": [
+    "setuptools"
+  ],
+  "django-extensions": [
+    "setuptools"
+  ],
+  "django-filter": [
+    "setuptools"
+  ],
+  "django-formtools": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "django-graphiql-debug-toolbar": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "django-gravatar2": [
+    "setuptools"
+  ],
+  "django-guardian": [
+    "setuptools"
+  ],
+  "django-haystack": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "django-health-check": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "django-hijack": [
+    "setuptools"
+  ],
+  "django-ipware": [
+    "setuptools"
+  ],
+  "django-jinja": [
+    "setuptools"
+  ],
+  "django-js-asset": [
+    "setuptools"
+  ],
+  "django-logentry-admin": [
+    "setuptools"
+  ],
+  "django-mailman3": [
+    "setuptools"
+  ],
+  "django-maintenance-mode": [
+    "setuptools"
+  ],
+  "django-model-utils": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "django-modelcluster": [
+    "setuptools"
+  ],
+  "django-mptt": [
+    "setuptools"
+  ],
+  "django-multiselectfield": [
+    "setuptools"
+  ],
+  "django-nose": [
+    "setuptools"
+  ],
+  "django-oauth-toolkit": [
+    "setuptools"
+  ],
+  "django-otp": [
+    "setuptools"
+  ],
+  "django-paintstore": [
+    "setuptools"
+  ],
+  "django-pglocks": [
+    "setuptools"
+  ],
+  "django-picklefield": [
+    "setuptools"
+  ],
+  "django-polymorphic": [
+    "setuptools"
+  ],
+  "django-postgresql-netfields": [
+    "setuptools"
+  ],
+  "django-prometheus": [
+    "setuptools"
+  ],
+  "django-q": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "django-ranged-response": [
+    "setuptools"
+  ],
+  "django-raster": [
+    "setuptools"
+  ],
+  "django-redis": [
+    "setuptools"
+  ],
+  "django-rest-auth": [
+    "setuptools"
+  ],
+  "django-rest-polymorphic": [
+    "setuptools"
+  ],
+  "django-reversion": [
+    "setuptools"
+  ],
+  "django-rq": [
+    "setuptools"
+  ],
+  "django-sesame": [
+    "setuptools"
+  ],
+  "django-silk": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "django-simple-captcha": [
+    "setuptools"
+  ],
+  "django-sites": [
+    "setuptools"
+  ],
+  "django-sr": [
+    "setuptools"
+  ],
+  "django-statici18n": [
+    "setuptools"
+  ],
+  "django-storages": [
+    "setuptools"
+  ],
+  "django-stubs": [
+    "setuptools"
+  ],
+  "django-stubs-ext": [
+    "setuptools"
+  ],
+  "django-tables2": [
+    "setuptools"
+  ],
+  "django-tagging": [
+    "setuptools"
+  ],
+  "django-taggit": [
+    "setuptools"
+  ],
+  "django-tastypie": [
+    "setuptools"
   ],
   "django-timezone-field": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "django-treebeard": [
+    "setuptools"
+  ],
+  "django-versatileimagefield": [
+    "setuptools"
+  ],
+  "django-webpack-loader": [
+    "setuptools"
+  ],
+  "django-widget-tweaks": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "djangoql": [
+    "setuptools"
+  ],
+  "djangorestframework": [
+    "setuptools"
+  ],
+  "djangorestframework-camel-case": [
+    "setuptools"
+  ],
+  "djangorestframework-dataclasses": [
+    "setuptools"
+  ],
+  "djangorestframework-guardian": [
+    "setuptools"
+  ],
+  "djangorestframework-jwt": [
+    "setuptools"
+  ],
+  "djangorestframework-recursive": [
+    "setuptools"
+  ],
+  "djangorestframework-simplejwt": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "djmail": [
+    "setuptools"
+  ],
+  "dkimpy": [
+    "setuptools"
+  ],
+  "dlib": [
+    "setuptools"
+  ],
+  "dlinfo": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "dlx": [
+    "setuptools"
+  ],
+  "dm-env": [
+    "setuptools"
+  ],
+  "dm-haiku": [
+    "setuptools"
+  ],
+  "dm-sonnet": [
+    "setuptools"
+  ],
+  "dm-tree": [
+    "setuptools"
+  ],
+  "dmenu-python": [
+    "setuptools"
+  ],
+  "dnachisel": [
+    "setuptools"
+  ],
+  "dns": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "dnslib": [
+    "setuptools"
   ],
   "dnspython": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "dnspythonchia": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "doc8": [
-    "pbr"
+    "pbr",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "docformatter": [
+    {
+      "buildSystem": "poetry-core",
+      "from": "1.5.0"
+    },
+    "setuptools"
+  ],
+  "docker": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "docker-py": [
+    "setuptools"
+  ],
+  "docker-pycreds": [
+    "setuptools"
+  ],
+  "dockerfile-parse": [
+    "setuptools"
+  ],
+  "dockerpty": [
+    "setuptools"
+  ],
+  "dockerspawner": [
+    "setuptools"
+  ],
+  "docloud": [
+    "setuptools"
+  ],
+  "docopt": [
+    "setuptools"
+  ],
+  "docopt-ng": [
+    "setuptools"
+  ],
+  "docplex": [
+    "setuptools"
+  ],
+  "docrep": [
+    "setuptools"
   ],
   "docstring-parser": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "docstring-to-markdown": [
+    "setuptools"
+  ],
+  "doctest-ignore-unicode": [
+    "setuptools"
+  ],
+  "docutils": [
+    "setuptools"
+  ],
+  "docx2python": [
+    "setuptools"
+  ],
+  "docx2txt": [
+    "setuptools"
+  ],
+  "dodgy": [
+    "setuptools"
+  ],
+  "dogpile-cache": [
+    "setuptools"
+  ],
+  "dogtail": [
+    "setuptools"
+  ],
+  "doit": [
+    "setuptools"
+  ],
+  "doit-py": [
+    "setuptools"
+  ],
+  "domeneshop": [
+    "setuptools"
+  ],
+  "dominate": [
+    "setuptools"
+  ],
+  "doorbirdpy": [
+    "setuptools"
+  ],
+  "dopy": [
+    "setuptools"
+  ],
+  "dot2tex": [
+    "setuptools"
+  ],
+  "dotmap": [
+    "setuptools"
+  ],
+  "dotty-dict": [
+    "poetry-core",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "downloader-cli": [
+    "setuptools"
+  ],
+  "dparse": [
+    "setuptools"
+  ],
+  "dparse2": [
+    "setuptools"
+  ],
+  "dpath": [
+    "setuptools"
+  ],
+  "dpcontracts": [
+    "setuptools"
+  ],
+  "dpkt": [
+    "setuptools"
+  ],
+  "dragonfly": [
+    "setuptools"
+  ],
+  "dremel3dpy": [
+    "setuptools"
+  ],
+  "drf-jwt": [
+    "setuptools"
+  ],
+  "drf-nested-routers": [
+    "setuptools"
+  ],
+  "drf-spectacular": [
+    "setuptools"
+  ],
+  "drf-spectacular-sidecar": [
+    "setuptools"
+  ],
+  "drf-yasg": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "drivelib": [
+    "setuptools"
+  ],
+  "drms": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "dropbox": [
+    "setuptools"
+  ],
+  "ds-store": [
+    "setuptools"
+  ],
+  "ds4drv": [
+    "setuptools"
+  ],
+  "dsinternals": [
+    "setuptools"
+  ],
+  "dsmr-parser": [
+    "setuptools"
   ],
   "dtlssocket": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "ducc0": [
+    "setuptools"
   ],
   "duckdb": [
-    "pybind11"
+    "pybind11",
+    "setuptools",
+    "setuptools-scm"
   ],
   "duckdb-engine": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "duecredit": [
+    "setuptools"
+  ],
+  "duet": [
+    "setuptools"
+  ],
+  "dufte": [
+    "setuptools"
+  ],
+  "dugong": [
+    "setuptools"
+  ],
+  "dulwich": [
+    "setuptools"
   ],
   "dunamai": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "dungeon-eos": [
+    "setuptools"
+  ],
+  "duo-client": [
+    "setuptools"
+  ],
+  "durus": [
+    "setuptools"
+  ],
+  "dvc-data": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "dvc-objects": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "dvc-render": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "dvc-task": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "dvclive": [
+    "setuptools"
+  ],
+  "dwdwfsapi": [
+    "setuptools"
+  ],
+  "dyn": [
+    "setuptools"
+  ],
+  "dynalite-devices": [
+    "setuptools"
   ],
   "dynd": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "eagle100": [
+    "setuptools"
+  ],
+  "easy-thumbnails": [
+    "setuptools"
+  ],
+  "easydict": [
+    "setuptools"
+  ],
+  "easygui": [
+    "setuptools"
+  ],
+  "easyprocess": [
+    "setuptools"
+  ],
+  "easywatch": [
+    "setuptools"
+  ],
+  "ebaysdk": [
+    "setuptools"
+  ],
+  "ec2instanceconnectcli": [
+    "setuptools"
+  ],
+  "ecdsa": [
+    "setuptools"
+  ],
+  "ecoaliface": [
+    "setuptools"
+  ],
+  "ecos": [
+    "setuptools"
+  ],
+  "ecpy": [
+    "setuptools"
   ],
   "ecs-logging": [
     "flit-core",
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "ed25519": [
+    "setuptools"
+  ],
+  "edalize": [
+    "setuptools"
+  ],
+  "editables": [
+    "setuptools"
   ],
   "editdistance": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "editdistance-s": [
+    "setuptools"
+  ],
+  "editorconfig": [
+    "setuptools"
+  ],
+  "edward": [
+    "setuptools"
   ],
   "eebrightbox": [
     "pbr"
   ],
+  "effect": [
+    "setuptools"
+  ],
+  "eggdeps": [
+    "setuptools"
+  ],
+  "egginstallhook": [
+    "setuptools"
+  ],
+  "einops": [
+    "setuptools"
+  ],
   "eiswarnung": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "elastic-apm": [
+    "setuptools"
+  ],
+  "elasticsearch": [
+    "setuptools"
+  ],
+  "elasticsearch-dsl": [
+    "setuptools"
+  ],
+  "elasticsearchdsl": [
+    "setuptools"
   ],
   "elegy": [
-    "poetry"
+    "poetry",
+    "setuptools"
+  ],
+  "elementpath": [
+    "setuptools"
+  ],
+  "elevate": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "elgato": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "eliot": [
+    "setuptools"
+  ],
+  "eliqonline": [
+    "setuptools"
   ],
   "elkm1-lib": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "elmax": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "elmax-api": [
+    "setuptools"
+  ],
+  "email-validator": [
+    "setuptools"
+  ],
+  "emailthreads": [
+    "setuptools"
+  ],
+  "embrace": [
+    "setuptools"
+  ],
+  "emcee": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "emoji": [
+    "setuptools"
+  ],
+  "empty-files": [
+    "setuptools"
+  ],
+  "empy": [
+    "setuptools"
+  ],
+  "emulated-roku": [
+    "setuptools"
+  ],
+  "emv": [
+    "setuptools"
+  ],
+  "enaml": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "enamlx": [
+    "setuptools"
+  ],
+  "enhancements": [
+    "setuptools"
+  ],
+  "enlighten": [
+    "setuptools"
+  ],
+  "enocean": [
+    "setuptools"
+  ],
+  "enrich": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "entrance": [
+    "setuptools"
+  ],
+  "entrance-with-router-features": [
+    "setuptools"
+  ],
+  "entry-points-txt": [
+    "setuptools"
+  ],
+  "entrypoint2": [
+    "setuptools"
   ],
   "entrypoints": [
     "flit",
-    "flit-core"
+    "flit-core",
+    "setuptools"
   ],
   "enturclient": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "enum-compat": [
+    "setuptools"
+  ],
+  "enum34": [
+    "setuptools"
   ],
   "enumatch": [
     "poetry"
   ],
+  "env-canada": [
+    "setuptools"
+  ],
+  "environmental-override": [
+    "setuptools"
+  ],
+  "environs": [
+    "setuptools"
+  ],
+  "envisage": [
+    "setuptools"
+  ],
+  "envoy-reader": [
+    "setuptools"
+  ],
+  "envoy-utils": [
+    "setuptools"
+  ],
   "envs": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "enzyme": [
+    "setuptools"
+  ],
+  "epc": [
+    "setuptools"
+  ],
+  "ephem": [
+    "setuptools"
+  ],
+  "ephemeral-port-reserve": [
+    "setuptools"
+  ],
+  "epson-projector": [
+    "setuptools"
+  ],
+  "eradicate": [
+    "setuptools"
+  ],
+  "erppeek": [
+    "setuptools"
+  ],
+  "escapism": [
+    "setuptools"
+  ],
+  "esprima": [
+    "setuptools"
+  ],
+  "et-xmlfile": [
+    "setuptools"
+  ],
+  "etcd": [
+    "setuptools"
+  ],
+  "ete3": [
+    "setuptools"
+  ],
+  "etebase": [
+    "setuptools"
+  ],
+  "etebase-server": [
+    "setuptools"
+  ],
+  "etelemetry": [
+    "setuptools"
+  ],
+  "eternalegypt": [
+    "setuptools"
+  ],
+  "etesync": [
+    "setuptools"
+  ],
+  "eth-abi": [
+    "setuptools"
+  ],
+  "eth-account": [
+    "setuptools"
+  ],
+  "eth-hash": [
+    "setuptools"
+  ],
+  "eth-keyfile": [
+    "setuptools"
+  ],
+  "eth-keys": [
+    "setuptools"
+  ],
+  "eth-rlp": [
+    "setuptools"
+  ],
+  "eth-typing": [
+    "setuptools"
+  ],
+  "eth-utils": [
+    "setuptools"
+  ],
+  "etils": [
+    "flit-core",
+    "setuptools"
+  ],
+  "etuples": [
+    "setuptools"
+  ],
+  "ev3dev2": [
+    "setuptools"
+  ],
+  "evdev": [
+    "setuptools"
+  ],
+  "eve": [
+    "setuptools"
+  ],
+  "eventlet": [
+    "setuptools"
+  ],
+  "events": [
+    "setuptools"
+  ],
+  "evohome-async": [
+    "setuptools"
+  ],
+  "evtx": [
+    "setuptools"
+  ],
+  "ewmh": [
+    "setuptools"
   ],
   "exceptiongroup": [
     "flit-core",
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "exchangelib": [
+    "setuptools"
+  ],
+  "exdown": [
+    "setuptools"
+  ],
+  "execnet": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "executing": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "executor": [
+    "setuptools"
+  ],
+  "exif": [
+    "setuptools"
+  ],
+  "exifread": [
+    "setuptools"
+  ],
+  "expects": [
+    "setuptools"
+  ],
+  "expecttest": [
+    "poetry",
+    "setuptools"
+  ],
+  "expiringdict": [
+    "setuptools"
+  ],
+  "explorerscript": [
+    "setuptools"
+  ],
+  "exrex": [
+    "setuptools"
+  ],
+  "extractcode": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "extractcode-7z": [
+    "setuptools"
+  ],
+  "extractcode-libarchive": [
+    "setuptools"
+  ],
+  "extras": [
+    "setuptools"
+  ],
+  "eyed3": [
+    "setuptools"
+  ],
+  "ezdxf": [
+    "setuptools"
+  ],
+  "ezyrb": [
+    "setuptools"
+  ],
+  "f90nml": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "faadelays": [
+    "setuptools"
+  ],
+  "fabric": [
+    "setuptools"
+  ],
+  "fabulous": [
+    "setuptools"
+  ],
+  "face": [
+    "setuptools"
+  ],
+  "face-recognition": [
+    "setuptools"
+  ],
+  "face-recognition-models": [
+    "setuptools"
+  ],
+  "facebook-sdk": [
+    "setuptools"
+  ],
+  "facedancer": [
+    "setuptools"
+  ],
+  "factory-boy": [
+    "setuptools"
+  ],
+  "faiss": [
+    "setuptools"
+  ],
+  "fake-useragent": [
+    "setuptools"
+  ],
+  "faker": [
+    "setuptools"
+  ],
+  "fakeredis": [
+    "poetry-core",
+    "setuptools"
   ],
   "falcon": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "faraday-agent-parameters-types": [
+    "setuptools"
+  ],
+  "faraday-plugins": [
+    "setuptools"
   ],
   "fastapi": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "hatchling",
+    "setuptools"
+  ],
+  "fastapi-mail": [
+    "poetry-core",
+    "setuptools",
+    "hatchling"
   ],
   "fastapi-restful": [
     "poetry"
   ],
   "fastavro": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "fastbencode": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "fastcache": [
+    "setuptools"
+  ],
+  "fastcore": [
+    "setuptools"
+  ],
+  "fastdiff": [
+    "setuptools"
   ],
   "fastdtw": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "fastecdsa": [
+    "setuptools"
+  ],
+  "fasteners": [
+    "setuptools"
+  ],
+  "fastentrypoints": [
+    "setuptools"
+  ],
+  "fastimport": [
+    "setuptools"
+  ],
+  "fastjsonschema": [
+    "setuptools"
+  ],
+  "fastnumbers": [
+    "setuptools"
+  ],
+  "fastpair": [
+    "setuptools"
+  ],
+  "fastparquet": [
+    "setuptools"
+  ],
+  "fastpbkdf2": [
+    "setuptools"
+  ],
+  "fastprogress": [
+    "setuptools"
+  ],
+  "fastrlock": [
+    "setuptools"
+  ],
+  "fasttext": [
+    "setuptools"
+  ],
+  "favicon": [
+    "setuptools"
+  ],
+  "fb-re2": [
+    "setuptools"
+  ],
+  "fe25519": [
+    "setuptools"
+  ],
+  "feedgen": [
+    "setuptools"
+  ],
+  "feedgenerator": [
+    "setuptools"
+  ],
+  "feedparser": [
+    "setuptools"
+  ],
+  "fenics": [
+    "setuptools"
+  ],
+  "ffcv": [
+    "setuptools"
+  ],
+  "ffmpeg-progress-yield": [
+    "setuptools"
+  ],
+  "ffmpeg-python": [
+    "setuptools"
   ],
   "fhconfparser": [
     "poetry-core"
   ],
+  "fiblary3-fork": [
+    "setuptools"
+  ],
+  "fido2": [
+    "setuptools"
+  ],
+  "fields": [
+    "setuptools"
+  ],
+  "file-read-backwards": [
+    "setuptools"
+  ],
+  "filebrowser-safe": [
+    "setuptools"
+  ],
+  "filebytes": [
+    "setuptools"
+  ],
+  "filecheck": [
+    "poetry",
+    "setuptools"
+  ],
+  "filelock": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "filemagic": [
+    "setuptools"
+  ],
+  "filetype": [
+    "setuptools"
+  ],
+  "filterpy": [
+    "setuptools"
+  ],
   "finalfusion": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "findimports": [
+    "setuptools"
+  ],
+  "findpython": [
+    "setuptools"
+  ],
+  "fingerprints": [
+    "setuptools"
+  ],
+  "finitude": [
+    "setuptools"
+  ],
+  "fints": [
+    "setuptools"
+  ],
+  "fiona": [
+    "setuptools"
+  ],
+  "fipy": [
+    "setuptools"
+  ],
+  "fire": [
+    "setuptools"
+  ],
+  "fireflyalgorithm": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "firetv": [
+    "setuptools"
+  ],
+  "first": [
+    "setuptools"
+  ],
+  "fitbit": [
+    "setuptools"
+  ],
+  "fivem-api": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "fixerio": [
+    "setuptools"
   ],
   "fixtures": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "fjaraskupan": [
+    "setuptools"
+  ],
+  "flake8": [
+    "setuptools"
+  ],
+  "flake8-blind-except": [
+    "setuptools"
+  ],
+  "flake8-bugbear": [
+    "setuptools"
   ],
   "flake8-debugger": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "flake8-docstrings": [
+    "setuptools"
+  ],
+  "flake8-future-import": [
+    "setuptools"
+  ],
+  "flake8-import-order": [
+    "setuptools"
+  ],
+  "flake8-length": [
+    "setuptools"
+  ],
+  "flake8-polyfill": [
+    "setuptools"
   ],
   "flake8-print": [
     "poetry-core"
   ],
-  "flatten-dict": [
+  "flaky": [
+    "setuptools"
+  ],
+  "flametree": [
+    "setuptools"
+  ],
+  "flammkuchen": [
+    "setuptools"
+  ],
+  "flashtext": [
+    "setuptools"
+  ],
+  "flask": [
+    "setuptools"
+  ],
+  "flask-admin": [
+    "setuptools"
+  ],
+  "flask-api": [
+    "setuptools"
+  ],
+  "flask-appbuilder": [
+    "setuptools"
+  ],
+  "flask-assets": [
+    "setuptools"
+  ],
+  "flask-autoindex": [
+    "setuptools"
+  ],
+  "flask-babel": [
+    "setuptools"
+  ],
+  "flask-babelex": [
+    "setuptools"
+  ],
+  "flask-basicauth": [
+    "setuptools"
+  ],
+  "flask-bcrypt": [
+    "setuptools"
+  ],
+  "flask-bootstrap": [
+    "setuptools"
+  ],
+  "flask-caching": [
+    "setuptools"
+  ],
+  "flask-common": [
+    "setuptools"
+  ],
+  "flask-compress": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "flask-cors": [
+    "setuptools"
+  ],
+  "flask-elastic": [
+    "setuptools"
+  ],
+  "flask-gravatar": [
+    "setuptools"
+  ],
+  "flask-httpauth": [
+    "setuptools"
+  ],
+  "flask-jwt-extended": [
+    "setuptools"
+  ],
+  "flask-limiter": [
+    "setuptools"
+  ],
+  "flask-login": [
+    "setuptools"
+  ],
+  "flask-mail": [
+    "setuptools"
+  ],
+  "flask-mailman": [
     "poetry-core"
   ],
+  "flask-marshmallow": [
+    "setuptools"
+  ],
+  "flask-migrate": [
+    "setuptools"
+  ],
+  "flask-mongoengine": [
+    "setuptools"
+  ],
+  "flask-openid": [
+    "setuptools"
+  ],
+  "flask-paginate": [
+    "setuptools"
+  ],
+  "flask-paranoid": [
+    "setuptools"
+  ],
+  "flask-principal": [
+    "setuptools"
+  ],
+  "flask-pymongo": [
+    "setuptools"
+  ],
+  "flask-restful": [
+    "setuptools"
+  ],
+  "flask-restplus": [
+    "setuptools"
+  ],
+  "flask-restx": [
+    "setuptools"
+  ],
+  "flask-reverse-proxy-fix": [
+    "setuptools"
+  ],
+  "flask-script": [
+    "setuptools"
+  ],
+  "flask-seasurf": [
+    "setuptools"
+  ],
+  "flask-security-too": [
+    "setuptools"
+  ],
+  "flask-session": [
+    "setuptools"
+  ],
+  "flask-silk": [
+    "setuptools"
+  ],
+  "flask-socketio": [
+    "setuptools"
+  ],
+  "flask-sockets": [
+    "setuptools"
+  ],
+  "flask-sqlalchemy": [
+    "setuptools"
+  ],
+  "flask-sslify": [
+    "setuptools"
+  ],
+  "flask-swagger": [
+    "setuptools"
+  ],
+  "flask-swagger-ui": [
+    "setuptools"
+  ],
+  "flask-talisman": [
+    "setuptools"
+  ],
+  "flask-testing": [
+    "setuptools"
+  ],
+  "flask-versioned": [
+    "setuptools"
+  ],
+  "flask-wtf": [
+    "setuptools"
+  ],
+  "flaskbabel": [
+    "setuptools"
+  ],
+  "flatbuffers": [
+    "setuptools"
+  ],
+  "flatdict": [
+    "setuptools"
+  ],
+  "flatten-dict": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "flax": [
+    "setuptools"
+  ],
+  "fleep": [
+    "setuptools"
+  ],
+  "flexmock": [
+    "setuptools"
+  ],
+  "flickrapi": [
+    "setuptools"
+  ],
   "flipr-api": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "flit": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
+  ],
+  "flit-core": [
+    "setuptools"
+  ],
+  "flower": [
+    "setuptools"
+  ],
+  "flowlogs-reader": [
+    "setuptools"
+  ],
+  "fluent-logger": [
+    "setuptools"
+  ],
+  "flufl-bounce": [
+    "setuptools"
+  ],
+  "flufl-i18n": [
+    "setuptools"
+  ],
+  "flufl-lock": [
+    "setuptools"
+  ],
+  "flux-led": [
+    "setuptools"
+  ],
+  "flynt": [
+    "setuptools"
+  ],
+  "fn": [
+    "setuptools"
+  ],
+  "fnvhash": [
+    "setuptools"
+  ],
+  "folium": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "fontmake": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "fontmath": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "fontparts": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "fontpens": [
+    "setuptools"
+  ],
+  "fonttools": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "foobot-async": [
+    "setuptools"
+  ],
+  "foolscap": [
+    "setuptools"
+  ],
+  "forbiddenfruit": [
+    "setuptools"
+  ],
+  "fordpass": [
+    "setuptools"
+  ],
+  "forecast-solar": [
+    "setuptools"
   ],
   "formbox": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "formencode": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "fortiosapi": [
+    "setuptools"
+  ],
+  "foundationdb51": [
+    "setuptools"
+  ],
+  "foundationdb52": [
+    "setuptools"
+  ],
+  "foundationdb60": [
+    "setuptools"
+  ],
+  "foundationdb61": [
+    "setuptools"
+  ],
+  "fountains": [
+    "setuptools"
+  ],
+  "foxdot": [
+    "setuptools"
+  ],
+  "fpdf": [
+    "setuptools"
   ],
   "fpylll": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "fpyutils": [
+    "setuptools"
+  ],
+  "fqdn": [
+    "setuptools"
   ],
   "freebox-api": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "freetype-py": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "freezegun": [
+    "setuptools"
+  ],
+  "frigidaire": [
+    "setuptools"
+  ],
+  "frilouz": [
+    "setuptools"
+  ],
+  "fritzconnection": [
+    "setuptools"
+  ],
+  "fritzprofiles": [
+    "setuptools"
+  ],
+  "frozendict": [
+    "setuptools"
   ],
   "frozenlist": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "fs": [
+    "setuptools"
+  ],
+  "fs-s3fs": [
+    "setuptools"
+  ],
+  "fsspec": [
+    "setuptools"
+  ],
+  "ftfy": [
+    "poetry",
+    "setuptools"
+  ],
+  "ftputil": [
+    "setuptools"
+  ],
+  "func-timeout": [
+    "setuptools"
   ],
   "funcparserlib": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "funcsigs": [
+    "setuptools"
+  ],
+  "functorch": [
+    "setuptools"
+  ],
+  "funcy": [
+    "setuptools"
+  ],
+  "furl": [
+    "setuptools"
   ],
   "furo": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "fuse": [
+    "setuptools"
+  ],
+  "fusepy": [
+    "setuptools"
+  ],
+  "future": [
+    "setuptools"
+  ],
+  "future-fstrings": [
+    "setuptools"
+  ],
+  "future-typing": [
+    "setuptools"
+  ],
+  "futures": [
+    "setuptools"
+  ],
+  "fuzzyfinder": [
+    "setuptools"
+  ],
+  "fuzzywuzzy": [
+    "setuptools"
+  ],
+  "fx2": [
+    "setuptools"
   ],
   "galario": [
     "cython"
   ],
+  "galois": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "gamble": [
+    "setuptools"
+  ],
   "gaphas": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "garages-amsterdam": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "garminconnect": [
+    "setuptools"
+  ],
+  "garminconnect-aio": [
+    "setuptools"
+  ],
+  "garminconnect-ha": [
+    "setuptools"
+  ],
+  "gast": [
+    "setuptools"
+  ],
+  "gatt": [
+    "setuptools"
+  ],
+  "gattlib": [
+    "setuptools"
+  ],
+  "gb-io": [
+    "setuptools"
   ],
   "gbinder-python": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "gbulb": [
+    "setuptools"
+  ],
+  "gcal-sync": [
+    "setuptools"
+  ],
+  "gcovr": [
+    "setuptools"
+  ],
+  "gcsfs": [
+    "setuptools"
+  ],
+  "gdal": [
+    "setuptools"
+  ],
+  "gdata": [
+    "setuptools"
+  ],
+  "gdown": [
+    "setuptools"
+  ],
+  "gdtoolkit": [
+    "setuptools"
+  ],
+  "ge25519": [
+    "setuptools"
+  ],
+  "gehomesdk": [
+    "setuptools"
+  ],
+  "gekitchen": [
+    "setuptools"
+  ],
+  "gemfileparser": [
+    "setuptools"
+  ],
+  "genanki": [
+    "setuptools"
   ],
   "generic": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "geniushub-client": [
+    "setuptools"
+  ],
+  "genome-collector": [
+    "setuptools"
+  ],
+  "genpy": [
+    "setuptools"
+  ],
+  "genshi": [
+    "setuptools"
   ],
   "gensim": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "gentools": [
+    "setuptools"
+  ],
+  "genzshcomp": [
+    "setuptools"
+  ],
+  "geoalchemy2": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "geocachingapi": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "geographiclib": [
+    "setuptools"
+  ],
+  "geoip": [
+    "setuptools"
+  ],
+  "geoip2": [
+    "setuptools"
+  ],
+  "geojson": [
+    "setuptools"
+  ],
+  "geojson-client": [
+    "setuptools"
+  ],
+  "geomet": [
+    "setuptools"
+  ],
+  "geometric": [
+    "setuptools"
+  ],
+  "geopandas": [
+    "setuptools"
+  ],
+  "geopy": [
+    "setuptools"
+  ],
+  "georss-client": [
+    "setuptools"
+  ],
+  "georss-generic-client": [
+    "setuptools"
+  ],
+  "georss-ign-sismologia-client": [
+    "setuptools"
+  ],
+  "georss-ingv-centro-nazionale-terremoti-client": [
+    "setuptools"
+  ],
+  "georss-nrcan-earthquakes-client": [
+    "setuptools"
+  ],
+  "georss-qld-bushfire-alert-client": [
+    "setuptools"
+  ],
+  "georss-tfs-incidents-client": [
+    "setuptools"
+  ],
+  "georss-wa-dfes-client": [
+    "setuptools"
+  ],
+  "get-video-properties": [
+    "setuptools"
+  ],
+  "getkey": [
+    "setuptools"
+  ],
+  "getmac": [
+    "setuptools"
+  ],
+  "gevent": [
+    "setuptools"
+  ],
+  "gevent-socketio": [
+    "setuptools"
+  ],
+  "gevent-websocket": [
+    "setuptools"
+  ],
+  "geventhttpclient": [
+    "setuptools"
+  ],
+  "gflags": [
+    "setuptools"
+  ],
+  "ghapi": [
+    "setuptools"
+  ],
+  "ghdiff": [
+    "setuptools"
+  ],
+  "ghp-import": [
+    "setuptools"
+  ],
+  "ghrepo-stats": [
+    "setuptools"
+  ],
+  "gibberish-detector": [
+    "setuptools"
   ],
   "gidgethub": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "gigalixir": [
+    "setuptools"
+  ],
+  "gin-config": [
+    "setuptools"
+  ],
+  "gios": [
+    "setuptools"
+  ],
+  "gipc": [
+    "setuptools"
+  ],
+  "gistyc": [
+    "setuptools"
+  ],
+  "git-annex-adapter": [
+    "setuptools"
+  ],
+  "git-filter-repo": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "git-revise": [
+    "setuptools"
+  ],
+  "git-sweep": [
+    "setuptools"
+  ],
+  "gitdb": [
+    "setuptools"
+  ],
+  "github-to-sqlite": [
+    "setuptools"
+  ],
+  "github-webhook": [
+    "setuptools"
+  ],
+  "github3-py": [
+    "setuptools"
+  ],
+  "gitpython": [
+    "setuptools"
+  ],
+  "glad": [
+    "setuptools"
   ],
   "glances-api": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "glasgow": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "glcontext": [
+    "setuptools"
+  ],
+  "glean-parser": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "glean-sdk": [
+    "setuptools"
+  ],
+  "glfw": [
+    "setuptools"
+  ],
+  "glob2": [
+    "setuptools"
+  ],
+  "globus-sdk": [
+    "setuptools"
+  ],
+  "glom": [
+    "setuptools"
+  ],
+  "glymur": [
+    "setuptools"
+  ],
+  "glyphslib": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "gmpy": [
+    "setuptools"
+  ],
+  "gmpy2": [
+    "setuptools"
+  ],
+  "gntp": [
+    "setuptools"
+  ],
+  "gnureadline": [
+    "setuptools"
+  ],
+  "goalzero": [
+    "setuptools"
+  ],
+  "goobook": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "goocalendar": [
+    "setuptools"
+  ],
+  "goodwe": [
+    "setuptools"
+  ],
+  "google-api-core": [
+    "setuptools"
+  ],
+  "google-api-python-client": [
+    "setuptools"
+  ],
+  "google-auth": [
+    "setuptools"
+  ],
+  "google-auth-httplib2": [
+    "setuptools"
+  ],
+  "google-auth-oauthlib": [
+    "setuptools"
+  ],
+  "google-cloud-access-context-manager": [
+    "setuptools"
+  ],
+  "google-cloud-appengine-logging": [
+    "setuptools"
+  ],
+  "google-cloud-asset": [
+    "setuptools"
+  ],
+  "google-cloud-audit-log": [
+    "setuptools"
+  ],
+  "google-cloud-automl": [
+    "setuptools"
+  ],
+  "google-cloud-bigquery": [
+    "setuptools"
+  ],
+  "google-cloud-bigquery-datatransfer": [
+    "setuptools"
+  ],
+  "google-cloud-bigquery-logging": [
+    "setuptools"
+  ],
+  "google-cloud-bigquery-storage": [
+    "setuptools"
+  ],
+  "google-cloud-bigtable": [
+    "setuptools"
+  ],
+  "google-cloud-compute": [
+    "setuptools"
+  ],
+  "google-cloud-container": [
+    "setuptools"
+  ],
+  "google-cloud-core": [
+    "setuptools"
+  ],
+  "google-cloud-datacatalog": [
+    "setuptools"
+  ],
+  "google-cloud-dataproc": [
+    "setuptools"
+  ],
+  "google-cloud-datastore": [
+    "setuptools"
+  ],
+  "google-cloud-dlp": [
+    "setuptools"
+  ],
+  "google-cloud-dns": [
+    "setuptools"
+  ],
+  "google-cloud-error-reporting": [
+    "setuptools"
+  ],
+  "google-cloud-firestore": [
+    "setuptools"
+  ],
+  "google-cloud-iam": [
+    "setuptools"
+  ],
+  "google-cloud-iam-logging": [
+    "setuptools"
+  ],
+  "google-cloud-iot": [
+    "setuptools"
+  ],
+  "google-cloud-kms": [
+    "setuptools"
+  ],
+  "google-cloud-language": [
+    "setuptools"
+  ],
+  "google-cloud-logging": [
+    "setuptools"
+  ],
+  "google-cloud-monitoring": [
+    "setuptools"
+  ],
+  "google-cloud-org-policy": [
+    "setuptools"
+  ],
+  "google-cloud-os-config": [
+    "setuptools"
+  ],
+  "google-cloud-pubsub": [
+    "setuptools"
+  ],
+  "google-cloud-redis": [
+    "setuptools"
+  ],
+  "google-cloud-resource-manager": [
+    "setuptools"
+  ],
+  "google-cloud-runtimeconfig": [
+    "setuptools"
+  ],
+  "google-cloud-secret-manager": [
+    "setuptools"
+  ],
+  "google-cloud-securitycenter": [
+    "setuptools"
+  ],
+  "google-cloud-spanner": [
+    "setuptools"
+  ],
+  "google-cloud-speech": [
+    "setuptools"
+  ],
+  "google-cloud-storage": [
+    "setuptools"
+  ],
+  "google-cloud-tasks": [
+    "setuptools"
+  ],
+  "google-cloud-testutils": [
+    "setuptools"
+  ],
+  "google-cloud-texttospeech": [
+    "setuptools"
+  ],
+  "google-cloud-trace": [
+    "setuptools"
+  ],
+  "google-cloud-translate": [
+    "setuptools"
+  ],
+  "google-cloud-videointelligence": [
+    "setuptools"
+  ],
+  "google-cloud-vision": [
+    "setuptools"
+  ],
+  "google-cloud-websecurityscanner": [
+    "setuptools"
+  ],
+  "google-crc32c": [
+    "setuptools"
+  ],
+  "google-i18n-address": [
+    "setuptools"
+  ],
+  "google-nest-sdm": [
+    "setuptools"
+  ],
+  "google-pasta": [
+    "setuptools"
+  ],
+  "google-re2": [
+    "setuptools"
+  ],
+  "google-resumable-media": [
+    "setuptools"
+  ],
+  "googleapis-common-protos": [
+    "setuptools"
+  ],
+  "googlemaps": [
+    "setuptools"
+  ],
+  "googletrans": [
+    "setuptools"
+  ],
+  "gorilla": [
+    "setuptools"
+  ],
+  "govee-ble": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "goveelights": [
+    "setuptools"
+  ],
+  "gpapi": [
+    "setuptools"
+  ],
+  "gpaw": [
+    "setuptools"
+  ],
+  "gphoto2": [
+    "setuptools"
+  ],
+  "gpiozero": [
+    "setuptools"
+  ],
+  "gplaycli": [
+    "setuptools"
+  ],
+  "gprof2dot": [
+    "setuptools"
+  ],
+  "gps3": [
+    "setuptools"
+  ],
+  "gpsoauth": [
+    "setuptools"
+  ],
+  "gpt-2-simple": [
+    "setuptools"
+  ],
+  "gpxpy": [
+    "setuptools"
   ],
   "gpy": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "gpyopt": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "gql": [
+    "setuptools"
+  ],
+  "gradient": [
+    "setuptools"
+  ],
+  "gradient-statsd": [
+    "setuptools"
   ],
   "gradient-utils": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "grammalecte": [
+    "setuptools"
+  ],
+  "grandalf": [
+    "setuptools"
+  ],
+  "graph-tool": [
+    "setuptools"
+  ],
+  "grapheme": [
+    "setuptools"
+  ],
+  "graphene": [
+    "setuptools"
+  ],
+  "graphene-django": [
+    "setuptools"
+  ],
+  "graphite-web": [
+    "setuptools"
   ],
   "graphql-core": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "graphql-relay": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "graphql-server-core": [
+    "setuptools"
+  ],
+  "graphql-subscription-manager": [
+    "setuptools"
+  ],
+  "graphqlclient": [
+    "setuptools"
+  ],
+  "graphtage": [
+    "setuptools"
+  ],
+  "graphviz": [
+    "setuptools"
+  ],
+  "grappelli-safe": [
+    "setuptools"
+  ],
+  "greatfet": [
+    "setuptools"
+  ],
+  "greeclimate": [
+    "setuptools"
+  ],
+  "green": [
+    "setuptools"
+  ],
+  "greeneye-monitor": [
+    "setuptools"
+  ],
+  "greenlet": [
+    "setuptools"
+  ],
+  "gremlinpython": [
+    "setuptools"
+  ],
+  "grequests": [
+    "setuptools"
   ],
   "gridnet": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "griffe": [
+    "pdm-pep517",
+    "setuptools"
+  ],
+  "grip": [
+    "setuptools"
+  ],
+  "groestlcoin-hash": [
+    "setuptools"
+  ],
+  "growattserver": [
+    "setuptools"
+  ],
+  "grpc-google-iam-v1": [
+    "setuptools"
   ],
   "grpcio": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "grpcio-gcp": [
+    "setuptools"
+  ],
+  "grpcio-status": [
+    "setuptools"
+  ],
+  "grpcio-tools": [
+    "setuptools"
+  ],
+  "grpclib": [
+    "setuptools"
+  ],
+  "gruut": [
+    "setuptools"
+  ],
+  "gruut-ipa": [
+    "setuptools"
   ],
   "gsd": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "gspread": [
+    "setuptools"
   ],
   "gssapi": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "gst-python": [
+    "setuptools"
+  ],
+  "gtfs-realtime-bindings": [
+    "setuptools"
+  ],
+  "gtimelog": [
+    "setuptools"
+  ],
+  "gtts": [
+    "setuptools"
+  ],
+  "gtts-token": [
+    "setuptools"
   ],
   "gudhi": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "guessit": [
+    "setuptools"
+  ],
+  "guestfs": [
+    "setuptools"
+  ],
+  "gumath": [
+    "setuptools"
+  ],
+  "gunicorn": [
+    "setuptools"
+  ],
+  "guppy3": [
+    "setuptools"
+  ],
+  "gurobipy": [
+    "setuptools"
+  ],
+  "guzzle-sphinx-theme": [
+    "setuptools"
+  ],
+  "gviz-api": [
+    "setuptools"
   ],
   "gvm-tools": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "gym": [
+    "setuptools"
+  ],
+  "gyp": [
+    "setuptools"
+  ],
+  "h11": [
+    "setuptools"
+  ],
+  "h2": [
+    "setuptools"
   ],
   "h3": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "h5netcdf": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "h5py": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "h5py-mpi": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "ha-ffmpeg": [
+    "setuptools"
+  ],
+  "ha-philipsjs": [
+    "setuptools"
+  ],
+  "habanero": [
+    "setuptools"
+  ],
+  "habitipy": [
+    "setuptools"
+  ],
+  "hachoir": [
+    "setuptools"
   ],
   "hacking": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "hahomematic": [
+    "setuptools"
+  ],
+  "halo": [
+    "setuptools"
+  ],
+  "halohome": [
+    "setuptools"
+  ],
+  "handout": [
+    "setuptools"
+  ],
+  "hangups": [
+    "setuptools"
+  ],
+  "hap-python": [
+    "setuptools"
   ],
   "hashids": [
     "flit-core"
   ],
-  "hatch-vcs": [
+  "hass-nabucasa": [
+    "setuptools"
+  ],
+  "hatasmota": [
+    "setuptools"
+  ],
+  "hatch-fancy-pypi-readme": [
+    "hatchling",
+    "setuptools"
+  ],
+  "hatch-nodejs-version": [
     "hatchling"
   ],
+  "hatch-vcs": [
+    "hatchling",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "hatchling": [
+    "setuptools"
+  ],
+  "haversine": [
+    "setuptools"
+  ],
+  "hawkauthlib": [
+    "setuptools"
+  ],
+  "hcloud": [
+    "setuptools"
+  ],
+  "hcs-utils": [
+    "setuptools"
+  ],
   "hdate": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "hdbscan": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "hdfs": [
+    "setuptools"
   ],
   "hdmedians": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "headerparser": [
+    "setuptools"
+  ],
+  "heapdict": [
+    "setuptools"
+  ],
+  "heatzypy": [
+    "setuptools"
+  ],
+  "helpdev": [
+    "setuptools"
+  ],
+  "helper": [
+    "setuptools"
+  ],
+  "hepunits": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "herepy": [
+    "setuptools"
+  ],
+  "hetzner": [
+    "setuptools"
+  ],
+  "hexbytes": [
+    "setuptools"
+  ],
+  "hexdump": [
+    "setuptools"
+  ],
+  "hg-evolve": [
+    "setuptools"
+  ],
+  "hg-git": [
+    "setuptools"
+  ],
+  "hglib": [
+    "setuptools"
+  ],
+  "hickle": [
+    "setuptools"
+  ],
+  "hid": [
+    "setuptools"
   ],
   "hidapi": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "hieroglyph": [
+    "setuptools"
+  ],
+  "hijri-converter": [
+    "setuptools"
+  ],
+  "hikvision": [
+    "setuptools"
+  ],
+  "hiredis": [
+    "setuptools"
+  ],
+  "hiro": [
+    "setuptools"
+  ],
+  "hiyapyco": [
+    "setuptools"
+  ],
+  "hjson": [
+    "setuptools"
+  ],
+  "hkavr": [
+    "setuptools"
+  ],
+  "hkdf": [
+    "setuptools"
+  ],
+  "hlk-sw16": [
+    "setuptools"
   ],
   "hmmlearn": [
-    "cython"
+    "cython",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "hocr-tools": [
+    "setuptools"
+  ],
+  "hole": [
+    "setuptools"
+  ],
+  "holidays": [
+    "setuptools"
+  ],
+  "holoviews": [
+    "setuptools"
+  ],
+  "home-assistant-bluetooth": [
+    "poetry-core",
+    "setuptools"
   ],
   "homeassistant-pyozw": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "homeconnect": [
+    "setuptools"
+  ],
+  "homematicip": [
+    "setuptools"
+  ],
+  "homepluscontrol": [
+    "setuptools"
+  ],
+  "hopcroftkarp": [
+    "setuptools"
+  ],
+  "howdoi": [
+    "setuptools"
+  ],
+  "hpack": [
+    "setuptools"
+  ],
+  "hpccm": [
+    "setuptools"
+  ],
+  "hs-dbus-signature": [
+    "setuptools"
+  ],
+  "hsaudiotag3k": [
+    "setuptools"
+  ],
+  "hsluv": [
+    "setuptools"
+  ],
+  "hstspreload": [
+    "setuptools"
+  ],
+  "html-sanitizer": [
+    "setuptools"
+  ],
+  "html2text": [
+    "setuptools"
+  ],
+  "html5-parser": [
+    "setuptools"
   ],
   "html5lib": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
+  ],
+  "htmllaundry": [
+    "setuptools"
+  ],
+  "htmlmin": [
+    "setuptools"
+  ],
+  "htseq": [
+    "cython",
+    "setuptools"
+  ],
+  "httmock": [
+    "setuptools"
+  ],
+  "http-ece": [
+    "setuptools"
+  ],
+  "http-message-signatures": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "http-parser": [
+    "setuptools"
+  ],
+  "http-sfv": [
+    "setuptools"
+  ],
+  "httpagentparser": [
+    "setuptools"
+  ],
+  "httpauth": [
+    "setuptools"
+  ],
+  "httpbin": [
+    "setuptools"
+  ],
+  "httpcore": [
+    "setuptools"
+  ],
+  "httpie": [
+    "setuptools"
+  ],
+  "httpie-ntlm": [
+    "setuptools"
+  ],
+  "httplib2": [
+    "setuptools"
+  ],
+  "httpretty": [
+    "setuptools"
+  ],
+  "httpserver": [
+    "setuptools"
+  ],
+  "httpsig": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "httptools": [
+    "setuptools"
+  ],
+  "httpx": [
+    "setuptools"
+  ],
+  "httpx-auth": [
+    "setuptools"
+  ],
+  "httpx-ntlm": [
+    "setuptools"
+  ],
+  "httpx-socks": [
+    "setuptools"
+  ],
+  "huawei-lte-api": [
+    "setuptools"
+  ],
+  "huey": [
+    "setuptools"
+  ],
+  "huggingface-hub": [
+    "setuptools"
+  ],
+  "huisbaasje-client": [
+    "setuptools"
+  ],
+  "humanfriendly": [
+    "setuptools"
+  ],
+  "humanize": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "humblewx": [
+    "setuptools"
+  ],
+  "hupper": [
+    "setuptools"
+  ],
+  "huum": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "hvac": [
+    "setuptools"
+  ],
+  "hvplot": [
+    "setuptools"
+  ],
+  "hwi": [
+    "setuptools"
+  ],
+  "hy": [
+    "setuptools"
+  ],
+  "hydra": [
+    "setuptools"
+  ],
+  "hydra-check": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "hydrawiser": [
+    "setuptools"
+  ],
+  "hypchat": [
+    "setuptools"
   ],
   "hypercorn": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "hyperframe": [
+    "setuptools"
   ],
   "hyperion-py": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "hyperlink": [
+    "setuptools"
+  ],
+  "hyperopt": [
+    "setuptools"
+  ],
+  "hypothesis": [
+    "setuptools"
   ],
   "hypothesis-auto": [
-    "poetry"
+    "poetry",
+    "setuptools"
   ],
   "hypothesis-graphql": [
     "poetry"
   ],
-  "ibis-framework": [
+  "hypothesmith": [
+    "setuptools"
+  ],
+  "hyppo": [
+    "setuptools"
+  ],
+  "hyrule": [
+    "setuptools"
+  ],
+  "i-pi": [
+    "setuptools"
+  ],
+  "i2c-tools": [
+    "setuptools"
+  ],
+  "i2csense": [
+    "setuptools"
+  ],
+  "i3-py": [
+    "setuptools"
+  ],
+  "i3ipc": [
+    "setuptools"
+  ],
+  "iapws": [
+    "setuptools"
+  ],
+  "iaqualink": [
+    "setuptools"
+  ],
+  "ibeacon-ble": [
     "poetry-core"
   ],
+  "ibis": [
+    "setuptools"
+  ],
+  "ibis-framework": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "ibm-cloud-sdk-core": [
+    "setuptools"
+  ],
+  "ibm-watson": [
+    "setuptools"
+  ],
+  "icalendar": [
+    "setuptools"
+  ],
+  "icecream": [
+    "setuptools"
+  ],
   "icmplib": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "icnsutil": [
+    "setuptools"
+  ],
+  "icontract": [
+    "setuptools"
+  ],
+  "ics": [
+    "setuptools"
   ],
   "idasen": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "identify": [
+    "setuptools"
+  ],
+  "idna": [
+    "flit-core",
+    "setuptools"
+  ],
+  "idna-ssl": [
+    "setuptools"
+  ],
+  "ifaddr": [
+    "setuptools"
+  ],
+  "ifconfig-parser": [
+    "setuptools"
+  ],
+  "ifcopenshell": [
+    "setuptools"
+  ],
+  "ignite": [
+    "setuptools"
+  ],
+  "igraph": [
+    "setuptools"
+  ],
+  "ihatemoney": [
+    "setuptools"
+  ],
+  "ijson": [
+    "setuptools"
+  ],
+  "ilua": [
+    "setuptools"
+  ],
+  "image-go-nord": [
+    "setuptools"
+  ],
+  "image-match": [
+    "setuptools"
   ],
   "imagecodecs-lite": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "imagecorruptions": [
+    "setuptools"
+  ],
+  "imageio": [
+    "setuptools"
+  ],
+  "imageio-ffmpeg": [
+    "setuptools"
+  ],
+  "imagesize": [
+    "setuptools"
+  ],
+  "imantics": [
+    "setuptools"
+  ],
+  "imap-tools": [
+    "setuptools"
+  ],
+  "imapclient": [
+    "setuptools"
+  ],
+  "imaplib2": [
+    "setuptools"
+  ],
+  "imbalanced-learn": [
+    "setuptools"
+  ],
+  "img2pdf": [
+    "setuptools"
+  ],
+  "imgsize": [
+    "setuptools"
+  ],
+  "iminuit": [
+    "setuptools"
   ],
   "immutabledict": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "immutables": [
+    "setuptools"
+  ],
+  "impacket": [
+    "setuptools"
+  ],
+  "importlab": [
+    "setuptools"
+  ],
+  "importlib-metadata": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "importlib-resources": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "importmagic": [
+    "setuptools"
+  ],
+  "impyla": [
+    "setuptools"
+  ],
+  "imread": [
+    "setuptools"
+  ],
+  "imutils": [
+    "setuptools"
+  ],
+  "in-place": [
+    "setuptools"
+  ],
+  "incomfort-client": [
+    "setuptools"
+  ],
+  "incremental": [
+    "setuptools"
+  ],
+  "infinity": [
+    "setuptools"
+  ],
+  "inflect": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "inflection": [
+    "setuptools"
+  ],
+  "influxdb": [
+    "setuptools"
+  ],
+  "influxdb-client": [
+    "setuptools"
+  ],
+  "inform": [
+    "setuptools"
+  ],
+  "iniconfig": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "inifile": [
+    "setuptools"
+  ],
+  "iniparse": [
+    "setuptools"
+  ],
+  "injector": [
+    "setuptools"
+  ],
+  "inkbird-ble": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "inkex": [
+    "setuptools"
+  ],
+  "inotify": [
+    "setuptools"
+  ],
+  "inotify-simple": [
+    "setuptools"
+  ],
+  "inotifyrecursive": [
+    "setuptools"
   ],
   "inquirer": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "insegel": [
+    "setuptools"
   ],
   "installer": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
+  ],
+  "insteon-frontend-home-assistant": [
+    "setuptools"
+  ],
+  "intake": [
+    "setuptools"
+  ],
+  "intake-parquet": [
+    "setuptools"
+  ],
+  "intbitset": [
+    "setuptools"
+  ],
+  "intelhex": [
+    "setuptools"
+  ],
+  "intellifire4py": [
+    "setuptools"
+  ],
+  "internetarchive": [
+    "setuptools"
+  ],
+  "interruptingcow": [
+    "setuptools"
+  ],
+  "intervaltree": [
+    "setuptools"
+  ],
+  "into-dbus-python": [
+    "setuptools"
+  ],
+  "intreehooks": [
+    "setuptools"
+  ],
+  "invocations": [
+    "setuptools"
+  ],
+  "invoke": [
+    "setuptools"
+  ],
+  "iocapture": [
+    "setuptools"
   ],
   "iodata": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "ionhash": [
+    "setuptools"
+  ],
+  "iotawattpy": [
+    "setuptools"
+  ],
+  "iowait": [
+    "setuptools"
+  ],
+  "ipaddr": [
+    "setuptools"
+  ],
+  "ipaddress": [
+    "setuptools"
+  ],
+  "ipdb": [
+    "setuptools"
+  ],
+  "ipdbplugin": [
+    "setuptools"
   ],
   "ipfshttpclient": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "iptools": [
+    "setuptools"
   ],
   "ipwhl": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "ipy": [
+    "setuptools"
+  ],
+  "ipydatawidgets": [
+    "setuptools"
   ],
   "ipykernel": [
-    "hatchling"
+    "hatchling",
+    "setuptools"
+  ],
+  "ipympl": [
+    "setuptools"
+  ],
+  "ipyparallel": [
+    "hatchling",
+    "setuptools"
+  ],
+  "ipython": [
+    "setuptools"
+  ],
+  "ipython-genutils": [
+    "setuptools"
+  ],
+  "ipython-sql": [
+    "setuptools"
+  ],
+  "ipyvue": [
+    "setuptools"
+  ],
+  "ipyvuetify": [
+    "setuptools"
+  ],
+  "ipywidgets": [
+    "setuptools"
+  ],
+  "irc": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "ircrobots": [
+    "setuptools"
+  ],
+  "ircstates": [
+    "setuptools"
+  ],
+  "irctokens": [
+    "setuptools"
+  ],
+  "isbnlib": [
+    "setuptools"
+  ],
+  "islpy": [
+    "setuptools"
+  ],
+  "ismartgate": [
+    "setuptools"
+  ],
+  "iso-639": [
+    "setuptools"
+  ],
+  "iso3166": [
+    "setuptools"
+  ],
+  "iso4217": [
+    "setuptools"
   ],
   "iso8601": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "isodate": [
+    "setuptools"
+  ],
+  "isoduration": [
+    "setuptools"
   ],
   "isort": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "isosurfaces": [
+    "setuptools"
+  ],
+  "isounidecode": [
+    "setuptools"
+  ],
+  "isoweek": [
+    "setuptools"
+  ],
+  "itanium-demangler": [
+    "setuptools"
+  ],
+  "itemadapter": [
+    "setuptools"
+  ],
+  "itemdb": [
+    "setuptools"
+  ],
+  "itemloaders": [
+    "setuptools"
+  ],
+  "iteration-utilities": [
+    "setuptools"
+  ],
+  "itsdangerous": [
+    "setuptools"
+  ],
+  "itunespy": [
+    "setuptools"
+  ],
+  "itypes": [
+    "setuptools"
+  ],
+  "j2cli": [
+    "setuptools"
+  ],
+  "jaconv": [
+    "setuptools"
+  ],
+  "jaeger-client": [
+    "setuptools"
+  ],
+  "janus": [
+    "setuptools"
+  ],
+  "jarac-itertools": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "jaraco-classes": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "jaraco-collections": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "jaraco-context": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "jaraco-functools": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "jaraco-itertools": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "jaraco-logging": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "jaraco-stream": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "jaraco-test": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "jaraco-text": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "jarowinkler": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "javaobj-py3": [
+    "setuptools"
+  ],
+  "javaproperties": [
+    "setuptools"
+  ],
+  "jax": [
+    "setuptools"
+  ],
+  "jaxlib": [
+    "setuptools"
+  ],
+  "jaxlib-bin": [
+    "setuptools"
+  ],
+  "jaxlib-build": [
+    "setuptools"
+  ],
+  "jaxlibwithcuda": [
+    "setuptools"
+  ],
+  "jaxlibwithoutcuda": [
+    "setuptools"
+  ],
+  "jaydebeapi": [
+    "setuptools"
+  ],
+  "jc": [
+    "setuptools"
+  ],
+  "jdatetime": [
+    "setuptools"
+  ],
+  "jdcal": [
+    "setuptools"
+  ],
+  "jedi": [
+    "setuptools"
   ],
   "jedi-language-server": [
-    "poetry"
+    "poetry",
+    "setuptools"
   ],
   "jeepney": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
+  ],
+  "jellyfin-apiclient-python": [
+    "setuptools"
+  ],
+  "jellyfish": [
+    "setuptools"
   ],
   "jenkins-job-builder": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "jieba": [
+    "setuptools"
+  ],
+  "jinja2": [
+    "setuptools"
+  ],
+  "jinja2-ansible-filters": [
+    "setuptools"
   ],
   "jinja2-git": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "jinja2-pluralize": [
+    "setuptools"
+  ],
+  "jinja2-time": [
+    "setuptools"
+  ],
+  "jira": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "jmespath": [
+    "setuptools"
+  ],
+  "jmp": [
+    "setuptools"
+  ],
+  "joblib": [
+    "setuptools"
+  ],
+  "johnnycanencrypt": [
+    "setuptools"
+  ],
+  "josepy": [
+    "setuptools"
+  ],
+  "journalwatch": [
+    "setuptools"
+  ],
+  "jplephem": [
+    "setuptools"
+  ],
+  "jproperties": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "jpylyzer": [
+    "setuptools"
+  ],
+  "jpype1": [
+    "setuptools"
+  ],
+  "jq": [
+    "setuptools"
+  ],
+  "js2py": [
+    "setuptools"
+  ],
+  "jsbeautifier": [
+    "setuptools"
   ],
   "jschema-to-python": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "jsmin": [
+    "setuptools"
+  ],
+  "json-home-client": [
+    "setuptools"
+  ],
+  "json-logging": [
+    "setuptools"
+  ],
+  "json-merge-patch": [
+    "setuptools"
+  ],
+  "json-rpc": [
+    "setuptools"
   ],
   "json-schema-for-humans": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "json-stream": [
+    "setuptools"
+  ],
+  "json-tricks": [
+    "setuptools"
+  ],
+  "json5": [
+    "setuptools"
+  ],
+  "jsonconversion": [
+    "setuptools"
+  ],
+  "jsondate": [
+    "setuptools"
+  ],
+  "jsondiff": [
+    "setuptools"
+  ],
+  "jsonfield": [
+    "setuptools"
+  ],
+  "jsonlines": [
+    "setuptools"
+  ],
+  "jsonmerge": [
+    "setuptools"
+  ],
+  "jsonnet": [
+    "setuptools"
+  ],
+  "jsonpatch": [
+    "setuptools"
+  ],
+  "jsonpath": [
+    "setuptools"
+  ],
+  "jsonpath-ng": [
+    "setuptools"
+  ],
+  "jsonpath-rw": [
+    "setuptools"
+  ],
+  "jsonpickle": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "jsonpointer": [
+    "setuptools"
+  ],
+  "jsonref": [
+    "setuptools"
+  ],
+  "jsonrpc-async": [
+    "setuptools"
+  ],
+  "jsonrpc-base": [
+    "setuptools"
+  ],
+  "jsonrpc-websocket": [
+    "setuptools"
+  ],
+  "jsonrpclib-pelix": [
+    "setuptools"
+  ],
+  "jsons": [
+    "setuptools"
   ],
   "jsonschema": [
-    { "buildSystem": "hatchling", "from": "4.6.0" },
-    { "buildSystem": "hatch-vcs", "from": "4.6.0" }
+    {
+      "buildSystem": "hatch-fancy-pypi-readme",
+      "from": "4.11.0"
+    },
+    {
+      "buildSystem": "hatch-vcs",
+      "from": "4.6.0"
+    },
+    {
+      "buildSystem": "hatchling",
+      "from": "4.6.0"
+    },
+    {
+      "buildSystem": "setuptools",
+      "until": "4.6.0"
+    },
+    {
+      "buildSystem": "setuptools-scm",
+      "until": "4.6.0"
+    }
+  ],
+  "jsonschema-3": [
+    "setuptools-scm"
+  ],
+  "jsonschema-spec": [
+    "poetry-core"
+  ],
+  "jsonstreams": [
+    "setuptools"
+  ],
+  "jug": [
+    "setuptools"
+  ],
+  "junit-xml": [
+    "setuptools"
+  ],
+  "junitparser": [
+    "setuptools"
+  ],
+  "junos-eznc": [
+    "setuptools"
+  ],
+  "jupyter": [
+    "setuptools"
+  ],
+  "jupyter-book": [
+    "flit-core",
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "jupyter-c-kernel": [
+    "setuptools"
+  ],
+  "jupyter-cache": [
+    "setuptools"
   ],
   "jupyter-client": [
-    "hatchling"
+    "hatchling",
+    "setuptools"
+  ],
+  "jupyter-console": [
+    "setuptools"
+  ],
+  "jupyter-core": [
+    {
+      "buildSystem": "hatchling",
+      "from": "4.11.0"
+    },
+    {
+      "buildSystem": "setuptools",
+      "until": "4.11.0"
+    }
+  ],
+  "jupyter-lsp": [
+    "setuptools"
+  ],
+  "jupyter-packaging": [
+    "hatchling",
+    "setuptools"
+  ],
+  "jupyter-repo2docker": [
+    "setuptools"
   ],
   "jupyter-server": [
-    "jupyter-packaging"
+    "setuptools"
+  ],
+  "jupyter-server-mathjax": [
+    "jupyter-packaging",
+    "setuptools"
+  ],
+  "jupyter-sphinx": [
+    "setuptools"
+  ],
+  "jupyter-telemetry": [
+    "setuptools"
+  ],
+  "jupyterhub": [
+    "setuptools"
+  ],
+  "jupyterhub-ldapauthenticator": [
+    "setuptools"
+  ],
+  "jupyterhub-systemdspawner": [
+    "setuptools"
+  ],
+  "jupyterhub-tmpauthenticator": [
+    "setuptools"
   ],
   "jupyterlab": [
-    "jupyter-packaging"
+    "jupyter-packaging",
+    "setuptools"
   ],
   "jupyterlab-code-formatter": [
     "jupyter-packaging"
   ],
+  "jupyterlab-git": [
+    "jupyter-packaging",
+    "setuptools"
+  ],
+  "jupyterlab-launcher": [
+    "setuptools"
+  ],
+  "jupyterlab-lsp": [
+    "setuptools"
+  ],
   "jupyterlab-pygments": [
-    "jupyter-packaging"
+    "jupyter-packaging",
+    "setuptools"
+  ],
+  "jupyterlab-server": [
+    "hatchling",
+    "setuptools"
+  ],
+  "jupyterlab-widgets": [
+    "setuptools"
+  ],
+  "jupytext": [
+    "setuptools"
+  ],
+  "justbackoff": [
+    "setuptools"
+  ],
+  "justbases": [
+    "setuptools"
+  ],
+  "justbytes": [
+    "setuptools"
+  ],
+  "justnimbus": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "jwcrypto": [
+    "setuptools"
+  ],
+  "jxmlease": [
+    "setuptools"
+  ],
+  "k5test": [
+    "setuptools"
+  ],
+  "kafka-python": [
+    "setuptools"
+  ],
+  "kaggle": [
+    "setuptools"
+  ],
+  "kaitaistruct": [
+    "setuptools"
+  ],
+  "kajiki": [
+    "setuptools"
+  ],
+  "kaldi-active-grammar": [
+    "setuptools"
+  ],
+  "kanidm": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "kaptan": [
+    "setuptools"
+  ],
+  "karton-asciimagic": [
+    "setuptools"
+  ],
+  "karton-autoit-ripper": [
+    "setuptools"
+  ],
+  "karton-classifier": [
+    "setuptools"
+  ],
+  "karton-config-extractor": [
+    "setuptools"
+  ],
+  "karton-core": [
+    "setuptools"
+  ],
+  "karton-dashboard": [
+    "setuptools"
+  ],
+  "karton-mwdb-reporter": [
+    "setuptools"
+  ],
+  "karton-yaramatcher": [
+    "setuptools"
+  ],
+  "kazoo": [
+    "setuptools"
+  ],
+  "kbcstorage": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "kconfiglib": [
+    "setuptools"
+  ],
+  "keep": [
+    "setuptools"
+  ],
+  "keepkey": [
+    "setuptools"
+  ],
+  "keepkey-agent": [
+    "setuptools"
+  ],
+  "kegtron-ble": [
+    "poetry-core"
+  ],
+  "keras": [
+    "setuptools"
+  ],
+  "keras-applications": [
+    "setuptools"
+  ],
+  "keras-preprocessing": [
+    "setuptools"
+  ],
+  "kerberos": [
+    "setuptools"
+  ],
+  "keyboard": [
+    "setuptools"
+  ],
+  "keyring": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "keyrings-alt": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "keyrings-cryptfile": [
+    "setuptools"
+  ],
+  "keyrings-google-artifactregistry-auth": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "keystone-engine": [
+    "setuptools"
   ],
   "keystoneauth1": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "keyutils": [
+    "setuptools"
+  ],
+  "kinparse": [
+    "setuptools"
+  ],
+  "kiss-headers": [
+    "setuptools"
+  ],
+  "kitchen": [
+    "setuptools"
   ],
   "kivy": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "kivy-garden": [
+    "setuptools"
+  ],
+  "kiwisolver": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "klaus": [
+    "setuptools"
+  ],
+  "klein": [
+    "setuptools"
+  ],
+  "kmapper": [
+    "setuptools"
+  ],
+  "kml2geojson": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "knack": [
+    "setuptools"
+  ],
+  "kombu": [
+    "setuptools"
+  ],
+  "konnected": [
+    "setuptools"
+  ],
+  "korean-lunar-calendar": [
+    "setuptools"
+  ],
+  "krakenex": [
+    "setuptools"
+  ],
+  "kubernetes": [
+    "setuptools"
+  ],
+  "labgrid": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "labmath": [
+    "setuptools"
   ],
   "langcodes": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "langdetect": [
+    "setuptools"
   ],
   "language-data": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "lark": [
+    "setuptools"
+  ],
+  "lark-parser": [
+    "setuptools"
+  ],
+  "latexcodec": [
+    "setuptools"
+  ],
+  "launchpadlib": [
+    "setuptools"
+  ],
+  "laundrify-aio": [
+    "setuptools"
+  ],
+  "lazr-config": [
+    "setuptools"
+  ],
+  "lazr-delegates": [
+    "setuptools"
+  ],
+  "lazr-restfulclient": [
+    "setuptools"
+  ],
+  "lazr-uri": [
+    "setuptools"
+  ],
+  "lazy": [
+    "setuptools"
+  ],
+  "lazy-import": [
+    "setuptools"
+  ],
+  "lazy-object-proxy": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "lc7001": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "ldap": [
+    "setuptools"
+  ],
+  "ldap3": [
+    "setuptools"
+  ],
+  "ldapdomaindump": [
+    "setuptools"
   ],
   "ldappool": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "ldaptor": [
+    "setuptools"
+  ],
+  "leather": [
+    "setuptools"
+  ],
+  "leb128": [
+    "setuptools"
+  ],
+  "led-ble": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "ledger-agent": [
+    "setuptools"
+  ],
+  "ledgerblue": [
+    "setuptools"
+  ],
+  "ledgerwallet": [
+    "setuptools"
+  ],
+  "lektor": [
+    "setuptools"
+  ],
+  "leveldb": [
+    "setuptools"
   ],
   "levenshtein": [
+    "cython",
+    "setuptools"
+  ],
+  "lexid": [
+    "setuptools"
+  ],
+  "lhapdf": [
     "cython"
   ],
+  "libagent": [
+    "setuptools"
+  ],
+  "libais": [
+    "setuptools"
+  ],
+  "libarchive-c": [
+    "setuptools"
+  ],
+  "libarcus": [
+    "setuptools"
+  ],
+  "libasyncns": [
+    "setuptools"
+  ],
+  "libcloud": [
+    "setuptools"
+  ],
+  "libcst": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "libevdev": [
+    "setuptools"
+  ],
   "libgpuarray": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "libiio": [
+    "setuptools"
+  ],
+  "libkeepass": [
+    "setuptools"
+  ],
+  "liblarch": [
+    "setuptools"
+  ],
+  "liblzfse": [
+    "setuptools"
   ],
   "libmr": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "libnacl": [
+    "setuptools"
+  ],
+  "libpurecool": [
+    "setuptools"
+  ],
+  "libpyfoscam": [
+    "setuptools"
+  ],
+  "libpyvivotek": [
+    "setuptools"
+  ],
+  "librosa": [
+    "setuptools"
+  ],
+  "librouteros": [
+    "setuptools"
+  ],
+  "libsass": [
+    "setuptools"
+  ],
+  "libsavitar": [
+    "setuptools"
+  ],
+  "libsixel": [
+    "setuptools"
+  ],
+  "libsoundtouch": [
+    "setuptools"
+  ],
+  "libthumbor": [
+    "setuptools"
   ],
   "libtmux": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "libusb1": [
+    "setuptools"
+  ],
+  "libusbsio": [
+    "setuptools"
+  ],
+  "libversion": [
+    "setuptools"
+  ],
+  "libvirt": [
+    "setuptools"
+  ],
+  "libvirt-python": [
+    "setuptools"
+  ],
+  "license-expression": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "licensecheck": [
     "poetry-core"
   ],
-  "line_profiler": [
-    "cython"
+  "life360": [
+    "setuptools"
+  ],
+  "lightgbm": [
+    "setuptools"
+  ],
+  "lightning": [
+    "setuptools"
+  ],
+  "lightparam": [
+    "setuptools"
+  ],
+  "lightwave": [
+    "setuptools"
+  ],
+  "lightwave2": [
+    "setuptools"
+  ],
+  "lima": [
+    "setuptools"
+  ],
+  "limiter": [
+    "setuptools"
+  ],
+  "limitlessled": [
+    "setuptools"
+  ],
+  "limits": [
+    "setuptools"
+  ],
+  "limnoria": [
+    "setuptools"
+  ],
+  "line-profiler": [
+    "cython",
+    "setuptools"
   ],
   "linecache2": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "lingua": [
+    "flit-core",
+    "setuptools"
+  ],
+  "linkify-it-py": [
+    "setuptools"
+  ],
+  "linode": [
+    "setuptools"
+  ],
+  "linode-api": [
+    "setuptools"
+  ],
+  "linuxfd": [
+    "setuptools"
   ],
   "linz-logger": [
     "poetry-core"
   ],
+  "liquidctl": [
+    "setuptools"
+  ],
+  "littleutils": [
+    "setuptools"
+  ],
+  "livelossplot": [
+    "setuptools"
+  ],
+  "livereload": [
+    "setuptools"
+  ],
+  "livestreamer": [
+    "setuptools"
+  ],
+  "livestreamer-curses": [
+    "setuptools"
+  ],
+  "lizard": [
+    "setuptools"
+  ],
   "llfuse": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "llvmlite": [
+    "setuptools"
+  ],
+  "lmdb": [
+    "setuptools"
+  ],
+  "lml": [
+    "setuptools"
+  ],
+  "lmnotify": [
+    "setuptools"
+  ],
+  "lmtpd": [
+    "setuptools"
   ],
   "loca": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "localimport": [
+    "setuptools"
+  ],
+  "localstack": [
+    "setuptools"
+  ],
+  "localstack-client": [
+    "setuptools"
+  ],
+  "localstack-ext": [
+    "setuptools"
+  ],
+  "localzone": [
+    "setuptools"
+  ],
+  "locationsharinglib": [
+    "setuptools"
+  ],
+  "locket": [
+    "setuptools"
   ],
   "lockfile": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "log-symbols": [
+    "setuptools"
+  ],
+  "logbook": [
+    "setuptools"
+  ],
+  "logfury": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "logi-circle": [
+    "setuptools"
+  ],
+  "logical-unification": [
+    "setuptools"
+  ],
+  "logilab-astng": [
+    "setuptools"
+  ],
+  "logilab-common": [
+    "setuptools"
+  ],
+  "logilab-constraint": [
+    "setuptools"
+  ],
+  "logster": [
+    "setuptools"
+  ],
+  "loguru": [
+    "setuptools"
+  ],
+  "logutils": [
+    "setuptools"
+  ],
+  "logzero": [
+    "setuptools"
+  ],
+  "lomond": [
+    "setuptools"
+  ],
+  "loo-py": [
+    "setuptools"
+  ],
+  "loopy": [
+    "setuptools"
+  ],
+  "losant-rest": [
+    "setuptools"
+  ],
+  "lrcalc-python": [
+    "cython",
+    "setuptools"
+  ],
+  "lru-dict": [
+    "setuptools"
   ],
   "lsassy": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "luddite": [
+    "setuptools"
   ],
   "luftdaten": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "luhn": [
+    "setuptools"
   ],
   "lupa": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "lupupy": [
+    "setuptools"
+  ],
+  "luxor": [
+    "setuptools"
+  ],
+  "luxtronik": [
+    "setuptools"
+  ],
+  "lxmf": [
+    "setuptools"
   ],
   "lxml": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "lyricwikia": [
+    "setuptools"
   ],
   "lz4": [
-    "pkgconfig"
+    "pkgconfig",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "lzstring": [
+    "setuptools"
+  ],
+  "m2crypto": [
+    "setuptools"
+  ],
+  "m3u8": [
+    "setuptools"
+  ],
+  "mac-alias": [
+    "setuptools"
   ],
   "maestral": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "magic": [
+    "setuptools"
+  ],
+  "magic-wormhole": [
+    "setuptools"
+  ],
+  "magic-wormhole-mailbox-server": [
+    "setuptools"
+  ],
+  "magic-wormhole-transit-relay": [
+    "setuptools"
+  ],
+  "magicgui": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "mahotas": [
+    "setuptools"
+  ],
+  "mail-parser": [
+    "setuptools"
+  ],
+  "mailcap-fix": [
+    "setuptools"
+  ],
+  "mailchecker": [
+    "setuptools"
+  ],
+  "mailchimp": [
+    "setuptools"
+  ],
+  "mailmanclient": [
+    "setuptools"
+  ],
+  "mailsuite": [
+    "hatchling",
+    "setuptools"
+  ],
+  "makefun": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "mako": [
+    "setuptools"
+  ],
+  "malduck": [
+    "setuptools"
+  ],
+  "managesieve": [
+    "setuptools"
+  ],
+  "manhole": [
+    "setuptools"
+  ],
+  "manage-fastapi": [
+    "poetry"
   ],
   "manimpango": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "manuel": [
+    "setuptools"
+  ],
+  "mapbox-earcut": [
+    "setuptools"
+  ],
+  "mariadb": [
+    "setuptools"
   ],
   "marisa-trie": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "markdown": [
+    "setuptools"
+  ],
+  "markdown-include": [
+    "setuptools"
   ],
   "markdown-it-py": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
+  ],
+  "markdown-macros": [
+    "setuptools"
+  ],
+  "markdown2": [
+    "setuptools"
+  ],
+  "markdownify": [
+    "setuptools"
+  ],
+  "markerlib": [
+    "setuptools"
+  ],
+  "markups": [
+    "setuptools"
+  ],
+  "markupsafe": [
+    "setuptools"
+  ],
+  "marshmallow": [
+    "setuptools"
+  ],
+  "marshmallow-dataclass": [
+    "setuptools"
+  ],
+  "marshmallow-enum": [
+    "setuptools"
+  ],
+  "marshmallow-oneofschema": [
+    "setuptools"
+  ],
+  "marshmallow-polyfield": [
+    "setuptools"
+  ],
+  "marshmallow-sqlalchemy": [
+    "setuptools"
   ],
   "mask-rcnn": [
     "cython"
   ],
+  "mastodon-py": [
+    "setuptools"
+  ],
+  "mat2": [
+    "setuptools"
+  ],
+  "matchpy": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "mathlibtools": [
+    "setuptools"
+  ],
+  "matlink-gpapi": [
+    "setuptools"
+  ],
+  "matplotlib": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "matplotlib-inline": [
+    "setuptools"
+  ],
+  "matrix-api-async": [
+    "setuptools"
+  ],
+  "matrix-client": [
+    "setuptools"
+  ],
+  "matrix-common": [
+    "setuptools"
+  ],
   "matrix-nio": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "mattermostdriver": [
+    "setuptools"
+  ],
+  "mautrix": [
+    "setuptools"
+  ],
+  "mautrix-appservice": [
+    "setuptools"
+  ],
+  "maxcube-api": [
+    "setuptools"
+  ],
+  "maxminddb": [
+    "setuptools"
+  ],
+  "maya": [
+    "setuptools"
+  ],
+  "mayavi": [
+    "setuptools"
+  ],
+  "mbddns": [
+    "setuptools"
+  ],
+  "mccabe": [
+    "setuptools"
   ],
   "mcstatus": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "md-toc": [
+    "setuptools"
+  ],
+  "md2gemini": [
+    "setuptools"
   ],
   "mdformat": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "mdit-py-plugins": [
+    "flit-core",
+    "setuptools"
+  ],
+  "mdp": [
+    "setuptools"
   ],
   "mdurl": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
+  ],
+  "mdutils": [
+    "setuptools"
+  ],
+  "mdx-truly-sane-lists": [
+    "setuptools"
+  ],
+  "measurement": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "meater-python": [
+    "setuptools"
+  ],
+  "mecab-python3": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "mechanicalsoup": [
+    "setuptools"
+  ],
+  "mechanize": [
+    "setuptools"
   ],
   "mediafile": [
     "flit-core",
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "mediapy": [
+    "setuptools"
+  ],
+  "meilisearch": [
+    "setuptools"
+  ],
+  "meinheld": [
+    "setuptools"
+  ],
+  "meld3": [
+    "setuptools"
+  ],
+  "memcached": [
+    "setuptools"
   ],
   "memory-allocator": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "memory-profiler": [
+    "setuptools"
+  ],
+  "mercantile": [
+    "setuptools"
+  ],
+  "mercurial": [
+    "setuptools"
+  ],
+  "mergedb": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "mergedeep": [
+    "setuptools"
+  ],
+  "mergedict": [
+    "setuptools"
+  ],
+  "merkletools": [
+    "setuptools"
+  ],
+  "meross-iot": [
+    "setuptools"
+  ],
+  "mesa": [
+    "setuptools"
+  ],
+  "meshio": [
+    "setuptools"
+  ],
+  "meshlabxml": [
+    "setuptools"
+  ],
+  "meshtastic": [
+    "setuptools"
+  ],
+  "meson": [
+    "setuptools"
+  ],
+  "mesonpep517": [
+    "setuptools"
+  ],
+  "messagebird": [
+    "setuptools"
+  ],
+  "metakernel": [
+    "setuptools"
+  ],
+  "metar": [
+    "setuptools"
+  ],
+  "meteoalertapi": [
+    "setuptools"
+  ],
+  "meteocalc": [
+    "setuptools"
   ],
   "meteofrance-api": [
-    "poetry"
+    "poetry",
+    "poetry-core",
+    "setuptools"
   ],
   "metprint": [
     "poetry-core"
   ],
+  "mezzanine": [
+    "setuptools"
+  ],
+  "micawber": [
+    "setuptools"
+  ],
+  "micloud": [
+    "setuptools"
+  ],
+  "midiutil": [
+    "setuptools"
+  ],
+  "mido": [
+    "setuptools"
+  ],
+  "migen": [
+    "setuptools"
+  ],
+  "mike": [
+    "setuptools"
+  ],
+  "milc": [
+    "setuptools"
+  ],
+  "milksnake": [
+    "setuptools"
+  ],
+  "mill-local": [
+    "setuptools"
+  ],
+  "millheater": [
+    "setuptools"
+  ],
+  "minexr": [
+    "setuptools"
+  ],
+  "miniaudio": [
+    "setuptools"
+  ],
+  "minidb": [
+    "setuptools"
+  ],
+  "minidump": [
+    "setuptools"
+  ],
+  "minikanren": [
+    "setuptools"
+  ],
+  "minikerberos": [
+    "setuptools"
+  ],
+  "minimal-dydb": [
+    "poetry-core"
+  ],
+  "minimock": [
+    "setuptools"
+  ],
+  "mininet-python": [
+    "setuptools"
+  ],
+  "minio": [
+    "setuptools"
+  ],
+  "miniupnpc": [
+    "setuptools"
+  ],
+  "misaka": [
+    "setuptools"
+  ],
+  "mistletoe": [
+    "setuptools"
+  ],
+  "mistune": [
+    "setuptools"
+  ],
+  "mistune-2-0": [
+    "setuptools"
+  ],
+  "mitmproxy": [
+    "setuptools"
+  ],
+  "mitogen": [
+    "setuptools"
+  ],
+  "mizani": [
+    "setuptools"
+  ],
+  "mkdocs": [
+    "setuptools"
+  ],
   "mkdocs-autorefs": [
     "pdm-pep517",
-    "poetry"
+    "poetry",
+    "setuptools"
+  ],
+  "mkdocs-drawio-exporter": [
+    "setuptools"
+  ],
+  "mkdocs-exclude": [
+    "setuptools"
   ],
   "mkdocs-gen-files": [
     "poetry"
   ],
+  "mkdocs-git-revision-date-localized-plugin": [
+    "setuptools"
+  ],
+  "mkdocs-gitlab": [
+    "setuptools"
+  ],
   "mkdocs-jupyter": [
-    "ipython_genutils",
+    "ipython-genutils",
     "poetry-core"
   ],
   "mkdocs-literate-nav": [
     "poetry"
   ],
+  "mkdocs-macros": [
+    "setuptools"
+  ],
+  "mkdocs-macros-plugin": [
+    "setuptools"
+  ],
+  "mkdocs-material": [
+    "setuptools"
+  ],
+  "mkdocs-material-extensions": [
+    "setuptools"
+  ],
+  "mkdocs-minify": [
+    "setuptools"
+  ],
+  "mkdocs-redirects": [
+    "setuptools"
+  ],
+  "mkdocs-swagger-ui-tag": [
+    "setuptools"
+  ],
+  "mkdocs-table-reader-plugin": [
+    "setuptools"
+  ],
   "mkdocstrings": [
-    "pdm-pep517"
+    "pdm-pep517",
+    "setuptools"
+  ],
+  "mkdocstrings-python": [
+    "setuptools"
+  ],
+  "mkl-service": [
+    "cython",
+    "setuptools"
+  ],
+  "ml-collections": [
+    "setuptools"
+  ],
+  "mlflow": [
+    "setuptools"
+  ],
+  "mlrose": [
+    "setuptools"
+  ],
+  "mmh3": [
+    "setuptools"
+  ],
+  "mne-python": [
+    "setuptools"
+  ],
+  "mnemonic": [
+    "setuptools"
+  ],
+  "mnist": [
+    "setuptools"
+  ],
+  "moat-ble": [
+    "poetry-core",
+    "setuptools"
   ],
   "mock": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "mock-open": [
+    "setuptools"
+  ],
+  "mock-services": [
+    "setuptools"
+  ],
+  "mocket": [
+    "setuptools"
+  ],
+  "mockito": [
+    "setuptools"
+  ],
+  "mockupdb": [
+    "setuptools"
+  ],
+  "moderngl": [
+    "setuptools"
+  ],
+  "moderngl-window": [
+    "setuptools"
+  ],
+  "mohawk": [
+    "setuptools"
+  ],
+  "moku": [
+    "setuptools"
+  ],
+  "monai": [
+    "setuptools"
+  ],
+  "monero": [
+    "setuptools"
+  ],
+  "mongodict": [
+    "setuptools"
+  ],
+  "mongoengine": [
+    "setuptools"
   ],
   "mongomock": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "monkeyhex": [
+    "setuptools"
   ],
   "monosat": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "monotonic": [
+    "setuptools"
+  ],
+  "monty": [
+    "setuptools"
+  ],
+  "moonraker-api": [
+    "setuptools"
   ],
   "more-itertools": [
-    "flit-core"
+    "flit-core",
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "more-properties": [
+    "setuptools"
+  ],
+  "morphys": [
+    "setuptools"
+  ],
+  "mortgage": [
+    "setuptools"
+  ],
+  "motionblinds": [
+    "setuptools"
   ],
   "motioneye-client": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "moto": [
+    "setuptools"
+  ],
+  "motor": [
+    "setuptools"
+  ],
+  "mouseinfo": [
+    "setuptools"
+  ],
+  "moviepy": [
+    "setuptools"
+  ],
+  "mox": [
+    "setuptools"
   ],
   "mox3": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "mpd2": [
+    "setuptools"
+  ],
+  "mpi4py": [
+    "setuptools"
+  ],
+  "mpldatacursor": [
+    "setuptools"
+  ],
+  "mplfinance": [
+    "setuptools"
+  ],
+  "mplleaflet": [
+    "setuptools"
+  ],
+  "mpmath": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "mpv": [
+    "setuptools"
+  ],
+  "mpyq": [
+    "setuptools"
+  ],
+  "ms-active-directory": [
+    "setuptools"
+  ],
+  "ms-cv": [
+    "setuptools"
+  ],
+  "msal": [
+    "setuptools"
+  ],
+  "msal-extensions": [
+    "setuptools"
+  ],
+  "msgpack": [
+    "setuptools"
   ],
   "msgpack-numpy": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "msgpack-types": [
     "poetry"
   ],
+  "msgraph-core": [
+    "flit-core",
+    "setuptools"
+  ],
+  "msldap": [
+    "setuptools"
+  ],
   "msoffcrypto-tool": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "msrest": [
+    "setuptools"
+  ],
+  "msrestazure": [
+    "setuptools"
+  ],
+  "mss": [
+    "setuptools"
+  ],
+  "mt-940": [
+    "setuptools"
+  ],
+  "mujson": [
+    "setuptools"
+  ],
+  "mullvad-api": [
+    "setuptools"
+  ],
+  "mulpyplexer": [
+    "setuptools"
+  ],
+  "multi-key-dict": [
+    "setuptools"
+  ],
+  "multidict": [
+    "setuptools"
+  ],
+  "multimethod": [
+    "setuptools"
+  ],
+  "multipledispatch": [
+    "setuptools"
+  ],
+  "multiprocess": [
+    "setuptools"
+  ],
+  "multiset": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "multitasking": [
+    "setuptools"
   ],
   "munch": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "munkres": [
+    "setuptools"
   ],
   "murmurhash": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "musicbrainzngs": [
+    "setuptools"
+  ],
+  "mutag": [
+    "setuptools"
+  ],
+  "mutagen": [
+    "setuptools"
+  ],
+  "mutatormath": [
+    "setuptools"
+  ],
+  "mutesync": [
+    "setuptools"
+  ],
+  "mutf8": [
+    "setuptools"
+  ],
+  "mutmut": [
+    "setuptools"
+  ],
+  "mwclient": [
+    "setuptools"
+  ],
+  "mwdblib": [
+    "setuptools"
+  ],
+  "mwoauth": [
+    "setuptools"
+  ],
+  "mwparserfromhell": [
+    "setuptools"
+  ],
+  "mxnet": [
+    "setuptools"
+  ],
+  "myfitnesspal": [
+    "setuptools"
+  ],
+  "mygpoclient": [
+    "setuptools"
   ],
   "myhome": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "myjwt": [
+    "setuptools"
+  ],
+  "mypy": [
+    "setuptools"
   ],
   "mypy-boto3-builder": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "mypy-boto3-cognito": [
+    "setuptools"
+  ],
+  "mypy-boto3-cognito-idp": [
+    "setuptools"
+  ],
+  "mypy-boto3-s3": [
+    "setuptools"
+  ],
+  "mypy-extensions": [
+    "setuptools"
+  ],
+  "mypy-protobuf": [
+    "setuptools"
+  ],
+  "mysql-connector": [
+    "setuptools"
+  ],
+  "mysqlclient": [
+    "setuptools"
+  ],
+  "myst-docutils": [
+    "flit-core",
+    "setuptools"
+  ],
+  "myst-nb": [
+    "flit-core",
+    "flitBuildHook",
+    "setuptools"
   ],
   "myst-parser": [
-    "flit-core"
+    "flit-core",
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "nad-receiver": [
+    "setuptools"
+  ],
+  "nagiosplugin": [
+    "setuptools"
+  ],
+  "name-that-hash": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "namedlist": [
+    "setuptools"
+  ],
+  "nameparser": [
+    "setuptools"
+  ],
+  "names": [
+    "setuptools"
+  ],
+  "nampa": [
+    "setuptools"
+  ],
+  "nanoleaf": [
+    "setuptools"
+  ],
+  "nanomsg-python": [
+    "setuptools"
+  ],
+  "nanotime": [
+    "setuptools"
+  ],
+  "napalm": [
+    "setuptools"
+  ],
+  "napalm-hp-procurve": [
+    "setuptools"
+  ],
+  "napari": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "napari-console": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "napari-npe2": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "napari-plugin-engine": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "napari-svg": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "nats-py": [
+    "setuptools"
   ],
   "nats-python": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "natsort": [
+    "setuptools"
+  ],
+  "naturalsort": [
+    "setuptools"
   ],
   "nbclassic": [
-    "jupyter-packaging"
+    "jupyter-packaging",
+    "setuptools"
+  ],
+  "nbclient": [
+    "setuptools"
+  ],
+  "nbconflux": [
+    "setuptools"
+  ],
+  "nbconvert": [
+    {
+      "buildSystem": "setuptools",
+      "until": "7.0.0"
+    },
+    {
+      "buildSystem": "hatchling",
+      "from": "7.0.0"
+    }
+  ],
+  "nbdime": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "nbformat": [
+    {
+      "buildSystem": "setuptools",
+      "until": "5.4.0"
+    },
+    {
+      "buildSystem": "flit-core",
+      "from": "5.4.0",
+      "until": "5.6.0"
+    },
+    {
+      "buildSystem": "hatchling",
+      "from": "5.6.0"
+    },
+    {
+      "buildSystem": "hatch-nodejs-version",
+      "from": "5.6.0"
+    }
+  ],
+  "nbmerge": [
+    "setuptools"
+  ],
+  "nbsmoke": [
+    "setuptools"
+  ],
+  "nbsphinx": [
+    "setuptools"
+  ],
+  "nbval": [
+    "setuptools"
+  ],
+  "nbxmpp": [
+    "setuptools"
+  ],
+  "ncclient": [
+    "setuptools"
+  ],
+  "nclib": [
+    "setuptools"
+  ],
+  "ndg-httpsclient": [
+    "setuptools"
+  ],
+  "ndjson": [
+    "setuptools"
+  ],
+  "ndms2-client": [
+    "setuptools"
+  ],
+  "ndspy": [
+    "setuptools"
+  ],
+  "ndtypes": [
+    "setuptools"
+  ],
+  "nengo": [
+    "setuptools"
+  ],
+  "neo": [
+    "setuptools"
+  ],
+  "neo4j": [
+    "setuptools"
+  ],
+  "nessclient": [
+    "setuptools"
+  ],
+  "nest-asyncio": [
+    "setuptools"
+  ],
+  "nested-lookup": [
+    "setuptools"
+  ],
+  "nestedtext": [
+    "setuptools"
   ],
   "net2grid": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "netaddr": [
+    "setuptools"
   ],
   "netcdf4": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "netdata": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "netdisco": [
+    "setuptools"
+  ],
+  "netifaces": [
+    "setuptools"
+  ],
+  "netio": [
+    "setuptools"
+  ],
+  "netmap": [
+    "setuptools"
+  ],
+  "netmiko": [
+    "setuptools"
+  ],
+  "nettigo-air-monitor": [
+    "setuptools"
   ],
   "netutils": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "networkx": [
+    "setuptools"
   ],
   "newversion": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "nexia": [
+    "setuptools"
+  ],
+  "nextcloudmonitor": [
+    "setuptools"
+  ],
+  "nextcord": [
+    "setuptools"
+  ],
+  "nextdns": [
+    "setuptools"
   ],
   "nghttp2": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "niaarm": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "niapy": [
+    "setuptools"
+  ],
+  "nibabel": [
+    "setuptools"
+  ],
+  "niko-home-control": [
+    "setuptools"
+  ],
+  "nikola": [
+    "setuptools"
+  ],
+  "nilearn": [
+    "setuptools"
+  ],
+  "niluclient": [
+    "setuptools"
+  ],
+  "nimfa": [
+    "setuptools"
+  ],
+  "nine": [
+    "setuptools"
+  ],
+  "nipy": [
+    "setuptools"
   ],
   "nitime": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "nitransforms": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "nix-kernel": [
+    "setuptools"
+  ],
+  "nix-prefetch-github": [
+    "setuptools"
   ],
   "nixpkgs": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "nixpkgs-pytools": [
+    "setuptools"
   ],
   "nkdfu": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "nltk": [
+    "setuptools"
+  ],
+  "nmapthon2": [
+    "setuptools"
+  ],
+  "nocasedict": [
+    "setuptools"
+  ],
+  "nocaselist": [
+    "setuptools"
+  ],
+  "node-semver": [
+    "setuptools"
+  ],
+  "nodeenv": [
+    "setuptools"
+  ],
+  "nodepy-runtime": [
+    "setuptools"
+  ],
+  "noise": [
+    "setuptools"
+  ],
+  "noiseprotocol": [
+    "setuptools"
+  ],
+  "nomadnet": [
+    "setuptools"
+  ],
+  "normality": [
+    "setuptools"
+  ],
+  "nose": [
+    "setuptools"
+  ],
+  "nose-cov": [
+    "setuptools"
+  ],
+  "nose-cprof": [
+    "setuptools"
+  ],
+  "nose-exclude": [
+    "setuptools"
+  ],
+  "nose-pattern-exclude": [
+    "setuptools"
+  ],
+  "nose-randomly": [
+    "setuptools"
+  ],
+  "nose-timer": [
+    "setuptools"
+  ],
+  "nose-warnings-filters": [
+    "setuptools"
+  ],
+  "nose2": [
+    "setuptools"
+  ],
+  "nosejs": [
+    "setuptools"
+  ],
+  "nosexcover": [
+    "setuptools"
+  ],
+  "notebook": [
+    "setuptools"
   ],
   "notebook-shim": [
-    "jupyter-packaging"
+    "jupyter-packaging",
+    "setuptools"
+  ],
+  "notedown": [
+    "setuptools"
+  ],
+  "notifications-python-client": [
+    "setuptools"
+  ],
+  "notify-events": [
+    "setuptools"
   ],
   "notify-py": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "notify2": [
+    "setuptools"
+  ],
+  "notifymuch": [
+    "setuptools"
+  ],
+  "notmuch": [
+    "setuptools"
+  ],
+  "notmuch2": [
+    "setuptools"
+  ],
+  "nototools": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "notus-scanner": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "nplusone": [
+    "setuptools"
+  ],
+  "npyscreen": [
+    "setuptools"
+  ],
+  "nsapi": [
+    "setuptools"
   ],
   "ntc-templates": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "ntlm-auth": [
+    "setuptools"
+  ],
+  "ntplib": [
+    "setuptools"
+  ],
+  "nuitka": [
+    "setuptools"
+  ],
+  "nulltype": [
+    "setuptools"
+  ],
+  "num2words": [
+    "setuptools"
+  ],
+  "numba": [
+    "setuptools"
+  ],
+  "numba-scipy": [
+    "setuptools"
+  ],
+  "numbawithcuda": [
+    "setuptools"
   ],
   "numcodecs": [
-    "cython"
+    "cython",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "numdifftools": [
+    "setuptools"
+  ],
+  "numericalunits": [
+    "setuptools"
+  ],
+  "numexpr": [
+    "setuptools"
   ],
   "numpy": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "numpy-stl": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "numpydoc": [
+    "setuptools"
+  ],
+  "numpyro": [
+    "setuptools"
+  ],
+  "nunavut": [
+    "setuptools"
+  ],
+  "nutils": [
+    "setuptools"
+  ],
+  "nvchecker": [
+    "setuptools"
+  ],
+  "nvidia-ml-py3": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "nwdiag": [
+    "setuptools"
+  ],
+  "nxt-python": [
+    "setuptools"
+  ],
+  "oasatelematics": [
+    "setuptools"
+  ],
+  "oath": [
+    "setuptools"
+  ],
+  "oauth": [
+    "setuptools"
+  ],
+  "oauth2": [
+    "setuptools"
+  ],
+  "oauth2client": [
+    "setuptools"
+  ],
+  "oauthenticator": [
+    "setuptools"
+  ],
+  "oauthlib": [
+    "setuptools"
+  ],
+  "objax": [
+    "setuptools"
+  ],
+  "objgraph": [
+    "setuptools"
+  ],
+  "obspy": [
+    "setuptools"
+  ],
+  "oci": [
+    "setuptools"
+  ],
+  "ocifs": [
+    "setuptools"
+  ],
+  "ocrmypdf": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "od": [
+    "setuptools"
+  ],
+  "odfpy": [
+    "setuptools"
+  ],
+  "oemthermostat": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "offtrac": [
+    "setuptools"
+  ],
+  "ofxclient": [
+    "setuptools"
+  ],
+  "ofxhome": [
+    "setuptools"
+  ],
+  "ofxparse": [
+    "setuptools"
+  ],
+  "ofxtools": [
+    "setuptools"
+  ],
+  "olefile": [
+    "setuptools"
+  ],
+  "oletools": [
+    "setuptools"
+  ],
+  "omegaconf": [
+    "setuptools"
   ],
   "omnikinverter": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "omnilogic": [
+    "setuptools"
+  ],
+  "ondilo": [
+    "setuptools"
+  ],
+  "onetimepad": [
+    "setuptools"
+  ],
+  "onetimepass": [
+    "setuptools"
+  ],
+  "onkyo-eiscp": [
+    "setuptools"
+  ],
+  "online-judge-api-client": [
+    "setuptools"
+  ],
+  "online-judge-tools": [
+    "setuptools"
+  ],
+  "onlykey-solo-python": [
+    "setuptools"
+  ],
+  "onnx": [
+    "setuptools"
+  ],
+  "onvif-zeep-async": [
+    "setuptools"
+  ],
+  "oocsi": [
+    "setuptools"
+  ],
+  "open-garage": [
+    "setuptools"
   ],
   "open-meteo": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "openai": [
+    "setuptools"
+  ],
+  "openant": [
+    "setuptools"
+  ],
+  "openapi-core": [
+    "setuptools"
   ],
   "openapi-schema-validator": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "openapi-spec-validator": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "openbabel-bindings": [
+    "setuptools"
+  ],
+  "opencv4": [
+    "setuptools"
+  ],
+  "openerz-api": [
+    "setuptools"
   ],
   "openevsewifi": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "openhomedevice": [
+    "setuptools"
+  ],
+  "openidc-client": [
+    "setuptools"
+  ],
+  "openpaperwork-core": [
+    "setuptools"
+  ],
+  "openpaperwork-gtk": [
+    "setuptools"
+  ],
+  "openpyxl": [
+    "setuptools"
+  ],
+  "openrazer": [
+    "setuptools"
+  ],
+  "openrazer-daemon": [
+    "setuptools"
+  ],
+  "openrouteservice": [
+    "setuptools"
+  ],
+  "opensensemap-api": [
+    "setuptools"
+  ],
+  "opensfm": [
+    "setuptools"
+  ],
+  "openshift": [
+    "setuptools"
+  ],
+  "opensimplex": [
+    "setuptools"
   ],
   "openstackdocstheme": [
-    "pbr"
+    "pbr",
+    "setuptools"
   ],
   "openstacksdk": [
-    "pbr"
+    "pbr",
+    "setuptools"
   ],
   "openstep-plist": [
-    "cython"
+    "cython",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "opentelemetry-api": [
+    {
+      "buildSystem": "setuptools",
+      "until": "1.13.0"
+    },
+    {
+      "buildSystem": "hatchling",
+      "from": "1.13.0"
+    }
+  ],
+  "opentelemetry-exporter-otlp-proto-http": [
+    {
+      "buildSystem": "setuptools",
+      "until": "0.34b0"
+    },
+    {
+      "buildSystem": "hatchling",
+      "from": "0.34b0"
+    }
+  ],
+  "opentelemetry-instrumentation": [
+    {
+      "buildSystem": "setuptools",
+      "until": "0.34b0"
+    },
+    {
+      "buildSystem": "hatchling",
+      "from": "0.34b0"
+    }
+  ],
+  "opentelemetry-instrumentation-asyncpg": [
+    {
+      "buildSystem": "setuptools",
+      "until": "0.34b0"
+    },
+    {
+      "buildSystem": "hatchling",
+      "from": "0.34b0"
+    }
+  ],
+  "opentelemetry-instrumentation-httpx": [
+    {
+      "buildSystem": "setuptools",
+      "until": "0.34b0"
+    },
+    {
+      "buildSystem": "hatchling",
+      "from": "0.34b0"
+    }
+  ],
+  "opentelemetry-proto": [
+    {
+      "buildSystem": "setuptools",
+      "until": "1.13.0"
+    },
+    {
+      "buildSystem": "hatchling",
+      "from": "1.13.0"
+    }
+  ],
+  "opentelemetry-sdk": [
+    {
+      "buildSystem": "setuptools",
+      "until": "1.13.0"
+    },
+    {
+      "buildSystem": "hatchling",
+      "from": "1.13.0"
+    }
+  ],
+  "opentelemetry-semantic-conventions": [
+    {
+      "buildSystem": "setuptools",
+      "until": "0.34b0"
+    },
+    {
+      "buildSystem": "hatchling",
+      "from": "0.33b0"
+    }
+  ],
+  "opentimestamps": [
+    "setuptools"
+  ],
+  "opentracing": [
+    "setuptools"
   ],
   "openvino": [
     "cython"
   ],
+  "openwebifpy": [
+    "setuptools"
+  ],
+  "openwrt-luci-rpc": [
+    "setuptools"
+  ],
+  "openwrt-ubus-rpc": [
+    "setuptools"
+  ],
+  "opsdroid-get-image-size": [
+    "setuptools"
+  ],
+  "opt-einsum": [
+    "setuptools"
+  ],
+  "optax": [
+    "setuptools"
+  ],
+  "opuslib": [
+    "setuptools"
+  ],
   "ordered-set": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
+  ],
+  "orderedmultidict": [
+    "setuptools"
+  ],
+  "orjson": [
+    "setuptools"
+  ],
+  "orm": [
+    "setuptools"
   ],
   "ormar": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "ortools": [
+    "setuptools"
+  ],
+  "orvibo": [
+    "setuptools"
   ],
   "os-service-types": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "osc": [
+    "setuptools"
   ],
   "osc-lib": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "oscpy": [
+    "setuptools"
+  ],
+  "oscrypto": [
+    "setuptools"
+  ],
+  "oset": [
+    "setuptools"
   ],
   "oslo-concurrency": [
-    "pbr"
+    "pbr",
+    "setuptools"
   ],
   "oslo-config": [
-    "pbr"
+    "pbr",
+    "setuptools"
   ],
   "oslo-context": [
-    "pbr"
+    "pbr",
+    "setuptools"
   ],
   "oslo-db": [
-    "pbr"
+    "pbr",
+    "setuptools"
   ],
   "oslo-i18n": [
-    "pbr"
+    "pbr",
+    "setuptools"
   ],
   "oslo-log": [
-    "pbr"
+    "pbr",
+    "setuptools"
   ],
   "oslo-serialization": [
-    "pbr"
+    "pbr",
+    "setuptools"
   ],
   "oslo-utils": [
-    "pbr"
+    "pbr",
+    "setuptools"
   ],
   "oslotest": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "osmnx": [
+    "setuptools"
+  ],
+  "osmpythontools": [
+    "setuptools"
+  ],
+  "ospd": [
+    "setuptools"
+  ],
+  "osqp": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "oss2": [
+    "setuptools"
+  ],
+  "ossfs": [
+    "setuptools"
+  ],
+  "outcome": [
+    "setuptools"
+  ],
+  "overly": [
+    "setuptools"
+  ],
+  "ovh": [
+    "setuptools"
+  ],
+  "ovmfvartool": [
+    "setuptools"
+  ],
+  "ovoenergy": [
+    "setuptools"
+  ],
+  "owslib": [
+    "setuptools"
+  ],
+  "oyaml": [
+    "setuptools"
   ],
   "p1monitor": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pa-ringbuffer": [
+    "setuptools"
+  ],
+  "packageurl-python": [
+    "setuptools"
+  ],
+  "packaging": [
+    "setuptools"
+  ],
+  "packbits": [
+    "setuptools"
+  ],
+  "packet-python": [
+    "setuptools"
+  ],
+  "pad4pi": [
+    "setuptools"
   ],
   "paddle-client": [
     "poetry"
   ],
+  "pafy": [
+    "setuptools"
+  ],
+  "pagelabels": [
+    "setuptools"
+  ],
+  "paho-mqtt": [
+    "setuptools"
+  ],
   "palace": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "palettable": [
+    "setuptools"
+  ],
+  "pallets-sphinx-themes": [
+    "setuptools"
+  ],
+  "pam": [
+    "setuptools"
+  ],
+  "pamela": [
+    "setuptools"
+  ],
+  "pamqp": [
+    "setuptools"
+  ],
+  "panacotta": [
+    "setuptools"
+  ],
+  "panasonic-viera": [
+    "setuptools"
   ],
   "pandas": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pandas-datareader": [
+    "setuptools"
+  ],
+  "pandas-stubs": [
+    "setuptools"
+  ],
+  "pandoc-attributes": [
+    "setuptools"
+  ],
+  "pandoc-xnos": [
+    "setuptools"
+  ],
+  "pandocfilters": [
+    "setuptools"
+  ],
+  "panel": [
+    "setuptools"
+  ],
+  "panflute": [
+    "setuptools"
+  ],
+  "papermill": [
+    "setuptools"
+  ],
+  "paperwork-backend": [
+    "setuptools"
+  ],
+  "paperwork-shell": [
+    "setuptools"
+  ],
+  "papis": [
+    "setuptools"
+  ],
+  "papis-python-rofi": [
+    "setuptools"
+  ],
+  "param": [
+    "setuptools"
+  ],
+  "parameter-expansion-patched": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "parameterized": [
+    "setuptools"
+  ],
+  "paramiko": [
+    "setuptools"
+  ],
+  "paramz": [
+    "setuptools"
+  ],
+  "paranoid-crypto": [
+    "setuptools"
+  ],
+  "parfive": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "parquet": [
+    "setuptools"
+  ],
+  "parse": [
+    "setuptools"
+  ],
+  "parse-type": [
+    "setuptools"
+  ],
+  "parsedatetime": [
+    "setuptools"
+  ],
+  "parsedmarc": [
+    "setuptools"
+  ],
+  "parsel": [
+    "setuptools"
+  ],
+  "parsimonious": [
+    "setuptools"
+  ],
+  "parsita": [
+    "poetry"
+  ],
+  "parsley": [
+    "setuptools"
+  ],
+  "parso": [
+    "setuptools"
+  ],
+  "parsy": [
+    "setuptools"
+  ],
+  "partd": [
+    "setuptools"
+  ],
+  "particle": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "parts": [
+    "setuptools"
+  ],
+  "parver": [
+    "setuptools"
+  ],
+  "passlib": [
+    "setuptools"
+  ],
+  "paste": [
+    "setuptools"
+  ],
+  "pastedeploy": [
+    "setuptools"
   ],
   "pastel": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pastescript": [
+    "setuptools"
+  ],
+  "patch": [
+    "setuptools"
+  ],
+  "patch-ng": [
+    "setuptools"
+  ],
+  "path": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "path-and-address": [
+    "setuptools"
   ],
   "pathable": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pathlib2": [
+    "setuptools"
+  ],
+  "pathos": [
+    "setuptools"
+  ],
+  "pathpy": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pathspec": [
+    "setuptools"
+  ],
+  "pathtools": [
+    "setuptools"
+  ],
+  "pathvalidate": [
+    "setuptools"
+  ],
+  "pathy": [
+    "setuptools"
+  ],
+  "patiencediff": [
+    "setuptools"
+  ],
+  "patool": [
+    "setuptools"
+  ],
+  "patrowl4py": [
+    "setuptools"
+  ],
+  "patsy": [
+    "setuptools"
+  ],
+  "paver": [
+    "setuptools"
+  ],
+  "paypalrestsdk": [
+    "setuptools"
+  ],
+  "pbkdf2": [
+    "setuptools"
+  ],
+  "pbr": [
+    "setuptools"
+  ],
+  "pc-ble-driver-py": [
+    "setuptools"
+  ],
+  "pcapy-ng": [
+    "cython",
+    "setuptools"
+  ],
+  "pcodedmp": [
+    "setuptools"
+  ],
+  "pcpp": [
+    "setuptools"
+  ],
+  "pdf2image": [
+    "setuptools"
+  ],
+  "pdfkit": [
+    "setuptools"
+  ],
+  "pdfminer": [
+    "setuptools"
+  ],
+  "pdfminer-six": [
+    "setuptools"
+  ],
+  "pdfposter": [
+    "setuptools"
+  ],
+  "pdfrw": [
+    "setuptools"
+  ],
+  "pdftotext": [
+    "setuptools"
+  ],
+  "pdfx": [
+    "setuptools"
+  ],
+  "pdm-pep517": [
+    "setuptools"
+  ],
+  "pdoc": [
+    "setuptools"
+  ],
+  "pdoc3": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pdunehd": [
+    "setuptools"
+  ],
+  "peaqevcore": [
+    "setuptools"
+  ],
+  "pebble": [
+    "setuptools"
+  ],
+  "pecan": [
+    "setuptools"
+  ],
+  "peco": [
+    "setuptools"
   ],
   "peewee": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pefile": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pelican": [
+    "setuptools"
+  ],
+  "pencompy": [
+    "setuptools"
   ],
   "pendulum": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pep257": [
+    "setuptools"
+  ],
+  "pep440": [
+    "flit-core",
+    "flitBuildHook",
+    "setuptools"
   ],
   "pep440-version-utils": [
     "poetry"
   ],
   "pep517": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
+  ],
+  "pep8": [
+    "setuptools"
+  ],
+  "pep8-naming": [
+    "setuptools"
+  ],
+  "peppercorn": [
+    "setuptools"
+  ],
+  "percol": [
+    "setuptools"
+  ],
+  "periodictable": [
+    "setuptools"
+  ],
+  "persim": [
+    "setuptools"
+  ],
+  "persistent": [
+    "setuptools"
+  ],
+  "persisting-theory": [
+    "setuptools"
+  ],
+  "pescea": [
+    "setuptools"
   ],
   "pex": [
     "flit-core",
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "pexif": [
+    "setuptools"
+  ],
+  "pexpect": [
+    "setuptools"
+  ],
+  "pg8000": [
+    "setuptools"
+  ],
+  "pgcli": [
+    "setuptools"
+  ],
+  "pglast": [
+    "setuptools"
+  ],
+  "pgpdump": [
+    "setuptools"
+  ],
+  "pgpy": [
+    "setuptools"
+  ],
+  "pgsanity": [
+    "setuptools"
+  ],
+  "pgspecial": [
+    "setuptools"
+  ],
+  "phe": [
+    "setuptools"
+  ],
+  "phik": [
+    "setuptools"
+  ],
+  "phone-modem": [
+    "setuptools"
+  ],
+  "phonemizer": [
+    "setuptools"
+  ],
+  "phonenumbers": [
+    "setuptools"
+  ],
+  "phonopy": [
+    "setuptools"
+  ],
+  "phpserialize": [
+    "setuptools"
+  ],
+  "phx-class-registry": [
+    "setuptools"
+  ],
+  "pi1wire": [
+    "setuptools"
+  ],
+  "piccata": [
+    "setuptools"
+  ],
+  "piccolo-theme": [
+    "setuptools"
+  ],
+  "pick": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "pickleshare": [
+    "setuptools"
+  ],
+  "picobox": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "picos": [
+    "setuptools"
+  ],
+  "pid": [
+    "setuptools"
+  ],
+  "piexif": [
+    "setuptools"
+  ],
+  "pijuice": [
+    "setuptools"
+  ],
+  "pika": [
+    "setuptools"
+  ],
+  "pika-pool": [
+    "setuptools"
+  ],
+  "pikepdf": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pilkit": [
+    "setuptools"
+  ],
+  "pillow": [
+    "setuptools"
+  ],
+  "pillow-simd": [
+    "setuptools"
+  ],
+  "pillowfight": [
+    "setuptools"
+  ],
+  "pims": [
+    "setuptools"
+  ],
+  "pinboard": [
+    "setuptools"
+  ],
+  "pint": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pint-pandas": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pip": [
+    "setuptools"
+  ],
+  "pip-api": [
+    "setuptools"
+  ],
+  "pip-requirements-parser": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pip-tools": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pipdate": [
+    "setuptools"
+  ],
+  "pipdeptree": [
+    "hatch-vcs",
+    "hatchling",
+    "setuptools"
   ],
   "pipenv-poetry-migrate": [
-    "poetry"
+    "poetry",
+    "setuptools"
+  ],
+  "pipx": [
+    "hatchling",
+    "setuptools"
+  ],
+  "pivy": [
+    "setuptools"
+  ],
+  "pixcat": [
+    "setuptools"
   ],
   "pixelmatch": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pkce": [
+    "setuptools"
   ],
   "pkgconfig": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pkginfo": [
+    "setuptools"
+  ],
+  "pkginfo2": [
+    "setuptools"
+  ],
+  "pkgutil-resolve-name": [
+    "flit-core"
+  ],
+  "pkutils": [
+    "setuptools"
+  ],
+  "plac": [
+    "setuptools"
+  ],
+  "plaid-python": [
+    "setuptools"
+  ],
+  "plantuml": [
+    "setuptools"
+  ],
+  "plantuml-markdown": [
+    "setuptools"
+  ],
+  "plaster": [
+    "setuptools"
+  ],
+  "plaster-pastedeploy": [
+    "setuptools"
+  ],
+  "platformdirs": [
+    "hatch-vcs",
+    "hatchling",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "playsound": [
+    "setuptools"
+  ],
+  "plexapi": [
+    "setuptools"
+  ],
+  "plexauth": [
+    "setuptools"
+  ],
+  "plexwebsocket": [
+    "setuptools"
+  ],
+  "plone-testing": [
+    "setuptools"
+  ],
+  "plotly": [
+    "setuptools"
+  ],
+  "plotnine": [
+    "setuptools"
+  ],
+  "pluggy": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pluginbase": [
+    "setuptools"
+  ],
+  "plugincode": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "plugnplay": [
+    "setuptools"
+  ],
+  "plugwise": [
+    "setuptools"
+  ],
+  "plum-py": [
+    "setuptools"
+  ],
+  "plumbum": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "plux": [
-    "pytest-runner"
+    "pytest-runner",
+    "setuptools"
   ],
-  "poetry": [
-    "poetry-core"
+  "ply": [
+    "setuptools"
+  ],
+  "plyer": [
+    "setuptools"
+  ],
+  "plyfile": [
+    "setuptools"
+  ],
+  "plyplus": [
+    "setuptools"
+  ],
+  "plyvel": [
+    "setuptools"
+  ],
+  "pmsensor": [
+    "setuptools"
+  ],
+  "pmw": [
+    "setuptools"
+  ],
+  "pocket": [
+    "setuptools"
+  ],
+  "podcastparser": [
+    "setuptools"
+  ],
+  "podcats": [
+    "setuptools"
   ],
   "poetry-dynamic-versioning": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "poetry-plugin-export": [
+    "poetry",
     "poetry-core"
   ],
+  "poetry-semver": [
+    "setuptools"
+  ],
   "poetry2conda": [
-    "poetry"
+    "poetry",
+    "setuptools"
+  ],
+  "poezio": [
+    "setuptools"
+  ],
+  "polarizationsolver": [
+    "setuptools"
+  ],
+  "polib": [
+    "setuptools"
+  ],
+  "policy-sentry": [
+    "setuptools"
+  ],
+  "policyuniverse": [
+    "setuptools"
+  ],
+  "polyline": [
+    "setuptools"
   ],
   "pomegranate": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "pontos": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pony": [
+    "setuptools"
+  ],
+  "ponywhoosh": [
+    "setuptools"
+  ],
+  "pooch": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pook": [
+    "setuptools"
+  ],
+  "poolsense": [
+    "setuptools"
+  ],
+  "poppler-qt5": [
+    "setuptools"
+  ],
+  "portalocker": [
+    "setuptools"
+  ],
+  "portend": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "portpicker": [
+    "setuptools"
+  ],
+  "posix-ipc": [
+    "setuptools"
   ],
   "pot": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "potentials": [
+    "setuptools"
+  ],
+  "potr": [
+    "setuptools"
+  ],
+  "power": [
+    "setuptools"
+  ],
+  "powerline": [
+    "setuptools"
+  ],
+  "powerline-mem-segment": [
+    "setuptools"
+  ],
+  "powerlinememsegment": [
+    "setuptools"
+  ],
+  "pox": [
+    "setuptools"
+  ],
+  "poyo": [
+    "setuptools"
+  ],
+  "ppdeep": [
+    "setuptools"
+  ],
+  "ppft": [
+    "setuptools"
   ],
   "pplpy": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pprintpp": [
+    "setuptools"
+  ],
+  "pproxy": [
+    "setuptools"
+  ],
+  "ppscore": [
+    "setuptools"
+  ],
+  "pq": [
+    "setuptools"
+  ],
+  "prance": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "praw": [
+    "setuptools"
+  ],
+  "prawcore": [
+    "setuptools"
+  ],
+  "prayer-times-calculator": [
+    "setuptools"
+  ],
+  "pre-commit": [
+    "setuptools"
+  ],
+  "pre-commit-hooks": [
+    "setuptools"
+  ],
+  "pre-commit-po-hooks": [
+    "setuptools"
+  ],
+  "precis-i18n": [
+    "setuptools"
+  ],
+  "prefixed": [
+    "setuptools"
+  ],
+  "preggy": [
+    "setuptools"
+  ],
+  "premailer": [
+    "setuptools"
   ],
   "preprocess-cancellation": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "preshed": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pretend": [
+    "setuptools"
+  ],
+  "prettytable": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "primecountpy": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "primer3": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "priority": [
+    "setuptools"
+  ],
+  "prison": [
+    "setuptools"
+  ],
+  "privacyidea-ldap-proxy": [
+    "setuptools"
+  ],
+  "proboscis": [
+    "setuptools"
+  ],
+  "process-tests": [
+    "setuptools"
+  ],
+  "proglog": [
+    "setuptools"
+  ],
+  "progress": [
+    "setuptools"
+  ],
+  "progressbar": [
+    "setuptools"
+  ],
+  "progressbar2": [
+    "setuptools"
+  ],
+  "progressbar33": [
+    "setuptools"
+  ],
+  "prometheus-client": [
+    "setuptools"
   ],
   "prometheus-fastapi-instrumentator": [
     "poetry"
   ],
+  "prometheus-flask-exporter": [
+    "setuptools"
+  ],
+  "promise": [
+    "setuptools"
+  ],
+  "prompt-toolkit": [
+    "setuptools"
+  ],
+  "property-manager": [
+    "setuptools"
+  ],
   "prospector": [
     "poetry-core"
   ],
+  "protego": [
+    "setuptools"
+  ],
+  "proto-plus": [
+    "setuptools"
+  ],
+  "protobuf": [
+    "setuptools"
+  ],
+  "protobuf3-to-dict": [
+    "setuptools"
+  ],
   "protoletariat": [
     "poetry-core"
   ],
+  "proton-client": [
+    "setuptools"
+  ],
+  "protonup": [
+    "setuptools"
+  ],
+  "protonvpn-nm-lib": [
+    "setuptools"
+  ],
+  "prov": [
+    "setuptools"
+  ],
+  "prox-tv": [
+    "setuptools"
+  ],
+  "proxmoxer": [
+    "setuptools"
+  ],
+  "proxy-py": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "proxy-tools": [
+    "setuptools"
+  ],
+  "psautohint": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pscript": [
+    "setuptools"
+  ],
+  "psd-tools": [
+    "cython",
+    "setuptools"
+  ],
+  "psrpcore": [
+    "setuptools"
+  ],
+  "psutil": [
+    "setuptools"
+  ],
+  "psutil-home-assistant": [
+    "setuptools"
+  ],
+  "psycopg": [
+    "setuptools"
+  ],
+  "psycopg2": [
+    "setuptools"
+  ],
+  "psycopg2cffi": [
+    "setuptools"
+  ],
+  "psygnal": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "ptable": [
+    "setuptools"
+  ],
+  "ptest": [
+    "setuptools"
+  ],
+  "ptpython": [
+    "setuptools"
+  ],
   "ptyprocess": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
   ],
   "publication": [
     "flit"
   ],
+  "publicsuffix": [
+    "setuptools"
+  ],
+  "publicsuffix2": [
+    "setuptools"
+  ],
+  "pubnub": [
+    "setuptools"
+  ],
+  "pubnubsub-handler": [
+    "setuptools"
+  ],
+  "pudb": [
+    "setuptools"
+  ],
+  "pulp": [
+    "setuptools"
+  ],
+  "pulsectl": [
+    "setuptools"
+  ],
+  "pulumi": [
+    "setuptools"
+  ],
+  "pulumi-aws": [
+    "setuptools"
+  ],
+  "pure-cdb": [
+    "setuptools"
+  ],
+  "pure-eval": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pure-pcapy3": [
+    "setuptools"
+  ],
+  "pure-python-adb": [
+    "setuptools"
+  ],
+  "pure-python-adb-homeassistant": [
+    "setuptools"
+  ],
+  "pure-sasl": [
+    "setuptools"
+  ],
+  "puremagic": [
+    "setuptools"
+  ],
   "purepng": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "purl": [
+    "setuptools"
+  ],
+  "push-receiver": [
+    "setuptools"
+  ],
+  "pushbullet": [
+    "setuptools"
+  ],
+  "pushover-complete": [
+    "setuptools"
+  ],
+  "pvlib": [
+    "setuptools"
   ],
   "pvo": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pweave": [
+    "setuptools"
+  ],
+  "pwntools": [
+    "setuptools"
+  ],
+  "py": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "py-air-control": [
+    "setuptools"
+  ],
+  "py-air-control-exporter": [
+    "setuptools"
+  ],
+  "py-canary": [
+    "setuptools"
+  ],
+  "py-cid": [
+    "setuptools"
+  ],
+  "py-cpuinfo": [
+    "setuptools"
+  ],
+  "py-deprecate": [
+    "setuptools"
+  ],
+  "py-desmume": [
+    "setuptools"
+  ],
+  "py-dmidecode": [
+    "setuptools"
+  ],
+  "py-ecc": [
+    "setuptools"
+  ],
+  "py-eth-sig-utils": [
+    "setuptools"
+  ],
+  "py-lru-cache": [
+    "setuptools"
+  ],
+  "py-multiaddr": [
+    "setuptools"
+  ],
+  "py-multibase": [
+    "setuptools"
+  ],
+  "py-multicodec": [
+    "setuptools"
   ],
   "py-multihash": [
-    "pytest-runner"
+    "pytest-runner",
+    "setuptools"
+  ],
+  "py-nextbusnext": [
+    "setuptools"
+  ],
+  "py-nightscout": [
+    "setuptools"
+  ],
+  "py-scrypt": [
+    "setuptools"
+  ],
+  "py-sneakers": [
+    "setuptools"
+  ],
+  "py-sonic": [
+    "setuptools"
+  ],
+  "py-stringmatching": [
+    "setuptools"
   ],
   "py-synologydsm-api": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "py-tes": [
+    "setuptools"
+  ],
+  "py-tree-sitter": [
+    "setuptools"
+  ],
+  "py-ubjson": [
+    "setuptools"
+  ],
+  "py-vapid": [
+    "setuptools"
+  ],
+  "py-zabbix": [
+    "setuptools"
   ],
   "py17track": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "py2bit": [
+    "setuptools"
+  ],
+  "py3exiv2": [
+    "setuptools"
+  ],
+  "py3rijndael": [
+    "setuptools"
+  ],
+  "py3status": [
+    "setuptools"
+  ],
+  "py3to2": [
+    "setuptools"
+  ],
+  "py4j": [
+    "setuptools"
+  ],
+  "pyacoustid": [
+    "setuptools"
+  ],
+  "pyads": [
+    "setuptools"
+  ],
+  "pyaehw4a1": [
+    "setuptools"
+  ],
+  "pyaes": [
+    "setuptools"
+  ],
+  "pyaftership": [
+    "setuptools"
+  ],
+  "pyahocorasick": [
+    "setuptools"
   ],
   "pyairnow": [
-    "poetry"
+    "poetry",
+    "setuptools"
   ],
   "pyairvisual": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pyalgotrade": [
+    "setuptools"
+  ],
+  "pyalmond": [
+    "setuptools"
+  ],
+  "pyamg": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pyaml": [
+    "setuptools"
+  ],
+  "pyannotate": [
+    "setuptools"
+  ],
+  "pyarlo": [
+    "setuptools"
+  ],
+  "pyarr": [
+    "setuptools"
   ],
   "pyarrow": [
-    "cython"
+    "cython",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pyasn": [
+    "setuptools"
+  ],
+  "pyasn1": [
+    "setuptools"
+  ],
+  "pyasn1-modules": [
+    "setuptools"
+  ],
+  "pyatag": [
+    "setuptools"
+  ],
+  "pyathena": [
+    "setuptools"
+  ],
+  "pyatmo": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pyatome": [
+    "setuptools"
+  ],
+  "pyatspi": [
+    "setuptools"
+  ],
+  "pyatv": [
+    "setuptools"
+  ],
+  "pyaudio": [
+    "setuptools"
   ],
   "pyaussiebb": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "pyautogui": [
+    "setuptools"
+  ],
+  "pyavm": [
+    "setuptools"
+  ],
+  "pyaxmlparser": [
+    "setuptools"
+  ],
+  "pybalboa": [
+    "setuptools"
+  ],
+  "pybase64": [
+    "setuptools"
+  ],
+  "pybigwig": [
+    "setuptools"
+  ],
+  "pybind11": [
+    "setuptools"
+  ],
+  "pybindgen": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pyblackbird": [
+    "setuptools"
+  ],
+  "pyblake2": [
+    "setuptools"
+  ],
+  "pybluez": [
+    "setuptools"
+  ],
+  "pybotvac": [
+    "setuptools"
+  ],
+  "pybravia": [
     "poetry-core"
   ],
+  "pybrowserid": [
+    "setuptools"
+  ],
+  "pybtex": [
+    "setuptools"
+  ],
+  "pybtex-docutils": [
+    "setuptools"
+  ],
+  "pybullet": [
+    "setuptools"
+  ],
+  "pycairo": [
+    "setuptools"
+  ],
   "pycangjie": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "pycapnp": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pycaption": [
+    "setuptools"
+  ],
+  "pycares": [
+    "setuptools"
+  ],
+  "pycarwings2": [
+    "setuptools"
+  ],
+  "pycategories": [
+    "setuptools"
+  ],
+  "pycdio": [
+    "setuptools"
+  ],
+  "pycec": [
+    "setuptools"
   ],
   "pycep-parser": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pycfdns": [
+    "setuptools"
+  ],
+  "pycflow2dot": [
+    "setuptools"
+  ],
+  "pycfmodel": [
+    "setuptools"
+  ],
+  "pychannels": [
+    "setuptools"
+  ],
+  "pychef": [
+    "setuptools"
+  ],
+  "pychm": [
+    "setuptools"
+  ],
+  "pychromecast": [
+    "setuptools"
+  ],
+  "pycketcasts": [
+    "setuptools"
+  ],
+  "pyclimacell": [
+    "setuptools"
+  ],
+  "pyclip": [
+    "setuptools"
   ],
   "pyclipper": [
-    "cython"
+    "cython",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pycm": [
+    "setuptools"
+  ],
+  "pycmarkgfm": [
+    "setuptools"
   ],
   "pycocotools": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pycodestyle": [
+    "setuptools"
+  ],
+  "pycognito": [
+    "setuptools"
+  ],
+  "pycoin": [
+    "setuptools"
+  ],
+  "pycollada": [
+    "setuptools"
+  ],
+  "pycomfoconnect": [
+    "setuptools"
+  ],
+  "pycontracts": [
+    "setuptools"
+  ],
+  "pycontrol4": [
+    "setuptools"
+  ],
+  "pycoolmasternet-async": [
+    "setuptools"
+  ],
+  "pycosat": [
+    "setuptools"
+  ],
+  "pycountry": [
+    "setuptools"
+  ],
+  "pycparser": [
+    "setuptools"
+  ],
+  "pycrc": [
+    "setuptools"
+  ],
+  "pycritty": [
+    "setuptools"
+  ],
+  "pycron": [
+    "setuptools"
+  ],
+  "pycrypto": [
+    "setuptools"
+  ],
+  "pycryptodome": [
+    "setuptools"
+  ],
+  "pycryptodomex": [
+    "setuptools"
+  ],
+  "pycsdr": [
+    "setuptools"
+  ],
+  "pyct": [
+    "setuptools"
+  ],
+  "pyctr": [
+    "setuptools"
+  ],
+  "pycuda": [
+    "setuptools"
+  ],
+  "pycups": [
+    "setuptools"
+  ],
+  "pycurl": [
+    "setuptools"
+  ],
+  "pycxx": [
+    "setuptools"
+  ],
+  "pydaikin": [
+    "setuptools"
+  ],
+  "pydal": [
+    "setuptools"
+  ],
+  "pydanfossair": [
+    "setuptools"
   ],
   "pydantic": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pydantic-dydb": [
+    "poetry-core"
+  ],
+  "pydash": [
+    "setuptools"
+  ],
+  "pydata-sphinx-theme": [
+    "setuptools"
+  ],
+  "pydbus": [
+    "setuptools"
+  ],
+  "pydeck": [
+    "setuptools"
+  ],
+  "pydeconz": [
+    "setuptools"
+  ],
+  "pydelijn": [
+    "setuptools"
+  ],
+  "pydenticon": [
+    "setuptools"
+  ],
+  "pydeps": [
+    "setuptools"
+  ],
+  "pydeprecate": [
+    "setuptools"
+  ],
+  "pydes": [
+    "setuptools"
+  ],
+  "pydevccu": [
+    "setuptools"
+  ],
+  "pydevd": [
+    "setuptools"
+  ],
+  "pydexcom": [
+    "setuptools"
+  ],
+  "pydicom": [
+    "setuptools"
+  ],
+  "pydigiham": [
+    "setuptools"
+  ],
+  "pydispatcher": [
+    "setuptools"
+  ],
+  "pydmd": [
+    "setuptools"
+  ],
+  "pydns": [
+    "setuptools"
+  ],
+  "pydocstyle": [
+    "setuptools"
+  ],
+  "pydocumentdb": [
+    "setuptools"
+  ],
+  "pydoods": [
+    "setuptools"
+  ],
+  "pydot": [
+    "setuptools"
+  ],
+  "pydrive2": [
+    "setuptools"
+  ],
+  "pydroid-ipcam": [
+    "setuptools"
+  ],
+  "pydsdl": [
+    "setuptools"
+  ],
+  "pydub": [
+    "setuptools"
+  ],
+  "pyduke-energy": [
+    "setuptools"
   ],
   "pydy": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pydyf": [
+    "setuptools"
+  ],
+  "pyeapi": [
+    "setuptools"
   ],
   "pyebus": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pyeclib": [
+    "setuptools"
+  ],
+  "pyeconet": [
+    "setuptools"
+  ],
+  "pyecowitt": [
+    "setuptools"
+  ],
+  "pyedimax": [
+    "setuptools"
+  ],
+  "pyee": [
+    "setuptools"
+  ],
+  "pyefergy": [
+    "setuptools"
+  ],
+  "pyeight": [
+    "setuptools"
+  ],
+  "pyelftools": [
+    "setuptools"
+  ],
+  "pyemby": [
+    "setuptools"
   ],
   "pyemd": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pyenchant": [
+    "setuptools"
+  ],
+  "pyenvisalink": [
+    "setuptools"
+  ],
+  "pyephember": [
+    "setuptools"
+  ],
+  "pyepsg": [
+    "setuptools"
+  ],
+  "pyerfa": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pyeverlights": [
+    "setuptools"
+  ],
+  "pyevilgenius": [
+    "setuptools"
+  ],
+  "pyevmasm": [
+    "setuptools"
+  ],
+  "pyexcel": [
+    "setuptools"
+  ],
+  "pyexcel-io": [
+    "setuptools"
+  ],
+  "pyexcel-ods": [
+    "setuptools"
+  ],
+  "pyexcel-xls": [
+    "setuptools"
+  ],
+  "pyext": [
+    "setuptools"
+  ],
+  "pyezviz": [
+    "setuptools"
+  ],
+  "pyface": [
+    "setuptools"
+  ],
+  "pyfaidx": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pyfakefs": [
+    "setuptools"
+  ],
+  "pyfakewebcam": [
+    "setuptools"
+  ],
+  "pyfantom": [
+    "setuptools"
+  ],
+  "pyfcm": [
+    "setuptools"
   ],
   "pyfftw": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pyfido": [
+    "setuptools"
+  ],
+  "pyfiglet": [
+    "setuptools"
+  ],
+  "pyfireservicerota": [
+    "setuptools"
+  ],
+  "pyflakes": [
+    "setuptools"
+  ],
+  "pyflexit": [
+    "setuptools"
+  ],
+  "pyflic": [
+    "setuptools"
+  ],
+  "pyflick": [
+    "setuptools"
+  ],
+  "pyflume": [
+    "setuptools"
   ],
   "pyflunearyou": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
-  "pygame_sdl2": [
-    "cython"
+  "pyfma": [
+    "setuptools"
+  ],
+  "pyfnip": [
+    "setuptools"
+  ],
+  "pyfreedompro": [
+    "setuptools"
+  ],
+  "pyfribidi": [
+    "setuptools"
+  ],
+  "pyfritzhome": [
+    "setuptools"
+  ],
+  "pyfronius": [
+    "setuptools"
+  ],
+  "pyftdi": [
+    "setuptools"
+  ],
+  "pyftgl": [
+    "setuptools"
+  ],
+  "pyftpdlib": [
+    "setuptools"
+  ],
+  "pyfttt": [
+    "setuptools"
+  ],
+  "pyfuse3": [
+    "cython",
+    "setuptools"
+  ],
+  "pyfxa": [
+    "setuptools"
+  ],
+  "pyfzf": [
+    "setuptools"
+  ],
+  "pygal": [
+    "setuptools"
+  ],
+  "pygame": [
+    "setuptools"
+  ],
+  "pygame-gui": [
+    "setuptools"
+  ],
+  "pygame-sdl2": [
+    "cython",
+    "setuptools"
+  ],
+  "pygatt": [
+    "setuptools"
+  ],
+  "pygccxml": [
+    "setuptools"
+  ],
+  "pygdbmi": [
+    "setuptools"
+  ],
+  "pygeoip": [
+    "setuptools"
   ],
   "pygeos": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pygetwindow": [
+    "setuptools"
+  ],
+  "pygit2": [
+    "setuptools"
+  ],
+  "pygithub": [
+    "setuptools"
+  ],
+  "pyglet": [
+    "setuptools"
+  ],
+  "pygls": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pygmars": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pygments": [
+    "setuptools"
+  ],
+  "pygments-better-html": [
+    "setuptools"
+  ],
+  "pygments-markdown-lexer": [
+    "setuptools"
+  ],
+  "pygmt": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pygobject3": [
+    "setuptools"
+  ],
+  "pygogo": [
+    "setuptools"
+  ],
+  "pygpgme": [
+    "setuptools"
+  ],
+  "pygraphviz": [
+    "setuptools"
+  ],
+  "pygreat": [
+    "setuptools"
+  ],
+  "pygrok": [
+    "setuptools"
+  ],
+  "pygtail": [
+    "setuptools"
+  ],
+  "pygtfs": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pygti": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pygtkspellcheck": [
+    "setuptools"
+  ],
+  "pygtrie": [
+    "setuptools"
+  ],
+  "pyhamcrest": [
+    "hatch-vcs",
+    "hatchling",
+    "setuptools"
+  ],
+  "pyhanko": [
+    "setuptools"
+  ],
+  "pyhanko-certvalidator": [
+    "setuptools"
+  ],
+  "pyhaversion": [
+    "setuptools"
+  ],
+  "pyhcl": [
+    "setuptools"
+  ],
+  "pyheos": [
+    "setuptools"
+  ],
+  "pyhiveapi": [
+    "setuptools"
+  ],
+  "pyhocon": [
+    "setuptools"
+  ],
+  "pyhomematic": [
+    "setuptools"
+  ],
+  "pyhomepilot": [
+    "setuptools"
+  ],
+  "pyhomeworks": [
+    "setuptools"
+  ],
+  "pyhs100": [
+    "setuptools"
   ],
   "pyhumps": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pyi2cflash": [
+    "setuptools"
+  ],
+  "pyialarm": [
+    "setuptools"
+  ],
+  "pyicloud": [
+    "setuptools"
+  ],
+  "pyicu": [
+    "setuptools"
+  ],
+  "pyimpfuzzy": [
+    "setuptools"
+  ],
+  "pyinfra": [
+    "setuptools"
+  ],
+  "pyinotify": [
+    "setuptools"
+  ],
+  "pyinputevent": [
+    "setuptools"
+  ],
+  "pyinsteon": [
+    "setuptools"
+  ],
+  "pyinstrument": [
+    "setuptools"
+  ],
+  "pyintesishome": [
+    "setuptools"
+  ],
+  "pyipma": [
+    "setuptools"
+  ],
+  "pyipp": [
+    "setuptools"
   ],
   "pyiqvia": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pyisbn": [
+    "setuptools"
+  ],
+  "pyisy": [
+    "setuptools"
   ],
   "pyjet": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pyjks": [
+    "setuptools"
+  ],
+  "pyjnius": [
+    "cython",
+    "setuptools"
   ],
   "pyjsg": [
     "pbr"
   ],
+  "pyjson5": [
+    "setuptools"
+  ],
+  "pyjsparser": [
+    "setuptools"
+  ],
+  "pyjwkest": [
+    "setuptools"
+  ],
+  "pyjwt": [
+    "setuptools"
+  ],
+  "pykakasi": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pykdtree": [
+    "setuptools"
+  ],
+  "pykeepass": [
+    "setuptools"
+  ],
+  "pykerberos": [
+    "setuptools"
+  ],
+  "pykeyatome": [
+    "setuptools"
+  ],
+  "pykira": [
+    "setuptools"
+  ],
   "pykka": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pykmtronic": [
+    "setuptools"
+  ],
+  "pykodi": [
+    "setuptools"
+  ],
+  "pykoplenti": [
+    "setuptools"
+  ],
+  "pykostalpiko": [
+    "setuptools"
+  ],
+  "pykrakenapi": [
+    "setuptools"
+  ],
+  "pykulersky": [
+    "setuptools"
+  ],
+  "pykwalify": [
+    "setuptools"
+  ],
+  "pykwb": [
+    "setuptools"
+  ],
+  "pylacrosse": [
+    "setuptools"
+  ],
+  "pylama": [
+    "setuptools"
+  ],
+  "pylast": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pylatexenc": [
+    "setuptools"
+  ],
+  "pylaunches": [
+    "setuptools"
+  ],
+  "pyld": [
+    "setuptools"
+  ],
+  "pylev": [
+    "setuptools"
+  ],
+  "pylgnetcast": [
+    "setuptools"
+  ],
+  "pylibacl": [
+    "setuptools"
+  ],
+  "pylibconfig2": [
+    "setuptools"
+  ],
+  "pylibdmtx": [
+    "setuptools"
+  ],
+  "pylibftdi": [
+    "setuptools"
   ],
   "pyliblo": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pylibmc": [
+    "setuptools"
+  ],
+  "pylink-square": [
+    "setuptools"
+  ],
+  "pylint": [
+    "setuptools"
+  ],
+  "pylint-celery": [
+    "setuptools"
+  ],
+  "pylint-django": [
+    "setuptools"
+  ],
+  "pylint-flask": [
+    "setuptools"
+  ],
+  "pylint-plugin-utils": [
+    "setuptools"
+  ],
+  "pylitterbot": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "pylnk3": [
+    "setuptools"
+  ],
+  "pylru": [
+    "setuptools"
+  ],
+  "pyls-flake8": [
+    "setuptools"
+  ],
+  "pyls-isort": [
+    "setuptools"
+  ],
+  "pyls-spyder": [
+    "setuptools"
+  ],
+  "pylsp-mypy": [
+    "setuptools"
+  ],
+  "pylutron": [
+    "setuptools"
+  ],
+  "pylutron-caseta": [
+    "setuptools"
+  ],
+  "pylxd": [
+    "setuptools"
+  ],
+  "pylyrics": [
+    "setuptools"
+  ],
+  "pylzma": [
+    "setuptools"
+  ],
+  "pymacaroons": [
+    "setuptools"
+  ],
+  "pymaging": [
+    "setuptools"
+  ],
+  "pymaging-png": [
+    "setuptools"
+  ],
+  "pymailgunner": [
+    "setuptools"
+  ],
+  "pymanopt": [
+    "setuptools"
+  ],
+  "pymarshal": [
+    "setuptools"
+  ],
+  "pymata-express": [
+    "setuptools"
   ],
   "pymatgen": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "pymaven-patch": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "pymavlink": [
+    "setuptools"
+  ],
+  "pymazda": [
+    "setuptools"
+  ],
+  "pymbolic": [
+    "setuptools"
+  ],
+  "pymc": [
+    "setuptools"
+  ],
+  "pymc3": [
+    "setuptools"
   ],
   "pymdown-extensions": [
-    "hatchling"
+    "hatchling",
+    "setuptools"
+  ],
+  "pymdstat": [
+    "setuptools"
+  ],
+  "pymediainfo": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pymediaroom": [
+    "setuptools"
+  ],
+  "pymeeus": [
+    "setuptools"
+  ],
+  "pymelcloud": [
+    "setuptools"
+  ],
+  "pymemcache": [
+    "setuptools"
+  ],
+  "pymemoize": [
+    "setuptools"
+  ],
+  "pyment": [
+    "setuptools"
+  ],
+  "pymetar": [
+    "setuptools"
+  ],
+  "pymeteireann": [
+    "setuptools"
+  ],
+  "pymeteoclimatic": [
+    "setuptools"
+  ],
+  "pymetno": [
+    "setuptools"
   ],
   "pymfy": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pymicrobot": [
+    "setuptools"
+  ],
+  "pymitv": [
+    "setuptools"
+  ],
+  "pymodbus": [
+    "setuptools"
+  ],
+  "pymongo": [
+    "setuptools"
+  ],
+  "pymoo": [
+    "cython",
+    "setuptools"
+  ],
+  "pymorphy2": [
+    "setuptools"
+  ],
+  "pymorphy2-dicts-ru": [
+    "setuptools"
+  ],
+  "pympler": [
+    "setuptools"
+  ],
+  "pymsgbox": [
+    "setuptools"
   ],
   "pymssql": [
     "cython"
   ],
+  "pymsteams": [
+    "setuptools"
+  ],
+  "pymumble": [
+    "setuptools"
+  ],
+  "pymunk": [
+    "setuptools"
+  ],
+  "pymupdf": [
+    "setuptools"
+  ],
+  "pymvglive": [
+    "setuptools"
+  ],
+  "pymyq": [
+    "setuptools"
+  ],
+  "pymysensors": [
+    "setuptools"
+  ],
+  "pymysql": [
+    "setuptools"
+  ],
+  "pymysqlsa": [
+    "setuptools"
+  ],
+  "pymystem3": [
+    "setuptools"
+  ],
+  "pynac": [
+    "setuptools"
+  ],
+  "pynacl": [
+    "setuptools"
+  ],
+  "pynamecheap": [
+    "setuptools"
+  ],
+  "pynamodb": [
+    "setuptools"
+  ],
+  "pynanoleaf": [
+    "setuptools"
+  ],
+  "pynello": [
+    "setuptools"
+  ],
+  "pynest2d": [
+    "setuptools"
+  ],
+  "pynetbox": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pynetdicom": [
+    "setuptools"
+  ],
+  "pynetgear": [
+    "setuptools"
+  ],
+  "pynina": [
+    "setuptools"
+  ],
+  "pynisher": [
+    "setuptools"
+  ],
   "pynixutil": [
     "poetry"
   ],
+  "pynmea2": [
+    "setuptools"
+  ],
+  "pynndescent": [
+    "setuptools"
+  ],
+  "pynobo": [
+    "setuptools"
+  ],
+  "pynput": [
+    "setuptools"
+  ],
+  "pynrrd": [
+    "setuptools"
+  ],
   "pynuki": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pynut2": [
+    "setuptools"
+  ],
+  "pynvim": [
+    "setuptools"
+  ],
+  "pynvml": [
+    "setuptools"
+  ],
+  "pynws": [
+    "setuptools"
+  ],
+  "pynx584": [
+    "setuptools"
+  ],
+  "pynzb": [
+    "setuptools"
+  ],
+  "pyobihai": [
+    "setuptools"
+  ],
+  "pyocr": [
+    "setuptools"
+  ],
+  "pyoctoprintapi": [
+    "setuptools"
+  ],
+  "pyodbc": [
+    "setuptools"
+  ],
+  "pyogg": [
+    "setuptools"
+  ],
+  "pyombi": [
+    "setuptools"
+  ],
+  "pyomo": [
+    "setuptools"
   ],
   "pyopencl": [
-    "pybind11"
+    "pybind11",
+    "setuptools"
+  ],
+  "pyopengl": [
+    "setuptools"
+  ],
+  "pyopenssl": [
+    "setuptools"
   ],
   "pyopenuv": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "pyopnsense": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "pyoppleio": [
+    "setuptools"
+  ],
+  "pyosf": [
+    "setuptools"
+  ],
+  "pyosmium": [
+    "setuptools"
+  ],
+  "pyotgw": [
+    "setuptools"
+  ],
+  "pyotp": [
+    "setuptools"
   ],
   "pyoverkiz": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pyowm": [
+    "setuptools"
+  ],
+  "pyownet": [
+    "setuptools"
+  ],
+  "pyp": [
+    "setuptools"
+  ],
+  "pypandoc": [
+    "setuptools"
+  ],
+  "pyparser": [
+    "setuptools"
   ],
   "pyparsing": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
+  ],
+  "pyparted": [
+    "setuptools"
   ],
   "pypass": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "pypblib": [
+    "setuptools"
+  ],
+  "pypca": [
+    "setuptools"
+  ],
+  "pypcap": [
+    "setuptools"
+  ],
+  "pypck": [
+    "setuptools"
+  ],
+  "pypdf2": [
+    "setuptools"
+  ],
+  "pypdf3": [
+    "setuptools"
+  ],
+  "pypeg2": [
+    "setuptools"
+  ],
+  "pypemicro": [
+    "setuptools"
+  ],
+  "pyperclip": [
+    "setuptools"
+  ],
+  "pyperf": [
+    "setuptools"
   ],
   "pyphen": [
-    "flit"
+    "flit",
+    "setuptools"
+  ],
+  "pyphotonfile": [
+    "setuptools"
   ],
   "pypika-tortoise": [
     "poetry-core"
   ],
+  "pypillowfight": [
+    "setuptools"
+  ],
+  "pypinyin": [
+    "setuptools"
+  ],
+  "pypiserver": [
+    "setuptools"
+  ],
+  "pyplaato": [
+    "setuptools"
+  ],
+  "pypng": [
+    "setuptools"
+  ],
+  "pypoint": [
+    "setuptools"
+  ],
   "pypoolstation": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "pyppeteer": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "pyprecice": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pypresence": [
+    "setuptools"
+  ],
+  "pyprind": [
+    "setuptools"
+  ],
+  "pyprof2calltree": [
+    "setuptools"
   ],
   "pyproj": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "pyproject-flake8": [
     "flit-core"
   ],
+  "pyproject-metadata": [
+    "setuptools"
+  ],
+  "pyprosegur": [
+    "setuptools"
+  ],
   "pypsrp": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pypubsub": [
+    "setuptools"
+  ],
+  "pypugjs": [
+    "setuptools"
+  ],
+  "pypykatz": [
+    "setuptools"
+  ],
+  "pypytools": [
+    "setuptools"
+  ],
+  "pyqldb": [
+    "setuptools"
+  ],
+  "pyqrcode": [
+    "setuptools"
+  ],
+  "pyqt-builder": [
+    "setuptools"
+  ],
+  "pyqt4": [
+    "setuptools"
+  ],
+  "pyqt5": [
+    "setuptools"
+  ],
+  "pyqt5-sip": [
+    "setuptools"
+  ],
+  "pyqt5-with-qtmultimedia": [
+    "setuptools"
+  ],
+  "pyqt5-with-qtwebkit": [
+    "setuptools"
+  ],
+  "pyqtgraph": [
+    "setuptools"
+  ],
+  "pyqtwebengine": [
+    "setuptools"
+  ],
+  "pyquaternion": [
+    "setuptools"
+  ],
+  "pyquery": [
+    "setuptools"
   ],
   "pyquil": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pyqvrpro": [
+    "setuptools"
+  ],
+  "pyrabbit2": [
+    "setuptools"
   ],
   "pyrad": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pyradios": [
+    "setuptools"
+  ],
+  "pyrainbird": [
+    "setuptools"
+  ],
+  "pyramid": [
+    "setuptools"
+  ],
+  "pyramid-chameleon": [
+    "setuptools"
+  ],
+  "pyramid-exclog": [
+    "setuptools"
+  ],
+  "pyramid-hawkauth": [
+    "setuptools"
+  ],
+  "pyramid-jinja2": [
+    "setuptools"
+  ],
+  "pyramid-mako": [
+    "setuptools"
+  ],
+  "pyramid-multiauth": [
+    "setuptools"
+  ],
+  "pyreadability": [
+    "setuptools"
+  ],
+  "pyrect": [
+    "setuptools"
   ],
   "pyregion": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "pyrevolve": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pyrfc3339": [
+    "setuptools"
+  ],
+  "pyrfxtrx": [
+    "setuptools"
+  ],
+  "pyric": [
+    "setuptools"
+  ],
+  "pyrisco": [
+    "setuptools"
+  ],
+  "pyrituals": [
+    "setuptools"
   ],
   "pyrmvtransport": [
-    "flit"
+    "flit",
+    "setuptools"
+  ],
+  "pyro-api": [
+    "setuptools"
+  ],
+  "pyro-ppl": [
+    "setuptools"
+  ],
+  "pyro4": [
+    "setuptools"
+  ],
+  "pyro5": [
+    "setuptools"
+  ],
+  "pyrogram": [
+    "setuptools"
+  ],
+  "pyroma": [
+    "setuptools"
+  ],
+  "pyroute2": [
+    "setuptools"
+  ],
+  "pyrr": [
+    "setuptools"
+  ],
+  "pyrsistent": [
+    "setuptools"
+  ],
+  "pyrss2gen": [
+    "setuptools"
+  ],
+  "pyruckus": [
+    "setuptools"
+  ],
+  "pysabnzbd": [
+    "setuptools"
+  ],
+  "pysaj": [
+    "setuptools"
   ],
   "pysam": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pysaml2": [
+    "setuptools"
+  ],
+  "pysatochip": [
+    "setuptools"
+  ],
+  "pysbd": [
+    "setuptools"
+  ],
+  "pyscard": [
+    "setuptools"
+  ],
+  "pyscf": [
+    "setuptools"
+  ],
+  "pyschedule": [
+    "setuptools"
+  ],
+  "pyschemes": [
+    "setuptools"
+  ],
+  "pyscreenshot": [
+    "setuptools"
+  ],
+  "pyscreeze": [
+    "setuptools"
+  ],
+  "pyscrypt": [
+    "setuptools"
+  ],
+  "pyscss": [
+    "setuptools"
+  ],
+  "pysdcp": [
+    "setuptools"
+  ],
+  "pysdl2": [
+    "setuptools"
+  ],
+  "pysecuritas": [
+    "setuptools"
+  ],
+  "pysendfile": [
+    "setuptools"
+  ],
+  "pysensibo": [
+    "setuptools"
+  ],
+  "pysensors": [
+    "setuptools"
+  ],
+  "pyserial": [
+    "setuptools"
+  ],
+  "pyserial-asyncio": [
+    "setuptools"
+  ],
+  "pysftp": [
+    "setuptools"
+  ],
+  "pysha3": [
+    "setuptools"
+  ],
+  "pyshark": [
+    "setuptools"
   ],
   "pyshex": [
     "pbr"
@@ -1166,529 +12377,4031 @@
   "pyshexc": [
     "pbr"
   ],
+  "pyshp": [
+    "setuptools"
+  ],
+  "pysiaalarm": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pyside": [
+    "setuptools"
+  ],
+  "pyside2": [
+    "setuptools"
+  ],
+  "pysideshiboken": [
+    "setuptools"
+  ],
+  "pysidetools": [
+    "setuptools"
+  ],
   "pysigma": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pysigma-backend-elasticsearch": [
+    "poetry-core",
+    "setuptools"
   ],
   "pysigma-backend-insightidr": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pysigma-backend-opensearch": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "pysigma-backend-qradar": [
+    "poetry-core",
+    "setuptools"
   ],
   "pysigma-backend-splunk": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "pysigma-pipeline-crowdstrike": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "pysigma-pipeline-sysmon": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "pysigma-pipeline-windows": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pysignalclirestapi": [
+    "setuptools"
+  ],
+  "pysigset": [
+    "setuptools"
+  ],
+  "pysimplegui": [
+    "setuptools"
+  ],
+  "pysingleton": [
+    "setuptools"
+  ],
+  "pyskyqhub": [
+    "setuptools"
+  ],
+  "pyskyqremote": [
+    "setuptools"
   ],
   "pyslurm": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pysma": [
+    "setuptools"
+  ],
+  "pysmappee": [
+    "setuptools"
+  ],
+  "pysmart": [
+    "setuptools"
+  ],
+  "pysmart-smartx": [
+    "setuptools"
+  ],
+  "pysmartapp": [
+    "setuptools"
+  ],
+  "pysmartdl": [
+    "setuptools"
+  ],
+  "pysmartthings": [
+    "setuptools"
+  ],
+  "pysmb": [
+    "setuptools"
+  ],
+  "pysmbc": [
+    "setuptools"
   ],
   "pysmf": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pysmi": [
+    "setuptools"
   ],
   "pysml": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pysmt": [
+    "setuptools"
+  ],
+  "pysnmp": [
+    "setuptools"
   ],
   "pysnmp-pyasn1": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "pysnmp-pysmi": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "pysnmplib": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pysnooper": [
+    "setuptools"
   ],
   "pysnow": [
     "poetry",
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pysocks": [
+    "setuptools"
+  ],
+  "pysolcast": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pysolr": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pysoma": [
+    "setuptools"
+  ],
+  "pysonos": [
+    "setuptools"
+  ],
+  "pysoundfile": [
+    "setuptools"
+  ],
+  "pyspark": [
+    "setuptools"
+  ],
+  "pyspcwebgw": [
+    "setuptools"
+  ],
+  "pyspf": [
+    "setuptools"
+  ],
+  "pyspice": [
+    "setuptools"
+  ],
+  "pyspiflash": [
+    "setuptools"
+  ],
+  "pyspinel": [
+    "setuptools"
+  ],
+  "pyspnego": [
+    "setuptools"
   ],
   "pysptk": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pysqlite": [
+    "setuptools"
+  ],
+  "pysqlitecipher": [
+    "setuptools"
+  ],
+  "pysqueezebox": [
+    "setuptools"
+  ],
+  "pysrim": [
+    "setuptools"
+  ],
+  "pysrt": [
+    "setuptools"
+  ],
+  "pyssim": [
+    "setuptools"
+  ],
+  "pystache": [
+    "setuptools"
+  ],
+  "pystemd": [
+    "setuptools"
+  ],
+  "pystemmer": [
+    "cython",
+    "setuptools"
+  ],
+  "pystray": [
+    "setuptools"
+  ],
+  "pysvg-py3": [
+    "setuptools"
+  ],
+  "pysvn": [
+    "setuptools"
+  ],
+  "pyswitchbot": [
+    "setuptools"
+  ],
+  "pysychonaut": [
+    "setuptools"
+  ],
+  "pysyncobj": [
+    "setuptools"
+  ],
+  "pysyncthru": [
+    "setuptools"
+  ],
+  "pytabix": [
+    "setuptools"
+  ],
+  "pytado": [
+    "setuptools"
   ],
   "pytaglib": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pytankerkoenig": [
+    "setuptools"
+  ],
+  "pytap2": [
+    "setuptools"
+  ],
+  "pytautulli": [
+    "setuptools"
+  ],
+  "pyte": [
+    "setuptools"
+  ],
+  "pytelegrambotapi": [
+    "setuptools"
+  ],
+  "pytenable": [
+    "setuptools"
+  ],
+  "pytesseract": [
+    "setuptools"
+  ],
+  "pytest": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-6": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-aio": [
+    "setuptools"
+  ],
+  "pytest-aiohttp": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-annotate": [
+    "setuptools"
+  ],
+  "pytest-arraydiff": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-astropy": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-astropy-header": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-asyncio": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-bdd": [
+    "setuptools"
+  ],
+  "pytest-benchmark": [
+    "setuptools"
+  ],
+  "pytest-black": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-cache": [
+    "setuptools"
+  ],
+  "pytest-cases": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-catchlog": [
+    "setuptools"
   ],
   "pytest-celery": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
   ],
   "pytest-check": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
   ],
   "pytest-cid": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "pytest-clarity": [
+    "setuptools"
+  ],
+  "pytest-click": [
+    "setuptools"
+  ],
+  "pytest-console-scripts": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-cov": [
+    "setuptools"
+  ],
+  "pytest-cram": [
+    "setuptools"
+  ],
+  "pytest-datadir": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-datafiles": [
+    "setuptools"
+  ],
+  "pytest-dependency": [
+    "setuptools"
+  ],
+  "pytest-describe": [
+    "setuptools"
+  ],
+  "pytest-django": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-doctestplus": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-dotenv": [
+    "setuptools"
+  ],
+  "pytest-env": [
+    "setuptools"
+  ],
+  "pytest-error-for-skips": [
+    "setuptools"
+  ],
+  "pytest-expect": [
+    "setuptools"
+  ],
+  "pytest-factoryboy": [
+    "setuptools"
+  ],
+  "pytest-filter-subpackage": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-fixture-config": [
+    "setuptools"
+  ],
+  "pytest-flakes": [
+    "setuptools"
+  ],
+  "pytest-flask": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-forked": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-freezegun": [
+    "setuptools"
+  ],
+  "pytest-helpers-namespace": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-html": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-httpbin": [
+    "setuptools"
   ],
   "pytest-httpserver": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pytest-httpx": [
+    "setuptools"
+  ],
+  "pytest-instafail": [
+    "setuptools"
   ],
   "pytest-isort": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pytest-json-report": [
+    "setuptools"
+  ],
+  "pytest-lazy-fixture": [
+    "setuptools"
+  ],
+  "pytest-localserver": [
+    "setuptools"
+  ],
+  "pytest-logdog": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-metadata": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-mock": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "pytest-mockservers": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pytest-mpl": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-mypy": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-mypy-plugins": [
+    "setuptools"
+  ],
+  "pytest-openfiles": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-order": [
+    "setuptools"
+  ],
+  "pytest-param-files": [
+    "flit-core",
+    "flitBuildHook",
+    "setuptools"
   ],
   "pytest-profiling": [
+    "setuptools",
     "setuptools-git"
   ],
+  "pytest-pylint": [
+    "setuptools"
+  ],
+  "pytest-qt": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-raises": [
+    "setuptools"
+  ],
+  "pytest-raisesregexp": [
+    "setuptools"
+  ],
   "pytest-raisin": [
     "flit-core",
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "pytest-random-order": [
+    "setuptools"
+  ],
+  "pytest-randomly": [
+    "setuptools"
+  ],
+  "pytest-regressions": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-remotedata": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-repeat": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-rerunfailures": [
+    "setuptools"
+  ],
+  "pytest-resource-path": [
+    "setuptools"
+  ],
+  "pytest-runner": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-server-fixtures": [
+    "setuptools"
+  ],
+  "pytest-services": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-shutil": [
+    "setuptools"
+  ],
+  "pytest-snapshot": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "pytest-socket": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pytest-subprocess": [
+    "setuptools"
+  ],
+  "pytest-subtesthack": [
+    "setuptools"
+  ],
+  "pytest-subtests": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-sugar": [
+    "setuptools"
+  ],
+  "pytest-test-utils": [
+    "setuptools"
+  ],
+  "pytest-testmon": [
+    "setuptools"
+  ],
+  "pytest-timeout": [
+    "setuptools"
+  ],
+  "pytest-tornado": [
+    "setuptools"
+  ],
+  "pytest-tornasync": [
+    "setuptools"
+  ],
+  "pytest-trio": [
+    "setuptools"
+  ],
+  "pytest-twisted": [
+    "setuptools"
+  ],
+  "pytest-unordered": [
+    "setuptools"
+  ],
+  "pytest-vcr": [
+    "setuptools"
+  ],
+  "pytest-virtualenv": [
+    "setuptools"
+  ],
+  "pytest-warnings": [
+    "setuptools"
+  ],
+  "pytest-watch": [
+    "setuptools"
+  ],
+  "pytest-xdist": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-xprocess": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pytest-xvfb": [
+    "setuptools"
+  ],
+  "pytestcache": [
+    "setuptools"
+  ],
+  "pytestcov": [
+    "setuptools"
+  ],
+  "pytestrunner": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "python-awair": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "python-axolotl": [
+    "setuptools"
+  ],
+  "python-axolotl-curve25519": [
+    "setuptools"
+  ],
+  "python-barcode": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "python-baseconv": [
+    "setuptools"
+  ],
+  "python-benedict": [
+    "setuptools"
+  ],
+  "python-bidi": [
+    "setuptools"
+  ],
+  "python-binance": [
+    "setuptools"
+  ],
+  "python-box": [
+    "setuptools"
   ],
   "python-cinderclient": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "python-codon-tables": [
+    "setuptools"
+  ],
+  "python-constraint": [
+    "setuptools"
+  ],
+  "python-crfsuite": [
+    "setuptools"
+  ],
+  "python-crontab": [
+    "setuptools"
   ],
   "python-csxcad": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "python-ctags3": [
+    "setuptools"
+  ],
+  "python-daemon": [
+    "setuptools"
+  ],
+  "python-datemath": [
+    "setuptools"
+  ],
+  "python-dateutil": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "python-dbusmock": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "python-didl-lite": [
+    "setuptools"
+  ],
+  "python-digitalocean": [
+    "setuptools"
+  ],
+  "python-docx": [
+    "setuptools"
+  ],
+  "python-doi": [
+    "setuptools"
+  ],
+  "python-dotenv": [
+    "setuptools"
+  ],
+  "python-ecobee-api": [
+    "setuptools"
+  ],
+  "python-editor": [
+    "setuptools"
+  ],
+  "python-engineio": [
+    "setuptools"
+  ],
+  "python-etcd": [
+    "setuptools"
+  ],
+  "python-ethtool": [
+    "setuptools"
+  ],
+  "python-family-hub-local": [
+    "setuptools"
+  ],
+  "python-fedora": [
+    "setuptools"
+  ],
+  "python-flirt": [
+    "setuptools"
   ],
   "python-fontconfig": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "python-forecastio": [
+    "setuptools"
+  ],
+  "python-frontmatter": [
+    "setuptools"
+  ],
+  "python-fsutil": [
+    "setuptools"
+  ],
+  "python-gammu": [
+    "setuptools"
+  ],
+  "python-gitlab": [
+    "setuptools"
   ],
   "python-glanceclient": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "python-gnupg": [
+    "setuptools"
+  ],
+  "python-google-nest": [
+    "setuptools"
   ],
   "python-gvm": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "python-heatclient": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "python-hglib": [
+    "setuptools"
+  ],
+  "python-homewizard-energy": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "python-hosts": [
+    "setuptools"
+  ],
+  "python-hpilo": [
+    "setuptools"
+  ],
+  "python-http-client": [
+    "setuptools"
+  ],
+  "python-i18n": [
+    "setuptools"
+  ],
+  "python-igraph": [
+    "setuptools"
+  ],
+  "python-ipmi": [
+    "setuptools"
   ],
   "python-ironicclient": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "python-izone": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "python-jenkins": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "python-jose": [
+    "setuptools"
+  ],
+  "python-json-logger": [
+    "setuptools"
+  ],
+  "python-jsonrpc-server": [
+    "setuptools"
+  ],
+  "python-juicenet": [
+    "setuptools"
   ],
   "python-kasa": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "python-keycloak": [
+    "setuptools"
+  ],
+  "python-keyczar": [
+    "setuptools"
   ],
   "python-keystoneclient": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "python-ldap-test": [
+    "setuptools"
+  ],
+  "python-levenshtein": [
+    "setuptools"
+  ],
+  "python-linux-procfs": [
+    "setuptools"
+  ],
+  "python-logstash": [
+    "setuptools"
+  ],
+  "python-louvain": [
+    "setuptools"
+  ],
+  "python-lsp-black": [
+    "setuptools"
+  ],
+  "python-lsp-jsonrpc": [
+    "setuptools"
+  ],
+  "python-lsp-server": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "python-ly": [
+    "setuptools"
+  ],
+  "python-lz4": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "python-lzf": [
+    "setuptools"
+  ],
+  "python-lzo": [
+    "setuptools"
+  ],
+  "python-magic": [
+    "setuptools"
   ],
   "python-manilaclient": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "python-mapnik": [
+    "setuptools"
+  ],
+  "python-markdown-math": [
+    "setuptools"
+  ],
+  "python-memcached": [
+    "setuptools"
   ],
   "python-miio": [
     "poetry",
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "python-mimeparse": [
+    "setuptools"
+  ],
+  "python-mnist": [
+    "setuptools"
+  ],
+  "python-mpv-jsonipc": [
+    "setuptools"
+  ],
+  "python-multipart": [
+    "setuptools"
+  ],
+  "python-mystrom": [
+    "setuptools"
+  ],
+  "python-nest": [
+    "setuptools"
+  ],
+  "python-nmap": [
+    "setuptools"
+  ],
+  "python-nomad": [
+    "setuptools"
   ],
   "python-novaclient": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "python-nvd3": [
+    "setuptools"
+  ],
+  "python-oauth2": [
+    "setuptools"
+  ],
+  "python-olm": [
+    "setuptools"
+  ],
+  "python-opendata-transport": [
+    "setuptools"
   ],
   "python-openems": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "python-openstackclient": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "python-openzwave": [
+    "cython",
+    "setuptools"
+  ],
+  "python-openzwave-mqtt": [
+    "setuptools"
+  ],
+  "python-osc": [
+    "setuptools"
+  ],
+  "python-owasp-zap-v2-4": [
+    "setuptools"
+  ],
+  "python-packer": [
+    "setuptools"
   ],
   "python-pae": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "python-pam": [
+    "setuptools"
+  ],
+  "python-periphery": [
+    "setuptools"
+  ],
+  "python-picnic-api": [
+    "setuptools"
+  ],
+  "python-pidfile": [
+    "setuptools"
+  ],
+  "python-pipedrive": [
+    "setuptools"
   ],
   "python-pkcs11": [
-    "cython"
+    "cython",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "python-prctl": [
+    "setuptools"
+  ],
+  "python-ptrace": [
+    "setuptools"
+  ],
+  "python-pushover": [
+    "setuptools"
+  ],
+  "python-rabbitair": [
+    "setuptools"
+  ],
+  "python-rapidjson": [
+    "setuptools"
+  ],
+  "python-redis-lock": [
+    "setuptools"
+  ],
+  "python-registry": [
+    "setuptools"
+  ],
+  "python-rtmidi": [
+    "setuptools"
+  ],
+  "python-sat": [
+    "setuptools"
+  ],
+  "python-simple-hipchat": [
+    "setuptools"
+  ],
+  "python-slugify": [
+    "setuptools"
+  ],
+  "python-smarttub": [
+    "setuptools"
+  ],
+  "python-snap7": [
+    "setuptools"
+  ],
+  "python-snappy": [
+    "setuptools"
+  ],
+  "python-socketio": [
+    "setuptools"
+  ],
+  "python-socks": [
+    "setuptools"
   ],
   "python-songpal": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "python-sql": [
+    "setuptools"
+  ],
+  "python-status": [
+    "setuptools"
+  ],
+  "python-stdnum": [
+    "setuptools"
+  ],
+  "python-string-utils": [
+    "setuptools"
+  ],
+  "python-subunit": [
+    "setuptools"
   ],
   "python-swiftclient": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "python-tado": [
+    "setuptools"
+  ],
+  "python-telegram": [
+    "setuptools"
+  ],
+  "python-telegram-bot": [
+    "setuptools"
+  ],
+  "python-toolbox": [
+    "setuptools"
   ],
   "python-trovo": [
-    "poetry"
+    "poetry",
+    "setuptools"
   ],
-  "python_openzwave": [
-    "cython"
+  "python-twitch-client": [
+    "setuptools"
+  ],
+  "python-twitter": [
+    "setuptools"
+  ],
+  "python-u2flib-host": [
+    "setuptools"
+  ],
+  "python-uinput": [
+    "setuptools"
+  ],
+  "python-unshare": [
+    "setuptools"
+  ],
+  "python-utils": [
+    "setuptools"
+  ],
+  "python-vagrant": [
+    "setuptools"
+  ],
+  "python-velbus": [
+    "setuptools"
+  ],
+  "python-vipaccess": [
+    "setuptools"
+  ],
+  "python-vlc": [
+    "setuptools"
+  ],
+  "python-whois": [
+    "setuptools"
+  ],
+  "python-wink": [
+    "setuptools"
+  ],
+  "python-xmp-toolkit": [
+    "setuptools"
+  ],
+  "python-zbar": [
+    "setuptools"
+  ],
+  "python3-application": [
+    "setuptools"
+  ],
+  "python3-eventlib": [
+    "setuptools"
+  ],
+  "python3-gnutls": [
+    "setuptools"
+  ],
+  "python3-openid": [
+    "setuptools"
+  ],
+  "python3-saml": [
+    "setuptools"
+  ],
+  "pythoncatchconflictshook": [
+    "setuptools"
+  ],
+  "pythondialog": [
+    "setuptools"
+  ],
+  "pythonefl": [
+    "setuptools"
+  ],
+  "pythonegardia": [
+    "setuptools"
+  ],
+  "pythonfinder": [
+    "setuptools"
+  ],
+  "pythonix": [
+    "setuptools"
+  ],
+  "pythonnet": [
+    "setuptools"
+  ],
+  "pythran": [
+    "setuptools"
+  ],
+  "pytibber": [
+    "setuptools"
   ],
   "pytile": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pytimeparse": [
+    "setuptools"
   ],
   "pytkdocs": [
     "pdm-pep517"
   ],
+  "pytm": [
+    "setuptools"
+  ],
+  "pytmx": [
+    "setuptools"
+  ],
+  "pytoml": [
+    "setuptools"
+  ],
+  "pytomlpp": [
+    "setuptools"
+  ],
+  "pytomorrowio": [
+    "setuptools"
+  ],
+  "pytools": [
+    "setuptools"
+  ],
+  "pytorch": [
+    "setuptools"
+  ],
+  "pytorch-bin": [
+    "setuptools"
+  ],
+  "pytorch-lightning": [
+    "setuptools"
+  ],
+  "pytorch-metric-learning": [
+    "setuptools"
+  ],
+  "pytorch-pfn-extras": [
+    "setuptools"
+  ],
+  "pytorchwithcuda": [
+    "setuptools"
+  ],
+  "pytorchwithoutcuda": [
+    "setuptools"
+  ],
+  "pytraccar": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "pytradfri": [
+    "setuptools"
+  ],
+  "pytrafikverket": [
+    "setuptools"
+  ],
+  "pytransportnsw": [
+    "setuptools"
+  ],
+  "pytransportnswv2": [
+    "setuptools"
+  ],
+  "pytrends": [
+    "setuptools"
+  ],
+  "pytricia": [
+    "setuptools"
+  ],
+  "pyttsx3": [
+    "setuptools"
+  ],
+  "pytube": [
+    "setuptools"
+  ],
+  "pytun": [
+    "setuptools"
+  ],
+  "pyturbojpeg": [
+    "setuptools"
+  ],
+  "pytweening": [
+    "setuptools"
+  ],
+  "pytwitchapi": [
+    "setuptools"
+  ],
+  "pytz": [
+    "setuptools"
+  ],
+  "pytz-deprecation-shim": [
+    "setuptools"
+  ],
   "pytzdata": [
-    "poetry"
+    "poetry",
+    "setuptools"
+  ],
+  "pyu2f": [
+    "setuptools"
+  ],
+  "pyuavcan": [
+    "setuptools"
+  ],
+  "pyudev": [
+    "setuptools"
+  ],
+  "pyunifi": [
+    "setuptools"
+  ],
+  "pyunifiprotect": [
+    "setuptools"
+  ],
+  "pyupdate": [
+    "setuptools"
+  ],
+  "pyupgrade": [
+    "setuptools"
+  ],
+  "pyuptimerobot": [
+    "setuptools"
+  ],
+  "pyusb": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pyuseragents": [
+    "setuptools"
+  ],
+  "pyutil": [
+    "setuptools"
+  ],
+  "pyutilib": [
+    "setuptools"
+  ],
+  "pyuv": [
+    "setuptools"
+  ],
+  "pyvcd": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "pyvera": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pyverilog": [
+    "setuptools"
+  ],
+  "pyversasense": [
+    "setuptools"
+  ],
+  "pyvesync": [
+    "setuptools"
+  ],
+  "pyvex": [
+    "setuptools"
+  ],
+  "pyvicare": [
+    "setuptools"
+  ],
+  "pyvips": [
+    "setuptools"
+  ],
+  "pyvis": [
+    "setuptools"
+  ],
+  "pyvisa": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pyvisa-py": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pyviz-comms": [
+    "setuptools"
+  ],
+  "pyvizio": [
+    "setuptools"
+  ],
+  "pyvlx": [
+    "setuptools"
+  ],
+  "pyvmomi": [
+    "setuptools"
+  ],
+  "pyvo": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "pyvolumio": [
+    "setuptools"
+  ],
+  "pyvoro": [
+    "setuptools"
+  ],
+  "pywal": [
+    "setuptools"
+  ],
+  "pywatchman": [
+    "setuptools"
   ],
   "pywavelets": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pywayland": [
+    "setuptools"
   ],
   "pywbem": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "pyweatherflowrest": [
+    "setuptools"
+  ],
+  "pywebpush": [
+    "setuptools"
+  ],
+  "pywebview": [
+    "setuptools"
   ],
   "pywemo": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "pywerview": [
+    "setuptools"
+  ],
+  "pywilight": [
+    "setuptools"
+  ],
+  "pywinrm": [
+    "setuptools"
+  ],
+  "pywizlight": [
+    "setuptools"
+  ],
+  "pywlroots": [
+    "setuptools"
   ],
   "pyworld": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "pyws66i": [
+    "setuptools"
+  ],
+  "pyx": [
+    "setuptools"
+  ],
+  "pyxattr": [
+    "setuptools"
+  ],
+  "pyxb": [
+    "setuptools"
+  ],
+  "pyxbe": [
+    "setuptools"
+  ],
+  "pyxdg": [
+    "setuptools"
+  ],
+  "pyxeoma": [
+    "setuptools"
+  ],
+  "pyxiaomigateway": [
+    "setuptools"
+  ],
+  "pyxl3": [
+    "setuptools"
+  ],
+  "pyxnat": [
+    "setuptools"
   ],
   "pyyaml": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "pyyaml-env-tag": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
+  ],
+  "pyyaml-include": [
+    "setuptools"
+  ],
+  "pyzbar": [
+    "setuptools"
+  ],
+  "pyzerproc": [
+    "setuptools"
+  ],
+  "pyzmq": [
+    "packaging",
+    "setuptools"
+  ],
+  "pyzufall": [
+    "setuptools"
+  ],
+  "qcelemental": [
+    "setuptools"
+  ],
+  "qcengine": [
+    "setuptools"
   ],
   "qcs-api-client": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "qdarkstyle": [
+    "setuptools"
+  ],
+  "qdldl": [
+    "setuptools"
+  ],
+  "qiling": [
+    "setuptools"
+  ],
+  "qimage2ndarray": [
+    "setuptools"
+  ],
+  "qingping-ble": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "qiskit": [
+    "setuptools"
   ],
   "qiskit-aer": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "qiskit-finance": [
+    "setuptools"
+  ],
+  "qiskit-ibmq-provider": [
+    "setuptools"
+  ],
+  "qiskit-ignis": [
+    "setuptools"
+  ],
+  "qiskit-machine-learning": [
+    "setuptools"
+  ],
+  "qiskit-nature": [
+    "setuptools"
+  ],
+  "qiskit-optimization": [
+    "setuptools"
   ],
   "qiskit-terra": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "qmk-dotty-dict": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "qnap-qsw": [
+    "setuptools"
+  ],
+  "qnapstats": [
+    "setuptools"
+  ],
+  "qrcode": [
+    "setuptools"
+  ],
+  "qreactor": [
+    "setuptools"
+  ],
+  "qscintilla": [
+    "setuptools"
+  ],
+  "qscintilla-qt4": [
+    "setuptools"
+  ],
+  "qscintilla-qt5": [
+    "setuptools"
   ],
   "qstylizer": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "qt5reactor": [
+    "setuptools"
+  ],
+  "qtawesome": [
+    "setuptools"
+  ],
+  "qtconsole": [
+    "setuptools"
+  ],
+  "qtpy": [
+    "setuptools"
+  ],
+  "qualysclient": [
+    "setuptools"
+  ],
+  "quamash": [
+    "setuptools"
+  ],
+  "quandl": [
+    "setuptools"
+  ],
+  "quantities": [
+    "setuptools"
+  ],
+  "quantum-gateway": [
+    "setuptools"
+  ],
+  "querystring-parser": [
+    "setuptools"
   ],
   "questionary": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "queuelib": [
+    "setuptools"
   ],
   "qutip": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "r2pipe": [
+    "setuptools"
+  ],
+  "rachiopy": [
+    "setuptools"
+  ],
+  "radicale-infcloud": [
+    "setuptools"
+  ],
+  "radio-beam": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "radios": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "radiotherm": [
+    "setuptools"
+  ],
+  "radish-bdd": [
+    "setuptools"
+  ],
+  "railroad-diagrams": [
+    "setuptools"
+  ],
+  "rainbowstream": [
+    "setuptools"
+  ],
+  "raincloudy": [
+    "setuptools"
+  ],
+  "ramlfications": [
+    "setuptools"
+  ],
+  "random2": [
+    "setuptools"
+  ],
+  "rangehttpserver": [
+    "setuptools"
+  ],
+  "rapidfuzz": [
+    "setuptools"
+  ],
+  "rapidfuzz-capi": [
+    "setuptools"
+  ],
+  "rarfile": [
+    "setuptools"
   ],
   "rasterio": [
+    "cython",
+    "setuptools"
+  ],
+  "ratelim": [
+    "setuptools"
+  ],
+  "ratelimit": [
+    "setuptools"
+  ],
+  "ratelimiter": [
+    "setuptools"
+  ],
+  "raven": [
+    "setuptools"
+  ],
+  "rawkit": [
+    "setuptools"
+  ],
+  "rbtools": [
+    "setuptools"
+  ],
+  "rcssmin": [
+    "setuptools"
+  ],
+  "rdflib": [
+    "setuptools"
+  ],
+  "rdkit": [
+    "setuptools"
+  ],
+  "re-assert": [
+    "setuptools"
+  ],
+  "readability-lxml": [
+    "setuptools"
+  ],
+  "readchar": [
+    "setuptools"
+  ],
+  "readlike": [
+    "setuptools"
+  ],
+  "readme": [
+    "setuptools"
+  ],
+  "readme-renderer": [
+    "setuptools"
+  ],
+  "readstats": [
     "cython"
   ],
+  "readthedocs-sphinx-ext": [
+    "setuptools"
+  ],
+  "rebulk": [
+    "setuptools"
+  ],
+  "recoll": [
+    "setuptools"
+  ],
+  "recommonmark": [
+    "setuptools"
+  ],
+  "recordlinkage": [
+    "setuptools"
+  ],
+  "redbaron": [
+    "setuptools"
+  ],
+  "redis": [
+    "setuptools"
+  ],
+  "rednose": [
+    "setuptools"
+  ],
   "reedsolo": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "reflink": [
+    "setuptools"
   ],
   "regenmaschine": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "regex": [
+    "setuptools"
+  ],
+  "regional": [
+    "setuptools"
+  ],
+  "reikna": [
+    "setuptools"
+  ],
+  "related": [
+    "setuptools"
+  ],
+  "relatorio": [
+    "setuptools"
+  ],
+  "releases": [
+    "setuptools"
   ],
   "remarshal": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "remi": [
+    "setuptools"
   ],
   "renault-api": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "rencode": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "reolink": [
+    "setuptools"
+  ],
+  "reorder-python-imports": [
+    "setuptools"
+  ],
+  "reparser": [
+    "setuptools"
+  ],
+  "repocheck": [
+    "setuptools"
+  ],
+  "reportengine": [
+    "flit",
+    "setuptools"
+  ],
+  "reportlab": [
+    "setuptools"
+  ],
+  "repoze-lru": [
+    "setuptools"
+  ],
+  "repoze-sphinx-autointerface": [
+    "setuptools"
+  ],
+  "repoze-who": [
+    "setuptools"
   ],
   "reproject": [
-    "cython"
+    "cython",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "reqif": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "requests": [
+    "setuptools"
+  ],
+  "requests-aws4auth": [
+    "setuptools"
   ],
   "requests-cache": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "requests-credssp": [
+    "setuptools"
+  ],
+  "requests-download": [
+    "setuptools"
+  ],
+  "requests-file": [
+    "setuptools"
+  ],
+  "requests-futures": [
+    "setuptools"
+  ],
+  "requests-hawk": [
+    "setuptools"
+  ],
+  "requests-http-signature": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "requests-kerberos": [
+    "setuptools"
   ],
   "requests-mock": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "requests-ntlm": [
+    "setuptools"
+  ],
+  "requests-oauthlib": [
+    "setuptools"
+  ],
+  "requests-pkcs12": [
+    "setuptools"
+  ],
+  "requests-toolbelt": [
+    "setuptools"
   ],
   "requests-unixsocket": [
-    "pbr"
+    "pbr",
+    "setuptools"
   ],
   "requestsexceptions": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "requirements-detector": [
+    "poetry-core",
+    "setuptools"
   ],
   "requirements-parser": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "resampy": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "resolvelib": [
+    "setuptools"
+  ],
+  "responses": [
+    "setuptools"
+  ],
+  "respx": [
+    "setuptools"
+  ],
+  "restfly": [
+    "setuptools"
+  ],
+  "restrictedpython": [
+    "setuptools"
+  ],
+  "restructuredtext-lint": [
+    "setuptools"
+  ],
+  "restview": [
+    "setuptools"
+  ],
+  "result": [
+    "setuptools"
+  ],
+  "rethinkdb": [
+    "setuptools"
   ],
   "retry": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "retry-decorator": [
+    "setuptools"
+  ],
+  "retrying": [
+    "setuptools"
+  ],
+  "retworkx": [
+    "setuptools"
+  ],
+  "rfc3339": [
+    "setuptools"
+  ],
+  "rfc3339-validator": [
+    "setuptools"
+  ],
+  "rfc3986": [
+    "setuptools"
+  ],
+  "rfc3987": [
+    "setuptools"
+  ],
+  "rfc6555": [
+    "setuptools"
+  ],
+  "rfc7464": [
+    "setuptools"
+  ],
+  "rfcat": [
+    "setuptools"
+  ],
+  "rflink": [
+    "setuptools"
   ],
   "rich": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "rich-rst": [
+    "setuptools"
+  ],
+  "ring-doorbell": [
+    "setuptools"
   ],
   "rio-tiler": [
     "flit-core"
   ],
+  "ripe-atlas-cousteau": [
+    "setuptools"
+  ],
+  "ripe-atlas-sagan": [
+    "setuptools"
+  ],
+  "riprova": [
+    "setuptools"
+  ],
   "ripser": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "rising": [
+    "setuptools"
+  ],
+  "ritassist": [
+    "setuptools"
+  ],
+  "rjpl": [
+    "setuptools"
+  ],
+  "rjsmin": [
+    "setuptools"
+  ],
+  "rki-covid-parser": [
+    "setuptools"
+  ],
+  "rlax": [
+    "setuptools"
+  ],
+  "rlp": [
+    "setuptools"
   ],
   "rmcl": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "rmfuse": [
     "poetry-core"
   ],
   "rmrl": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "rnc2rng": [
+    "setuptools"
+  ],
+  "rnginline": [
+    "setuptools"
+  ],
+  "rns": [
+    "setuptools"
+  ],
+  "robot-detection": [
+    "setuptools"
+  ],
+  "robotframework": [
+    "setuptools"
+  ],
+  "robotframework-databaselibrary": [
+    "setuptools"
+  ],
+  "robotframework-requests": [
+    "setuptools"
+  ],
+  "robotframework-selenium2library": [
+    "setuptools"
+  ],
+  "robotframework-seleniumlibrary": [
+    "setuptools"
+  ],
+  "robotframework-sshlibrary": [
+    "setuptools"
+  ],
+  "robotstatuschecker": [
+    "setuptools"
+  ],
+  "robotsuite": [
+    "setuptools"
+  ],
+  "rocket-errbot": [
+    "setuptools"
+  ],
+  "roku": [
+    "setuptools"
   ],
   "rokuecp": [
     "poetry",
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "rollbar": [
+    "setuptools"
+  ],
+  "roman": [
+    "setuptools"
+  ],
+  "ronin": [
+    "setuptools"
   ],
   "roombapy": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "roonapi": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "rope": [
+    "setuptools"
+  ],
+  "ropgadget": [
+    "setuptools"
+  ],
+  "ropper": [
+    "setuptools"
+  ],
+  "routes": [
+    "setuptools"
+  ],
+  "rova": [
+    "setuptools"
+  ],
+  "rpcq": [
+    "setuptools"
+  ],
+  "rpdb": [
+    "setuptools"
+  ],
+  "rpi-bad-power": [
+    "setuptools"
+  ],
+  "rpi-gpio": [
+    "setuptools"
+  ],
+  "rpi-gpio2": [
+    "setuptools"
+  ],
+  "rplcd": [
+    "setuptools"
+  ],
+  "rply": [
+    "setuptools"
+  ],
+  "rpmfile": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "rpmfluff": [
+    "setuptools"
+  ],
+  "rpy2": [
+    "setuptools"
+  ],
+  "rpyc": [
+    "setuptools"
+  ],
+  "rq": [
+    "setuptools"
   ],
   "rsa": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "rsskey": [
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "rst2ansi": [
+    "setuptools"
+  ],
+  "rstcheck": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "rstcheck-core": [
+    "poetry-core",
+    "setuptools"
   ],
   "rtmidi-python": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "rtmixer": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "rtoml": [
+    "setuptools"
+  ],
+  "rtree": [
+    "setuptools"
+  ],
+  "rtslib": [
+    "setuptools"
+  ],
+  "rtsp-to-webrtc": [
+    "setuptools"
+  ],
+  "ruamel-base": [
+    "setuptools"
+  ],
+  "ruamel-yaml": [
+    "setuptools"
+  ],
+  "ruamel-yaml-clib": [
+    "setuptools"
+  ],
+  "rubymarshal": [
+    "setuptools"
+  ],
+  "ruffus": [
+    "setuptools"
+  ],
+  "runway-python": [
+    "setuptools"
+  ],
+  "ruyaml": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "rx": [
+    "setuptools"
+  ],
+  "rxv": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "rzpipe": [
+    "setuptools"
+  ],
+  "s2clientprotocol": [
+    "setuptools"
+  ],
+  "s3-credentials": [
+    "setuptools"
+  ],
+  "s3fs": [
+    "setuptools"
+  ],
+  "s3transfer": [
+    "setuptools"
+  ],
+  "sabyenc": [
+    "setuptools"
+  ],
+  "sabyenc3": [
+    "setuptools"
+  ],
+  "sacn": [
+    "setuptools"
+  ],
+  "sacred": [
+    "setuptools"
+  ],
+  "sacremoses": [
+    "setuptools"
+  ],
+  "safe": [
+    "setuptools"
+  ],
+  "safeeyes": [
+    "setuptools"
+  ],
+  "safeio": [
+    "setuptools"
+  ],
+  "safety": [
+    "setuptools"
+  ],
+  "sagemaker": [
+    "setuptools"
+  ],
+  "salmon-mail": [
+    "setuptools"
+  ],
+  "sampledata": [
+    "setuptools"
+  ],
+  "samplerate": [
+    "setuptools"
+  ],
+  "samsungctl": [
+    "setuptools"
+  ],
+  "samsungtvws": [
+    "setuptools"
+  ],
+  "sane": [
+    "setuptools"
   ],
   "sane-python": [
     "poetry-core"
   ],
+  "saneyaml": [
+    "setuptools",
+    "setuptools-scm"
+  ],
   "sanic": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "sanic-auth": [
+    "setuptools"
+  ],
+  "sanic-routing": [
+    "setuptools"
+  ],
+  "sanic-testing": [
+    "setuptools"
+  ],
+  "sansio-multipart": [
+    "setuptools"
+  ],
+  "sapi-python-client": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "sarge": [
+    "setuptools"
   ],
   "sarif-om": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "sasmodels": [
+    "setuptools"
   ],
   "sat-search": [
     "pytest-runner"
   ],
+  "scales": [
+    "setuptools"
+  ],
+  "scancode-toolkit": [
+    "setuptools"
+  ],
+  "scandir": [
+    "setuptools"
+  ],
+  "scapy": [
+    "setuptools"
+  ],
+  "schedule": [
+    "setuptools"
+  ],
+  "schema": [
+    "setuptools"
+  ],
+  "schema-salad": [
+    "setuptools"
+  ],
+  "schiene": [
+    "setuptools"
+  ],
+  "schwifty": [
+    "setuptools"
+  ],
   "scikit-bio": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "scikit-build": [
-    "cython"
+    "cython",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "scikit-fmm": [
+    "setuptools"
+  ],
+  "scikit-fuzzy": [
+    "setuptools"
+  ],
+  "scikit-hep-testdata": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "scikit-image": [
     "cython"
   ],
   "scikit-learn": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "scikit-learn-extra": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "scikit-misc": [
+    "cython",
+    "setuptools"
+  ],
+  "scikit-optimize": [
+    "setuptools"
   ],
   "scikit-survival": [
-    "cython"
+    "cython",
+    "setuptools",
+    "setuptools-scm"
   ],
   "scikit-tda": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "scikitimage": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "scikitlearn": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "scikits-odes": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "scipy": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "scmrepo": [
+    "setuptools"
+  ],
+  "scour": [
+    "setuptools"
+  ],
+  "scp": [
+    "setuptools"
+  ],
+  "scramp": [
+    "setuptools"
+  ],
+  "scrap-engine": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "scrapy": [
+    "setuptools"
+  ],
+  "scrapy-deltafetch": [
+    "setuptools"
+  ],
+  "scrapy-fake-useragent": [
+    "setuptools"
+  ],
+  "scrapy-splash": [
+    "setuptools"
+  ],
+  "screeninfo": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "screenlogicpy": [
+    "setuptools"
+  ],
+  "scripttest": [
+    "setuptools"
+  ],
+  "scs": [
+    "setuptools"
+  ],
+  "sdds": [
+    "setuptools"
+  ],
+  "sdnotify": [
+    "setuptools"
+  ],
+  "seaborn": [
+    {
+      "buildSystem": "setuptools",
+      "until": "0.12.0"
+    },
+    {
+      "buildSystem": "flit-core",
+      "from": "0.12.0"
+    }
   ],
   "seabreeze": [
-    "cython"
+    "cython",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "seatconnect": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "seccomp": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "secp256k1": [
+    "setuptools"
+  ],
+  "secretstorage": [
+    "setuptools"
+  ],
+  "secure": [
+    "setuptools"
+  ],
+  "securetar": [
+    "setuptools"
+  ],
+  "seekpath": [
+    "setuptools"
+  ],
+  "segments": [
+    "setuptools"
+  ],
+  "segno": [
+    "setuptools"
+  ],
+  "selectors2": [
+    "setuptools"
+  ],
+  "selenium": [
+    "setuptools"
+  ],
+  "selinux": [
+    "setuptools"
+  ],
+  "semantic-version": [
+    "setuptools"
+  ],
+  "semver": [
+    "setuptools"
+  ],
+  "send2trash": [
+    "setuptools"
+  ],
+  "sendgrid": [
+    "setuptools"
+  ],
+  "sense-energy": [
+    "setuptools"
+  ],
+  "sensor-state-data": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "sensorpro-ble": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "sensorpush-ble": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "sentencepiece": [
+    "setuptools"
   ],
   "sentinel": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "sentinels": [
+    "setuptools"
+  ],
+  "sentry-sdk": [
+    "setuptools"
+  ],
+  "sepaxml": [
+    "setuptools"
+  ],
+  "seqdiag": [
+    "setuptools"
+  ],
+  "seqeval": [
+    "setuptools"
+  ],
+  "sequoia": [
+    "setuptools"
+  ],
+  "serpent": [
+    "setuptools"
+  ],
+  "serpy": [
+    "setuptools"
+  ],
+  "servefile": [
+    "setuptools"
+  ],
+  "serverlessrepo": [
+    "setuptools"
+  ],
+  "service-identity": [
+    "setuptools"
+  ],
+  "setproctitle": [
+    "setuptools"
+  ],
+  "setupmeta": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "setuptools-declarative-requirements": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "setuptools-git": [
+    "setuptools"
+  ],
+  "setuptools-lint": [
+    "setuptools"
+  ],
+  "setuptools-rust": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "setuptools-scm": [
+    "setuptools"
+  ],
+  "setuptools-scm-git-archive": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "setuptoolsbuildhook": [
+    "setuptools"
+  ],
+  "setuptoolscheckhook": [
+    "setuptools"
+  ],
+  "setuptoolstrial": [
+    "setuptools"
   ],
   "seventeentrack": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "sexpdata": [
+    "setuptools"
   ],
   "sfepy": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "sgmllib3k": [
+    "setuptools"
+  ],
+  "sgp4": [
+    "setuptools"
+  ],
+  "sh": [
+    "setuptools"
+  ],
+  "shamir-mnemonic": [
+    "setuptools"
   ],
   "shapely": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "sharedmem": [
+    "setuptools"
+  ],
+  "sharkiq": [
+    "setuptools"
+  ],
+  "sharkiqpy": [
+    "setuptools"
+  ],
+  "shellescape": [
+    "setuptools"
+  ],
+  "shellingham": [
+    "setuptools"
   ],
   "shexjsg": [
     "pbr"
   ],
+  "shiboken2": [
+    "setuptools"
+  ],
+  "shippai": [
+    "setuptools"
+  ],
+  "shiv": [
+    "setuptools"
+  ],
+  "shodan": [
+    "setuptools"
+  ],
+  "shortuuid": [
+    "poetry",
+    "setuptools"
+  ],
+  "should-dsl": [
+    "setuptools"
+  ],
+  "showit": [
+    "setuptools"
+  ],
+  "shtab": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "shutilwhich": [
+    "setuptools"
+  ],
+  "sievelib": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "signedjson": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "signify": [
+    "setuptools"
+  ],
+  "sigrok": [
+    "setuptools"
+  ],
+  "sigtools": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "simanneal": [
+    "setuptools"
+  ],
+  "simber": [
+    "setuptools"
+  ],
+  "simple-di": [
+    "setuptools"
+  ],
+  "simple-rest-client": [
+    "setuptools"
+  ],
+  "simple-rlp": [
+    "setuptools"
+  ],
+  "simple-salesforce": [
+    "setuptools"
+  ],
+  "simple-websocket-server": [
+    "setuptools"
+  ],
+  "simpleaudio": [
+    "setuptools"
+  ],
+  "simplebayes": [
+    "setuptools"
+  ],
+  "simpleeval": [
+    "setuptools"
+  ],
+  "simplefix": [
+    "setuptools"
+  ],
+  "simplegeneric": [
+    "setuptools"
+  ],
+  "simplehound": [
+    "setuptools"
+  ],
+  "simplejson": [
+    "setuptools"
+  ],
+  "simplekml": [
+    "setuptools"
+  ],
+  "simplenote": [
+    "setuptools"
+  ],
   "simplisafe-python": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "simpy": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "single-source": [
     "poetry-core"
   ],
   "single-version": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "siobrultech-protocols": [
+    "setuptools"
+  ],
+  "siosocks": [
+    "setuptools"
+  ],
+  "sip": [
+    "setuptools"
+  ],
+  "sip-4": [
+    "setuptools"
+  ],
+  "six": [
+    "setuptools"
+  ],
+  "sjcl": [
+    "setuptools"
+  ],
+  "skein": [
+    "setuptools"
   ],
   "skia-pathops": [
-    "cython"
+    "cython",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "skidl": [
+    "setuptools"
+  ],
+  "skodaconnect": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "skybellpy": [
+    "setuptools"
+  ],
+  "skyfield": [
+    "setuptools"
+  ],
+  "skytemple-dtef": [
+    "setuptools"
+  ],
+  "skytemple-eventserver": [
+    "setuptools"
+  ],
+  "skytemple-files": [
+    "setuptools"
+  ],
+  "skytemple-icons": [
+    "setuptools"
+  ],
+  "skytemple-rust": [
+    "setuptools"
+  ],
+  "skytemple-ssb-debugger": [
+    "setuptools"
+  ],
+  "slack-sdk": [
+    "setuptools"
+  ],
+  "slackclient": [
+    "setuptools"
+  ],
+  "sleepyq": [
+    "setuptools"
+  ],
+  "slicedimage": [
+    "setuptools"
+  ],
+  "slicer": [
+    "setuptools"
+  ],
+  "slicerator": [
+    "setuptools"
+  ],
+  "slither-analyzer": [
+    "setuptools"
+  ],
+  "slixmpp": [
+    "setuptools"
+  ],
+  "slob": [
+    "setuptools"
   ],
   "slowapi": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "slugid": [
+    "setuptools"
+  ],
+  "sly": [
+    "setuptools"
+  ],
+  "smart-meter-texas": [
+    "setuptools"
+  ],
+  "smart-open": [
+    "setuptools"
+  ],
+  "smarthab": [
+    "setuptools"
+  ],
+  "smartypants": [
+    "setuptools"
+  ],
+  "smbprotocol": [
+    "setuptools"
+  ],
+  "smbus-cffi": [
+    "setuptools"
+  ],
+  "smbus2": [
+    "setuptools"
+  ],
+  "smdebug-rulesconfig": [
+    "setuptools"
+  ],
+  "smhi-pkg": [
+    "setuptools"
+  ],
+  "smmap": [
+    "setuptools"
+  ],
+  "smpplib": [
+    "setuptools"
+  ],
+  "snakebite": [
+    "setuptools"
+  ],
+  "snakeviz": [
+    "setuptools"
+  ],
+  "snapcast": [
+    "setuptools"
+  ],
+  "snapshottest": [
+    "setuptools"
+  ],
+  "sniffio": [
+    "setuptools"
+  ],
+  "snitun": [
+    "setuptools"
+  ],
+  "snowballstemmer": [
+    "setuptools"
+  ],
+  "snowflake-connector-python": [
+    "setuptools"
+  ],
+  "snowflake-sqlalchemy": [
+    "setuptools"
+  ],
+  "snscrape": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "snuggs": [
+    "setuptools"
+  ],
+  "social-auth-app-django": [
+    "setuptools"
+  ],
+  "social-auth-core": [
+    "setuptools"
+  ],
+  "socialscan": [
+    "setuptools"
+  ],
+  "socid-extractor": [
+    "setuptools"
+  ],
+  "socketio-client": [
+    "setuptools"
+  ],
+  "sockjs": [
+    "setuptools"
+  ],
+  "sockjs-tornado": [
+    "setuptools"
   ],
   "socksio": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
+  ],
+  "socksipy-branch": [
+    "setuptools"
+  ],
+  "soco": [
+    "setuptools"
+  ],
+  "softlayer": [
+    "setuptools"
+  ],
+  "solaredge": [
+    "setuptools"
+  ],
+  "solax": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "solc-select": [
+    "setuptools"
   ],
   "solo-python": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "somajo": [
+    "setuptools"
+  ],
+  "somecomfort": [
+    "setuptools"
+  ],
+  "somfy-mylink-synergy": [
+    "setuptools"
+  ],
+  "sonarr": [
+    "setuptools"
+  ],
+  "sopel": [
+    "setuptools"
+  ],
+  "sorl-thumbnail": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "sortedcollections": [
+    "setuptools"
+  ],
+  "sortedcontainers": [
+    "setuptools"
+  ],
+  "soundcloud-v2": [
+    "setuptools"
+  ],
+  "sounddevice": [
+    "setuptools"
+  ],
+  "soundfile": [
+    "setuptools"
   ],
   "soupsieve": [
-    "hatchling"
+    "hatchling",
+    "setuptools"
+  ],
+  "spacy": [
+    "setuptools"
+  ],
+  "spacy-alignments": [
+    "setuptools"
+  ],
+  "spacy-legacy": [
+    "setuptools"
+  ],
+  "spacy-loggers": [
+    "setuptools"
   ],
   "spacy-pkuseg": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "spacy-transformers": [
+    "setuptools"
+  ],
+  "spake2": [
+    "setuptools"
+  ],
+  "spark-parser": [
+    "setuptools"
+  ],
+  "sparklines": [
+    "setuptools"
   ],
   "sparqlslurper": [
     "pbr"
   ],
+  "sparse": [
+    "setuptools"
+  ],
+  "spdx-tools": [
+    "setuptools"
+  ],
+  "speaklater": [
+    "setuptools"
+  ],
+  "speaklater3": [
+    "setuptools"
+  ],
+  "spectral-cube": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "speedtest-cli": [
+    "setuptools"
+  ],
+  "spglib": [
+    "setuptools"
+  ],
+  "sphfile": [
+    "setuptools"
+  ],
+  "sphinx": [
+    "cython",
+    "setuptools"
+  ],
+  "sphinx-argparse": [
+    "setuptools"
+  ],
+  "sphinx-autobuild": [
+    "setuptools"
+  ],
+  "sphinx-autodoc-typehints": [
+    "setuptools"
+  ],
+  "sphinx-basic-ng": [
+    "setuptools"
+  ],
+  "sphinx-better-theme": [
+    "setuptools"
+  ],
+  "sphinx-book-theme": [
+    "setuptools"
+  ],
+  "sphinx-comments": [
+    "setuptools"
+  ],
+  "sphinx-copybutton": [
+    "setuptools"
+  ],
+  "sphinx-design": [
+    "flit-core",
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "sphinx-external-toc": [
+    "flit-core",
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "sphinx-fortran": [
+    "setuptools"
+  ],
   "sphinx-inline-tabs": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
   ],
   "sphinx-jinja": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "sphinx-jupyterbook-latex": [
+    "setuptools"
+  ],
+  "sphinx-markdown-parser": [
+    "setuptools"
+  ],
+  "sphinx-material": [
+    "setuptools"
+  ],
+  "sphinx-mdinclude": [
+    "flit-core",
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "sphinx-multitoc-numbering": [
+    "setuptools"
+  ],
+  "sphinx-pypi-upload": [
+    "setuptools"
+  ],
+  "sphinx-pytest": [
+    "flit-core",
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "sphinx-rtd-theme": [
+    "setuptools"
+  ],
+  "sphinx-serve": [
+    "setuptools"
+  ],
+  "sphinx-testing": [
+    "setuptools"
+  ],
+  "sphinx-thebe": [
+    "setuptools"
+  ],
+  "sphinx-togglebutton": [
+    "setuptools"
+  ],
+  "sphinxcontrib-actdiag": [
+    "setuptools"
   ],
   "sphinxcontrib-apidoc": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "sphinxcontrib-applehelp": [
+    "setuptools"
+  ],
+  "sphinxcontrib-autoapi": [
+    "setuptools"
+  ],
+  "sphinxcontrib-bibtex": [
+    "setuptools"
+  ],
+  "sphinxcontrib-blockdiag": [
+    "setuptools"
+  ],
+  "sphinxcontrib-confluencebuilder": [
+    "setuptools"
+  ],
+  "sphinxcontrib-devhelp": [
+    "setuptools"
+  ],
+  "sphinxcontrib-excel-table": [
+    "setuptools"
   ],
   "sphinxcontrib-fulltoc": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "sphinxcontrib-htmlhelp": [
+    "setuptools"
+  ],
+  "sphinxcontrib-httpdomain": [
+    "setuptools"
+  ],
+  "sphinxcontrib-jsmath": [
+    "setuptools"
+  ],
+  "sphinxcontrib-katex": [
+    "setuptools"
+  ],
+  "sphinxcontrib-newsfeed": [
+    "setuptools"
+  ],
+  "sphinxcontrib-nwdiag": [
+    "setuptools"
+  ],
+  "sphinxcontrib-openapi": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "sphinxcontrib-plantuml": [
+    "setuptools"
+  ],
+  "sphinxcontrib-programoutput": [
+    "setuptools"
+  ],
+  "sphinxcontrib-qthelp": [
+    "setuptools"
+  ],
+  "sphinxcontrib-seqdiag": [
+    "setuptools"
+  ],
+  "sphinxcontrib-serializinghtml": [
+    "setuptools"
   ],
   "sphinxcontrib-spelling": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "sphinxcontrib-tikz": [
+    "setuptools"
+  ],
+  "sphinxcontrib-websupport": [
+    "setuptools"
+  ],
+  "sphinxext-opengraph": [
+    "setuptools"
   ],
   "spiderpy": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "spidev": [
+    "setuptools"
+  ],
+  "spinners": [
+    "setuptools"
+  ],
+  "splinter": [
+    "setuptools"
+  ],
+  "spotipy": [
+    "setuptools"
+  ],
+  "spsdk": [
+    "setuptools"
+  ],
+  "spur": [
+    "setuptools"
+  ],
+  "spyder": [
+    "setuptools"
+  ],
+  "spyder-kernels": [
+    "setuptools"
+  ],
+  "spyse-python": [
+    "setuptools"
+  ],
+  "sqlalchemy": [
+    "cython",
+    "setuptools"
+  ],
+  "sqlalchemy-citext": [
+    "setuptools"
+  ],
+  "sqlalchemy-continuum": [
+    "setuptools"
+  ],
+  "sqlalchemy-i18n": [
+    "setuptools"
+  ],
+  "sqlalchemy-jsonfield": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "sqlalchemy-migrate": [
-    "pbr"
+    "pbr",
+    "setuptools"
   ],
-  "sqlalchemy_migrate": [
-    "pbr"
+  "sqlalchemy-mixins": [
+    "setuptools"
+  ],
+  "sqlalchemy-utils": [
+    "setuptools"
+  ],
+  "sqlglot": [
+    "setuptools"
+  ],
+  "sqlite-fts4": [
+    "setuptools"
+  ],
+  "sqlite-utils": [
+    "setuptools"
+  ],
+  "sqlitedict": [
+    "setuptools"
+  ],
+  "sqlmap": [
+    "setuptools"
+  ],
+  "sqlobject": [
+    "setuptools"
+  ],
+  "sqlparse": [
+    "setuptools"
+  ],
+  "srp": [
+    "setuptools"
+  ],
+  "srpenergy": [
+    "setuptools"
+  ],
+  "srptools": [
+    "setuptools"
   ],
   "srsly": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "srt": [
+    "setuptools"
+  ],
+  "srvlookup": [
+    "setuptools"
+  ],
+  "ssdeep": [
+    "setuptools"
   ],
   "ssdp": [
-    "pbr"
+    "pbr",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "sseclient": [
+    "setuptools"
+  ],
+  "sseclient-py": [
+    "setuptools"
+  ],
+  "ssh-mitm": [
+    "setuptools"
+  ],
+  "sshpubkeys": [
+    "setuptools"
+  ],
+  "sshtunnel": [
+    "setuptools"
+  ],
+  "sslib": [
+    "setuptools"
   ],
   "stack-data": [
-    "cython"
+    "cython",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "stanza": [
+    "setuptools"
+  ],
+  "starkbank-ecdsa": [
+    "setuptools"
+  ],
+  "starlette": [
+    "setuptools"
+  ],
+  "starline": [
+    "setuptools"
+  ],
+  "stashy": [
+    "setuptools"
   ],
   "staticjinja": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "statistics": [
+    "setuptools"
   ],
   "statmake": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "statsd": [
+    "setuptools"
   ],
   "statsmodels": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "stdiomask": [
+    "setuptools"
+  ],
+  "stdlib-list": [
+    "setuptools"
+  ],
+  "steamodd": [
+    "setuptools"
+  ],
+  "stem": [
+    "setuptools"
   ],
   "stestr": [
-    "pbr"
+    "pbr",
+    "setuptools"
   ],
   "stevedore": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "stickytape": [
+    "setuptools"
+  ],
+  "stim": [
+    "setuptools"
+  ],
+  "stm32loader": [
+    "setuptools"
+  ],
+  "stone": [
+    "setuptools"
+  ],
+  "stookalert": [
+    "setuptools"
+  ],
+  "stopit": [
+    "setuptools"
+  ],
+  "strategies": [
+    "setuptools"
+  ],
+  "stravalib": [
+    "setuptools"
   ],
   "strawberry-graphql": [
-    "poetry"
+    "poetry",
+    "setuptools"
+  ],
+  "streamdeck": [
+    "setuptools"
   ],
   "streaming-form-data": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "streamlabswater": [
+    "setuptools"
+  ],
+  "streamz": [
+    "setuptools"
+  ],
+  "strenum": [
+    "setuptools"
+  ],
+  "strict-rfc3339": [
+    "setuptools"
+  ],
+  "strictyaml": [
+    "setuptools"
+  ],
+  "stringcase": [
+    "setuptools"
+  ],
+  "stringly": [
+    "setuptools"
+  ],
+  "stripe": [
+    "setuptools"
+  ],
+  "striprtf": [
+    "setuptools"
   ],
   "structlog": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
   ],
   "structlog-sentry": [
     "poetry-core"
   ],
+  "stumpy": [
+    "setuptools"
+  ],
+  "stups-cli-support": [
+    "setuptools"
+  ],
+  "stups-fullstop": [
+    "setuptools"
+  ],
+  "stups-pierone": [
+    "setuptools"
+  ],
+  "stups-tokens": [
+    "setuptools"
+  ],
+  "stups-zign": [
+    "setuptools"
+  ],
+  "stytra": [
+    "setuptools"
+  ],
+  "subarulink": [
+    "setuptools"
+  ],
+  "subliminal": [
+    "setuptools"
+  ],
+  "subprocess-tee": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "subprocess32": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "subunit": [
+    "setuptools"
+  ],
   "subunit2sql": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "subzerod": [
+    "setuptools"
   ],
   "sumo": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "sumtypes": [
+    "setuptools"
+  ],
+  "sunpy": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "sunwatcher": [
+    "setuptools"
+  ],
+  "superqt": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "supervise-api": [
+    "setuptools"
+  ],
+  "supervisor": [
+    "setuptools"
+  ],
+  "sure": [
+    "setuptools"
   ],
   "surepy": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "surt": [
+    "setuptools"
+  ],
+  "survey": [
+    "setuptools"
+  ],
+  "svg-path": [
+    "setuptools"
+  ],
+  "svglib": [
+    "setuptools"
+  ],
+  "svgwrite": [
+    "setuptools"
+  ],
+  "swagger-spec-validator": [
+    "setuptools"
+  ],
+  "swagger-ui-bundle": [
+    "setuptools"
   ],
   "swift": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "swisshydrodata": [
+    "setuptools"
   ],
   "swspotify": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "sybil": [
+    "setuptools"
   ],
   "symengine": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "sympy": [
+    "setuptools"
+  ],
+  "syncer": [
+    "setuptools"
+  ],
+  "synergy": [
+    "setuptools"
   ],
   "synologydsm-api": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "syslog-rfc5424-formatter": [
+    "setuptools"
+  ],
+  "systembridge": [
+    "setuptools"
+  ],
+  "systemd": [
+    "setuptools"
+  ],
+  "sysv-ipc": [
+    "setuptools"
+  ],
+  "tableaudocumentapi": [
+    "setuptools"
   ],
   "tables": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "tablib": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "tabula-py": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "tabulate": [
+    "setuptools"
+  ],
+  "tabview": [
+    "setuptools"
+  ],
+  "tadasets": [
+    "setuptools"
+  ],
+  "tag-expressions": [
+    "setuptools"
+  ],
+  "tago": [
+    "setuptools"
+  ],
+  "tahoma-api": [
+    "setuptools"
+  ],
+  "tailer": [
+    "setuptools"
   ],
   "tailscale": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "tank-utility": [
+    "setuptools"
+  ],
+  "tappy": [
+    "setuptools"
   ],
   "tarsafe": [
     "poetry"
   ],
+  "tasklib": [
+    "setuptools"
+  ],
+  "taskw": [
+    "setuptools"
+  ],
+  "tatsu": [
+    "setuptools"
+  ],
+  "taxi": [
+    "setuptools"
+  ],
+  "tblib": [
+    "setuptools"
+  ],
+  "tbm-utils": [
+    "setuptools"
+  ],
+  "tcxparser": [
+    "setuptools"
+  ],
+  "tcxreader": [
+    "setuptools"
+  ],
+  "teamcity-messages": [
+    "setuptools"
+  ],
+  "telegram": [
+    "setuptools"
+  ],
+  "telegraph": [
+    "setuptools"
+  ],
+  "telethon": [
+    "setuptools"
+  ],
+  "telethon-session-sqlalchemy": [
+    "setuptools"
+  ],
+  "teletype": [
+    "setuptools"
+  ],
+  "telfhash": [
+    "setuptools"
+  ],
+  "tellduslive": [
+    "setuptools"
+  ],
+  "temescal": [
+    "setuptools"
+  ],
   "tempest": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "tempita": [
+    "setuptools"
+  ],
+  "tempora": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "tenacity": [
-    "pbr"
+    "pbr",
+    "setuptools",
+    "setuptools-scm"
   ],
-  "terminaltables": [
-    "poetry"
+  "tensorboard": [
+    "setuptools"
+  ],
+  "tensorboard-data-server": [
+    "setuptools"
+  ],
+  "tensorboard-plugin-profile": [
+    "setuptools"
+  ],
+  "tensorboard-plugin-wit": [
+    "setuptools"
+  ],
+  "tensorboardx": [
+    "setuptools"
+  ],
+  "tensorflow": [
+    "setuptools"
+  ],
+  "tensorflow-bin": [
+    "setuptools"
+  ],
+  "tensorflow-bin-2": [
+    "setuptools"
+  ],
+  "tensorflow-build": [
+    "setuptools"
+  ],
+  "tensorflow-build-2": [
+    "setuptools"
+  ],
+  "tensorflow-datasets": [
+    "setuptools"
+  ],
+  "tensorflow-estimator": [
+    "setuptools"
+  ],
+  "tensorflow-estimator-2": [
+    "setuptools"
+  ],
+  "tensorflow-metadata": [
+    "setuptools"
+  ],
+  "tensorflow-probability": [
+    "setuptools"
+  ],
+  "tensorflow-tensorboard": [
+    "setuptools"
+  ],
+  "tensorflow-tensorboard-2": [
+    "setuptools"
+  ],
+  "tensorflowwithcuda": [
+    "setuptools"
+  ],
+  "tensorflowwithoutcuda": [
+    "setuptools"
+  ],
+  "tensorly": [
+    "setuptools"
+  ],
+  "tensorrt": [
+    "setuptools"
+  ],
+  "termcolor": [
+    "hatch-vcs",
+    "hatchling",
+    "setuptools"
   ],
   "terminado": [
-    "hatchling"
+    "hatchling",
+    "setuptools"
+  ],
+  "terminaltables": [
+    "poetry",
+    "setuptools"
+  ],
+  "termplotlib": [
+    "setuptools"
+  ],
+  "termstyle": [
+    "setuptools"
   ],
   "tern": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "tesla-powerwall": [
+    "setuptools"
   ],
   "tesla-wall-connector": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "teslajsonpy": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "tess": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "tesserocr": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "test-tube": [
+    "setuptools"
+  ],
+  "testcontainers": [
+    "setuptools"
+  ],
+  "testfixtures": [
+    "setuptools"
+  ],
+  "testing-common-database": [
+    "setuptools"
+  ],
+  "testing-postgresql": [
+    "setuptools"
   ],
   "testpath": [
     "flit",
-    "flit-core"
+    "flit-core",
+    "setuptools"
   ],
   "testrepository": [
-    "pbr"
+    "pbr",
+    "setuptools"
   ],
   "testresources": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "testscenarios": [
+    "setuptools"
   ],
   "testtools": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "text-unidecode": [
+    "setuptools"
+  ],
+  "textacy": [
+    "setuptools"
+  ],
+  "textdistance": [
+    "setuptools"
+  ],
+  "textfsm": [
+    "setuptools"
+  ],
+  "textile": [
+    "setuptools"
+  ],
+  "texttable": [
+    "setuptools"
   ],
   "textual": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "textwrap3": [
+    "setuptools"
+  ],
+  "textx": [
+    "setuptools"
+  ],
+  "tflearn": [
+    "setuptools"
+  ],
+  "tgcrypto": [
+    "setuptools"
+  ],
+  "theano": [
+    "setuptools"
+  ],
+  "theano-pymc": [
+    "setuptools"
+  ],
+  "theanowithcuda": [
+    "setuptools"
+  ],
+  "theanowithoutcuda": [
+    "setuptools"
+  ],
+  "thermobeacon-ble": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "thermopro-ble": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "thespian": [
+    "setuptools"
   ],
   "thinc": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "threadloop": [
+    "setuptools"
+  ],
+  "threadpool": [
+    "setuptools"
   ],
   "threadpoolctl": [
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "threat9-test-bed": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "three-merge": [
+    "setuptools"
+  ],
+  "thrift": [
+    "setuptools"
+  ],
+  "thrift-sasl": [
+    "setuptools"
   ],
   "thriftpy2": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "tidylib": [
+    "setuptools"
+  ],
+  "tifffile": [
+    "setuptools"
+  ],
+  "tika": [
+    "setuptools"
   ],
   "tikzplotlib": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
+  ],
+  "tilequant": [
+    "setuptools"
+  ],
+  "tiler": [
+    "setuptools"
+  ],
+  "tilt-ble": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "time-machine": [
+    "setuptools"
+  ],
+  "timeago": [
+    "setuptools"
+  ],
+  "timecop": [
+    "setuptools"
+  ],
+  "timelib": [
+    "setuptools"
+  ],
+  "timeout-decorator": [
+    "setuptools"
+  ],
+  "timetagger": [
+    "setuptools"
+  ],
+  "timezonefinder": [
+    "poetry-core",
+    "setuptools"
   ],
   "tinycss": [
-    "cython"
+    "cython",
+    "setuptools"
   ],
   "tinycss2": [
-    "flitBuildHook"
+    "flit-core",
+    "flitBuildHook",
+    "setuptools"
   ],
   "tinydb": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "tinyobjloader-py": [
+    "setuptools"
+  ],
+  "tissue": [
+    "setuptools"
+  ],
+  "titlecase": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "tkinter": [
+    "setuptools"
+  ],
+  "tld": [
+    "setuptools"
+  ],
+  "tldextract": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "tls-parser": [
+    "setuptools"
+  ],
+  "tlsh": [
+    "setuptools"
+  ],
+  "tlslite-ng": [
+    "setuptools"
+  ],
+  "tmb": [
+    "setuptools"
+  ],
+  "todoist": [
+    "setuptools"
   ],
   "toggl-cli": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "token-bucket": [
+    "setuptools"
+  ],
+  "tokenize-rt": [
+    "setuptools"
+  ],
+  "tokenizers": [
+    "setuptools"
+  ],
+  "tokenlib": [
+    "setuptools"
+  ],
+  "tololib": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "toml": [
+    "setuptools"
+  ],
+  "toml-adapt": [
+    "poetry-core",
+    "setuptools"
   ],
   "toml-cli": [
     "poetry"
@@ -1697,107 +16410,1698 @@
     "poetry"
   ],
   "tomli": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
   ],
   "tomli-w": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
   ],
   "tomlkit": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "toolz": [
+    "setuptools"
+  ],
+  "toonapi": [
+    "setuptools"
+  ],
+  "toposort": [
+    "setuptools"
+  ],
+  "torch": [
+    "setuptools"
+  ],
+  "torch-bin": [
+    "setuptools"
+  ],
+  "torch-tb-profiler": [
+    "setuptools"
+  ],
+  "torchaudio-bin": [
+    "setuptools"
+  ],
+  "torchgpipe": [
+    "setuptools"
+  ],
+  "torchinfo": [
+    "setuptools"
+  ],
+  "torchmetrics": [
+    "setuptools"
+  ],
+  "torchvision": [
+    "setuptools"
+  ],
+  "torchvision-bin": [
+    "setuptools"
+  ],
+  "torchwithcuda": [
+    "setuptools"
+  ],
+  "torchwithoutcuda": [
+    "setuptools"
+  ],
+  "tornado": [
+    "setuptools"
+  ],
+  "torpy": [
+    "setuptools"
+  ],
+  "torrequest": [
+    "setuptools"
   ],
   "tortoise-orm": [
     "poetry-core"
   ],
+  "total-connect-client": [
+    "setuptools"
+  ],
+  "towncrier": [
+    "setuptools"
+  ],
+  "tox": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "tpm2-pytss": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "tqdm": [
+    "setuptools",
+    "setuptools-scm"
+  ],
   "traceback2": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "tracing": [
+    "setuptools"
+  ],
+  "trackpy": [
+    "setuptools"
   ],
   "traitlets": [
-    { "buildSystem": "flit-core", "until": "5.2.1" },
-    { "buildSystem": "hatchling", "from": "5.2.1" }
+    {
+      "buildSystem": "flit-core",
+      "until": "5.2.1"
+    },
+    {
+      "buildSystem": "hatchling",
+      "from": "5.2.1"
+    },
+    "setuptools"
+  ],
+  "traits": [
+    "setuptools"
+  ],
+  "traitsui": [
+    "setuptools"
+  ],
+  "traittypes": [
+    "setuptools"
+  ],
+  "transaction": [
+    "setuptools"
+  ],
+  "transformers": [
+    "setuptools"
+  ],
+  "transforms3d": [
+    "setuptools"
+  ],
+  "transitions": [
+    "setuptools"
+  ],
+  "translatepy": [
+    "setuptools"
+  ],
+  "translationstring": [
+    "setuptools"
+  ],
+  "transliterate": [
+    "setuptools"
   ],
   "transmission-rpc": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "transmissionrpc": [
+    "setuptools"
+  ],
+  "trectools": [
+    "setuptools"
+  ],
+  "treelog": [
+    "setuptools"
   ],
   "treeo": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
   ],
   "treex": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "treq": [
+    "setuptools"
+  ],
+  "trezor": [
+    "setuptools"
+  ],
+  "trezor-agent": [
+    "setuptools"
+  ],
+  "trfl": [
+    "setuptools"
+  ],
+  "trimesh": [
+    "setuptools"
+  ],
+  "trio": [
+    "setuptools"
+  ],
+  "trio-asyncio": [
+    "setuptools"
+  ],
+  "trio-websocket": [
+    "setuptools"
+  ],
+  "trueskill": [
+    "setuptools"
+  ],
+  "trustme": [
+    "setuptools"
+  ],
+  "trytond": [
+    "setuptools"
   ],
   "ttls": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "ttp": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "ttp-templates": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "tubes": [
+    "setuptools"
+  ],
+  "tubeup": [
+    "setuptools"
+  ],
+  "tumpa": [
+    "setuptools"
+  ],
+  "tunigo": [
+    "setuptools"
+  ],
+  "turnt": [
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "tuya-iot-py-sdk": [
+    "setuptools"
+  ],
+  "tuyaha": [
+    "setuptools"
+  ],
+  "tweedledum": [
+    "setuptools"
+  ],
+  "tweepy": [
+    "setuptools"
   ],
   "twentemilieu": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "twiggy": [
+    "setuptools"
+  ],
+  "twilio": [
+    "setuptools"
+  ],
+  "twill": [
+    "setuptools"
+  ],
+  "twine": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "twinkly-client": [
+    "setuptools"
+  ],
+  "twisted": [
+    "setuptools"
+  ],
+  "twitch-python": [
+    "setuptools"
+  ],
+  "twitchapi": [
+    "setuptools"
+  ],
+  "twitter": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "twitter-common-collections": [
+    "setuptools"
+  ],
+  "twitter-common-confluence": [
+    "setuptools"
+  ],
+  "twitter-common-dirutil": [
+    "setuptools"
+  ],
+  "twitter-common-lang": [
+    "setuptools"
+  ],
+  "twitter-common-log": [
+    "setuptools"
+  ],
+  "twitter-common-options": [
+    "setuptools"
+  ],
+  "twitterapi": [
+    "setuptools"
+  ],
+  "twofish": [
+    "setuptools"
+  ],
+  "txaio": [
+    "setuptools"
+  ],
+  "txamqp": [
+    "setuptools"
+  ],
+  "txdbus": [
+    "setuptools"
+  ],
+  "txgithub": [
+    "setuptools"
+  ],
+  "txredisapi": [
+    "setuptools"
+  ],
+  "txrequests": [
+    "setuptools"
+  ],
+  "txtorcon": [
+    "setuptools"
+  ],
+  "txzmq": [
+    "setuptools"
+  ],
+  "typecode": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "typecode-libmagic": [
+    "setuptools"
+  ],
+  "typed-ast": [
+    "setuptools"
+  ],
+  "typed-settings": [
+    "setuptools"
+  ],
+  "typeguard": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "typer": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
   ],
-  "typical": [
+  "types-awscrt": [
+    "poetry-core"
+  ],
+  "types-colorama": [
+    "setuptools"
+  ],
+  "types-cryptography": [
+    "setuptools"
+  ],
+  "types-dateutil": [
+    "setuptools"
+  ],
+  "types-decorator": [
+    "setuptools"
+  ],
+  "types-docutils": [
+    "setuptools"
+  ],
+  "types-enum34": [
+    "setuptools"
+  ],
+  "types-freezegun": [
+    "setuptools"
+  ],
+  "types-futures": [
+    "setuptools"
+  ],
+  "types-html5lib": [
+    "setuptools"
+  ],
+  "types-ipaddress": [
+    "setuptools"
+  ],
+  "types-jsonschema": [
+    "setuptools"
+  ],
+  "types-protobuf": [
+    "setuptools"
+  ],
+  "types-pytz": [
+    "setuptools"
+  ],
+  "types-pyyaml": [
+    "setuptools"
+  ],
+  "types-redis": [
+    "setuptools"
+  ],
+  "types-requests": [
+    "setuptools"
+  ],
+  "types-s3transfer": [
     "poetry-core"
   ],
+  "types-setuptools": [
+    "setuptools"
+  ],
+  "types-tabulate": [
+    "setuptools"
+  ],
+  "types-toml": [
+    "setuptools"
+  ],
+  "types-typed-ast": [
+    "setuptools"
+  ],
+  "types-urllib3": [
+    "setuptools"
+  ],
+  "typesentry": [
+    "setuptools"
+  ],
+  "typesystem": [
+    "setuptools"
+  ],
+  "typical": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "typing": [
+    "setuptools"
+  ],
   "typing-extensions": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
+  ],
+  "typing-inspect": [
+    "setuptools"
+  ],
+  "typish": [
+    "setuptools"
+  ],
+  "typogrify": [
+    "setuptools"
+  ],
+  "tzdata": [
+    "setuptools"
+  ],
+  "tzlocal": [
+    "setuptools"
+  ],
+  "u-msgpack-python": [
+    "setuptools"
+  ],
+  "ua-parser": [
+    "setuptools"
+  ],
+  "uamqp": [
+    "setuptools"
+  ],
+  "uarray": [
+    "setuptools"
+  ],
+  "uasiren": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "uc-micro-py": [
+    "setuptools"
+  ],
+  "udatetime": [
+    "setuptools"
+  ],
+  "ueagle": [
+    "setuptools"
+  ],
+  "ueberzug": [
+    "setuptools"
+  ],
+  "ufo2ft": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "ufolib2": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "ufonormalizer": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "ufoprocessor": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "uharfbuzz": [
-    "cython"
+    "cython",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "ujson": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "ukkonen": [
+    "setuptools"
+  ],
+  "ukpostcodeparser": [
+    "setuptools"
+  ],
+  "ukrainealarm": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "ultraheat-api": [
+    "setuptools"
+  ],
+  "umalqurra": [
+    "setuptools"
+  ],
+  "umap-learn": [
+    "setuptools"
+  ],
+  "unasync": [
+    "setuptools"
+  ],
+  "uncertainties": [
+    "setuptools"
+  ],
+  "unicode-slugify": [
+    "setuptools"
+  ],
+  "unicodecsv": [
+    "setuptools"
+  ],
+  "unicodedata2": [
+    "setuptools"
+  ],
+  "unicorn": [
+    "setuptools"
+  ],
+  "unicrypto": [
+    "setuptools"
+  ],
+  "unidecode": [
+    "setuptools"
+  ],
+  "unidic-lite": [
+    "setuptools"
+  ],
+  "unidiff": [
+    "setuptools"
+  ],
+  "unifi": [
+    "setuptools"
+  ],
+  "unifi-discovery": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "unifiled": [
+    "setuptools"
+  ],
+  "unify": [
+    "setuptools"
+  ],
+  "units": [
+    "setuptools"
+  ],
+  "unittest-data-provider": [
+    "setuptools"
+  ],
+  "unittest-xml-reporting": [
+    "setuptools"
+  ],
+  "unittest2": [
+    "setuptools"
+  ],
+  "univers": [
+    "setuptools",
+    "setuptools-scm"
   ],
   "unpaddedbase64": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "unrardll": [
+    "setuptools"
+  ],
+  "untangle": [
+    "setuptools"
+  ],
+  "untokenize": [
+    "setuptools"
+  ],
+  "uonet-request-signer-hebe": [
+    "setuptools"
+  ],
+  "upass": [
+    "setuptools"
+  ],
+  "upb-lib": [
+    "setuptools"
+  ],
+  "upcloud-api": [
+    "setuptools"
+  ],
+  "update-checker": [
+    "setuptools"
+  ],
+  "update-copyright": [
+    "setuptools"
+  ],
+  "update-dotdee": [
+    "setuptools"
+  ],
+  "upnpy": [
+    "setuptools"
+  ],
+  "uproot": [
+    "setuptools"
+  ],
+  "uproot3": [
+    "setuptools"
+  ],
+  "uproot3-methods": [
+    "setuptools"
+  ],
+  "uptime": [
+    "setuptools"
+  ],
+  "uptime-kuma-monitor": [
+    "setuptools"
+  ],
+  "uranium": [
+    "setuptools"
+  ],
+  "uri-template": [
+    "setuptools"
+  ],
+  "uritemplate": [
+    "setuptools"
+  ],
+  "uritools": [
+    "setuptools"
   ],
   "url-normalize": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "urlextract": [
+    "setuptools"
+  ],
+  "urlgrabber": [
+    "setuptools"
+  ],
+  "urllib3": [
+    "setuptools"
+  ],
+  "urlpy": [
+    "setuptools"
+  ],
+  "urwid": [
+    "setuptools"
+  ],
+  "urwid-readline": [
+    "setuptools"
+  ],
+  "urwidtrees": [
+    "setuptools"
+  ],
+  "us": [
+    "setuptools"
+  ],
+  "usbrelay-py": [
+    "setuptools"
+  ],
+  "usbtmc": [
+    "setuptools"
+  ],
+  "user-agents": [
+    "setuptools"
+  ],
+  "userpath": [
+    "setuptools"
+  ],
+  "ush": [
+    "setuptools"
+  ],
+  "utils": [
+    "setuptools"
+  ],
+  "uuid": [
+    "setuptools"
+  ],
+  "uvcclient": [
+    "setuptools"
+  ],
+  "uvicorn": [
+    "hatchling",
+    "setuptools"
+  ],
+  "uvloop": [
+    "cython",
+    "setuptools"
+  ],
+  "vaa": [
+    "flit-core",
+    "setuptools"
+  ],
+  "validate-email": [
+    "setuptools"
+  ],
+  "validators": [
+    "setuptools"
+  ],
+  "validobj": [
+    "flit",
+    "setuptools"
+  ],
+  "validphys2": [
+    "setuptools"
+  ],
+  "vallox-websocket-api": [
+    "setuptools"
+  ],
+  "vapoursynth": [
+    "cython",
+    "setuptools"
+  ],
+  "variants": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "varint": [
+    "setuptools"
+  ],
+  "vcrpy": [
+    "setuptools"
+  ],
+  "vcver": [
+    "setuptools"
+  ],
+  "vcversioner": [
+    "setuptools"
+  ],
+  "vdf": [
+    "setuptools"
+  ],
+  "vdirsyncer": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "vector": [
+    "hatch-vcs",
+    "hatchling"
+  ],
+  "vega": [
+    "setuptools"
+  ],
+  "vega-datasets": [
+    "setuptools"
   ],
   "vehicle": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "velbus-aio": [
+    "setuptools"
+  ],
+  "venstarcolortouch": [
+    "setuptools"
+  ],
+  "venusian": [
+    "setuptools"
+  ],
+  "verboselogs": [
+    "setuptools"
+  ],
+  "versioneer": [
+    "setuptools"
+  ],
+  "versionfinder": [
+    "setuptools"
+  ],
+  "versioningit": [
+    "setuptools"
+  ],
+  "versiontag": [
+    "setuptools"
+  ],
+  "versiontools": [
+    "setuptools"
+  ],
+  "verspec": [
+    "setuptools"
+  ],
+  "vertica-python": [
+    "setuptools"
+  ],
+  "veryprettytable": [
+    "setuptools"
+  ],
+  "videocr": [
+    "setuptools"
+  ],
+  "vidstab": [
+    "setuptools"
+  ],
+  "viewstate": [
+    "setuptools"
+  ],
+  "vilfo-api-client": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "vincenty": [
+    "setuptools"
+  ],
+  "vine": [
+    "setuptools"
+  ],
+  "virtkey": [
+    "setuptools"
+  ],
+  "virtual-display": [
+    "setuptools"
   ],
   "virtualenv": [
-    "cython"
+    "cython",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "virtualenv-clone": [
+    "setuptools"
   ],
   "virtualenvwrapper": [
-    "pbr"
+    "pbr",
+    "setuptools"
+  ],
+  "visitor": [
+    "setuptools"
   ],
   "vispy": [
-    "cython"
+    "cython",
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "viv-utils": [
+    "setuptools"
+  ],
+  "vivisect": [
+    "setuptools"
+  ],
+  "vmprof": [
+    "setuptools"
+  ],
+  "vncdo": [
+    "setuptools"
+  ],
+  "vobject": [
+    "setuptools"
+  ],
+  "volkszaehler": [
+    "setuptools"
+  ],
+  "voluptuous": [
+    "setuptools"
+  ],
+  "voluptuous-serialize": [
+    "setuptools"
+  ],
+  "volvooncall": [
+    "setuptools"
+  ],
+  "vowpalwabbit": [
+    "setuptools"
+  ],
+  "vpk": [
+    "setuptools"
+  ],
+  "vqgan-jax": [
+    "setuptools"
+  ],
+  "vsts": [
+    "setuptools"
+  ],
+  "vsts-cd-manager": [
+    "setuptools"
+  ],
+  "vsure": [
+    "setuptools"
+  ],
+  "vt-py": [
+    "setuptools"
+  ],
+  "vulcan-api": [
+    "setuptools"
+  ],
+  "vultr": [
+    "setuptools"
+  ],
+  "vulture": [
+    "setuptools"
+  ],
+  "vxi11": [
+    "setuptools"
+  ],
+  "vyper": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "w3lib": [
+    "setuptools"
+  ],
+  "wadllib": [
+    "setuptools"
+  ],
+  "waitress": [
+    "setuptools"
+  ],
+  "waitress-django": [
+    "setuptools"
   ],
   "wakeonlan": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "wallbox": [
+    "setuptools"
+  ],
+  "wand": [
+    "setuptools"
+  ],
+  "wandb": [
+    "setuptools"
+  ],
+  "waqiasync": [
+    "setuptools"
+  ],
+  "warcio": [
+    "setuptools"
+  ],
+  "warlock": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "warrant": [
+    "setuptools"
+  ],
+  "warrant-lite": [
+    "setuptools"
+  ],
+  "wasabi": [
+    "setuptools"
+  ],
+  "wasmer": [
+    "setuptools"
+  ],
+  "wasmer-compiler-cranelift": [
+    "setuptools"
+  ],
+  "wasmer-compiler-llvm": [
+    "setuptools"
+  ],
+  "wasmer-compiler-singlepass": [
+    "setuptools"
+  ],
+  "wasmerpackages-wasmer": [
+    "setuptools"
+  ],
+  "wasmerpackages-wasmer-compiler-cranelift": [
+    "setuptools"
+  ],
+  "wasmerpackages-wasmer-compiler-llvm": [
+    "setuptools"
+  ],
+  "wasmerpackages-wasmer-compiler-singlepass": [
+    "setuptools"
+  ],
+  "watchdog": [
+    "setuptools"
+  ],
+  "watchfiles": [
+    "setuptools"
+  ],
+  "watchgod": [
+    "setuptools"
+  ],
+  "waterfurnace": [
+    "setuptools"
+  ],
+  "watermark": [
+    "setuptools"
+  ],
+  "wavedrom": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "wavefile": [
+    "setuptools"
+  ],
+  "wavinsentio": [
+    "setuptools"
+  ],
+  "wazeroutecalculator": [
+    "setuptools"
+  ],
+  "wcag-contrast-ratio": [
+    "setuptools"
   ],
   "wcmatch": [
-    "hatchling"
+    "hatchling",
+    "setuptools"
+  ],
+  "wcwidth": [
+    "setuptools"
   ],
   "weasyprint": [
-    "flit-core"
+    "flit-core",
+    "setuptools"
+  ],
+  "web": [
+    "setuptools"
+  ],
+  "web-cache": [
+    "setuptools"
+  ],
+  "web3": [
+    "setuptools"
+  ],
+  "webargs": [
+    "setuptools"
+  ],
+  "webassets": [
+    "setuptools"
+  ],
+  "webauthn": [
+    "setuptools"
+  ],
+  "webcolors": [
+    "setuptools"
+  ],
+  "webdav4": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "webdavclient3": [
+    "setuptools"
+  ],
+  "webencodings": [
+    "setuptools"
+  ],
+  "webexteamssdk": [
+    "setuptools"
+  ],
+  "webhelpers": [
+    "setuptools"
+  ],
+  "webob": [
+    "setuptools"
+  ],
+  "weboob": [
+    "setuptools"
+  ],
+  "webrtcvad": [
+    "setuptools"
+  ],
+  "websocket-client": [
+    "setuptools"
+  ],
+  "websockets": [
+    "setuptools"
+  ],
+  "websockify": [
+    "setuptools"
+  ],
+  "webssh": [
+    "setuptools"
+  ],
+  "webtest": [
+    "setuptools"
+  ],
+  "webtest-aiohttp": [
+    "setuptools"
+  ],
+  "webthing": [
+    "setuptools"
+  ],
+  "weconnect": [
+    "setuptools"
+  ],
+  "weconnect-mqtt": [
+    "setuptools"
+  ],
+  "werkzeug": [
+    "setuptools"
+  ],
+  "west": [
+    "setuptools"
+  ],
+  "wfuzz": [
+    "setuptools"
+  ],
+  "wget": [
+    "setuptools"
+  ],
+  "whatthepatch": [
+    "setuptools"
+  ],
+  "wheel": [
+    "setuptools"
+  ],
+  "wheel-filename": [
+    "setuptools"
+  ],
+  "wheel-inspect": [
+    "setuptools"
+  ],
+  "whichcraft": [
+    "setuptools"
+  ],
+  "whirlpool-sixth-sense": [
+    "setuptools"
+  ],
+  "whisper": [
+    "setuptools"
+  ],
+  "whispers": [
+    "setuptools"
+  ],
+  "whitenoise": [
+    "setuptools"
+  ],
+  "whodap": [
+    "setuptools"
+  ],
+  "whois": [
+    "setuptools"
+  ],
+  "whoosh": [
+    "setuptools"
+  ],
+  "widgetsnbextension": [
+    "jupyter-packaging",
+    "setuptools"
+  ],
+  "widlparser": [
+    "setuptools"
+  ],
+  "wiffi": [
+    "setuptools"
+  ],
+  "wifi": [
+    "setuptools"
+  ],
+  "willow": [
+    "setuptools"
+  ],
+  "winacl": [
+    "setuptools"
+  ],
+  "winsspi": [
+    "setuptools"
+  ],
+  "wktutils": [
+    "setuptools"
   ],
   "wled": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "woob": [
+    "setuptools"
+  ],
+  "woodblock": [
+    "setuptools"
   ],
   "word2vec": [
-    "cython"
+    "cython",
+    "setuptools",
+    "setuptools-scm"
   ],
   "wordcloud": [
-    "cython"
+    "cython",
+    "setuptools"
+  ],
+  "wordfreq": [
+    "setuptools"
+  ],
+  "wrapio": [
+    "setuptools"
+  ],
+  "wrapt": [
+    "setuptools"
+  ],
+  "wrf-python": [
+    "setuptools"
+  ],
+  "ws4py": [
+    "setuptools"
+  ],
+  "wsdiscovery": [
+    "setuptools"
+  ],
+  "wsgi-intercept": [
+    "setuptools"
+  ],
+  "wsgidav": [
+    "setuptools"
+  ],
+  "wsgiprox": [
+    "setuptools"
+  ],
+  "wsgiproxy2": [
+    "setuptools"
+  ],
+  "wsgitools": [
+    "setuptools"
+  ],
+  "wsnsimpy": [
+    "setuptools"
+  ],
+  "wsproto": [
+    "setuptools"
+  ],
+  "wtf-peewee": [
+    "setuptools"
+  ],
+  "wtforms": [
+    "setuptools"
+  ],
+  "wurlitzer": [
+    "setuptools"
+  ],
+  "wxpython-4-0": [
+    "setuptools"
+  ],
+  "wxpython-4-1": [
+    "setuptools"
+  ],
+  "x11-hash": [
+    "setuptools"
+  ],
+  "x256": [
+    "setuptools"
+  ],
+  "xapian": [
+    "setuptools"
+  ],
+  "xapp": [
+    "setuptools"
+  ],
+  "xarray": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "xarray-einstats": [
+    "flit-core",
+    "setuptools"
+  ],
+  "xattr": [
+    "setuptools"
+  ],
+  "xbox-webapi": [
+    "setuptools"
+  ],
+  "xboxapi": [
+    "setuptools"
+  ],
+  "xcffib": [
+    "setuptools"
   ],
   "xdg": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "xdis": [
+    "setuptools"
+  ],
+  "xdot": [
+    "setuptools"
+  ],
+  "xhtml2pdf": [
+    "setuptools"
+  ],
+  "xiaomi-ble": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "xkbcommon": [
+    "setuptools"
+  ],
+  "xkcdpass": [
+    "setuptools"
+  ],
+  "xknx": [
+    "setuptools"
+  ],
+  "xlib": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "xlrd": [
+    "setuptools"
+  ],
+  "xlsx2csv": [
+    "setuptools"
+  ],
+  "xlsxwriter": [
+    "setuptools"
+  ],
+  "xlwt": [
+    "setuptools"
+  ],
+  "xmind": [
+    "setuptools"
+  ],
+  "xml-marshaller": [
+    "setuptools"
+  ],
+  "xml2rfc": [
+    "setuptools"
+  ],
+  "xmldiff": [
+    "setuptools"
+  ],
+  "xmljson": [
+    "setuptools"
+  ],
+  "xmlschema": [
+    "setuptools"
+  ],
+  "xmlsec": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "xmltodict": [
+    "setuptools"
+  ],
+  "xmodem": [
+    "setuptools"
+  ],
+  "xnd": [
+    "setuptools"
   ],
   "xpath-expressions": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "xpybutil": [
+    "setuptools"
+  ],
+  "xsdata": [
+    "setuptools"
+  ],
+  "xstatic": [
+    "setuptools"
+  ],
+  "xstatic-bootbox": [
+    "setuptools"
+  ],
+  "xstatic-bootstrap": [
+    "setuptools"
+  ],
+  "xstatic-jquery": [
+    "setuptools"
+  ],
+  "xstatic-jquery-file-upload": [
+    "setuptools"
+  ],
+  "xstatic-jquery-ui": [
+    "setuptools"
+  ],
+  "xstatic-pygments": [
+    "setuptools"
+  ],
+  "xtensor-python": [
+    "setuptools"
+  ],
+  "xvfbwrapper": [
+    "setuptools"
+  ],
+  "xxh": [
+    "setuptools"
+  ],
+  "xxhash": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "yabadaba": [
+    "setuptools"
+  ],
+  "yacs": [
+    "setuptools"
+  ],
+  "yahooweather": [
+    "setuptools"
+  ],
+  "yalesmartalarmclient": [
+    "setuptools"
+  ],
+  "yalexs": [
+    "setuptools"
+  ],
+  "yalexs-ble": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "yamale": [
+    "setuptools"
+  ],
+  "yamlfix": [
+    "setuptools"
+  ],
+  "yamllint": [
+    "setuptools"
+  ],
+  "yamlloader": [
+    "setuptools"
+  ],
+  "yamlordereddictloader": [
+    "setuptools"
+  ],
+  "yanc": [
+    "setuptools"
+  ],
+  "yangson": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "yapf": [
+    "setuptools"
+  ],
+  "yappi": [
+    "setuptools"
+  ],
+  "yapsy": [
+    "setuptools"
+  ],
+  "yara-python": [
+    "setuptools"
+  ],
+  "yarg": [
+    "setuptools"
+  ],
+  "yarl": [
+    "setuptools"
   ],
   "yaspin": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "yaswfp": [
+    "setuptools"
+  ],
+  "yattag": [
+    "setuptools"
+  ],
+  "ydiff": [
+    "setuptools"
+  ],
+  "yeelight": [
+    "setuptools"
+  ],
+  "yfinance": [
+    "setuptools"
   ],
   "yoda": [
     "cython"
   ],
+  "yolink-api": [
+    "setuptools"
+  ],
+  "youless-api": [
+    "setuptools"
+  ],
+  "youtube-dl": [
+    "setuptools"
+  ],
+  "youtube-dl-light": [
+    "setuptools"
+  ],
+  "youtube-search": [
+    "setuptools"
+  ],
+  "youtube-search-python": [
+    "setuptools"
+  ],
+  "youtube-transcript-api": [
+    "setuptools"
+  ],
+  "yowsup": [
+    "setuptools"
+  ],
+  "yoyo-migrations": [
+    "setuptools"
+  ],
+  "yq": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "yt-dlp": [
+    "setuptools"
+  ],
+  "yt-dlp-light": [
+    "setuptools"
+  ],
   "yte": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "ytmusicapi": [
+    "setuptools"
+  ],
+  "yubico-client": [
+    "setuptools"
+  ],
+  "yutto": [
+    "poetry-core",
+    "setuptools"
+  ],
+  "z3": [
+    "setuptools"
+  ],
+  "z3c-checkversions": [
+    "setuptools"
+  ],
+  "zadnegoale": [
+    "setuptools"
+  ],
+  "zarr": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "zc-buildout": [
+    "setuptools"
+  ],
+  "zc-buildout221": [
+    "setuptools"
+  ],
+  "zc-lockfile": [
+    "setuptools"
+  ],
+  "zconfig": [
+    "setuptools"
+  ],
+  "zcs": [
+    "setuptools"
+  ],
+  "zdaemon": [
+    "setuptools"
+  ],
+  "zeep": [
+    "setuptools"
+  ],
+  "zeroc-ice": [
+    "setuptools"
+  ],
+  "zeroconf": [
+    "setuptools"
+  ],
+  "zerorpc": [
+    "setuptools"
   ],
   "zeversolarlocal": [
     "flit-core",
-    "flitBuildHook"
+    "flitBuildHook",
+    "setuptools"
+  ],
+  "zfec": [
+    "setuptools"
+  ],
+  "zha-quirks": [
+    "setuptools"
+  ],
+  "zict": [
+    "setuptools"
+  ],
+  "zigpy": [
+    "setuptools"
+  ],
+  "zigpy-cc": [
+    "setuptools"
+  ],
+  "zigpy-deconz": [
+    "setuptools"
+  ],
+  "zigpy-xbee": [
+    "setuptools"
+  ],
+  "zigpy-zigate": [
+    "setuptools"
+  ],
+  "zigpy-znp": [
+    "setuptools"
+  ],
+  "zimports": [
+    "setuptools"
+  ],
+  "zipp": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "zipstream": [
+    "setuptools"
+  ],
+  "zipstream-new": [
+    "setuptools"
+  ],
+  "zipstream-ng": [
+    "setuptools"
+  ],
+  "zm-py": [
+    "setuptools"
+  ],
+  "zodb": [
+    "setuptools"
+  ],
+  "zodbpickle": [
+    "setuptools"
+  ],
+  "zope-broken": [
+    "setuptools"
+  ],
+  "zope-cachedescriptors": [
+    "setuptools"
+  ],
+  "zope-component": [
+    "setuptools"
+  ],
+  "zope-configuration": [
+    "setuptools"
+  ],
+  "zope-contenttype": [
+    "setuptools"
+  ],
+  "zope-copy": [
+    "setuptools"
+  ],
+  "zope-deferredimport": [
+    "setuptools"
+  ],
+  "zope-deprecation": [
+    "setuptools"
+  ],
+  "zope-dottedname": [
+    "setuptools"
+  ],
+  "zope-event": [
+    "setuptools"
+  ],
+  "zope-exceptions": [
+    "setuptools"
+  ],
+  "zope-filerepresentation": [
+    "setuptools"
+  ],
+  "zope-hookable": [
+    "setuptools"
+  ],
+  "zope-i18nmessageid": [
+    "setuptools"
+  ],
+  "zope-interface": [
+    "setuptools"
+  ],
+  "zope-lifecycleevent": [
+    "setuptools"
+  ],
+  "zope-location": [
+    "setuptools"
+  ],
+  "zope-proxy": [
+    "setuptools"
+  ],
+  "zope-schema": [
+    "setuptools"
+  ],
+  "zope-size": [
+    "setuptools"
+  ],
+  "zope-testbrowser": [
+    "setuptools"
+  ],
+  "zope-testing": [
+    "setuptools"
+  ],
+  "zope-testrunner": [
+    "setuptools"
+  ],
+  "zopfli": [
+    "setuptools",
+    "setuptools-scm"
+  ],
+  "zstandard": [
+    "setuptools"
+  ],
+  "zstd": [
+    "setuptools"
+  ],
+  "zulip": [
+    "setuptools"
+  ],
+  "zwave-js-server-python": [
+    "setuptools"
   ],
   "zwave-me-ws": [
-    "poetry-core"
+    "poetry-core",
+    "setuptools"
+  ],
+  "zxcvbn": [
+    "setuptools"
   ]
 }
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/overrides/default.nix b/pkgs/development/tools/poetry2nix/poetry2nix/overrides/default.nix
index 7efb61e98a9f2..a3204dd014773 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/overrides/default.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/overrides/default.nix
@@ -1,6 +1,7 @@
 { pkgs ? import <nixpkgs> { }
 , lib ? pkgs.lib
 , stdenv ? pkgs.stdenv
+, poetryLib
 }:
 
 let
@@ -37,6 +38,8 @@ let
     (
       # Flit only works on Python3
       if (attr == "flit-core" || attr == "flit" || attr == "hatchling") && !self.isPy3k then drv
+      else if drv == null then null
+      else if drv ? overridePythonAttrs == false then drv
       else
         drv.overridePythonAttrs (
           old:
@@ -56,6 +59,8 @@ let
 
 in
 lib.composeManyExtensions [
+  # normalize all the names
+  (self: super: poetryLib.normalizePackageSet super)
 
   # NixOps
   (self: super:
@@ -80,22 +85,11 @@ lib.composeManyExtensions [
         systems)
       buildSystems)
 
-  # Build systems with conditionals
-  (self: super: {
-
-    platformdirs =
-      if lib.versionAtLeast super.platformdirs.version "2.5.2"
-      then addBuildSystem { inherit self; drv = super.platformdirs; attr = "hatchling"; extraAttrs = [ "hatch-vcs" ]; }
-      else super.platformdirs;
-
-  })
-
   # Build fixes
   (self: super:
     let
       inherit (self.python) stdenv;
       inherit (pkgs.buildPackages) pkg-config;
-      inherit (pkgs) buildPackages;
       pyBuildPackages = self.python.pythonForBuild.pkgs;
 
       selectQt5 = version:
@@ -108,7 +102,7 @@ lib.composeManyExtensions [
 
     {
       automat = super.automat.overridePythonAttrs (
-        old: rec {
+        old: {
           propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ self.m2r ];
         }
       );
@@ -136,9 +130,21 @@ lib.composeManyExtensions [
             self.dopy
             self.ncclient
           ];
-        } // lib.optionalAttrs (lib.versionOlder old.version "5.0") {
-          prePatch = pkgs.python.pkgs.ansible.prePatch or "";
-          postInstall = pkgs.python.pkgs.ansible.postInstall or "";
+        }
+      );
+
+      ansible-base = super.ansible-base.overridePythonAttrs (
+        old:
+        {
+          prePatch = ''sed -i "s/\[python, /[/" lib/ansible/executor/task_executor.py'';
+          postInstall = ''
+            for m in docs/man/man1/*; do
+                install -vD $m -t $out/share/man/man1
+            done
+          '';
+        }
+        // lib.optionalAttrs (lib.versionOlder old.version "2.4") {
+          prePatch = ''sed -i "s,/usr/,$out," lib/ansible/constants.py'';
         }
       );
 
@@ -152,7 +158,7 @@ lib.composeManyExtensions [
       );
 
       argcomplete = super.argcomplete.overridePythonAttrs (
-        old: rec {
+        old: {
           buildInputs = (old.buildInputs or [ ]) ++ [ self.importlib-metadata ];
         }
       );
@@ -164,7 +170,7 @@ lib.composeManyExtensions [
       );
 
       astroid = super.astroid.overridePythonAttrs (
-        old: rec {
+        old: {
           buildInputs = (old.buildInputs or [ ]) ++ [ self.pytest-runner ];
         }
       );
@@ -193,13 +199,36 @@ lib.composeManyExtensions [
           dontUseCmakeConfigure = true;
         }
       );
-
-      bcrypt = super.bcrypt.overridePythonAttrs (
-        old: {
-          buildInputs = (old.buildInputs or [ ]) ++ [ pkgs.libffi ];
-        }
-      );
-
+      bcrypt =
+        let
+          getCargoHash = version: {
+            "4.0.0" = "sha256-HvfRLyUhlXVuvxWrtSDKx3rMKJbjvuiMcDY6g+pYFS0=";
+          }.${version} or (
+            lib.warn "Unknown bcrypt version: '${version}'. Please update getCargoHash." lib.fakeHash
+          );
+        in
+        super.bcrypt.overridePythonAttrs (
+          old: {
+            buildInputs = (old.buildInputs or [ ])
+              ++ [ pkgs.libffi ]
+              ++ lib.optionals (lib.versionAtLeast old.version "4" && stdenv.isDarwin)
+              [ pkgs.darwin.apple_sdk.frameworks.Security pkgs.libiconv ];
+            nativeBuildInputs = with pkgs;
+              (old.nativeBuildInputs or [ ])
+                ++ lib.optionals (lib.versionAtLeast old.version "4")
+                (with pkgs.rustPlatform; [ rust.rustc rust.cargo cargoSetupHook self.setuptools-rust ]);
+          } // lib.optionalAttrs (lib.versionAtLeast old.version "4") {
+            cargoDeps =
+              pkgs.rustPlatform.fetchCargoTarball
+                {
+                  src = old.src;
+                  sourceRoot = "${old.pname}-${old.version}/src/_bcrypt";
+                  name = "${old.pname}-${old.version}";
+                  sha256 = getCargoHash old.version;
+                };
+            cargoRoot = "src/_bcrypt";
+          }
+        );
       bjoern = super.bjoern.overridePythonAttrs (
         old: {
           buildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.libev ];
@@ -251,6 +280,10 @@ lib.composeManyExtensions [
         propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ self.setuptools ];
       });
 
+      cerberus = super.cerberus.overridePythonAttrs (old: {
+        propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ self.setuptools ];
+      });
+
       cssselect2 = super.cssselect2.overridePythonAttrs (
         old: {
           buildInputs = (old.buildInputs or [ ]) ++ [ self.pytest-runner ];
@@ -276,6 +309,12 @@ lib.composeManyExtensions [
           )
         );
 
+      contourpy = super.contourpy.overridePythonAttrs (
+        old: {
+          buildInputs = (old.buildInputs or [ ]) ++ [ self.pybind11 ];
+        }
+      );
+
       cloudflare = super.cloudflare.overridePythonAttrs (
         old: {
           postPatch = ''
@@ -317,6 +356,10 @@ lib.composeManyExtensions [
         }
       );
 
+      copier = super.copier.overrideAttrs (old: {
+        propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ pkgs.git ];
+      });
+
       cryptography =
         let
           getCargoHash = version: {
@@ -326,12 +369,14 @@ lib.composeManyExtensions [
             "36.0.2" = "1a0ni1a3dbv2dvh6gx2i54z8v5j9m6asqg97kkv7gqb1ivihsbp8";
             "37.0.2" = "sha256-qvrxvneoBXjP96AnUPyrtfmCnZo+IriHR5HbtWQ5Gk8=";
             "37.0.4" = "sha256-f8r6QclTwkgK20CNe9i65ZOqvSUeDc4Emv6BFBhh1hI";
+            "38.0.1" = "sha256-o8l13fnfEUvUdDasq3LxSPArozRHKVsZfQg9DNR6M6Q=";
           }.${version} or (
             lib.warn "Unknown cryptography version: '${version}'. Please update getCargoHash." lib.fakeHash
           );
           sha256 = getCargoHash super.cryptography.version;
+          isWheel = lib.hasSuffix ".whl" super.cryptography.src;
           scrypto =
-            if lib.versionAtLeast super.cryptography.version "35" && sha256 == null then
+            if isWheel then
               (
                 super.cryptography.override { preferWheel = true; }
               ) else super.cryptography;
@@ -342,14 +387,15 @@ lib.composeManyExtensions [
               nativeBuildInputs = (old.nativeBuildInputs or [ ])
                 ++ lib.optional (lib.versionAtLeast old.version "3.4") [ self.setuptools-rust ]
                 ++ lib.optional (!self.isPyPy) pyBuildPackages.cffi
-                ++ lib.optional (lib.versionAtLeast old.version "3.5")
+                ++ lib.optional (lib.versionAtLeast old.version "3.5" && !isWheel)
                 (with pkgs.rustPlatform; [ cargoSetupHook rust.cargo rust.rustc ]);
-              buildInputs = (old.buildInputs or [ ]) ++ [ pkgs.openssl ]
+              buildInputs = (old.buildInputs or [ ])
+                ++ [ (if lib.versionAtLeast old.version "37" then pkgs.openssl_3 else pkgs.openssl_1_1) ]
                 ++ lib.optionals stdenv.isDarwin [ pkgs.darwin.apple_sdk.frameworks.Security pkgs.libiconv ];
               propagatedBuildInputs = old.propagatedBuildInputs or [ ] ++ [ self.cffi ];
             } // lib.optionalAttrs (lib.versionAtLeast old.version "3.4" && lib.versionOlder old.version "3.5") {
               CRYPTOGRAPHY_DONT_BUILD_RUST = "1";
-            } // lib.optionalAttrs (lib.versionAtLeast old.version "35" && sha256 != null) rec {
+            } // lib.optionalAttrs (lib.versionAtLeast old.version "3.5" && !isWheel) rec {
               cargoDeps =
                 pkgs.rustPlatform.fetchCargoTarball {
                   src = old.src;
@@ -574,9 +620,9 @@ lib.composeManyExtensions [
 
       fiona = super.fiona.overridePythonAttrs (
         old: {
-          buildInputs = (old.buildInputs or [ ]) ++ [ pkgs.gdal_2 ];
+          buildInputs = (old.buildInputs or [ ]) ++ [ pkgs.gdal ];
           nativeBuildInputs = [
-            pkgs.gdal_2 # for gdal-config
+            pkgs.gdal # for gdal-config
           ];
         }
       );
@@ -624,6 +670,11 @@ lib.composeManyExtensions [
         outputs = [ "out" "dev" ];
       });
 
+      gunicorn = super.gunicorn.overridePythonAttrs (old: {
+        # actually needs setuptools as a runtime dependency
+        propagatedBuildInputs = (old.buildInputs or [ ]) ++ [ self.setuptools ];
+      });
+
       h3 = super.h3.overridePythonAttrs (
         old: {
           preBuild = (old.preBuild or "") + ''
@@ -775,6 +826,12 @@ lib.composeManyExtensions [
         }
       );
 
+      ipython = super.ipython.overridePythonAttrs (
+        old: {
+          propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ self.setuptools ];
+        }
+      );
+
       isort = super.isort.overridePythonAttrs (
         old: {
           propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ self.setuptools ];
@@ -834,8 +891,17 @@ lib.composeManyExtensions [
         buildInputs = (old.buildInputs or [ ]) ++ [ pkgs.yajl ];
       });
 
+      jsonschema =
+        if lib.versionAtLeast super.jsonschema.version "4.0.0"
+        then
+          super.jsonschema.overridePythonAttrs
+            (old: {
+              propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ self.importlib-resources ];
+            })
+        else super.jsonschema;
+
       jupyter = super.jupyter.overridePythonAttrs (
-        old: rec {
+        old: {
           # jupyter is a meta-package. Everything relevant comes from the
           # dependencies. It does however have a jupyter.py file that conflicts
           # with jupyter-core so this meta solves this conflict.
@@ -844,11 +910,11 @@ lib.composeManyExtensions [
       );
 
       jupyter-packaging = super.jupyter-packaging.overridePythonAttrs (old: {
-        propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ self.wheel ];
+        propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ self.setuptools self.wheel ];
       });
 
       jupyterlab-widgets = super.jupyterlab-widgets.overridePythonAttrs (
-        old: rec {
+        old: {
           buildInputs = (old.buildInputs or [ ]) ++ [ self.jupyter-packaging ];
         }
       );
@@ -1019,6 +1085,9 @@ lib.composeManyExtensions [
             self.setuptools-scm-git-archive
           ];
 
+          # Clang doesn't understand -fno-strict-overflow, and matplotlib builds with -Werror
+          hardeningDisable = if stdenv.isDarwin then [ "strictoverflow" ] else [ ];
+
           passthru = old.passthru or { } // passthru;
 
           MPLSETUPCFG = pkgs.writeText "mplsetup.cfg" (lib.generators.toINI { } passthru.config);
@@ -1089,11 +1158,11 @@ lib.composeManyExtensions [
                   excludes = [ "pyproject.toml" ];
                 })
               ];
-              buildInputs = (old.buildInputs or [ ]) ++ [ self.setuptools-scm-git-archive ];
+              buildInputs = (old.buildInputs or [ ]) ++ [ self.setuptools self.setuptools-scm self.setuptools-scm-git-archive ];
             }
           )) else
           super.molecule.overridePythonAttrs (old: {
-            buildInputs = (old.buildInputs or [ ]) ++ [ self.setuptools-scm-git-archive ];
+            buildInputs = (old.buildInputs or [ ]) ++ [ self.setuptools self.setuptools-scm self.setuptools-scm-git-archive ];
           });
 
       mpi4py = super.mpi4py.overridePythonAttrs (
@@ -1153,7 +1222,7 @@ lib.composeManyExtensions [
               url = "https://github.com/python/mypy/commit/e7869f05751561958b946b562093397027f6d5fa.patch";
               sha256 = "sha256-waIZ+m3tfvYE4HJ8kL6rN/C4fMjvLEe9UoPbt9mHWIM=";
             })
-          ] ++ lib.optionals (lib.strings.versionAtLeast old.version "0.960") [
+          ] ++ lib.optionals ((lib.strings.versionAtLeast old.version "0.960") && (lib.strings.versionOlder old.version "0.971")) [
             (pkgs.fetchpatch {
               url = "https://github.com/python/mypy/commit/2004ae023b9d3628d9f09886cbbc20868aee8554.patch";
               sha256 = "sha256-y+tXvgyiECO5+66YLvaje8Bz5iPvfWNIBJcsnZ2nOdI=";
@@ -1211,6 +1280,8 @@ lib.composeManyExtensions [
           };
         in
         {
+          # fails to build with format=pyproject and setuptools >= 65
+          format = if (old.format == "poetry2nix") then "setuptools" else old.format;
           nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.gfortran ];
           buildInputs = (old.buildInputs or [ ]) ++ [ blas ];
           enableParallelBuilding = true;
@@ -1224,21 +1295,31 @@ lib.composeManyExtensions [
         }
       );
 
+      omegaconf = super.omegaconf.overridePythonAttrs (
+        old: {
+          nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.jdk ];
+        }
+      );
+
       open3d = super.open3d.overridePythonAttrs (old: {
-        buildInputs = (old.buildInputs or [ ]) ++ (with pkgs; [
-          udev
-        ]);
+        buildInputs = (old.buildInputs or [ ]) ++ [
+          pkgs.udev
+          pkgs.libusb1
+        ];
         # TODO(Sem Mulder): Add overridable flags for CUDA/PyTorch/Tensorflow support.
         autoPatchelfIgnoreMissingDeps = true;
       });
 
-      opencv-python = super.opencv-python.overridePythonAttrs (
+      _opencv-python-override =
         old: {
           nativeBuildInputs = [ pkgs.cmake ] ++ old.nativeBuildInputs;
           buildInputs = [ self.scikit-build ] ++ (old.buildInputs or [ ]);
           dontUseCmakeConfigure = true;
-        }
-      );
+        };
+
+      opencv-python = super.opencv-python.overridePythonAttrs self._opencv-python-override;
+
+      opencv-python-headless = super.opencv-python.overridePythonAttrs self._opencv-python-override;
 
       opencv-contrib-python = super.opencv-contrib-python.overridePythonAttrs (
         old: {
@@ -1249,19 +1330,35 @@ lib.composeManyExtensions [
       );
 
       openexr = super.openexr.overridePythonAttrs (
-        old: rec {
+        old: {
           buildInputs = (old.buildInputs or [ ]) ++ [ pkgs.openexr pkgs.ilmbase ];
           NIX_CFLAGS_COMPILE = [ "-I${pkgs.openexr.dev}/include/OpenEXR" "-I${pkgs.ilmbase.dev}/include/OpenEXR" ];
         }
       );
 
+      openvino = super.openvino.overridePythonAttrs (
+        old: {
+          buildInputs = [
+            pkgs.ocl-icd
+            pkgs.hwloc
+            pkgs.tbb
+            pkgs.numactl
+            pkgs.libxml2
+          ] ++ (old.buildInputs or [ ]);
+        }
+      );
+
       orjson =
         let
           getCargoHash = version: {
             "3.6.7" = "sha256-sz2k9podPB6QSptkyOu7+BoVTrKhefizRtYU+MICPt4=";
             "3.6.8" = "sha256-vpfceVtYkU09xszNIihY1xbqGWieqDquxwsAmDH8jd4=";
             "3.7.2" = "sha256-2U37IhftNYjH7sV7Nh51YpR/WjmPmmzX/aGuHsFgwf4=";
-          }.${version} or null;
+            "3.7.9" = "sha256-QHzAhjHgm4XLxY2zUdnIsd/WWMI7dJLQQAvTXC+2asQ=";
+            "3.8.0" = "sha256-8k0DetamwLqkdcg8V/D2J5ja6IJSLi50CE+ZjFa7Hdc=";
+          }.${version} or (
+            lib.warn "Unknown orjson version: '${version}'. Please update getCargoHash." lib.fakeHash
+          );
         in
         super.orjson.overridePythonAttrs (old: {
           cargoDeps = pkgs.rustPlatform.fetchCargoTarball {
@@ -1318,7 +1415,7 @@ lib.composeManyExtensions [
       });
 
       parsel = super.parsel.overridePythonAttrs (
-        old: rec {
+        old: {
           nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ self.pytest-runner ];
         }
       );
@@ -1351,30 +1448,50 @@ lib.composeManyExtensions [
       );
 
       pillow = super.pillow.overridePythonAttrs (
-        old: {
+        old:
+        let
+          preConfigure = (old.preConfigure or "") + pkgs.python3.pkgs.pillow.preConfigure;
+        in
+        {
           nativeBuildInputs = (old.nativeBuildInputs or [ ])
             ++ [ pkg-config self.pytest-runner ];
           buildInputs = with pkgs; (old.buildInputs or [ ])
             ++ [ freetype libjpeg zlib libtiff libwebp tcl lcms2 ]
             ++ lib.optionals (lib.versionAtLeast old.version "7.1.0") [ xorg.libxcb ]
             ++ lib.optionals (self.isPyPy) [ tk xorg.libX11 ];
+          preConfigure = lib.optional (old.format != "wheel") preConfigure;
         }
       );
 
-      poetry-core = super.poetry-core.overridePythonAttrs (old: {
-        # "Vendor" dependencies (for build-system support)
-        postPatch = ''
-          echo "import sys" >> poetry/__init__.py
-          for path in $propagatedBuildInputs; do
-              echo "sys.path.insert(0, \"$path\")" >> poetry/__init__.py
-          done
-        '';
+      poetry-core = super.poetry-core.overridePythonAttrs (old:
+        let
+          initFile =
+            if lib.versionOlder super.poetry-core.version "1.1"
+            then "poetry/__init__.py"
+            else "./src/poetry/core/__init__.py";
+        in
+        {
+          # "Vendor" dependencies (for build-system support)
+          postPatch = ''
+            echo "import sys" >> ${initFile}
+            for path in $propagatedBuildInputs; do
+              echo "sys.path.insert(0, \"$path\")" >> ${initFile}
+            done
+          '';
 
-        # Propagating dependencies leads to issues downstream
-        # We've already patched poetry to prefer "vendored" dependencies
-        postFixup = ''
-          rm $out/nix-support/propagated-build-inputs
-        '';
+          # Propagating dependencies leads to issues downstream
+          # We've already patched poetry to prefer "vendored" dependencies
+          postFixup = ''
+            rm $out/nix-support/propagated-build-inputs
+          '';
+        });
+
+      # Requires poetry which isn't available during bootstrap
+      poetry-plugin-export = super.poetry-plugin-export.overridePythonAttrs (old: {
+        dontUsePythonImportsCheck = true;
+        pipInstallFlags = [
+          "--no-deps"
+        ];
       });
 
       portend = super.portend.overridePythonAttrs (
@@ -1628,6 +1745,10 @@ lib.composeManyExtensions [
         }
       );
 
+      pyrealsense2 = super.pyrealsense2.overridePythonAttrs (old: {
+        buildInputs = (old.buildInputs or [ ]) ++ [ pkgs.libusb1.out ];
+      });
+
       pyrfr = super.pyrfr.overridePythonAttrs (old: {
         nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ pkgs.swig ];
       });
@@ -1666,6 +1787,11 @@ lib.composeManyExtensions [
         in
         super.pyqt5.overridePythonAttrs (
           old: {
+            postPatch = ''
+              # Confirm license
+              sed -i s/"if tool == 'pep517':"/"if True:"/ project.py
+            '';
+
             dontConfigure = true;
             dontWrapQtApps = true;
             nativeBuildInputs = old.nativeBuildInputs or [ ] ++ [
@@ -1840,7 +1966,7 @@ lib.composeManyExtensions [
       );
 
       rockset = super.rockset.overridePythonAttrs (
-        old: rec {
+        old: {
           postPatch = ''
             cp ./setup_rockset.py ./setup.py
           '';
@@ -1994,6 +2120,12 @@ lib.composeManyExtensions [
         '';
       });
 
+      suds = super.suds.overridePythonAttrs (old: {
+        # Fix naming convention shenanigans.
+        # https://github.com/suds-community/suds/blob/a616d96b070ca119a532ff395d4a2a2ba42b257c/setup.py#L648
+        SUDS_PACKAGE = "suds";
+      });
+
       systemd-python = super.systemd-python.overridePythonAttrs (old: {
         buildInputs = old.buildInputs ++ [ pkgs.systemd ];
         nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.pkg-config ];
@@ -2173,6 +2305,43 @@ lib.composeManyExtensions [
         }).wheel;
       };
 
+      watchfiles =
+        let
+          # Watchfiles does not include Cargo.lock in tarball released on PyPi for versions up to 0.17.0
+          getRepoHash = version: {
+            "0.17.0" = "1swpf265h9qq30cx55iy6jjirba3wml16wzb68k527ynrxr7hvqx";
+            "0.16.1" = "1ss6gzcr6js2d2sddgz1p52gyiwpqmgrxm8r6wim7gnm4wvhav8a";
+            "0.15.0" = "14k3avrj7v794kk4mk2xggn40a4s0zg8iq8wmyyyrf7va6hz29hf";
+            "0.14.1" = "1pgfbhxrvr3dw46x9piqj3ydxgn4lkrfp931q0cajinrpv4acfay";
+            "0.14" = "0lml67ilyly0i632pffdy1gd07404vx90xnkw8q6wf6xp5afmkka";
+            "0.13" = "0rkz8yr01mmxm2lcmbnr9i5c7n371mksij7v3ws0aqlrh3kgww02";
+            "0.12" = "16788a0d8n1bb705f0k3dvav2fmbbl6pcikwpgarl1l3fcfff8kl";
+            "0.11" = "0vx56h9wfxj7x3aq7jign4rnlfm7x9nhjwmsv8p22acbzbs10dgv";
+            "0.10" = "0ypdy9sq4211djqh4ni5ap9l7whq9hw0vhsxjfl3a0a4czlldxqp";
+          }.${version};
+          sha256 = getRepoHash super.watchfiles.version;
+        in
+        super.watchfiles.overridePythonAttrs (old: rec {
+          src = pkgs.fetchFromGitHub {
+            owner = "samuelcolvin";
+            repo = "watchfiles";
+            rev = "v${old.version}";
+            inherit sha256;
+          };
+          cargoDeps = pkgs.rustPlatform.importCargoLock {
+            lockFile = "${src.out}/Cargo.lock";
+          };
+          buildInputs = (old.buildInputs or [ ]) ++ lib.optionals stdenv.isDarwin [
+            pkgs.darwin.apple_sdk.frameworks.Security
+            pkgs.darwin.apple_sdk.frameworks.CoreServices
+            pkgs.libiconv
+          ];
+          nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [
+            pkgs.rustPlatform.cargoSetupHook
+            pkgs.rustPlatform.maturinBuildHook
+          ];
+        });
+
       weasyprint = super.weasyprint.overridePythonAttrs (
         old: {
           inherit (pkgs.python3.pkgs.weasyprint) patches;
@@ -2287,7 +2456,7 @@ lib.composeManyExtensions [
       # For some reason the toml dependency of tqdm declared here:
       # https://github.com/tqdm/tqdm/blob/67130a23646ae672836b971e1086b6ae4c77d930/pyproject.toml#L2
       # is not translated correctly to a nix dependency.
-      tqdm = super.tqdm.overrideAttrs (
+      tqdm = super.tqdm.overridePythonAttrs (
         old: {
           buildInputs = [ super.toml ] ++ (old.buildInputs or [ ]);
         }
@@ -2430,6 +2599,12 @@ lib.composeManyExtensions [
             'root_dirs.extend(jupyter_path())' \
             'root_dirs.extend(jupyter_path() + [os.path.join("@out@", "share", "jupyter")])' \
             --subst-var out
+        '' + lib.optionalString (lib.versionAtLeast self.nbconvert.version "7.0") ''
+          substituteInPlace \
+            ./hatch_build.py \
+            --replace \
+            'if self.target_name not in ["wheel", "sdist"]:' \
+            'if True:'
         '';
       });
     }
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/pep425.nix b/pkgs/development/tools/poetry2nix/poetry2nix/pep425.nix
index 00c33956edd19..5883494466f3c 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/pep425.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/pep425.nix
@@ -3,18 +3,15 @@ let
   inherit (lib.strings) escapeRegex hasPrefix hasSuffix hasInfix splitString removePrefix removeSuffix;
   targetMachine = poetryLib.getTargetMachine stdenv;
 
-  # The 'cpxy" as determined by `python.version`
-  #
-  # e.g "2.7.17" -> "cp27"
-  #     "3.5.9"  -> "cp35"
-  pythonTag =
+  pythonVer =
     let
       ver = builtins.splitVersion python.version;
       major = builtins.elemAt ver 0;
       minor = builtins.elemAt ver 1;
+      tags = [ "cp" "py" ];
     in
-    "cp${major}${minor}";
-  abiTag = "${pythonTag}m";
+    { inherit major minor tags; };
+  abiTag = "cp${pythonVer.major}${pythonVer.minor}m";
 
   #
   # Parses wheel file returning an attribute set
@@ -50,14 +47,24 @@ let
     then [ ]
     else (builtins.filter (x: hasInfix v x.file) candidates) ++ (findBestMatches vs candidates);
 
-  # pyver = "cpXX"
-  # x     = "cpXX" | "py2" | "py3" | "py2.py3"
-  isPyVersionCompatible = pyver: x:
+  # x = "cpXX" | "py2" | "py3" | "py2.py3"
+  isPyVersionCompatible = pyver@{ major, minor, tags }: x:
     let
-      normalize = y: ''cp${removePrefix "cp" (removePrefix "py" y)}'';
-      isCompat = p: x: hasPrefix (normalize x) p;
+      isCompat = m:
+        builtins.elem m.tag tags
+        && m.major == major
+        && builtins.compareVersions minor m.minor >= 0;
+      parseMarker = v:
+        let
+          tag = builtins.substring 0 2 v;
+          major = builtins.substring 2 1 v;
+          end = builtins.substring 3 3 v;
+          minor = if builtins.stringLength end > 0 then end else "0";
+        in
+        { inherit major minor tag; };
+      markers = splitString "." x;
     in
-    lib.lists.any (isCompat pyver) (splitString "." x);
+    lib.lists.any isCompat (map parseMarker markers);
 
   #
   # Selects the best matching wheel file from a list of files
@@ -95,11 +102,11 @@ let
         let
           f = toWheelAttrs x.file;
         in
-        (withPython pythonTag abiTag f) && (withPlatforms f);
+        (withPython pythonVer abiTag f) && (withPlatforms f);
       filtered = builtins.filter filterWheel filesWithoutSources;
       choose = files:
         let
-          osxMatches = [ "12_0" "11_0" "10_12" "10_11" "10_10" "10_9" "10_8" "10_7" "any" ];
+          osxMatches = [ "12_0" "11_0" "10_15" "10_12" "10_11" "10_10" "10_9" "10_8" "10_7" "any" ];
           linuxMatches = [ "manylinux1_" "manylinux2010_" "manylinux2014_" "manylinux_" "any" ];
           chooseLinux = x: lib.take 1 (findBestMatches linuxMatches x);
           chooseOSX = x: lib.take 1 (findBestMatches osxMatches x);
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/default.nix b/pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/default.nix
index 868599bde6897..85cd8f0788f7d 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/default.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/default.nix
@@ -18,17 +18,19 @@ poetry2nix.mkPoetryApplication {
 
   # "Vendor" dependencies (for build-system support)
   postPatch = ''
-    echo "import sys" >> poetry/__init__.py
+    # Figure out the location of poetry.core
+    # As poetry.core is using the same root import name as the poetry package and the python module system wont look for the root
+    # in the separate second location we need to link poetry.core to poetry
+    POETRY_CORE=$(python -c 'import poetry.core; import os.path; print(os.path.dirname(poetry.core.__file__))')
+
+    echo "import sys" >> src/poetry/__init__.py
     for path in $propagatedBuildInputs; do
-        echo "sys.path.insert(0, \"$path\")" >> poetry/__init__.py
+        echo "sys.path.insert(0, \"$path\")" >> src/poetry/__init__.py
     done
   '';
 
   postInstall = ''
-    # Figure out the location of poetry.core
-    # As poetry.core is using the same root import name as the poetry package and the python module system wont look for the root
-    # in the separate second location we need to link poetry.core to poetry
-    ln -s $(python -c 'import poetry.core; import os.path; print(os.path.dirname(poetry.core.__file__))') $out/${python.sitePackages}/poetry/core
+    ln -s $POETRY_CORE $out/${python.sitePackages}/poetry/core
 
     mkdir -p "$out/share/bash-completion/completions"
     "$out/bin/poetry" completions bash > "$out/share/bash-completion/completions/poetry"
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/poetry.lock b/pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/poetry.lock
index 5d1e6d671dfbf..a72c2a50de810 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/poetry.lock
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/poetry.lock
@@ -1,44 +1,27 @@
 [[package]]
-name = "atomicwrites"
-version = "1.4.0"
-description = "Atomic file writes."
-category = "dev"
-optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
-
-[[package]]
 name = "attrs"
-version = "21.4.0"
+version = "22.1.0"
 description = "Classes Without Boilerplate"
-category = "dev"
+category = "main"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
+python-versions = ">=3.5"
 
 [package.extras]
-dev = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins", "zope.interface", "furo", "sphinx", "sphinx-notfound-page", "pre-commit", "cloudpickle"]
-docs = ["furo", "sphinx", "zope.interface", "sphinx-notfound-page"]
-tests = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins", "zope.interface", "cloudpickle"]
-tests_no_zope = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins", "cloudpickle"]
+dev = ["cloudpickle", "coverage[toml] (>=5.0.2)", "furo", "hypothesis", "mypy (>=0.900,!=0.940)", "pre-commit", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "sphinx", "sphinx-notfound-page", "zope.interface"]
+docs = ["furo", "sphinx", "sphinx-notfound-page", "zope.interface"]
+tests = ["cloudpickle", "coverage[toml] (>=5.0.2)", "hypothesis", "mypy (>=0.900,!=0.940)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "zope.interface"]
+tests_no_zope = ["cloudpickle", "coverage[toml] (>=5.0.2)", "hypothesis", "mypy (>=0.900,!=0.940)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins"]
 
 [[package]]
-name = "cachecontrol"
-version = "0.12.6"
-description = "httplib2 caching for requests"
+name = "backports.cached-property"
+version = "1.0.2"
+description = "cached_property() - computed once per instance, cached as attribute"
 category = "main"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
-
-[package.dependencies]
-lockfile = {version = ">=0.9", optional = true, markers = "extra == \"filecache\""}
-msgpack = ">=0.5.2"
-requests = "*"
-
-[package.extras]
-filecache = ["lockfile (>=0.9)"]
-redis = ["redis (>=2.10.5)"]
+python-versions = ">=3.6.0"
 
 [[package]]
-name = "cachecontrol"
+name = "CacheControl"
 version = "0.12.11"
 description = "httplib2 caching for requests"
 category = "main"
@@ -63,17 +46,17 @@ optional = false
 python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
 
 [package.extras]
-redis = ["redis (>=3.3.6,<4.0.0)"]
 memcached = ["python-memcached (>=1.59,<2.0)"]
 msgpack = ["msgpack-python (>=0.5,<0.6)"]
+redis = ["redis (>=3.3.6,<4.0.0)"]
 
 [[package]]
 name = "certifi"
-version = "2021.10.8"
+version = "2022.9.24"
 description = "Python package for providing Mozilla's CA Bundle."
 category = "main"
 optional = false
-python-versions = "*"
+python-versions = ">=3.6"
 
 [[package]]
 name = "cffi"
@@ -95,37 +78,27 @@ optional = false
 python-versions = ">=3.6.1"
 
 [[package]]
-name = "chardet"
-version = "4.0.0"
-description = "Universal encoding detector for Python 2 and 3"
+name = "charset-normalizer"
+version = "2.1.1"
+description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet."
 category = "main"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
+python-versions = ">=3.6.0"
+
+[package.extras]
+unicode_backport = ["unicodedata2"]
 
 [[package]]
 name = "cleo"
-version = "0.8.1"
+version = "1.0.0a5"
 description = "Cleo allows you to create beautiful and testable command-line interfaces."
 category = "main"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
+python-versions = ">=3.7,<4.0"
 
 [package.dependencies]
-clikit = ">=0.6.0,<0.7.0"
-
-[[package]]
-name = "clikit"
-version = "0.6.2"
-description = "CliKit is a group of utilities to build beautiful and testable command line interfaces."
-category = "main"
-optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
-
-[package.dependencies]
-crashtest = {version = ">=0.3.0,<0.4.0", markers = "python_version >= \"3.6\" and python_version < \"4.0\""}
-pastel = ">=0.2.0,<0.3.0"
-pylev = ">=1.3,<2.0"
-typing-extensions = {version = ">=3.6,<4.0", markers = "python_version >= \"3.5\" and python_full_version < \"3.5.4\""}
+crashtest = ">=0.3.1,<0.4.0"
+pylev = ">=1.3.0,<2.0.0"
 
 [[package]]
 name = "colorama"
@@ -137,14 +110,17 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
 
 [[package]]
 name = "coverage"
-version = "5.5"
+version = "6.5.0"
 description = "Code coverage measurement for Python"
 category = "dev"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4"
+python-versions = ">=3.7"
+
+[package.dependencies]
+tomli = {version = "*", optional = true, markers = "python_full_version <= \"3.11.0a6\" and extra == \"toml\""}
 
 [package.extras]
-toml = ["toml"]
+toml = ["tomli"]
 
 [[package]]
 name = "crashtest"
@@ -156,61 +132,92 @@ python-versions = ">=3.6,<4.0"
 
 [[package]]
 name = "cryptography"
-version = "3.2.1"
+version = "38.0.1"
 description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers."
 category = "main"
 optional = false
-python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*"
+python-versions = ">=3.6"
 
 [package.dependencies]
-cffi = ">=1.8,<1.11.3 || >1.11.3"
-six = ">=1.4.1"
+cffi = ">=1.12"
 
 [package.extras]
 docs = ["sphinx (>=1.6.5,!=1.8.0,!=3.1.0,!=3.1.1)", "sphinx-rtd-theme"]
-docstest = ["doc8", "pyenchant (>=1.6.11)", "twine (>=1.12.0)", "sphinxcontrib-spelling (>=4.0.1)"]
+docstest = ["pyenchant (>=1.6.11)", "sphinxcontrib-spelling (>=4.0.1)", "twine (>=1.12.0)"]
 pep8test = ["black", "flake8", "flake8-import-order", "pep8-naming"]
+sdist = ["setuptools-rust (>=0.11.4)"]
 ssh = ["bcrypt (>=3.1.5)"]
-test = ["pytest (>=3.6.0,!=3.9.0,!=3.9.1,!=3.9.2)", "pretend", "iso8601", "pytz", "hypothesis (>=1.11.4,!=3.79.2)"]
+test = ["hypothesis (>=1.11.4,!=3.79.2)", "iso8601", "pretend", "pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-subtests", "pytest-xdist", "pytz"]
 
 [[package]]
-name = "cryptography"
-version = "37.0.4"
-description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers."
-category = "main"
+name = "deepdiff"
+version = "5.8.1"
+description = "Deep Difference and Search of any Python object/data."
+category = "dev"
 optional = false
 python-versions = ">=3.6"
 
 [package.dependencies]
-cffi = ">=1.12"
+ordered-set = ">=4.1.0,<4.2.0"
 
 [package.extras]
-docs = ["sphinx (>=1.6.5,!=1.8.0,!=3.1.0,!=3.1.1)", "sphinx-rtd-theme"]
-docstest = ["pyenchant (>=1.6.11)", "twine (>=1.12.0)", "sphinxcontrib-spelling (>=4.0.1)"]
-pep8test = ["black", "flake8", "flake8-import-order", "pep8-naming"]
-sdist = ["setuptools_rust (>=0.11.4)"]
-ssh = ["bcrypt (>=3.1.5)"]
-test = ["pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-subtests", "pytest-xdist", "pretend", "iso8601", "pytz", "hypothesis (>=1.11.4,!=3.79.2)"]
+cli = ["clevercsv (==0.7.1)", "click (==8.0.3)", "pyyaml (==5.4.1)", "toml (==0.10.2)"]
 
 [[package]]
 name = "distlib"
-version = "0.3.4"
+version = "0.3.6"
 description = "Distribution utilities"
 category = "main"
 optional = false
 python-versions = "*"
 
 [[package]]
+name = "dulwich"
+version = "0.20.46"
+description = "Python Git Library"
+category = "main"
+optional = false
+python-versions = ">=3.6"
+
+[package.dependencies]
+urllib3 = ">=1.25"
+
+[package.extras]
+fastimport = ["fastimport"]
+https = ["urllib3 (>=1.24.1)"]
+paramiko = ["paramiko"]
+pgp = ["gpg"]
+
+[[package]]
+name = "execnet"
+version = "1.9.0"
+description = "execnet: rapid multi-Python deployment"
+category = "dev"
+optional = false
+python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
+
+[package.extras]
+testing = ["pre-commit"]
+
+[[package]]
 name = "filelock"
-version = "3.2.1"
+version = "3.8.0"
 description = "A platform independent file lock."
 category = "main"
 optional = false
-python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7"
+python-versions = ">=3.7"
 
 [package.extras]
-docs = ["furo (>=2021.8.17b43)", "sphinx (>=4.1)", "sphinx-autodoc-typehints (>=1.12)"]
-testing = ["coverage (>=4)", "pytest (>=4)", "pytest-cov", "pytest-timeout (>=1.4.2)"]
+docs = ["furo (>=2022.6.21)", "sphinx (>=5.1.1)", "sphinx-autodoc-typehints (>=1.19.1)"]
+testing = ["covdefaults (>=2.2)", "coverage (>=6.4.2)", "pytest (>=7.1.2)", "pytest-cov (>=3)", "pytest-timeout (>=2.1)"]
+
+[[package]]
+name = "flatdict"
+version = "4.0.1"
+description = "Python module for interacting with nested dicts as a single level dict with delimited keys."
+category = "dev"
+optional = false
+python-versions = "*"
 
 [[package]]
 name = "html5lib"
@@ -225,7 +232,7 @@ six = ">=1.9"
 webencodings = "*"
 
 [package.extras]
-all = ["genshi", "chardet (>=2.2)", "lxml"]
+all = ["chardet (>=2.2)", "genshi", "lxml"]
 chardet = ["chardet (>=2.2)"]
 genshi = ["genshi"]
 lxml = ["lxml"]
@@ -240,51 +247,54 @@ python-versions = ">=3"
 
 [[package]]
 name = "identify"
-version = "2.4.4"
+version = "2.5.6"
 description = "File identification library for Python"
 category = "dev"
 optional = false
-python-versions = ">=3.6.1"
+python-versions = ">=3.7"
 
 [package.extras]
 license = ["ukkonen"]
 
 [[package]]
 name = "idna"
-version = "2.10"
+version = "3.4"
 description = "Internationalized Domain Names in Applications (IDNA)"
 category = "main"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
+python-versions = ">=3.5"
 
 [[package]]
 name = "importlib-metadata"
-version = "1.7.0"
+version = "4.13.0"
 description = "Read metadata from Python packages"
 category = "main"
 optional = false
-python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7"
+python-versions = ">=3.7"
 
 [package.dependencies]
+typing-extensions = {version = ">=3.6.4", markers = "python_version < \"3.8\""}
 zipp = ">=0.5"
 
 [package.extras]
-docs = ["sphinx", "rst.linker"]
-testing = ["packaging", "pep517", "importlib-resources (>=1.3)"]
+docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)"]
+perf = ["ipython"]
+testing = ["flake8 (<5)", "flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)"]
 
 [[package]]
 name = "importlib-resources"
-version = "3.2.1"
+version = "5.9.0"
 description = "Read resources from Python packages"
 category = "main"
 optional = false
-python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7"
+python-versions = ">=3.7"
 
 [package.dependencies]
-zipp = {version = ">=0.4", markers = "python_version < \"3.8\""}
+zipp = {version = ">=3.1.0", markers = "python_version < \"3.10\""}
 
 [package.extras]
-docs = ["sphinx", "rst.linker", "jaraco.packaging"]
+docs = ["jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx"]
+testing = ["pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)"]
 
 [[package]]
 name = "iniconfig"
@@ -295,62 +305,70 @@ optional = false
 python-versions = "*"
 
 [[package]]
-name = "jeepney"
-version = "0.4.3"
-description = "Low-level, pure Python DBus protocol wrapper."
+name = "jaraco.classes"
+version = "3.2.3"
+description = "Utility functions for Python class constructs"
 category = "main"
 optional = false
-python-versions = ">=3.5"
+python-versions = ">=3.7"
+
+[package.dependencies]
+more-itertools = "*"
 
 [package.extras]
-dev = ["testpath"]
+docs = ["jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)"]
+testing = ["flake8 (<5)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)"]
 
 [[package]]
 name = "jeepney"
-version = "0.7.1"
+version = "0.8.0"
 description = "Low-level, pure Python DBus protocol wrapper."
 category = "main"
 optional = false
-python-versions = ">=3.6"
+python-versions = ">=3.7"
 
 [package.extras]
-test = ["pytest", "pytest-trio", "pytest-asyncio", "testpath", "trio", "async-timeout"]
-trio = ["trio", "async-generator"]
+test = ["async-timeout", "pytest", "pytest-asyncio (>=0.17)", "pytest-trio", "testpath", "trio"]
+trio = ["async_generator", "trio"]
 
 [[package]]
-name = "keyring"
-version = "20.0.1"
-description = "Store and access your passwords safely."
+name = "jsonschema"
+version = "4.16.0"
+description = "An implementation of JSON Schema validation for Python"
 category = "main"
 optional = false
-python-versions = ">=3.5"
+python-versions = ">=3.7"
 
 [package.dependencies]
+attrs = ">=17.4.0"
 importlib-metadata = {version = "*", markers = "python_version < \"3.8\""}
-pywin32-ctypes = {version = "<0.1.0 || >0.1.0,<0.1.1 || >0.1.1", markers = "sys_platform == \"win32\""}
-secretstorage = {version = "*", markers = "sys_platform == \"linux\""}
+importlib-resources = {version = ">=1.4.0", markers = "python_version < \"3.9\""}
+pkgutil-resolve-name = {version = ">=1.3.10", markers = "python_version < \"3.9\""}
+pyrsistent = ">=0.14.0,<0.17.0 || >0.17.0,<0.17.1 || >0.17.1,<0.17.2 || >0.17.2"
+typing-extensions = {version = "*", markers = "python_version < \"3.8\""}
 
 [package.extras]
-docs = ["sphinx", "jaraco.packaging (>=3.2)", "rst.linker (>=1.9)"]
-testing = ["pytest (>=3.5,!=3.7.3)", "pytest-checkdocs (>=1.2.3)", "pytest-flake8", "pytest-black-multipy", "pytest-cov"]
+format = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3987", "uri-template", "webcolors (>=1.11)"]
+format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3986-validator (>0.1.0)", "uri-template", "webcolors (>=1.11)"]
 
 [[package]]
 name = "keyring"
-version = "22.3.0"
+version = "23.9.3"
 description = "Store and access your passwords safely."
 category = "main"
 optional = false
-python-versions = ">=3.6"
+python-versions = ">=3.7"
 
 [package.dependencies]
-importlib-metadata = {version = ">=1", markers = "python_version < \"3.8\""}
+importlib-metadata = {version = ">=3.6", markers = "python_version < \"3.10\""}
+"jaraco.classes" = "*"
 jeepney = {version = ">=0.4.2", markers = "sys_platform == \"linux\""}
 pywin32-ctypes = {version = "<0.1.0 || >0.1.0,<0.1.1 || >0.1.1", markers = "sys_platform == \"win32\""}
 SecretStorage = {version = ">=3.2", markers = "sys_platform == \"linux\""}
 
 [package.extras]
-docs = ["sphinx", "jaraco.packaging (>=8.2)", "rst.linker (>=1.9)"]
-testing = ["pytest (>=4.6)", "pytest-checkdocs (>=1.2.3)", "pytest-flake8", "pytest-cov", "pytest-enabler", "pytest-black (>=0.3.7)", "pytest-mypy"]
+docs = ["jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx"]
+testing = ["flake8 (<5)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)"]
 
 [[package]]
 name = "lockfile"
@@ -362,9 +380,9 @@ python-versions = "*"
 
 [[package]]
 name = "more-itertools"
-version = "8.13.0"
+version = "8.14.0"
 description = "More routines for operating on iterables, beyond itertools"
-category = "dev"
+category = "main"
 optional = false
 python-versions = ">=3.5"
 
@@ -377,42 +395,64 @@ optional = false
 python-versions = "*"
 
 [[package]]
-name = "nodeenv"
-version = "1.6.0"
-description = "Node.js virtual environment builder"
+name = "mypy"
+version = "0.982"
+description = "Optional static typing for Python"
+category = "dev"
+optional = false
+python-versions = ">=3.7"
+
+[package.dependencies]
+mypy-extensions = ">=0.4.3"
+tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""}
+typed-ast = {version = ">=1.4.0,<2", markers = "python_version < \"3.8\""}
+typing-extensions = ">=3.10"
+
+[package.extras]
+dmypy = ["psutil (>=4.0)"]
+python2 = ["typed-ast (>=1.4.0,<2)"]
+reports = ["lxml"]
+
+[[package]]
+name = "mypy-extensions"
+version = "0.4.3"
+description = "Experimental type system extensions for programs checked with the mypy typechecker."
 category = "dev"
 optional = false
 python-versions = "*"
 
 [[package]]
-name = "packaging"
-version = "20.9"
-description = "Core utilities for Python packages"
-category = "main"
+name = "nodeenv"
+version = "1.7.0"
+description = "Node.js virtual environment builder"
+category = "dev"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
+python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*"
 
 [package.dependencies]
-pyparsing = ">=2.0.2"
+setuptools = "*"
 
 [[package]]
-name = "pastel"
-version = "0.2.1"
-description = "Bring colors to your terminal."
-category = "main"
+name = "ordered-set"
+version = "4.1.0"
+description = "An OrderedSet is a custom MutableSet that remembers its order, so that every"
+category = "dev"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
+python-versions = ">=3.7"
+
+[package.extras]
+dev = ["black", "mypy", "pytest"]
 
 [[package]]
-name = "pathlib2"
-version = "2.3.7.post1"
-description = "Object-oriented filesystem paths"
+name = "packaging"
+version = "21.3"
+description = "Core utilities for Python packages"
 category = "main"
 optional = false
-python-versions = "*"
+python-versions = ">=3.6"
 
 [package.dependencies]
-six = "*"
+pyparsing = ">=2.0.2,<3.0.5 || >3.0.5"
 
 [[package]]
 name = "pexpect"
@@ -427,67 +467,102 @@ ptyprocess = ">=0.5"
 
 [[package]]
 name = "pkginfo"
-version = "1.8.2"
+version = "1.8.3"
 description = "Query metadatdata from sdists / bdists / installed packages."
 category = "main"
 optional = false
-python-versions = "*"
+python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*"
 
 [package.extras]
 testing = ["coverage", "nose"]
 
 [[package]]
+name = "pkgutil_resolve_name"
+version = "1.3.10"
+description = "Resolve a name to an object."
+category = "main"
+optional = false
+python-versions = ">=3.6"
+
+[[package]]
 name = "platformdirs"
-version = "2.0.2"
+version = "2.5.2"
 description = "A small Python module for determining appropriate platform-specific dirs, e.g. a \"user data dir\"."
 category = "main"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
+python-versions = ">=3.7"
+
+[package.extras]
+docs = ["furo (>=2021.7.5b38)", "proselint (>=0.10.2)", "sphinx (>=4)", "sphinx-autodoc-typehints (>=1.12)"]
+test = ["appdirs (==1.4.4)", "pytest (>=6)", "pytest-cov (>=2.7)", "pytest-mock (>=3.6)"]
 
 [[package]]
 name = "pluggy"
-version = "0.13.1"
+version = "1.0.0"
 description = "plugin and hook calling mechanisms for python"
 category = "dev"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
+python-versions = ">=3.6"
 
 [package.dependencies]
 importlib-metadata = {version = ">=0.12", markers = "python_version < \"3.8\""}
 
 [package.extras]
 dev = ["pre-commit", "tox"]
+testing = ["pytest", "pytest-benchmark"]
 
 [[package]]
 name = "poetry-core"
-version = "1.0.8"
+version = "1.2.0"
 description = "Poetry PEP 517 Build Backend"
 category = "main"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
+python-versions = ">=3.7,<4.0"
+
+[package.dependencies]
+importlib-metadata = {version = ">=1.7.0", markers = "python_version < \"3.8\""}
+
+[[package]]
+name = "poetry-plugin-export"
+version = "1.1.1"
+description = "Poetry plugin to export the dependencies to various formats"
+category = "main"
+optional = false
+python-versions = ">=3.7,<4.0"
 
 [package.dependencies]
-importlib-metadata = {version = ">=1.7.0,<2.0.0", markers = "python_version >= \"2.7\" and python_version < \"2.8\" or python_version >= \"3.5\" and python_version < \"3.8\""}
+poetry = ">=1.2.0,<2.0.0"
+poetry-core = ">=1.1.0,<2.0.0"
 
 [[package]]
 name = "pre-commit"
-version = "2.17.0"
+version = "2.20.0"
 description = "A framework for managing and maintaining multi-language pre-commit hooks."
 category = "dev"
 optional = false
-python-versions = ">=3.6.1"
+python-versions = ">=3.7"
 
 [package.dependencies]
 cfgv = ">=2.0.0"
 identify = ">=1.0.0"
 importlib-metadata = {version = "*", markers = "python_version < \"3.8\""}
-importlib-resources = {version = "<5.3", markers = "python_version < \"3.7\""}
 nodeenv = ">=0.11.1"
 pyyaml = ">=5.1"
 toml = "*"
 virtualenv = ">=20.0.8"
 
 [[package]]
+name = "psutil"
+version = "5.9.2"
+description = "Cross-platform lib for process and system monitoring in Python."
+category = "dev"
+optional = false
+python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
+
+[package.extras]
+test = ["enum34", "ipaddress", "mock", "pywin32", "wmi"]
+
+[[package]]
 name = "ptyprocess"
 version = "0.7.0"
 description = "Run a subprocess in a pseudo terminal"
@@ -521,46 +596,32 @@ python-versions = "*"
 
 [[package]]
 name = "pyparsing"
-version = "2.4.7"
-description = "Python parsing module"
+version = "3.0.9"
+description = "pyparsing module - Classes and methods to define and execute parsing grammars"
 category = "main"
 optional = false
-python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*"
+python-versions = ">=3.6.8"
+
+[package.extras]
+diagrams = ["jinja2", "railroad-diagrams"]
 
 [[package]]
-name = "pytest"
-version = "5.4.3"
-description = "pytest: simple powerful testing with Python"
-category = "dev"
+name = "pyrsistent"
+version = "0.18.1"
+description = "Persistent/Functional/Immutable data structures"
+category = "main"
 optional = false
-python-versions = ">=3.5"
-
-[package.dependencies]
-atomicwrites = {version = ">=1.0", markers = "sys_platform == \"win32\""}
-attrs = ">=17.4.0"
-colorama = {version = "*", markers = "sys_platform == \"win32\""}
-importlib-metadata = {version = ">=0.12", markers = "python_version < \"3.8\""}
-more-itertools = ">=4.0.0"
-packaging = "*"
-pathlib2 = {version = ">=2.2.0", markers = "python_version < \"3.6\""}
-pluggy = ">=0.12,<1.0"
-py = ">=1.5.0"
-wcwidth = "*"
-
-[package.extras]
-checkqa-mypy = ["mypy (==v0.761)"]
-testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "requests", "xmlschema"]
+python-versions = ">=3.7"
 
 [[package]]
 name = "pytest"
-version = "6.2.5"
+version = "7.1.3"
 description = "pytest: simple powerful testing with Python"
 category = "dev"
 optional = false
-python-versions = ">=3.6"
+python-versions = ">=3.7"
 
 [package.dependencies]
-atomicwrites = {version = ">=1.0", markers = "sys_platform == \"win32\""}
 attrs = ">=19.2.0"
 colorama = {version = "*", markers = "sys_platform == \"win32\""}
 importlib-metadata = {version = ">=0.12", markers = "python_version < \"3.8\""}
@@ -568,44 +629,67 @@ iniconfig = "*"
 packaging = "*"
 pluggy = ">=0.12,<2.0"
 py = ">=1.8.2"
-toml = "*"
+tomli = ">=1.0.0"
 
 [package.extras]
-testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "requests", "xmlschema"]
+testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "pygments (>=2.7.2)", "requests", "xmlschema"]
 
 [[package]]
 name = "pytest-cov"
-version = "2.12.1"
+version = "3.0.0"
 description = "Pytest plugin for measuring coverage."
 category = "dev"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
+python-versions = ">=3.6"
 
 [package.dependencies]
-coverage = ">=5.2.1"
+coverage = {version = ">=5.2.1", extras = ["toml"]}
 pytest = ">=4.6"
-toml = "*"
 
 [package.extras]
-testing = ["fields", "hunter", "process-tests", "six", "pytest-xdist", "virtualenv"]
+testing = ["fields", "hunter", "process-tests", "pytest-xdist", "six", "virtualenv"]
+
+[[package]]
+name = "pytest-forked"
+version = "1.4.0"
+description = "run tests in isolated forked subprocesses"
+category = "dev"
+optional = false
+python-versions = ">=3.6"
+
+[package.dependencies]
+py = "*"
+pytest = ">=3.10"
 
 [[package]]
 name = "pytest-mock"
-version = "1.13.0"
-description = "Thin-wrapper around the mock package for easier use with py.test"
+version = "3.10.0"
+description = "Thin-wrapper around the mock package for easier use with pytest"
 category = "dev"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
+python-versions = ">=3.7"
 
 [package.dependencies]
-pytest = ">=2.7"
+pytest = ">=5.0"
 
 [package.extras]
-dev = ["pre-commit", "tox"]
+dev = ["pre-commit", "pytest-asyncio", "tox"]
+
+[[package]]
+name = "pytest-randomly"
+version = "3.12.0"
+description = "Pytest plugin to randomly order tests and control random.seed."
+category = "dev"
+optional = false
+python-versions = ">=3.7"
+
+[package.dependencies]
+importlib-metadata = {version = ">=3.6.0", markers = "python_version < \"3.10\""}
+pytest = "*"
 
 [[package]]
 name = "pytest-sugar"
-version = "0.9.4"
+version = "0.9.5"
 description = "pytest-sugar is a plugin for pytest that changes the default look and feel of pytest (e.g. progressbar, show tests that fail instantly)."
 category = "dev"
 optional = false
@@ -617,6 +701,25 @@ pytest = ">=2.9"
 termcolor = ">=1.1.0"
 
 [[package]]
+name = "pytest-xdist"
+version = "2.5.0"
+description = "pytest xdist plugin for distributed testing and loop-on-failing modes"
+category = "dev"
+optional = false
+python-versions = ">=3.6"
+
+[package.dependencies]
+execnet = ">=1.1"
+psutil = {version = ">=3.0", optional = true, markers = "extra == \"psutil\""}
+pytest = ">=6.2.0"
+pytest-forked = "*"
+
+[package.extras]
+psutil = ["psutil (>=3.0)"]
+setproctitle = ["setproctitle"]
+testing = ["filelock"]
+
+[[package]]
 name = "pywin32-ctypes"
 version = "0.2.0"
 description = ""
@@ -625,7 +728,7 @@ optional = false
 python-versions = "*"
 
 [[package]]
-name = "pyyaml"
+name = "PyYAML"
 version = "6.0"
 description = "YAML parser and emitter for Python"
 category = "dev"
@@ -634,21 +737,21 @@ python-versions = ">=3.6"
 
 [[package]]
 name = "requests"
-version = "2.25.1"
+version = "2.28.1"
 description = "Python HTTP for Humans."
 category = "main"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
+python-versions = ">=3.7, <4"
 
 [package.dependencies]
 certifi = ">=2017.4.17"
-chardet = ">=3.0.2,<5"
-idna = ">=2.5,<3"
+charset-normalizer = ">=2,<3"
+idna = ">=2.5,<4"
 urllib3 = ">=1.21.1,<1.27"
 
 [package.extras]
-security = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)"]
-socks = ["PySocks (>=1.5.6,!=1.5.7)", "win-inet-pton"]
+socks = ["PySocks (>=1.5.6,!=1.5.7)"]
+use_chardet_on_py3 = ["chardet (>=3.0.2,<6)"]
 
 [[package]]
 name = "requests-toolbelt"
@@ -662,36 +765,37 @@ python-versions = "*"
 requests = ">=2.0.1,<3.0.0"
 
 [[package]]
-name = "secretstorage"
-version = "3.2.0"
+name = "SecretStorage"
+version = "3.3.3"
 description = "Python bindings to FreeDesktop.org Secret Service API"
 category = "main"
 optional = false
-python-versions = ">=3.5"
+python-versions = ">=3.6"
 
 [package.dependencies]
 cryptography = ">=2.0"
-jeepney = ">=0.4.2"
+jeepney = ">=0.6"
 
 [[package]]
-name = "secretstorage"
-version = "3.3.2"
-description = "Python bindings to FreeDesktop.org Secret Service API"
-category = "main"
+name = "setuptools"
+version = "65.4.1"
+description = "Easily download, build, install, upgrade, and uninstall Python packages"
+category = "dev"
 optional = false
-python-versions = ">=3.6"
+python-versions = ">=3.7"
 
-[package.dependencies]
-cryptography = ">=2.0"
-jeepney = ">=0.6"
+[package.extras]
+docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-hoverxref (<2)", "sphinx-inline-tabs", "sphinx-notfound-page (==0.8.3)", "sphinx-reredirects", "sphinxcontrib-towncrier"]
+testing = ["build[virtualenv]", "filelock (>=3.4.0)", "flake8 (<5)", "flake8-2020", "ini2toml[lite] (>=0.9)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "mock", "pip (>=19.1)", "pip-run (>=8.8)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)", "pytest-perf", "pytest-xdist", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"]
+testing-integration = ["build[virtualenv]", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"]
 
 [[package]]
 name = "shellingham"
-version = "1.4.0"
+version = "1.5.0"
 description = "Tool to Detect Surrounding Shell"
 category = "main"
 optional = false
-python-versions = "!=3.0,!=3.1,!=3.2,!=3.3,>=2.6"
+python-versions = ">=3.4"
 
 [[package]]
 name = "six"
@@ -703,11 +807,14 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*"
 
 [[package]]
 name = "termcolor"
-version = "1.1.0"
-description = "ANSII Color formatting for output in terminal."
+version = "2.0.1"
+description = "ANSI color formatting for output in terminal"
 category = "dev"
 optional = false
-python-versions = "*"
+python-versions = ">=3.7"
+
+[package.extras]
+tests = ["pytest", "pytest-cov"]
 
 [[package]]
 name = "toml"
@@ -718,16 +825,24 @@ optional = false
 python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*"
 
 [[package]]
+name = "tomli"
+version = "2.0.1"
+description = "A lil' TOML parser"
+category = "dev"
+optional = false
+python-versions = ">=3.7"
+
+[[package]]
 name = "tomlkit"
-version = "0.7.2"
+version = "0.11.5"
 description = "Style preserving TOML library"
 category = "main"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
+python-versions = ">=3.6,<4.0"
 
 [[package]]
 name = "tox"
-version = "3.25.1"
+version = "3.26.0"
 description = "tox is a generic virtualenv management and test command line tool"
 category = "dev"
 optional = false
@@ -741,99 +856,141 @@ packaging = ">=14"
 pluggy = ">=0.12.0"
 py = ">=1.4.17"
 six = ">=1.14.0"
-toml = ">=0.9.4"
+tomli = {version = ">=2.0.1", markers = "python_version >= \"3.7\" and python_version < \"3.11\""}
 virtualenv = ">=16.0.0,<20.0.0 || >20.0.0,<20.0.1 || >20.0.1,<20.0.2 || >20.0.2,<20.0.3 || >20.0.3,<20.0.4 || >20.0.4,<20.0.5 || >20.0.5,<20.0.6 || >20.0.6,<20.0.7 || >20.0.7"
 
 [package.extras]
 docs = ["pygments-github-lexers (>=0.0.5)", "sphinx (>=2.0.0)", "sphinxcontrib-autoprogram (>=0.1.5)", "towncrier (>=18.5.0)"]
-testing = ["flaky (>=3.4.0)", "freezegun (>=0.3.11)", "pytest (>=4.0.0)", "pytest-cov (>=2.5.1)", "pytest-mock (>=1.10.0)", "pytest-randomly (>=1.0.0)", "psutil (>=5.6.1)", "pathlib2 (>=2.3.3)"]
+testing = ["flaky (>=3.4.0)", "freezegun (>=0.3.11)", "pathlib2 (>=2.3.3)", "psutil (>=5.6.1)", "pytest (>=4.0.0)", "pytest-cov (>=2.5.1)", "pytest-mock (>=1.10.0)", "pytest-randomly (>=1.0.0)"]
+
+[[package]]
+name = "typed-ast"
+version = "1.5.4"
+description = "a fork of Python 2 and 3 ast modules with type comment support"
+category = "dev"
+optional = false
+python-versions = ">=3.6"
+
+[[package]]
+name = "types-html5lib"
+version = "1.1.11"
+description = "Typing stubs for html5lib"
+category = "dev"
+optional = false
+python-versions = "*"
+
+[[package]]
+name = "types-jsonschema"
+version = "4.16.1"
+description = "Typing stubs for jsonschema"
+category = "dev"
+optional = false
+python-versions = "*"
+
+[[package]]
+name = "types-requests"
+version = "2.28.11.2"
+description = "Typing stubs for requests"
+category = "dev"
+optional = false
+python-versions = "*"
+
+[package.dependencies]
+types-urllib3 = "<1.27"
+
+[[package]]
+name = "types-urllib3"
+version = "1.26.25"
+description = "Typing stubs for urllib3"
+category = "dev"
+optional = false
+python-versions = "*"
 
 [[package]]
 name = "typing-extensions"
-version = "3.10.0.2"
-description = "Backported and Experimental Type Hints for Python 3.5+"
+version = "4.4.0"
+description = "Backported and Experimental Type Hints for Python 3.7+"
 category = "main"
 optional = false
-python-versions = "*"
+python-versions = ">=3.7"
 
 [[package]]
 name = "urllib3"
-version = "1.26.9"
+version = "1.26.12"
 description = "HTTP library with thread-safe connection pooling, file post, and more."
 category = "main"
 optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4"
+python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, <4"
 
 [package.extras]
-brotli = ["brotlicffi (>=0.8.0)", "brotli (>=1.0.9)", "brotlipy (>=0.6.0)"]
-secure = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "certifi", "ipaddress"]
+brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"]
+secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"]
 socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"]
 
 [[package]]
 name = "virtualenv"
-version = "20.15.1"
+version = "20.16.5"
 description = "Virtual Python Environment builder"
 category = "main"
 optional = false
-python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7"
+python-versions = ">=3.6"
 
 [package.dependencies]
-distlib = ">=0.3.1,<1"
-filelock = ">=3.2,<4"
-importlib-metadata = {version = ">=0.12", markers = "python_version < \"3.8\""}
-importlib-resources = {version = ">=1.0", markers = "python_version < \"3.7\""}
-platformdirs = ">=2,<3"
-six = ">=1.9.0,<2"
+distlib = ">=0.3.5,<1"
+filelock = ">=3.4.1,<4"
+importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.8\""}
+platformdirs = ">=2.4,<3"
 
 [package.extras]
-docs = ["proselint (>=0.10.2)", "sphinx (>=3)", "sphinx-argparse (>=0.2.5)", "sphinx-rtd-theme (>=0.4.3)", "towncrier (>=21.3)"]
-testing = ["coverage (>=4)", "coverage-enable-subprocess (>=1)", "flaky (>=3)", "pytest (>=4)", "pytest-env (>=0.6.2)", "pytest-freezegun (>=0.4.1)", "pytest-mock (>=2)", "pytest-randomly (>=1)", "pytest-timeout (>=1)", "packaging (>=20.0)"]
+docs = ["proselint (>=0.13)", "sphinx (>=5.1.1)", "sphinx-argparse (>=0.3.1)", "sphinx-rtd-theme (>=1)", "towncrier (>=21.9)"]
+testing = ["coverage (>=6.2)", "coverage-enable-subprocess (>=1)", "flaky (>=3.7)", "packaging (>=21.3)", "pytest (>=7.0.1)", "pytest-env (>=0.6.2)", "pytest-freezegun (>=0.4.2)", "pytest-mock (>=3.6.1)", "pytest-randomly (>=3.10.3)", "pytest-timeout (>=2.1)"]
 
 [[package]]
-name = "wcwidth"
-version = "0.2.5"
-description = "Measures the displayed width of unicode strings in a terminal"
-category = "dev"
+name = "webencodings"
+version = "0.5.1"
+description = "Character encoding aliases for legacy web content"
+category = "main"
 optional = false
 python-versions = "*"
 
 [[package]]
-name = "webencodings"
-version = "0.5.1"
-description = "Character encoding aliases for legacy web content"
+name = "xattr"
+version = "0.9.9"
+description = "Python wrapper for extended filesystem attributes"
 category = "main"
 optional = false
 python-versions = "*"
 
+[package.dependencies]
+cffi = ">=1.0"
+
 [[package]]
 name = "zipp"
-version = "1.2.0"
+version = "3.8.1"
 description = "Backport of pathlib-compatible object wrapper for zip files"
 category = "main"
 optional = false
-python-versions = ">=2.7"
+python-versions = ">=3.7"
 
 [package.extras]
-docs = ["sphinx", "jaraco.packaging (>=3.2)", "rst.linker (>=1.9)"]
-testing = ["pathlib2", "unittest2", "jaraco.itertools", "func-timeout"]
+docs = ["jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx"]
+testing = ["func-timeout", "jaraco.itertools", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)"]
 
 [metadata]
 lock-version = "1.1"
-python-versions = "^3.5"
-content-hash = "9ef4eff67412cb5b3e575b88a4424e26f4f8a519ee503046ec435c9c10786d00"
+python-versions = "^3.7"
+content-hash = "a3480636766bb3c5c00e1ed48b6b70136726754001837ef7515c6b355fa35812"
 
 [metadata.files]
-atomicwrites = [
-    {file = "atomicwrites-1.4.0-py2.py3-none-any.whl", hash = "sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197"},
-    {file = "atomicwrites-1.4.0.tar.gz", hash = "sha256:ae70396ad1a434f9c7046fd2dd196fc04b12f9e91ffb859164193be8b6168a7a"},
-]
 attrs = [
-    {file = "attrs-21.4.0-py2.py3-none-any.whl", hash = "sha256:2d27e3784d7a565d36ab851fe94887c5eccd6a463168875832a1be79c82828b4"},
-    {file = "attrs-21.4.0.tar.gz", hash = "sha256:626ba8234211db98e869df76230a137c4c40a12d72445c45d5f5b716f076e2fd"},
+    {file = "attrs-22.1.0-py2.py3-none-any.whl", hash = "sha256:86efa402f67bf2df34f51a335487cf46b1ec130d02b8d39fd248abfd30da551c"},
+    {file = "attrs-22.1.0.tar.gz", hash = "sha256:29adc2665447e5191d0e7c568fde78b21f9672d344281d0c6e1ab085429b22b6"},
+]
+"backports.cached-property" = [
+    {file = "backports.cached-property-1.0.2.tar.gz", hash = "sha256:9306f9eed6ec55fd156ace6bc1094e2c86fae5fb2bf07b6a9c00745c656e75dd"},
+    {file = "backports.cached_property-1.0.2-py3-none-any.whl", hash = "sha256:baeb28e1cd619a3c9ab8941431fe34e8490861fb998c6c4590693d50171db0cc"},
 ]
-cachecontrol = [
-    {file = "CacheControl-0.12.6-py2.py3-none-any.whl", hash = "sha256:10d056fa27f8563a271b345207402a6dcce8efab7e5b377e270329c62471b10d"},
-    {file = "CacheControl-0.12.6.tar.gz", hash = "sha256:be9aa45477a134aee56c8fac518627e1154df063e85f67d4f83ce0ccc23688e8"},
+CacheControl = [
     {file = "CacheControl-0.12.11-py2.py3-none-any.whl", hash = "sha256:2c75d6a8938cb1933c75c50184549ad42728a27e9f6b92fd677c3151aa72555b"},
     {file = "CacheControl-0.12.11.tar.gz", hash = "sha256:a5b9fcc986b184db101aa280b42ecdcdfc524892596f606858e0b7a8b4d9e144"},
 ]
@@ -842,8 +999,8 @@ cachy = [
     {file = "cachy-0.3.0.tar.gz", hash = "sha256:186581f4ceb42a0bbe040c407da73c14092379b1e4c0e327fdb72ae4a9b269b1"},
 ]
 certifi = [
-    {file = "certifi-2021.10.8-py2.py3-none-any.whl", hash = "sha256:d62a0163eb4c2344ac042ab2bdf75399a71a2d8c7d47eac2e2ee91b9d6339569"},
-    {file = "certifi-2021.10.8.tar.gz", hash = "sha256:78884e7c1d4b00ce3cea67b44566851c4343c120abd683433ce934a68ea58872"},
+    {file = "certifi-2022.9.24-py3-none-any.whl", hash = "sha256:90c1a32f1d68f940488354e36370f6cca89f0f106db09518524c88d6ed83f382"},
+    {file = "certifi-2022.9.24.tar.gz", hash = "sha256:0d9c601124e5a6ba9712dbc60d9c53c21e34f5f641fe83002317394311bdce14"},
 ]
 cffi = [
     {file = "cffi-1.15.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:a66d3508133af6e8548451b25058d5812812ec3798c886bf38ed24a98216fab2"},
@@ -915,133 +1072,153 @@ cfgv = [
     {file = "cfgv-3.3.1-py2.py3-none-any.whl", hash = "sha256:c6a0883f3917a037485059700b9e75da2464e6c27051014ad85ba6aaa5884426"},
     {file = "cfgv-3.3.1.tar.gz", hash = "sha256:f5a830efb9ce7a445376bb66ec94c638a9787422f96264c98edc6bdeed8ab736"},
 ]
-chardet = [
-    {file = "chardet-4.0.0-py2.py3-none-any.whl", hash = "sha256:f864054d66fd9118f2e67044ac8981a54775ec5b67aed0441892edb553d21da5"},
-    {file = "chardet-4.0.0.tar.gz", hash = "sha256:0d6f53a15db4120f2b08c94f11e7d93d2c911ee118b6b30a04ec3ee8310179fa"},
+charset-normalizer = [
+    {file = "charset-normalizer-2.1.1.tar.gz", hash = "sha256:5a3d016c7c547f69d6f81fb0db9449ce888b418b5b9952cc5e6e66843e9dd845"},
+    {file = "charset_normalizer-2.1.1-py3-none-any.whl", hash = "sha256:83e9a75d1911279afd89352c68b45348559d1fc0506b054b346651b5e7fee29f"},
 ]
 cleo = [
-    {file = "cleo-0.8.1-py2.py3-none-any.whl", hash = "sha256:141cda6dc94a92343be626bb87a0b6c86ae291dfc732a57bf04310d4b4201753"},
-    {file = "cleo-0.8.1.tar.gz", hash = "sha256:3d0e22d30117851b45970b6c14aca4ab0b18b1b53c8af57bed13208147e4069f"},
-]
-clikit = [
-    {file = "clikit-0.6.2-py2.py3-none-any.whl", hash = "sha256:71268e074e68082306e23d7369a7b99f824a0ef926e55ba2665e911f7208489e"},
-    {file = "clikit-0.6.2.tar.gz", hash = "sha256:442ee5db9a14120635c5990bcdbfe7c03ada5898291f0c802f77be71569ded59"},
+    {file = "cleo-1.0.0a5-py3-none-any.whl", hash = "sha256:ff53056589300976e960f75afb792dfbfc9c78dcbb5a448e207a17b643826360"},
+    {file = "cleo-1.0.0a5.tar.gz", hash = "sha256:097c9d0e0332fd53cc89fc11eb0a6ba0309e6a3933c08f7b38558555486925d3"},
 ]
 colorama = [
     {file = "colorama-0.4.5-py2.py3-none-any.whl", hash = "sha256:854bf444933e37f5824ae7bfc1e98d5bce2ebe4160d46b5edf346a89358e99da"},
     {file = "colorama-0.4.5.tar.gz", hash = "sha256:e6c6b4334fc50988a639d9b98aa429a0b57da6e17b9a44f0451f930b6967b7a4"},
 ]
 coverage = [
-    {file = "coverage-5.5-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:b6d534e4b2ab35c9f93f46229363e17f63c53ad01330df9f2d6bd1187e5eaacf"},
-    {file = "coverage-5.5-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:b7895207b4c843c76a25ab8c1e866261bcfe27bfaa20c192de5190121770672b"},
-    {file = "coverage-5.5-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:c2723d347ab06e7ddad1a58b2a821218239249a9e4365eaff6649d31180c1669"},
-    {file = "coverage-5.5-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:900fbf7759501bc7807fd6638c947d7a831fc9fdf742dc10f02956ff7220fa90"},
-    {file = "coverage-5.5-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:004d1880bed2d97151facef49f08e255a20ceb6f9432df75f4eef018fdd5a78c"},
-    {file = "coverage-5.5-cp27-cp27m-win32.whl", hash = "sha256:06191eb60f8d8a5bc046f3799f8a07a2d7aefb9504b0209aff0b47298333302a"},
-    {file = "coverage-5.5-cp27-cp27m-win_amd64.whl", hash = "sha256:7501140f755b725495941b43347ba8a2777407fc7f250d4f5a7d2a1050ba8e82"},
-    {file = "coverage-5.5-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:372da284cfd642d8e08ef606917846fa2ee350f64994bebfbd3afb0040436905"},
-    {file = "coverage-5.5-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:8963a499849a1fc54b35b1c9f162f4108017b2e6db2c46c1bed93a72262ed083"},
-    {file = "coverage-5.5-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:869a64f53488f40fa5b5b9dcb9e9b2962a66a87dab37790f3fcfb5144b996ef5"},
-    {file = "coverage-5.5-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:4a7697d8cb0f27399b0e393c0b90f0f1e40c82023ea4d45d22bce7032a5d7b81"},
-    {file = "coverage-5.5-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:8d0a0725ad7c1a0bcd8d1b437e191107d457e2ec1084b9f190630a4fb1af78e6"},
-    {file = "coverage-5.5-cp310-cp310-manylinux1_x86_64.whl", hash = "sha256:51cb9476a3987c8967ebab3f0fe144819781fca264f57f89760037a2ea191cb0"},
-    {file = "coverage-5.5-cp310-cp310-win_amd64.whl", hash = "sha256:c0891a6a97b09c1f3e073a890514d5012eb256845c451bd48f7968ef939bf4ae"},
-    {file = "coverage-5.5-cp35-cp35m-macosx_10_9_x86_64.whl", hash = "sha256:3487286bc29a5aa4b93a072e9592f22254291ce96a9fbc5251f566b6b7343cdb"},
-    {file = "coverage-5.5-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:deee1077aae10d8fa88cb02c845cfba9b62c55e1183f52f6ae6a2df6a2187160"},
-    {file = "coverage-5.5-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:f11642dddbb0253cc8853254301b51390ba0081750a8ac03f20ea8103f0c56b6"},
-    {file = "coverage-5.5-cp35-cp35m-manylinux2010_i686.whl", hash = "sha256:6c90e11318f0d3c436a42409f2749ee1a115cd8b067d7f14c148f1ce5574d701"},
-    {file = "coverage-5.5-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:30c77c1dc9f253283e34c27935fded5015f7d1abe83bc7821680ac444eaf7793"},
-    {file = "coverage-5.5-cp35-cp35m-win32.whl", hash = "sha256:9a1ef3b66e38ef8618ce5fdc7bea3d9f45f3624e2a66295eea5e57966c85909e"},
-    {file = "coverage-5.5-cp35-cp35m-win_amd64.whl", hash = "sha256:972c85d205b51e30e59525694670de6a8a89691186012535f9d7dbaa230e42c3"},
-    {file = "coverage-5.5-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:af0e781009aaf59e25c5a678122391cb0f345ac0ec272c7961dc5455e1c40066"},
-    {file = "coverage-5.5-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:74d881fc777ebb11c63736622b60cb9e4aee5cace591ce274fb69e582a12a61a"},
-    {file = "coverage-5.5-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:92b017ce34b68a7d67bd6d117e6d443a9bf63a2ecf8567bb3d8c6c7bc5014465"},
-    {file = "coverage-5.5-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:d636598c8305e1f90b439dbf4f66437de4a5e3c31fdf47ad29542478c8508bbb"},
-    {file = "coverage-5.5-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:41179b8a845742d1eb60449bdb2992196e211341818565abded11cfa90efb821"},
-    {file = "coverage-5.5-cp36-cp36m-win32.whl", hash = "sha256:040af6c32813fa3eae5305d53f18875bedd079960822ef8ec067a66dd8afcd45"},
-    {file = "coverage-5.5-cp36-cp36m-win_amd64.whl", hash = "sha256:5fec2d43a2cc6965edc0bb9e83e1e4b557f76f843a77a2496cbe719583ce8184"},
-    {file = "coverage-5.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:18ba8bbede96a2c3dde7b868de9dcbd55670690af0988713f0603f037848418a"},
-    {file = "coverage-5.5-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:2910f4d36a6a9b4214bb7038d537f015346f413a975d57ca6b43bf23d6563b53"},
-    {file = "coverage-5.5-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:f0b278ce10936db1a37e6954e15a3730bea96a0997c26d7fee88e6c396c2086d"},
-    {file = "coverage-5.5-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:796c9c3c79747146ebd278dbe1e5c5c05dd6b10cc3bcb8389dfdf844f3ead638"},
-    {file = "coverage-5.5-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:53194af30d5bad77fcba80e23a1441c71abfb3e01192034f8246e0d8f99528f3"},
-    {file = "coverage-5.5-cp37-cp37m-win32.whl", hash = "sha256:184a47bbe0aa6400ed2d41d8e9ed868b8205046518c52464fde713ea06e3a74a"},
-    {file = "coverage-5.5-cp37-cp37m-win_amd64.whl", hash = "sha256:2949cad1c5208b8298d5686d5a85b66aae46d73eec2c3e08c817dd3513e5848a"},
-    {file = "coverage-5.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:217658ec7187497e3f3ebd901afdca1af062b42cfe3e0dafea4cced3983739f6"},
-    {file = "coverage-5.5-cp38-cp38-manylinux1_i686.whl", hash = "sha256:1aa846f56c3d49205c952d8318e76ccc2ae23303351d9270ab220004c580cfe2"},
-    {file = "coverage-5.5-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:24d4a7de75446be83244eabbff746d66b9240ae020ced65d060815fac3423759"},
-    {file = "coverage-5.5-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:d1f8bf7b90ba55699b3a5e44930e93ff0189aa27186e96071fac7dd0d06a1873"},
-    {file = "coverage-5.5-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:970284a88b99673ccb2e4e334cfb38a10aab7cd44f7457564d11898a74b62d0a"},
-    {file = "coverage-5.5-cp38-cp38-win32.whl", hash = "sha256:01d84219b5cdbfc8122223b39a954820929497a1cb1422824bb86b07b74594b6"},
-    {file = "coverage-5.5-cp38-cp38-win_amd64.whl", hash = "sha256:2e0d881ad471768bf6e6c2bf905d183543f10098e3b3640fc029509530091502"},
-    {file = "coverage-5.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d1f9ce122f83b2305592c11d64f181b87153fc2c2bbd3bb4a3dde8303cfb1a6b"},
-    {file = "coverage-5.5-cp39-cp39-manylinux1_i686.whl", hash = "sha256:13c4ee887eca0f4c5a247b75398d4114c37882658300e153113dafb1d76de529"},
-    {file = "coverage-5.5-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:52596d3d0e8bdf3af43db3e9ba8dcdaac724ba7b5ca3f6358529d56f7a166f8b"},
-    {file = "coverage-5.5-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:2cafbbb3af0733db200c9b5f798d18953b1a304d3f86a938367de1567f4b5bff"},
-    {file = "coverage-5.5-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:44d654437b8ddd9eee7d1eaee28b7219bec228520ff809af170488fd2fed3e2b"},
-    {file = "coverage-5.5-cp39-cp39-win32.whl", hash = "sha256:d314ed732c25d29775e84a960c3c60808b682c08d86602ec2c3008e1202e3bb6"},
-    {file = "coverage-5.5-cp39-cp39-win_amd64.whl", hash = "sha256:13034c4409db851670bc9acd836243aeee299949bd5673e11844befcb0149f03"},
-    {file = "coverage-5.5-pp36-none-any.whl", hash = "sha256:f030f8873312a16414c0d8e1a1ddff2d3235655a2174e3648b4fa66b3f2f1079"},
-    {file = "coverage-5.5-pp37-none-any.whl", hash = "sha256:2a3859cb82dcbda1cfd3e6f71c27081d18aa251d20a17d87d26d4cd216fb0af4"},
-    {file = "coverage-5.5.tar.gz", hash = "sha256:ebe78fe9a0e874362175b02371bdfbee64d8edc42a044253ddf4ee7d3c15212c"},
+    {file = "coverage-6.5.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ef8674b0ee8cc11e2d574e3e2998aea5df5ab242e012286824ea3c6970580e53"},
+    {file = "coverage-6.5.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:784f53ebc9f3fd0e2a3f6a78b2be1bd1f5575d7863e10c6e12504f240fd06660"},
+    {file = "coverage-6.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b4a5be1748d538a710f87542f22c2cad22f80545a847ad91ce45e77417293eb4"},
+    {file = "coverage-6.5.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:83516205e254a0cb77d2d7bb3632ee019d93d9f4005de31dca0a8c3667d5bc04"},
+    {file = "coverage-6.5.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:af4fffaffc4067232253715065e30c5a7ec6faac36f8fc8d6f64263b15f74db0"},
+    {file = "coverage-6.5.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:97117225cdd992a9c2a5515db1f66b59db634f59d0679ca1fa3fe8da32749cae"},
+    {file = "coverage-6.5.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:a1170fa54185845505fbfa672f1c1ab175446c887cce8212c44149581cf2d466"},
+    {file = "coverage-6.5.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:11b990d520ea75e7ee8dcab5bc908072aaada194a794db9f6d7d5cfd19661e5a"},
+    {file = "coverage-6.5.0-cp310-cp310-win32.whl", hash = "sha256:5dbec3b9095749390c09ab7c89d314727f18800060d8d24e87f01fb9cfb40b32"},
+    {file = "coverage-6.5.0-cp310-cp310-win_amd64.whl", hash = "sha256:59f53f1dc5b656cafb1badd0feb428c1e7bc19b867479ff72f7a9dd9b479f10e"},
+    {file = "coverage-6.5.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4a5375e28c5191ac38cca59b38edd33ef4cc914732c916f2929029b4bfb50795"},
+    {file = "coverage-6.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c4ed2820d919351f4167e52425e096af41bfabacb1857186c1ea32ff9983ed75"},
+    {file = "coverage-6.5.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:33a7da4376d5977fbf0a8ed91c4dffaaa8dbf0ddbf4c8eea500a2486d8bc4d7b"},
+    {file = "coverage-6.5.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a8fb6cf131ac4070c9c5a3e21de0f7dc5a0fbe8bc77c9456ced896c12fcdad91"},
+    {file = "coverage-6.5.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:a6b7d95969b8845250586f269e81e5dfdd8ff828ddeb8567a4a2eaa7313460c4"},
+    {file = "coverage-6.5.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:1ef221513e6f68b69ee9e159506d583d31aa3567e0ae84eaad9d6ec1107dddaa"},
+    {file = "coverage-6.5.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:cca4435eebea7962a52bdb216dec27215d0df64cf27fc1dd538415f5d2b9da6b"},
+    {file = "coverage-6.5.0-cp311-cp311-win32.whl", hash = "sha256:98e8a10b7a314f454d9eff4216a9a94d143a7ee65018dd12442e898ee2310578"},
+    {file = "coverage-6.5.0-cp311-cp311-win_amd64.whl", hash = "sha256:bc8ef5e043a2af066fa8cbfc6e708d58017024dc4345a1f9757b329a249f041b"},
+    {file = "coverage-6.5.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:4433b90fae13f86fafff0b326453dd42fc9a639a0d9e4eec4d366436d1a41b6d"},
+    {file = "coverage-6.5.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f4f05d88d9a80ad3cac6244d36dd89a3c00abc16371769f1340101d3cb899fc3"},
+    {file = "coverage-6.5.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:94e2565443291bd778421856bc975d351738963071e9b8839ca1fc08b42d4bef"},
+    {file = "coverage-6.5.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:027018943386e7b942fa832372ebc120155fd970837489896099f5cfa2890f79"},
+    {file = "coverage-6.5.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:255758a1e3b61db372ec2736c8e2a1fdfaf563977eedbdf131de003ca5779b7d"},
+    {file = "coverage-6.5.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:851cf4ff24062c6aec510a454b2584f6e998cada52d4cb58c5e233d07172e50c"},
+    {file = "coverage-6.5.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:12adf310e4aafddc58afdb04d686795f33f4d7a6fa67a7a9d4ce7d6ae24d949f"},
+    {file = "coverage-6.5.0-cp37-cp37m-win32.whl", hash = "sha256:b5604380f3415ba69de87a289a2b56687faa4fe04dbee0754bfcae433489316b"},
+    {file = "coverage-6.5.0-cp37-cp37m-win_amd64.whl", hash = "sha256:4a8dbc1f0fbb2ae3de73eb0bdbb914180c7abfbf258e90b311dcd4f585d44bd2"},
+    {file = "coverage-6.5.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:d900bb429fdfd7f511f868cedd03a6bbb142f3f9118c09b99ef8dc9bf9643c3c"},
+    {file = "coverage-6.5.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2198ea6fc548de52adc826f62cb18554caedfb1d26548c1b7c88d8f7faa8f6ba"},
+    {file = "coverage-6.5.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c4459b3de97b75e3bd6b7d4b7f0db13f17f504f3d13e2a7c623786289dd670e"},
+    {file = "coverage-6.5.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:20c8ac5386253717e5ccc827caad43ed66fea0efe255727b1053a8154d952398"},
+    {file = "coverage-6.5.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6b07130585d54fe8dff3d97b93b0e20290de974dc8177c320aeaf23459219c0b"},
+    {file = "coverage-6.5.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:dbdb91cd8c048c2b09eb17713b0c12a54fbd587d79adcebad543bc0cd9a3410b"},
+    {file = "coverage-6.5.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:de3001a203182842a4630e7b8d1a2c7c07ec1b45d3084a83d5d227a3806f530f"},
+    {file = "coverage-6.5.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:e07f4a4a9b41583d6eabec04f8b68076ab3cd44c20bd29332c6572dda36f372e"},
+    {file = "coverage-6.5.0-cp38-cp38-win32.whl", hash = "sha256:6d4817234349a80dbf03640cec6109cd90cba068330703fa65ddf56b60223a6d"},
+    {file = "coverage-6.5.0-cp38-cp38-win_amd64.whl", hash = "sha256:7ccf362abd726b0410bf8911c31fbf97f09f8f1061f8c1cf03dfc4b6372848f6"},
+    {file = "coverage-6.5.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:633713d70ad6bfc49b34ead4060531658dc6dfc9b3eb7d8a716d5873377ab745"},
+    {file = "coverage-6.5.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:95203854f974e07af96358c0b261f1048d8e1083f2de9b1c565e1be4a3a48cfc"},
+    {file = "coverage-6.5.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b9023e237f4c02ff739581ef35969c3739445fb059b060ca51771e69101efffe"},
+    {file = "coverage-6.5.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:265de0fa6778d07de30bcf4d9dc471c3dc4314a23a3c6603d356a3c9abc2dfcf"},
+    {file = "coverage-6.5.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f830ed581b45b82451a40faabb89c84e1a998124ee4212d440e9c6cf70083e5"},
+    {file = "coverage-6.5.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:7b6be138d61e458e18d8e6ddcddd36dd96215edfe5f1168de0b1b32635839b62"},
+    {file = "coverage-6.5.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:42eafe6778551cf006a7c43153af1211c3aaab658d4d66fa5fcc021613d02518"},
+    {file = "coverage-6.5.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:723e8130d4ecc8f56e9a611e73b31219595baa3bb252d539206f7bbbab6ffc1f"},
+    {file = "coverage-6.5.0-cp39-cp39-win32.whl", hash = "sha256:d9ecf0829c6a62b9b573c7bb6d4dcd6ba8b6f80be9ba4fc7ed50bf4ac9aecd72"},
+    {file = "coverage-6.5.0-cp39-cp39-win_amd64.whl", hash = "sha256:fc2af30ed0d5ae0b1abdb4ebdce598eafd5b35397d4d75deb341a614d333d987"},
+    {file = "coverage-6.5.0-pp36.pp37.pp38-none-any.whl", hash = "sha256:1431986dac3923c5945271f169f59c45b8802a114c8f548d611f2015133df77a"},
+    {file = "coverage-6.5.0.tar.gz", hash = "sha256:f642e90754ee3e06b0e7e51bce3379590e76b7f76b708e1a71ff043f87025c84"},
 ]
 crashtest = [
     {file = "crashtest-0.3.1-py3-none-any.whl", hash = "sha256:300f4b0825f57688b47b6d70c6a31de33512eb2fa1ac614f780939aa0cf91680"},
     {file = "crashtest-0.3.1.tar.gz", hash = "sha256:42ca7b6ce88b6c7433e2ce47ea884e91ec93104a4b754998be498a8e6c3d37dd"},
 ]
 cryptography = [
-    {file = "cryptography-3.2.1-cp27-cp27m-macosx_10_10_x86_64.whl", hash = "sha256:6dc59630ecce8c1f558277ceb212c751d6730bd12c80ea96b4ac65637c4f55e7"},
-    {file = "cryptography-3.2.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:75e8e6684cf0034f6bf2a97095cb95f81537b12b36a8fedf06e73050bb171c2d"},
-    {file = "cryptography-3.2.1-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:4e7268a0ca14536fecfdf2b00297d4e407da904718658c1ff1961c713f90fd33"},
-    {file = "cryptography-3.2.1-cp27-cp27m-win32.whl", hash = "sha256:7117319b44ed1842c617d0a452383a5a052ec6aa726dfbaffa8b94c910444297"},
-    {file = "cryptography-3.2.1-cp27-cp27m-win_amd64.whl", hash = "sha256:a733671100cd26d816eed39507e585c156e4498293a907029969234e5e634bc4"},
-    {file = "cryptography-3.2.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:a75f306a16d9f9afebfbedc41c8c2351d8e61e818ba6b4c40815e2b5740bb6b8"},
-    {file = "cryptography-3.2.1-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:5849d59358547bf789ee7e0d7a9036b2d29e9a4ddf1ce5e06bb45634f995c53e"},
-    {file = "cryptography-3.2.1-cp35-abi3-macosx_10_10_x86_64.whl", hash = "sha256:bd717aa029217b8ef94a7d21632a3bb5a4e7218a4513d2521c2a2fd63011e98b"},
-    {file = "cryptography-3.2.1-cp35-abi3-manylinux1_x86_64.whl", hash = "sha256:efe15aca4f64f3a7ea0c09c87826490e50ed166ce67368a68f315ea0807a20df"},
-    {file = "cryptography-3.2.1-cp35-abi3-manylinux2010_x86_64.whl", hash = "sha256:32434673d8505b42c0de4de86da8c1620651abd24afe91ae0335597683ed1b77"},
-    {file = "cryptography-3.2.1-cp35-abi3-manylinux2014_aarch64.whl", hash = "sha256:7b8d9d8d3a9bd240f453342981f765346c87ade811519f98664519696f8e6ab7"},
-    {file = "cryptography-3.2.1-cp35-cp35m-win32.whl", hash = "sha256:d3545829ab42a66b84a9aaabf216a4dce7f16dbc76eb69be5c302ed6b8f4a29b"},
-    {file = "cryptography-3.2.1-cp35-cp35m-win_amd64.whl", hash = "sha256:a4e27ed0b2504195f855b52052eadcc9795c59909c9d84314c5408687f933fc7"},
-    {file = "cryptography-3.2.1-cp36-abi3-win32.whl", hash = "sha256:13b88a0bd044b4eae1ef40e265d006e34dbcde0c2f1e15eb9896501b2d8f6c6f"},
-    {file = "cryptography-3.2.1-cp36-abi3-win_amd64.whl", hash = "sha256:07ca431b788249af92764e3be9a488aa1d39a0bc3be313d826bbec690417e538"},
-    {file = "cryptography-3.2.1-cp36-cp36m-win32.whl", hash = "sha256:a035a10686532b0587d58a606004aa20ad895c60c4d029afa245802347fab57b"},
-    {file = "cryptography-3.2.1-cp36-cp36m-win_amd64.whl", hash = "sha256:d26a2557d8f9122f9bf445fc7034242f4375bd4e95ecda007667540270965b13"},
-    {file = "cryptography-3.2.1-cp37-cp37m-win32.whl", hash = "sha256:545a8550782dda68f8cdc75a6e3bf252017aa8f75f19f5a9ca940772fc0cb56e"},
-    {file = "cryptography-3.2.1-cp37-cp37m-win_amd64.whl", hash = "sha256:55d0b896631412b6f0c7de56e12eb3e261ac347fbaa5d5e705291a9016e5f8cb"},
-    {file = "cryptography-3.2.1-cp38-cp38-win32.whl", hash = "sha256:3cd75a683b15576cfc822c7c5742b3276e50b21a06672dc3a800a2d5da4ecd1b"},
-    {file = "cryptography-3.2.1-cp38-cp38-win_amd64.whl", hash = "sha256:d25cecbac20713a7c3bc544372d42d8eafa89799f492a43b79e1dfd650484851"},
-    {file = "cryptography-3.2.1.tar.gz", hash = "sha256:d3d5e10be0cf2a12214ddee45c6bd203dab435e3d83b4560c03066eda600bfe3"},
-    {file = "cryptography-37.0.4-cp36-abi3-macosx_10_10_universal2.whl", hash = "sha256:549153378611c0cca1042f20fd9c5030d37a72f634c9326e225c9f666d472884"},
-    {file = "cryptography-37.0.4-cp36-abi3-macosx_10_10_x86_64.whl", hash = "sha256:a958c52505c8adf0d3822703078580d2c0456dd1d27fabfb6f76fe63d2971cd6"},
-    {file = "cryptography-37.0.4-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f721d1885ecae9078c3f6bbe8a88bc0786b6e749bf32ccec1ef2b18929a05046"},
-    {file = "cryptography-37.0.4-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:3d41b965b3380f10e4611dbae366f6dc3cefc7c9ac4e8842a806b9672ae9add5"},
-    {file = "cryptography-37.0.4-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:80f49023dd13ba35f7c34072fa17f604d2f19bf0989f292cedf7ab5770b87a0b"},
-    {file = "cryptography-37.0.4-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f2dcb0b3b63afb6df7fd94ec6fbddac81b5492513f7b0436210d390c14d46ee8"},
-    {file = "cryptography-37.0.4-cp36-abi3-manylinux_2_24_x86_64.whl", hash = "sha256:b7f8dd0d4c1f21759695c05a5ec8536c12f31611541f8904083f3dc582604280"},
-    {file = "cryptography-37.0.4-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:30788e070800fec9bbcf9faa71ea6d8068f5136f60029759fd8c3efec3c9dcb3"},
-    {file = "cryptography-37.0.4-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:190f82f3e87033821828f60787cfa42bff98404483577b591429ed99bed39d59"},
-    {file = "cryptography-37.0.4-cp36-abi3-win32.whl", hash = "sha256:b62439d7cd1222f3da897e9a9fe53bbf5c104fff4d60893ad1355d4c14a24157"},
-    {file = "cryptography-37.0.4-cp36-abi3-win_amd64.whl", hash = "sha256:f7a6de3e98771e183645181b3627e2563dcde3ce94a9e42a3f427d2255190327"},
-    {file = "cryptography-37.0.4-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6bc95ed67b6741b2607298f9ea4932ff157e570ef456ef7ff0ef4884a134cc4b"},
-    {file = "cryptography-37.0.4-pp37-pypy37_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:f8c0a6e9e1dd3eb0414ba320f85da6b0dcbd543126e30fcc546e7372a7fbf3b9"},
-    {file = "cryptography-37.0.4-pp38-pypy38_pp73-macosx_10_10_x86_64.whl", hash = "sha256:e007f052ed10cc316df59bc90fbb7ff7950d7e2919c9757fd42a2b8ecf8a5f67"},
-    {file = "cryptography-37.0.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7bc997818309f56c0038a33b8da5c0bfbb3f1f067f315f9abd6fc07ad359398d"},
-    {file = "cryptography-37.0.4-pp38-pypy38_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:d204833f3c8a33bbe11eda63a54b1aad7aa7456ed769a982f21ec599ba5fa282"},
-    {file = "cryptography-37.0.4-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:75976c217f10d48a8b5a8de3d70c454c249e4b91851f6838a4e48b8f41eb71aa"},
-    {file = "cryptography-37.0.4-pp39-pypy39_pp73-macosx_10_10_x86_64.whl", hash = "sha256:7099a8d55cd49b737ffc99c17de504f2257e3787e02abe6d1a6d136574873441"},
-    {file = "cryptography-37.0.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2be53f9f5505673eeda5f2736bea736c40f051a739bfae2f92d18aed1eb54596"},
-    {file = "cryptography-37.0.4-pp39-pypy39_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:91ce48d35f4e3d3f1d83e29ef4a9267246e6a3be51864a5b7d2247d5086fa99a"},
-    {file = "cryptography-37.0.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:4c590ec31550a724ef893c50f9a97a0c14e9c851c85621c5650d699a7b88f7ab"},
-    {file = "cryptography-37.0.4.tar.gz", hash = "sha256:63f9c17c0e2474ccbebc9302ce2f07b55b3b3fcb211ded18a42d5764f5c10a82"},
+    {file = "cryptography-38.0.1-cp36-abi3-macosx_10_10_universal2.whl", hash = "sha256:10d1f29d6292fc95acb597bacefd5b9e812099d75a6469004fd38ba5471a977f"},
+    {file = "cryptography-38.0.1-cp36-abi3-macosx_10_10_x86_64.whl", hash = "sha256:3fc26e22840b77326a764ceb5f02ca2d342305fba08f002a8c1f139540cdfaad"},
+    {file = "cryptography-38.0.1-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:3b72c360427889b40f36dc214630e688c2fe03e16c162ef0aa41da7ab1455153"},
+    {file = "cryptography-38.0.1-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:194044c6b89a2f9f169df475cc167f6157eb9151cc69af8a2a163481d45cc407"},
+    {file = "cryptography-38.0.1-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ca9f6784ea96b55ff41708b92c3f6aeaebde4c560308e5fbbd3173fbc466e94e"},
+    {file = "cryptography-38.0.1-cp36-abi3-manylinux_2_24_x86_64.whl", hash = "sha256:16fa61e7481f4b77ef53991075de29fc5bacb582a1244046d2e8b4bb72ef66d0"},
+    {file = "cryptography-38.0.1-cp36-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:d4ef6cc305394ed669d4d9eebf10d3a101059bdcf2669c366ec1d14e4fb227bd"},
+    {file = "cryptography-38.0.1-cp36-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:3261725c0ef84e7592597606f6583385fed2a5ec3909f43bc475ade9729a41d6"},
+    {file = "cryptography-38.0.1-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:0297ffc478bdd237f5ca3a7dc96fc0d315670bfa099c04dc3a4a2172008a405a"},
+    {file = "cryptography-38.0.1-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:89ed49784ba88c221756ff4d4755dbc03b3c8d2c5103f6d6b4f83a0fb1e85294"},
+    {file = "cryptography-38.0.1-cp36-abi3-win32.whl", hash = "sha256:ac7e48f7e7261207d750fa7e55eac2d45f720027d5703cd9007e9b37bbb59ac0"},
+    {file = "cryptography-38.0.1-cp36-abi3-win_amd64.whl", hash = "sha256:ad7353f6ddf285aeadfaf79e5a6829110106ff8189391704c1d8801aa0bae45a"},
+    {file = "cryptography-38.0.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:896dd3a66959d3a5ddcfc140a53391f69ff1e8f25d93f0e2e7830c6de90ceb9d"},
+    {file = "cryptography-38.0.1-pp37-pypy37_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:d3971e2749a723e9084dd507584e2a2761f78ad2c638aa31e80bc7a15c9db4f9"},
+    {file = "cryptography-38.0.1-pp37-pypy37_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:79473cf8a5cbc471979bd9378c9f425384980fcf2ab6534b18ed7d0d9843987d"},
+    {file = "cryptography-38.0.1-pp38-pypy38_pp73-macosx_10_10_x86_64.whl", hash = "sha256:d9e69ae01f99abe6ad646947bba8941e896cb3aa805be2597a0400e0764b5818"},
+    {file = "cryptography-38.0.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5067ee7f2bce36b11d0e334abcd1ccf8c541fc0bbdaf57cdd511fdee53e879b6"},
+    {file = "cryptography-38.0.1-pp38-pypy38_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:3e3a2599e640927089f932295a9a247fc40a5bdf69b0484532f530471a382750"},
+    {file = "cryptography-38.0.1-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:c2e5856248a416767322c8668ef1845ad46ee62629266f84a8f007a317141013"},
+    {file = "cryptography-38.0.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:64760ba5331e3f1794d0bcaabc0d0c39e8c60bf67d09c93dc0e54189dfd7cfe5"},
+    {file = "cryptography-38.0.1-pp39-pypy39_pp73-macosx_10_10_x86_64.whl", hash = "sha256:b6c9b706316d7b5a137c35e14f4103e2115b088c412140fdbd5f87c73284df61"},
+    {file = "cryptography-38.0.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b0163a849b6f315bf52815e238bc2b2346604413fa7c1601eea84bcddb5fb9ac"},
+    {file = "cryptography-38.0.1-pp39-pypy39_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:d1a5bd52d684e49a36582193e0b89ff267704cd4025abefb9e26803adeb3e5fb"},
+    {file = "cryptography-38.0.1-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:765fa194a0f3372d83005ab83ab35d7c5526c4e22951e46059b8ac678b44fa5a"},
+    {file = "cryptography-38.0.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:52e7bee800ec869b4031093875279f1ff2ed12c1e2f74923e8f49c916afd1d3b"},
+    {file = "cryptography-38.0.1.tar.gz", hash = "sha256:1db3d807a14931fa317f96435695d9ec386be7b84b618cc61cfa5d08b0ae33d7"},
+]
+deepdiff = [
+    {file = "deepdiff-5.8.1-py3-none-any.whl", hash = "sha256:e9aea49733f34fab9a0897038d8f26f9d94a97db1790f1b814cced89e9e0d2b7"},
+    {file = "deepdiff-5.8.1.tar.gz", hash = "sha256:8d4eb2c4e6cbc80b811266419cb71dd95a157094a3947ccf937a94d44943c7b8"},
 ]
 distlib = [
-    {file = "distlib-0.3.4-py2.py3-none-any.whl", hash = "sha256:6564fe0a8f51e734df6333d08b8b94d4ea8ee6b99b5ed50613f731fd4089f34b"},
-    {file = "distlib-0.3.4.zip", hash = "sha256:e4b58818180336dc9c529bfb9a0b58728ffc09ad92027a3f30b7cd91e3458579"},
+    {file = "distlib-0.3.6-py2.py3-none-any.whl", hash = "sha256:f35c4b692542ca110de7ef0bea44d73981caeb34ca0b9b6b2e6d7790dda8f80e"},
+    {file = "distlib-0.3.6.tar.gz", hash = "sha256:14bad2d9b04d3a36127ac97f30b12a19268f211063d8f8ee4f47108896e11b46"},
+]
+dulwich = [
+    {file = "dulwich-0.20.46-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:6676196e9cf377cde62aa2f5d741e93207437343e0c62368bd0d784c322a3c49"},
+    {file = "dulwich-0.20.46-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0a1ca555a3eafe7388d6cb81bb08f34608a1592500f0bd4c26734c91d208a546"},
+    {file = "dulwich-0.20.46-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:769442c9657b10fc35ac625beeaf440540c9288c96fcfaba3e58adf745c5cafd"},
+    {file = "dulwich-0.20.46-cp310-cp310-win32.whl", hash = "sha256:de22a54f68c6c4e97f9b924abd46da4618536d7934b9849066be9fc5cd31205d"},
+    {file = "dulwich-0.20.46-cp310-cp310-win_amd64.whl", hash = "sha256:42fa5a68908556eb6c40f231a67caf6a4660588aad707a9d6b334fa1d8f04bf7"},
+    {file = "dulwich-0.20.46-cp311-cp311-macosx_10_15_x86_64.whl", hash = "sha256:3e16376031466848e44aabf3489fafb054482143744b21167dbd168731041c74"},
+    {file = "dulwich-0.20.46-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:153c7512587384a290c60fef330f1ab397a59559e19e8b02a0169ff21b4c69fb"},
+    {file = "dulwich-0.20.46-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a5b68bd815cd2769c75e5a78708eb0440612df19b370a977aa9e01a056baa9ed"},
+    {file = "dulwich-0.20.46-cp311-cp311-win32.whl", hash = "sha256:b1339bca70764eb8e780d80c72e7c1cb4651201dc9e43ec5d616bf51eb3bb3a6"},
+    {file = "dulwich-0.20.46-cp311-cp311-win_amd64.whl", hash = "sha256:1162fdafb2abdfe66649617061f3853cb26384fade1f6884f6fe6e9c570a7552"},
+    {file = "dulwich-0.20.46-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:6826512f778eaa47e2e8c0a46cdc555958f9f5286771490b8642b4b508ea5d25"},
+    {file = "dulwich-0.20.46-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:100d39bc18196a07c521fd5f60f78f397493303daa0b8690216864bbc621cd5d"},
+    {file = "dulwich-0.20.46-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c4cd2cd7baa81246bdc8c5272d4e9224e2255da7a0618a220aab5e07b9888e9b"},
+    {file = "dulwich-0.20.46-cp36-cp36m-win32.whl", hash = "sha256:6eed5a3194d64112605fc0f638f4fa91771495e8674fa3e6d6b33bf150d297d5"},
+    {file = "dulwich-0.20.46-cp36-cp36m-win_amd64.whl", hash = "sha256:9ca4d73987f5b0e2e843497876f9bb39a47384a2e50597a85542285f5c890293"},
+    {file = "dulwich-0.20.46-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:b9f49de83911eed7adbe83136229837ef9d102e42dbe6aacb1a18be45c997ace"},
+    {file = "dulwich-0.20.46-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d38be7d3a78d608ecab3348f7920d6b9002e7972dd245206dc8075cfdb91621d"},
+    {file = "dulwich-0.20.46-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f4b7a7feb966a4669c254b18385fe0b3c639f3b1f5ddef0d9e083364cc762847"},
+    {file = "dulwich-0.20.46-cp37-cp37m-win32.whl", hash = "sha256:f9552ac246bceab1c5cdd1ec3cfe9446fe76b9853eaf59d3244df03eb27fd3fe"},
+    {file = "dulwich-0.20.46-cp37-cp37m-win_amd64.whl", hash = "sha256:90a075aeb0fdbad7e18b9db3af161e3d635e2b7697b7a4b467e6844a13b0b210"},
+    {file = "dulwich-0.20.46-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:8d6fee82cedb2362942d9ef94061901f7e07d7d8674e4c7b6fceeef7822ae275"},
+    {file = "dulwich-0.20.46-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:669c6b3d82996518a7fec4604771bd285e23f0860f41f565fef5987265d431d9"},
+    {file = "dulwich-0.20.46-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd3eac228117487a959ac8f49ea2787eac34acc69999fe7adae70b23e3c3571c"},
+    {file = "dulwich-0.20.46-cp38-cp38-win32.whl", hash = "sha256:92024f572d32680e021219f77015c8b443c38022e502b7f51ad7cf51a6285a36"},
+    {file = "dulwich-0.20.46-cp38-cp38-win_amd64.whl", hash = "sha256:d928de1eba0326a2a8a52ed94c9bf7c315ff4db606a1aa3ae688d39574f93267"},
+    {file = "dulwich-0.20.46-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:a5d1b7a3a7d84a5dedbb90092e00097357106b9642ac08a96c2ae89ccd8afd9a"},
+    {file = "dulwich-0.20.46-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b739d759c10e2af7c964dcc97fd4e5dc49e8567d080eed8906fc422c79b7fdcf"},
+    {file = "dulwich-0.20.46-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9fc7a4f633f5468453d5dd84a753cd99d4433f0397437229a0a8b10347935591"},
+    {file = "dulwich-0.20.46-cp39-cp39-win32.whl", hash = "sha256:525115c4d1fbf60a5fe98f340b4ca597ba47b2c75d9c5ec750dd0e9115ef8ec6"},
+    {file = "dulwich-0.20.46-cp39-cp39-win_amd64.whl", hash = "sha256:73e2585a9fcf1f8cdad8597a0c384c0b365b2e8346463130c96d9ea1478587ae"},
+    {file = "dulwich-0.20.46.tar.gz", hash = "sha256:4f0e88ffff5db1523d93d92f1525fe5fa161318ffbaad502c1b9b3be7a067172"},
+]
+execnet = [
+    {file = "execnet-1.9.0-py2.py3-none-any.whl", hash = "sha256:a295f7cc774947aac58dde7fdc85f4aa00c42adf5d8f5468fc630c1acf30a142"},
+    {file = "execnet-1.9.0.tar.gz", hash = "sha256:8f694f3ba9cc92cab508b152dcfe322153975c29bda272e2fd7f3f00f36e47c5"},
 ]
 filelock = [
-    {file = "filelock-3.2.1-py2.py3-none-any.whl", hash = "sha256:7f07b08d731907441ff40d0c5b81f9512cd968842e0b6264c8bd18a8ce877760"},
-    {file = "filelock-3.2.1.tar.gz", hash = "sha256:9cdd29c411ab196cf4c35a1da684f7b9da723696cb356efa45bf5eb1ff313ee3"},
+    {file = "filelock-3.8.0-py3-none-any.whl", hash = "sha256:617eb4e5eedc82fc5f47b6d61e4d11cb837c56cb4544e39081099fa17ad109d4"},
+    {file = "filelock-3.8.0.tar.gz", hash = "sha256:55447caa666f2198c5b6b13a26d2084d26fa5b115c00d065664b2124680c4edc"},
+]
+flatdict = [
+    {file = "flatdict-4.0.1.tar.gz", hash = "sha256:cd32f08fd31ed21eb09ebc76f06b6bd12046a24f77beb1fd0281917e47f26742"},
 ]
 html5lib = [
     {file = "html5lib-1.1-py2.py3-none-any.whl", hash = "sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d"},
@@ -1051,44 +1228,48 @@ httpretty = [
     {file = "httpretty-1.1.4.tar.gz", hash = "sha256:20de0e5dd5a18292d36d928cc3d6e52f8b2ac73daec40d41eb62dee154933b68"},
 ]
 identify = [
-    {file = "identify-2.4.4-py2.py3-none-any.whl", hash = "sha256:aa68609c7454dbcaae60a01ff6b8df1de9b39fe6e50b1f6107ec81dcda624aa6"},
-    {file = "identify-2.4.4.tar.gz", hash = "sha256:6b4b5031f69c48bf93a646b90de9b381c6b5f560df4cbe0ed3cf7650ae741e4d"},
+    {file = "identify-2.5.6-py2.py3-none-any.whl", hash = "sha256:b276db7ec52d7e89f5bc4653380e33054ddc803d25875952ad90b0f012cbcdaa"},
+    {file = "identify-2.5.6.tar.gz", hash = "sha256:6c32dbd747aa4ceee1df33f25fed0b0f6e0d65721b15bd151307ff7056d50245"},
 ]
 idna = [
-    {file = "idna-2.10-py2.py3-none-any.whl", hash = "sha256:b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0"},
-    {file = "idna-2.10.tar.gz", hash = "sha256:b307872f855b18632ce0c21c5e45be78c0ea7ae4c15c828c20788b26921eb3f6"},
+    {file = "idna-3.4-py3-none-any.whl", hash = "sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2"},
+    {file = "idna-3.4.tar.gz", hash = "sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4"},
 ]
 importlib-metadata = [
-    {file = "importlib_metadata-1.7.0-py2.py3-none-any.whl", hash = "sha256:dc15b2969b4ce36305c51eebe62d418ac7791e9a157911d58bfb1f9ccd8e2070"},
-    {file = "importlib_metadata-1.7.0.tar.gz", hash = "sha256:90bb658cdbbf6d1735b6341ce708fc7024a3e14e99ffdc5783edea9f9b077f83"},
+    {file = "importlib_metadata-4.13.0-py3-none-any.whl", hash = "sha256:8a8a81bcf996e74fee46f0d16bd3eaa382a7eb20fd82445c3ad11f4090334116"},
+    {file = "importlib_metadata-4.13.0.tar.gz", hash = "sha256:dd0173e8f150d6815e098fd354f6414b0f079af4644ddfe90c71e2fc6174346d"},
 ]
 importlib-resources = [
-    {file = "importlib_resources-3.2.1-py2.py3-none-any.whl", hash = "sha256:e2860cf0c4bc999947228d18be154fa3779c5dde0b882bd2d7b3f4d25e698bd6"},
-    {file = "importlib_resources-3.2.1.tar.gz", hash = "sha256:a9fe213ab6452708ec1b3f4ec6f2881b8ab3645cb4e5efb7fea2bbf05a91db3b"},
+    {file = "importlib_resources-5.9.0-py3-none-any.whl", hash = "sha256:f78a8df21a79bcc30cfd400bdc38f314333de7c0fb619763f6b9dabab8268bb7"},
+    {file = "importlib_resources-5.9.0.tar.gz", hash = "sha256:5481e97fb45af8dcf2f798952625591c58fe599d0735d86b10f54de086a61681"},
 ]
 iniconfig = [
     {file = "iniconfig-1.1.1-py2.py3-none-any.whl", hash = "sha256:011e24c64b7f47f6ebd835bb12a743f2fbe9a26d4cecaa7f53bc4f35ee9da8b3"},
     {file = "iniconfig-1.1.1.tar.gz", hash = "sha256:bc3af051d7d14b2ee5ef9969666def0cd1a000e121eaea580d4a313df4b37f32"},
 ]
+"jaraco.classes" = [
+    {file = "jaraco.classes-3.2.3-py3-none-any.whl", hash = "sha256:2353de3288bc6b82120752201c6b1c1a14b058267fa424ed5ce5984e3b922158"},
+    {file = "jaraco.classes-3.2.3.tar.gz", hash = "sha256:89559fa5c1d3c34eff6f631ad80bb21f378dbcbb35dd161fd2c6b93f5be2f98a"},
+]
 jeepney = [
-    {file = "jeepney-0.4.3-py3-none-any.whl", hash = "sha256:d6c6b49683446d2407d2fe3acb7a368a77ff063f9182fe427da15d622adc24cf"},
-    {file = "jeepney-0.4.3.tar.gz", hash = "sha256:3479b861cc2b6407de5188695fa1a8d57e5072d7059322469b62628869b8e36e"},
-    {file = "jeepney-0.7.1-py3-none-any.whl", hash = "sha256:1b5a0ea5c0e7b166b2f5895b91a08c14de8915afda4407fb5022a195224958ac"},
-    {file = "jeepney-0.7.1.tar.gz", hash = "sha256:fa9e232dfa0c498bd0b8a3a73b8d8a31978304dcef0515adc859d4e096f96f4f"},
+    {file = "jeepney-0.8.0-py3-none-any.whl", hash = "sha256:c0a454ad016ca575060802ee4d590dd912e35c122fa04e70306de3d076cce755"},
+    {file = "jeepney-0.8.0.tar.gz", hash = "sha256:5efe48d255973902f6badc3ce55e2aa6c5c3b3bc642059ef3a91247bcfcc5806"},
+]
+jsonschema = [
+    {file = "jsonschema-4.16.0-py3-none-any.whl", hash = "sha256:9e74b8f9738d6a946d70705dc692b74b5429cd0960d58e79ffecfc43b2221eb9"},
+    {file = "jsonschema-4.16.0.tar.gz", hash = "sha256:165059f076eff6971bae5b742fc029a7b4ef3f9bcf04c14e4776a7605de14b23"},
 ]
 keyring = [
-    {file = "keyring-20.0.1-py2.py3-none-any.whl", hash = "sha256:c674f032424b4bffc62abeac5523ec49cc84aed07a480c3233e0baf618efc15c"},
-    {file = "keyring-20.0.1.tar.gz", hash = "sha256:963bfa7f090269d30bdc5e25589e5fd9dad2cf2a7c6f176a7f2386910e5d0d8d"},
-    {file = "keyring-22.3.0-py3-none-any.whl", hash = "sha256:2bc8363ebdd63886126a012057a85c8cb6e143877afa02619ac7dbc9f38a207b"},
-    {file = "keyring-22.3.0.tar.gz", hash = "sha256:16927a444b2c73f983520a48dec79ddab49fe76429ea05b8d528d778c8339522"},
+    {file = "keyring-23.9.3-py3-none-any.whl", hash = "sha256:69732a15cb1433bdfbc3b980a8a36a04878a6cfd7cb99f497b573f31618001c0"},
+    {file = "keyring-23.9.3.tar.gz", hash = "sha256:69b01dd83c42f590250fe7a1f503fc229b14de83857314b1933a3ddbf595c4a5"},
 ]
 lockfile = [
     {file = "lockfile-0.12.2-py2.py3-none-any.whl", hash = "sha256:6c3cb24f344923d30b2785d5ad75182c8ea7ac1b6171b08657258ec7429d50fa"},
     {file = "lockfile-0.12.2.tar.gz", hash = "sha256:6aed02de03cba24efabcd600b30540140634fc06cfa603822d508d5361e9f799"},
 ]
 more-itertools = [
-    {file = "more-itertools-8.13.0.tar.gz", hash = "sha256:a42901a0a5b169d925f6f217cd5a190e32ef54360905b9c39ee7db5313bfec0f"},
-    {file = "more_itertools-8.13.0-py3-none-any.whl", hash = "sha256:c5122bffc5f104d37c1626b8615b511f3427aa5389b94d61e5ef8236bfbc3ddb"},
+    {file = "more-itertools-8.14.0.tar.gz", hash = "sha256:c09443cd3d5438b8dafccd867a6bc1cb0894389e90cb53d227456b0b0bccb750"},
+    {file = "more_itertools-8.14.0-py3-none-any.whl", hash = "sha256:1bc4f91ee5b1b31ac7ceacc17c09befe6a40a503907baf9c839c229b5095cfd2"},
 ]
 msgpack = [
     {file = "msgpack-1.0.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:4ab251d229d10498e9a2f3b1e68ef64cb393394ec477e3370c457f9430ce9250"},
@@ -1144,45 +1325,113 @@ msgpack = [
     {file = "msgpack-1.0.4-cp39-cp39-win_amd64.whl", hash = "sha256:4d5834a2a48965a349da1c5a79760d94a1a0172fbb5ab6b5b33cbf8447e109ce"},
     {file = "msgpack-1.0.4.tar.gz", hash = "sha256:f5d869c18f030202eb412f08b28d2afeea553d6613aee89e200d7aca7ef01f5f"},
 ]
-nodeenv = [
-    {file = "nodeenv-1.6.0-py2.py3-none-any.whl", hash = "sha256:621e6b7076565ddcacd2db0294c0381e01fd28945ab36bcf00f41c5daf63bef7"},
-    {file = "nodeenv-1.6.0.tar.gz", hash = "sha256:3ef13ff90291ba2a4a7a4ff9a979b63ffdd00a464dbe04acf0ea6471517a4c2b"},
+mypy = [
+    {file = "mypy-0.982-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:5085e6f442003fa915aeb0a46d4da58128da69325d8213b4b35cc7054090aed5"},
+    {file = "mypy-0.982-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:41fd1cf9bc0e1c19b9af13a6580ccb66c381a5ee2cf63ee5ebab747a4badeba3"},
+    {file = "mypy-0.982-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f793e3dd95e166b66d50e7b63e69e58e88643d80a3dcc3bcd81368e0478b089c"},
+    {file = "mypy-0.982-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:86ebe67adf4d021b28c3f547da6aa2cce660b57f0432617af2cca932d4d378a6"},
+    {file = "mypy-0.982-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:175f292f649a3af7082fe36620369ffc4661a71005aa9f8297ea473df5772046"},
+    {file = "mypy-0.982-cp310-cp310-win_amd64.whl", hash = "sha256:8ee8c2472e96beb1045e9081de8e92f295b89ac10c4109afdf3a23ad6e644f3e"},
+    {file = "mypy-0.982-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:58f27ebafe726a8e5ccb58d896451dd9a662a511a3188ff6a8a6a919142ecc20"},
+    {file = "mypy-0.982-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d6af646bd46f10d53834a8e8983e130e47d8ab2d4b7a97363e35b24e1d588947"},
+    {file = "mypy-0.982-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:e7aeaa763c7ab86d5b66ff27f68493d672e44c8099af636d433a7f3fa5596d40"},
+    {file = "mypy-0.982-cp37-cp37m-win_amd64.whl", hash = "sha256:724d36be56444f569c20a629d1d4ee0cb0ad666078d59bb84f8f887952511ca1"},
+    {file = "mypy-0.982-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:14d53cdd4cf93765aa747a7399f0961a365bcddf7855d9cef6306fa41de01c24"},
+    {file = "mypy-0.982-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:26ae64555d480ad4b32a267d10cab7aec92ff44de35a7cd95b2b7cb8e64ebe3e"},
+    {file = "mypy-0.982-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:6389af3e204975d6658de4fb8ac16f58c14e1bacc6142fee86d1b5b26aa52bda"},
+    {file = "mypy-0.982-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7b35ce03a289480d6544aac85fa3674f493f323d80ea7226410ed065cd46f206"},
+    {file = "mypy-0.982-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:c6e564f035d25c99fd2b863e13049744d96bd1947e3d3d2f16f5828864506763"},
+    {file = "mypy-0.982-cp38-cp38-win_amd64.whl", hash = "sha256:cebca7fd333f90b61b3ef7f217ff75ce2e287482206ef4a8b18f32b49927b1a2"},
+    {file = "mypy-0.982-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:a705a93670c8b74769496280d2fe6cd59961506c64f329bb179970ff1d24f9f8"},
+    {file = "mypy-0.982-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:75838c649290d83a2b83a88288c1eb60fe7a05b36d46cbea9d22efc790002146"},
+    {file = "mypy-0.982-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:91781eff1f3f2607519c8b0e8518aad8498af1419e8442d5d0afb108059881fc"},
+    {file = "mypy-0.982-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eaa97b9ddd1dd9901a22a879491dbb951b5dec75c3b90032e2baa7336777363b"},
+    {file = "mypy-0.982-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a692a8e7d07abe5f4b2dd32d731812a0175626a90a223d4b58f10f458747dd8a"},
+    {file = "mypy-0.982-cp39-cp39-win_amd64.whl", hash = "sha256:eb7a068e503be3543c4bd329c994103874fa543c1727ba5288393c21d912d795"},
+    {file = "mypy-0.982-py3-none-any.whl", hash = "sha256:1021c241e8b6e1ca5a47e4d52601274ac078a89845cfde66c6d5f769819ffa1d"},
+    {file = "mypy-0.982.tar.gz", hash = "sha256:85f7a343542dc8b1ed0a888cdd34dca56462654ef23aa673907305b260b3d746"},
+]
+mypy-extensions = [
+    {file = "mypy_extensions-0.4.3-py2.py3-none-any.whl", hash = "sha256:090fedd75945a69ae91ce1303b5824f428daf5a028d2f6ab8a299250a846f15d"},
+    {file = "mypy_extensions-0.4.3.tar.gz", hash = "sha256:2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8"},
 ]
-packaging = [
-    {file = "packaging-20.9-py2.py3-none-any.whl", hash = "sha256:67714da7f7bc052e064859c05c595155bd1ee9f69f76557e21f051443c20947a"},
-    {file = "packaging-20.9.tar.gz", hash = "sha256:5b327ac1320dc863dca72f4514ecc086f31186744b84a230374cc1fd776feae5"},
+nodeenv = [
+    {file = "nodeenv-1.7.0-py2.py3-none-any.whl", hash = "sha256:27083a7b96a25f2f5e1d8cb4b6317ee8aeda3bdd121394e5ac54e498028a042e"},
+    {file = "nodeenv-1.7.0.tar.gz", hash = "sha256:e0e7f7dfb85fc5394c6fe1e8fa98131a2473e04311a45afb6508f7cf1836fa2b"},
 ]
-pastel = [
-    {file = "pastel-0.2.1-py2.py3-none-any.whl", hash = "sha256:4349225fcdf6c2bb34d483e523475de5bb04a5c10ef711263452cb37d7dd4364"},
-    {file = "pastel-0.2.1.tar.gz", hash = "sha256:e6581ac04e973cac858828c6202c1e1e81fee1dc7de7683f3e1ffe0bfd8a573d"},
+ordered-set = [
+    {file = "ordered-set-4.1.0.tar.gz", hash = "sha256:694a8e44c87657c59292ede72891eb91d34131f6531463aab3009191c77364a8"},
+    {file = "ordered_set-4.1.0-py3-none-any.whl", hash = "sha256:046e1132c71fcf3330438a539928932caf51ddbc582496833e23de611de14562"},
 ]
-pathlib2 = [
-    {file = "pathlib2-2.3.7.post1-py2.py3-none-any.whl", hash = "sha256:5266a0fd000452f1b3467d782f079a4343c63aaa119221fbdc4e39577489ca5b"},
-    {file = "pathlib2-2.3.7.post1.tar.gz", hash = "sha256:9fe0edad898b83c0c3e199c842b27ed216645d2e177757b2dd67384d4113c641"},
+packaging = [
+    {file = "packaging-21.3-py3-none-any.whl", hash = "sha256:ef103e05f519cdc783ae24ea4e2e0f508a9c99b2d4969652eed6a2e1ea5bd522"},
+    {file = "packaging-21.3.tar.gz", hash = "sha256:dd47c42927d89ab911e606518907cc2d3a1f38bbd026385970643f9c5b8ecfeb"},
 ]
 pexpect = [
     {file = "pexpect-4.8.0-py2.py3-none-any.whl", hash = "sha256:0b48a55dcb3c05f3329815901ea4fc1537514d6ba867a152b581d69ae3710937"},
     {file = "pexpect-4.8.0.tar.gz", hash = "sha256:fc65a43959d153d0114afe13997d439c22823a27cefceb5ff35c2178c6784c0c"},
 ]
 pkginfo = [
-    {file = "pkginfo-1.8.2-py2.py3-none-any.whl", hash = "sha256:c24c487c6a7f72c66e816ab1796b96ac6c3d14d49338293d2141664330b55ffc"},
-    {file = "pkginfo-1.8.2.tar.gz", hash = "sha256:542e0d0b6750e2e21c20179803e40ab50598d8066d51097a0e382cba9eb02bff"},
+    {file = "pkginfo-1.8.3-py2.py3-none-any.whl", hash = "sha256:848865108ec99d4901b2f7e84058b6e7660aae8ae10164e015a6dcf5b242a594"},
+    {file = "pkginfo-1.8.3.tar.gz", hash = "sha256:a84da4318dd86f870a9447a8c98340aa06216bfc6f2b7bdc4b8766984ae1867c"},
+]
+pkgutil_resolve_name = [
+    {file = "pkgutil_resolve_name-1.3.10-py3-none-any.whl", hash = "sha256:ca27cc078d25c5ad71a9de0a7a330146c4e014c2462d9af19c6b828280649c5e"},
+    {file = "pkgutil_resolve_name-1.3.10.tar.gz", hash = "sha256:357d6c9e6a755653cfd78893817c0853af365dd51ec97f3d358a819373bbd174"},
 ]
 platformdirs = [
-    {file = "platformdirs-2.0.2-py2.py3-none-any.whl", hash = "sha256:0b9547541f599d3d242078ae60b927b3e453f0ad52f58b4d4bc3be86aed3ec41"},
-    {file = "platformdirs-2.0.2.tar.gz", hash = "sha256:3b00d081227d9037bbbca521a5787796b5ef5000faea1e43fd76f1d44b06fcfa"},
+    {file = "platformdirs-2.5.2-py3-none-any.whl", hash = "sha256:027d8e83a2d7de06bbac4e5ef7e023c02b863d7ea5d079477e722bb41ab25788"},
+    {file = "platformdirs-2.5.2.tar.gz", hash = "sha256:58c8abb07dcb441e6ee4b11d8df0ac856038f944ab98b7be6b27b2a3c7feef19"},
 ]
 pluggy = [
-    {file = "pluggy-0.13.1-py2.py3-none-any.whl", hash = "sha256:966c145cd83c96502c3c3868f50408687b38434af77734af1e9ca461a4081d2d"},
-    {file = "pluggy-0.13.1.tar.gz", hash = "sha256:15b2acde666561e1298d71b523007ed7364de07029219b604cf808bfa1c765b0"},
+    {file = "pluggy-1.0.0-py2.py3-none-any.whl", hash = "sha256:74134bbf457f031a36d68416e1509f34bd5ccc019f0bcc952c7b909d06b37bd3"},
+    {file = "pluggy-1.0.0.tar.gz", hash = "sha256:4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159"},
 ]
 poetry-core = [
-    {file = "poetry-core-1.0.8.tar.gz", hash = "sha256:951fc7c1f8d710a94cb49019ee3742125039fc659675912ea614ac2aa405b118"},
-    {file = "poetry_core-1.0.8-py2.py3-none-any.whl", hash = "sha256:54b0fab6f7b313886e547a52f8bf52b8cf43e65b2633c65117f8755289061924"},
+    {file = "poetry-core-1.2.0.tar.gz", hash = "sha256:ceccec95487e46c63a41761fbac5211b809bca22658e25a049f4c7da96269f71"},
+    {file = "poetry_core-1.2.0-py3-none-any.whl", hash = "sha256:e248d36c1314dd60fbc66390791923ad8b58c629d3e587080b7c1537a1c0d30f"},
+]
+poetry-plugin-export = [
+    {file = "poetry-plugin-export-1.1.1.tar.gz", hash = "sha256:23e3e512a609b54ef5ac441339fc9e68fd41e61d15bd924eb0094b4fda1e30d0"},
+    {file = "poetry_plugin_export-1.1.1-py3-none-any.whl", hash = "sha256:170fa367794d2385975d75298fe5509f772d35216ee36b8fa50c0350a064b761"},
 ]
 pre-commit = [
-    {file = "pre_commit-2.17.0-py2.py3-none-any.whl", hash = "sha256:725fa7459782d7bec5ead072810e47351de01709be838c2ce1726b9591dad616"},
-    {file = "pre_commit-2.17.0.tar.gz", hash = "sha256:c1a8040ff15ad3d648c70cc3e55b93e4d2d5b687320955505587fd79bbaed06a"},
+    {file = "pre_commit-2.20.0-py2.py3-none-any.whl", hash = "sha256:51a5ba7c480ae8072ecdb6933df22d2f812dc897d5fe848778116129a681aac7"},
+    {file = "pre_commit-2.20.0.tar.gz", hash = "sha256:a978dac7bc9ec0bcee55c18a277d553b0f419d259dadb4b9418ff2d00eb43959"},
+]
+psutil = [
+    {file = "psutil-5.9.2-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:8f024fbb26c8daf5d70287bb3edfafa22283c255287cf523c5d81721e8e5d82c"},
+    {file = "psutil-5.9.2-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:b2f248ffc346f4f4f0d747ee1947963613216b06688be0be2e393986fe20dbbb"},
+    {file = "psutil-5.9.2-cp27-cp27m-win32.whl", hash = "sha256:b1928b9bf478d31fdffdb57101d18f9b70ed4e9b0e41af751851813547b2a9ab"},
+    {file = "psutil-5.9.2-cp27-cp27m-win_amd64.whl", hash = "sha256:404f4816c16a2fcc4eaa36d7eb49a66df2d083e829d3e39ee8759a411dbc9ecf"},
+    {file = "psutil-5.9.2-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:94e621c6a4ddb2573d4d30cba074f6d1aa0186645917df42c811c473dd22b339"},
+    {file = "psutil-5.9.2-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:256098b4f6ffea6441eb54ab3eb64db9ecef18f6a80d7ba91549195d55420f84"},
+    {file = "psutil-5.9.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:614337922702e9be37a39954d67fdb9e855981624d8011a9927b8f2d3c9625d9"},
+    {file = "psutil-5.9.2-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:39ec06dc6c934fb53df10c1672e299145ce609ff0611b569e75a88f313634969"},
+    {file = "psutil-5.9.2-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e3ac2c0375ef498e74b9b4ec56df3c88be43fe56cac465627572dbfb21c4be34"},
+    {file = "psutil-5.9.2-cp310-cp310-win32.whl", hash = "sha256:e4c4a7636ffc47b7141864f1c5e7d649f42c54e49da2dd3cceb1c5f5d29bfc85"},
+    {file = "psutil-5.9.2-cp310-cp310-win_amd64.whl", hash = "sha256:f4cb67215c10d4657e320037109939b1c1d2fd70ca3d76301992f89fe2edb1f1"},
+    {file = "psutil-5.9.2-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:dc9bda7d5ced744622f157cc8d8bdd51735dafcecff807e928ff26bdb0ff097d"},
+    {file = "psutil-5.9.2-cp36-cp36m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d75291912b945a7351d45df682f9644540d564d62115d4a20d45fa17dc2d48f8"},
+    {file = "psutil-5.9.2-cp36-cp36m-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b4018d5f9b6651f9896c7a7c2c9f4652e4eea53f10751c4e7d08a9093ab587ec"},
+    {file = "psutil-5.9.2-cp36-cp36m-win32.whl", hash = "sha256:f40ba362fefc11d6bea4403f070078d60053ed422255bd838cd86a40674364c9"},
+    {file = "psutil-5.9.2-cp36-cp36m-win_amd64.whl", hash = "sha256:9770c1d25aee91417eba7869139d629d6328a9422ce1cdd112bd56377ca98444"},
+    {file = "psutil-5.9.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:42638876b7f5ef43cef8dcf640d3401b27a51ee3fa137cb2aa2e72e188414c32"},
+    {file = "psutil-5.9.2-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:91aa0dac0c64688667b4285fa29354acfb3e834e1fd98b535b9986c883c2ce1d"},
+    {file = "psutil-5.9.2-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4fb54941aac044a61db9d8eb56fc5bee207db3bc58645d657249030e15ba3727"},
+    {file = "psutil-5.9.2-cp37-cp37m-win32.whl", hash = "sha256:7cbb795dcd8ed8fd238bc9e9f64ab188f3f4096d2e811b5a82da53d164b84c3f"},
+    {file = "psutil-5.9.2-cp37-cp37m-win_amd64.whl", hash = "sha256:5d39e3a2d5c40efa977c9a8dd4f679763c43c6c255b1340a56489955dbca767c"},
+    {file = "psutil-5.9.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:fd331866628d18223a4265371fd255774affd86244fc307ef66eaf00de0633d5"},
+    {file = "psutil-5.9.2-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b315febaebae813326296872fdb4be92ad3ce10d1d742a6b0c49fb619481ed0b"},
+    {file = "psutil-5.9.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f7929a516125f62399d6e8e026129c8835f6c5a3aab88c3fff1a05ee8feb840d"},
+    {file = "psutil-5.9.2-cp38-cp38-win32.whl", hash = "sha256:561dec454853846d1dd0247b44c2e66a0a0c490f937086930ec4b8f83bf44f06"},
+    {file = "psutil-5.9.2-cp38-cp38-win_amd64.whl", hash = "sha256:67b33f27fc0427483b61563a16c90d9f3b547eeb7af0ef1b9fe024cdc9b3a6ea"},
+    {file = "psutil-5.9.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b3591616fa07b15050b2f87e1cdefd06a554382e72866fcc0ab2be9d116486c8"},
+    {file = "psutil-5.9.2-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:14b29f581b5edab1f133563272a6011925401804d52d603c5c606936b49c8b97"},
+    {file = "psutil-5.9.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4642fd93785a29353d6917a23e2ac6177308ef5e8be5cc17008d885cb9f70f12"},
+    {file = "psutil-5.9.2-cp39-cp39-win32.whl", hash = "sha256:ed29ea0b9a372c5188cdb2ad39f937900a10fb5478dc077283bf86eeac678ef1"},
+    {file = "psutil-5.9.2-cp39-cp39-win_amd64.whl", hash = "sha256:68b35cbff92d1f7103d8f1db77c977e72f49fcefae3d3d2b91c76b0e7aef48b8"},
+    {file = "psutil-5.9.2.tar.gz", hash = "sha256:feb861a10b6c3bb00701063b37e4afc754f8217f0f09c42280586bd6ac712b5c"},
 ]
 ptyprocess = [
     {file = "ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35"},
@@ -1201,31 +1450,65 @@ pylev = [
     {file = "pylev-1.4.0.tar.gz", hash = "sha256:9e77e941042ad3a4cc305dcdf2b2dec1aec2fbe3dd9015d2698ad02b173006d1"},
 ]
 pyparsing = [
-    {file = "pyparsing-2.4.7-py2.py3-none-any.whl", hash = "sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b"},
-    {file = "pyparsing-2.4.7.tar.gz", hash = "sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1"},
+    {file = "pyparsing-3.0.9-py3-none-any.whl", hash = "sha256:5026bae9a10eeaefb61dab2f09052b9f4307d44aee4eda64b309723d8d206bbc"},
+    {file = "pyparsing-3.0.9.tar.gz", hash = "sha256:2b020ecf7d21b687f219b71ecad3631f644a47f01403fa1d1036b0c6416d70fb"},
+]
+pyrsistent = [
+    {file = "pyrsistent-0.18.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:df46c854f490f81210870e509818b729db4488e1f30f2a1ce1698b2295a878d1"},
+    {file = "pyrsistent-0.18.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d45866ececf4a5fff8742c25722da6d4c9e180daa7b405dc0a2a2790d668c26"},
+    {file = "pyrsistent-0.18.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4ed6784ceac462a7d6fcb7e9b663e93b9a6fb373b7f43594f9ff68875788e01e"},
+    {file = "pyrsistent-0.18.1-cp310-cp310-win32.whl", hash = "sha256:e4f3149fd5eb9b285d6bfb54d2e5173f6a116fe19172686797c056672689daf6"},
+    {file = "pyrsistent-0.18.1-cp310-cp310-win_amd64.whl", hash = "sha256:636ce2dc235046ccd3d8c56a7ad54e99d5c1cd0ef07d9ae847306c91d11b5fec"},
+    {file = "pyrsistent-0.18.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:e92a52c166426efbe0d1ec1332ee9119b6d32fc1f0bbfd55d5c1088070e7fc1b"},
+    {file = "pyrsistent-0.18.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d7a096646eab884bf8bed965bad63ea327e0d0c38989fc83c5ea7b8a87037bfc"},
+    {file = "pyrsistent-0.18.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cdfd2c361b8a8e5d9499b9082b501c452ade8bbf42aef97ea04854f4a3f43b22"},
+    {file = "pyrsistent-0.18.1-cp37-cp37m-win32.whl", hash = "sha256:7ec335fc998faa4febe75cc5268a9eac0478b3f681602c1f27befaf2a1abe1d8"},
+    {file = "pyrsistent-0.18.1-cp37-cp37m-win_amd64.whl", hash = "sha256:6455fc599df93d1f60e1c5c4fe471499f08d190d57eca040c0ea182301321286"},
+    {file = "pyrsistent-0.18.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:fd8da6d0124efa2f67d86fa70c851022f87c98e205f0594e1fae044e7119a5a6"},
+    {file = "pyrsistent-0.18.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7bfe2388663fd18bd8ce7db2c91c7400bf3e1a9e8bd7d63bf7e77d39051b85ec"},
+    {file = "pyrsistent-0.18.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0e3e1fcc45199df76053026a51cc59ab2ea3fc7c094c6627e93b7b44cdae2c8c"},
+    {file = "pyrsistent-0.18.1-cp38-cp38-win32.whl", hash = "sha256:b568f35ad53a7b07ed9b1b2bae09eb15cdd671a5ba5d2c66caee40dbf91c68ca"},
+    {file = "pyrsistent-0.18.1-cp38-cp38-win_amd64.whl", hash = "sha256:d1b96547410f76078eaf66d282ddca2e4baae8964364abb4f4dcdde855cd123a"},
+    {file = "pyrsistent-0.18.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:f87cc2863ef33c709e237d4b5f4502a62a00fab450c9e020892e8e2ede5847f5"},
+    {file = "pyrsistent-0.18.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6bc66318fb7ee012071b2792024564973ecc80e9522842eb4e17743604b5e045"},
+    {file = "pyrsistent-0.18.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:914474c9f1d93080338ace89cb2acee74f4f666fb0424896fcfb8d86058bf17c"},
+    {file = "pyrsistent-0.18.1-cp39-cp39-win32.whl", hash = "sha256:1b34eedd6812bf4d33814fca1b66005805d3640ce53140ab8bbb1e2651b0d9bc"},
+    {file = "pyrsistent-0.18.1-cp39-cp39-win_amd64.whl", hash = "sha256:e24a828f57e0c337c8d8bb9f6b12f09dfdf0273da25fda9e314f0b684b415a07"},
+    {file = "pyrsistent-0.18.1.tar.gz", hash = "sha256:d4d61f8b993a7255ba714df3aca52700f8125289f84f704cf80916517c46eb96"},
 ]
 pytest = [
-    {file = "pytest-5.4.3-py3-none-any.whl", hash = "sha256:5c0db86b698e8f170ba4582a492248919255fcd4c79b1ee64ace34301fb589a1"},
-    {file = "pytest-5.4.3.tar.gz", hash = "sha256:7979331bfcba207414f5e1263b5a0f8f521d0f457318836a7355531ed1a4c7d8"},
-    {file = "pytest-6.2.5-py3-none-any.whl", hash = "sha256:7310f8d27bc79ced999e760ca304d69f6ba6c6649c0b60fb0e04a4a77cacc134"},
-    {file = "pytest-6.2.5.tar.gz", hash = "sha256:131b36680866a76e6781d13f101efb86cf674ebb9762eb70d3082b6f29889e89"},
+    {file = "pytest-7.1.3-py3-none-any.whl", hash = "sha256:1377bda3466d70b55e3f5cecfa55bb7cfcf219c7964629b967c37cf0bda818b7"},
+    {file = "pytest-7.1.3.tar.gz", hash = "sha256:4f365fec2dff9c1162f834d9f18af1ba13062db0c708bf7b946f8a5c76180c39"},
 ]
 pytest-cov = [
-    {file = "pytest-cov-2.12.1.tar.gz", hash = "sha256:261ceeb8c227b726249b376b8526b600f38667ee314f910353fa318caa01f4d7"},
-    {file = "pytest_cov-2.12.1-py2.py3-none-any.whl", hash = "sha256:261bb9e47e65bd099c89c3edf92972865210c36813f80ede5277dceb77a4a62a"},
+    {file = "pytest-cov-3.0.0.tar.gz", hash = "sha256:e7f0f5b1617d2210a2cabc266dfe2f4c75a8d32fb89eafb7ad9d06f6d076d470"},
+    {file = "pytest_cov-3.0.0-py3-none-any.whl", hash = "sha256:578d5d15ac4a25e5f961c938b85a05b09fdaae9deef3bb6de9a6e766622ca7a6"},
+]
+pytest-forked = [
+    {file = "pytest-forked-1.4.0.tar.gz", hash = "sha256:8b67587c8f98cbbadfdd804539ed5455b6ed03802203485dd2f53c1422d7440e"},
+    {file = "pytest_forked-1.4.0-py3-none-any.whl", hash = "sha256:bbbb6717efc886b9d64537b41fb1497cfaf3c9601276be8da2cccfea5a3c8ad8"},
 ]
 pytest-mock = [
-    {file = "pytest-mock-1.13.0.tar.gz", hash = "sha256:e24a911ec96773022ebcc7030059b57cd3480b56d4f5d19b7c370ec635e6aed5"},
-    {file = "pytest_mock-1.13.0-py2.py3-none-any.whl", hash = "sha256:67e414b3caef7bff6fc6bd83b22b5bc39147e4493f483c2679bc9d4dc485a94d"},
+    {file = "pytest-mock-3.10.0.tar.gz", hash = "sha256:fbbdb085ef7c252a326fd8cdcac0aa3b1333d8811f131bdcc701002e1be7ed4f"},
+    {file = "pytest_mock-3.10.0-py3-none-any.whl", hash = "sha256:f4c973eeae0282963eb293eb173ce91b091a79c1334455acfac9ddee8a1c784b"},
+]
+pytest-randomly = [
+    {file = "pytest-randomly-3.12.0.tar.gz", hash = "sha256:d60c2db71ac319aee0fc6c4110a7597d611a8b94a5590918bfa8583f00caccb2"},
+    {file = "pytest_randomly-3.12.0-py3-none-any.whl", hash = "sha256:f4f2e803daf5d1ba036cc22bf4fe9dbbf99389ec56b00e5cba732fb5c1d07fdd"},
 ]
 pytest-sugar = [
-    {file = "pytest-sugar-0.9.4.tar.gz", hash = "sha256:b1b2186b0a72aada6859bea2a5764145e3aaa2c1cfbb23c3a19b5f7b697563d3"},
+    {file = "pytest-sugar-0.9.5.tar.gz", hash = "sha256:eea78b6f15b635277d3d90280cd386d8feea1cab0f9be75947a626e8b02b477d"},
+    {file = "pytest_sugar-0.9.5-py2.py3-none-any.whl", hash = "sha256:3da42de32ce4e1e95b448d61c92804433f5d4058c0a765096991c2e93d5a289f"},
+]
+pytest-xdist = [
+    {file = "pytest-xdist-2.5.0.tar.gz", hash = "sha256:4580deca3ff04ddb2ac53eba39d76cb5dd5edeac050cb6fbc768b0dd712b4edf"},
+    {file = "pytest_xdist-2.5.0-py3-none-any.whl", hash = "sha256:6fe5c74fec98906deb8f2d2b616b5c782022744978e7bd4695d39c8f42d0ce65"},
 ]
 pywin32-ctypes = [
     {file = "pywin32-ctypes-0.2.0.tar.gz", hash = "sha256:24ffc3b341d457d48e8922352130cf2644024a4ff09762a2261fd34c36ee5942"},
     {file = "pywin32_ctypes-0.2.0-py2.py3-none-any.whl", hash = "sha256:9dc2d991b3479cc2df15930958b674a48a227d5361d413827a4cfd0b5876fc98"},
 ]
-pyyaml = [
+PyYAML = [
     {file = "PyYAML-6.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53"},
     {file = "PyYAML-6.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c"},
     {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc"},
@@ -1233,6 +1516,13 @@ pyyaml = [
     {file = "PyYAML-6.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5"},
     {file = "PyYAML-6.0-cp310-cp310-win32.whl", hash = "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513"},
     {file = "PyYAML-6.0-cp310-cp310-win_amd64.whl", hash = "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a"},
+    {file = "PyYAML-6.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:d4b0ba9512519522b118090257be113b9468d804b19d63c71dbcf4a48fa32358"},
+    {file = "PyYAML-6.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:81957921f441d50af23654aa6c5e5eaf9b06aba7f0a19c18a538dc7ef291c5a1"},
+    {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:afa17f5bc4d1b10afd4466fd3a44dc0e245382deca5b3c353d8b757f9e3ecb8d"},
+    {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dbad0e9d368bb989f4515da330b88a057617d16b6a8245084f1b05400f24609f"},
+    {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:432557aa2c09802be39460360ddffd48156e30721f5e8d917f01d31694216782"},
+    {file = "PyYAML-6.0-cp311-cp311-win32.whl", hash = "sha256:bfaef573a63ba8923503d27530362590ff4f576c626d86a9fed95822a8255fd7"},
+    {file = "PyYAML-6.0-cp311-cp311-win_amd64.whl", hash = "sha256:01b45c0191e6d66c470b6cf1b9531a771a83c1c4208272ead47a3ae4f2f603bf"},
     {file = "PyYAML-6.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86"},
     {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f"},
     {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92"},
@@ -1261,64 +1551,165 @@ pyyaml = [
     {file = "PyYAML-6.0.tar.gz", hash = "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2"},
 ]
 requests = [
-    {file = "requests-2.25.1-py2.py3-none-any.whl", hash = "sha256:c210084e36a42ae6b9219e00e48287def368a26d03a048ddad7bfee44f75871e"},
-    {file = "requests-2.25.1.tar.gz", hash = "sha256:27973dd4a904a4f13b263a19c866c13b92a39ed1c964655f025f3f8d3d75b804"},
+    {file = "requests-2.28.1-py3-none-any.whl", hash = "sha256:8fefa2a1a1365bf5520aac41836fbee479da67864514bdb821f31ce07ce65349"},
+    {file = "requests-2.28.1.tar.gz", hash = "sha256:7c5599b102feddaa661c826c56ab4fee28bfd17f5abca1ebbe3e7f19d7c97983"},
 ]
 requests-toolbelt = [
     {file = "requests-toolbelt-0.9.1.tar.gz", hash = "sha256:968089d4584ad4ad7c171454f0a5c6dac23971e9472521ea3b6d49d610aa6fc0"},
     {file = "requests_toolbelt-0.9.1-py2.py3-none-any.whl", hash = "sha256:380606e1d10dc85c3bd47bf5a6095f815ec007be7a8b69c878507068df059e6f"},
 ]
-secretstorage = [
-    {file = "SecretStorage-3.2.0-py3-none-any.whl", hash = "sha256:ed5279d788af258e4676fa26b6efb6d335a31f1f9f529b6f1e200f388fac33e1"},
-    {file = "SecretStorage-3.2.0.tar.gz", hash = "sha256:46305c3847ee3f7252b284e0eee5590fa6341c891104a2fd2313f8798c615a82"},
-    {file = "SecretStorage-3.3.2-py3-none-any.whl", hash = "sha256:755dc845b6ad76dcbcbc07ea3da75ae54bb1ea529eb72d15f83d26499a5df319"},
-    {file = "SecretStorage-3.3.2.tar.gz", hash = "sha256:0a8eb9645b320881c222e827c26f4cfcf55363e8b374a021981ef886657a912f"},
+SecretStorage = [
+    {file = "SecretStorage-3.3.3-py3-none-any.whl", hash = "sha256:f356e6628222568e3af06f2eba8df495efa13b3b63081dafd4f7d9a7b7bc9f99"},
+    {file = "SecretStorage-3.3.3.tar.gz", hash = "sha256:2403533ef369eca6d2ba81718576c5e0f564d5cca1b58f73a8b23e7d4eeebd77"},
+]
+setuptools = [
+    {file = "setuptools-65.4.1-py3-none-any.whl", hash = "sha256:1b6bdc6161661409c5f21508763dc63ab20a9ac2f8ba20029aaaa7fdb9118012"},
+    {file = "setuptools-65.4.1.tar.gz", hash = "sha256:3050e338e5871e70c72983072fe34f6032ae1cdeeeb67338199c2f74e083a80e"},
 ]
 shellingham = [
-    {file = "shellingham-1.4.0-py2.py3-none-any.whl", hash = "sha256:536b67a0697f2e4af32ab176c00a50ac2899c5a05e0d8e2dadac8e58888283f9"},
-    {file = "shellingham-1.4.0.tar.gz", hash = "sha256:4855c2458d6904829bd34c299f11fdeed7cfefbf8a2c522e4caea6cd76b3171e"},
+    {file = "shellingham-1.5.0-py2.py3-none-any.whl", hash = "sha256:a8f02ba61b69baaa13facdba62908ca8690a94b8119b69f5ec5873ea85f7391b"},
+    {file = "shellingham-1.5.0.tar.gz", hash = "sha256:72fb7f5c63103ca2cb91b23dee0c71fe8ad6fbfd46418ef17dbe40db51592dad"},
 ]
 six = [
     {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"},
     {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"},
 ]
 termcolor = [
-    {file = "termcolor-1.1.0.tar.gz", hash = "sha256:1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b"},
+    {file = "termcolor-2.0.1-py3-none-any.whl", hash = "sha256:7e597f9de8e001a3208c4132938597413b9da45382b6f1d150cff8d062b7aaa3"},
+    {file = "termcolor-2.0.1.tar.gz", hash = "sha256:6b2cf769e93364a2676e1de56a7c0cff2cf5bd07f37e9cc80b0dd6320ebfe388"},
 ]
 toml = [
     {file = "toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"},
     {file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"},
 ]
+tomli = [
+    {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"},
+    {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"},
+]
 tomlkit = [
-    {file = "tomlkit-0.7.2-py2.py3-none-any.whl", hash = "sha256:173ad840fa5d2aac140528ca1933c29791b79a374a0861a80347f42ec9328117"},
-    {file = "tomlkit-0.7.2.tar.gz", hash = "sha256:d7a454f319a7e9bd2e249f239168729327e4dd2d27b17dc68be264ad1ce36754"},
+    {file = "tomlkit-0.11.5-py3-none-any.whl", hash = "sha256:f2ef9da9cef846ee027947dc99a45d6b68a63b0ebc21944649505bf2e8bc5fe7"},
+    {file = "tomlkit-0.11.5.tar.gz", hash = "sha256:571854ebbb5eac89abcb4a2e47d7ea27b89bf29e09c35395da6f03dd4ae23d1c"},
 ]
 tox = [
-    {file = "tox-3.25.1-py2.py3-none-any.whl", hash = "sha256:c38e15f4733683a9cc0129fba078633e07eb0961f550a010ada879e95fb32632"},
-    {file = "tox-3.25.1.tar.gz", hash = "sha256:c138327815f53bc6da4fe56baec5f25f00622ae69ef3fe4e1e385720e22486f9"},
+    {file = "tox-3.26.0-py2.py3-none-any.whl", hash = "sha256:bf037662d7c740d15c9924ba23bb3e587df20598697bb985ac2b49bdc2d847f6"},
+    {file = "tox-3.26.0.tar.gz", hash = "sha256:44f3c347c68c2c68799d7d44f1808f9d396fc8a1a500cbc624253375c7ae107e"},
+]
+typed-ast = [
+    {file = "typed_ast-1.5.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:669dd0c4167f6f2cd9f57041e03c3c2ebf9063d0757dc89f79ba1daa2bfca9d4"},
+    {file = "typed_ast-1.5.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:211260621ab1cd7324e0798d6be953d00b74e0428382991adfddb352252f1d62"},
+    {file = "typed_ast-1.5.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:267e3f78697a6c00c689c03db4876dd1efdfea2f251a5ad6555e82a26847b4ac"},
+    {file = "typed_ast-1.5.4-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c542eeda69212fa10a7ada75e668876fdec5f856cd3d06829e6aa64ad17c8dfe"},
+    {file = "typed_ast-1.5.4-cp310-cp310-win_amd64.whl", hash = "sha256:a9916d2bb8865f973824fb47436fa45e1ebf2efd920f2b9f99342cb7fab93f72"},
+    {file = "typed_ast-1.5.4-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:79b1e0869db7c830ba6a981d58711c88b6677506e648496b1f64ac7d15633aec"},
+    {file = "typed_ast-1.5.4-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a94d55d142c9265f4ea46fab70977a1944ecae359ae867397757d836ea5a3f47"},
+    {file = "typed_ast-1.5.4-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:183afdf0ec5b1b211724dfef3d2cad2d767cbefac291f24d69b00546c1837fb6"},
+    {file = "typed_ast-1.5.4-cp36-cp36m-win_amd64.whl", hash = "sha256:639c5f0b21776605dd6c9dbe592d5228f021404dafd377e2b7ac046b0349b1a1"},
+    {file = "typed_ast-1.5.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:cf4afcfac006ece570e32d6fa90ab74a17245b83dfd6655a6f68568098345ff6"},
+    {file = "typed_ast-1.5.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ed855bbe3eb3715fca349c80174cfcfd699c2f9de574d40527b8429acae23a66"},
+    {file = "typed_ast-1.5.4-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:6778e1b2f81dfc7bc58e4b259363b83d2e509a65198e85d5700dfae4c6c8ff1c"},
+    {file = "typed_ast-1.5.4-cp37-cp37m-win_amd64.whl", hash = "sha256:0261195c2062caf107831e92a76764c81227dae162c4f75192c0d489faf751a2"},
+    {file = "typed_ast-1.5.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:2efae9db7a8c05ad5547d522e7dbe62c83d838d3906a3716d1478b6c1d61388d"},
+    {file = "typed_ast-1.5.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:7d5d014b7daa8b0bf2eaef684295acae12b036d79f54178b92a2b6a56f92278f"},
+    {file = "typed_ast-1.5.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:370788a63915e82fd6f212865a596a0fefcbb7d408bbbb13dea723d971ed8bdc"},
+    {file = "typed_ast-1.5.4-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:4e964b4ff86550a7a7d56345c7864b18f403f5bd7380edf44a3c1fb4ee7ac6c6"},
+    {file = "typed_ast-1.5.4-cp38-cp38-win_amd64.whl", hash = "sha256:683407d92dc953c8a7347119596f0b0e6c55eb98ebebd9b23437501b28dcbb8e"},
+    {file = "typed_ast-1.5.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4879da6c9b73443f97e731b617184a596ac1235fe91f98d279a7af36c796da35"},
+    {file = "typed_ast-1.5.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:3e123d878ba170397916557d31c8f589951e353cc95fb7f24f6bb69adc1a8a97"},
+    {file = "typed_ast-1.5.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ebd9d7f80ccf7a82ac5f88c521115cc55d84e35bf8b446fcd7836eb6b98929a3"},
+    {file = "typed_ast-1.5.4-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:98f80dee3c03455e92796b58b98ff6ca0b2a6f652120c263efdba4d6c5e58f72"},
+    {file = "typed_ast-1.5.4-cp39-cp39-win_amd64.whl", hash = "sha256:0fdbcf2fef0ca421a3f5912555804296f0b0960f0418c440f5d6d3abb549f3e1"},
+    {file = "typed_ast-1.5.4.tar.gz", hash = "sha256:39e21ceb7388e4bb37f4c679d72707ed46c2fbf2a5609b8b8ebc4b067d977df2"},
+]
+types-html5lib = [
+    {file = "types-html5lib-1.1.11.tar.gz", hash = "sha256:2b67bbaf3125b840720dc5890f243c3661583a503f0ed33166acf31c67e53717"},
+    {file = "types_html5lib-1.1.11-py3-none-any.whl", hash = "sha256:dda54159be6ef58a67bf10bdd6fe5b4559e55e1df6bb18c47915281a8be0e5fd"},
+]
+types-jsonschema = [
+    {file = "types-jsonschema-4.16.1.tar.gz", hash = "sha256:95e31d2b90da218faf3d8fa34fa33ae55fc52c79b2cb7308755cc2d7d71b1096"},
+    {file = "types_jsonschema-4.16.1-py3-none-any.whl", hash = "sha256:21ca9a227185b83655c71755b5834c36d66ca43f9de77c018d61c4f917f851ab"},
+]
+types-requests = [
+    {file = "types-requests-2.28.11.2.tar.gz", hash = "sha256:fdcd7bd148139fb8eef72cf4a41ac7273872cad9e6ada14b11ff5dfdeee60ed3"},
+    {file = "types_requests-2.28.11.2-py3-none-any.whl", hash = "sha256:14941f8023a80b16441b3b46caffcbfce5265fd14555844d6029697824b5a2ef"},
+]
+types-urllib3 = [
+    {file = "types-urllib3-1.26.25.tar.gz", hash = "sha256:5aef0e663724eef924afa8b320b62ffef2c1736c1fa6caecfc9bc6c8ae2c3def"},
+    {file = "types_urllib3-1.26.25-py3-none-any.whl", hash = "sha256:c1d78cef7bd581e162e46c20a57b2e1aa6ebecdcf01fd0713bb90978ff3e3427"},
 ]
 typing-extensions = [
-    {file = "typing_extensions-3.10.0.2-py2-none-any.whl", hash = "sha256:d8226d10bc02a29bcc81df19a26e56a9647f8b0a6d4a83924139f4a8b01f17b7"},
-    {file = "typing_extensions-3.10.0.2-py3-none-any.whl", hash = "sha256:f1d25edafde516b146ecd0613dabcc61409817af4766fbbcfb8d1ad4ec441a34"},
-    {file = "typing_extensions-3.10.0.2.tar.gz", hash = "sha256:49f75d16ff11f1cd258e1b988ccff82a3ca5570217d7ad8c5f48205dd99a677e"},
+    {file = "typing_extensions-4.4.0-py3-none-any.whl", hash = "sha256:16fa4864408f655d35ec496218b85f79b3437c829e93320c7c9215ccfd92489e"},
+    {file = "typing_extensions-4.4.0.tar.gz", hash = "sha256:1511434bb92bf8dd198c12b1cc812e800d4181cfcb867674e0f8279cc93087aa"},
 ]
 urllib3 = [
-    {file = "urllib3-1.26.9-py2.py3-none-any.whl", hash = "sha256:44ece4d53fb1706f667c9bd1c648f5469a2ec925fcf3a776667042d645472c14"},
-    {file = "urllib3-1.26.9.tar.gz", hash = "sha256:aabaf16477806a5e1dd19aa41f8c2b7950dd3c746362d7e3223dbe6de6ac448e"},
+    {file = "urllib3-1.26.12-py2.py3-none-any.whl", hash = "sha256:b930dd878d5a8afb066a637fbb35144fe7901e3b209d1cd4f524bd0e9deee997"},
+    {file = "urllib3-1.26.12.tar.gz", hash = "sha256:3fa96cf423e6987997fc326ae8df396db2a8b7c667747d47ddd8ecba91f4a74e"},
 ]
 virtualenv = [
-    {file = "virtualenv-20.15.1-py2.py3-none-any.whl", hash = "sha256:b30aefac647e86af6d82bfc944c556f8f1a9c90427b2fb4e3bfbf338cb82becf"},
-    {file = "virtualenv-20.15.1.tar.gz", hash = "sha256:288171134a2ff3bfb1a2f54f119e77cd1b81c29fc1265a2356f3e8d14c7d58c4"},
-]
-wcwidth = [
-    {file = "wcwidth-0.2.5-py2.py3-none-any.whl", hash = "sha256:beb4802a9cebb9144e99086eff703a642a13d6a0052920003a230f3294bbe784"},
-    {file = "wcwidth-0.2.5.tar.gz", hash = "sha256:c4d647b99872929fdb7bdcaa4fbe7f01413ed3d98077df798530e5b04f116c83"},
+    {file = "virtualenv-20.16.5-py3-none-any.whl", hash = "sha256:d07dfc5df5e4e0dbc92862350ad87a36ed505b978f6c39609dc489eadd5b0d27"},
+    {file = "virtualenv-20.16.5.tar.gz", hash = "sha256:227ea1b9994fdc5ea31977ba3383ef296d7472ea85be9d6732e42a91c04e80da"},
 ]
 webencodings = [
     {file = "webencodings-0.5.1-py2.py3-none-any.whl", hash = "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78"},
     {file = "webencodings-0.5.1.tar.gz", hash = "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923"},
 ]
+xattr = [
+    {file = "xattr-0.9.9-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:58a9fb4fd19b467e88f4b75b5243706caa57e312d3aee757b53b57c7fd0f4ba9"},
+    {file = "xattr-0.9.9-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:e71efca59705c7abde5b7f76323ebe00ed2977f10cba4204b9421dada036b5ca"},
+    {file = "xattr-0.9.9-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:1aad96b6603961c3d1ca1aaa8369b1a8d684a7b37357b2428087c286bf0e561c"},
+    {file = "xattr-0.9.9-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:46cb74f98d31d9d70f975ec3e6554360a9bdcbb4b9fb50a69fabe54f9f928c97"},
+    {file = "xattr-0.9.9-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:80c2db56058a687d7439be041f916cbeb2943fbe2623e53d5da721a4552d8991"},
+    {file = "xattr-0.9.9-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:c360d1cc42e885b64d84f64de3c501dd7bce576248327ef583b4625ee63aa023"},
+    {file = "xattr-0.9.9-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:debd87afe6bdf88c3689bde52eecf2b166388b13ef7388259d23223374db417d"},
+    {file = "xattr-0.9.9-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:4280c9f33a8678828f1bbc3d3dc8b823b5e4a113ee5ecb0fb98bff60cc2b9ad1"},
+    {file = "xattr-0.9.9-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:e0916ec1656d2071cd3139d1f52426825985d8ed076f981ef7f0bc13dfa8e96c"},
+    {file = "xattr-0.9.9-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a517916fbf2f58a3222bb2048fe1eeff4e23e07a4ce6228a27de004c80bf53ab"},
+    {file = "xattr-0.9.9-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e886c882b3b28c7a684c3e3daf46347da5428a46b88bc6d62c4867d574b90c54"},
+    {file = "xattr-0.9.9-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:373e3d1fd9258438fc38d1438142d3659f36743f374a20457346ef26741ed441"},
+    {file = "xattr-0.9.9-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a7beeb54ca140273b2f6320bb98b701ec30628af2ebe4eb30f7051419eb4ef3"},
+    {file = "xattr-0.9.9-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ef3ca29cdaae9c47c625d84bb6c9046f7275cccde0ea805caa23ca58d3671f3f"},
+    {file = "xattr-0.9.9-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5c381d890931cd18b137ce3fb5c5f08b672c3c61e2e47b1a7442ee46e827abfe"},
+    {file = "xattr-0.9.9-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:59c5783ccf57cf2700ce57d51a92134900ed26f6ab20d209f383fb898903fea6"},
+    {file = "xattr-0.9.9-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:966b885b69d95362e2a12d39f84889cf857090e57263b5ac33409498aa00c160"},
+    {file = "xattr-0.9.9-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:efaaf0cb1ea8e9febb7baad301ae8cc9ad7a96fdfc5c6399d165e7a19e3e61ce"},
+    {file = "xattr-0.9.9-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:f19fa75ed1e9db86354efab29869cb2be6976d456bd7c89e67b118d5384a1d98"},
+    {file = "xattr-0.9.9-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ca28ad06828244b315214ee35388f57e81e90aac2ceac3f32e42ae394e31b9c"},
+    {file = "xattr-0.9.9-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:532c7f1656dd2fe937116b9e210229f716d7fc7ac142f9cdace7da92266d32e8"},
+    {file = "xattr-0.9.9-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:11c28033c17e98c67e0def9d6ebd415ad3c006a7bc3fee6bad79c5e52d0dff49"},
+    {file = "xattr-0.9.9-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:473cabb30e544ea08c8c01c1ef18053147cdc8552d443ac97815e46fbb13c7d4"},
+    {file = "xattr-0.9.9-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:c4a308522b444d090fbd66a385c9519b6b977818226921b0d2fc403667c93564"},
+    {file = "xattr-0.9.9-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:82493434488aca72d88b5129dac8f212e7b8bdca7ceffe7bb977c850f2452e4e"},
+    {file = "xattr-0.9.9-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:e41d289706c7e8940f4d08e865da6a8ae988123e40a44f9a97ddc09e67795d7d"},
+    {file = "xattr-0.9.9-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ef08698e360cf43688dca3db3421b156b29948a714d5d089348073f463c11646"},
+    {file = "xattr-0.9.9-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4eb10ac16ca8d534c0395425d52121e0c1981f808e1b3f577f6a5ec33d3853e4"},
+    {file = "xattr-0.9.9-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5605fec07b0e964bd980cc70ec335b9eb1b7ac7c6f314c7c2d8f54b09104fe4c"},
+    {file = "xattr-0.9.9-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:974e7d577ddb15e4552fb0ec10a4cfe09bdf6267365aa2b8394bb04637785aad"},
+    {file = "xattr-0.9.9-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:ad6777de922c638bfa87a0d7faebc5722ddef04a1210b2a8909289b58b769af0"},
+    {file = "xattr-0.9.9-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:3887e70873ebf0efbde32f9929ec1c7e45ec0013561743e2cc0406a91e51113b"},
+    {file = "xattr-0.9.9-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:83caa8e93a45a0f25f91b92d9b45f490c87bff74f02555df6312efeba0dacc31"},
+    {file = "xattr-0.9.9-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:e33ec0a1d913d946d1ab7509f37ee37306c45af735347f13b963df34ffe6e029"},
+    {file = "xattr-0.9.9-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:263c58dca83372260c5c195e0b59959e38e1f107f0b7350de82e3db38479036c"},
+    {file = "xattr-0.9.9-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:125dfb9905428162349d3b8b825d9a18280893f0cb0db2a2467d5ef253fa6ce2"},
+    {file = "xattr-0.9.9-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e243524e0dde16d7a2e1b52512ad2c6964df2143dd1c79b820dcb4c6c0822c20"},
+    {file = "xattr-0.9.9-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:01ec07d24a14406bdc6a123041c63a88e1c4a3f820e4a7d30f7609d57311b499"},
+    {file = "xattr-0.9.9-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:85c1df5f1d209345ea96de137419e886a27bb55076b3ae01faacf35aafcf3a61"},
+    {file = "xattr-0.9.9-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:ca74d3eff92d6dc16e271fbad9cbab547fb9a0c983189c4031c3ff3d150dd871"},
+    {file = "xattr-0.9.9-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:7d17505e49ac70c0e71939c5aac96417a863583fb30a2d6304d5ac881230548f"},
+    {file = "xattr-0.9.9-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1ae47a6398d3c04623fa386a4aa2f66e5cd3cdb1a7e69d1bfaeb8c73983bf271"},
+    {file = "xattr-0.9.9-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:809e2537d0aff9fca97dacf3245cbbaf711bbced5d1b0235a8d1906b04e26114"},
+    {file = "xattr-0.9.9-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:de3af84364f06d67b3662ccf7c1a73e1d389d8d274394e952651e7bf1bbd2718"},
+    {file = "xattr-0.9.9-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b62cdad232d2d2dedd39b543701db8e3883444ec0d57ce3fab8f75e5f8b0301"},
+    {file = "xattr-0.9.9-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6b11d2eda397d47f7075743409683c233519ca52aa1dac109b413a4d8c15b740"},
+    {file = "xattr-0.9.9-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:661c0a939aefdf071887121f534bb10588d69c7b2dfca5c486af2fc81a0786e8"},
+    {file = "xattr-0.9.9-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:5db7c2db320a8d5264d437d71f1eb7270a7e4a6545296e7766161d17752590b7"},
+    {file = "xattr-0.9.9-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:83203e60cbaca9536d297e5039b285a600ff84e6e9e8536fe2d521825eeeb437"},
+    {file = "xattr-0.9.9-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:42bfb4e4da06477e739770ac6942edbdc71e9fc3b497b67db5fba712fa8109c2"},
+    {file = "xattr-0.9.9-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:67047d04d1c56ad4f0f5886085e91b0077238ab3faaec6492c3c21920c6566eb"},
+    {file = "xattr-0.9.9-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:885782bc82ded1a3f684d54a1af259ae9fcc347fa54b5a05b8aad82b8a42044c"},
+    {file = "xattr-0.9.9-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5bc84ccec618b5aa089e7cee8b07fcc92d4069aac4053da604c8143a0d6b1381"},
+    {file = "xattr-0.9.9-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:baeff3e5dda8ea7e9424cfaee51829f46afe3836c30d02f343f9049c685681ca"},
+    {file = "xattr-0.9.9.tar.gz", hash = "sha256:09cb7e1efb3aa1b4991d6be4eb25b73dc518b4fe894f0915f5b0dcede972f346"},
+]
 zipp = [
-    {file = "zipp-1.2.0-py2.py3-none-any.whl", hash = "sha256:e0d9e63797e483a30d27e09fffd308c59a700d365ec34e93cc100844168bf921"},
-    {file = "zipp-1.2.0.tar.gz", hash = "sha256:c70410551488251b0fee67b460fb9a536af8d6f9f008ad10ac51f615b6a521b1"},
+    {file = "zipp-3.8.1-py3-none-any.whl", hash = "sha256:47c40d7fe183a6f21403a199b3e4192cca5774656965b0a4988ad2f8feb5f009"},
+    {file = "zipp-3.8.1.tar.gz", hash = "sha256:05b45f1ee8f807d0cc928485ca40a07cb491cf092ff587c0df9cb1fd154848d2"},
 ]
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/pyproject.toml b/pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/pyproject.toml
index 41f8d30edcba2..c38762d383804 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/pyproject.toml
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/pyproject.toml
@@ -1,14 +1,31 @@
 [tool.poetry]
 name = "poetry"
-version = "1.1.14"
+version = "1.2.1"
 description = "Python dependency management and packaging made easy."
 authors = [
-    "Sébastien Eustace <sebastien@eustace.io>"
+    "Sébastien Eustace <sebastien@eustace.io>",
+]
+maintainers = [
+    "Arun Babu Neelicattu <arun.neelicattu@gmail.com>",
+    "Bjorn Neergaard <bjorn@neersighted.com>",
+    "Branch Vincent <branchevincent@gmail.com>",
+    "Bryce Drennan <github@accounts.brycedrennan.com>",
+    "Daniel Eades <danieleades@hotmail.com>",
+    "Randy Döring <radoering.poetry@gmail.com>",
+    "Steph Samson <hello@stephsamson.com>",
+    "finswimmer <finswimmer77@gmail.com>",
 ]
 license = "MIT"
 
 readme = "README.md"
 
+packages = [
+    { include = "poetry", from = "src" }
+]
+include = [
+    { path = "tests", format = "sdist" }
+]
+
 homepage = "https://python-poetry.org/"
 repository = "https://github.com/python-poetry/poetry"
 documentation = "https://python-poetry.org/docs"
@@ -20,104 +37,136 @@ classifiers = [
     "Topic :: Software Development :: Libraries :: Python Modules"
 ]
 
+[tool.poetry.build]
+generate-setup-file = false
+
 # Requirements
 [tool.poetry.dependencies]
-python = "^3.5"
+python = "^3.7"
 
-poetry-core = "~1.0.7"
-cleo = "^0.8.1"
-clikit = "^0.6.2"
-crashtest = { version = "^0.3.0", python = "^3.6" }
-requests = "^2.18"
+poetry-core = "1.2.0"
+poetry-plugin-export = "^1.0.7"
+"backports.cached-property" = { version = "^1.0.2", python = "<3.8" }
+cachecontrol = { version = "^0.12.9", extras = ["filecache"] }
 cachy = "^0.3.0"
-requests-toolbelt = "^0.9.1"
-cachecontrol = [
-    { version = "^0.12.4", extras = ["filecache"], python = "<3.6" },
-    { version = "^0.12.9", extras = ["filecache"], python = "^3.6" }
-]
-pkginfo = "^1.4"
+cleo = "^1.0.0a5"
+crashtest = "^0.3.0"
 html5lib = "^1.0"
-shellingham = "^1.1"
-tomlkit = ">=0.7.0,<1.0.0"
+importlib-metadata = { version = "^4.4", python = "<3.10" }
+jsonschema = "^4.10.0"
+# keyring uses calver, so version is unclamped
+keyring = ">=21.2.0"
+# packaging uses calver, so version is unclamped
+packaging = ">=20.4"
 pexpect = "^4.7.0"
-packaging = "^20.4"
-virtualenv = { version = "^20.0.26" }
-
-# The typing module is not in the stdlib in Python 2.7
-typing = { version = "^3.6", python = "~2.7" }
-
-# Use pathlib2 for Python 2.7
-pathlib2 = { version = "^2.3", python = "~2.7" }
-# Use futures on Python 2.7
-futures = { version = "^3.3.0", python = "~2.7" }
-# Use glob2 for Python 2.7 and 3.4
-glob2 = { version = "^0.6", python = "~2.7" }
-# functools32 is needed for Python 2.7
-functools32 = { version = "^3.2.3", python = "~2.7" }
-keyring = [
-    { version = "^18.0.1", python = "~2.7" },
-    { version = "^20.0.1", python = "~3.5" },
-    { version = ">=21.2.0", python = "^3.6" }
-]
-# Use subprocess32 for Python 2.7
-subprocess32 = { version = "^3.5", python = "~2.7" }
-importlib-metadata = {version = "^1.6.0", python = "<3.8"}
+pkginfo = "^1.5"
+platformdirs = "^2.5.2"
+requests = "^2.18"
+requests-toolbelt = "^0.9.1"
+shellingham = "^1.5"
+# exclude 0.11.2 and 0.11.3 due to https://github.com/sdispater/tomlkit/issues/225
+tomlkit = ">=0.11.1,<1.0.0,!=0.11.2,!=0.11.3"
+# exclude 20.4.5 - 20.4.6 due to https://github.com/pypa/pip/issues/9953
+virtualenv = ">=20.4.3,!=20.4.5,!=20.4.6"
+xattr = { version = "^0.9.7", markers = "sys_platform == 'darwin'" }
+urllib3 = "^1.26.0"
+dulwich = "^0.20.46"
 
 [tool.poetry.dev-dependencies]
-pytest = [
-    {version = "^4.1", python = "<3.5"},
-    {version = "^5.4.3", python = "~3.5"},
-    {version = "^6.2.5", python = ">=3.6"}
-]
-pytest-cov = "^2.5"
-pytest-mock = "^1.9"
-pre-commit = { version = "^2.6", python = "^3.6.1" }
-tox = "^3.0"
-pytest-sugar = "^0.9.2"
-httpretty = "^1.0.3"
-# We need to restrict the version of urllib3 to avoid
-# httpretty breaking. This is fixed in httpretty >= 1.0.3
-# but it's not compatible with Python 2.7 and 3.5.
-urllib3 = "~1.26.9"
+tox = "^3.18"
+pytest = "^7.1"
+pytest-cov = "^3.0"
+pytest-mock = "^3.5"
+pytest-randomly = "^3.10"
+pytest-sugar = "^0.9"
+pytest-xdist = { version = "^2.5", extras = ["psutil"] }
+pre-commit = "^2.6"
+deepdiff = "^5.0"
+httpretty = "^1.0"
+typing-extensions = { version = "^4.0.0", python = "<3.8" }
+zipp = { version = "^3.4", python = "<3.8" }
+flatdict = "^4.0.1"
+mypy = ">=0.971"
+types-html5lib = ">=1.1.9"
+types-jsonschema = ">=4.9.0"
+types-requests = ">=2.28.8"
 
 [tool.poetry.scripts]
-poetry = "poetry.console:main"
+poetry = "poetry.console.application:main"
 
 
 [build-system]
-requires = ["poetry-core>=1.0.0"]
+requires = ["poetry-core>=1.1.0"]
 build-backend = "poetry.core.masonry.api"
 
 
 [tool.isort]
+py_version = 37
 profile = "black"
 force_single_line = true
-atomic = true
-include_trailing_comma = true
-lines_after_imports = 2
+combine_as_imports = true
 lines_between_types = 1
-use_parentheses = true
-src_paths = ["poetry", "tests"]
-skip_glob = ["*/setup.py"]
-filter_files = true
-known_first_party = "poetry"
+lines_after_imports = 2
+src_paths = ["src", "tests"]
+extend_skip = ["setup.py"]
+known_third_party = ["poetry.core"]
 
 
 [tool.black]
-line-length = 88
-include = '\.pyi?$'
-exclude = '''
-/(
-    \.eggs
-  | \.git
-  | \.hg
-  | \.mypy_cache
-  | \.tox
-  | \.venv
-  | _build
-  | buck-out
-  | build
-  | dist
-  | tests/.*/setup.py
-)/
+target-version = ['py37']
+preview = true
+force-exclude = '''
+.*/setup\.py$
 '''
+
+
+[tool.mypy]
+files = "src"
+mypy_path = "src"
+namespace_packages = true
+explicit_package_bases = true
+show_error_codes = true
+strict = true
+enable_error_code = [
+    "ignore-without-code",
+    "redundant-expr",
+    "truthy-bool",
+]
+
+# use of importlib-metadata backport at python3.7 makes it impossible to
+# satisfy mypy without some ignores: but we get a different set of ignores at
+# different python versions.
+#
+# <https://github.com/python/mypy/issues/8823>, meanwhile suppress that
+# warning.
+[[tool.mypy.overrides]]
+module = [
+  'poetry.console.commands.self.show.plugins',
+  'poetry.installation.executor',
+  'poetry.mixology.version_solver',
+  'poetry.plugins.plugin_manager',
+  'poetry.repositories.installed_repository',
+  'poetry.utils.env',
+]
+warn_unused_ignores = false
+
+[[tool.mypy.overrides]]
+module = [
+  'cachecontrol.*',
+  'cachy.*',
+  'cleo.*',
+  'crashtest.*',
+  'pexpect.*',
+  'pkginfo.*',
+  'requests_toolbelt.*',
+  'shellingham.*',
+  'virtualenv.*',
+  'xattr.*',
+]
+ignore_missing_imports = true
+
+[tool.coverage.report]
+exclude_lines = [
+    "pragma: no cover",
+    "if TYPE_CHECKING:"
+]
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/src.json b/pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/src.json
index 3bdc2f2ab8252..614c08cd5526f 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/src.json
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/pkgs/poetry/src.json
@@ -1,8 +1,8 @@
 {
   "owner": "python-poetry",
   "repo": "poetry",
-  "rev": "1.1.14",
-  "sha256": "1yx2a1xzid9zclf88wwczz7wgphsgpp3ksmha2jiacq898wrkwcz",
+  "rev": "1.2.1",
+  "sha256": "10y2vs28xbg5msr49wvhm3s780v4hb2jpxn7lzdin4l1qkrchdiq",
   "fetchSubmodules": true
 }
 
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/plugins.nix b/pkgs/development/tools/poetry2nix/poetry2nix/plugins.nix
index b5e807c6e2d9f..1c78904b62487 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/plugins.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/plugins.nix
@@ -19,7 +19,7 @@ let
       inherit (drv) src version meta;
 
       buildInputs = drv.buildInputs ++ drv.propagatedBuildInputs ++ buildInputs;
-      nativeBuildInputs = drv.nativeBuildInputs ++ nativeBuildInputs;
+      nativeBuildInputs = builtins.filter (x: x.name != "python-output-dist-hook") (drv.nativeBuildInputs ++ nativeBuildInputs);
 
       dontConfigure = true;
       dontBuild = true;
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/shell-scripts.nix b/pkgs/development/tools/poetry2nix/poetry2nix/shell-scripts.nix
index cbaa4439afe12..23362a2e2376b 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/shell-scripts.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/shell-scripts.nix
@@ -34,6 +34,8 @@ python.pkgs.buildPythonPackage {
   dontConfigure = true;
   dontUseSetuptoolsCheck = true;
 
+  format = "poetry2nix";
+
   installPhase = ''
     mkdir -p $out/bin
     ${lib.concatStringsSep "\n" (lib.mapAttrsToList mkScript scripts)}
diff --git a/pkgs/development/tools/protoc-gen-connect-go/default.nix b/pkgs/development/tools/protoc-gen-connect-go/default.nix
index 4bcf710e41ce4..984c8fbf119e1 100644
--- a/pkgs/development/tools/protoc-gen-connect-go/default.nix
+++ b/pkgs/development/tools/protoc-gen-connect-go/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "protoc-gen-connect-go";
-  version = "0.1.1";
+  version = "1.0.0";
 
   src = fetchFromGitHub {
     owner = "bufbuild";
     repo = "connect-go";
     rev = "v${version}";
-    sha256 = "sha256-sChXmz88AV2uw7QqIj2kwrUStcOU91Bm+QOj0GQ075Y=";
+    sha256 = "sha256-SCTNgBOa8NnU+1OYEUXTHCCcDXVkzVj6wKkbBy+N9TI=";
   };
 
-  vendorSha256 = "sha256-qf9Ni2eL7gyE3/B6Lkrzsfu6ajjKUdDr7DzMJif3wbg=";
+  vendorSha256 = "sha256-Bh2JCWTaML/QU/sLBsxLKMzzH++K22BTGusfcVW2GBw=";
 
   subPackages = [ "cmd/protoc-gen-connect-go" ];
 
diff --git a/pkgs/development/tools/protoc-gen-entgrpc/default.nix b/pkgs/development/tools/protoc-gen-entgrpc/default.nix
index 77e872a68b13e..c2afb381aa298 100644
--- a/pkgs/development/tools/protoc-gen-entgrpc/default.nix
+++ b/pkgs/development/tools/protoc-gen-entgrpc/default.nix
@@ -22,7 +22,7 @@ buildGoModule rec {
     downloadPage = "https://github.com/ent/contrib/";
     license = licenses.asl20;
     homepage = "https://entgo.io/";
-    maintainers = with maintainers; [ superherointj ];
+    maintainers = with maintainers; [ ];
   };
 }
 
diff --git a/pkgs/development/tools/railway/default.nix b/pkgs/development/tools/railway/default.nix
index f8914aa773b3b..31510c45d7f1d 100644
--- a/pkgs/development/tools/railway/default.nix
+++ b/pkgs/development/tools/railway/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "railway";
-  version = "2.0.12";
+  version = "2.0.13";
 
   src = fetchFromGitHub {
     owner = "railwayapp";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "sha256-g1ljbdRppu4IGEgYxHeaRtG8SvgQ+/+Tir1L1dfuZw4=";
+    sha256 = "sha256-NYYzMwwRm49YPcXUeriYIXjjK4ZJbbtF9Otr3MWXsiY=";
   };
 
   ldflags = [ "-s" "-w" ];
diff --git a/pkgs/development/tools/ruff/default.nix b/pkgs/development/tools/ruff/default.nix
index 671d7ba58d9f7..026a96e60f16e 100644
--- a/pkgs/development/tools/ruff/default.nix
+++ b/pkgs/development/tools/ruff/default.nix
@@ -8,16 +8,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "ruff";
-  version = "0.0.49";
+  version = "0.0.67";
 
   src = fetchFromGitHub {
     owner = "charliermarsh";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Ytjtw13tVn29rfHd5yPg3ZdAzBevHQblPkWZ+i3cX/g=";
+    sha256 = "sha256-ZpUrnYIT4OHIwEgq+M+ap/DSZF5y/m7GFRP3iqEamlY=";
   };
 
-  cargoSha256 = "sha256-nryWFPjsipweTFe9Snggv7O/xmtgO7XFDcR6VmBYHkc=";
+  cargoSha256 = "sha256-XKGkD4RxRV+7atUPVikPv4106tK5NuH+0BZu39FGREM=";
 
   buildInputs = lib.optionals stdenv.isDarwin [
     CoreServices
diff --git a/pkgs/development/tools/rust/cargo-audit/default.nix b/pkgs/development/tools/rust/cargo-audit/default.nix
index 982a000caa74d..9489797ac176b 100644
--- a/pkgs/development/tools/rust/cargo-audit/default.nix
+++ b/pkgs/development/tools/rust/cargo-audit/default.nix
@@ -1,25 +1,22 @@
 { lib
-, stdenv
 , rustPlatform
-, fetchFromGitHub
-, openssl
+, fetchCrate
 , pkg-config
+, openssl
+, stdenv
 , Security
-, libiconv
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-audit";
-  version = "0.17.0";
+  version = "0.17.2";
 
-  src = fetchFromGitHub {
-    owner = "RustSec";
-    repo = "rustsec";
-    rev = "cargo-audit%2Fv${version}";
-    sha256 = "sha256-x91x5XjIRXLhs96r06ITbpHCkHoaCaMXH+VCp6f57Gg=";
+  src = fetchCrate {
+    inherit pname version;
+    sha256 = "sha256-fSdh8yCV+2AdAtF4eO2z8+uxOAf2N0IxqIFLw4B8dKE=";
   };
 
-  cargoSha256 = "sha256-/CzRkdo4kfvRwOZsfyu0zL3UnjEKCBj7wj40jlydSDI=";
+  cargoSha256 = "sha256-YCEQaUcTmZ9zTdGcDQkaVI0Dc8oIBvt840s3x9PUlrg=";
 
   nativeBuildInputs = [
     pkg-config
@@ -27,12 +24,11 @@ rustPlatform.buildRustPackage rec {
 
   buildInputs = [
     openssl
-    libiconv
   ] ++ lib.optionals stdenv.isDarwin [
     Security
   ];
 
-  buildFeatures = [ "fix" ];
+  buildFeatures = [ "binary-scanning" "fix" ];
 
   # The tests require network access which is not available in sandboxed Nix builds.
   doCheck = false;
@@ -40,7 +36,8 @@ rustPlatform.buildRustPackage rec {
   meta = with lib; {
     description = "Audit Cargo.lock files for crates with security vulnerabilities";
     homepage = "https://rustsec.org";
+    changelog = "https://github.com/rustsec/rustsec/blob/cargo-audit/v${version}/cargo-audit/CHANGELOG.md";
     license = with licenses; [ mit /* or */ asl20 ];
-    maintainers = with maintainers; [ basvandijk jk ];
+    maintainers = with maintainers; [ basvandijk figsoda jk ];
   };
 }
diff --git a/pkgs/development/tools/rust/cargo-bisect-rustc/0001-dynamically-patchelf-binaries.patch b/pkgs/development/tools/rust/cargo-bisect-rustc/0001-dynamically-patchelf-binaries.patch
index 6a4967e960548..3df226835ab91 100644
--- a/pkgs/development/tools/rust/cargo-bisect-rustc/0001-dynamically-patchelf-binaries.patch
+++ b/pkgs/development/tools/rust/cargo-bisect-rustc/0001-dynamically-patchelf-binaries.patch
@@ -1,22 +1,22 @@
 diff --git a/src/toolchains.rs b/src/toolchains.rs
-index 4d85e7c..b1353c6 100644
+index 53a7ddb..795a711 100644
 --- a/src/toolchains.rs
 +++ b/src/toolchains.rs
-@@ -259,6 +259,8 @@ impl Toolchain {
-             .map_err(InstallError::Download)?;
+@@ -206,6 +206,8 @@ impl Toolchain {
+             })?;
          }
-
+ 
 +        nix_patchelf(tmpdir.path().to_path_buf())
 +            .expect("failed to patch toolchain for NixOS");
-         fs::rename(tmpdir.into_path(), dest).map_err(InstallError::Move)?;
-
-         Ok(())
-@@ -557,3 +559,42 @@ pub(crate) fn download_tarball(
+         fs::rename(tmpdir.into_path(), dest).map_err(InstallError::Move)
+     }
+ 
+@@ -533,3 +535,42 @@ fn download_tarball(
+         res => res,
      }
-     download_tar_gz(client, name, &format!("{}.gz", url,), strip_prefix, dest)
  }
 +
-+fn nix_patchelf(mut toolchain_path: PathBuf) -> Result<(), Error> {
++fn nix_patchelf(mut toolchain_path: PathBuf) -> io::Result<()> {
 +    toolchain_path.push("bin");
 +
 +    for entry in toolchain_path.read_dir()? {
diff --git a/pkgs/development/tools/rust/cargo-bisect-rustc/default.nix b/pkgs/development/tools/rust/cargo-bisect-rustc/default.nix
index 107241896edc6..6aea40cf0e731 100644
--- a/pkgs/development/tools/rust/cargo-bisect-rustc/default.nix
+++ b/pkgs/development/tools/rust/cargo-bisect-rustc/default.nix
@@ -12,13 +12,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-bisect-rustc";
-  version = "0.6.3";
+  version = "0.6.4";
 
   src = fetchFromGitHub {
     owner = "rust-lang";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-TRcHeA4pOzODyzkQCGkdAWy3Bt2ltrOcpCMDu6n4k3k=";
+    hash = "sha256-dJpdAg+A7TYm6bGq73aA15hIymbJ56ScyygQLiEboak=";
   };
 
   patches =
@@ -46,7 +46,12 @@ rustPlatform.buildRustPackage rec {
     Security
   ];
 
-  cargoSha256 = "sha256-3I5V/JOxxy1+Cwkq9tuHMgHQ0eCfzAViJ4Gl+l8RHlE=";
+  cargoHash = "sha256-Y/CQcIgdG8dCvPF5bmJDySmgzRi6lFU/aJxkyUjYlAM=";
+
+  checkFlags = [
+    "--skip cli_tests"    # https://github.com/rust-lang/cargo-bisect-rustc/issues/226
+    "--skip test_github"  # requires internet
+  ];
 
   meta = with lib; {
     description = "Bisects rustc, either nightlies or CI artifacts";
diff --git a/pkgs/development/tools/rust/cargo-edit/default.nix b/pkgs/development/tools/rust/cargo-edit/default.nix
index 2017d5ed21baf..c4b4c121153a4 100644
--- a/pkgs/development/tools/rust/cargo-edit/default.nix
+++ b/pkgs/development/tools/rust/cargo-edit/default.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-edit";
-  version = "0.11.3";
+  version = "0.11.5";
 
   src = fetchFromGitHub {
     owner = "killercup";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-xhUI8rkABw3Op3sTctAIL7nCTX6Ejl2jMr0RI4oERIU=";
+    hash = "sha256-6hiRxVxm9GGss4rLctYiA5ukkyd6V9N47RJ0c/VhqTY=";
   };
 
-  cargoSha256 = "sha256-7Of641eBgXqa6vaAr4NotDScGPRd+RcTzWRmIn8pEeU=";
+  cargoSha256 = "sha256-+JKBmqtDxi30T5Lw5YOn47gSW7p5fecOxZ8i9smDz/s=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/development/tools/rust/cargo-insta/default.nix b/pkgs/development/tools/rust/cargo-insta/default.nix
index 92086a5756211..cf540117f512f 100644
--- a/pkgs/development/tools/rust/cargo-insta/default.nix
+++ b/pkgs/development/tools/rust/cargo-insta/default.nix
@@ -2,17 +2,17 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-insta";
-  version = "1.18.1";
+  version = "1.20.0";
 
   src = fetchFromGitHub {
     owner = "mitsuhiko";
     repo = "insta";
     rev = version;
-    sha256 = "sha256-yTzLEV4yP6It4KrUPdTgIJrocW+VToOeyaSvOSQRVMU=";
+    sha256 = "sha256-tzC5AOlms5UDQ8+L7M2Tb5K/RtjZuDs23JSnLGH6pkI=";
   };
 
   sourceRoot = "source/cargo-insta";
-  cargoSha256 = "sha256-y9o2sNiDIYKzrsgG+tA17PswR6DZn7ms8n5EG/J9oOU=";
+  cargoSha256 = "sha256-9r/RPzjPzDSRamntfu8Xz4XWieAU/bnw2m9wtzwkcwk=";
   buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
 
   meta = with lib; {
diff --git a/pkgs/development/tools/rust/cargo-lock/default.nix b/pkgs/development/tools/rust/cargo-lock/default.nix
new file mode 100644
index 0000000000000..608faf92a5a83
--- /dev/null
+++ b/pkgs/development/tools/rust/cargo-lock/default.nix
@@ -0,0 +1,23 @@
+{ lib, rustPlatform, fetchCrate }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "cargo-lock";
+  version = "8.0.2";
+
+  src = fetchCrate {
+    inherit pname version;
+    sha256 = "sha256-I64LXY8e8ztICS6AKfrNr/7Ntap7ESjindNWEeny6ZA=";
+  };
+
+  cargoSha256 = "sha256-Yy7KQvPeyw5YSzUmoxUJAueVzkfQqDPE1j2+L+KifpU=";
+
+  buildFeatures = [ "cli" ];
+
+  meta = with lib; {
+    description = "Self-contained Cargo.lock parser with graph analysis";
+    homepage = "https://github.com/rustsec/rustsec/tree/main/cargo-lock";
+    changelog = "https://github.com/rustsec/rustsec/blob/cargo-lock/v${version}/cargo-lock/CHANGELOG.md";
+    license = with licenses; [ asl20 /* or */ mit ];
+    maintainers = with maintainers; [ figsoda ];
+  };
+}
diff --git a/pkgs/development/tools/rust/cargo-public-api/default.nix b/pkgs/development/tools/rust/cargo-public-api/default.nix
index 983156c2c05dc..3bcc9523b9644 100644
--- a/pkgs/development/tools/rust/cargo-public-api/default.nix
+++ b/pkgs/development/tools/rust/cargo-public-api/default.nix
@@ -8,14 +8,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-public-api";
-  version = "0.19.0";
+  version = "0.20.0";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-gtqPt59jA4NhbaE9ij45oFEaAJ+l984lWEjloQtBSSE=";
+    sha256 = "sha256-59A3RPdltDfMDPTFbBHcnJoFEp718xvYgg6v4MvsxaQ=";
   };
 
-  cargoSha256 = "sha256-j0bsuu+A5oCf+0pFM4PAQ3oqq9POc5rrzt5UR0RDnAw=";
+  cargoSha256 = "sha256-GEttxHtdOYMijv1xxK7U0d8WNwJcpqJNgDYKgCV/zVw=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/development/tools/rust/cargo-tally/default.nix b/pkgs/development/tools/rust/cargo-tally/default.nix
index 5f2d8194d0646..6bfb04300436e 100644
--- a/pkgs/development/tools/rust/cargo-tally/default.nix
+++ b/pkgs/development/tools/rust/cargo-tally/default.nix
@@ -2,14 +2,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-tally";
-  version = "1.0.15";
+  version = "1.0.16";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-vrDPFJB0/kRSZot8LdYO6lPI8oR5G4CZv6Z31gF7XII=";
+    sha256 = "sha256-AOvZEfDjsDAj4ZlrTB5a7dregPffhE4/xpdy1ZtvZCI=";
   };
 
-  cargoSha256 = "sha256-dkCfOTZCu9MgqvKJRWwyVfCu1Ul0wDCJznM+N2hPpwo=";
+  cargoSha256 = "sha256-94f76eHYaMoDEWATtvap4wPbpJkLq49Fsp579eoxlBs=";
 
   buildInputs = lib.optionals stdenv.isDarwin [
     DiskArbitration
diff --git a/pkgs/development/tools/rust/cargo-update/default.nix b/pkgs/development/tools/rust/cargo-update/default.nix
index 15066cc9b1f6e..86b914fa33f67 100644
--- a/pkgs/development/tools/rust/cargo-update/default.nix
+++ b/pkgs/development/tools/rust/cargo-update/default.nix
@@ -15,14 +15,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-update";
-  version = "9.0.0";
+  version = "10.0.1";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-SiqDTB+wm0j6jObUGWBhMKJJAiw2l0gwP5T110qKrn0=";
+    sha256 = "sha256-TerrXrHw5sh4ayaJs0cdSkjR8u0TIVWOSfnbUfnXP4c=";
   };
 
-  cargoSha256 = "sha256-C9lKFw3kwjdN33QcjbrEtFzsI2ZJhioTwoJWpNXhn8w=";
+  cargoSha256 = "sha256-gURGLXbixgrkEAAqbVM7Qdt1i7t9xtBHBJ4fjQq0fjw=";
 
   nativeBuildInputs = [ cmake installShellFiles pkg-config ronn ];
 
diff --git a/pkgs/development/tools/rust/cargo-zigbuild/default.nix b/pkgs/development/tools/rust/cargo-zigbuild/default.nix
index da5e542454777..bbf4b899e2294 100644
--- a/pkgs/development/tools/rust/cargo-zigbuild/default.nix
+++ b/pkgs/development/tools/rust/cargo-zigbuild/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-zigbuild";
-  version = "0.12.3";
+  version = "0.13.0";
 
   src = fetchFromGitHub {
     owner = "messense";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-qwOlYy9pNAKEJDgt3ML4dxDwlkyPIVO+X/q/YijEHo0=";
+    sha256 = "sha256-lYQmuenL7cbgfb6tdhdxkNe3wrQj7hTijyrhr/p4zLo=";
   };
 
-  cargoSha256 = "sha256-8x2B8WBN9u17HS58bAwMNPEoSabNX6KzyPBLEvaGOBk=";
+  cargoSha256 = "sha256-Ae0ootHGbW5FJTkIRc9lTKHWsHOz6/WZCWCLZlSROU4=";
 
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/pkgs/development/tools/rust/duckscript/default.nix b/pkgs/development/tools/rust/duckscript/default.nix
index 339313b56be8a..71a455274912c 100644
--- a/pkgs/development/tools/rust/duckscript/default.nix
+++ b/pkgs/development/tools/rust/duckscript/default.nix
@@ -13,11 +13,11 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "duckscript_cli";
-  version = "0.8.14";
+  version = "0.8.15";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-3LsHgn4FeukQXkEVG7V3wJlH+0Ut2cQQSQDrLMhc7qw=";
+    sha256 = "sha256-o8tbeKHdu4t0xQR+ZqUoCd6ekrSDkccFveZ2WL822nU=";
   };
 
   nativeBuildInputs = [ pkg-config ];
@@ -25,7 +25,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ]
     ++ lib.optionals stdenv.isDarwin [ Security SystemConfiguration libiconv ];
 
-  cargoSha256 = "sha256-SiuDKH1jXU6m9MfQ9W3GxXVMkxOxB1Y3zn0Iz8zR7Zs=";
+  cargoSha256 = "sha256-wIRX8n7mt6xMyJh/zwganZ9Dmr0BdtualQJW6833a40=";
 
   meta = with lib; {
     description = "Simple, extendable and embeddable scripting language.";
diff --git a/pkgs/development/tools/rust/probe-run/default.nix b/pkgs/development/tools/rust/probe-run/default.nix
index 4135a26d0f128..59d9f7c6d5953 100644
--- a/pkgs/development/tools/rust/probe-run/default.nix
+++ b/pkgs/development/tools/rust/probe-run/default.nix
@@ -1,20 +1,36 @@
-{ lib, stdenv, rustPlatform, fetchCrate, pkg-config, libusb1
-, libiconv, AppKit, IOKit }:
+{ lib
+, stdenv
+, rustPlatform
+, fetchCrate
+, pkg-config
+, libusb1
+, libiconv
+, AppKit
+, IOKit
+}:
 
 rustPlatform.buildRustPackage rec {
   pname = "probe-run";
-  version = "0.3.4";
+  version = "0.3.5";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-xVxigZET2/7xr+bb3r80F3y0yaNV1JeGeJ2EF0GWa1A=";
+    sha256 = "sha256-C9JxQVsS1Bv9euQ7l+p5aehiGLKdrUMcno9z8UoZKR4=";
   };
 
-  cargoSha256 = "sha256-MK3F3Kt80Xdbbm68Jv1uh78nAj1LzJ90H54NYdn+Oms=";
+  cargoSha256 = "sha256-kmdRwAq6EOniGHC7JhB6Iov1E4hbQbxHlOcc6gUDOhY=";
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ libusb1 ]
-    ++ lib.optionals stdenv.isDarwin [ libiconv AppKit IOKit ];
+  nativeBuildInputs = [
+    pkg-config
+  ];
+
+  buildInputs = [
+    libusb1
+  ] ++ lib.optionals stdenv.isDarwin [
+    libiconv
+    AppKit
+    IOKit
+  ];
 
   meta = with lib; {
     description = "Run embedded programs just like native ones";
diff --git a/pkgs/development/tools/rust/rust-analyzer/default.nix b/pkgs/development/tools/rust/rust-analyzer/default.nix
index 2cbf183ef4193..056b15fc18aea 100644
--- a/pkgs/development/tools/rust/rust-analyzer/default.nix
+++ b/pkgs/development/tools/rust/rust-analyzer/default.nix
@@ -12,14 +12,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rust-analyzer-unwrapped";
-  version = "2022-09-26";
-  cargoSha256 = "sha256-Wq5fI/ohoTHEjx0wa8De2uh8cG5+92H+vAfDa25JilY=";
+  version = "2022-10-10";
+  cargoSha256 = "sha256-9ykD9CMvrg6WG2jyKDNdkzZejla7WCXgAxuLGGrx62g=";
 
   src = fetchFromGitHub {
     owner = "rust-lang";
     repo = "rust-analyzer";
     rev = version;
-    sha256 = "sha256-aCHudrXd8DKocehX6aWzlbZv4bq2l7MFXhM/wc2NdmI=";
+    sha256 = "sha256-Ssoxr1ggoPsvFBsCWNQTleYLOTqx6hFKFvktzGDC51A=";
   };
 
   cargoBuildFlags = [ "--bin" "rust-analyzer" "--bin" "rust-analyzer-proc-macro-srv" ];
diff --git a/pkgs/development/tools/rust/svd2rust/default.nix b/pkgs/development/tools/rust/svd2rust/default.nix
index 1988778ec6cd9..cf1b63c7150ec 100644
--- a/pkgs/development/tools/rust/svd2rust/default.nix
+++ b/pkgs/development/tools/rust/svd2rust/default.nix
@@ -1,17 +1,15 @@
-{ lib, rustPlatform, fetchCrate, stdenv, libiconv }:
+{ lib, rustPlatform, fetchCrate }:
 
 rustPlatform.buildRustPackage rec {
   pname = "svd2rust";
-  version = "0.25.1";
+  version = "0.26.0";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-mPkcefB9oTLYhtokhUVwoWfsvLtZWWb+LwElmJeZsiA=";
+    sha256 = "sha256-XoiAnJDTwO93cMH8Z8mJbPfVMhq7c/Xc38gUNYmSX6Y=";
   };
 
-  cargoSha256 = "sha256-sjjmsrgKfrvXynVsZuYkmGKmh0cTAlSNT4h2fVHATrU=";
-
-  buildInputs = lib.optional stdenv.isDarwin libiconv;
+  cargoSha256 = "sha256-5mu+8tmO70PZq13VuFeovgAmhPmL5G4ju5AvjsC7Idc=";
 
   meta = with lib; {
     description = "Generate Rust register maps (`struct`s) from SVD files";
diff --git a/pkgs/development/tools/sd-local/default.nix b/pkgs/development/tools/sd-local/default.nix
index 81b3a0bc6161e..06fe1af307c42 100644
--- a/pkgs/development/tools/sd-local/default.nix
+++ b/pkgs/development/tools/sd-local/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "sd-local";
-  version = "1.0.43";
+  version = "1.0.45";
 
   src = fetchFromGitHub {
     owner = "screwdriver-cd";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-qFEug8fGOi5IwnA1P3FHKte7eiviNk/x8SdDss9J5vo=";
+    sha256 = "sha256-ziCDuGpvBPKC3p+kuPi5+Hjfkld/Kh0ZqnLKwdMrXNM=";
   };
 
   vendorSha256 = "sha256-43hcIIGqBscMjQzaIGdMqV5lq3od4Ls4TJdTeFGtu5Y=";
diff --git a/pkgs/development/tools/selenium/chromedriver/default.nix b/pkgs/development/tools/selenium/chromedriver/default.nix
index 2ce075272ebb7..e1f3d4375b34b 100644
--- a/pkgs/development/tools/selenium/chromedriver/default.nix
+++ b/pkgs/development/tools/selenium/chromedriver/default.nix
@@ -19,7 +19,7 @@ let
     };
 
     aarch64-darwin = {
-      system = "mac64_m1";
+      system = "mac_arm64";
       sha256 = upstream-info.sha256_darwin_aarch64;
     };
   };
diff --git a/pkgs/development/tools/sentry-cli/default.nix b/pkgs/development/tools/sentry-cli/default.nix
index 47f5b8fc4115c..fe947b9b84447 100644
--- a/pkgs/development/tools/sentry-cli/default.nix
+++ b/pkgs/development/tools/sentry-cli/default.nix
@@ -9,13 +9,13 @@
 }:
 rustPlatform.buildRustPackage rec {
   pname = "sentry-cli";
-  version = "2.5.2";
+  version = "2.7.0";
 
   src = fetchFromGitHub {
     owner = "getsentry";
     repo = "sentry-cli";
     rev = version;
-    sha256 = "sha256-l632b+Cxs9jiahbeZYzjXDiw+LE2MUgx4negEh9jMAc=";
+    sha256 = "sha256-ua8U1sYQoSi4xYmJ34icJyblu2VPoVtJMXdZWbhbIF0=";
   };
   doCheck = false;
 
@@ -25,7 +25,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security SystemConfiguration ];
   nativeBuildInputs = [ pkg-config ];
 
-  cargoSha256 = "sha256-uVzUCwYJo3CRykGHSfxigi2N9YSsxh0q8xMXuOe2Zsk=";
+  cargoSha256 = "sha256-bwggklnaT1x/jhz4v7po0uNi65V+u1Jbqk6Ij07DAUU=";
 
   meta = with lib; {
     homepage = "https://docs.sentry.io/cli/";
diff --git a/pkgs/development/tools/snazy/default.nix b/pkgs/development/tools/snazy/default.nix
index 59a691a50a813..4dbd230d563ba 100644
--- a/pkgs/development/tools/snazy/default.nix
+++ b/pkgs/development/tools/snazy/default.nix
@@ -1,16 +1,26 @@
-{ lib, fetchFromGitHub, rustPlatform }:
+{ lib, rustPlatform, fetchFromGitHub, installShellFiles }:
 
 rustPlatform.buildRustPackage rec {
   pname = "snazy";
-  version = "0.10.1";
+  version = "0.50.0";
 
   src = fetchFromGitHub {
     owner = "chmouel";
     repo = pname;
     rev = version;
-    sha256 = "sha256-kUoML6UUgZLOBCbakj1CJeRSt268rv2ymAdvPkcn8R4=";
+    sha256 = "sha256-wSRIJF2XPJvzmxuGbuPYPFgn9Eap3vqHT1CM/oQy8vM=";
   };
-  cargoSha256 = "sha256-MPfzC5iEE8GficLUaGaBy5usZzYoreYsdadoiiRoVQI=";
+
+  cargoSha256 = "sha256-IGZZEyy9IGqkpsbnOzLdBSFbinZ7jhH2LWub/+gP89E=";
+
+  nativeBuildInputs = [ installShellFiles ];
+
+  postInstall = ''
+    installShellCompletion --cmd snazy \
+      --bash <($out/bin/snazy --shell-completion bash) \
+      --fish <($out/bin/snazy --shell-completion fish) \
+      --zsh <($out/bin/snazy --shell-completion zsh)
+  '';
 
   doInstallCheck = true;
   installCheckPhase = ''
@@ -29,6 +39,6 @@ rustPlatform.buildRustPackage rec {
       with nice colors.
     '';
     license = licenses.asl20;
-    maintainers = with maintainers; [ jk ];
+    maintainers = with maintainers; [ figsoda jk ];
   };
 }
diff --git a/pkgs/development/tools/symfony-cli/default.nix b/pkgs/development/tools/symfony-cli/default.nix
index 03209f7ba3d28..acc28a05b115a 100644
--- a/pkgs/development/tools/symfony-cli/default.nix
+++ b/pkgs/development/tools/symfony-cli/default.nix
@@ -2,14 +2,14 @@
 
 buildGoModule rec {
   pname = "symfony-cli";
-  version = "5.4.14";
+  version = "5.4.15";
   vendorSha256 = "sha256-A0Dq5QoKSFDpif8x27a1O8CGZ9s5PzOycvPfvEp4qn4=";
 
   src = fetchFromGitHub {
     owner = "symfony-cli";
     repo = "symfony-cli";
     rev = "v${version}";
-    sha256 = "sha256-XALXgEzVlgUbqatQMBd+blLK9Lt1rJ9+mWEvxhxneIo=";
+    sha256 = "sha256-UESACnwlJjdU1Bm6K9pGNs6p3B/KY71mnlNEfC7ccbc=";
   };
 
   postInstall = ''
diff --git a/pkgs/development/tools/unconvert/default.nix b/pkgs/development/tools/unconvert/default.nix
index 9541e7f78e3f0..424cafde2f6a4 100644
--- a/pkgs/development/tools/unconvert/default.nix
+++ b/pkgs/development/tools/unconvert/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "unconvert";
-  version = "unstable-2020-02-28";
+  version = "unstable-2022-09-18";
 
   src = fetchFromGitHub {
     owner = "mdempsky";
     repo = "unconvert";
-    rev = "95ecdbfc0b5f3e65790c43c77874ee5357ad8a8f";
-    sha256 = "sha256-jC2hbpGJeW9TBWIWdeLeGaoNdsm/gOKY4oaDsO5Fwlw=";
+    rev = "3f84926d692329767c21c2aef3dfb7889c956832";
+    sha256 = "sha256-vcRHriFCT5b8SKjtRSg+kZDcCAKySC1cKVq+FMZb+9M=";
   };
 
-  vendorSha256 = "sha256-HmksSYA4974w+J/7PkMKEkXEfIkldj+kVywvsfLgE38=";
+  vendorSha256 = "sha256-p77mLvGtohmC8J+bqqkM5kqc1pMPcFx7GhXOZ4q4jeM=";
 
   ldflags = [ "-s" "-w" ];
 
diff --git a/pkgs/development/tools/vultr-cli/default.nix b/pkgs/development/tools/vultr-cli/default.nix
index 40753ffe2163b..e8a0762a07583 100644
--- a/pkgs/development/tools/vultr-cli/default.nix
+++ b/pkgs/development/tools/vultr-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "vultr-cli";
-  version = "2.14.2";
+  version = "2.15.0";
 
   src = fetchFromGitHub {
     owner = "vultr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Rlill4T9zHdJUVk/46cPknaBXNN+PUGungqRdTMHFz4=";
+    sha256 = "sha256-F2ZC8JC0PYY4u2to+QzQr2z2+tqOkx59lz8EHqqPotY=";
   };
 
   vendorSha256 = null;
diff --git a/pkgs/development/tools/wabt/default.nix b/pkgs/development/tools/wabt/default.nix
index d74d4ad422e81..a5690c8468c8b 100644
--- a/pkgs/development/tools/wabt/default.nix
+++ b/pkgs/development/tools/wabt/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wabt";
-  version = "1.0.29";
+  version = "1.0.30";
 
   src = fetchFromGitHub {
     owner = "WebAssembly";
     repo = "wabt";
     rev = version;
-    sha256 = "sha256-7Kh8kCwdSZX7E2s7UWptQHabYCVZG4luMiB1RJ72hQc=";
+    sha256 = "sha256-C8S1+wcJhfv65HY8KCSnX+F6wP1E4Vkr0iwW83OwZxk=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/development/tools/wails/default.nix b/pkgs/development/tools/wails/default.nix
index d2ab1a987bf7a..4dd88b1f0d782 100644
--- a/pkgs/development/tools/wails/default.nix
+++ b/pkgs/development/tools/wails/default.nix
@@ -23,7 +23,7 @@ buildGoModule rec {
     sha256 = "sha256-mAHRjIi4/cC29NqTdUF9sMLyHhFANw+QBibk1ENo1BA=";
   } + "/v2";
 
-  vendorSha256 = "sha256-jvjFV7StHCYn85iLWTRBXjPSUeWM+Yr5F3H0rFciCOc=";
+  vendorSha256 = "sha256-Ufm7sUak31/PzR3UGlUKdcrzdX6NRhFEXqteaowmz9k=";
 
   proxyVendor = true;
 
diff --git a/pkgs/development/tools/wasm-bindgen-cli/default.nix b/pkgs/development/tools/wasm-bindgen-cli/default.nix
index 1fd0284784c67..adc088baf217f 100644
--- a/pkgs/development/tools/wasm-bindgen-cli/default.nix
+++ b/pkgs/development/tools/wasm-bindgen-cli/default.nix
@@ -12,14 +12,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wasm-bindgen-cli";
-  version = "0.2.82";
+  version = "0.2.83";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-BQ8v3rCLUvyCCdxo5U+NHh30l9Jwvk9Sz8YQv6fa0SU=";
+    sha256 = "sha256-+PWxeRL5MkIfJtfN3/DjaDlqRgBgWZMa6dBt1Q+lpd0=";
   };
 
-  cargoSha256 = "sha256-mP85+qi2KA0GieaBzbrQOBqYxBZNRJipvd2brCRGyOM=";
+  cargoSha256 = "sha256-GwLeA6xLt7I+NzRaqjwVpt1pzRex1/snq30DPv4FR+g=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/development/tools/wasmedge/default.nix b/pkgs/development/tools/wasmedge/default.nix
index 402991e60594e..146b67f0a3178 100644
--- a/pkgs/development/tools/wasmedge/default.nix
+++ b/pkgs/development/tools/wasmedge/default.nix
@@ -9,13 +9,13 @@
 
 llvmPackages.stdenv.mkDerivation rec {
   pname = "wasmedge";
-  version = "0.11.0";
+  version = "0.11.1";
 
   src = fetchFromGitHub {
     owner = "WasmEdge";
     repo = "WasmEdge";
     rev = version;
-    sha256 = "sha256-4w9+3hp1GVLx2dOTDXlUOH6FgK1jvkt12wXs4/S9UlI=";
+    sha256 = "sha256-+rCzbw44/8mHo6v4rUuXOq4FVs/LJtSF5zhva9/LIL0=";
   };
 
   buildInputs = [
diff --git a/pkgs/development/tools/wp4nix/default.nix b/pkgs/development/tools/wp4nix/default.nix
index 967459e91b749..a97ae77370646 100644
--- a/pkgs/development/tools/wp4nix/default.nix
+++ b/pkgs/development/tools/wp4nix/default.nix
@@ -1,4 +1,10 @@
-{ lib, buildGoModule, fetchFromGitLab, nix, subversion }:
+{ lib
+, buildGoModule
+, fetchFromGitLab
+, nix
+, subversion
+, makeWrapper
+}:
 
 buildGoModule rec {
   pname = "wp4nix";
@@ -14,9 +20,13 @@ buildGoModule rec {
 
   vendorSha256 = "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=";
 
-  postPatch = ''
-    substituteInPlace main.go --replace nix-hash ${nix}/bin/nix-hash
-    substituteInPlace svn.go --replace '"svn"' '"${subversion}/bin/svn"'
+  nativeBuildInputs = [
+    makeWrapper
+  ];
+
+  postInstall = ''
+    wrapProgram $out/bin/wp4nix \
+      --prefix PATH : ${lib.makeBinPath [ nix subversion ]}
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/tools/yamlpath/default.nix b/pkgs/development/tools/yamlpath/default.nix
index b769c33d2317e..1197f7ce5c3e7 100644
--- a/pkgs/development/tools/yamlpath/default.nix
+++ b/pkgs/development/tools/yamlpath/default.nix
@@ -1,46 +1,47 @@
 { lib
-, python3Packages
 , fetchFromGitHub
 , hiera-eyaml
 , python3
 }:
-let
-  py = python3.override {
-    packageOverrides = self: super: {
-      ruamel-yaml = super.ruamel-yaml.overridePythonAttrs(old: rec {
-        pname = "ruamel.yaml";
-        version = "0.17.10";
-        src = python3Packages.fetchPypi {
-          inherit pname version;
-          sha256 = "EGvI1txqD/fJGWpHVwQyA29B1Va3eca05hgIX1fjnmc=";
-        };
-      });
-    };
-  };
-in
-py.pkgs.buildPythonPackage rec {
+
+python3.pkgs.buildPythonApplication rec {
   pname = "yamlpath";
-  version = "3.6.3";
+  version = "3.6.7";
+  format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "wwkimball";
     repo = pname;
     rev = "v${version}";
-    sha256 = "4lLKMMsjVWbnfiaOzdBePOtOwPN8nui3Ux6e55YdGoo=";
+    sha256 = "sha256-lz8n3c+NohZnkbAoF/9rHsGzXW5PWPOsJKUFqqenIRg=";
   };
 
-  propagatedBuildInputs = with py.pkgs; [ ruamel-yaml ];
-  checkInputs = with py.pkgs; [ hiera-eyaml mock pytest-console-scripts pytestCheckHook ];
+  propagatedBuildInputs = with python3.pkgs; [
+    python-dateutil
+    ruamel-yaml
+  ];
+
+  checkInputs = with python3.pkgs; [
+    hiera-eyaml
+    mock
+    pytest-console-scripts
+    pytestCheckHook
+  ];
 
   preCheck = ''
     export PATH=$PATH:$out/bin
   '';
 
+  pythonImportsCheck = [
+    "yamlpath"
+  ];
+
   meta = with lib; {
-    homepage = "https://github.com/wwkimball/yamlpath";
     description = "Command-line processors for YAML/JSON/Compatible data";
+    homepage = "https://github.com/wwkimball/yamlpath";
     longDescription = ''
-      Command-line get/set/merge/validate/scan/convert/diff processors for YAML/JSON/Compatible data using powerful, intuitive, command-line friendly syntax
+      Command-line get/set/merge/validate/scan/convert/diff processors for YAML/JSON/Compatible data
+      using powerful, intuitive, command-line friendly syntax
      '';
     license = licenses.isc;
     maintainers = with maintainers; [ Flakebi ];
diff --git a/pkgs/development/tools/yq-go/default.nix b/pkgs/development/tools/yq-go/default.nix
index c2d839a36efb9..b3e4d97de7a40 100644
--- a/pkgs/development/tools/yq-go/default.nix
+++ b/pkgs/development/tools/yq-go/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "yq-go";
-  version = "4.27.5";
+  version = "4.28.1";
 
   src = fetchFromGitHub {
     owner = "mikefarah";
     repo = "yq";
     rev = "v${version}";
-    sha256 = "sha256-ZUrpmGNrLJuslcHXWERxNQBfUYutXaCSq13ajFy+D28=";
+    sha256 = "sha256-GWEsS5RTwz0VVLRAvHPJk0BPo50RB0CeyIS6fne9GoU=";
   };
 
   vendorSha256 = "sha256-4J/Qz5JN8UUdwa3/Io2/o4Y01eFK9zOcNAZkndzI178=";
diff --git a/pkgs/development/web/deno/default.nix b/pkgs/development/web/deno/default.nix
index eb030152edb8e..5d16cc14c28b5 100644
--- a/pkgs/development/web/deno/default.nix
+++ b/pkgs/development/web/deno/default.nix
@@ -17,15 +17,15 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "deno";
-  version = "1.26.0";
+  version = "1.26.1";
 
   src = fetchFromGitHub {
     owner = "denoland";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-fsZcpfTrn6++/Pj0xT47H56KqADl9Zoz9hJdOY2CxEI=";
+    sha256 = "sha256-rnHs0vMchUXB6iNXyhdN9uDzdyAIPgOxsQLKPHJ46jw=";
   };
-  cargoSha256 = "sha256-nn0ewG6uOOG25DmdABGUB/YRKLfC0U2SAVR5CVP1fKE=";
+  cargoSha256 = "sha256-YHHhrni2HLUIQIw090StfFhkYcipqnoYewEFLw3F0Pg=";
 
   postPatch = ''
     # upstream uses lld on aarch64-darwin for faster builds
diff --git a/pkgs/development/web/flyctl/default.nix b/pkgs/development/web/flyctl/default.nix
index 9a17d8e8a64cf..950012e3624b8 100644
--- a/pkgs/development/web/flyctl/default.nix
+++ b/pkgs/development/web/flyctl/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "flyctl";
-  version = "0.0.402";
+  version = "0.0.407";
 
   src = fetchFromGitHub {
     owner = "superfly";
     repo = "flyctl";
     rev = "v${version}";
-    sha256 = "sha256-SKnSVa+ZARlCA6lrpDZpn5vkJmdvEp3aMwGtpT31jrc=";
+    sha256 = "sha256-M1ijAd4V16Su3gIt3wEXeU2gBTdw9/G5DcgIQ6vlr7s=";
   };
 
-  vendorSha256 = "sha256-gmqCqZ0w7UQDxovxUFm3uweTh/gCAhcqCk/9zt54ndI=";
+  vendorSha256 = "sha256-gIinn3vVQzkASbEUvn0bH8IHL78Lyz9Fb1Tyx1dK49o=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/development/web/ihp-new/default.nix b/pkgs/development/web/ihp-new/default.nix
new file mode 100644
index 0000000000000..69e45f44eb85d
--- /dev/null
+++ b/pkgs/development/web/ihp-new/default.nix
@@ -0,0 +1,32 @@
+{ lib, stdenv, fetchFromGitHub, git, makeWrapper }:
+
+stdenv.mkDerivation rec {
+  pname = "ihp-new";
+  version = "0.20.0";
+
+  src = fetchFromGitHub {
+    owner = "digitallyinduced";
+    repo = "ihp";
+    rev = "v${version}";
+    sha256 = "sha256-fvFRBnMnFGsPleVv5aPfuoP1UzjnBel0NiNULFP+GkI=";
+  };
+
+  dontConfigure = true;
+  sourceRoot = "source/ProjectGenerator";
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  installPhase = ''
+    install -Dm755 bin/ihp-new -t $out/bin
+    wrapProgram $out/bin/ihp-new \
+      --suffix PATH ":" "${lib.makeBinPath [ git ]}";
+  '';
+
+  meta = with lib; {
+    description = "Project generator for the IHP (Integrated Haskell Platform) web framework";
+    homepage = "https://ihp.digitallyinduced.com";
+    license = licenses.mit;
+    maintainers = [ maintainers.mpscholten ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/development/web/postman/darwin.nix b/pkgs/development/web/postman/darwin.nix
index be52288701ec2..cde3a3883e829 100644
--- a/pkgs/development/web/postman/darwin.nix
+++ b/pkgs/development/web/postman/darwin.nix
@@ -11,12 +11,12 @@ let
   dist = {
     aarch64-darwin = {
       arch = "arm64";
-      sha256 = "62b4b3c63668fa4074b35afe08c212557437ff54c742a500087c74955cec9e04";
+      sha256 = "sha256-zvGWkV92qDsiveS1tvkY6jHIr/Xj3ARSOqov+MCRM+o=";
     };
 
     x86_64-darwin = {
       arch = "64";
-      sha256 = "42160a3c3011f43692fcb28b37dec5f708395318681de960f0cb932cea36021f";
+      sha256 = "sha256-LuXC1ucEsrxqx8wAkBkot2wXbUUVp+FIQPx9/2+tfIw=";
     };
   }.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system: ${stdenvNoCC.hostPlatform.system}");
 
diff --git a/pkgs/development/web/postman/default.nix b/pkgs/development/web/postman/default.nix
index fa8940e71dbda..7427ee50e3ba7 100644
--- a/pkgs/development/web/postman/default.nix
+++ b/pkgs/development/web/postman/default.nix
@@ -2,7 +2,7 @@
 
 let
   pname = "postman";
-  version = "9.25.2";
+  version = "9.31.0";
   meta = with lib; {
     homepage = "https://www.getpostman.com";
     description = "API Development Environment";
diff --git a/pkgs/development/web/postman/linux.nix b/pkgs/development/web/postman/linux.nix
index f764500754617..5b5a216d03b23 100644
--- a/pkgs/development/web/postman/linux.nix
+++ b/pkgs/development/web/postman/linux.nix
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://dl.pstmn.io/download/version/${version}/linux64";
-    sha256 = "118da102904cd7b04c50d3e2c2daac3fc1228f05e541eacef55e8ecbf73d3896";
+    sha256 = "sha256-ZCfPE+bvPEQjEvUO/FQ1iNR9TG6GtI4vmj6yJ7B62iw=";
     name = "${pname}.tar.gz";
   };
 
diff --git a/pkgs/development/web/twitter-bootstrap/default.nix b/pkgs/development/web/twitter-bootstrap/default.nix
index de88467f2c03e..0d263cf5101c8 100644
--- a/pkgs/development/web/twitter-bootstrap/default.nix
+++ b/pkgs/development/web/twitter-bootstrap/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bootstrap";
-  version = "5.2.1";
+  version = "5.2.2";
 
   src = fetchurl {
     url = "https://github.com/twbs/bootstrap/releases/download/v${version}/${pname}-${version}-dist.zip";
-    sha256 = "sha256-f/HG5qVgKb8zYd+Pv5IkkYqGcMy+BlEileRC5xiv4WM=";
+    sha256 = "sha256-3zAnCKd+btQFd9aSwfESNz7HNapm2bgQOkf5m1zyMf8=";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/pkgs/games/2048-in-terminal/default.nix b/pkgs/games/2048-in-terminal/default.nix
index 59012227aeda4..2ffefb6011256 100644
--- a/pkgs/games/2048-in-terminal/default.nix
+++ b/pkgs/games/2048-in-terminal/default.nix
@@ -1,26 +1,16 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, ncurses, pkg-config }:
+{ lib, stdenv, fetchFromGitHub, ncurses, pkg-config }:
 
 stdenv.mkDerivation rec {
   pname = "2048-in-terminal";
-  version = "unstable-2021-09-12";
+  version = "unstable-2022-06-13";
 
   src = fetchFromGitHub {
-    sha256 = "1jgacyimn59kxqhrk8jp13qayc2mncxhx393spqcxbz0sj6lxq9p";
-    rev = "466abe827638598e40cb627d2b017fe8f76b3a14";
-    repo = "2048-in-terminal";
     owner = "alewmoose";
+    repo = "2048-in-terminal";
+    rev = "bf22f868a2e0e572f22153468585ec0226a4b8b2";
+    sha256 = "sha256-Y5ZQYWOiG3QZZsr+d7olUDGAQ1LhRG9X2hBNQDx+Ztw=";
   };
 
-  # Fix pending upstream inclusion for ncurses-6.3 support:
-  #  https://github.com/alewmoose/2048-in-terminal/pull/6
-  patches = [
-    (fetchpatch {
-      name = "ncurses-6.3.patch";
-      url = "https://github.com/alewmoose/2048-in-terminal/commit/b1c78dc4b3cca3a193b1afea1ab85a75966823cf.patch";
-      sha256 = "05ibpgr83r7zxsak2l0gaf33858bp0sp0mjfdpmcmw745z3jw7q1";
-    })
-  ];
-
   buildInputs = [ ncurses ];
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/games/adom/default.nix b/pkgs/games/adom/default.nix
index b40a608412ef2..bef9d1b42d32b 100644
--- a/pkgs/games/adom/default.nix
+++ b/pkgs/games/adom/default.nix
@@ -55,5 +55,6 @@ stdenv.mkDerivation rec {
 
     # Please, notify me (smironov) if you need the x86 version
     platforms = ["x86_64-linux"];
+    broken = true; # at 2022-09-30, failed download.
   };
 }
diff --git a/pkgs/games/asc/default.nix b/pkgs/games/asc/default.nix
index a6a1129acad73..46f8231680bd2 100644
--- a/pkgs/games/asc/default.nix
+++ b/pkgs/games/asc/default.nix
@@ -16,9 +16,11 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = "-fpermissive -Wno-error=narrowing -std=c++11"; # I'm too lazy to catch all gcc47-related problems
   hardeningDisable = [ "format" ];
 
+  nativeBuildInputs = [ pkg-config ];
+
   buildInputs = [
     SDL SDL_image SDL_mixer SDL_sound libsigcxx physfs boost expat
-    freetype libjpeg wxGTK lua perl pkg-config zlib zip bzip2 libpng
+    freetype libjpeg wxGTK lua perl zlib zip bzip2 libpng
     libtiff fluidsynth libmikmod flac libvorbis libogg
   ];
 
diff --git a/pkgs/games/augustus/default.nix b/pkgs/games/augustus/default.nix
index c6258ddb24d76..df10516ab35c1 100644
--- a/pkgs/games/augustus/default.nix
+++ b/pkgs/games/augustus/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "augustus";
-  version = "3.1.0";
+  version = "3.2.0";
 
   src = fetchFromGitHub {
     owner = "Keriew";
     repo = "augustus";
     rev = "v${version}";
-    sha256 = "1axm4x3ca5r08sv1b4q8y9c15mkwqd3rnc8k09a2fn3plbk2p2j4";
+    sha256 = "sha256-NS6ijgI/wLsGF5KabjaR7ElKWFXIdjpmPYHVmI4oMzQ=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/games/ddnet/default.nix b/pkgs/games/ddnet/default.nix
index 543d79e429be5..eed383a3ab1e2 100644
--- a/pkgs/games/ddnet/default.nix
+++ b/pkgs/games/ddnet/default.nix
@@ -82,7 +82,7 @@ stdenv.mkDerivation rec {
       compete against the best in international tournaments,
       design your own maps, or run your own server.
     '';
-    homepage = "https://ddnet.tw";
+    homepage = "https://ddnet.org";
     license = licenses.asl20;
     maintainers = with maintainers; [ sirseruju lom ];
     mainProgram = "DDNet";
diff --git a/pkgs/games/eduke32/default.nix b/pkgs/games/eduke32/default.nix
index 4eb46e0ac155c..ec65db97ce436 100644
--- a/pkgs/games/eduke32/default.nix
+++ b/pkgs/games/eduke32/default.nix
@@ -58,7 +58,7 @@ in stdenv.mkDerivation rec {
     done
   '';
 
-  NIX_CFLAGS_COMPILE = "-I${SDL2.dev}/include/SDL2 -I${SDL2_mixer}/include/SDL2";
+  NIX_CFLAGS_COMPILE = "-I${lib.getDev SDL2}/include/SDL2 -I${lib.getDev SDL2_mixer}/include/SDL2";
 
   makeFlags = [
     "SDLCONFIG=${SDL2}/bin/sdl2-config"
diff --git a/pkgs/games/extremetuxracer/default.nix b/pkgs/games/extremetuxracer/default.nix
index 416a3ac913ea4..71887c8b47dc2 100644
--- a/pkgs/games/extremetuxracer/default.nix
+++ b/pkgs/games/extremetuxracer/default.nix
@@ -13,11 +13,12 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-HIdJZeniSVM78VwI2rxh5gwFuz/VeJF4gBF/+KkQzU4=";
   };
 
+  nativeBuildInputs = [ pkg-config intltool ];
   buildInputs = [
     libGLU libGL libX11 xorgproto tcl freeglut freetype
     sfml libXi
     libXmu libXext libXt libSM libICE
-    libpng pkg-config gettext intltool
+    libpng gettext
   ];
 
   configureFlags = [ "--with-tcl=${tcl}/lib" ];
diff --git a/pkgs/games/factorio/versions.json b/pkgs/games/factorio/versions.json
index 37abb4aed03ac..5adf215357d3d 100644
--- a/pkgs/games/factorio/versions.json
+++ b/pkgs/games/factorio/versions.json
@@ -2,56 +2,56 @@
   "x86_64-linux": {
     "alpha": {
       "experimental": {
-        "name": "factorio_alpha_x64-1.1.65.tar.xz",
+        "name": "factorio_alpha_x64-1.1.69.tar.xz",
         "needsAuth": true,
-        "sha256": "0rzifli06s3k3gyzxpzzisxkvnvcidw4njkibrld2n5pwhjg8qbb",
+        "sha256": "0ckvcwnwv1hh946qavfgaywhspd3cyasf8v7w0qmbx359dsv6yb9",
         "tarDirectory": "x64",
-        "url": "https://factorio.com/get-download/1.1.65/alpha/linux64",
-        "version": "1.1.65"
+        "url": "https://factorio.com/get-download/1.1.69/alpha/linux64",
+        "version": "1.1.69"
       },
       "stable": {
-        "name": "factorio_alpha_x64-1.1.61.tar.xz",
+        "name": "factorio_alpha_x64-1.1.69.tar.xz",
         "needsAuth": true,
-        "sha256": "1rgb3i6l9v5vv3qw0ngfxryamql2fhhqymv4dr86rxjy863rpx65",
+        "sha256": "0ckvcwnwv1hh946qavfgaywhspd3cyasf8v7w0qmbx359dsv6yb9",
         "tarDirectory": "x64",
-        "url": "https://factorio.com/get-download/1.1.61/alpha/linux64",
-        "version": "1.1.61"
+        "url": "https://factorio.com/get-download/1.1.69/alpha/linux64",
+        "version": "1.1.69"
       }
     },
     "demo": {
       "experimental": {
-        "name": "factorio_demo_x64-1.1.60.tar.xz",
+        "name": "factorio_demo_x64-1.1.69.tar.xz",
         "needsAuth": false,
-        "sha256": "1sckcc8dndml2ahka96qlhyjqinbgzh2sns2qfphsph9x26q1vxn",
+        "sha256": "08nakf6f31dra3rzv2l57pnww04i4ppil6c3vvvhjcv8j35b5k29",
         "tarDirectory": "x64",
-        "url": "https://factorio.com/get-download/1.1.60/demo/linux64",
-        "version": "1.1.60"
+        "url": "https://factorio.com/get-download/1.1.69/demo/linux64",
+        "version": "1.1.69"
       },
       "stable": {
-        "name": "factorio_demo_x64-1.1.59.tar.xz",
+        "name": "factorio_demo_x64-1.1.69.tar.xz",
         "needsAuth": false,
-        "sha256": "1nddk8184kgq4ni0y9j2l8sa3szvcbsq9l90b35l9jb6sqflgki0",
+        "sha256": "08nakf6f31dra3rzv2l57pnww04i4ppil6c3vvvhjcv8j35b5k29",
         "tarDirectory": "x64",
-        "url": "https://factorio.com/get-download/1.1.59/demo/linux64",
-        "version": "1.1.59"
+        "url": "https://factorio.com/get-download/1.1.69/demo/linux64",
+        "version": "1.1.69"
       }
     },
     "headless": {
       "experimental": {
-        "name": "factorio_headless_x64-1.1.65.tar.xz",
+        "name": "factorio_headless_x64-1.1.69.tar.xz",
         "needsAuth": false,
-        "sha256": "1h5ziip9jbqr03ci2fvf3zqwmy0l7m25br3rm5xv0af9wig9wvh1",
+        "sha256": "1rgspyynz8b8s1kwh67dwnn2mc53jrmmhy7bp7qi0vgbwpb5vhw3",
         "tarDirectory": "x64",
-        "url": "https://factorio.com/get-download/1.1.65/headless/linux64",
-        "version": "1.1.65"
+        "url": "https://factorio.com/get-download/1.1.69/headless/linux64",
+        "version": "1.1.69"
       },
       "stable": {
-        "name": "factorio_headless_x64-1.1.61.tar.xz",
+        "name": "factorio_headless_x64-1.1.69.tar.xz",
         "needsAuth": false,
-        "sha256": "0ndnc0f22bqjg1v6ah7i4nzghvk7cn73sgm22lf715di6f6srr38",
+        "sha256": "1rgspyynz8b8s1kwh67dwnn2mc53jrmmhy7bp7qi0vgbwpb5vhw3",
         "tarDirectory": "x64",
-        "url": "https://factorio.com/get-download/1.1.61/headless/linux64",
-        "version": "1.1.61"
+        "url": "https://factorio.com/get-download/1.1.69/headless/linux64",
+        "version": "1.1.69"
       }
     }
   }
diff --git a/pkgs/games/ferium/default.nix b/pkgs/games/ferium/default.nix
index 2d21d5dc523aa..7fc79f8be4389 100644
--- a/pkgs/games/ferium/default.nix
+++ b/pkgs/games/ferium/default.nix
@@ -2,18 +2,18 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "ferium";
-  version = "4.1.10";
+  version = "4.2.0";
 
   src = fetchFromGitHub {
     owner = "gorilla-devs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-dHubI5IaPAjn+vcHvT1t4HqBraO0QztZnp3sdzpYBJo=";
+    sha256 = "sha256-pJis4Lab/qRc5taeTxSoJOvNrhsWhGJrPILvkmB8k2A=";
   };
 
   buildInputs = lib.optionals stdenv.isDarwin [ Security ];
 
-  cargoSha256 = "sha256-r3QLCh/TXOoXh72AjyV1Ng6nYNCEV9/JggBmd2Gu7j8=";
+  cargoSha256 = "sha256-J1BY0gSkUQRFZJ/UlikvQqrLvCjHlf2jxbg6BIoZZUE=";
 
   # Disable the GUI file picker so that GTK/XDG dependencies aren't used
   buildNoDefaultFeatures = true;
diff --git a/pkgs/games/freedink/default.nix b/pkgs/games/freedink/default.nix
index b48d7e52cf394..ecdcbb7dce69a 100644
--- a/pkgs/games/freedink/default.nix
+++ b/pkgs/games/freedink/default.nix
@@ -25,9 +25,11 @@ in stdenv.mkDerivation rec {
     sha256 = "19xximbcm6506kvpf3s0q96697kmzca3yrjdr6dgphklp33zqsqr";
   };
 
+  nativeBuildInputs = [ pkg-config intltool ];
+
   buildInputs = [
     SDL SDL_mixer SDL_image SDL_ttf SDL_gfx
-    pkg-config intltool fontconfig libzip zip zlib
+    fontconfig libzip zip zlib
   ];
 
   preConfigure = ''
diff --git a/pkgs/games/gzdoom/default.nix b/pkgs/games/gzdoom/default.nix
index c2489e5d033e7..3eb69fa3c1120 100644
--- a/pkgs/games/gzdoom/default.nix
+++ b/pkgs/games/gzdoom/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub, fetchpatch, cmake, makeWrapper, openal, fluidsynth
 , soundfont-fluid, libGL, SDL2, bzip2, zlib, libjpeg, libsndfile, libvpx, mpg123
-, game-music-emu, pkg-config, copyDesktopItems, makeDesktopItem }:
+, game-music-emu, pkg-config, copyDesktopItems, makeDesktopItem, gtk3 }:
 
 let
   zmusic = stdenv.mkDerivation rec {
@@ -16,6 +16,10 @@ let
 
     nativeBuildInputs = [ cmake pkg-config ];
 
+    buildInputs = [ fluidsynth ];
+
+    cmakeFlags = [ "-DDYN_FLUIDSYNTH=OFF" ];
+
     preConfigure = ''
       sed -i \
         -e "s@/usr/share/sounds/sf2/@${soundfont-fluid}/share/soundfonts/@g" \
@@ -39,16 +43,17 @@ let
     nativeBuildInputs = [ cmake makeWrapper pkg-config copyDesktopItems ];
     buildInputs = [
       SDL2
-      libGL
-      openal
-      fluidsynth
       bzip2
-      zlib
+      fluidsynth
+      game-music-emu
+      gtk3
+      libGL
       libjpeg
       libsndfile
       libvpx
       mpg123
-      game-music-emu
+      openal
+      zlib
       zmusic
     ];
 
@@ -61,6 +66,8 @@ let
 
     NIX_CFLAGS_LINK = "-lopenal -lfluidsynth";
 
+    cmakeFlags = [ "-DDYN_GTK=OFF" ];
+
     desktopItems = [
       (makeDesktopItem {
         name = "gzdoom";
diff --git a/pkgs/games/iortcw/sp.nix b/pkgs/games/iortcw/sp.nix
index d9faa177c17da..ba8a4dd10bd32 100644
--- a/pkgs/games/iortcw/sp.nix
+++ b/pkgs/games/iortcw/sp.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
 
   NIX_CFLAGS_COMPILE = [
     "-I${SDL2.dev}/include/SDL2"
-    "-I${opusfile}/include/opus"
+    "-I${opusfile.dev}/include/opus"
   ];
   NIX_CFLAGS_LINK = [ "-lSDL2" ];
 
diff --git a/pkgs/games/ivan/default.nix b/pkgs/games/ivan/default.nix
index 53e1b3cf00e14..80dc182127d15 100644
--- a/pkgs/games/ivan/default.nix
+++ b/pkgs/games/ivan/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   cmakeFlags = ["-DCMAKE_CXX_FLAGS=-DWIZARD"];
 
   # Help CMake find SDL_mixer.h
-  NIX_CFLAGS_COMPILE = "-I${SDL2_mixer}/include/SDL2";
+  NIX_CFLAGS_COMPILE = "-I${lib.getDev SDL2_mixer}/include/SDL2";
 
   # Create "ivan.desktop" file
   ivanDesktop = makeDesktopItem {
diff --git a/pkgs/games/openrct2/default.nix b/pkgs/games/openrct2/default.nix
index b9ffec66bcc19..04bf9d0c7f495 100644
--- a/pkgs/games/openrct2/default.nix
+++ b/pkgs/games/openrct2/default.nix
@@ -26,25 +26,25 @@
 }:
 
 let
-  openrct2-version = "0.4.1";
+  openrct2-version = "0.4.2";
 
   # Those versions MUST match the pinned versions within the CMakeLists.txt
   # file. The REPLAYS repository from the CMakeLists.txt is not necessary.
-  objects-version = "1.3.2";
+  objects-version = "1.3.5";
   title-sequences-version = "0.4.0";
 
   openrct2-src = fetchFromGitHub {
     owner = "OpenRCT2";
     repo = "OpenRCT2";
     rev = "v${openrct2-version}";
-    sha256 = "sha256-fMs0zrMzv9jXreZE4QyYIdvWUU/FUFVPuo4EzAF/2rU=";
+    sha256 = "sha256-38syOFZm0eGCI1vbJxG8truX5vuafwSG0lp2o499zUs=";
   };
 
   objects-src = fetchFromGitHub {
     owner = "OpenRCT2";
     repo = "objects";
     rev = "v${objects-version}";
-    sha256 = "sha256-BG0IRiNb2l6/3P7tvuUqMoYNh1zkOS0lCFDDh7m9Q7Y=";
+    sha256 = "sha256-S9fjgtb45vhRTWnYEgmIlKej5fGBtnhKOn35npmX70U=";
   };
 
   title-sequences-src = fetchFromGitHub {
diff --git a/pkgs/games/osu-lazer/deps.nix b/pkgs/games/osu-lazer/deps.nix
index 52c3b6f7a9219..49c1c1789987a 100644
--- a/pkgs/games/osu-lazer/deps.nix
+++ b/pkgs/games/osu-lazer/deps.nix
@@ -1,3 +1,6 @@
+# This file was automatically generated by passthru.fetch-deps.
+# Please dont edit it manually, your changes might get overwritten!
+
 { fetchNuGet }: [
   (fetchNuGet { pname = "AutoMapper"; version = "11.0.1"; sha256 = "1z1x5c1dkwk6142km5q6jglhpq9x82alwjjy5a72c8qnq9ppdfg3"; })
   (fetchNuGet { pname = "Clowd.Squirrel"; version = "2.9.42"; sha256 = "1xxrr9jmgn343d467nz40569mkybinnmxaxyc4fhgy6yddvzk1y0"; })
@@ -66,7 +69,6 @@
   (fetchNuGet { pname = "Markdig"; version = "0.23.0"; sha256 = "1bwn885w7balwncmr764vidyyp9bixqlq6r3lhsapj8ykrpxxa70"; })
   (fetchNuGet { pname = "MessagePack"; version = "2.4.35"; sha256 = "0y8pz073ync51cv39lxldc797nmcm39r4pdhy2il6r95rppjqg5h"; })
   (fetchNuGet { pname = "MessagePack.Annotations"; version = "2.4.35"; sha256 = "1jny2r6rwq7xzwymm779w9x8a5rhyln97mxzplxwd53wwbb0wbzd"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.6"; sha256 = "0ndah9cqkgswhi60wrnni10j1d2hdg8jljij83lk1wbfqbng86jm"; })
   (fetchNuGet { pname = "Microsoft.AspNetCore.Connections.Abstractions"; version = "6.0.6"; sha256 = "1xdck1rg6flfh8l4gsfcq72yk0vh81k646i503s73573qhlc3hr4"; })
   (fetchNuGet { pname = "Microsoft.AspNetCore.Http.Connections.Client"; version = "6.0.6"; sha256 = "0jkr96x382hdcjnfw6m8lglamcnrmaxi3pjc6w8si7lgacn6h0jz"; })
   (fetchNuGet { pname = "Microsoft.AspNetCore.Http.Connections.Common"; version = "6.0.6"; sha256 = "19hsxybw189v07d618pf7n8ib3sgwl6rd3r9dyincbp4qfgp20zr"; })
@@ -115,7 +117,6 @@
   (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "5.0.0"; sha256 = "0swqcknyh87ns82w539z1mvy804pfwhgzs97cr3nwqk6g5s42gd6"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "6.0.0"; sha256 = "1kjiw6s4yfz9gm7mx3wkhp06ghnbs95icj9hi505shz9rjrg42q2"; })
   (fetchNuGet { pname = "Microsoft.NET.StringTools"; version = "1.0.0"; sha256 = "06yakiyzgss399giivfx6xdrnfxqfsvy5fzm90scjanvandv0sdj"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.6"; sha256 = "0fjbjh7yxqc9h47ix37y963xi9f9y99jvl26cw3x3kvjlb8x0bgj"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1"; sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "2.0.0"; sha256 = "1fk2fk2639i7nzy58m9dvpdnzql4vb8yl8vr19r2fp8lmj9w2jr0"; })
diff --git a/pkgs/games/srb2/default.nix b/pkgs/games/srb2/default.nix
index 57488bdb8b162..26bc4eae96c98 100644
--- a/pkgs/games/srb2/default.nix
+++ b/pkgs/games/srb2/default.nix
@@ -60,8 +60,8 @@ in stdenv.mkDerivation rec {
     "-DSRB2_ASSET_DIRECTORY=/build/source/assets"
     "-DGME_INCLUDE_DIR=${game-music-emu}/include"
     "-DOPENMPT_INCLUDE_DIR=${libopenmpt.dev}/include"
-    "-DSDL2_MIXER_INCLUDE_DIR=${SDL2_mixer}/include/SDL2"
-    "-DSDL2_INCLUDE_DIR=${SDL2.dev}/include/SDL2"
+    "-DSDL2_MIXER_INCLUDE_DIR=${lib.getDev SDL2_mixer}/include/SDL2"
+    "-DSDL2_INCLUDE_DIR=${lib.getDev SDL2}/include/SDL2"
   ];
 
   patches = [
diff --git a/pkgs/games/srb2kart/default.nix b/pkgs/games/srb2kart/default.nix
index e5a29aa56549f..cb68125addaac 100644
--- a/pkgs/games/srb2kart/default.nix
+++ b/pkgs/games/srb2kart/default.nix
@@ -52,8 +52,8 @@ in stdenv.mkDerivation rec {
   cmakeFlags = [
     #"-DSRB2_ASSET_DIRECTORY=/build/source/assets"
     "-DGME_INCLUDE_DIR=${game-music-emu}/include"
-    "-DSDL2_MIXER_INCLUDE_DIR=${SDL2_mixer}/include/SDL2"
-    "-DSDL2_INCLUDE_DIR=${SDL2.dev}/include/SDL2"
+    "-DSDL2_MIXER_INCLUDE_DIR=${lib.getDev SDL2_mixer}/include/SDL2"
+    "-DSDL2_INCLUDE_DIR=${lib.getDev SDL2}/include/SDL2"
   ];
 
   patches = [
diff --git a/pkgs/games/steam/fhsenv.nix b/pkgs/games/steam/fhsenv.nix
index 78877c8b0d8a8..8ad1600701d5a 100644
--- a/pkgs/games/steam/fhsenv.nix
+++ b/pkgs/games/steam/fhsenv.nix
@@ -3,6 +3,7 @@
 , extraPkgs ? pkgs: [ ] # extra packages to add to targetPkgs
 , extraLibraries ? pkgs: [ ] # extra packages to add to multiPkgs
 , extraProfile ? "" # string to append to profile
+, extraArgs ? "" # arguments to always pass to steam
 , runtimeOnly ? false
 , runtimeShell
 , stdenv
@@ -258,7 +259,7 @@ in buildFHSUserEnv rec {
 
     ${exportLDPath}
     ${fixBootstrap}
-    exec steam "$@"
+    exec steam ${extraArgs} "$@"
   '';
 
   inherit (steam) meta;
diff --git a/pkgs/games/uhexen2/default.nix b/pkgs/games/uhexen2/default.nix
index c76dd9ec25244..b9bde8d3e43a3 100644
--- a/pkgs/games/uhexen2/default.nix
+++ b/pkgs/games/uhexen2/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     runHook preBuild
     for makefile in "''${makeFiles[@]}"; do
           local flagsArray=(
-            -j$NIX_BUILD_CORES -l$NIX_BUILD_CORES
+            -j$NIX_BUILD_CORES
             SHELL=$SHELL
             $makeFlags "''${makeFlagsArray[@]}"
             $buildFlags "''${buildFlagsArray[@]}"
diff --git a/pkgs/games/xboard/default.nix b/pkgs/games/xboard/default.nix
index eefbb90114ffa..af75ec79e730c 100644
--- a/pkgs/games/xboard/default.nix
+++ b/pkgs/games/xboard/default.nix
@@ -39,6 +39,7 @@ stdenv.mkDerivation rec {
     })
   ];
 
+  nativeBuildInputs = [ pkg-config ];
   buildInputs = [
     libX11
     xorgproto
@@ -51,7 +52,6 @@ stdenv.mkDerivation rec {
     gnuchess
     texinfo
     libXpm
-    pkg-config
     librsvg
     cairo
     pango
diff --git a/pkgs/games/xivlauncher/deps.nix b/pkgs/games/xivlauncher/deps.nix
index 0cbfccff0c786..a24821a4e2fc7 100644
--- a/pkgs/games/xivlauncher/deps.nix
+++ b/pkgs/games/xivlauncher/deps.nix
@@ -1,3 +1,6 @@
+# This file was automatically generated by passthru.fetch-deps.
+# Please dont edit it manually, your changes might get overwritten!
+
 { fetchNuGet }: [
   (fetchNuGet { pname = "Castle.Core"; version = "4.4.1"; sha256 = "13dja1jxl5zwhi0ghkgvgmqdrixn57f9hk52jy5vpaaakzr550r7"; })
   (fetchNuGet { pname = "CheapLoc"; version = "1.1.6"; sha256 = "1m6cgx9yh7h3vrq2d4f99xyvsxc9jvz8zjq1q14qgylfmyq4hx4l"; })
diff --git a/pkgs/games/xonotic/default.nix b/pkgs/games/xonotic/default.nix
index 8865e8f992deb..d29e43850fbd3 100644
--- a/pkgs/games/xonotic/default.nix
+++ b/pkgs/games/xonotic/default.nix
@@ -83,14 +83,14 @@ let
     '';
 
     buildPhase = (lib.optionalString withDedicated ''
-      make -j $NIX_BUILD_CORES -l $NIX_BUILD_CORES sv-${target}
+      make -j $NIX_BUILD_CORES sv-${target}
     '' + lib.optionalString withGLX ''
-      make -j $NIX_BUILD_CORES -l $NIX_BUILD_CORES cl-${target}
+      make -j $NIX_BUILD_CORES cl-${target}
     '' + lib.optionalString withSDL ''
-      make -j $NIX_BUILD_CORES -l $NIX_BUILD_CORES sdl-${target}
+      make -j $NIX_BUILD_CORES sdl-${target}
     '') + ''
       pushd ../d0_blind_id
-      make -j $NIX_BUILD_CORES -l $NIX_BUILD_CORES
+      make -j $NIX_BUILD_CORES
       popd
     '';
 
diff --git a/pkgs/misc/cliscord/default.nix b/pkgs/misc/cliscord/default.nix
index 8ce0da14ce4df..1f8de323efe3b 100644
--- a/pkgs/misc/cliscord/default.nix
+++ b/pkgs/misc/cliscord/default.nix
@@ -1,21 +1,29 @@
-{ lib, stdenv, rustPlatform, openssl, pkg-config, fetchFromGitHub, Security }:
+{ lib
+, stdenv
+, rustPlatform
+, openssl
+, pkg-config
+, fetchFromGitHub
+, fetchpatch
+, Security
+}:
 
 rustPlatform.buildRustPackage rec {
   pname = "cliscord";
-  version = "unstable-2020-12-08";
+  version = "unstable-2022-10-07";
 
   src = fetchFromGitHub {
     owner = "somebody1234";
     repo = pname;
-    rev = "b02fbe5516fd7f153d0b0e3c7d5d11e2ab651b43";
-    sha256 = "sha256-hzZozgOkw8kFppuHiX9TQxHhxKRv8utWWbhEOIzKDLo=";
+    rev = "d62317d55c07ece8c9d042dcd74b62e58c9bfaeb";
+    hash = "sha256-dmR49yyErahOUxR9pGW1oYy8Wq5SWOprK317u+JPBv4=";
   };
 
   buildInputs = [ openssl ] ++ lib.optional stdenv.isDarwin Security;
 
   nativeBuildInputs = [ pkg-config ];
 
-  cargoSha256 = "12zfwdssyv0j83bff6s4376d99pv7z8ya8q8adwmf5ayvgmj4xz4";
+  cargoHash = "sha256-Z8ras6W4BnAWjHe6rPd1X1d3US5gq7CxnBAkW//OTsg=";
 
   meta = with lib; {
     description = "Simple command-line tool to send text and files to discord";
diff --git a/pkgs/misc/cups/drivers/canon/default.nix b/pkgs/misc/cups/drivers/canon/default.nix
index 07b81ce9bc282..12e4f5cac9662 100644
--- a/pkgs/misc/cups/drivers/canon/default.nix
+++ b/pkgs/misc/cups/drivers/canon/default.nix
@@ -44,7 +44,7 @@ let
     sha256 = "sha256:069z6ijmql62mcdyxnzc9mf0dxa6z1107cd0ab4i1adk8kr3d75k";
   };
 
-  buildInputs = [ cups zlib jbigkit glib gtk3 pkg-config gnome2.libglade libxml2 gdk-pixbuf pango cairo atk ];
+  buildInputs = [ cups zlib jbigkit glib gtk3 gnome2.libglade libxml2 gdk-pixbuf pango cairo atk ];
 in
 stdenv.mkDerivation rec {
   pname = "canon-cups-ufr2";
@@ -72,7 +72,7 @@ stdenv.mkDerivation rec {
     )
   '';
 
-  nativeBuildInputs = [ makeWrapper unzip autoconf automake libtool_1_5 ];
+  nativeBuildInputs = [ makeWrapper unzip autoconf automake libtool_1_5 pkg-config ];
 
   inherit buildInputs;
 
diff --git a/pkgs/misc/screensavers/alock/default.nix b/pkgs/misc/screensavers/alock/default.nix
index 87c81531122a0..74155f43c2b88 100644
--- a/pkgs/misc/screensavers/alock/default.nix
+++ b/pkgs/misc/screensavers/alock/default.nix
@@ -21,9 +21,9 @@ stdenv.mkDerivation rec {
     "--enable-imlib2"
   ];
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [ pkg-config autoreconfHook ];
   buildInputs = [
-    autoreconfHook libX11
+    libX11
     pam libgcrypt libXrender imlib2
   ];
 
diff --git a/pkgs/misc/screensavers/betterlockscreen/default.nix b/pkgs/misc/screensavers/betterlockscreen/default.nix
index 43bc96ea6e793..36eaa50e32c4f 100644
--- a/pkgs/misc/screensavers/betterlockscreen/default.nix
+++ b/pkgs/misc/screensavers/betterlockscreen/default.nix
@@ -6,6 +6,8 @@
   # Dependencies (@see https://github.com/pavanjadhaw/betterlockscreen/blob/master/shell.nix)
 , bc
 , coreutils
+, dbus
+, dunst
 , i3lock-color
 , gawk
 , gnugrep
@@ -35,7 +37,8 @@ stdenv.mkDerivation rec {
 
     mkdir -p $out/bin
     cp betterlockscreen $out/bin/betterlockscreen
-    wrapProgram "$out/bin/betterlockscreen" --prefix PATH : "$out/bin:${lib.makeBinPath [ bc coreutils i3lock-color gawk gnugrep gnused imagemagick procps xdpyinfo xrandr xset ]}"
+    wrapProgram "$out/bin/betterlockscreen" \
+      --prefix PATH : "$out/bin:${lib.makeBinPath [ bc coreutils dbus dunst i3lock-color gawk gnugrep gnused imagemagick procps xdpyinfo xrandr xset ]}"
 
     runHook postInstall
   '';
diff --git a/pkgs/misc/stabber/default.nix b/pkgs/misc/stabber/default.nix
index eb0d6a4109d03..478cbda3dc003 100644
--- a/pkgs/misc/stabber/default.nix
+++ b/pkgs/misc/stabber/default.nix
@@ -19,7 +19,8 @@ stdenv.mkDerivation {
     mkdir m4
   '';
 
-  buildInputs = [ autoreconfHook pkg-config glib expat libmicrohttpd ];
+  nativeBuildInputs = [ pkg-config autoreconfHook ];
+  buildInputs = [ glib expat libmicrohttpd ];
 
   meta = {
     description = "Stubbed XMPP Server";
diff --git a/pkgs/misc/t-rec/default.nix b/pkgs/misc/t-rec/default.nix
index 6861f464a5de9..e138a62e39aa8 100644
--- a/pkgs/misc/t-rec/default.nix
+++ b/pkgs/misc/t-rec/default.nix
@@ -9,13 +9,13 @@ let
 in
 rustPlatform.buildRustPackage rec {
   pname = "t-rec";
-  version = "0.7.4";
+  version = "0.7.5";
 
   src = fetchFromGitHub {
     owner = "sassman";
     repo = "t-rec-rs";
     rev = "v${version}";
-    sha256 = "sha256-PvC1UaHt0ppGqVgouud/WKsP2CIGg+mbFN9VTiVy1RU=";
+    sha256 = "sha256-tkt0XAofBhHytbA24g0+jU13aNjmgQ5RspbLTPclnrI=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -26,7 +26,7 @@ rustPlatform.buildRustPackage rec {
     wrapProgram "$out/bin/t-rec" --prefix PATH : "${binPath}"
   '';
 
-  cargoSha256 = "sha256-2EMxa39mIRN37U/v9+MMIGFRLOdkFeD+pVqoXU4f0kU=";
+  cargoSha256 = "sha256-bb0fwz0fI6DJWgnW0rX63qH2niCLtPeVKex7m6BhVWs=";
 
   meta = with lib; {
     description = "Blazingly fast terminal recorder that generates animated gif images for the web written in rust";
diff --git a/pkgs/misc/uboot/default.nix b/pkgs/misc/uboot/default.nix
index 579ef6a30dd59..8f16f943d7409 100644
--- a/pkgs/misc/uboot/default.nix
+++ b/pkgs/misc/uboot/default.nix
@@ -60,6 +60,7 @@ let
     '';
 
     nativeBuildInputs = [
+      ncurses # tools/kwboot
       bc
       bison
       dtc
diff --git a/pkgs/os-specific/bsd/netbsd/default.nix b/pkgs/os-specific/bsd/netbsd/default.nix
index 25ac9ce451ccf..ae93d42b67657 100644
--- a/pkgs/os-specific/bsd/netbsd/default.nix
+++ b/pkgs/os-specific/bsd/netbsd/default.nix
@@ -907,7 +907,7 @@ in lib.makeScopeWithSplicing
       byacc genassym gencat lorder tsort statHook rsync rpcgen
     ];
     buildInputs = with self; [ headers csu ];
-    NIX_CFLAGS_COMPILE = "-B${self.csu}/lib";
+    NIX_CFLAGS_COMPILE = "-B${self.csu}/lib -fcommon";
     meta.platforms = lib.platforms.netbsd;
     SHLIBINSTALLDIR = "$(out)/lib";
     MKPICINSTALL = "yes";
diff --git a/pkgs/os-specific/darwin/apple-sdk-11.0/apple_sdk.nix b/pkgs/os-specific/darwin/apple-sdk-11.0/apple_sdk.nix
index 05340642f8d04..b7666fe31cdb1 100644
--- a/pkgs/os-specific/darwin/apple-sdk-11.0/apple_sdk.nix
+++ b/pkgs/os-specific/darwin/apple-sdk-11.0/apple_sdk.nix
@@ -168,7 +168,7 @@ in rec {
   bareFrameworks = (
     lib.mapAttrs framework (import ./frameworks.nix {
       inherit frameworks libs;
-      inherit (pkgs.darwin.apple_sdk_11_0) libnetwork Libsystem;
+      inherit (pkgs.darwin.apple_sdk_11_0) libnetwork;
       libobjc = pkgs.darwin.apple_sdk_11_0.objc4;
     })
   ) // (
diff --git a/pkgs/os-specific/darwin/apple-sdk-11.0/default.nix b/pkgs/os-specific/darwin/apple-sdk-11.0/default.nix
index b29a36177a825..4565f698d26c5 100644
--- a/pkgs/os-specific/darwin/apple-sdk-11.0/default.nix
+++ b/pkgs/os-specific/darwin/apple-sdk-11.0/default.nix
@@ -50,7 +50,9 @@ let
     libcharset = callPackage ./libcharset.nix {};
     libunwind = callPackage ./libunwind.nix {};
     libnetwork = callPackage ./libnetwork.nix {};
-    objc4 = callPackage ./libobjc.nix {};
+    # Avoid introducing a new objc4 if stdenv already has one, to prevent
+    # conflicting LLVM modules.
+    objc4 = if stdenv ? objc4 then stdenv.objc4 else callPackage ./libobjc.nix {};
 
     # questionable aliases
     configd = pkgs.darwin.apple_sdk.frameworks.SystemConfiguration;
diff --git a/pkgs/os-specific/darwin/apple-sdk-11.0/frameworks.nix b/pkgs/os-specific/darwin/apple-sdk-11.0/frameworks.nix
index e9121b0211641..dc4ab1955b506 100644
--- a/pkgs/os-specific/darwin/apple-sdk-11.0/frameworks.nix
+++ b/pkgs/os-specific/darwin/apple-sdk-11.0/frameworks.nix
@@ -1,4 +1,4 @@
-{ frameworks, libs, libobjc, Libsystem, libnetwork }: with frameworks; with libs;
+{ frameworks, libs, libobjc, libnetwork }: with frameworks; with libs;
 {
   AGL                              = { inherit Carbon OpenGL; };
   AVFoundation                     = { inherit ApplicationServices AVFCapture AVFCore CoreGraphics simd UniformTypeIdentifiers; };
@@ -89,9 +89,7 @@
   IOBluetooth                      = { inherit CoreBluetooth IOKit; };
   IOBluetoothUI                    = { inherit IOBluetooth; };
   IOKit                            = {};
-  # `IOSurface` should depend on `Libsystem` (in place of `xpc`) but this currently causes build
-  # issues due to incompatibility issues between `Libsystem` and `libcxx`.
-  IOSurface                        = { inherit IOKit xpc; };
+  IOSurface                        = { inherit IOKit; };
   IOUSBHost                        = {};
   IdentityLookup                   = {};
   ImageCaptureCore                 = {};
diff --git a/pkgs/os-specific/darwin/iproute2mac/default.nix b/pkgs/os-specific/darwin/iproute2mac/default.nix
index f542f2c5221be..a7f1f0b773d87 100644
--- a/pkgs/os-specific/darwin/iproute2mac/default.nix
+++ b/pkgs/os-specific/darwin/iproute2mac/default.nix
@@ -1,14 +1,14 @@
 { lib, stdenv, fetchFromGitHub, darwin, python3 }:
 
 stdenv.mkDerivation rec {
-  version = "1.4.0";
+  version = "1.4.1";
   pname = "iproute2mac";
 
   src = fetchFromGitHub {
     owner = "brona";
     repo = "iproute2mac";
     rev = "v${version}";
-    sha256 = "sha256-xakCNjmZpdVY7MMxk38EZatrakgkEeDhvljhl+aMmGg=";
+    sha256 = "sha256-MaL8eb9UOZ71BL4Jvc6Od+EJ+F6j96n9a+vRnHeveIU=";
   };
 
   buildInputs = [ python3 ];
diff --git a/pkgs/os-specific/darwin/libtapi/default.nix b/pkgs/os-specific/darwin/libtapi/default.nix
index da07107409736..eba61a15ccb95 100644
--- a/pkgs/os-specific/darwin/libtapi/default.nix
+++ b/pkgs/os-specific/darwin/libtapi/default.nix
@@ -40,12 +40,15 @@ stdenv.mkDerivation {
         let
           nativeCC = pkgsBuildBuild.stdenv.cc;
           nativeBintools = nativeCC.bintools.bintools;
+          nativeLibcxxabi = lib.getLib pkgsBuildBuild.libcxxabi;
           nativeToolchainFlags = [
             "-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc"
             "-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++"
             "-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar"
             "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip"
             "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib"
+            "-DCMAKE_EXE_LINKER_FLAGS=-L${nativeLibcxxabi}/lib"
+            "-DCMAKE_SHARED_LINKER_FLAGS=-L${nativeLibcxxabi}/lib"
           ];
         in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}"
       )
diff --git a/pkgs/os-specific/darwin/rectangle/default.nix b/pkgs/os-specific/darwin/rectangle/default.nix
new file mode 100644
index 0000000000000..8261c4198c1cc
--- /dev/null
+++ b/pkgs/os-specific/darwin/rectangle/default.nix
@@ -0,0 +1,30 @@
+{ lib, stdenv, fetchurl, cpio, xar, undmg, ... }:
+
+stdenv.mkDerivation rec {
+  pname = "rectangle";
+  version = "0.59";
+
+  src = fetchurl {
+    url = "https://github.com/rxhanson/Rectangle/releases/download/v${version}/Rectangle${version}.dmg";
+    sha256 = "sha256-6K4HJ4qWjf/BsoxmSWyO/Km3BZujCnMJ2/xCMkH3TaI=";
+  };
+
+  sourceRoot = "Rectangle.app";
+
+  nativeBuildInputs = [ undmg ];
+
+  installPhase = ''
+    mkdir -p $out/Applications/Rectangle.app
+    cp -R . $out/Applications/Rectangle.app
+  '';
+
+  meta = with lib; {
+    description = "Move and resize windows in macOS using keyboard shortcuts or snap areas";
+    homepage = "https://rectangleapp.com/";
+    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
+    platforms = platforms.darwin;
+    maintainers = with maintainers; [ Enzime ];
+    license = licenses.mit;
+  };
+}
+
diff --git a/pkgs/os-specific/linux/adcli/default.nix b/pkgs/os-specific/linux/adcli/default.nix
index 977c1d09dbaee..66e017437f9da 100644
--- a/pkgs/os-specific/linux/adcli/default.nix
+++ b/pkgs/os-specific/linux/adcli/default.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchFromGitLab
-, fetchpatch
 , openldap
 , libkrb5
 , libxslt
@@ -16,25 +15,33 @@
 
 stdenv.mkDerivation rec {
   pname = "adcli";
-  version = "0.9.1";
+  version = "0.9.2";
 
   src = fetchFromGitLab {
     domain = "gitlab.freedesktop.org";
     owner = "realmd";
     repo = pname;
     rev = version;
-    sha256 = "sha256-Zzt4qgLiJNuSrbtDWuxJEfGL7sWSbqN301q3qXZpn9c=";
+    sha256 = "sha256-dipNKlIdc1DpXLg/YJjUxZlNoMFy+rt8Y/+AfWFA4dE=";
   };
 
-  # https://bugs.gentoo.org/820224
-  # Without this it produces some weird missing symbol error in glibc
-  patches = [
-    (fetchpatch {
-      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/app-crypt/adcli/files/adcli-0.9.1-glibc-2.34-resolv.patch?id=01db544de893262e857685e11b33c2a74210181f";
-      sha256 = "sha256-dZ6dkzxd+0XjY/X9/2IWMan3syvCDGFHiMbxFxMHGFA=";
-    })
+  nativeBuildInputs = [
+    autoreconfHook
+    pkg-config
+    docbook_xsl
+    util-linux
+    xmlto
   ];
 
+  buildInputs = [
+    openldap
+    libkrb5
+    libxslt
+    cyrus_sasl
+  ];
+
+  configureFlags = [ "--disable-debug" ];
+
   postPatch = ''
     substituteInPlace tools/Makefile.am \
       --replace 'sbin_PROGRAMS' 'bin_PROGRAMS'
@@ -43,7 +50,7 @@ stdenv.mkDerivation rec {
         --replace 'http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl' \
                   '${docbook_xsl}/xml/xsl/docbook/manpages/docbook.xsl'
 
-    function patch_docbook(){
+    function patch_docbook() {
       substituteInPlace $1 \
         --replace "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" \
                   "${docbook_xml_dtd_43}/xml/dtd/docbook/docbookx.dtd"
@@ -52,17 +59,12 @@ stdenv.mkDerivation rec {
     patch_docbook doc/adcli-devel.xml
     patch_docbook doc/adcli-docs.xml
   '';
-  nativeBuildInputs = [ autoreconfHook pkg-config docbook_xsl ];
-
-  buildInputs = [ openldap libkrb5 libxslt cyrus_sasl util-linux xmlto docbook_xsl ];
-
-  configureFlags = [ "--disable-debug" ];
 
   meta = with lib; {
     homepage = "https://www.freedesktop.org/software/realmd/adcli/adcli.html";
     description = "A helper library and tools for Active Directory client operations.";
     license = licenses.lgpl21Only;
-    maintainers = with maintainers; [ SohamG ];
+    maintainers = with maintainers; [ SohamG anthonyroussel ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/os-specific/linux/conntrack-tools/default.nix b/pkgs/os-specific/linux/conntrack-tools/default.nix
index 0b14398e58f64..a5416648a7c0a 100644
--- a/pkgs/os-specific/linux/conntrack-tools/default.nix
+++ b/pkgs/os-specific/linux/conntrack-tools/default.nix
@@ -6,11 +6,11 @@
 
 stdenv.mkDerivation rec {
   pname = "conntrack-tools";
-  version = "1.4.6";
+  version = "1.4.7";
 
   src = fetchurl {
     url = "https://www.netfilter.org/projects/conntrack-tools/files/${pname}-${version}.tar.bz2";
-    sha256 = "0psx41bclqrh4514yzq03rvs3cq3scfpd1v4kkyxnic2hk65j22r";
+    sha256 = "sha256-CZ3rz1foFpDO1X9Ra0k1iKc1GPSMFNZW+COym0/CS10=";
   };
 
   buildInputs = [
diff --git a/pkgs/os-specific/linux/cpuid/default.nix b/pkgs/os-specific/linux/cpuid/default.nix
index 73e38d885e7ca..70d5b195d9b14 100644
--- a/pkgs/os-specific/linux/cpuid/default.nix
+++ b/pkgs/os-specific/linux/cpuid/default.nix
@@ -6,11 +6,11 @@
 
 stdenv.mkDerivation rec {
   pname = "cpuid";
-  version = "20220927";
+  version = "20221003";
 
   src = fetchurl {
     url = "http://etallen.com/cpuid/${pname}-${version}.src.tar.gz";
-    sha256 = "sha256-sykaiTRIJgKGgaIoBgUpIMDzSY0Jn/3OP2P1Z6HqQOw=";
+    sha256 = "sha256-Y8TFwGtWglgrou7Jbuom14MngqeJWSu5XE5P1icKgwc=";
   };
 
   # For pod2man during the build process.
diff --git a/pkgs/os-specific/linux/ell/default.nix b/pkgs/os-specific/linux/ell/default.nix
index 67d8f107ce38a..2fce9d6f0d7b5 100644
--- a/pkgs/os-specific/linux/ell/default.nix
+++ b/pkgs/os-specific/linux/ell/default.nix
@@ -7,14 +7,14 @@
 
 stdenv.mkDerivation rec {
   pname = "ell";
-  version = "0.52";
+  version = "0.53";
 
   outputs = [ "out" "dev" ];
 
   src = fetchgit {
     url = "https://git.kernel.org/pub/scm/libs/ell/ell.git";
     rev = version;
-    sha256 = "sha256-JnkNWWdr0CSlwME619BBWkvelFZoZpzmAR53nm2bSqM=";
+    sha256 = "sha256-txtXPWmLfZLBsK3s94W5LyA81mTHStpP3nkq6KW33Mk=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/os-specific/linux/firmware/firmware-updater/default.nix b/pkgs/os-specific/linux/firmware/firmware-updater/default.nix
index fb9d3a9a36c4c..cc906b763e8ec 100644
--- a/pkgs/os-specific/linux/firmware/firmware-updater/default.nix
+++ b/pkgs/os-specific/linux/firmware/firmware-updater/default.nix
@@ -1,13 +1,13 @@
 { lib
-, flutter
+, flutter2
 , fetchFromGitHub
 }:
 
-flutter.mkFlutterApp {
+flutter2.mkFlutterApp {
   pname = "firmware-updater";
   version = "unstable";
 
-  vendorHash = "sha256-3wVA9BLCnMijC0gOmskz+Hv7NQIGu/jhBDbWjmoq1Tc=";
+  vendorHash = "sha256-7uOiebGBcX61oUyNCi1h9KldTRTrCfYaHUQSH4J5OoQ=";
 
   src = fetchFromGitHub {
     owner = "canonical";
diff --git a/pkgs/os-specific/linux/iproute/mptcp.nix b/pkgs/os-specific/linux/iproute/mptcp.nix
deleted file mode 100644
index e43af52bb3490..0000000000000
--- a/pkgs/os-specific/linux/iproute/mptcp.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-{ lib, iproute2, fetchFromGitHub, fetchpatch }:
-
-iproute2.overrideAttrs (oa: rec {
-  pname = "iproute_mptcp";
-  version = "0.95";
-
-  src = fetchFromGitHub {
-    owner = "multipath-tcp";
-    repo = "iproute-mptcp";
-    rev = "mptcp_v${version}";
-    sha256 = "07fihvwlaj0ng8s8sxqhd0a9h1narcnp4ibk88km9cpsd32xv4q3";
-  };
-
-  preConfigure = oa.preConfigure + ''
-    patchShebangs configure
-  '';
-
-  patches = [
-    # We override "patches" to never apply any iproute2 patches:
-  ] ++ [
-    # iproute-mptcp patches:
-
-    # Pull upstream fix for -fno-common toolchain support:
-    #   https://github.com/multipath-tcp/iproute-mptcp/pull/8
-    (fetchpatch {
-      name = "fno-common.patch";
-      url = "https://github.com/multipath-tcp/iproute-mptcp/commit/7aebfde8624c978f6f73b03142892f802d21cc0b.patch";
-      sha256 = "098402sjdm10r9xggz6naygnfjs74d9k3s2wc2aczx0d2zayhff8";
-    })
-  ];
-
-  meta = with lib; {
-    homepage = "https://github.com/multipath-tcp/iproute-mptcp";
-    description = "IP-Route extensions for MultiPath TCP";
-    license = licenses.gpl2;
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ teto ];
-    priority = 2;
-  };
-})
diff --git a/pkgs/os-specific/linux/iwd/default.nix b/pkgs/os-specific/linux/iwd/default.nix
index dfd5f5724ef8d..b62b6946e4259 100644
--- a/pkgs/os-specific/linux/iwd/default.nix
+++ b/pkgs/os-specific/linux/iwd/default.nix
@@ -12,12 +12,12 @@
 
 stdenv.mkDerivation rec {
   pname = "iwd";
-  version = "1.29";
+  version = "1.30";
 
   src = fetchgit {
     url = "https://git.kernel.org/pub/scm/network/wireless/iwd.git";
     rev = version;
-    sha256 = "sha256-W2MOK6aIa1whkj13OeuibNjL/2LWt7TO8h4JeoUrZnQ=";
+    sha256 = "sha256-9uyYXxnxRqWvzrw3QXCOT/ZubQ8/nrB+b60jKn1hAJk=";
   };
 
   outputs = [ "out" "man" "doc" ]
diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix
index 97bf388d46a66..3a71563593ef3 100644
--- a/pkgs/os-specific/linux/kernel/common-config.nix
+++ b/pkgs/os-specific/linux/kernel/common-config.nix
@@ -481,6 +481,7 @@ let
       DEBUG_LIST                       = yes;
       # Detect writes to read-only module pages
       DEBUG_SET_MODULE_RONX            = whenOlder "4.11" (option yes);
+      HARDENED_USERCOPY                = yes;
       RANDOMIZE_BASE                   = option yes;
       STRICT_DEVMEM                    = mkDefault yes; # Filter access to /dev/mem
       IO_STRICT_DEVMEM                 = mkDefault yes;
diff --git a/pkgs/os-specific/linux/kernel/hardened/patches.json b/pkgs/os-specific/linux/kernel/hardened/patches.json
index 51dad759fb8c2..c9e600657bf03 100644
--- a/pkgs/os-specific/linux/kernel/hardened/patches.json
+++ b/pkgs/os-specific/linux/kernel/hardened/patches.json
@@ -2,61 +2,61 @@
     "4.14": {
         "patch": {
             "extra": "-hardened1",
-            "name": "linux-hardened-4.14.294-hardened1.patch",
-            "sha256": "0x7qnfih7hvn94f8w5g6qqdvsswr71ml9wd9fy1p14dd8k068hcj",
-            "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.14.294-hardened1/linux-hardened-4.14.294-hardened1.patch"
+            "name": "linux-hardened-4.14.295-hardened1.patch",
+            "sha256": "0jync3d52qif0pxnmbx7js7zgxnrhrjxiiyp0n57cmdxi9jcjc8j",
+            "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.14.295-hardened1/linux-hardened-4.14.295-hardened1.patch"
         },
-        "sha256": "069i11hv4fhwc9dirqbag1g1k3fn21wzpfggah4f1a41whf98apy",
-        "version": "4.14.294"
+        "sha256": "0svalywqmrhav63vw0ns06c25sgyvzwfngljpham3nm7jjxbkk32",
+        "version": "4.14.295"
     },
     "4.19": {
         "patch": {
             "extra": "-hardened1",
-            "name": "linux-hardened-4.19.259-hardened1.patch",
-            "sha256": "05hnliiszj0ri0dkfm1ppaqss1x5nd0jbyr5l7736s5bi707lmsp",
-            "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.259-hardened1/linux-hardened-4.19.259-hardened1.patch"
+            "name": "linux-hardened-4.19.260-hardened1.patch",
+            "sha256": "08b3kk5m12yqq12ik1d9zxaga2pzw2znzcwh9ymk6i9b8y5f3bsm",
+            "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.260-hardened1/linux-hardened-4.19.260-hardened1.patch"
         },
-        "sha256": "1ska6v95zjjj44h53gi34rnbsrm4507jwxi3kklnky6d0aykiy1z",
-        "version": "4.19.259"
+        "sha256": "1vlhaapbkvvk2acw1i5f6v6gd8v0x37n1y3i066cddl90my6yl24",
+        "version": "4.19.260"
     },
     "5.10": {
         "patch": {
             "extra": "-hardened1",
-            "name": "linux-hardened-5.10.145-hardened1.patch",
-            "sha256": "08rq52prxnvzg0j2d8gs010hh44qlhga00h2mvcxlfj10ifg4rgb",
-            "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.145-hardened1/linux-hardened-5.10.145-hardened1.patch"
+            "name": "linux-hardened-5.10.146-hardened1.patch",
+            "sha256": "1ah8p0iy4cqjhmjd1zxqvspihx0wkj515ggca65rjrpmfr05f2ll",
+            "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.146-hardened1/linux-hardened-5.10.146-hardened1.patch"
         },
-        "sha256": "0qdcqmwvc70hfgj8hb8ccwmnvwl41dvdffqrmyg3cyblwprr0ngw",
-        "version": "5.10.145"
+        "sha256": "1hbdxvlibp9w0q8bk1zlx77ayq2wcld8rjm134ybgbcf4zrrggbv",
+        "version": "5.10.146"
     },
     "5.15": {
         "patch": {
             "extra": "-hardened1",
-            "name": "linux-hardened-5.15.70-hardened1.patch",
-            "sha256": "0m3r9i5zyv12y4y6jn7yqv6n080ikar0hdn2bfzs85mnzc9vsmqr",
-            "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.15.70-hardened1/linux-hardened-5.15.70-hardened1.patch"
+            "name": "linux-hardened-5.15.71-hardened1.patch",
+            "sha256": "0yfvwivjj8swc4l0ngq4x1104jpfmzj9cb4pvxsagkkf8dwfvqc6",
+            "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.15.71-hardened1/linux-hardened-5.15.71-hardened1.patch"
         },
-        "sha256": "0xhdjz7aqq13pkh1yr7ax3msqdb2xvrcpj464wibn1rl4pq2cz0s",
-        "version": "5.15.70"
+        "sha256": "0lqy3nmhij6sb4963kb5dhvfdx46mg79hp81kq10wv01iq9hhm2z",
+        "version": "5.15.71"
     },
     "5.19": {
         "patch": {
             "extra": "-hardened1",
-            "name": "linux-hardened-5.19.11-hardened1.patch",
-            "sha256": "0n0w9qmbhhg9svnjkvmhx24i8d0mhrx2k4xfb3rmnsjg79rcl0qd",
-            "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.19.11-hardened1/linux-hardened-5.19.11-hardened1.patch"
+            "name": "linux-hardened-5.19.12-hardened1.patch",
+            "sha256": "157m9mkdqpm01rzwsgdcv88z51642fp3v0h5q0mafg4ph4afd7pg",
+            "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.19.12-hardened1/linux-hardened-5.19.12-hardened1.patch"
         },
-        "sha256": "0wyrwdqm4dypx2jbb7d8c3b7fl7q5j434d6g9x2v6sw01gwx4m2m",
-        "version": "5.19.11"
+        "sha256": "1fmhwbgqpr6q3z3ygys153szivlmv3mcnwilbbyfcb1iqx4aadn4",
+        "version": "5.19.12"
     },
     "5.4": {
         "patch": {
             "extra": "-hardened1",
-            "name": "linux-hardened-5.4.214-hardened1.patch",
-            "sha256": "0j96knplhwvk1w1af4fs818ninvrs38ykg76mb80pjjvi3fdl402",
-            "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.214-hardened1/linux-hardened-5.4.214-hardened1.patch"
+            "name": "linux-hardened-5.4.215-hardened1.patch",
+            "sha256": "1xfyvppf16y7bjmjkhpps9vp4zw2dcrk18kajj1lkzhh441y1g94",
+            "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.215-hardened1/linux-hardened-5.4.215-hardened1.patch"
         },
-        "sha256": "1ny57g5agk8sq6cbp2crjiay5bfkwqy32i4a5yw7x0lch2s7kg4s",
-        "version": "5.4.214"
+        "sha256": "1gafnf9gbsfzvp9jq6y8qhpvas5cv9y0m9bad2sg55sjlb1zfard",
+        "version": "5.4.215"
     }
 }
diff --git a/pkgs/os-specific/linux/kernel/linux-4.19.nix b/pkgs/os-specific/linux/kernel/linux-4.19.nix
index 666841b0ca7ed..cd07e1a914461 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.19.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.19.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "4.19.260";
+  version = "4.19.261";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "1vlhaapbkvvk2acw1i5f6v6gd8v0x37n1y3i066cddl90my6yl24";
+    sha256 = "1cicb3zydpka9yjx875hbh305bsdvni2kp674pkvaw04pnc35hxy";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-5.10.nix b/pkgs/os-specific/linux/kernel/linux-5.10.nix
index 802ac6a111343..febd66649568e 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.10.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.10.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.10.146";
+  version = "5.10.147";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "1hbdxvlibp9w0q8bk1zlx77ayq2wcld8rjm134ybgbcf4zrrggbv";
+    sha256 = "16pdpjmvrdml7am7s2kydrif1l7f4aq0wh4ak0xh3dby16zkl9c5";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-5.15.nix b/pkgs/os-specific/linux/kernel/linux-5.15.nix
index c4c899341d0d6..7ae1f28225665 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.15.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.15.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.15.71";
+  version = "5.15.72";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "0lqy3nmhij6sb4963kb5dhvfdx46mg79hp81kq10wv01iq9hhm2z";
+    sha256 = "1aq75z2spa1jvxv9m89gsaxza29n25k8j1f0pg9yj6j7bcxk5430";
   };
 } // (args.argsOverride or { }))
diff --git a/pkgs/os-specific/linux/kernel/linux-5.19.nix b/pkgs/os-specific/linux/kernel/linux-5.19.nix
index 897758c93ef58..06041ed9450fb 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.19.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.19.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.19.12";
+  version = "5.19.14";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "1fmhwbgqpr6q3z3ygys153szivlmv3mcnwilbbyfcb1iqx4aadn4";
+    sha256 = "1h8srn3fw4vw61qi0xxlk9fq0fqq4wl7fbrzz7sivdd8qkhjgv8x";
   };
 } // (args.argsOverride or { }))
diff --git a/pkgs/os-specific/linux/kernel/linux-5.4.nix b/pkgs/os-specific/linux/kernel/linux-5.4.nix
index 4166d767bab30..41e925a9d2545 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.4.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.4.215";
+  version = "5.4.216";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "1gafnf9gbsfzvp9jq6y8qhpvas5cv9y0m9bad2sg55sjlb1zfard";
+    sha256 = "19vyxa0yzdf4w48jamjfz6kpiaaa7mjjz5gs2awckzilfc0n4pyf";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-6.0.nix b/pkgs/os-specific/linux/kernel/linux-6.0.nix
new file mode 100644
index 0000000000000..b099c5dc140cc
--- /dev/null
+++ b/pkgs/os-specific/linux/kernel/linux-6.0.nix
@@ -0,0 +1,18 @@
+{ lib, buildPackages, fetchurl, perl, buildLinux, nixosTests, modDirVersionArg ? null, ... } @ args:
+
+with lib;
+
+buildLinux (args // rec {
+  version = "6.0";
+
+  # modDirVersion needs to be x.y.z, will automatically add .0 if needed
+  modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
+
+  # branchVersion needs to be x.y
+  extraMeta.branch = versions.majorMinor version;
+
+  src = fetchurl {
+    url = "mirror://kernel/linux/kernel/v6.x/linux-${version}.tar.xz";
+    sha256 = "13kqh7yhifwz5dmd3ky0b3mzbh9r0nmjfp5mxy42drcdafjl692w";
+  };
+} // (args.argsOverride or { }))
diff --git a/pkgs/os-specific/linux/kernel/linux-libre.nix b/pkgs/os-specific/linux/kernel/linux-libre.nix
index 18f91ae78d017..1814d4cee069e 100644
--- a/pkgs/os-specific/linux/kernel/linux-libre.nix
+++ b/pkgs/os-specific/linux/kernel/linux-libre.nix
@@ -1,8 +1,8 @@
 { stdenv, lib, fetchsvn, linux
 , scripts ? fetchsvn {
     url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/";
-    rev = "18916";
-    sha256 = "0axjbr1zbj7izkvvz2nv4ij1xjjnbxpch43cpl169cr8rqdl6n6i";
+    rev = "18950";
+    sha256 = "1k84mqvi71bmd7x0km980z1y7cm71fc6jvnf2rzhxss9pjscrh2j";
   }
 , ...
 }:
diff --git a/pkgs/os-specific/linux/kernel/linux-mptcp-95.nix b/pkgs/os-specific/linux/kernel/linux-mptcp-95.nix
deleted file mode 100644
index a6a8d4936d4ff..0000000000000
--- a/pkgs/os-specific/linux/kernel/linux-mptcp-95.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib, buildPackages, fetchFromGitHub, perl, buildLinux, structuredExtraConfig ? {}, ... } @ args:
-let
-  mptcpVersion = "0.95.1";
-  modDirVersion = "4.19.126";
-in
-buildLinux ({
-  version = "${modDirVersion}-mptcp_v${mptcpVersion}";
-  inherit modDirVersion;
-
-  extraMeta = {
-    branch = "4.19";
-    maintainers = with lib.maintainers; [ teto layus ];
-  };
-
-  src = fetchFromGitHub {
-    owner = "multipath-tcp";
-    repo = "mptcp";
-    rev = "v${mptcpVersion}";
-    sha256 = "sha256-J9UXhkI49cq83EtojLHieRtp8fT3LXTJNIqb+mUwZdM=";
-  };
-
-  structuredExtraConfig = lib.mkMerge [
-    (import ./mptcp-config.nix { inherit lib; })
-    structuredExtraConfig
-  ];
-
-} // args)
diff --git a/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix b/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
index a1748156d098a..6c3e739e27dde 100644
--- a/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
+++ b/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
@@ -1,9 +1,9 @@
 { lib
 , fetchpatch
 , kernel
-, date ? "2022-04-25"
-, commit ? "bdf6d7c1350497bc7b0be6027a51d9330645672d"
-, diffHash ? "09bcbklvfj9i9czjdpix2iz7fvjksmavaljx8l92ay1i9fapjmhc"
+, commitDate ? "2022-09-28"
+, currentCommit ? "24c6361e202cc09de0159505eb3ab3ca265520d8"
+, diffHash ? "sha256-Y3uKkVMCaLGJpYb27ef3FfbqEQ32mgCVpWtYzvYamr8="
 , kernelPatches # must always be defined in bcachefs' all-packages.nix entry because it's also a top-level attribute supplied by callPackage
 , argsOverride ? {}
 , ...
@@ -12,21 +12,20 @@
 # NOTE: bcachefs-tools should be updated simultaneously to preserve compatibility
 (kernel.override ( args // {
   argsOverride = {
-    version = "${kernel.version}-bcachefs-unstable-${date}";
+    version = "${kernel.version}-bcachefs-unstable-${commitDate}";
 
     extraMeta = {
       branch = "master";
       maintainers = with lib.maintainers; [ davidak Madouura ];
-      broken = true;
     };
   } // argsOverride;
 
   kernelPatches = [ {
-      name = "bcachefs-${commit}";
+      name = "bcachefs-${currentCommit}";
 
       patch = fetchpatch {
-        name = "bcachefs-${commit}.diff";
-        url = "https://evilpiepirate.org/git/bcachefs.git/rawdiff/?id=${commit}&id2=v${lib.versions.majorMinor kernel.version}";
+        name = "bcachefs-${currentCommit}.diff";
+        url = "https://evilpiepirate.org/git/bcachefs.git/rawdiff/?id=${currentCommit}&id2=v${lib.versions.majorMinor kernel.version}";
         sha256 = diffHash;
       };
 
diff --git a/pkgs/os-specific/linux/kernel/perf/default.nix b/pkgs/os-specific/linux/kernel/perf/default.nix
index dcb1c4e9dcc12..5e0b5850f015d 100644
--- a/pkgs/os-specific/linux/kernel/perf/default.nix
+++ b/pkgs/os-specific/linux/kernel/perf/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchpatch, kernel, elfutils, python2, python3, perl, newt, slang, asciidoc, xmlto, makeWrapper
+{ lib, stdenv, fetchpatch, kernel, elfutils, python2, python3, python3Packages, perl, newt, slang, asciidoc, xmlto, makeWrapper
 , docbook_xsl, docbook_xml_dtd_45, libxslt, flex, bison, pkg-config, libunwind, binutils-unwrapped
 , libiberty, audit, libbfd, libbfd_2_38, libopcodes, libopcodes_2_38, openssl, systemtap, numactl
 , zlib
@@ -53,7 +53,8 @@ stdenv.mkDerivation {
     ++ lib.optional withGtk gtk2
     ++ (if (lib.versionAtLeast kernel.version "4.19") then [ python3 ] else [ python2 ])
     ++ lib.optional withZstd zstd
-    ++ lib.optional withLibcap libcap;
+    ++ lib.optional withLibcap libcap
+    ++ lib.optional (lib.versionAtLeast kernel.version "6.0") python3Packages.setuptools;
 
   NIX_CFLAGS_COMPILE = toString [
     "-Wno-error=cpp"
@@ -63,7 +64,7 @@ stdenv.mkDerivation {
   ];
 
   postPatch = ''
-    patchShebangs scripts
+    patchShebangs scripts tools/perf/pmu-events/jevents.py
   '';
 
   doCheck = false; # requires "sparse"
diff --git a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix
index 9ccfe53f1b07f..8ec761a701a3b 100644
--- a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix
+++ b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix
@@ -3,15 +3,21 @@
 let
   # These names are how they are designated in https://xanmod.org.
   ltsVariant = {
-    version = "5.15.60";
-    hash = "sha256-XSOYgrJ/uvPpEG+P3Zy1geFeF/HMZ4LejsKWtTxMUTs=";
+    version = "5.15.70";
+    hash = "sha256-gMtGoj/HzMqd6Y3PSc6QTsu/PI7vfb+1pg4mt878cxs=";
     variant = "lts";
   };
 
-  edgeVariant = {
-    version = "5.19.1";
-    hash = "sha256-Fw+XW2YDAGKEzZ4AO88Y8GcypfOb6AjKp3XOlkT8ZTQ=";
-    variant = "edge";
+  currentVariant = {
+    version = "5.19.13";
+    hash = "sha256-BzQH4c24CtE3R5HNe2sOc3McVkRmf/RKOOjuf1W4YfE=";
+    variant = "current";
+  };
+
+  nextVariant = {
+    version = "6.0.0";
+    hash = "sha256-E7T8eHwMKYShv4KWdCbHQmpn+54edJoKdimZY3GFbPU=";
+    variant = "next";
   };
 
   ttVariant = {
@@ -44,9 +50,6 @@ let
       NET_SCH_DEFAULT = yes;
       DEFAULT_FQ_PIE = yes;
 
-      # Graysky's additional CPU optimizations
-      CC_OPTIMIZE_FOR_PERFORMANCE_O3 = yes;
-
       # Futex WAIT_MULTIPLE implementation for Wine / Proton Fsync.
       FUTEX = yes;
       FUTEX_PI = yes;
@@ -71,6 +74,7 @@ let
 in
 {
   lts = xanmodKernelFor ltsVariant;
-  edge = xanmodKernelFor edgeVariant;
+  current = xanmodKernelFor currentVariant;
+  next = xanmodKernelFor nextVariant;
   tt = xanmodKernelFor ttVariant;
 }
diff --git a/pkgs/os-specific/linux/kernel/zen-kernels.nix b/pkgs/os-specific/linux/kernel/zen-kernels.nix
index 1fa21e56eb641..3cb3042b0e3e9 100644
--- a/pkgs/os-specific/linux/kernel/zen-kernels.nix
+++ b/pkgs/os-specific/linux/kernel/zen-kernels.nix
@@ -4,16 +4,16 @@ let
   # comments with variant added for update script
   # ./update-zen.py zen
   zenVariant = {
-    version = "5.19.11"; #zen
+    version = "5.19.12"; #zen
     suffix = "zen1"; #zen
-    sha256 = "0slrbsqdvnlnk2hr356wjmbhh8qkn39k34jn1lidhjyfb9c7fg6a"; #zen
+    sha256 = "001zrsgsg5yl74yn4qdmykwmys4mdwnnbiqmfpw60i3qr5ig90ap"; #zen
     isLqx = false;
   };
   # ./update-zen.py lqx
   lqxVariant = {
-    version = "5.19.11"; #lqx
-    suffix = "lqx2"; #lqx
-    sha256 = "1j6mr3ibl99l23wyycs5m1zmclp1qwbw5in36hi0pfq04jx2l6cn"; #lqx
+    version = "5.19.12"; #lqx
+    suffix = "lqx1"; #lqx
+    sha256 = "19y3znj3zjifkd1m8agb8f80kzfs1rx1ccpnq7fvkd7j4yd3khlf"; #lqx
     isLqx = true;
   };
   zenKernelsFor = { version, suffix, sha256, isLqx }: buildLinux (args // {
diff --git a/pkgs/os-specific/linux/libbpf/0.x.nix b/pkgs/os-specific/linux/libbpf/0.x.nix
new file mode 100644
index 0000000000000..480e78d0803a8
--- /dev/null
+++ b/pkgs/os-specific/linux/libbpf/0.x.nix
@@ -0,0 +1,54 @@
+{ fetchFromGitHub
+, elfutils
+, pkg-config
+, stdenv
+, zlib
+, lib
+, nixosTests
+}:
+
+# update bot does not seem to limit updates here to 0.8.x despite
+# the all-packages derivation being libbpf_0 as the libbpf base alias
+# is still present: just disable it for 0.x:
+# nixpkgs-update: no auto update
+
+stdenv.mkDerivation rec {
+  pname = "libbpf";
+  version = "0.8.1";
+
+  src = fetchFromGitHub {
+    owner = "libbpf";
+    repo = "libbpf";
+    rev = "v${version}";
+    sha256 = "sha256-daVS+TErmDU8ksThOvcepg1A61iD8N8GIkC40cmc9/8=";
+  };
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ elfutils zlib ];
+
+  enableParallelBuilding = true;
+  makeFlags = [ "PREFIX=$(out)" "-C src" ];
+
+  passthru.tests = {
+    bpf = nixosTests.bpf;
+  };
+
+  postInstall = ''
+    # install linux's libbpf-compatible linux/btf.h
+    install -Dm444 include/uapi/linux/*.h -t $out/include/linux
+  '';
+
+  # FIXME: Multi-output requires some fixes to the way the pkg-config file is
+  # constructed (it gets put in $out instead of $dev for some reason, with
+  # improper paths embedded). Don't enable it for now.
+
+  # outputs = [ "out" "dev" ];
+
+  meta = with lib; {
+    description = "Upstream mirror of libbpf";
+    homepage = "https://github.com/libbpf/libbpf";
+    license = with licenses; [ lgpl21 /* or */ bsd2 ];
+    maintainers = with maintainers; [ thoughtpolice vcunat saschagrunert martinetd ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/os-specific/linux/libbpf/default.nix b/pkgs/os-specific/linux/libbpf/default.nix
index 2c15e3d49ee16..04322a35b4fe5 100644
--- a/pkgs/os-specific/linux/libbpf/default.nix
+++ b/pkgs/os-specific/linux/libbpf/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libbpf";
-  version = "0.8.1";
+  version = "1.0.1";
 
   src = fetchFromGitHub {
     owner = "libbpf";
     repo = "libbpf";
     rev = "v${version}";
-    sha256 = "sha256-daVS+TErmDU8ksThOvcepg1A61iD8N8GIkC40cmc9/8=";
+    sha256 = "sha256-2rzVah+CxCztKnlEWMIQrUS2JJTLiWscfIA1aOBtIzs=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/os-specific/linux/libcap/default.nix b/pkgs/os-specific/linux/libcap/default.nix
index 0577107fd0264..75ba8710449d6 100644
--- a/pkgs/os-specific/linux/libcap/default.nix
+++ b/pkgs/os-specific/linux/libcap/default.nix
@@ -7,11 +7,11 @@ assert usePam -> pam != null;
 
 stdenv.mkDerivation rec {
   pname = "libcap";
-  version = "2.65";
+  version = "2.66";
 
   src = fetchurl {
     url = "mirror://kernel/linux/libs/security/linux-privs/libcap2/${pname}-${version}.tar.xz";
-    sha256 = "sha256-c+NQAgzDH+FTYIedGThP+jOVqCXwZfz2vaOlzfllvr0=";
+    sha256 = "sha256-FcQO3tswA9cKKD/lh6NrfRnIs7VU4z+GEpwFmku0ZrI=";
   };
 
   outputs = [ "out" "dev" "lib" "man" "doc" ]
diff --git a/pkgs/os-specific/linux/libnvme/default.nix b/pkgs/os-specific/linux/libnvme/default.nix
new file mode 100644
index 0000000000000..6c2ece4b8cb11
--- /dev/null
+++ b/pkgs/os-specific/linux/libnvme/default.nix
@@ -0,0 +1,63 @@
+{ fetchFromGitHub
+, json_c
+, lib
+, libuuid
+, meson
+, ninja
+, openssl
+, perl
+, pkg-config
+, python3
+, stdenv
+, systemd
+}:
+
+stdenv.mkDerivation rec {
+  pname = "libnvme";
+  version = "1.1";
+
+  outputs = [ "out" "man" ];
+
+  src = fetchFromGitHub {
+    owner = "linux-nvme";
+    repo = "libnvme";
+    rev = "v${version}";
+    sha256 = "EPAPWY6/Bh8I1eLslKJAofLn0IAizmGn00Q5PJPtdRw=";
+  };
+
+  postPatch = ''
+    patchShebangs meson-vcs-tag.sh
+    chmod +x doc/kernel-doc-check
+    patchShebangs doc/kernel-doc doc/kernel-doc-check doc/list-man-pages.sh
+  '';
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    perl # for kernel-doc
+    pkg-config
+  ];
+
+  buildInputs = [
+    json_c
+    libuuid
+    openssl
+    python3
+    systemd
+  ];
+
+  mesonFlags = [
+    "-Ddocs=man"
+    "-Ddocs-build=true"
+  ];
+
+  doCheck = true;
+
+  meta = with lib; {
+    description = "C Library for NVM Express on Linux";
+    homepage = "https://github.com/linux-nvme/libnvme";
+    maintainers = with maintainers; [ zseri ];
+    license = with licenses; [ lgpl21Plus ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/os-specific/linux/libpsm2/default.nix b/pkgs/os-specific/linux/libpsm2/default.nix
index ebfe492f7364c..43c9bf74e3fa2 100644
--- a/pkgs/os-specific/linux/libpsm2/default.nix
+++ b/pkgs/os-specific/linux/libpsm2/default.nix
@@ -11,7 +11,8 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  buildInputs = [ numactl pkg-config ];
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ numactl ];
 
   makeFlags = [
     # Disable blanket -Werror to avoid build failures
diff --git a/pkgs/os-specific/linux/libzbc/default.nix b/pkgs/os-specific/linux/libzbc/default.nix
new file mode 100644
index 0000000000000..5fa981a767f24
--- /dev/null
+++ b/pkgs/os-specific/linux/libzbc/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, stdenv
+, autoconf-archive
+, autoreconfHook
+, fetchFromGitHub
+, gtk3
+, libtool
+, pkg-config
+, guiSupport ? false
+}:
+
+stdenv.mkDerivation rec {
+  pname = "libzbc";
+  version = "5.12.0";
+
+  src = fetchFromGitHub {
+    owner = "westerndigitalcorporation";
+    repo = "libzbc";
+    rev = "v${version}";
+    sha256 = "qI09dkMCwMym3j1ELrFDNbNB5hW/CzwmFmZhUNDXsfI=";
+  };
+
+  nativeBuildInputs = [
+    autoconf-archive # this can be removed with the next release
+    autoreconfHook
+    libtool
+  ] ++ lib.optionals guiSupport [ pkg-config ];
+
+  buildInputs = lib.optionals guiSupport [ gtk3 ];
+
+  configureFlags = lib.optional guiSupport "--enable-gui";
+
+  meta = with lib; {
+    description = "ZBC device manipulation library";
+    homepage = "https://github.com/westerndigitalcorporation/libzbc";
+    maintainers = with maintainers; [ zseri ];
+    license = with licenses; [ bsd2 lgpl3Plus ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/os-specific/linux/libzbd/default.nix b/pkgs/os-specific/linux/libzbd/default.nix
new file mode 100644
index 0000000000000..f058e09bbd2ca
--- /dev/null
+++ b/pkgs/os-specific/linux/libzbd/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, stdenv
+, autoconf-archive
+, autoreconfHook
+, fetchFromGitHub
+, gtk3
+, libtool
+, pkg-config
+, guiSupport ? false
+}:
+
+stdenv.mkDerivation rec {
+  pname = "libzbd";
+  version = "2.0.3";
+
+  src = fetchFromGitHub {
+    owner = "westerndigitalcorporation";
+    repo = "libzbd";
+    rev = "v${version}";
+    sha256 = "GoCHwuR4ylyaN/FskIqKyAPe2A2O3iFVcI3UxPlqvtk=";
+  };
+
+  nativeBuildInputs = [
+    autoconf-archive # this can be removed with the next release
+    autoreconfHook
+    libtool
+  ] ++ lib.optionals guiSupport [ pkg-config ];
+
+  buildInputs = lib.optionals guiSupport [ gtk3 ];
+
+  configureFlags = lib.optional guiSupport "--enable-gui";
+
+  meta = with lib; {
+    description = "Zoned block device manipulation library and tools";
+    homepage = "https://github.com/westerndigitalcorporation/libzbd";
+    maintainers = with maintainers; [ zseri ];
+    license = with licenses; [ lgpl3Plus gpl3Plus ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/os-specific/linux/lightum/default.nix b/pkgs/os-specific/linux/lightum/default.nix
index 95b766aec05be..e9925b95bcd69 100644
--- a/pkgs/os-specific/linux/lightum/default.nix
+++ b/pkgs/os-specific/linux/lightum/default.nix
@@ -11,13 +11,14 @@ stdenv.mkDerivation {
     sha256 = "sha256-dzWUVY2srgk6BM6jZ7FF+snxnPopz3fx9nq+mVkmogc=";
   };
 
+  nativeBuildInputs = [ pkg-config ];
+
   buildInputs = [
     dbus
     glib
     libX11
     libXScrnSaver
     libXext
-    pkg-config
     systemd
   ];
 
diff --git a/pkgs/os-specific/linux/net-tools/mptcp.nix b/pkgs/os-specific/linux/net-tools/mptcp.nix
deleted file mode 100644
index b4ce59a7c68d2..0000000000000
--- a/pkgs/os-specific/linux/net-tools/mptcp.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ lib, nettools, fetchFromGitHub  }:
-
-nettools.overrideAttrs(oa: rec {
-  pname = "net-tools-mptcp";
-  version = "0.95";
-
-  src = fetchFromGitHub {
-    owner = "multipath-tcp";
-    repo = "net-tools";
-    rev = "mptcp_v${version}";
-    sha256 = "0i7gr1y699nc7j9qllsx8kicqkpkhw51x4chcmyl5xs06b2mdjri";
-  };
-
-  meta = with lib; {
-    homepage = "https://github.com/multipath-tcp/net-tools";
-    description = "A set of tools for controlling the network subsystem in Linux";
-    license = licenses.gpl2Plus;
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ teto ];
-  };
-})
diff --git a/pkgs/os-specific/linux/nvidia-x11/generic.nix b/pkgs/os-specific/linux/nvidia-x11/generic.nix
index b694dc1fd0cab..351d71ab8e2d4 100644
--- a/pkgs/os-specific/linux/nvidia-x11/generic.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/generic.nix
@@ -115,6 +115,7 @@ let
       };
       persistenced = mapNullable (hash: callPackage (import ./persistenced.nix self hash) { }) persistencedSha256;
       inherit persistencedVersion settingsVersion;
+      compressFirmware = false;
     } // optionalAttrs (!i686bundled) {
       inherit lib32;
     };
diff --git a/pkgs/os-specific/linux/pam_usb/default.nix b/pkgs/os-specific/linux/pam_usb/default.nix
index ebd45246ae8d1..1264894ad0c93 100644
--- a/pkgs/os-specific/linux/pam_usb/default.nix
+++ b/pkgs/os-specific/linux/pam_usb/default.nix
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     # pam_usb dependencies
-    dbus libxml2 pam pmount pkg-config
+    dbus libxml2 pam pmount
     # pam_usb's tools dependencies
     python
     # cElementTree is included with python 2.5 and later.
diff --git a/pkgs/os-specific/linux/pmount/default.nix b/pkgs/os-specific/linux/pmount/default.nix
index 0f65e0278cab3..8267a2d4a7f9d 100644
--- a/pkgs/os-specific/linux/pmount/default.nix
+++ b/pkgs/os-specific/linux/pmount/default.nix
@@ -16,7 +16,8 @@ stdenv.mkDerivation rec {
     sha256 = "db38fc290b710e8e9e9d442da2fb627d41e13b3ee80326c15cc2595ba00ea036";
   };
 
-  buildInputs = [ intltool util-linux ];
+  nativeBuildInputs = [ intltool util-linux ];
+  buildInputs = [ util-linux ];
 
   configureFlags = [
     "--with-media-dir=${mediaDir}"
diff --git a/pkgs/os-specific/linux/prl-tools/default.nix b/pkgs/os-specific/linux/prl-tools/default.nix
index 1f042f76fe01c..ee66dca354c7b 100644
--- a/pkgs/os-specific/linux/prl-tools/default.nix
+++ b/pkgs/os-specific/linux/prl-tools/default.nix
@@ -34,6 +34,10 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-yrCg3qr96SUCHmT3IAF79/Ha+L82V3nIC6Hb5ugXoGk=";
   };
 
+  patches = lib.optionals (lib.versionAtLeast kernel.version "6.0") [
+    ./prl-tools-6.0.patch
+  ];
+
   hardeningDisable = [ "pic" "format" ];
 
   nativeBuildInputs = [ p7zip undmg perl bbe autoPatchelfHook ]
diff --git a/pkgs/os-specific/linux/prl-tools/prl-tools-6.0.patch b/pkgs/os-specific/linux/prl-tools/prl-tools-6.0.patch
new file mode 100644
index 0000000000000..f0bd00d24e0ba
--- /dev/null
+++ b/pkgs/os-specific/linux/prl-tools/prl-tools-6.0.patch
@@ -0,0 +1,13 @@
+diff --git a/kmods/prl_fs_freeze/Snapshot/Guest/Linux/prl_freeze/prl_fs_freeze.c b/kmods/prl_fs_freeze/Snapshot/Guest/Linux/prl_freeze/prl_fs_freeze.c
+index baa8a19..6788791 100644
+--- a/kmods/prl_fs_freeze/Snapshot/Guest/Linux/prl_freeze/prl_fs_freeze.c
++++ b/kmods/prl_fs_freeze/Snapshot/Guest/Linux/prl_freeze/prl_fs_freeze.c
+@@ -306,7 +306,7 @@ int seq_show(struct seq_file *file, void *data)
+ 	char buf[BDEVNAME_SIZE];
+ 
+ 	fsb = list_entry((struct list_head*)data, struct frozen_sb, list);
+-	bdevname(fsb->sb->s_bdev, buf);
++	snprintf(buf, sizeof(buf), "%pg", fsb->sb->s_bdev);
+ 	seq_printf(file, "%s\n", buf);
+ 	return 0;
+ }
diff --git a/pkgs/os-specific/linux/qperf/default.nix b/pkgs/os-specific/linux/qperf/default.nix
new file mode 100644
index 0000000000000..a074cde448d9b
--- /dev/null
+++ b/pkgs/os-specific/linux/qperf/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, lib
+, fetchFromGitHub, fetchpatch
+, autoconf, automake, perl, rdma-core }:
+
+stdenv.mkDerivation rec {
+  pname = "qperf";
+  version = "0.4.11";
+
+  src = fetchFromGitHub {
+    owner = "linux-rdma";
+    repo = "qperf";
+    rev = "v${version}";
+    hash = "sha256-x9l8xqwMDHlXRZpWt3XiqN5xyCTV5rk8jp/ClRPPECI=";
+  };
+
+  patches = [ (fetchpatch {
+    name = "version-bump.patch";
+    url = "https://github.com/linux-rdma/qperf/commit/34ec57ddb7e5ae1adfcfc8093065dff90b69a275.patch";
+    hash = "sha256-+7ckhUUB+7BG6qRKv0wgyIxkyvll2xjf3Wk1hpRsDo0=";
+  }) ];
+
+  nativeBuildInputs = [ autoconf automake perl rdma-core ];
+  buildInputs = [ rdma-core ];
+
+  postUnpack =  ''
+    patchShebangs .
+  '';
+
+  configurePhase = ''
+    runHook preConfigure
+    ./autogen.sh
+    ./configure --prefix=$out
+    runHook postConfigure
+  '';
+
+  meta = with lib; {
+    description = "Measure RDMA and IP performance";
+    homepage = "https://github.com/linux-rdma/qperf";
+    license = licenses.gpl2Only;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ edwtjo ];
+  };
+}
diff --git a/pkgs/os-specific/linux/sssd/default.nix b/pkgs/os-specific/linux/sssd/default.nix
index 462151ff64f74..ef92739ec275a 100644
--- a/pkgs/os-specific/linux/sssd/default.nix
+++ b/pkgs/os-specific/linux/sssd/default.nix
@@ -13,13 +13,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "sssd";
-  version = "2.7.4";
+  version = "2.8.0";
 
   src = fetchFromGitHub {
     owner = "SSSD";
     repo = pname;
     rev = version;
-    sha256 = "sha256-tPrximWUeG3wcuZZNo8l4QqC9ZwcZupIBZGF7bm7hqQ=";
+    sha256 = "sha256-i2RRvIFQLuFw9Q3pLOgomvCH9j8h3JAailoIww1dnLs=";
   };
 
   postPatch = ''
diff --git a/pkgs/os-specific/linux/trace-cmd/default.nix b/pkgs/os-specific/linux/trace-cmd/default.nix
index d27aaa1f137a5..0aff1bdd789d4 100644
--- a/pkgs/os-specific/linux/trace-cmd/default.nix
+++ b/pkgs/os-specific/linux/trace-cmd/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
   # because the Makefile would not print warnings about too old
   # libraries (see "warning:" in the Makefile)
   postBuild = ''
-    make libs doc -j$NIX_BUILD_CORES -l$NIX_BUILD_CORES
+    make libs doc -j$NIX_BUILD_CORES
   '';
 
   installTargets = [
diff --git a/pkgs/os-specific/linux/xf86-video-nested/default.nix b/pkgs/os-specific/linux/xf86-video-nested/default.nix
index bba646e583b80..4092e3797c2ff 100644
--- a/pkgs/os-specific/linux/xf86-video-nested/default.nix
+++ b/pkgs/os-specific/linux/xf86-video-nested/default.nix
@@ -12,9 +12,11 @@ stdenv.mkDerivation {
     sha256 = "133rd2kvr2q2wmwpx82bb93qbi8wm8qp1vlmbhgc7aslz0j4cqqv";
   };
 
+  nativeBuildInputs = [ pkg-config autoreconfHook ];
+
   buildInputs =
-    [ autoreconfHook xorgproto libX11 libXext pixman
-      pkg-config utilmacros xorgserver
+    [ xorgproto libX11 libXext pixman
+      utilmacros xorgserver
     ];
 
   hardeningDisable = [ "fortify" ];
diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix
index 5e92e63553d0c..080a198b0f408 100644
--- a/pkgs/os-specific/linux/zfs/default.nix
+++ b/pkgs/os-specific/linux/zfs/default.nix
@@ -16,7 +16,7 @@
 , enablePython ? true
 
 # for determining the latest compatible linuxPackages
-, linuxPackages_5_15 ? pkgs.linuxKernel.packages.linux_5_15
+, linuxPackages_5_19 ? pkgs.linuxKernel.packages.linux_5_19
 }:
 
 let
@@ -216,28 +216,28 @@ in {
   # to be adapted
   zfsStable = common {
     # check the release notes for compatible kernels
-    kernelCompatible = kernel.kernelOlder "5.19";
-    latestCompatibleLinuxPackages = linuxPackages_5_15;
+    kernelCompatible = kernel.kernelOlder "5.20";
+    latestCompatibleLinuxPackages = linuxPackages_5_19;
 
     # this package should point to the latest release.
-    version = "2.1.5";
+    version = "2.1.6";
 
-    sha256 = "sha256-a9rmuPO8R8UfxdHvwjfFuYRGn97a1MPmLZRvr3l0swE=";
+    sha256 = "sha256-gd5WlNtnoSiVj4sKUGf0WhR7Z1GPebwu3Z1mkNsoC/I=";
   };
 
   zfsUnstable = common {
     # check the release notes for compatible kernels
-    kernelCompatible = kernel.kernelOlder "5.19";
-    latestCompatibleLinuxPackages = linuxPackages_5_15;
+    kernelCompatible = kernel.kernelOlder "5.20";
+    latestCompatibleLinuxPackages = linuxPackages_5_19;
 
     # this package should point to a version / git revision compatible with the latest kernel release
     # IMPORTANT: Always use a tagged release candidate or commits from the
     # zfs-<version>-staging branch, because this is tested by the OpenZFS
     # maintainers.
-    version = "2.1.5";
+    version = "2.1.6";
     # rev = "0000000000000000000000000000000000000000";
 
-    sha256 = "sha256-a9rmuPO8R8UfxdHvwjfFuYRGn97a1MPmLZRvr3l0swE=";
+    sha256 = "sha256-gd5WlNtnoSiVj4sKUGf0WhR7Z1GPebwu3Z1mkNsoC/I=";
 
     isUnstable = true;
   };
diff --git a/pkgs/servers/adguardhome/bins.nix b/pkgs/servers/adguardhome/bins.nix
index 3a415f9ecf840..9ba2f439471be 100644
--- a/pkgs/servers/adguardhome/bins.nix
+++ b/pkgs/servers/adguardhome/bins.nix
@@ -1,23 +1,23 @@
 { fetchurl, fetchzip }:
 {
 x86_64-darwin = fetchzip {
-  sha256 = "sha256-2QGXyXHU2p7DFKDWyau2+SCzaQnM+o0EbYqHFnErXX4=";
-  url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.12/AdGuardHome_darwin_amd64.zip";
+  sha256 = "sha256-rVc1ad8qwXfEuqZUrTsdzSQHUit3j8PQp3B0dD6FrcQ=";
+  url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.16/AdGuardHome_darwin_amd64.zip";
 };
 aarch64-darwin = fetchzip {
-  sha256 = "sha256-16XJUh78B45d1uuLi1xcFeti6CvGUkXYUVe4pS/hhXs=";
-  url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.12/AdGuardHome_darwin_arm64.zip";
+  sha256 = "sha256-GaeTdv467dVfSk2YuILmi2KphMfFYfLdpNI+dVx/UoU=";
+  url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.16/AdGuardHome_darwin_arm64.zip";
 };
 i686-linux = fetchurl {
-  sha256 = "sha256-ML9WSJwQTC8F07MOTQBpZXH/tHSlbQEzAofGpjHZrLU=";
-  url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.12/AdGuardHome_linux_386.tar.gz";
+  sha256 = "sha256-6fXU2vU3MgveWZhgrphOeczDc1GUBv7ZUehPF8+GUdY=";
+  url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.16/AdGuardHome_linux_386.tar.gz";
 };
 x86_64-linux = fetchurl {
-  sha256 = "sha256-fGSBfQzlYQbsZExOqsxa2Zdb/gvo0c9O313ziSkvOjY=";
-  url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.12/AdGuardHome_linux_amd64.tar.gz";
+  sha256 = "sha256-6rUC0R0bGS4omX9bybShk78mFaNRjUUkQqczZE2Wz5M=";
+  url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.16/AdGuardHome_linux_amd64.tar.gz";
 };
 aarch64-linux = fetchurl {
-  sha256 = "sha256-WR8omfW5udMmXNKuUIfqdXvggumG4Pb1gESJV9YZ9rc=";
-  url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.12/AdGuardHome_linux_arm64.tar.gz";
+  sha256 = "sha256-3cowMi081TIx65dgzBP+YkIj4IBwyK1Yd/gn2zL9kOI=";
+  url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.16/AdGuardHome_linux_arm64.tar.gz";
 };
 }
diff --git a/pkgs/servers/adguardhome/default.nix b/pkgs/servers/adguardhome/default.nix
index fee86027c50e6..77531d4b28cb1 100644
--- a/pkgs/servers/adguardhome/default.nix
+++ b/pkgs/servers/adguardhome/default.nix
@@ -7,7 +7,7 @@ in
 
 stdenv.mkDerivation rec {
   pname = "adguardhome";
-  version = "0.107.12";
+  version = "0.107.16";
   src = sources.${system} or (throw "Source for ${pname} is not available for ${system}");
 
   installPhase = ''
diff --git a/pkgs/servers/apache-directory-server/default.nix b/pkgs/servers/apache-directory-server/default.nix
new file mode 100644
index 0000000000000..7008e0e40d256
--- /dev/null
+++ b/pkgs/servers/apache-directory-server/default.nix
@@ -0,0 +1,29 @@
+{ lib, stdenv, fetchzip, jdk11, makeWrapper }:
+
+stdenv.mkDerivation rec {
+  pname = "apache-directory-server";
+  version = "2.0.0.AM26";
+
+  src = fetchzip {
+    url = "https://dlcdn.apache.org//directory/apacheds/dist/${version}/apacheds-${version}.zip";
+    sha256 = "sha256-36kDvfSy5rt/3+nivEFTepnIKf6sX0NTgPRm28M+1v4=";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  installPhase = ''
+    mkdir -p $out/bin $out/share/apacheds
+    install -D $src/lib/*.jar $out/share/apacheds
+    classpath=$(jars=($out/share/apacheds/*.jar); IFS=:; echo "''${jars[*]}")
+    makeWrapper ${jdk11}/bin/java $out/bin/apache-directory-server \
+      --add-flags "-classpath $classpath org.apache.directory.server.UberjarMain"
+  '';
+
+  meta = with lib; {
+    description = "An extensible and embeddable directory server";
+    homepage = "https://directory.apache.org/apacheds/";
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.ners ];
+  };
+}
diff --git a/pkgs/servers/dendrite/default.nix b/pkgs/servers/dendrite/default.nix
index 02d85ae8e4d40..51b3abce6f617 100644
--- a/pkgs/servers/dendrite/default.nix
+++ b/pkgs/servers/dendrite/default.nix
@@ -3,16 +3,16 @@
 
 buildGoModule rec {
   pname = "matrix-dendrite";
-  version = "0.9.9";
+  version = "0.10.1";
 
   src = fetchFromGitHub {
     owner = "matrix-org";
     repo = "dendrite";
     rev = "v${version}";
-    sha256 = "sha256-HPcPaI0JACyDJAHTGSXHoIuWU34A8pV7blmt/zKOUB4=";
+    sha256 = "sha256-o+vdxjxbgTPhXtmjrMXf/kBGYaaF3nvVnrG+PGnaM70=";
   };
 
-  vendorSha256 = "sha256-jX8NJYrhUHRUiZRTqzgMK3mgRhzPJGFNTCK4SuEHKzg=";
+  vendorSha256 = "sha256-sd2frDxtMd0YUVCCQGaNYU7KopZQC1Ld5OHnjttTrgA=";
 
   # some tests are racy, re-enable once upstream has fixed them
   doCheck = false;
diff --git a/pkgs/servers/dex/default.nix b/pkgs/servers/dex/default.nix
index d5948941fcbbe..ad1c499760fa2 100644
--- a/pkgs/servers/dex/default.nix
+++ b/pkgs/servers/dex/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "dex";
-  version = "2.34.0";
+  version = "2.35.1";
 
   src = fetchFromGitHub {
     owner = "dexidp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-OML1DMIuFzoIyXtWxZW+lE/yU0B+7gx61v9CTb6MNmM=";
+    sha256 = "sha256-TiFjJCf9FBvVK6I7/zMOGCwOeVDbAwHWaizcbGSeTwA=";
   };
 
-  vendorSha256 = "sha256-qMkU4OQtoOYFF9vexZ+SH0E/4xo+WARIqQrbsMPm/C8=";
+  vendorSha256 = "sha256-ZJ7SO0lCJcDDWdf9/ecltNhs+zbqMXHqthQszJBTt5s=";
 
   subPackages = [
     "cmd/dex"
diff --git a/pkgs/servers/dict/dictd-db.nix b/pkgs/servers/dict/dictd-db.nix
index 2f317feeda4f0..4098755af4c63 100644
--- a/pkgs/servers/dict/dictd-db.nix
+++ b/pkgs/servers/dict/dictd-db.nix
@@ -56,6 +56,16 @@ in rec {
     url = "mirror://sourceforge/freedict/eng-fra.tar.gz";
     sha256 = "0fi6rrnbqnhc6lq8d0nmn30zdqkibrah0mxfg27hsn9z7alwbj3m";
   }) "eng-fra" "en_UK";
+  jpn2eng = makeDictdDB (fetchurl {
+    url = let version = "0.1";
+          in "mirror://sourceforge/freedict/jpn-eng/${version}/freedict-jpn-eng-${version}.dictd.tar.xz";
+    sha256 = "sha256-juJBoEq7EztLZzOomc7uoZhXVaQPKoUvIxxPLB0xByc=";
+  }) "jpn-eng" "jpn-eng" "ja_JP";
+  eng2jpn = makeDictdDB (fetchurl {
+    url = let version = "2022.04.06";
+          in "https://download.freedict.org/dictionaries/eng-jpn/${version}/freedict-eng-jpn-${version}.dictd.tar.xz";
+    sha256 = "sha256-kfRT2kgbV3XKarCr4mqDRT5A1jR8M8APky5M5MFYatE=";
+  }) "eng-jpn" "eng-jpn" "en_UK";
   mueller_eng2rus_pkg = makeDictdDB (fetchurl {
     url = "mirror://sourceforge/mueller-dict/mueller-dict-3.1.tar.gz";
     sha256 = "04r5xxznvmcb8hkxqbjgfh2gxvbdd87jnhqn5gmgvxxw53zpwfmq";
diff --git a/pkgs/servers/dns/coredns/default.nix b/pkgs/servers/dns/coredns/default.nix
index 95f1565f863eb..10cc86e00fffb 100644
--- a/pkgs/servers/dns/coredns/default.nix
+++ b/pkgs/servers/dns/coredns/default.nix
@@ -33,6 +33,6 @@ buildGoModule rec {
     homepage = "https://coredns.io";
     description = "A DNS server that runs middleware";
     license = licenses.asl20;
-    maintainers = with maintainers; [ rushmorem rtreffer deltaevo superherointj ];
+    maintainers = with maintainers; [ rushmorem rtreffer deltaevo ];
   };
 }
diff --git a/pkgs/servers/endlessh-go/default.nix b/pkgs/servers/endlessh-go/default.nix
index ffd8c355b841e..f6415ee72acda 100644
--- a/pkgs/servers/endlessh-go/default.nix
+++ b/pkgs/servers/endlessh-go/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildGoModule
 , fetchFromGitHub
+, nixosTests
 }:
 
 buildGoModule rec {
@@ -18,6 +19,8 @@ buildGoModule rec {
 
   ldflags = [ "-s" "-w" ];
 
+  passthru.tests = nixosTests.endlessh-go;
+
   meta = with lib; {
     description = "An implementation of endlessh exporting Prometheus metrics";
     homepage = "https://github.com/shizunge/endlessh-go";
diff --git a/pkgs/servers/etebase/default.nix b/pkgs/servers/etebase/default.nix
index 8a69645c51ed6..f92a533542dc7 100644
--- a/pkgs/servers/etebase/default.nix
+++ b/pkgs/servers/etebase/default.nix
@@ -1,6 +1,6 @@
 { lib, fetchFromGitHub, buildPythonPackage, aioredis, aiofiles, django_3
 , fastapi, msgpack, pynacl, typing-extensions
-, withLdap ? true, ldap }:
+, withLdap ? true, python-ldap }:
 
 buildPythonPackage rec {
   pname = "etebase-server";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     msgpack
     pynacl
     typing-extensions
-  ] ++ lib.optional withLdap ldap;
+  ] ++ lib.optional withLdap python-ldap;
 
   installPhase = ''
     mkdir -p $out/bin $out/lib
diff --git a/pkgs/servers/firebird/default.nix b/pkgs/servers/firebird/default.nix
index 3f98beede3ab0..e49f683da8777 100644
--- a/pkgs/servers/firebird/default.nix
+++ b/pkgs/servers/firebird/default.nix
@@ -10,7 +10,7 @@ let base = {
     changelog = "https://github.com/FirebirdSQL/firebird/blob/master/CHANGELOG.md";
     license = [ "IDPL" "Interbase-1.0" ];
     platforms = platforms.linux;
-    maintainers = with maintainers; [ marcweber superherointj ];
+    maintainers = with maintainers; [ marcweber ];
   };
 
   nativeBuildInputs = [ autoreconfHook ];
diff --git a/pkgs/servers/geospatial/martin/default.nix b/pkgs/servers/geospatial/martin/default.nix
index 78eaeb7ce8b10..b225591a5adc8 100644
--- a/pkgs/servers/geospatial/martin/default.nix
+++ b/pkgs/servers/geospatial/martin/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, rustPlatform, fetchFromGitHub, Security }:
+{ lib, stdenv, rustPlatform, fetchFromGitHub, fetchpatch, Security }:
 
 rustPlatform.buildRustPackage rec {
   pname = "martin";
@@ -8,12 +8,17 @@ rustPlatform.buildRustPackage rec {
     owner = "urbica";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1i9zhmjkgid4s90n52wqmrl3lwswcaxd6d47ssycgjl1nv0jla4k";
+    hash = "sha256-kygqwbaByse81oc007piXHM6aK6Yi2JB0qTFN2WFP8U=";
   };
 
-  cargoSha256 = "1jgl8s6h4pqhn189swrhn896kw1rkmqpf7dq52ry2rdci80g02nq";
+  cargoPatches = [
+    # Remove after a new release, tracked by https://github.com/maplibre/martin/issues/410.
+    ./update-socket2-for-rust-1.64.patch
+  ];
 
-  buildInputs = with stdenv; lib.optional isDarwin Security;
+  cargoHash = "sha256-oevyr1P0uzHbpWCYQ1raqA42HI2KLl2IYcm1D2PeKOo=";
+
+  buildInputs = lib.optional stdenv.isDarwin Security;
 
   doCheck = false;
 
diff --git a/pkgs/servers/geospatial/martin/update-socket2-for-rust-1.64.patch b/pkgs/servers/geospatial/martin/update-socket2-for-rust-1.64.patch
new file mode 100644
index 0000000000000..c70261a3076cd
--- /dev/null
+++ b/pkgs/servers/geospatial/martin/update-socket2-for-rust-1.64.patch
@@ -0,0 +1,358 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index 8c90ecb..13c3149 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -305,7 +305,7 @@ name = "atty"
+ version = "0.2.13"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+@@ -343,7 +343,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+  "backtrace-sys 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
+  "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "rustc-demangle 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+@@ -353,7 +353,7 @@ version = "0.1.32"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+  "cc 1.0.46 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+ [[package]]
+@@ -393,7 +393,7 @@ version = "0.3.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+  "cc 1.0.46 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+ [[package]]
+@@ -402,7 +402,7 @@ version = "0.3.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+  "brotli-sys 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+ [[package]]
+@@ -458,12 +458,17 @@ name = "cfg-if"
+ version = "0.1.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ 
++[[package]]
++name = "cfg-if"
++version = "1.0.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++
+ [[package]]
+ name = "chrono"
+ version = "0.4.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
+  "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
+  "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
+@@ -734,7 +739,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+  "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+  "crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "miniz-sys 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
+  "miniz_oxide 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+@@ -782,7 +787,7 @@ version = "0.1.13"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+  "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "wasi 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+@@ -832,7 +837,7 @@ name = "hostname"
+ version = "0.1.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "winutil 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+@@ -892,7 +897,7 @@ name = "iovec"
+ version = "0.1.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+ [[package]]
+@@ -900,7 +905,7 @@ name = "ipconfig"
+ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+- "socket2 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)",
++ "socket2 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
+  "widestring 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+  "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+  "winreg 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
+@@ -940,7 +945,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ 
+ [[package]]
+ name = "libc"
+-version = "0.2.65"
++version = "0.2.134"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ 
+ [[package]]
+@@ -1019,7 +1024,7 @@ name = "memchr"
+ version = "1.0.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+ [[package]]
+@@ -1027,7 +1032,7 @@ name = "memchr"
+ version = "2.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+ [[package]]
+@@ -1049,7 +1054,7 @@ version = "0.1.12"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+  "cc 1.0.46 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+ [[package]]
+@@ -1069,7 +1074,7 @@ dependencies = [
+  "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+  "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+  "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+  "miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+  "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
+@@ -1083,7 +1088,7 @@ version = "0.6.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+  "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+@@ -1104,7 +1109,7 @@ version = "0.2.33"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+  "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+@@ -1135,7 +1140,7 @@ name = "num_cpus"
+ version = "1.10.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+ [[package]]
+@@ -1165,7 +1170,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+  "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+  "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
+  "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
+  "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
+@@ -1180,7 +1185,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+  "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+  "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
+  "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
+  "smallvec 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
+@@ -1223,7 +1228,7 @@ dependencies = [
+  "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+  "postgres-protocol 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
+  "postgres-shared 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
+- "socket2 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)",
++ "socket2 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+ [[package]]
+@@ -1325,7 +1330,7 @@ name = "rand"
+ version = "0.3.23"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+@@ -1335,7 +1340,7 @@ version = "0.4.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+  "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+  "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+  "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+@@ -1347,7 +1352,7 @@ version = "0.6.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+  "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+  "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
+  "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+@@ -1365,7 +1370,7 @@ version = "0.7.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+  "getrandom 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "rand_chacha 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+  "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+  "rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+@@ -1439,7 +1444,7 @@ name = "rand_jitter"
+ version = "0.1.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
+  "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+@@ -1451,7 +1456,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+  "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
+  "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
+  "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+  "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+@@ -1687,7 +1692,7 @@ name = "signal-hook"
+ version = "0.1.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "signal-hook-registry 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+@@ -1697,7 +1702,7 @@ version = "1.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+  "arc-swap 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+ [[package]]
+@@ -1717,12 +1722,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ 
+ [[package]]
+ name = "socket2"
+-version = "0.3.11"
++version = "0.3.19"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+- "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
+- "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
++ "cfg-if 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+ 
+@@ -1825,7 +1829,7 @@ name = "time"
+ version = "0.1.42"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
+  "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ ]
+@@ -1901,7 +1905,7 @@ version = "0.2.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ dependencies = [
+  "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)",
+  "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)",
+  "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
+  "signal-hook 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+@@ -1972,7 +1976,7 @@ dependencies = [
+  "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
+  "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
+  "smallvec 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
+- "socket2 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)",
++ "socket2 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
+  "tokio-executor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
+  "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
+  "tokio-reactor 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+@@ -2200,6 +2204,7 @@ dependencies = [
+ "checksum cast 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "926013f2860c46252efceabb19f4a6b308197505082c609025aa6706c011d427"
+ "checksum cc 1.0.46 (registry+https://github.com/rust-lang/crates.io-index)" = "0213d356d3c4ea2c18c40b037c3be23cd639825c18f25ee670ac7813beeef99c"
+ "checksum cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
++"checksum cfg-if 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+ "checksum chrono 0.4.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e8493056968583b0193c1bb04d6f7684586f3726992d6c573261941a895dbd68"
+ "checksum clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9"
+ "checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
+@@ -2256,7 +2261,7 @@ dependencies = [
+ "checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
+ "checksum language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a"
+ "checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+-"checksum libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)" = "1a31a0627fdf1f6a39ec0dd577e101440b7db22672c0901fe00a9a6fbb5c24e8"
++"checksum libc 0.2.134 (registry+https://github.com/rust-lang/crates.io-index)" = "329c933548736bc49fd575ee68c89e8be4d260064184389a5b77517cddd99ffb"
+ "checksum linked-hash-map 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "ae91b68aebc4ddb91978b11a1b02ddd8602a05ec19002801c5666000e05e0f83"
+ "checksum lock_api 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ed946d4529956a20f2d63ebe1b69996d5a2137c91913fe3ebbeff957f5bca7ff"
+ "checksum lock_api 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f8912e782533a93a167888781b836336a6ca5da6175c05944c86cf28c31104dc"
+@@ -2344,7 +2349,7 @@ dependencies = [
+ "checksum siphasher 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
+ "checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
+ "checksum smallvec 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "ab606a9c5e214920bb66c458cd7be8ef094f813f20fe77a54cc7dbfff220d4b7"
+-"checksum socket2 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)" = "e8b74de517221a2cb01a53349cf54182acdc31a074727d3079068448c0676d85"
++"checksum socket2 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)" = "122e570113d28d773067fab24266b66753f6ea915758651696b6e35e49f88d6e"
+ "checksum string 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d24114bfcceb867ca7f71a0d3fe45d45619ec47a6fbfa98cb14e14250bfa5d6d"
+ "checksum stringprep 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "8ee348cb74b87454fff4b551cbf727025810a004f88aeacae7f85b87f4e9a1c1"
+ "checksum strsim 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)" = "032c03039aae92b350aad2e3779c352e104d919cb192ba2fabbd7b831ce4f0f6"
+@@ -2393,3 +2398,4 @@ dependencies = [
+ "checksum winutil 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7daf138b6b14196e3830a588acf1e86966c694d3e8fb026fb105b8b5dca07e6e"
+ "checksum ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e"
+ "checksum yaml-rust 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "65923dd1784f44da1d2c3dbbc5e822045628c590ba72123e1c73d3c230c4434d"
++
diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix
index 71a928b9d856a..67b74bcbe44bf 100644
--- a/pkgs/servers/home-assistant/component-packages.nix
+++ b/pkgs/servers/home-assistant/component-packages.nix
@@ -2,7 +2,7 @@
 # Do not edit!
 
 {
-  version = "2022.9.7";
+  version = "2022.10.3";
   components = {
     "abode" = ps: with ps; [
       abodepy
@@ -84,9 +84,6 @@
     "amazon_polly" = ps: with ps; [
       boto3
     ];
-    "ambee" = ps: with ps; [
-      ambee
-    ];
     "amberelectric" = ps: with ps; [
       amberelectric
     ];
@@ -197,8 +194,12 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
+      home-assistant-frontend
+      pillow
       pyserial
       pyudev
+      sqlalchemy
       yalexs-ble
       yalexs
     ];
@@ -292,8 +293,12 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
+      home-assistant-frontend
+      pillow
       pyserial
       pyudev
+      sqlalchemy
     ];
     "blueprint" = ps: with ps; [
     ];
@@ -307,8 +312,12 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
+      home-assistant-frontend
+      pillow
       pyserial
       pyudev
+      sqlalchemy
     ];
     "bluetooth_le_tracker" = ps: with ps; [
       aiohttp-cors
@@ -317,8 +326,12 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
+      home-assistant-frontend
+      pillow
       pyserial
       pyudev
+      sqlalchemy
     ];
     "bluetooth_tracker" = ps: with ps; [
       bt-proximity
@@ -368,8 +381,12 @@
       bluetooth-auto-recovery
       bthome-ble
       dbus-fast
+      fnvhash
+      home-assistant-frontend
+      pillow
       pyserial
       pyudev
+      sqlalchemy
     ];
     "buienradar" = ps: with ps; [
       buienradar
@@ -429,10 +446,6 @@
     ];
     "clicksend_tts" = ps: with ps; [
     ];
-    "climacell" = ps: with ps; [
-      pyclimacell
-      pytomorrowio
-    ];
     "climate" = ps: with ps; [
     ];
     "cloud" = ps: with ps; [
@@ -801,8 +814,12 @@
       bluetooth-auto-recovery
       construct
       dbus-fast
+      fnvhash
+      home-assistant-frontend
+      pillow
       pyserial
       pyudev
+      sqlalchemy
     ]; # missing inputs: python-eq3bt
     "escea" = ps: with ps; [
       pescea
@@ -815,9 +832,13 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
+      home-assistant-frontend
       ifaddr
+      pillow
       pyserial
       pyudev
+      sqlalchemy
       zeroconf
     ];
     "etherscan" = ps: with ps; [
@@ -910,8 +931,12 @@
       bluetooth-auto-recovery
       dbus-fast
       fjaraskupan
+      fnvhash
+      home-assistant-frontend
+      pillow
       pyserial
       pyudev
+      sqlalchemy
     ];
     "fleetgo" = ps: with ps; [
       ritassist
@@ -936,9 +961,6 @@
     "flume" = ps: with ps; [
       pyflume
     ];
-    "flunearyou" = ps: with ps; [
-      pyflunearyou
-    ];
     "flux" = ps: with ps; [
     ];
     "flux_led" = ps: with ps; [
@@ -958,6 +980,8 @@
       forecast-solar
     ];
     "forked_daapd" = ps: with ps; [
+      aiohttp-cors
+      spotipy
     ]; # missing inputs: pyforked-daapd pylibrespot-java
     "fortios" = ps: with ps; [
       fortiosapi
@@ -1097,6 +1121,10 @@
     "google_pubsub" = ps: with ps; [
       google-cloud-pubsub
     ];
+    "google_sheets" = ps: with ps; [
+      aiohttp-cors
+      gspread
+    ];
     "google_translate" = ps: with ps; [
       gtts
     ];
@@ -1112,9 +1140,13 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
       govee-ble
+      home-assistant-frontend
+      pillow
       pyserial
       pyudev
+      sqlalchemy
     ];
     "gpsd" = ps: with ps; [
       gps3
@@ -1262,9 +1294,13 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
+      home-assistant-frontend
       ifaddr
+      pillow
       pyserial
       pyudev
+      sqlalchemy
       zeroconf
     ];
     "homematic" = ps: with ps; [
@@ -1303,8 +1339,7 @@
       aiohue
     ];
     "huisbaasje" = ps: with ps; [
-      huisbaasje-client
-    ];
+    ]; # missing inputs: energyflip-client
     "humidifier" = ps: with ps; [
     ];
     "hunterdouglas_powerview" = ps: with ps; [
@@ -1327,6 +1362,21 @@
     "iaqualink" = ps: with ps; [
       iaqualink
     ];
+    "ibeacon" = ps: with ps; [
+      aiohttp-cors
+      bleak-retry-connector
+      bleak
+      bluetooth-adapters
+      bluetooth-auto-recovery
+      dbus-fast
+      fnvhash
+      home-assistant-frontend
+      ibeacon-ble
+      pillow
+      pyserial
+      pyudev
+      sqlalchemy
+    ];
     "icloud" = ps: with ps; [
       pyicloud
     ];
@@ -1371,9 +1421,13 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
+      home-assistant-frontend
       inkbird-ble
+      pillow
       pyserial
       pyudev
+      sqlalchemy
     ];
     "input_boolean" = ps: with ps; [
     ];
@@ -1477,12 +1531,42 @@
       aiokef
       getmac
     ];
+    "kegtron" = ps: with ps; [
+      aiohttp-cors
+      bleak-retry-connector
+      bleak
+      bluetooth-adapters
+      bluetooth-auto-recovery
+      dbus-fast
+      fnvhash
+      home-assistant-frontend
+      kegtron-ble
+      pillow
+      pyserial
+      pyudev
+      sqlalchemy
+    ];
     "keyboard" = ps: with ps; [
     ]; # missing inputs: pyuserinput
     "keyboard_remote" = ps: with ps; [
       aionotify
       evdev
     ];
+    "keymitt_ble" = ps: with ps; [
+      pymicrobot
+      aiohttp-cors
+      bleak-retry-connector
+      bleak
+      bluetooth-adapters
+      bluetooth-auto-recovery
+      dbus-fast
+      fnvhash
+      home-assistant-frontend
+      pillow
+      pyserial
+      pyudev
+      sqlalchemy
+    ];
     "kira" = ps: with ps; [
       pykira
     ];
@@ -1546,9 +1630,13 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
+      home-assistant-frontend
       led-ble
+      pillow
       pyserial
       pyudev
+      sqlalchemy
     ];
     "lg_netcast" = ps: with ps; [
       pylgnetcast
@@ -1556,6 +1644,9 @@
     "lg_soundbar" = ps: with ps; [
       temescal
     ];
+    "lidarr" = ps: with ps; [
+      aiopyarr
+    ];
     "life360" = ps: with ps; [
       life360
     ];
@@ -1713,8 +1804,12 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
+      home-assistant-frontend
+      pillow
       pyserial
       pyudev
+      sqlalchemy
     ]; # missing inputs: melnor-bluetooth
     "meraki" = ps: with ps; [
       aiohttp-cors
@@ -1786,9 +1881,13 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
+      home-assistant-frontend
       moat-ble
+      pillow
       pyserial
       pyudev
+      sqlalchemy
     ];
     "mobile_app" = ps: with ps; [
       pynacl
@@ -1953,6 +2052,9 @@
     ];
     "nfandroidtv" = ps: with ps; [
     ]; # missing inputs: notifications-android-tv
+    "nibe_heatpump" = ps: with ps; [
+      tenacity
+    ]; # missing inputs: nibe
     "nightscout" = ps: with ps; [
       py-nightscout
     ];
@@ -1980,6 +2082,9 @@
     ];
     "noaa_tides" = ps: with ps; [
     ]; # missing inputs: noaa-coops
+    "nobo_hub" = ps: with ps; [
+      pynobo
+    ];
     "norway_air" = ps: with ps; [
       pymetno
     ];
@@ -2291,9 +2396,13 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
+      home-assistant-frontend
+      pillow
       pyserial
       pyudev
       qingping-ble
+      sqlalchemy
     ];
     "qld_bushfire" = ps: with ps; [
       georss-qld-bushfire-alert-client
@@ -2323,6 +2432,7 @@
       rachiopy
     ];
     "radarr" = ps: with ps; [
+      aiopyarr
     ];
     "radio_browser" = ps: with ps; [
       radios
@@ -2541,9 +2651,13 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
+      home-assistant-frontend
+      pillow
       pyserial
       pyudev
       sensorpro-ble
+      sqlalchemy
     ];
     "sensorpush" = ps: with ps; [
       aiohttp-cors
@@ -2552,9 +2666,13 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
+      home-assistant-frontend
+      pillow
       pyserial
       pyudev
       sensorpush-ble
+      sqlalchemy
     ];
     "sentry" = ps: with ps; [
       sentry-sdk
@@ -2823,6 +2941,8 @@
     ];
     "switch_as_x" = ps: with ps; [
     ];
+    "switchbee" = ps: with ps; [
+    ]; # missing inputs: pyswitchbee
     "switchbot" = ps: with ps; [
       pyswitchbot
       aiohttp-cors
@@ -2831,8 +2951,12 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
+      home-assistant-frontend
+      pillow
       pyserial
       pyudev
+      sqlalchemy
     ];
     "switcher_kis" = ps: with ps; [
       aioswitcher
@@ -2937,8 +3061,12 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
+      home-assistant-frontend
+      pillow
       pyserial
       pyudev
+      sqlalchemy
       thermobeacon-ble
     ];
     "thermopro" = ps: with ps; [
@@ -2948,8 +3076,12 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
+      home-assistant-frontend
+      pillow
       pyserial
       pyudev
+      sqlalchemy
       thermopro-ble
     ];
     "thermoworks_smoke" = ps: with ps; [
@@ -2975,6 +3107,21 @@
     "tile" = ps: with ps; [
       pytile
     ];
+    "tilt_ble" = ps: with ps; [
+      aiohttp-cors
+      bleak-retry-connector
+      bleak
+      bluetooth-adapters
+      bluetooth-auto-recovery
+      dbus-fast
+      fnvhash
+      home-assistant-frontend
+      pillow
+      pyserial
+      pyudev
+      sqlalchemy
+      tilt-ble
+    ];
     "time_date" = ps: with ps; [
     ];
     "timer" = ps: with ps; [
@@ -3136,8 +3283,6 @@
       pyserial
       pyudev
     ];
-    "uscis" = ps: with ps; [
-    ]; # missing inputs: uscisstatus
     "usgs_earthquakes_feed" = ps: with ps; [
       aio-geojson-usgs-earthquakes
     ];
@@ -3329,8 +3474,12 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
+      home-assistant-frontend
+      pillow
       pyserial
       pyudev
+      sqlalchemy
       xiaomi-ble
     ];
     "xiaomi_miio" = ps: with ps; [
@@ -3356,8 +3505,12 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       dbus-fast
+      fnvhash
+      home-assistant-frontend
+      pillow
       pyserial
       pyudev
+      sqlalchemy
       yalexs-ble
     ];
     "yamaha" = ps: with ps; [
@@ -3481,7 +3634,6 @@
     "alert"
     "alexa"
     "almond"
-    "ambee"
     "amberelectric"
     "ambiclimate"
     "ambient_station"
@@ -3489,6 +3641,7 @@
     "android_ip_webcam"
     "androidtv"
     "apache_kafka"
+    "apcupsd"
     "api"
     "apple_tv"
     "application_credentials"
@@ -3537,7 +3690,6 @@
     "canary"
     "cast"
     "cert_expiry"
-    "climacell"
     "climate"
     "cloud"
     "cloudflare"
@@ -3583,6 +3735,7 @@
     "dnsip"
     "doorbird"
     "dsmr"
+    "dsmr_reader"
     "dte_energy_bridge"
     "duckdns"
     "dunehd"
@@ -3632,7 +3785,6 @@
     "flipr"
     "flo"
     "flume"
-    "flunearyou"
     "flux"
     "flux_led"
     "folder"
@@ -3670,6 +3822,7 @@
     "google_assistant"
     "google_domains"
     "google_pubsub"
+    "google_sheets"
     "google_translate"
     "google_travel_time"
     "google_wifi"
@@ -3712,13 +3865,13 @@
     "http"
     "huawei_lte"
     "hue"
-    "huisbaasje"
     "humidifier"
     "hunterdouglas_powerview"
     "hvv_departures"
     "hyperion"
     "ialarm"
     "iaqualink"
+    "ibeacon"
     "icloud"
     "ifttt"
     "ign_sismologia"
@@ -3751,6 +3904,8 @@
     "juicenet"
     "justnimbus"
     "keenetic_ndms2"
+    "kegtron"
+    "keymitt_ble"
     "kira"
     "kmtronic"
     "knx"
@@ -3765,6 +3920,7 @@
     "lcn"
     "led_ble"
     "lg_soundbar"
+    "lidarr"
     "life360"
     "lifx"
     "light"
@@ -3843,6 +3999,7 @@
     "nightscout"
     "nina"
     "no_ip"
+    "nobo_hub"
     "notify"
     "notify_events"
     "notion"
@@ -4036,6 +4193,7 @@
     "threshold"
     "tibber"
     "tile"
+    "tilt_ble"
     "time_date"
     "timer"
     "tod"
diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix
index 357e381ac7417..118701d24529f 100644
--- a/pkgs/servers/home-assistant/default.nix
+++ b/pkgs/servers/home-assistant/default.nix
@@ -57,28 +57,6 @@ let
     })
 
     (self: super: {
-      bleak = super.bleak.overridePythonAttrs (oldAttrs: rec {
-        version = "0.17.0";
-        src = fetchFromGitHub {
-          owner = "hbldh";
-          repo = "bleak";
-          rev = "refs/tags/v${version}";
-          hash = "sha256-AnH23AWrLw2jq6gSbx9VoGD8QXeCH5dN7FSVVdj4b3w=";
-        };
-      });
-
-      bleak-retry-connector = super.bleak-retry-connector.overridePythonAttrs (oldAttrs: rec {
-        version = "1.17.1";
-        src = fetchFromGitHub {
-          owner = "Bluetooth-Devices";
-          repo = "bleak-retry-connector";
-          rev = "refs/tags/v${version}";
-          hash = "sha256-FoQ1cDORQaJcr6y9JaO4MigqV6jiBbwKNIIdYDgFNxQ=";
-        };
-      });
-    })
-
-    (self: super: {
       blebox-uniapi = super.blebox-uniapi.overridePythonAttrs (oldAttrs: rec {
         version = "2.0.2";
         src = fetchFromGitHub {
@@ -91,19 +69,6 @@ let
     })
 
     (self: super: {
-      bluetooth-adapters = super.bluetooth-adapters.overridePythonAttrs (oldAttrs: rec {
-        version = "0.4.1";
-        propagatedBuildInputs = oldAttrs.propagatedBuildInputs ++ [ super.dbus-fast ];
-        src = fetchFromGitHub {
-          owner = "Bluetooth-Devices";
-          repo = "bluetooth-adapters";
-          rev = "refs/tags/v${version}";
-          hash = "sha256-LAT4r6RHJWTkrZvuL1aSQDiztvXiOJwGmNQKGFnvFB8=";
-        };
-      });
-    })
-
-    (self: super: {
       gridnet = super.gridnet.overridePythonAttrs (oldAttrs: rec {
         version = "4.0.0";
         src = fetchFromGitHub {
@@ -163,18 +128,6 @@ let
       });
     })
 
-    (self: super: {
-      plugwise = super.plugwise.overridePythonAttrs (oldAttrs: rec {
-        version = "0.20.1";
-        src = fetchFromGitHub {
-          owner = "plugwise";
-          repo = "python-plugwise";
-          rev = "refs/tags/v${version}";
-          hash = "sha256-Sk7L0JPwn7IXVl5GeERxrG/vrHXeNwUjW1mgm4g40Ng=";
-        };
-      });
-    })
-
     # Pinned due to API changes in 0.1.0
     (self: super: {
       poolsense = super.poolsense.overridePythonAttrs (oldAttrs: rec {
@@ -201,25 +154,11 @@ let
     })
 
     (self: super: {
-      pyatmo = super.pyatmo.overridePythonAttrs (oldAttrs: rec {
-        version = "6.2.4";
-        src = fetchFromGitHub {
-          owner = "jabesq";
-          repo = "pyatmo";
-          rev = "refs/tags/v${version}";
-          hash = "sha256-VXkQByaNA02fwBO2yuf7w1ZF/oJwd/h21de1EQlCu2U=";
-        };
-        checkInputs = [ super.freezegun ];
-      });
-    })
-
-    (self: super: {
       pydeconz = super.pydeconz.overridePythonAttrs (oldAttrs: rec {
         doCheck = false; # requires pytest-aiohttp>=1.0.0
       });
     })
 
-
     (self: super: {
       python-slugify = super.python-slugify.overridePythonAttrs (oldAttrs: rec {
         pname = "python-slugify";
@@ -244,17 +183,6 @@ let
     })
 
     (self: super: {
-      solax = super.solax.overridePythonAttrs (oldAttrs: rec {
-        version = "0.2.9";
-        src = super.fetchPypi {
-          pname = "solax";
-          inherit version;
-          hash = "sha256-5m2wxdTshAsEfldPAyXqAYYtH1VjqERRBUGzX6pV85I=";
-        };
-      });
-    })
-
-    (self: super: {
       pysoma = super.pysoma.overridePythonAttrs (oldAttrs: rec {
         version = "0.0.10";
         src = super.fetchPypi {
@@ -333,7 +261,7 @@ let
   extraPackagesFile = writeText "home-assistant-packages" (lib.concatMapStringsSep "\n" (pkg: pkg.pname) extraBuildInputs);
 
   # Don't forget to run parse-requirements.py after updating
-  hassVersion = "2022.9.7";
+  hassVersion = "2022.10.3";
 
 in python.pkgs.buildPythonApplication rec {
   pname = "homeassistant";
@@ -351,7 +279,7 @@ in python.pkgs.buildPythonApplication rec {
     owner = "home-assistant";
     repo = "core";
     rev = version;
-    hash = "sha256-V6/y5HnJh8AVwkSg3uanYQRNvDcD1P0L+wBu98NpDek=";
+    hash = "sha256-5ffMs6gXOyg0hhB0Wx4bRmSqkr0uRhNcLhLo1PI2UqE=";
   };
 
   # leave this in, so users don't have to constantly update their downstream patch handling
@@ -374,6 +302,7 @@ in python.pkgs.buildPythonApplication rec {
       "orjson"
       "PyJWT"
       "requests"
+      "typing-extensions"
       "yarl"
     ];
   in ''
diff --git a/pkgs/servers/home-assistant/frontend.nix b/pkgs/servers/home-assistant/frontend.nix
index 0807320ff1a62..5282874435f31 100644
--- a/pkgs/servers/home-assistant/frontend.nix
+++ b/pkgs/servers/home-assistant/frontend.nix
@@ -4,7 +4,7 @@ buildPythonPackage rec {
   # the frontend version corresponding to a specific home-assistant version can be found here
   # https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/frontend/manifest.json
   pname = "home-assistant-frontend";
-  version = "20220907.2";
+  version = "20221010.0";
   format = "wheel";
 
   src = fetchPypi {
@@ -12,7 +12,7 @@ buildPythonPackage rec {
     pname = "home_assistant_frontend";
     dist = "py3";
     python = "py3";
-    sha256 = "sha256-ykId53EMPRXmMmoS55ZtjF6UR/JVPtBXFqjwuK2E2F4=";
+    sha256 = "sha256-TyaEnXHnaFk+V06BjeblYv6VnXsmYCc/7mYicJsBEY8=";
   };
 
   # there is nothing to strip in this package
diff --git a/pkgs/servers/home-assistant/tests.nix b/pkgs/servers/home-assistant/tests.nix
index feb7331f05de1..c40d9e71989c3 100644
--- a/pkgs/servers/home-assistant/tests.nix
+++ b/pkgs/servers/home-assistant/tests.nix
@@ -13,12 +13,14 @@ let
     config = [ pydispatcher ];
     generic = [ av ];
     google_translate = [ mutagen ];
+    google_sheets = [ oauth2client ];
     homeassistant_sky_connect = [ bellows zha-quirks zigpy-deconz zigpy-xbee zigpy-zigate zigpy-znp ];
     homeassistant_yellow = [ bellows zha-quirks zigpy-deconz zigpy-xbee zigpy-zigate zigpy-znp ];
     lovelace = [ PyChromecast ];
     nest = [ av ];
     onboarding = [ pymetno radios rpi-bad-power ];
     raspberry_pi = [ rpi-bad-power ];
+    tilt_ble = [ govee-ble ibeacon-ble ];
     tomorrowio = [ pyclimacell ];
     version = [ aioaseko ];
     xiaomi_miio = [ arrow ];
diff --git a/pkgs/servers/http/apache-modules/mod_perl/default.nix b/pkgs/servers/http/apache-modules/mod_perl/default.nix
index e511429bfc447..bbb38eb969bd2 100644
--- a/pkgs/servers/http/apache-modules/mod_perl/default.nix
+++ b/pkgs/servers/http/apache-modules/mod_perl/default.nix
@@ -2,18 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mod_perl";
-  version = "2.0.11";
+  version = "2.0.12";
 
   src = fetchurl {
     url = "mirror://apache/perl/${pname}-${version}.tar.gz";
-    sha256 = "0x3gq4nz96y202cymgrf56n8spm7bffkd1p74dh9q3zrrlc9wana";
+    sha256 = "sha256-9bghtZsP3JZw5G7Q/PMtiRHyUSYYmotowWUvkiHu4mk=";
   };
 
-  patches = [
-    # Fix build on perl-5.34.0, https://github.com/Perl/perl5/issues/18617
-    ../../../../development/perl-modules/mod_perl2-PL_hash_seed.patch
-  ];
-
   buildInputs = [ apacheHttpd perl ];
   buildPhase = ''
     perl Makefile.PL \
diff --git a/pkgs/servers/http/darkhttpd/default.nix b/pkgs/servers/http/darkhttpd/default.nix
index 56bf5cd5b74cf..81e963c5607b0 100644
--- a/pkgs/servers/http/darkhttpd/default.nix
+++ b/pkgs/servers/http/darkhttpd/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "darkhttpd";
-  version = "1.13";
+  version = "1.14";
 
   src = fetchFromGitHub {
     owner = "emikulic";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0w11xq160q9yyffv4mw9ncp1n0dl50d9plmwxb0yijaaxls9i4sk";
+    sha256 = "sha256-J/tjT3Rfhk5++jbmLBrZu9O4GgTBqeycuz82NliCBxw=";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/servers/http/yaws/default.nix b/pkgs/servers/http/yaws/default.nix
index be22ebdd36c9d..7609c6ea54549 100644
--- a/pkgs/servers/http/yaws/default.nix
+++ b/pkgs/servers/http/yaws/default.nix
@@ -1,23 +1,19 @@
-{lib, stdenv, fetchurl, erlang, pam, perl }:
+{lib, stdenv, fetchFromGitHub, erlang, pam, perl, autoreconfHook }:
 
 stdenv.mkDerivation rec {
   pname = "yaws";
-  version = "2.0.6";
+  version = "2.1.1";
 
-  src = fetchurl {
-    url = "http://yaws.hyber.org/download/${pname}-${version}.tar.gz";
-    sha256 = "03nh97g7smsgm6sw5asssmlq7zgx6y2gnn7jn0lv2x5mkf5nzyb9";
+  src = fetchFromGitHub {
+    owner = "erlyaws";
+    repo = pname;
+    rev = "${pname}-${version}";
+    hash = "sha256-F1qhq0SEChWw/EBodXKWTqMNmGoTwP2JgkmfANUFD9I=";
   };
 
-  # The tarball includes a symlink yaws -> yaws-1.95, which seems to be
-  # necessary for importing erlang files
-  unpackPhase = ''
-    tar xzf $src
-    cd $name
-  '';
-
   configureFlags = [ "--with-extrainclude=${pam}/include/security" ];
 
+  nativeBuildInputs = [ autoreconfHook ];
   buildInputs = [ erlang pam perl ];
 
   postInstall = ''
@@ -25,8 +21,8 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    description = "A high performance HTTP 1.1 server in Erlang";
-    homepage = "http://yaws.hyber.org";
+    description = "A webserver for dynamic content written in Erlang.";
+    homepage = "https://github.com/erlyaws/yaws";
     license = licenses.bsd2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ goibhniu ];
diff --git a/pkgs/servers/imgproxy/default.nix b/pkgs/servers/imgproxy/default.nix
index 7ff6003e29dd5..14ab5e03c70c0 100644
--- a/pkgs/servers/imgproxy/default.nix
+++ b/pkgs/servers/imgproxy/default.nix
@@ -3,16 +3,16 @@
 
 buildGoModule rec {
   pname = "imgproxy";
-  version = "3.7.2";
+  version = "3.8.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
-    sha256 = "sha256-ggQOVBYdTmrkThzJSYjxk6Y9znq4dHvSX6ATjyhoHsw=";
+    sha256 = "sha256-T82z6rqS4mCXo0844xe4VZzI5AScn0dPWvu9q8nO2uQ=";
     rev = "v${version}";
   };
 
-  vendorSha256 = "sha256-LrUdOkapPwR9vtecQM0vn/B5fppMUW3luxT7pPelvvU=";
+  vendorSha256 = "sha256-QwmrxG3DMXdw/MQKChlP/icc9s5x85vbrRKoael4Bc4=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/servers/jellyfin/nuget-deps.nix b/pkgs/servers/jellyfin/nuget-deps.nix
index efad6840bb70d..01b33dc905b5c 100644
--- a/pkgs/servers/jellyfin/nuget-deps.nix
+++ b/pkgs/servers/jellyfin/nuget-deps.nix
@@ -145,7 +145,7 @@
   (fetchNuGet { pname = "Serilog.Sinks.Debug"; version = "2.0.0"; sha256 = "1i7j870l47gan3gpnnlzkccn5lbm7518cnkp25a3g5gp9l0dbwpw"; })
   (fetchNuGet { pname = "Serilog.Sinks.File"; version = "5.0.0"; sha256 = "097rngmgcrdfy7jy8j7dq3xaq2qky8ijwg0ws6bfv5lx0f3vvb0q"; })
   (fetchNuGet { pname = "Serilog.Sinks.Graylog"; version = "2.3.0"; sha256 = "1mnji4p1n9rsjxlaal84zkypwqcfciws1si863zz4ld2xvv9adri"; })
-  (fetchNuGet { pname = "SerilogAnalyzer"; version = "0.15.0.0"; sha256 = "0k83cyzl9520q282vp07zb8rs16a56axv7a31l3m5fb1afq2hv9l"; })
+  (fetchNuGet { pname = "SerilogAnalyzer"; version = "0.15.0"; sha256 = "0k83cyzl9520q282vp07zb8rs16a56axv7a31l3m5fb1afq2hv9l"; })
   (fetchNuGet { pname = "SharpCompress"; version = "0.32.2"; sha256 = "1p198bl08ia89rf4n6yjpacj3yrz6s574snsfl40l8vlqcdrc1pm"; })
   (fetchNuGet { pname = "SkiaSharp"; version = "2.88.2"; sha256 = "0fnvp1yxl8gix9qb812pslhp8dvbf12ackvmp4yjdig6ybix77az"; })
   (fetchNuGet { pname = "SkiaSharp.NativeAssets.Linux"; version = "2.88.2"; sha256 = "1jc65bg75kxa2hv33y9584hbar10lirahgnh8s12lk8dpb23a3m3"; })
diff --git a/pkgs/servers/klipper/default.nix b/pkgs/servers/klipper/default.nix
index dc41a9546c94f..59049ae735542 100644
--- a/pkgs/servers/klipper/default.nix
+++ b/pkgs/servers/klipper/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "klipper";
-  version = "unstable-2022-09-16";
+  version = "unstable-2022-10-06";
 
   src = fetchFromGitHub {
     owner = "KevinOConnor";
     repo = "klipper";
-    rev = "7527e57e5a778d069aaa05b01e03869c63a1a712";
-    sha256 = "sha256-k3tvV7uCdmPN4SvZixvPmOqt5jTN9tz0W6SUXN5g3Ss=";
+    rev = "7290c14531211d027b430f36db5645ce496be900";
+    sha256 = "sha256-+BSsk2G6g4IJsbG6pggYb9vcaezqNUXEAXXAcMMhAfw=";
   };
 
   sourceRoot = "source/klippy";
diff --git a/pkgs/servers/mail/mailman/default.nix b/pkgs/servers/mail/mailman/default.nix
index 77dbef745c8d6..5571a5bef7f32 100644
--- a/pkgs/servers/mail/mailman/default.nix
+++ b/pkgs/servers/mail/mailman/default.nix
@@ -26,9 +26,9 @@ let
         mailmanEnv = self.python3.withPackages
           (ps: [ mailman ps.psycopg2 ]
             ++ lib.optional withHyperkitty mailman-hyperkitty
-            ++ lib.optionals withLDAP [ ps.ldap ps.django-auth-ldap ]);
+            ++ lib.optionals withLDAP [ ps.python-ldap ps.django-auth-ldap ]);
         webEnv = self.python3.withPackages
-          (ps: [ web ps.psycopg2 ] ++ lib.optionals withLDAP [ ps.ldap ps.django-auth-ldap ]);
+          (ps: [ web ps.psycopg2 ] ++ lib.optionals withLDAP [ ps.python-ldap ps.django-auth-ldap ]);
       };
   });
 
diff --git a/pkgs/servers/mail/rspamd/default.nix b/pkgs/servers/mail/rspamd/default.nix
index 05d71c9bad32d..65266c86d9390 100644
--- a/pkgs/servers/mail/rspamd/default.nix
+++ b/pkgs/servers/mail/rspamd/default.nix
@@ -11,13 +11,13 @@ assert withHyperscan -> stdenv.isx86_64;
 
 stdenv.mkDerivation rec {
   pname = "rspamd";
-  version = "3.2";
+  version = "3.3";
 
   src = fetchFromGitHub {
     owner = "rspamd";
     repo = "rspamd";
     rev = version;
-    sha256 = "122d5m1nfxxz93bhsk8lm4dazvdknzphb0a1188m7bsa4iynbfv2";
+    sha256 = "sha256-VBNRdkJxO3OSl6ap0BZl4bxJdu0cUNxiH+TrseyGZ1s=";
   };
 
   hardeningEnable = [ "pie" ];
diff --git a/pkgs/servers/mastodon/default.nix b/pkgs/servers/mastodon/default.nix
index a312ecb76da75..7468b612cb47e 100644
--- a/pkgs/servers/mastodon/default.nix
+++ b/pkgs/servers/mastodon/default.nix
@@ -16,11 +16,6 @@ stdenv.mkDerivation rec {
   # Putting the callPackage up in the arguments list also does not work.
   src = if srcOverride != null then srcOverride else callPackage ./source.nix {};
 
-  yarnOfflineCache = fetchYarnDeps {
-    yarnLock = "${src}/yarn.lock";
-    sha256 = "sha256-2NSibx026ENAqphGGhNoLwUldWTEPbDBrYu3hgeRlnM=";
-  };
-
   mastodon-gems = bundlerEnv {
     name = "${pname}-gems-${version}";
     inherit version;
@@ -45,6 +40,11 @@ stdenv.mkDerivation rec {
     pname = "${pname}-modules";
     inherit src version;
 
+    yarnOfflineCache = fetchYarnDeps {
+      yarnLock = "${src}/yarn.lock";
+      sha256 = "sha256-2NSibx026ENAqphGGhNoLwUldWTEPbDBrYu3hgeRlnM=";
+    };
+
     nativeBuildInputs = [ fixup_yarn_lock nodejs-slim yarn mastodon-gems mastodon-gems.wrappedRuby ];
 
     RAILS_ENV = "production";
@@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
       # Otherwise we encounter this upstream issue: https://github.com/mastodon/mastodon/issues/17924
       export NODE_OPTIONS=--openssl-legacy-provider
       fixup_yarn_lock ~/yarn.lock
-      yarn config --offline set yarn-offline-mirror ${yarnOfflineCache}
+      yarn config --offline set yarn-offline-mirror $yarnOfflineCache
       yarn install --offline --frozen-lockfile --ignore-engines --ignore-scripts --no-progress
 
       patchShebangs ~/bin
diff --git a/pkgs/servers/matrix-conduit/default.nix b/pkgs/servers/matrix-conduit/default.nix
index 4eced54bc720b..de6ce56072c91 100644
--- a/pkgs/servers/matrix-conduit/default.nix
+++ b/pkgs/servers/matrix-conduit/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitLab, rustPlatform, pkgs }:
+{ stdenv, lib, fetchFromGitLab, rustPlatform, pkg-config, rocksdb }:
 
 rustPlatform.buildRustPackage rec {
   pname = "matrix-conduit";
@@ -13,12 +13,12 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "sha256-vE44I8lQ5VAfZB4WKLRv/xudoZJaFJGTT/UuumTePBU=";
 
-  nativeBuildInputs = with pkgs; [
+  nativeBuildInputs = [
     rustPlatform.bindgenHook
+    pkg-config
   ];
 
-  buildInputs = with pkgs; [
-    pkg-config
+  buildInputs = [
     rocksdb
   ];
 
diff --git a/pkgs/servers/matrix-synapse/matrix-appservice-slack/default.nix b/pkgs/servers/matrix-synapse/matrix-appservice-slack/default.nix
index a00d983e91bb5..19ddce8cc855d 100644
--- a/pkgs/servers/matrix-synapse/matrix-appservice-slack/default.nix
+++ b/pkgs/servers/matrix-synapse/matrix-appservice-slack/default.nix
@@ -1,29 +1,50 @@
-{ pkgs, nodejs, stdenv, fetchFromGitHub, lib, ... }:
+{ lib
+, fetchFromGitHub
+, fetchYarnDeps
+, makeWrapper
+, matrix-sdk-crypto-nodejs
+, mkYarnPackage
+, nodejs
+}:
+
 let
+  data = lib.importJSON ./pin.json;
+in
+mkYarnPackage rec {
+  pname = "matrix-appservice-slack";
+  version = data.version;
+
+  packageJSON = ./package.json;
   src = fetchFromGitHub {
     owner = "matrix-org";
     repo = "matrix-appservice-slack";
-    rev = "1.11.0";
-    sha256 = "U1EHL1ZwcpCXA9sjya6ry/3Q+gwdQWPUDFN+wp1qjrg=";
+    rev = data.version;
+    sha256 = data.srcHash;
   };
 
-  nodePackages = import ./node-composition.nix {
-    inherit pkgs nodejs;
-    inherit (stdenv.hostPlatform) system;
+  offlineCache = fetchYarnDeps {
+    yarnLock = src + "/yarn.lock";
+    sha256 = data.yarnHash;
+  };
+  packageResolutions = {
+    "@matrix-org/matrix-sdk-crypto-nodejs" = "${matrix-sdk-crypto-nodejs}/lib/node_modules/@matrix-org/matrix-sdk-crypto-nodejs";
   };
-in
-nodePackages.package.override {
-  pname = "matrix-appservice-slack";
 
-  inherit src;
+  nativeBuildInputs = [ makeWrapper ];
 
-  nativeBuildInputs = [ pkgs.makeWrapper ];
+  buildPhase = ''
+    runHook preBuild
+    yarn run build
+    runHook postBuild
+  '';
 
   postInstall = ''
-    makeWrapper '${nodejs}/bin/node' "$out/bin/matrix-appservice-slack" \
-    --add-flags "$out/lib/node_modules/matrix-appservice-slack/lib/app.js"
+    makeWrapper '${nodejs}/bin/node' "$out/bin/matrix-appservice-slack" --add-flags \
+        "$out/libexec/matrix-appservice-slack/deps/matrix-appservice-slack/lib/app.js"
   '';
 
+  doDist = false;
+
   meta = with lib; {
     description = "A Matrix <--> Slack bridge";
     maintainers = with maintainers; [ beardhatcode ];
diff --git a/pkgs/servers/matrix-synapse/matrix-appservice-slack/generate-dependencies.sh b/pkgs/servers/matrix-synapse/matrix-appservice-slack/generate-dependencies.sh
deleted file mode 100755
index 06245937bcb27..0000000000000
--- a/pkgs/servers/matrix-synapse/matrix-appservice-slack/generate-dependencies.sh
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/usr/bin/env nix-shell
-#! nix-shell -i bash -p nodePackages.node2nix
-
-# Download package.json and package-lock.json from the v1.11.0 release
-curl https://raw.githubusercontent.com/matrix-org/matrix-appservice-slack/1.11.0/package.json -o package.json
-curl https://raw.githubusercontent.com/matrix-org/matrix-appservice-slack/1.11.0/package-lock.json -o package-lock.json
-
-node2nix \
-  --nodejs-16 \
-  --node-env ../../../development/node-packages/node-env.nix \
-  --development \
-  --input package.json \
-  --lock package-lock.json \
-  --output node-packages.nix \
-  --composition node-composition.nix \
-
-rm -f package.json package-lock.json
diff --git a/pkgs/servers/matrix-synapse/matrix-appservice-slack/node-packages.nix b/pkgs/servers/matrix-synapse/matrix-appservice-slack/node-packages.nix
deleted file mode 100644
index 6bc864cd1089d..0000000000000
--- a/pkgs/servers/matrix-synapse/matrix-appservice-slack/node-packages.nix
+++ /dev/null
@@ -1,5484 +0,0 @@
-# This file has been generated by node2nix 1.9.0. Do not edit!
-
-{nodeEnv, fetchurl, fetchgit, nix-gitignore, stdenv, lib, globalBuildInputs ? []}:
-
-let
-  sources = {
-    "@alloc/quick-lru-5.2.0" = {
-      name = "_at_alloc_slash_quick-lru";
-      packageName = "@alloc/quick-lru";
-      version = "5.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz";
-        sha512 = "UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==";
-      };
-    };
-    "@babel/runtime-7.16.3" = {
-      name = "_at_babel_slash_runtime";
-      packageName = "@babel/runtime";
-      version = "7.16.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.16.3.tgz";
-        sha512 = "WBwekcqacdY2e9AF/Q7WLFUWmdJGJTkbjqTjoMDgXkVZ3ZRUvOPsLb5KdwISoQVsbP+DQzVZW4Zhci0DvpbNTQ==";
-      };
-    };
-    "@dabh/diagnostics-2.0.2" = {
-      name = "_at_dabh_slash_diagnostics";
-      packageName = "@dabh/diagnostics";
-      version = "2.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.2.tgz";
-        sha512 = "+A1YivoVDNNVCdfozHSR8v/jyuuLTMXwjWuxPFlFlUapXoGc+Gj9mDlTDDfrwl7rXCl2tNZ0kE8sIBO6YOn96Q==";
-      };
-    };
-    "@es-joy/jsdoccomment-0.12.0" = {
-      name = "_at_es-joy_slash_jsdoccomment";
-      packageName = "@es-joy/jsdoccomment";
-      version = "0.12.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.12.0.tgz";
-        sha512 = "Gw4/j9v36IKY8ET+W0GoOzrRw17xjf21EIFFRL3zx21fF5MnqmeNpNi+PU/LKjqLpPb2Pw2XdlJbYM31VVo/PQ==";
-      };
-    };
-    "@eslint/eslintrc-1.0.5" = {
-      name = "_at_eslint_slash_eslintrc";
-      packageName = "@eslint/eslintrc";
-      version = "1.0.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.0.5.tgz";
-        sha512 = "BLxsnmK3KyPunz5wmCCpqy0YelEoxxGmH73Is+Z74oOTMtExcjkr3dDR6quwrjh1YspA8DH9gnX1o069KiS9AQ==";
-      };
-    };
-    "@humanwhocodes/config-array-0.9.2" = {
-      name = "_at_humanwhocodes_slash_config-array";
-      packageName = "@humanwhocodes/config-array";
-      version = "0.9.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.2.tgz";
-        sha512 = "UXOuFCGcwciWckOpmfKDq/GyhlTf9pN/BzG//x8p8zTOFEcGuA68ANXheFS0AGvy3qgZqLBUkMs7hqzqCKOVwA==";
-      };
-    };
-    "@humanwhocodes/object-schema-1.2.1" = {
-      name = "_at_humanwhocodes_slash_object-schema";
-      packageName = "@humanwhocodes/object-schema";
-      version = "1.2.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz";
-        sha512 = "ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==";
-      };
-    };
-    "@matrix-org/olm-https://gitlab.matrix.org/api/v4/projects/27/packages/npm/@matrix-org/olm/-/@matrix-org/olm-3.2.4.tgz" = {
-      name = "_at_matrix-org_slash_olm";
-      packageName = "@matrix-org/olm";
-      version = 1;
-      src = fetchurl {
-        name = "olm-1.tar.gz";
-        url = "https://gitlab.matrix.org/api/v4/projects/27/packages/npm/@matrix-org/olm/-/@matrix-org/olm-3.2.4.tgz";
-        sha512 = "ddaXWILlm1U0Z9qpcZffJjBFZRpz/GxQ1n/Qth3xKvYRUbniuPOgftNTDaxkEC4h04uJG5Ls/OdI1YJUyfuRzQ==";
-      };
-    };
-    "@nodelib/fs.scandir-2.1.5" = {
-      name = "_at_nodelib_slash_fs.scandir";
-      packageName = "@nodelib/fs.scandir";
-      version = "2.1.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz";
-        sha512 = "vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==";
-      };
-    };
-    "@nodelib/fs.stat-2.0.5" = {
-      name = "_at_nodelib_slash_fs.stat";
-      packageName = "@nodelib/fs.stat";
-      version = "2.0.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz";
-        sha512 = "RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==";
-      };
-    };
-    "@nodelib/fs.walk-1.2.8" = {
-      name = "_at_nodelib_slash_fs.walk";
-      packageName = "@nodelib/fs.walk";
-      version = "1.2.8";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz";
-        sha512 = "oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==";
-      };
-    };
-    "@slack/logger-2.0.0" = {
-      name = "_at_slack_slash_logger";
-      packageName = "@slack/logger";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@slack/logger/-/logger-2.0.0.tgz";
-        sha512 = "OkIJpiU2fz6HOJujhlhfIGrc8hB4ibqtf7nnbJQDerG0BqwZCfmgtK5sWzZ0TkXVRBKD5MpLrTmCYyMxoMCgPw==";
-      };
-    };
-    "@slack/rtm-api-5.0.5" = {
-      name = "_at_slack_slash_rtm-api";
-      packageName = "@slack/rtm-api";
-      version = "5.0.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@slack/rtm-api/-/rtm-api-5.0.5.tgz";
-        sha512 = "x2B4hyoxjg62cxf4M5QRomx+xYp2XoajPKdd24SM2Sl4m+IrzwKzmcrysQuYmF6BMsm3IoTKymW5BBGckHGTIw==";
-      };
-    };
-    "@slack/types-1.10.0" = {
-      name = "_at_slack_slash_types";
-      packageName = "@slack/types";
-      version = "1.10.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@slack/types/-/types-1.10.0.tgz";
-        sha512 = "tA7GG7Tj479vojfV3AoxbckalA48aK6giGjNtgH6ihpLwTyHE3fIgRrvt8TWfLwW8X8dyu7vgmAsGLRG7hWWOg==";
-      };
-    };
-    "@slack/web-api-5.15.0" = {
-      name = "_at_slack_slash_web-api";
-      packageName = "@slack/web-api";
-      version = "5.15.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@slack/web-api/-/web-api-5.15.0.tgz";
-        sha512 = "tjQ8Zqv/Fmj9SOL9yIEd7IpTiKfKHi9DKAkfRVeotoX0clMr3SqQtBqO+KZMX27gm7dmgJsQaDKlILyzdCO+IA==";
-      };
-    };
-    "@tsconfig/node10-1.0.8" = {
-      name = "_at_tsconfig_slash_node10";
-      packageName = "@tsconfig/node10";
-      version = "1.0.8";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.8.tgz";
-        sha512 = "6XFfSQmMgq0CFLY1MslA/CPUfhIL919M1rMsa5lP2P097N2Wd1sSX0tx1u4olM16fLNhtHZpRhedZJphNJqmZg==";
-      };
-    };
-    "@tsconfig/node12-1.0.9" = {
-      name = "_at_tsconfig_slash_node12";
-      packageName = "@tsconfig/node12";
-      version = "1.0.9";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.9.tgz";
-        sha512 = "/yBMcem+fbvhSREH+s14YJi18sp7J9jpuhYByADT2rypfajMZZN4WQ6zBGgBKp53NKmqI36wFYDb3yaMPurITw==";
-      };
-    };
-    "@tsconfig/node14-1.0.1" = {
-      name = "_at_tsconfig_slash_node14";
-      packageName = "@tsconfig/node14";
-      version = "1.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.1.tgz";
-        sha512 = "509r2+yARFfHHE7T6Puu2jjkoycftovhXRqW328PDXTVGKihlb1P8Z9mMZH04ebyajfRY7dedfGynlrFHJUQCg==";
-      };
-    };
-    "@tsconfig/node16-1.0.1" = {
-      name = "_at_tsconfig_slash_node16";
-      packageName = "@tsconfig/node16";
-      version = "1.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.1.tgz";
-        sha512 = "FTgBI767POY/lKNDNbIzgAX6miIDBs6NTCbdlDb8TrWovHsSvaVIZDlTqym29C6UqhzwcJx4CYr+AlrMywA0cA==";
-      };
-    };
-    "@types/body-parser-1.19.0" = {
-      name = "_at_types_slash_body-parser";
-      packageName = "@types/body-parser";
-      version = "1.19.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.0.tgz";
-        sha512 = "W98JrE0j2K78swW4ukqMleo8R7h/pFETjM2DQ90MF6XK2i4LO4W3gQ71Lt4w3bfm2EvVSyWHplECvB5sK22yFQ==";
-      };
-    };
-    "@types/chai-4.2.21" = {
-      name = "_at_types_slash_chai";
-      packageName = "@types/chai";
-      version = "4.2.21";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/chai/-/chai-4.2.21.tgz";
-        sha512 = "yd+9qKmJxm496BOV9CMNaey8TWsikaZOwMRwPHQIjcOJM9oV+fi9ZMNw3JsVnbEEbo2gRTDnGEBv8pjyn67hNg==";
-      };
-    };
-    "@types/connect-3.4.34" = {
-      name = "_at_types_slash_connect";
-      packageName = "@types/connect";
-      version = "3.4.34";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/connect/-/connect-3.4.34.tgz";
-        sha512 = "ePPA/JuI+X0vb+gSWlPKOY0NdNAie/rPUqX2GUPpbZwiKTkSPhjXWuee47E4MtE54QVzGCQMQkAL6JhV2E1+cQ==";
-      };
-    };
-    "@types/express-4.17.13" = {
-      name = "_at_types_slash_express";
-      packageName = "@types/express";
-      version = "4.17.13";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz";
-        sha512 = "6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==";
-      };
-    };
-    "@types/express-serve-static-core-4.17.19" = {
-      name = "_at_types_slash_express-serve-static-core";
-      packageName = "@types/express-serve-static-core";
-      version = "4.17.19";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.19.tgz";
-        sha512 = "DJOSHzX7pCiSElWaGR8kCprwibCB/3yW6vcT8VG3P0SJjnv19gnWG/AZMfM60Xj/YJIp/YCaDHyvzsFVeniARA==";
-      };
-    };
-    "@types/is-stream-1.1.0" = {
-      name = "_at_types_slash_is-stream";
-      packageName = "@types/is-stream";
-      version = "1.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/is-stream/-/is-stream-1.1.0.tgz";
-        sha512 = "jkZatu4QVbR60mpIzjINmtS1ZF4a/FqdTUTBeQDVOQ2PYyidtwFKr0B5G6ERukKwliq+7mIXvxyppwzG5EgRYg==";
-      };
-    };
-    "@types/js-yaml-4.0.2" = {
-      name = "_at_types_slash_js-yaml";
-      packageName = "@types/js-yaml";
-      version = "4.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.2.tgz";
-        sha512 = "KbeHS/Y4R+k+5sWXEYzAZKuB1yQlZtEghuhRxrVRLaqhtoG5+26JwQsa4HyS3AWX8v1Uwukma5HheduUDskasA==";
-      };
-    };
-    "@types/json-schema-7.0.9" = {
-      name = "_at_types_slash_json-schema";
-      packageName = "@types/json-schema";
-      version = "7.0.9";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz";
-        sha512 = "qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==";
-      };
-    };
-    "@types/mime-1.3.2" = {
-      name = "_at_types_slash_mime";
-      packageName = "@types/mime";
-      version = "1.3.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz";
-        sha512 = "YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==";
-      };
-    };
-    "@types/mocha-8.2.3" = {
-      name = "_at_types_slash_mocha";
-      packageName = "@types/mocha";
-      version = "8.2.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz";
-        sha512 = "ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==";
-      };
-    };
-    "@types/nedb-1.8.12" = {
-      name = "_at_types_slash_nedb";
-      packageName = "@types/nedb";
-      version = "1.8.12";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/nedb/-/nedb-1.8.12.tgz";
-        sha512 = "ICDoQMORMjOSqfNFXT4ENXfwwCir1BPblXNm0SPH7C4Q10ou+pvVagcFAJ+rrzf3A47tGU4K/KbzKu7wO9j45Q==";
-      };
-    };
-    "@types/node-12.20.16" = {
-      name = "_at_types_slash_node";
-      packageName = "@types/node";
-      version = "12.20.16";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-12.20.16.tgz";
-        sha512 = "6CLxw83vQf6DKqXxMPwl8qpF8I7THFZuIwLt4TnNsumxkp1VsRZWT8txQxncT/Rl2UojTsFzWgDG4FRMwafrlA==";
-      };
-    };
-    "@types/node-emoji-1.8.1" = {
-      name = "_at_types_slash_node-emoji";
-      packageName = "@types/node-emoji";
-      version = "1.8.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node-emoji/-/node-emoji-1.8.1.tgz";
-        sha512 = "0fRfA90FWm6KJfw6P9QGyo0HDTCmthZ7cWaBQndITlaWLTZ6njRyKwrwpzpg+n6kBXBIGKeUHEQuBx7bphGJkA==";
-      };
-    };
-    "@types/nunjucks-3.1.5" = {
-      name = "_at_types_slash_nunjucks";
-      packageName = "@types/nunjucks";
-      version = "3.1.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/nunjucks/-/nunjucks-3.1.5.tgz";
-        sha512 = "0zEdmQNNvQ+xyV9kqQvAV93UVroTwhE78toVUDT0GBnGcW2jQBZnB4al9qq2LqI5qHOqROy/DvvAY/UwrbvV1A==";
-      };
-    };
-    "@types/p-queue-2.3.2" = {
-      name = "_at_types_slash_p-queue";
-      packageName = "@types/p-queue";
-      version = "2.3.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/p-queue/-/p-queue-2.3.2.tgz";
-        sha512 = "eKAv5Ql6k78dh3ULCsSBxX6bFNuGjTmof5Q/T6PiECDq0Yf8IIn46jCyp3RJvCi8owaEmm3DZH1PEImjBMd/vQ==";
-      };
-    };
-    "@types/qs-6.9.6" = {
-      name = "_at_types_slash_qs";
-      packageName = "@types/qs";
-      version = "6.9.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/qs/-/qs-6.9.6.tgz";
-        sha512 = "0/HnwIfW4ki2D8L8c9GVcG5I72s9jP5GSLVF0VIXDW00kmIpA6O33G7a8n59Tmh7Nz0WUC3rSb7PTY/sdW2JzA==";
-      };
-    };
-    "@types/randomstring-1.1.7" = {
-      name = "_at_types_slash_randomstring";
-      packageName = "@types/randomstring";
-      version = "1.1.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/randomstring/-/randomstring-1.1.7.tgz";
-        sha512 = "S6NRYPiH8VGcLW4m9KEMUPtGxXqToCOLLCutQh8sSMaZGrL6/PEQCZAPGBtMP6SKd43ep5eWuPFN732h23h15w==";
-      };
-    };
-    "@types/range-parser-1.2.3" = {
-      name = "_at_types_slash_range-parser";
-      packageName = "@types/range-parser";
-      version = "1.2.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.3.tgz";
-        sha512 = "ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA==";
-      };
-    };
-    "@types/retry-0.12.0" = {
-      name = "_at_types_slash_retry";
-      packageName = "@types/retry";
-      version = "0.12.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz";
-        sha512 = "wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==";
-      };
-    };
-    "@types/serve-static-1.13.9" = {
-      name = "_at_types_slash_serve-static";
-      packageName = "@types/serve-static";
-      version = "1.13.9";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.9.tgz";
-        sha512 = "ZFqF6qa48XsPdjXV5Gsz0Zqmux2PerNd3a/ktL45mHpa19cuMi/cL8tcxdAx497yRh+QtYPuofjT9oWw9P7nkA==";
-      };
-    };
-    "@types/uuid-8.3.1" = {
-      name = "_at_types_slash_uuid";
-      packageName = "@types/uuid";
-      version = "8.3.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.1.tgz";
-        sha512 = "Y2mHTRAbqfFkpjldbkHGY8JIzRN6XqYRliG8/24FcHm2D2PwW24fl5xMRTVGdrb7iMrwCaIEbLWerGIkXuFWVg==";
-      };
-    };
-    "@types/ws-7.2.6" = {
-      name = "_at_types_slash_ws";
-      packageName = "@types/ws";
-      version = "7.2.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/ws/-/ws-7.2.6.tgz";
-        sha512 = "Q07IrQUSNpr+cXU4E4LtkSIBPie5GLZyyMC1QtQYRLWz701+XcoVygGUZgvLqElq1nU4ICldMYPnexlBsg3dqQ==";
-      };
-    };
-    "@types/yargs-17.0.3" = {
-      name = "_at_types_slash_yargs";
-      packageName = "@types/yargs";
-      version = "17.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.3.tgz";
-        sha512 = "K7rm3Ke3ag/pAniBe80A6J6fjoqRibvCrl3dRmtXV9eCEt9h/pZwmHX9MzjQVUc/elneQTL4Ky7XKorC71Lmxw==";
-      };
-    };
-    "@types/yargs-parser-20.2.1" = {
-      name = "_at_types_slash_yargs-parser";
-      packageName = "@types/yargs-parser";
-      version = "20.2.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.1.tgz";
-        sha512 = "7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==";
-      };
-    };
-    "@typescript-eslint/eslint-plugin-5.6.0" = {
-      name = "_at_typescript-eslint_slash_eslint-plugin";
-      packageName = "@typescript-eslint/eslint-plugin";
-      version = "5.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.6.0.tgz";
-        sha512 = "MIbeMy5qfLqtgs1hWd088k1hOuRsN9JrHUPwVVKCD99EOUqScd7SrwoZl4Gso05EAP9w1kvLWUVGJOVpRPkDPA==";
-      };
-    };
-    "@typescript-eslint/experimental-utils-5.6.0" = {
-      name = "_at_typescript-eslint_slash_experimental-utils";
-      packageName = "@typescript-eslint/experimental-utils";
-      version = "5.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.6.0.tgz";
-        sha512 = "VDoRf3Qj7+W3sS/ZBXZh3LBzp0snDLEgvp6qj0vOAIiAPM07bd5ojQ3CTzF/QFl5AKh7Bh1ycgj6lFBJHUt/DA==";
-      };
-    };
-    "@typescript-eslint/parser-5.6.0" = {
-      name = "_at_typescript-eslint_slash_parser";
-      packageName = "@typescript-eslint/parser";
-      version = "5.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.6.0.tgz";
-        sha512 = "YVK49NgdUPQ8SpCZaOpiq1kLkYRPMv9U5gcMrywzI8brtwZjr/tG3sZpuHyODt76W/A0SufNjYt9ZOgrC4tLIQ==";
-      };
-    };
-    "@typescript-eslint/scope-manager-5.6.0" = {
-      name = "_at_typescript-eslint_slash_scope-manager";
-      packageName = "@typescript-eslint/scope-manager";
-      version = "5.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.6.0.tgz";
-        sha512 = "1U1G77Hw2jsGWVsO2w6eVCbOg0HZ5WxL/cozVSTfqnL/eB9muhb8THsP0G3w+BB5xAHv9KptwdfYFAUfzcIh4A==";
-      };
-    };
-    "@typescript-eslint/types-5.6.0" = {
-      name = "_at_typescript-eslint_slash_types";
-      packageName = "@typescript-eslint/types";
-      version = "5.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.6.0.tgz";
-        sha512 = "OIZffked7mXv4mXzWU5MgAEbCf9ecNJBKi+Si6/I9PpTaj+cf2x58h2oHW5/P/yTnPkKaayfjhLvx+crnl5ubA==";
-      };
-    };
-    "@typescript-eslint/typescript-estree-5.6.0" = {
-      name = "_at_typescript-eslint_slash_typescript-estree";
-      packageName = "@typescript-eslint/typescript-estree";
-      version = "5.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.6.0.tgz";
-        sha512 = "92vK5tQaE81rK7fOmuWMrSQtK1IMonESR+RJR2Tlc7w4o0MeEdjgidY/uO2Gobh7z4Q1hhS94Cr7r021fMVEeA==";
-      };
-    };
-    "@typescript-eslint/visitor-keys-5.6.0" = {
-      name = "_at_typescript-eslint_slash_visitor-keys";
-      packageName = "@typescript-eslint/visitor-keys";
-      version = "5.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.6.0.tgz";
-        sha512 = "1p7hDp5cpRFUyE3+lvA74egs+RWSgumrBpzBCDzfTFv0aQ7lIeay80yU0hIxgAhwQ6PcasW35kaOCyDOv6O/Ng==";
-      };
-    };
-    "@ungap/promise-all-settled-1.1.2" = {
-      name = "_at_ungap_slash_promise-all-settled";
-      packageName = "@ungap/promise-all-settled";
-      version = "1.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz";
-        sha512 = "sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q==";
-      };
-    };
-    "Slackdown-git+https://Half-Shot@github.com/half-shot/slackdown.git#efd8934a3d9c3bf0064c0b217c5cf6b62ee697e4" = {
-      name = "Slackdown";
-      packageName = "Slackdown";
-      version = "0.1.2";
-      src = fetchgit {
-        url = "https://Half-Shot@github.com/half-shot/slackdown.git";
-        rev = "efd8934a3d9c3bf0064c0b217c5cf6b62ee697e4";
-        sha256 = "474e972819b3e1db3af70be75966a3d501c6b9285f4550ff5548193e031eaf9b";
-      };
-    };
-    "a-sync-waterfall-1.0.1" = {
-      name = "a-sync-waterfall";
-      packageName = "a-sync-waterfall";
-      version = "1.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/a-sync-waterfall/-/a-sync-waterfall-1.0.1.tgz";
-        sha512 = "RYTOHHdWipFUliRFMCS4X2Yn2X8M87V/OpSqWzKKOGhzqyUxzyVmhHDH9sAvG+ZuQf/TAOFsLCpMw09I1ufUnA==";
-      };
-    };
-    "abbrev-1.1.1" = {
-      name = "abbrev";
-      packageName = "abbrev";
-      version = "1.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz";
-        sha512 = "nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==";
-      };
-    };
-    "accepts-1.3.7" = {
-      name = "accepts";
-      packageName = "accepts";
-      version = "1.3.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz";
-        sha512 = "Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==";
-      };
-    };
-    "acorn-8.6.0" = {
-      name = "acorn";
-      packageName = "acorn";
-      version = "8.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/acorn/-/acorn-8.6.0.tgz";
-        sha512 = "U1riIR+lBSNi3IbxtaHOIKdH8sLFv3NYfNv8sg7ZsNhcfl4HF2++BfqqrNAxoCLQW1iiylOj76ecnaUxz+z9yw==";
-      };
-    };
-    "acorn-jsx-5.3.2" = {
-      name = "acorn-jsx";
-      packageName = "acorn-jsx";
-      version = "5.3.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz";
-        sha512 = "rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==";
-      };
-    };
-    "ajv-6.12.6" = {
-      name = "ajv";
-      packageName = "ajv";
-      version = "6.12.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz";
-        sha512 = "j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==";
-      };
-    };
-    "another-json-0.2.0" = {
-      name = "another-json";
-      packageName = "another-json";
-      version = "0.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/another-json/-/another-json-0.2.0.tgz";
-        sha1 = "b5f4019c973b6dd5c6506a2d93469cb6d32aeedc";
-      };
-    };
-    "ansi-colors-4.1.1" = {
-      name = "ansi-colors";
-      packageName = "ansi-colors";
-      version = "4.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz";
-        sha512 = "JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==";
-      };
-    };
-    "ansi-regex-2.1.1" = {
-      name = "ansi-regex";
-      packageName = "ansi-regex";
-      version = "2.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz";
-        sha1 = "c3b33ab5ee360d86e0e628f0468ae7ef27d654df";
-      };
-    };
-    "ansi-regex-3.0.0" = {
-      name = "ansi-regex";
-      packageName = "ansi-regex";
-      version = "3.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz";
-        sha1 = "ed0317c322064f79466c02966bddb605ab37d998";
-      };
-    };
-    "ansi-regex-5.0.1" = {
-      name = "ansi-regex";
-      packageName = "ansi-regex";
-      version = "5.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz";
-        sha512 = "quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==";
-      };
-    };
-    "ansi-styles-4.3.0" = {
-      name = "ansi-styles";
-      packageName = "ansi-styles";
-      version = "4.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz";
-        sha512 = "zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==";
-      };
-    };
-    "anymatch-3.1.2" = {
-      name = "anymatch";
-      packageName = "anymatch";
-      version = "3.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz";
-        sha512 = "P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==";
-      };
-    };
-    "aproba-1.2.0" = {
-      name = "aproba";
-      packageName = "aproba";
-      version = "1.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz";
-        sha512 = "Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==";
-      };
-    };
-    "are-we-there-yet-1.1.7" = {
-      name = "are-we-there-yet";
-      packageName = "are-we-there-yet";
-      version = "1.1.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz";
-        sha512 = "nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==";
-      };
-    };
-    "arg-4.1.3" = {
-      name = "arg";
-      packageName = "arg";
-      version = "4.1.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz";
-        sha512 = "58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==";
-      };
-    };
-    "argparse-2.0.1" = {
-      name = "argparse";
-      packageName = "argparse";
-      version = "2.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz";
-        sha512 = "8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==";
-      };
-    };
-    "array-flatten-1.1.1" = {
-      name = "array-flatten";
-      packageName = "array-flatten";
-      version = "1.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz";
-        sha1 = "9a5f699051b1e7073328f2a008968b64ea2955d2";
-      };
-    };
-    "array-union-2.1.0" = {
-      name = "array-union";
-      packageName = "array-union";
-      version = "2.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz";
-        sha512 = "HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==";
-      };
-    };
-    "array-uniq-1.0.2" = {
-      name = "array-uniq";
-      packageName = "array-uniq";
-      version = "1.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.2.tgz";
-        sha1 = "5fcc373920775723cfd64d65c64bef53bf9eba6d";
-      };
-    };
-    "asap-2.0.6" = {
-      name = "asap";
-      packageName = "asap";
-      version = "2.0.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz";
-        sha1 = "e50347611d7e690943208bbdafebcbc2fb866d46";
-      };
-    };
-    "asn1-0.2.4" = {
-      name = "asn1";
-      packageName = "asn1";
-      version = "0.2.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz";
-        sha512 = "jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==";
-      };
-    };
-    "assert-options-0.7.0" = {
-      name = "assert-options";
-      packageName = "assert-options";
-      version = "0.7.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/assert-options/-/assert-options-0.7.0.tgz";
-        sha512 = "7q9uNH/Dh8gFgpIIb9ja8PJEWA5AQy3xnBC8jtKs8K/gNVCr1K6kIvlm59HUyYgvM7oEDoLzGgPcGd9FqhtXEQ==";
-      };
-    };
-    "assert-plus-1.0.0" = {
-      name = "assert-plus";
-      packageName = "assert-plus";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz";
-        sha1 = "f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525";
-      };
-    };
-    "assertion-error-1.1.0" = {
-      name = "assertion-error";
-      packageName = "assertion-error";
-      version = "1.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz";
-        sha512 = "jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==";
-      };
-    };
-    "async-0.2.10" = {
-      name = "async";
-      packageName = "async";
-      version = "0.2.10";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/async/-/async-0.2.10.tgz";
-        sha1 = "b6bbe0b0674b9d719708ca38de8c237cb526c3d1";
-      };
-    };
-    "async-3.2.0" = {
-      name = "async";
-      packageName = "async";
-      version = "3.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/async/-/async-3.2.0.tgz";
-        sha512 = "TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw==";
-      };
-    };
-    "async-limiter-1.0.1" = {
-      name = "async-limiter";
-      packageName = "async-limiter";
-      version = "1.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz";
-        sha512 = "csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==";
-      };
-    };
-    "asynckit-0.4.0" = {
-      name = "asynckit";
-      packageName = "asynckit";
-      version = "0.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz";
-        sha1 = "c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79";
-      };
-    };
-    "aws-sign2-0.7.0" = {
-      name = "aws-sign2";
-      packageName = "aws-sign2";
-      version = "0.7.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz";
-        sha1 = "b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8";
-      };
-    };
-    "aws4-1.11.0" = {
-      name = "aws4";
-      packageName = "aws4";
-      version = "1.11.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz";
-        sha512 = "xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==";
-      };
-    };
-    "axios-0.21.4" = {
-      name = "axios";
-      packageName = "axios";
-      version = "0.21.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz";
-        sha512 = "ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==";
-      };
-    };
-    "axios-0.26.0" = {
-      name = "axios";
-      packageName = "axios";
-      version = "0.26.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/axios/-/axios-0.26.0.tgz";
-        sha512 = "lKoGLMYtHvFrPVt3r+RBMp9nh34N0M8zEfCWqdWZx6phynIEhQqAdydpyBAAG211zlhX9Rgu08cOamy6XjE5Og==";
-      };
-    };
-    "balanced-match-1.0.2" = {
-      name = "balanced-match";
-      packageName = "balanced-match";
-      version = "1.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz";
-        sha512 = "3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==";
-      };
-    };
-    "base-x-3.0.9" = {
-      name = "base-x";
-      packageName = "base-x";
-      version = "3.0.9";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/base-x/-/base-x-3.0.9.tgz";
-        sha512 = "H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==";
-      };
-    };
-    "base64-js-1.5.1" = {
-      name = "base64-js";
-      packageName = "base64-js";
-      version = "1.5.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz";
-        sha512 = "AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==";
-      };
-    };
-    "basic-auth-2.0.1" = {
-      name = "basic-auth";
-      packageName = "basic-auth";
-      version = "2.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz";
-        sha512 = "NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==";
-      };
-    };
-    "bcrypt-pbkdf-1.0.2" = {
-      name = "bcrypt-pbkdf";
-      packageName = "bcrypt-pbkdf";
-      version = "1.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz";
-        sha1 = "a4301d389b6a43f9b67ff3ca11a3f6637e360e9e";
-      };
-    };
-    "better-sqlite3-7.4.3" = {
-      name = "better-sqlite3";
-      packageName = "better-sqlite3";
-      version = "7.4.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-7.4.3.tgz";
-        sha512 = "07bKjClZg/f4KMVRkzWtoIvazVPcF1gsvVKVIXlxwleC2DxuIhnra3KCMlUT1rFeRYXXckot2a46UciF2d9KLw==";
-      };
-    };
-    "binary-extensions-2.2.0" = {
-      name = "binary-extensions";
-      packageName = "binary-extensions";
-      version = "2.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz";
-        sha512 = "jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==";
-      };
-    };
-    "binary-search-tree-0.2.5" = {
-      name = "binary-search-tree";
-      packageName = "binary-search-tree";
-      version = "0.2.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/binary-search-tree/-/binary-search-tree-0.2.5.tgz";
-        sha1 = "7dbb3b210fdca082450dad2334c304af39bdc784";
-      };
-    };
-    "bindings-1.5.0" = {
-      name = "bindings";
-      packageName = "bindings";
-      version = "1.5.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz";
-        sha512 = "p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==";
-      };
-    };
-    "bintrees-1.0.1" = {
-      name = "bintrees";
-      packageName = "bintrees";
-      version = "1.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/bintrees/-/bintrees-1.0.1.tgz";
-        sha1 = "0e655c9b9c2435eaab68bf4027226d2b55a34524";
-      };
-    };
-    "bl-4.1.0" = {
-      name = "bl";
-      packageName = "bl";
-      version = "4.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz";
-        sha512 = "1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==";
-      };
-    };
-    "bluebird-3.7.2" = {
-      name = "bluebird";
-      packageName = "bluebird";
-      version = "3.7.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz";
-        sha512 = "XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==";
-      };
-    };
-    "body-parser-1.19.0" = {
-      name = "body-parser";
-      packageName = "body-parser";
-      version = "1.19.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz";
-        sha512 = "dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==";
-      };
-    };
-    "brace-expansion-1.1.11" = {
-      name = "brace-expansion";
-      packageName = "brace-expansion";
-      version = "1.1.11";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz";
-        sha512 = "iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==";
-      };
-    };
-    "braces-3.0.2" = {
-      name = "braces";
-      packageName = "braces";
-      version = "3.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz";
-        sha512 = "b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==";
-      };
-    };
-    "browser-request-0.3.3" = {
-      name = "browser-request";
-      packageName = "browser-request";
-      version = "0.3.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/browser-request/-/browser-request-0.3.3.tgz";
-        sha1 = "9ece5b5aca89a29932242e18bf933def9876cc17";
-      };
-    };
-    "browser-stdout-1.3.1" = {
-      name = "browser-stdout";
-      packageName = "browser-stdout";
-      version = "1.3.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz";
-        sha512 = "qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==";
-      };
-    };
-    "bs58-4.0.1" = {
-      name = "bs58";
-      packageName = "bs58";
-      version = "4.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz";
-        sha1 = "be161e76c354f6f788ae4071f63f34e8c4f0a42a";
-      };
-    };
-    "buffer-5.7.1" = {
-      name = "buffer";
-      packageName = "buffer";
-      version = "5.7.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz";
-        sha512 = "EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==";
-      };
-    };
-    "buffer-from-1.1.1" = {
-      name = "buffer-from";
-      packageName = "buffer-from";
-      version = "1.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz";
-        sha512 = "MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==";
-      };
-    };
-    "buffer-writer-2.0.0" = {
-      name = "buffer-writer";
-      packageName = "buffer-writer";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/buffer-writer/-/buffer-writer-2.0.0.tgz";
-        sha512 = "a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw==";
-      };
-    };
-    "bytes-3.1.0" = {
-      name = "bytes";
-      packageName = "bytes";
-      version = "3.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz";
-        sha512 = "zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==";
-      };
-    };
-    "call-bind-1.0.2" = {
-      name = "call-bind";
-      packageName = "call-bind";
-      version = "1.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz";
-        sha512 = "7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==";
-      };
-    };
-    "callsites-3.1.0" = {
-      name = "callsites";
-      packageName = "callsites";
-      version = "3.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz";
-        sha512 = "P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==";
-      };
-    };
-    "camelcase-6.2.0" = {
-      name = "camelcase";
-      packageName = "camelcase";
-      version = "6.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz";
-        sha512 = "c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==";
-      };
-    };
-    "caseless-0.12.0" = {
-      name = "caseless";
-      packageName = "caseless";
-      version = "0.12.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz";
-        sha1 = "1b681c21ff84033c826543090689420d187151dc";
-      };
-    };
-    "chai-4.3.4" = {
-      name = "chai";
-      packageName = "chai";
-      version = "4.3.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/chai/-/chai-4.3.4.tgz";
-        sha512 = "yS5H68VYOCtN1cjfwumDSuzn/9c+yza4f3reKXlE5rUg7SFcCEy90gJvydNgOYtblyf4Zi6jIWRnXOgErta0KA==";
-      };
-    };
-    "chalk-4.1.0" = {
-      name = "chalk";
-      packageName = "chalk";
-      version = "4.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz";
-        sha512 = "qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==";
-      };
-    };
-    "check-error-1.0.2" = {
-      name = "check-error";
-      packageName = "check-error";
-      version = "1.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz";
-        sha1 = "574d312edd88bb5dd8912e9286dd6c0aed4aac82";
-      };
-    };
-    "chokidar-3.5.2" = {
-      name = "chokidar";
-      packageName = "chokidar";
-      version = "3.5.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz";
-        sha512 = "ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==";
-      };
-    };
-    "chownr-1.1.4" = {
-      name = "chownr";
-      packageName = "chownr";
-      version = "1.1.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz";
-        sha512 = "jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==";
-      };
-    };
-    "chownr-2.0.0" = {
-      name = "chownr";
-      packageName = "chownr";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz";
-        sha512 = "bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==";
-      };
-    };
-    "cliui-7.0.4" = {
-      name = "cliui";
-      packageName = "cliui";
-      version = "7.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz";
-        sha512 = "OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==";
-      };
-    };
-    "code-point-at-1.1.0" = {
-      name = "code-point-at";
-      packageName = "code-point-at";
-      version = "1.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz";
-        sha1 = "0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77";
-      };
-    };
-    "color-3.0.0" = {
-      name = "color";
-      packageName = "color";
-      version = "3.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/color/-/color-3.0.0.tgz";
-        sha512 = "jCpd5+s0s0t7p3pHQKpnJ0TpQKKdleP71LWcA0aqiljpiuAkOSUFN/dyH8ZwF0hRmFlrIuRhufds1QyEP9EB+w==";
-      };
-    };
-    "color-convert-1.9.3" = {
-      name = "color-convert";
-      packageName = "color-convert";
-      version = "1.9.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz";
-        sha512 = "QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==";
-      };
-    };
-    "color-convert-2.0.1" = {
-      name = "color-convert";
-      packageName = "color-convert";
-      version = "2.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz";
-        sha512 = "RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==";
-      };
-    };
-    "color-name-1.1.3" = {
-      name = "color-name";
-      packageName = "color-name";
-      version = "1.1.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz";
-        sha1 = "a7d0558bd89c42f795dd42328f740831ca53bc25";
-      };
-    };
-    "color-name-1.1.4" = {
-      name = "color-name";
-      packageName = "color-name";
-      version = "1.1.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz";
-        sha512 = "dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==";
-      };
-    };
-    "color-string-1.6.0" = {
-      name = "color-string";
-      packageName = "color-string";
-      version = "1.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/color-string/-/color-string-1.6.0.tgz";
-        sha512 = "c/hGS+kRWJutUBEngKKmk4iH3sD59MBkoxVapS/0wgpCz2u7XsNloxknyvBhzwEs1IbV36D9PwqLPJ2DTu3vMA==";
-      };
-    };
-    "colorette-1.4.0" = {
-      name = "colorette";
-      packageName = "colorette";
-      version = "1.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz";
-        sha512 = "Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==";
-      };
-    };
-    "colors-1.3.3" = {
-      name = "colors";
-      packageName = "colors";
-      version = "1.3.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/colors/-/colors-1.3.3.tgz";
-        sha512 = "mmGt/1pZqYRjMxB1axhTo16/snVZ5krrKkcmMeVKxzECMMXoCgnvTPp10QgHfcbQZw8Dq2jMNG6je4JlWU0gWg==";
-      };
-    };
-    "colorspace-1.1.2" = {
-      name = "colorspace";
-      packageName = "colorspace";
-      version = "1.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/colorspace/-/colorspace-1.1.2.tgz";
-        sha512 = "vt+OoIP2d76xLhjwbBaucYlNSpPsrJWPlBTtwCpQKIu6/CSMutyzX93O/Do0qzpH3YoHEes8YEFXyZ797rEhzQ==";
-      };
-    };
-    "combined-stream-1.0.8" = {
-      name = "combined-stream";
-      packageName = "combined-stream";
-      version = "1.0.8";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz";
-        sha512 = "FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==";
-      };
-    };
-    "commander-5.1.0" = {
-      name = "commander";
-      packageName = "commander";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz";
-        sha512 = "P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==";
-      };
-    };
-    "comment-parser-1.2.4" = {
-      name = "comment-parser";
-      packageName = "comment-parser";
-      version = "1.2.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/comment-parser/-/comment-parser-1.2.4.tgz";
-        sha512 = "pm0b+qv+CkWNriSTMsfnjChF9kH0kxz55y44Wo5le9qLxMj5xDQAaEd9ZN1ovSuk9CsrncWaFwgpOMg7ClJwkw==";
-      };
-    };
-    "comment-parser-1.3.0" = {
-      name = "comment-parser";
-      packageName = "comment-parser";
-      version = "1.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/comment-parser/-/comment-parser-1.3.0.tgz";
-        sha512 = "hRpmWIKgzd81vn0ydoWoyPoALEOnF4wt8yKD35Ib1D6XC2siLiYaiqfGkYrunuKdsXGwpBpHU3+9r+RVw2NZfA==";
-      };
-    };
-    "concat-map-0.0.1" = {
-      name = "concat-map";
-      packageName = "concat-map";
-      version = "0.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz";
-        sha1 = "d8a96bd77fd68df7793a73036a3ba0d5405d477b";
-      };
-    };
-    "console-control-strings-1.1.0" = {
-      name = "console-control-strings";
-      packageName = "console-control-strings";
-      version = "1.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz";
-        sha1 = "3d7cf4464db6446ea644bf4b39507f9851008e8e";
-      };
-    };
-    "content-disposition-0.5.3" = {
-      name = "content-disposition";
-      packageName = "content-disposition";
-      version = "0.5.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz";
-        sha512 = "ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==";
-      };
-    };
-    "content-type-1.0.4" = {
-      name = "content-type";
-      packageName = "content-type";
-      version = "1.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz";
-        sha512 = "hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==";
-      };
-    };
-    "cookie-0.4.0" = {
-      name = "cookie";
-      packageName = "cookie";
-      version = "0.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz";
-        sha512 = "+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==";
-      };
-    };
-    "cookie-signature-1.0.6" = {
-      name = "cookie-signature";
-      packageName = "cookie-signature";
-      version = "1.0.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz";
-        sha1 = "e303a882b342cc3ee8ca513a79999734dab3ae2c";
-      };
-    };
-    "core-util-is-1.0.2" = {
-      name = "core-util-is";
-      packageName = "core-util-is";
-      version = "1.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz";
-        sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7";
-      };
-    };
-    "create-require-1.1.1" = {
-      name = "create-require";
-      packageName = "create-require";
-      version = "1.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz";
-        sha512 = "dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==";
-      };
-    };
-    "cross-spawn-7.0.3" = {
-      name = "cross-spawn";
-      packageName = "cross-spawn";
-      version = "7.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz";
-        sha512 = "iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==";
-      };
-    };
-    "dashdash-1.14.1" = {
-      name = "dashdash";
-      packageName = "dashdash";
-      version = "1.14.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz";
-        sha1 = "853cfa0f7cbe2fed5de20326b8dd581035f6e2f0";
-      };
-    };
-    "debug-2.6.9" = {
-      name = "debug";
-      packageName = "debug";
-      version = "2.6.9";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz";
-        sha512 = "bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==";
-      };
-    };
-    "debug-4.3.1" = {
-      name = "debug";
-      packageName = "debug";
-      version = "4.3.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz";
-        sha512 = "doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==";
-      };
-    };
-    "debug-4.3.3" = {
-      name = "debug";
-      packageName = "debug";
-      version = "4.3.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz";
-        sha512 = "/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==";
-      };
-    };
-    "decamelize-4.0.0" = {
-      name = "decamelize";
-      packageName = "decamelize";
-      version = "4.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz";
-        sha512 = "9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==";
-      };
-    };
-    "decompress-response-4.2.1" = {
-      name = "decompress-response";
-      packageName = "decompress-response";
-      version = "4.2.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz";
-        sha512 = "jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==";
-      };
-    };
-    "deep-eql-3.0.1" = {
-      name = "deep-eql";
-      packageName = "deep-eql";
-      version = "3.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz";
-        sha512 = "+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==";
-      };
-    };
-    "deep-extend-0.6.0" = {
-      name = "deep-extend";
-      packageName = "deep-extend";
-      version = "0.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz";
-        sha512 = "LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==";
-      };
-    };
-    "deep-is-0.1.3" = {
-      name = "deep-is";
-      packageName = "deep-is";
-      version = "0.1.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz";
-        sha1 = "b369d6fb5dbc13eecf524f91b070feedc357cf34";
-      };
-    };
-    "deepmerge-4.2.2" = {
-      name = "deepmerge";
-      packageName = "deepmerge";
-      version = "4.2.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz";
-        sha512 = "FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==";
-      };
-    };
-    "delayed-stream-1.0.0" = {
-      name = "delayed-stream";
-      packageName = "delayed-stream";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz";
-        sha1 = "df3ae199acadfb7d440aaae0b29e2272b24ec619";
-      };
-    };
-    "delegates-1.0.0" = {
-      name = "delegates";
-      packageName = "delegates";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz";
-        sha1 = "84c6e159b81904fdca59a0ef44cd870d31250f9a";
-      };
-    };
-    "depd-1.1.2" = {
-      name = "depd";
-      packageName = "depd";
-      version = "1.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz";
-        sha1 = "9bcd52e14c097763e749b274c4346ed2e560b5a9";
-      };
-    };
-    "depd-2.0.0" = {
-      name = "depd";
-      packageName = "depd";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz";
-        sha512 = "g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==";
-      };
-    };
-    "destroy-1.0.4" = {
-      name = "destroy";
-      packageName = "destroy";
-      version = "1.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz";
-        sha1 = "978857442c44749e4206613e37946205826abd80";
-      };
-    };
-    "detect-libc-1.0.3" = {
-      name = "detect-libc";
-      packageName = "detect-libc";
-      version = "1.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz";
-        sha1 = "fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b";
-      };
-    };
-    "diff-4.0.2" = {
-      name = "diff";
-      packageName = "diff";
-      version = "4.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz";
-        sha512 = "58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==";
-      };
-    };
-    "diff-5.0.0" = {
-      name = "diff";
-      packageName = "diff";
-      version = "5.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz";
-        sha512 = "/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==";
-      };
-    };
-    "dir-glob-3.0.1" = {
-      name = "dir-glob";
-      packageName = "dir-glob";
-      version = "3.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz";
-        sha512 = "WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==";
-      };
-    };
-    "doctrine-3.0.0" = {
-      name = "doctrine";
-      packageName = "doctrine";
-      version = "3.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz";
-        sha512 = "yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==";
-      };
-    };
-    "dom-serializer-1.3.2" = {
-      name = "dom-serializer";
-      packageName = "dom-serializer";
-      version = "1.3.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz";
-        sha512 = "5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==";
-      };
-    };
-    "domelementtype-2.2.0" = {
-      name = "domelementtype";
-      packageName = "domelementtype";
-      version = "2.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz";
-        sha512 = "DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==";
-      };
-    };
-    "domhandler-3.3.0" = {
-      name = "domhandler";
-      packageName = "domhandler";
-      version = "3.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/domhandler/-/domhandler-3.3.0.tgz";
-        sha512 = "J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==";
-      };
-    };
-    "domhandler-4.2.2" = {
-      name = "domhandler";
-      packageName = "domhandler";
-      version = "4.2.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/domhandler/-/domhandler-4.2.2.tgz";
-        sha512 = "PzE9aBMsdZO8TK4BnuJwH0QT41wgMbRzuZrHUcpYncEjmQazq8QEaBWgLG7ZyC/DAZKEgglpIA6j4Qn/HmxS3w==";
-      };
-    };
-    "domutils-2.8.0" = {
-      name = "domutils";
-      packageName = "domutils";
-      version = "2.8.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz";
-        sha512 = "w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==";
-      };
-    };
-    "ecc-jsbn-0.1.2" = {
-      name = "ecc-jsbn";
-      packageName = "ecc-jsbn";
-      version = "0.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz";
-        sha1 = "3a83a904e54353287874c564b7549386849a98c9";
-      };
-    };
-    "ee-first-1.1.1" = {
-      name = "ee-first";
-      packageName = "ee-first";
-      version = "1.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz";
-        sha1 = "590c61156b0ae2f4f0255732a158b266bc56b21d";
-      };
-    };
-    "emoji-regex-8.0.0" = {
-      name = "emoji-regex";
-      packageName = "emoji-regex";
-      version = "8.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz";
-        sha512 = "MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==";
-      };
-    };
-    "enabled-2.0.0" = {
-      name = "enabled";
-      packageName = "enabled";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz";
-        sha512 = "AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==";
-      };
-    };
-    "encodeurl-1.0.2" = {
-      name = "encodeurl";
-      packageName = "encodeurl";
-      version = "1.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz";
-        sha1 = "ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59";
-      };
-    };
-    "end-of-stream-1.4.4" = {
-      name = "end-of-stream";
-      packageName = "end-of-stream";
-      version = "1.4.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz";
-        sha512 = "+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==";
-      };
-    };
-    "enquirer-2.3.6" = {
-      name = "enquirer";
-      packageName = "enquirer";
-      version = "2.3.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz";
-        sha512 = "yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==";
-      };
-    };
-    "entities-2.2.0" = {
-      name = "entities";
-      packageName = "entities";
-      version = "2.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz";
-        sha512 = "p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==";
-      };
-    };
-    "escalade-3.1.1" = {
-      name = "escalade";
-      packageName = "escalade";
-      version = "3.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz";
-        sha512 = "k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==";
-      };
-    };
-    "escape-html-1.0.3" = {
-      name = "escape-html";
-      packageName = "escape-html";
-      version = "1.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz";
-        sha1 = "0258eae4d3d0c0974de1c169188ef0051d1d1988";
-      };
-    };
-    "escape-string-regexp-4.0.0" = {
-      name = "escape-string-regexp";
-      packageName = "escape-string-regexp";
-      version = "4.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz";
-        sha512 = "TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==";
-      };
-    };
-    "eslint-8.4.1" = {
-      name = "eslint";
-      packageName = "eslint";
-      version = "8.4.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/eslint/-/eslint-8.4.1.tgz";
-        sha512 = "TxU/p7LB1KxQ6+7aztTnO7K0i+h0tDi81YRY9VzB6Id71kNz+fFYnf5HD5UOQmxkzcoa0TlVZf9dpMtUv0GpWg==";
-      };
-    };
-    "eslint-plugin-jsdoc-37.1.0" = {
-      name = "eslint-plugin-jsdoc";
-      packageName = "eslint-plugin-jsdoc";
-      version = "37.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.1.0.tgz";
-        sha512 = "DpkFzX5Sqkqzy4MCgowhDXmusWcF1Gn7wYnphdGfWmIkoQr6SwL0jEtltGAVyF5Rj6ACi6ydw0oCCI5hF3yz6w==";
-      };
-    };
-    "eslint-plugin-prefer-arrow-1.2.3" = {
-      name = "eslint-plugin-prefer-arrow";
-      packageName = "eslint-plugin-prefer-arrow";
-      version = "1.2.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/eslint-plugin-prefer-arrow/-/eslint-plugin-prefer-arrow-1.2.3.tgz";
-        sha512 = "J9I5PKCOJretVuiZRGvPQxCbllxGAV/viI20JO3LYblAodofBxyMnZAJ+WGeClHgANnSJberTNoFWWjrWKBuXQ==";
-      };
-    };
-    "eslint-scope-5.1.1" = {
-      name = "eslint-scope";
-      packageName = "eslint-scope";
-      version = "5.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz";
-        sha512 = "2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==";
-      };
-    };
-    "eslint-scope-7.1.0" = {
-      name = "eslint-scope";
-      packageName = "eslint-scope";
-      version = "7.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.0.tgz";
-        sha512 = "aWwkhnS0qAXqNOgKOK0dJ2nvzEbhEvpy8OlJ9kZ0FeZnA6zpjv1/Vei+puGFFX7zkPCkHHXb7IDX3A+7yPrRWg==";
-      };
-    };
-    "eslint-utils-3.0.0" = {
-      name = "eslint-utils";
-      packageName = "eslint-utils";
-      version = "3.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz";
-        sha512 = "uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==";
-      };
-    };
-    "eslint-visitor-keys-2.1.0" = {
-      name = "eslint-visitor-keys";
-      packageName = "eslint-visitor-keys";
-      version = "2.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz";
-        sha512 = "0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==";
-      };
-    };
-    "eslint-visitor-keys-3.1.0" = {
-      name = "eslint-visitor-keys";
-      packageName = "eslint-visitor-keys";
-      version = "3.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.1.0.tgz";
-        sha512 = "yWJFpu4DtjsWKkt5GeNBBuZMlNcYVs6vRCLoCVEJrTjaSB6LC98gFipNK/erM2Heg/E8mIK+hXG/pJMLK+eRZA==";
-      };
-    };
-    "espree-9.2.0" = {
-      name = "espree";
-      packageName = "espree";
-      version = "9.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/espree/-/espree-9.2.0.tgz";
-        sha512 = "oP3utRkynpZWF/F2x/HZJ+AGtnIclaR7z1pYPxy7NYM2fSO6LgK/Rkny8anRSPK/VwEA1eqm2squui0T7ZMOBg==";
-      };
-    };
-    "esquery-1.4.0" = {
-      name = "esquery";
-      packageName = "esquery";
-      version = "1.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz";
-        sha512 = "cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==";
-      };
-    };
-    "esrecurse-4.3.0" = {
-      name = "esrecurse";
-      packageName = "esrecurse";
-      version = "4.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz";
-        sha512 = "KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==";
-      };
-    };
-    "estraverse-4.3.0" = {
-      name = "estraverse";
-      packageName = "estraverse";
-      version = "4.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz";
-        sha512 = "39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==";
-      };
-    };
-    "estraverse-5.2.0" = {
-      name = "estraverse";
-      packageName = "estraverse";
-      version = "5.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz";
-        sha512 = "BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==";
-      };
-    };
-    "estraverse-5.3.0" = {
-      name = "estraverse";
-      packageName = "estraverse";
-      version = "5.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz";
-        sha512 = "MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==";
-      };
-    };
-    "esutils-2.0.3" = {
-      name = "esutils";
-      packageName = "esutils";
-      version = "2.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz";
-        sha512 = "kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==";
-      };
-    };
-    "etag-1.8.1" = {
-      name = "etag";
-      packageName = "etag";
-      version = "1.8.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz";
-        sha1 = "41ae2eeb65efa62268aebfea83ac7d79299b0887";
-      };
-    };
-    "eventemitter3-3.1.2" = {
-      name = "eventemitter3";
-      packageName = "eventemitter3";
-      version = "3.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz";
-        sha512 = "tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==";
-      };
-    };
-    "eventemitter3-4.0.7" = {
-      name = "eventemitter3";
-      packageName = "eventemitter3";
-      version = "4.0.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz";
-        sha512 = "8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==";
-      };
-    };
-    "expand-template-2.0.3" = {
-      name = "expand-template";
-      packageName = "expand-template";
-      version = "2.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz";
-        sha512 = "XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==";
-      };
-    };
-    "express-4.17.1" = {
-      name = "express";
-      packageName = "express";
-      version = "4.17.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/express/-/express-4.17.1.tgz";
-        sha512 = "mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==";
-      };
-    };
-    "extend-3.0.2" = {
-      name = "extend";
-      packageName = "extend";
-      version = "3.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz";
-        sha512 = "fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==";
-      };
-    };
-    "extsprintf-1.3.0" = {
-      name = "extsprintf";
-      packageName = "extsprintf";
-      version = "1.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz";
-        sha1 = "96918440e3041a7a414f8c52e3c574eb3c3e1e05";
-      };
-    };
-    "fast-deep-equal-3.1.3" = {
-      name = "fast-deep-equal";
-      packageName = "fast-deep-equal";
-      version = "3.1.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz";
-        sha512 = "f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==";
-      };
-    };
-    "fast-glob-3.2.7" = {
-      name = "fast-glob";
-      packageName = "fast-glob";
-      version = "3.2.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz";
-        sha512 = "rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==";
-      };
-    };
-    "fast-json-stable-stringify-2.1.0" = {
-      name = "fast-json-stable-stringify";
-      packageName = "fast-json-stable-stringify";
-      version = "2.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz";
-        sha512 = "lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==";
-      };
-    };
-    "fast-levenshtein-2.0.6" = {
-      name = "fast-levenshtein";
-      packageName = "fast-levenshtein";
-      version = "2.0.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz";
-        sha1 = "3d8a5c66883a16a30ca8643e851f19baa7797917";
-      };
-    };
-    "fast-safe-stringify-2.0.6" = {
-      name = "fast-safe-stringify";
-      packageName = "fast-safe-stringify";
-      version = "2.0.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.6.tgz";
-        sha512 = "q8BZ89jjc+mz08rSxROs8VsrBBcn1SIw1kq9NjolL509tkABRk9io01RAjSaEv1Xb2uFLt8VtRiZbGp5H8iDtg==";
-      };
-    };
-    "fastq-1.13.0" = {
-      name = "fastq";
-      packageName = "fastq";
-      version = "1.13.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz";
-        sha512 = "YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==";
-      };
-    };
-    "fecha-4.2.0" = {
-      name = "fecha";
-      packageName = "fecha";
-      version = "4.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/fecha/-/fecha-4.2.0.tgz";
-        sha512 = "aN3pcx/DSmtyoovUudctc8+6Hl4T+hI9GBBHLjA76jdZl7+b1sgh5g4k+u/GL3dTy1/pnYzKp69FpJ0OicE3Wg==";
-      };
-    };
-    "file-entry-cache-6.0.1" = {
-      name = "file-entry-cache";
-      packageName = "file-entry-cache";
-      version = "6.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz";
-        sha512 = "7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==";
-      };
-    };
-    "file-stream-rotator-0.5.7" = {
-      name = "file-stream-rotator";
-      packageName = "file-stream-rotator";
-      version = "0.5.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/file-stream-rotator/-/file-stream-rotator-0.5.7.tgz";
-        sha512 = "VYb3HZ/GiAGUCrfeakO8Mp54YGswNUHvL7P09WQcXAJNSj3iQ5QraYSp3cIn1MUyw6uzfgN/EFOarCNa4JvUHQ==";
-      };
-    };
-    "file-uri-to-path-1.0.0" = {
-      name = "file-uri-to-path";
-      packageName = "file-uri-to-path";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz";
-        sha512 = "0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==";
-      };
-    };
-    "fill-range-7.0.1" = {
-      name = "fill-range";
-      packageName = "fill-range";
-      version = "7.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz";
-        sha512 = "qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==";
-      };
-    };
-    "finalhandler-1.1.2" = {
-      name = "finalhandler";
-      packageName = "finalhandler";
-      version = "1.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz";
-        sha512 = "aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==";
-      };
-    };
-    "find-up-5.0.0" = {
-      name = "find-up";
-      packageName = "find-up";
-      version = "5.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz";
-        sha512 = "78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==";
-      };
-    };
-    "finity-0.5.4" = {
-      name = "finity";
-      packageName = "finity";
-      version = "0.5.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/finity/-/finity-0.5.4.tgz";
-        sha512 = "3l+5/1tuw616Lgb0QBimxfdd2TqaDGpfCBpfX6EqtFmqUV3FtQnVEX4Aa62DagYEqnsTIjZcTfbq9msDbXYgyA==";
-      };
-    };
-    "flat-5.0.2" = {
-      name = "flat";
-      packageName = "flat";
-      version = "5.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz";
-        sha512 = "b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==";
-      };
-    };
-    "flat-cache-3.0.4" = {
-      name = "flat-cache";
-      packageName = "flat-cache";
-      version = "3.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz";
-        sha512 = "dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==";
-      };
-    };
-    "flatted-3.1.1" = {
-      name = "flatted";
-      packageName = "flatted";
-      version = "3.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz";
-        sha512 = "zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==";
-      };
-    };
-    "fn.name-1.1.0" = {
-      name = "fn.name";
-      packageName = "fn.name";
-      version = "1.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz";
-        sha512 = "GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==";
-      };
-    };
-    "follow-redirects-1.14.8" = {
-      name = "follow-redirects";
-      packageName = "follow-redirects";
-      version = "1.14.8";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.8.tgz";
-        sha512 = "1x0S9UVJHsQprFcEC/qnNzBLcIxsjAV905f/UkQxbclCsoTWlacCNOpQa/anodLl2uaEKFhfWOvM2Qg77+15zA==";
-      };
-    };
-    "forever-agent-0.6.1" = {
-      name = "forever-agent";
-      packageName = "forever-agent";
-      version = "0.6.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz";
-        sha1 = "fbc71f0c41adeb37f96c577ad1ed42d8fdacca91";
-      };
-    };
-    "form-data-2.3.3" = {
-      name = "form-data";
-      packageName = "form-data";
-      version = "2.3.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz";
-        sha512 = "1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==";
-      };
-    };
-    "form-data-2.5.1" = {
-      name = "form-data";
-      packageName = "form-data";
-      version = "2.5.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz";
-        sha512 = "m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==";
-      };
-    };
-    "forwarded-0.1.2" = {
-      name = "forwarded";
-      packageName = "forwarded";
-      version = "0.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz";
-        sha1 = "98c23dab1175657b8c0573e8ceccd91b0ff18c84";
-      };
-    };
-    "fresh-0.5.2" = {
-      name = "fresh";
-      packageName = "fresh";
-      version = "0.5.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz";
-        sha1 = "3d8cadd90d976569fa835ab1f8e4b23a105605a7";
-      };
-    };
-    "fs-constants-1.0.0" = {
-      name = "fs-constants";
-      packageName = "fs-constants";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz";
-        sha512 = "y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==";
-      };
-    };
-    "fs-minipass-2.1.0" = {
-      name = "fs-minipass";
-      packageName = "fs-minipass";
-      version = "2.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz";
-        sha512 = "V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==";
-      };
-    };
-    "fs.realpath-1.0.0" = {
-      name = "fs.realpath";
-      packageName = "fs.realpath";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz";
-        sha1 = "1504ad2523158caa40db4a2787cb01411994ea4f";
-      };
-    };
-    "fsevents-2.3.2" = {
-      name = "fsevents";
-      packageName = "fsevents";
-      version = "2.3.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz";
-        sha512 = "xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==";
-      };
-    };
-    "function-bind-1.1.1" = {
-      name = "function-bind";
-      packageName = "function-bind";
-      version = "1.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz";
-        sha512 = "yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==";
-      };
-    };
-    "functional-red-black-tree-1.0.1" = {
-      name = "functional-red-black-tree";
-      packageName = "functional-red-black-tree";
-      version = "1.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz";
-        sha1 = "1b0ab3bd553b2a0d6399d29c0e3ea0b252078327";
-      };
-    };
-    "gauge-2.7.4" = {
-      name = "gauge";
-      packageName = "gauge";
-      version = "2.7.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz";
-        sha1 = "2c03405c7538c39d7eb37b317022e325fb018bf7";
-      };
-    };
-    "generate-function-2.3.1" = {
-      name = "generate-function";
-      packageName = "generate-function";
-      version = "2.3.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz";
-        sha512 = "eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==";
-      };
-    };
-    "generate-object-property-1.2.0" = {
-      name = "generate-object-property";
-      packageName = "generate-object-property";
-      version = "1.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz";
-        sha1 = "9c0e1c40308ce804f4783618b937fa88f99d50d0";
-      };
-    };
-    "get-caller-file-2.0.5" = {
-      name = "get-caller-file";
-      packageName = "get-caller-file";
-      version = "2.0.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz";
-        sha512 = "DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==";
-      };
-    };
-    "get-func-name-2.0.0" = {
-      name = "get-func-name";
-      packageName = "get-func-name";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz";
-        sha1 = "ead774abee72e20409433a066366023dd6887a41";
-      };
-    };
-    "get-intrinsic-1.1.1" = {
-      name = "get-intrinsic";
-      packageName = "get-intrinsic";
-      version = "1.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz";
-        sha512 = "kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==";
-      };
-    };
-    "getpass-0.1.7" = {
-      name = "getpass";
-      packageName = "getpass";
-      version = "0.1.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz";
-        sha1 = "5eff8e3e684d569ae4cb2b1282604e8ba62149fa";
-      };
-    };
-    "github-from-package-0.0.0" = {
-      name = "github-from-package";
-      packageName = "github-from-package";
-      version = "0.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz";
-        sha1 = "97fb5d96bfde8973313f20e8288ef9a167fa64ce";
-      };
-    };
-    "glob-7.1.7" = {
-      name = "glob";
-      packageName = "glob";
-      version = "7.1.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz";
-        sha512 = "OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==";
-      };
-    };
-    "glob-parent-5.1.2" = {
-      name = "glob-parent";
-      packageName = "glob-parent";
-      version = "5.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz";
-        sha512 = "AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==";
-      };
-    };
-    "glob-parent-6.0.2" = {
-      name = "glob-parent";
-      packageName = "glob-parent";
-      version = "6.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz";
-        sha512 = "XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==";
-      };
-    };
-    "glob-to-regexp-0.4.1" = {
-      name = "glob-to-regexp";
-      packageName = "glob-to-regexp";
-      version = "0.4.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz";
-        sha512 = "lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==";
-      };
-    };
-    "globals-13.12.0" = {
-      name = "globals";
-      packageName = "globals";
-      version = "13.12.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz";
-        sha512 = "uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==";
-      };
-    };
-    "globby-11.0.4" = {
-      name = "globby";
-      packageName = "globby";
-      version = "11.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz";
-        sha512 = "9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==";
-      };
-    };
-    "graceful-fs-4.2.8" = {
-      name = "graceful-fs";
-      packageName = "graceful-fs";
-      version = "4.2.8";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz";
-        sha512 = "qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==";
-      };
-    };
-    "growl-1.10.5" = {
-      name = "growl";
-      packageName = "growl";
-      version = "1.10.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz";
-        sha512 = "qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==";
-      };
-    };
-    "har-schema-2.0.0" = {
-      name = "har-schema";
-      packageName = "har-schema";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz";
-        sha1 = "a94c2224ebcac04782a0d9035521f24735b7ec92";
-      };
-    };
-    "har-validator-5.1.5" = {
-      name = "har-validator";
-      packageName = "har-validator";
-      version = "5.1.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz";
-        sha512 = "nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==";
-      };
-    };
-    "has-1.0.3" = {
-      name = "has";
-      packageName = "has";
-      version = "1.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/has/-/has-1.0.3.tgz";
-        sha512 = "f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==";
-      };
-    };
-    "has-flag-4.0.0" = {
-      name = "has-flag";
-      packageName = "has-flag";
-      version = "4.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz";
-        sha512 = "EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==";
-      };
-    };
-    "has-symbols-1.0.2" = {
-      name = "has-symbols";
-      packageName = "has-symbols";
-      version = "1.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz";
-        sha512 = "chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==";
-      };
-    };
-    "has-unicode-2.0.1" = {
-      name = "has-unicode";
-      packageName = "has-unicode";
-      version = "2.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz";
-        sha1 = "e0e6fe6a28cf51138855e086d1691e771de2a8b9";
-      };
-    };
-    "hash.js-1.1.7" = {
-      name = "hash.js";
-      packageName = "hash.js";
-      version = "1.1.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz";
-        sha512 = "taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==";
-      };
-    };
-    "he-1.2.0" = {
-      name = "he";
-      packageName = "he";
-      version = "1.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/he/-/he-1.2.0.tgz";
-        sha512 = "F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==";
-      };
-    };
-    "html-to-text-6.0.0" = {
-      name = "html-to-text";
-      packageName = "html-to-text";
-      version = "6.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/html-to-text/-/html-to-text-6.0.0.tgz";
-        sha512 = "r0KNC5aqCAItsjlgtirW6RW25c92Ee3ybQj8z//4Sl4suE3HIPqM4deGpYCUJULLjtVPEP1+Ma+1ZeX1iMsCiA==";
-      };
-    };
-    "htmlencode-0.0.4" = {
-      name = "htmlencode";
-      packageName = "htmlencode";
-      version = "0.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/htmlencode/-/htmlencode-0.0.4.tgz";
-        sha1 = "f7e2d6afbe18a87a78e63ba3308e753766740e3f";
-      };
-    };
-    "htmlparser2-4.1.0" = {
-      name = "htmlparser2";
-      packageName = "htmlparser2";
-      version = "4.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/htmlparser2/-/htmlparser2-4.1.0.tgz";
-        sha512 = "4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==";
-      };
-    };
-    "htmlparser2-6.1.0" = {
-      name = "htmlparser2";
-      packageName = "htmlparser2";
-      version = "6.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz";
-        sha512 = "gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==";
-      };
-    };
-    "http-errors-1.7.2" = {
-      name = "http-errors";
-      packageName = "http-errors";
-      version = "1.7.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz";
-        sha512 = "uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==";
-      };
-    };
-    "http-signature-1.2.0" = {
-      name = "http-signature";
-      packageName = "http-signature";
-      version = "1.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz";
-        sha1 = "9aecd925114772f3d95b65a60abb8f7c18fbace1";
-      };
-    };
-    "iconv-lite-0.4.24" = {
-      name = "iconv-lite";
-      packageName = "iconv-lite";
-      version = "0.4.24";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz";
-        sha512 = "v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==";
-      };
-    };
-    "ieee754-1.2.1" = {
-      name = "ieee754";
-      packageName = "ieee754";
-      version = "1.2.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz";
-        sha512 = "dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==";
-      };
-    };
-    "ignore-4.0.6" = {
-      name = "ignore";
-      packageName = "ignore";
-      version = "4.0.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz";
-        sha512 = "cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==";
-      };
-    };
-    "ignore-5.1.9" = {
-      name = "ignore";
-      packageName = "ignore";
-      version = "5.1.9";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ignore/-/ignore-5.1.9.tgz";
-        sha512 = "2zeMQpbKz5dhZ9IwL0gbxSW5w0NK/MSAMtNuhgIHEPmaU3vPdKPL0UdvUCXs5SS4JAwsBxysK5sFMW8ocFiVjQ==";
-      };
-    };
-    "immediate-3.0.6" = {
-      name = "immediate";
-      packageName = "immediate";
-      version = "3.0.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz";
-        sha1 = "9db1dbd0faf8de6fbe0f5dd5e56bb606280de69b";
-      };
-    };
-    "import-fresh-3.3.0" = {
-      name = "import-fresh";
-      packageName = "import-fresh";
-      version = "3.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz";
-        sha512 = "veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==";
-      };
-    };
-    "imurmurhash-0.1.4" = {
-      name = "imurmurhash";
-      packageName = "imurmurhash";
-      version = "0.1.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz";
-        sha1 = "9218b9b2b928a238b13dc4fb6b6d576f231453ea";
-      };
-    };
-    "inflight-1.0.6" = {
-      name = "inflight";
-      packageName = "inflight";
-      version = "1.0.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz";
-        sha1 = "49bd6331d7d02d0c09bc910a1075ba8165b56df9";
-      };
-    };
-    "inherits-2.0.3" = {
-      name = "inherits";
-      packageName = "inherits";
-      version = "2.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz";
-        sha1 = "633c2c83e3da42a502f52466022480f4208261de";
-      };
-    };
-    "inherits-2.0.4" = {
-      name = "inherits";
-      packageName = "inherits";
-      version = "2.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz";
-        sha512 = "k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==";
-      };
-    };
-    "ini-1.3.8" = {
-      name = "ini";
-      packageName = "ini";
-      version = "1.3.8";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz";
-        sha512 = "JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==";
-      };
-    };
-    "ipaddr.js-1.9.1" = {
-      name = "ipaddr.js";
-      packageName = "ipaddr.js";
-      version = "1.9.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz";
-        sha512 = "0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==";
-      };
-    };
-    "is-arrayish-0.3.2" = {
-      name = "is-arrayish";
-      packageName = "is-arrayish";
-      version = "0.3.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz";
-        sha512 = "eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==";
-      };
-    };
-    "is-binary-path-2.1.0" = {
-      name = "is-binary-path";
-      packageName = "is-binary-path";
-      version = "2.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz";
-        sha512 = "ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==";
-      };
-    };
-    "is-extglob-2.1.1" = {
-      name = "is-extglob";
-      packageName = "is-extglob";
-      version = "2.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz";
-        sha1 = "a88c02535791f02ed37c76a1b9ea9773c833f8c2";
-      };
-    };
-    "is-fullwidth-code-point-1.0.0" = {
-      name = "is-fullwidth-code-point";
-      packageName = "is-fullwidth-code-point";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz";
-        sha1 = "ef9e31386f031a7f0d643af82fde50c457ef00cb";
-      };
-    };
-    "is-fullwidth-code-point-2.0.0" = {
-      name = "is-fullwidth-code-point";
-      packageName = "is-fullwidth-code-point";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz";
-        sha1 = "a3b30a5c4f199183167aaab93beefae3ddfb654f";
-      };
-    };
-    "is-fullwidth-code-point-3.0.0" = {
-      name = "is-fullwidth-code-point";
-      packageName = "is-fullwidth-code-point";
-      version = "3.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz";
-        sha512 = "zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==";
-      };
-    };
-    "is-glob-4.0.3" = {
-      name = "is-glob";
-      packageName = "is-glob";
-      version = "4.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz";
-        sha512 = "xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==";
-      };
-    };
-    "is-my-ip-valid-1.0.0" = {
-      name = "is-my-ip-valid";
-      packageName = "is-my-ip-valid";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz";
-        sha512 = "gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==";
-      };
-    };
-    "is-my-json-valid-2.20.6" = {
-      name = "is-my-json-valid";
-      packageName = "is-my-json-valid";
-      version = "2.20.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.20.6.tgz";
-        sha512 = "1JQwulVNjx8UqkPE/bqDaxtH4PXCe/2VRh/y3p99heOV87HG4Id5/VfDswd+YiAfHcRTfDlWgISycnHuhZq1aw==";
-      };
-    };
-    "is-number-7.0.0" = {
-      name = "is-number";
-      packageName = "is-number";
-      version = "7.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz";
-        sha512 = "41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==";
-      };
-    };
-    "is-plain-obj-2.1.0" = {
-      name = "is-plain-obj";
-      packageName = "is-plain-obj";
-      version = "2.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz";
-        sha512 = "YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==";
-      };
-    };
-    "is-plain-object-5.0.0" = {
-      name = "is-plain-object";
-      packageName = "is-plain-object";
-      version = "5.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz";
-        sha512 = "VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==";
-      };
-    };
-    "is-promise-2.2.2" = {
-      name = "is-promise";
-      packageName = "is-promise";
-      version = "2.2.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz";
-        sha512 = "+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==";
-      };
-    };
-    "is-property-1.0.2" = {
-      name = "is-property";
-      packageName = "is-property";
-      version = "1.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz";
-        sha1 = "57fe1c4e48474edd65b09911f26b1cd4095dda84";
-      };
-    };
-    "is-stream-1.1.0" = {
-      name = "is-stream";
-      packageName = "is-stream";
-      version = "1.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz";
-        sha1 = "12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44";
-      };
-    };
-    "is-stream-2.0.0" = {
-      name = "is-stream";
-      packageName = "is-stream";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz";
-        sha512 = "XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==";
-      };
-    };
-    "is-typedarray-1.0.0" = {
-      name = "is-typedarray";
-      packageName = "is-typedarray";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz";
-        sha1 = "e479c80858df0c1b11ddda6940f96011fcda4a9a";
-      };
-    };
-    "is-unicode-supported-0.1.0" = {
-      name = "is-unicode-supported";
-      packageName = "is-unicode-supported";
-      version = "0.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz";
-        sha512 = "knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==";
-      };
-    };
-    "isarray-1.0.0" = {
-      name = "isarray";
-      packageName = "isarray";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz";
-        sha1 = "bb935d48582cba168c06834957a54a3e07124f11";
-      };
-    };
-    "isexe-2.0.0" = {
-      name = "isexe";
-      packageName = "isexe";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz";
-        sha1 = "e8fbf374dc556ff8947a10dcb0572d633f2cfa10";
-      };
-    };
-    "isstream-0.1.2" = {
-      name = "isstream";
-      packageName = "isstream";
-      version = "0.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz";
-        sha1 = "47e63f7af55afa6f92e1500e690eb8b8529c099a";
-      };
-    };
-    "js-yaml-4.1.0" = {
-      name = "js-yaml";
-      packageName = "js-yaml";
-      version = "4.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz";
-        sha512 = "wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==";
-      };
-    };
-    "jsbn-0.1.1" = {
-      name = "jsbn";
-      packageName = "jsbn";
-      version = "0.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz";
-        sha1 = "a5e654c2e5a2deb5f201d96cefbca80c0ef2f513";
-      };
-    };
-    "jsdoc-type-pratt-parser-2.0.0" = {
-      name = "jsdoc-type-pratt-parser";
-      packageName = "jsdoc-type-pratt-parser";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-2.0.0.tgz";
-        sha512 = "sUuj2j48wxrEpbFjDp1sAesAxPiLT+z0SWVmMafyIINs6Lj5gIPKh3VrkBZu4E/Dv+wHpOot0m6H8zlHQjwqeQ==";
-      };
-    };
-    "json-schema-0.2.3" = {
-      name = "json-schema";
-      packageName = "json-schema";
-      version = "0.2.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz";
-        sha1 = "b480c892e59a2f05954ce727bd3f2a4e882f9e13";
-      };
-    };
-    "json-schema-traverse-0.4.1" = {
-      name = "json-schema-traverse";
-      packageName = "json-schema-traverse";
-      version = "0.4.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz";
-        sha512 = "xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==";
-      };
-    };
-    "json-stable-stringify-without-jsonify-1.0.1" = {
-      name = "json-stable-stringify-without-jsonify";
-      packageName = "json-stable-stringify-without-jsonify";
-      version = "1.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz";
-        sha1 = "9db7b59496ad3f3cfef30a75142d2d930ad72651";
-      };
-    };
-    "json-stringify-safe-5.0.1" = {
-      name = "json-stringify-safe";
-      packageName = "json-stringify-safe";
-      version = "5.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz";
-        sha1 = "1296a2d58fd45f19a0f6ce01d65701e2c735b6eb";
-      };
-    };
-    "jsonpointer-5.0.0" = {
-      name = "jsonpointer";
-      packageName = "jsonpointer";
-      version = "5.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/jsonpointer/-/jsonpointer-5.0.0.tgz";
-        sha512 = "PNYZIdMjVIvVgDSYKTT63Y+KZ6IZvGRNNWcxwD+GNnUz1MKPfv30J8ueCjdwcN0nDx2SlshgyB7Oy0epAzVRRg==";
-      };
-    };
-    "jsprim-1.4.1" = {
-      name = "jsprim";
-      packageName = "jsprim";
-      version = "1.4.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz";
-        sha1 = "313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2";
-      };
-    };
-    "klona-2.0.4" = {
-      name = "klona";
-      packageName = "klona";
-      version = "2.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/klona/-/klona-2.0.4.tgz";
-        sha512 = "ZRbnvdg/NxqzC7L9Uyqzf4psi1OM4Cuc+sJAkQPjO6XkQIJTNbfK2Rsmbw8fx1p2mkZdp2FZYo2+LwXYY/uwIA==";
-      };
-    };
-    "kuler-2.0.0" = {
-      name = "kuler";
-      packageName = "kuler";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz";
-        sha512 = "Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==";
-      };
-    };
-    "levn-0.4.1" = {
-      name = "levn";
-      packageName = "levn";
-      version = "0.4.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz";
-        sha512 = "+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==";
-      };
-    };
-    "lie-3.1.1" = {
-      name = "lie";
-      packageName = "lie";
-      version = "3.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz";
-        sha1 = "9a436b2cc7746ca59de7a41fa469b3efb76bd87e";
-      };
-    };
-    "localforage-1.7.3" = {
-      name = "localforage";
-      packageName = "localforage";
-      version = "1.7.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/localforage/-/localforage-1.7.3.tgz";
-        sha512 = "1TulyYfc4udS7ECSBT2vwJksWbkwwTX8BzeUIiq8Y07Riy7bDAAnxDaPU/tWyOVmQAcWJIEIFP9lPfBGqVoPgQ==";
-      };
-    };
-    "locate-path-6.0.0" = {
-      name = "locate-path";
-      packageName = "locate-path";
-      version = "6.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz";
-        sha512 = "iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==";
-      };
-    };
-    "lodash-4.17.21" = {
-      name = "lodash";
-      packageName = "lodash";
-      version = "4.17.21";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz";
-        sha512 = "v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==";
-      };
-    };
-    "lodash.merge-4.6.2" = {
-      name = "lodash.merge";
-      packageName = "lodash.merge";
-      version = "4.6.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz";
-        sha512 = "0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==";
-      };
-    };
-    "lodash.toarray-4.4.0" = {
-      name = "lodash.toarray";
-      packageName = "lodash.toarray";
-      version = "4.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/lodash.toarray/-/lodash.toarray-4.4.0.tgz";
-        sha1 = "24c4bfcd6b2fba38bfd0594db1179d8e9b656561";
-      };
-    };
-    "log-symbols-4.1.0" = {
-      name = "log-symbols";
-      packageName = "log-symbols";
-      version = "4.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz";
-        sha512 = "8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==";
-      };
-    };
-    "logform-2.2.0" = {
-      name = "logform";
-      packageName = "logform";
-      version = "2.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/logform/-/logform-2.2.0.tgz";
-        sha512 = "N0qPlqfypFx7UHNn4B3lzS/b0uLqt2hmuoa+PpuXNYgozdJYAyauF5Ky0BWVjrxDlMWiT3qN4zPq3vVAfZy7Yg==";
-      };
-    };
-    "loglevel-1.8.0" = {
-      name = "loglevel";
-      packageName = "loglevel";
-      version = "1.8.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/loglevel/-/loglevel-1.8.0.tgz";
-        sha512 = "G6A/nJLRgWOuuwdNuA6koovfEV1YpqqAG4pRUlFaz3jj2QNZ8M4vBqnVA+HBTmU/AMNUtlOsMmSpF6NyOjztbA==";
-      };
-    };
-    "lowdb-1.0.0" = {
-      name = "lowdb";
-      packageName = "lowdb";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/lowdb/-/lowdb-1.0.0.tgz";
-        sha512 = "2+x8esE/Wb9SQ1F9IHaYWfsC9FIecLOPrK4g17FGEayjUWH172H6nwicRovGvSE2CPZouc2MCIqCI7h9d+GftQ==";
-      };
-    };
-    "lru-cache-6.0.0" = {
-      name = "lru-cache";
-      packageName = "lru-cache";
-      version = "6.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz";
-        sha512 = "Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==";
-      };
-    };
-    "make-error-1.3.6" = {
-      name = "make-error";
-      packageName = "make-error";
-      version = "1.3.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz";
-        sha512 = "s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==";
-      };
-    };
-    "matrix-appservice-0.10.0" = {
-      name = "matrix-appservice";
-      packageName = "matrix-appservice";
-      version = "0.10.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/matrix-appservice/-/matrix-appservice-0.10.0.tgz";
-        sha512 = "bxkvPaFXzuuRfqSQgIBbA6M+nKXeRJEeZlJfzjhP0RBBMl62HQTXqNLSVHhLRCdzKbr1OayrbDKL+BnmoghDDA==";
-      };
-    };
-    "matrix-appservice-bridge-3.2.0" = {
-      name = "matrix-appservice-bridge";
-      packageName = "matrix-appservice-bridge";
-      version = "3.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/matrix-appservice-bridge/-/matrix-appservice-bridge-3.2.0.tgz";
-        sha512 = "fkVarDN2vLwgr/j2gOAT58AOVK+ualZghOI5oIOCImwut4U7gXBig2sjJ9f+NYjE2ljlWOas4UPSRLsly16EvQ==";
-      };
-    };
-    "matrix-bot-sdk-0.6.0-beta.2" = {
-      name = "matrix-bot-sdk";
-      packageName = "matrix-bot-sdk";
-      version = "0.6.0-beta.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/matrix-bot-sdk/-/matrix-bot-sdk-0.6.0-beta.2.tgz";
-        sha512 = "D9aQ2++1bJIzka2uIz22HkaeyT058QGOh96xdxiDOaezyzLY5BN7ehYg+P0xRzDYDFKx9DbqDYCt97IkfahtPw==";
-      };
-    };
-    "matrix-js-sdk-12.5.0" = {
-      name = "matrix-js-sdk";
-      packageName = "matrix-js-sdk";
-      version = "12.5.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/matrix-js-sdk/-/matrix-js-sdk-12.5.0.tgz";
-        sha512 = "HnEXoEhqpNp9/W9Ep7ZNZAubFlUssFyVpjgKfMOxxg+dYbBk5NWToHmAPQxlRUgrZ/rIMLVyMJROSCIthDbo2A==";
-      };
-    };
-    "media-typer-0.3.0" = {
-      name = "media-typer";
-      packageName = "media-typer";
-      version = "0.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz";
-        sha1 = "8710d7af0aa626f8fffa1ce00168545263255748";
-      };
-    };
-    "merge-descriptors-1.0.1" = {
-      name = "merge-descriptors";
-      packageName = "merge-descriptors";
-      version = "1.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz";
-        sha1 = "b00aaa556dd8b44568150ec9d1b953f3f90cbb61";
-      };
-    };
-    "merge2-1.4.1" = {
-      name = "merge2";
-      packageName = "merge2";
-      version = "1.4.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz";
-        sha512 = "8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==";
-      };
-    };
-    "methods-1.1.2" = {
-      name = "methods";
-      packageName = "methods";
-      version = "1.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz";
-        sha1 = "5529a4d67654134edcc5266656835b0f851afcee";
-      };
-    };
-    "micromatch-4.0.4" = {
-      name = "micromatch";
-      packageName = "micromatch";
-      version = "4.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz";
-        sha512 = "pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==";
-      };
-    };
-    "mime-1.6.0" = {
-      name = "mime";
-      packageName = "mime";
-      version = "1.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz";
-        sha512 = "x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==";
-      };
-    };
-    "mime-db-1.40.0" = {
-      name = "mime-db";
-      packageName = "mime-db";
-      version = "1.40.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz";
-        sha512 = "jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==";
-      };
-    };
-    "mime-types-2.1.24" = {
-      name = "mime-types";
-      packageName = "mime-types";
-      version = "2.1.24";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz";
-        sha512 = "WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==";
-      };
-    };
-    "mimic-response-2.1.0" = {
-      name = "mimic-response";
-      packageName = "mimic-response";
-      version = "2.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz";
-        sha512 = "wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==";
-      };
-    };
-    "minimalistic-assert-1.0.1" = {
-      name = "minimalistic-assert";
-      packageName = "minimalistic-assert";
-      version = "1.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz";
-        sha512 = "UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==";
-      };
-    };
-    "minimatch-3.0.4" = {
-      name = "minimatch";
-      packageName = "minimatch";
-      version = "3.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz";
-        sha512 = "yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==";
-      };
-    };
-    "minimist-1.2.5" = {
-      name = "minimist";
-      packageName = "minimist";
-      version = "1.2.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz";
-        sha512 = "FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==";
-      };
-    };
-    "minipass-3.1.5" = {
-      name = "minipass";
-      packageName = "minipass";
-      version = "3.1.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/minipass/-/minipass-3.1.5.tgz";
-        sha512 = "+8NzxD82XQoNKNrl1d/FSi+X8wAEWR+sbYAfIvub4Nz0d22plFG72CEVVaufV8PNf4qSslFTD8VMOxNVhHCjTw==";
-      };
-    };
-    "minizlib-2.1.2" = {
-      name = "minizlib";
-      packageName = "minizlib";
-      version = "2.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz";
-        sha512 = "bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==";
-      };
-    };
-    "mkdirp-0.5.5" = {
-      name = "mkdirp";
-      packageName = "mkdirp";
-      version = "0.5.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz";
-        sha512 = "NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==";
-      };
-    };
-    "mkdirp-1.0.4" = {
-      name = "mkdirp";
-      packageName = "mkdirp";
-      version = "1.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz";
-        sha512 = "vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==";
-      };
-    };
-    "mkdirp-classic-0.5.3" = {
-      name = "mkdirp-classic";
-      packageName = "mkdirp-classic";
-      version = "0.5.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz";
-        sha512 = "gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==";
-      };
-    };
-    "mocha-9.0.2" = {
-      name = "mocha";
-      packageName = "mocha";
-      version = "9.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mocha/-/mocha-9.0.2.tgz";
-        sha512 = "FpspiWU+UT9Sixx/wKimvnpkeW0mh6ROAKkIaPokj3xZgxeRhcna/k5X57jJghEr8X+Cgu/Vegf8zCX5ugSuTA==";
-      };
-    };
-    "moment-2.29.1" = {
-      name = "moment";
-      packageName = "moment";
-      version = "2.29.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz";
-        sha512 = "kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==";
-      };
-    };
-    "morgan-1.10.0" = {
-      name = "morgan";
-      packageName = "morgan";
-      version = "1.10.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/morgan/-/morgan-1.10.0.tgz";
-        sha512 = "AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==";
-      };
-    };
-    "ms-2.0.0" = {
-      name = "ms";
-      packageName = "ms";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz";
-        sha1 = "5608aeadfc00be6c2901df5f9861788de0d597c8";
-      };
-    };
-    "ms-2.1.1" = {
-      name = "ms";
-      packageName = "ms";
-      version = "2.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz";
-        sha512 = "tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==";
-      };
-    };
-    "ms-2.1.2" = {
-      name = "ms";
-      packageName = "ms";
-      version = "2.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz";
-        sha512 = "sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==";
-      };
-    };
-    "ms-2.1.3" = {
-      name = "ms";
-      packageName = "ms";
-      version = "2.1.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz";
-        sha512 = "6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==";
-      };
-    };
-    "nanoid-3.1.23" = {
-      name = "nanoid";
-      packageName = "nanoid";
-      version = "3.1.23";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz";
-        sha512 = "FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==";
-      };
-    };
-    "napi-build-utils-1.0.2" = {
-      name = "napi-build-utils";
-      packageName = "napi-build-utils";
-      version = "1.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz";
-        sha512 = "ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==";
-      };
-    };
-    "natural-compare-1.4.0" = {
-      name = "natural-compare";
-      packageName = "natural-compare";
-      version = "1.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz";
-        sha1 = "4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7";
-      };
-    };
-    "nedb-1.8.0" = {
-      name = "nedb";
-      packageName = "nedb";
-      version = "1.8.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/nedb/-/nedb-1.8.0.tgz";
-        sha1 = "0e3502cd82c004d5355a43c9e55577bd7bd91d88";
-      };
-    };
-    "negotiator-0.6.2" = {
-      name = "negotiator";
-      packageName = "negotiator";
-      version = "0.6.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz";
-        sha512 = "hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==";
-      };
-    };
-    "node-abi-2.30.1" = {
-      name = "node-abi";
-      packageName = "node-abi";
-      version = "2.30.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/node-abi/-/node-abi-2.30.1.tgz";
-        sha512 = "/2D0wOQPgaUWzVSVgRMx+trKJRC2UG4SUc4oCJoXx9Uxjtp0Vy3/kt7zcbxHF8+Z/pK3UloLWzBISg72brfy1w==";
-      };
-    };
-    "node-emoji-1.10.0" = {
-      name = "node-emoji";
-      packageName = "node-emoji";
-      version = "1.10.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/node-emoji/-/node-emoji-1.10.0.tgz";
-        sha512 = "Yt3384If5H6BYGVHiHwTL+99OzJKHhgp82S8/dktEK73T26BazdgZ4JZh92xSVtGNJvz9UbXdNAc5hcrXV42vw==";
-      };
-    };
-    "nopt-5.0.0" = {
-      name = "nopt";
-      packageName = "nopt";
-      version = "5.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz";
-        sha512 = "Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==";
-      };
-    };
-    "normalize-path-3.0.0" = {
-      name = "normalize-path";
-      packageName = "normalize-path";
-      version = "3.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz";
-        sha512 = "6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==";
-      };
-    };
-    "npmlog-4.1.2" = {
-      name = "npmlog";
-      packageName = "npmlog";
-      version = "4.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz";
-        sha512 = "2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==";
-      };
-    };
-    "number-is-nan-1.0.1" = {
-      name = "number-is-nan";
-      packageName = "number-is-nan";
-      version = "1.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz";
-        sha1 = "097b602b53422a522c1afb8790318336941a011d";
-      };
-    };
-    "nunjucks-3.2.3" = {
-      name = "nunjucks";
-      packageName = "nunjucks";
-      version = "3.2.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/nunjucks/-/nunjucks-3.2.3.tgz";
-        sha512 = "psb6xjLj47+fE76JdZwskvwG4MYsQKXUtMsPh6U0YMvmyjRtKRFcxnlXGWglNybtNTNVmGdp94K62/+NjF5FDQ==";
-      };
-    };
-    "oauth-sign-0.9.0" = {
-      name = "oauth-sign";
-      packageName = "oauth-sign";
-      version = "0.9.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz";
-        sha512 = "fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==";
-      };
-    };
-    "object-assign-4.1.1" = {
-      name = "object-assign";
-      packageName = "object-assign";
-      version = "4.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz";
-        sha1 = "2109adc7965887cfc05cbbd442cac8bfbb360863";
-      };
-    };
-    "object-hash-2.1.1" = {
-      name = "object-hash";
-      packageName = "object-hash";
-      version = "2.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/object-hash/-/object-hash-2.1.1.tgz";
-        sha512 = "VOJmgmS+7wvXf8CjbQmimtCnEx3IAoLxI3fp2fbWehxrWBcAQFbk+vcwb6vzR0VZv/eNCJ/27j151ZTwqW/JeQ==";
-      };
-    };
-    "object-inspect-1.11.0" = {
-      name = "object-inspect";
-      packageName = "object-inspect";
-      version = "1.11.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz";
-        sha512 = "jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==";
-      };
-    };
-    "on-finished-2.3.0" = {
-      name = "on-finished";
-      packageName = "on-finished";
-      version = "2.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz";
-        sha1 = "20f1336481b083cd75337992a16971aa2d906947";
-      };
-    };
-    "on-headers-1.0.2" = {
-      name = "on-headers";
-      packageName = "on-headers";
-      version = "1.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz";
-        sha512 = "pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==";
-      };
-    };
-    "once-1.4.0" = {
-      name = "once";
-      packageName = "once";
-      version = "1.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/once/-/once-1.4.0.tgz";
-        sha1 = "583b1aa775961d4b113ac17d9c50baef9dd76bd1";
-      };
-    };
-    "one-time-1.0.0" = {
-      name = "one-time";
-      packageName = "one-time";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz";
-        sha512 = "5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==";
-      };
-    };
-    "optionator-0.9.1" = {
-      name = "optionator";
-      packageName = "optionator";
-      version = "0.9.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz";
-        sha512 = "74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==";
-      };
-    };
-    "p-cancelable-1.1.0" = {
-      name = "p-cancelable";
-      packageName = "p-cancelable";
-      version = "1.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz";
-        sha512 = "s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==";
-      };
-    };
-    "p-finally-1.0.0" = {
-      name = "p-finally";
-      packageName = "p-finally";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz";
-        sha1 = "3fbcfb15b899a44123b34b6dcc18b724336a2cae";
-      };
-    };
-    "p-limit-3.1.0" = {
-      name = "p-limit";
-      packageName = "p-limit";
-      version = "3.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz";
-        sha512 = "TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==";
-      };
-    };
-    "p-locate-5.0.0" = {
-      name = "p-locate";
-      packageName = "p-locate";
-      version = "5.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz";
-        sha512 = "LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==";
-      };
-    };
-    "p-queue-2.4.2" = {
-      name = "p-queue";
-      packageName = "p-queue";
-      version = "2.4.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/p-queue/-/p-queue-2.4.2.tgz";
-        sha512 = "n8/y+yDJwBjoLQe1GSJbbaYQLTI7QHNZI2+rpmCDbe++WLf9HC3gf6iqj5yfPAV71W4UF3ql5W1+UBPXoXTxng==";
-      };
-    };
-    "p-queue-6.6.2" = {
-      name = "p-queue";
-      packageName = "p-queue";
-      version = "6.6.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz";
-        sha512 = "RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==";
-      };
-    };
-    "p-retry-4.6.1" = {
-      name = "p-retry";
-      packageName = "p-retry";
-      version = "4.6.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/p-retry/-/p-retry-4.6.1.tgz";
-        sha512 = "e2xXGNhZOZ0lfgR9kL34iGlU8N/KO0xZnQxVEwdeOvpqNDQfdnxIYizvWtK8RglUa3bGqI8g0R/BdfzLMxRkiA==";
-      };
-    };
-    "p-timeout-3.2.0" = {
-      name = "p-timeout";
-      packageName = "p-timeout";
-      version = "3.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz";
-        sha512 = "rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==";
-      };
-    };
-    "packet-reader-1.0.0" = {
-      name = "packet-reader";
-      packageName = "packet-reader";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/packet-reader/-/packet-reader-1.0.0.tgz";
-        sha512 = "HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ==";
-      };
-    };
-    "parent-module-1.0.1" = {
-      name = "parent-module";
-      packageName = "parent-module";
-      version = "1.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz";
-        sha512 = "GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==";
-      };
-    };
-    "parse-srcset-1.0.2" = {
-      name = "parse-srcset";
-      packageName = "parse-srcset";
-      version = "1.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/parse-srcset/-/parse-srcset-1.0.2.tgz";
-        sha1 = "f2bd221f6cc970a938d88556abc589caaaa2bde1";
-      };
-    };
-    "parseurl-1.3.3" = {
-      name = "parseurl";
-      packageName = "parseurl";
-      version = "1.3.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz";
-        sha512 = "CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==";
-      };
-    };
-    "path-exists-4.0.0" = {
-      name = "path-exists";
-      packageName = "path-exists";
-      version = "4.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz";
-        sha512 = "ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==";
-      };
-    };
-    "path-is-absolute-1.0.1" = {
-      name = "path-is-absolute";
-      packageName = "path-is-absolute";
-      version = "1.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz";
-        sha1 = "174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f";
-      };
-    };
-    "path-key-3.1.1" = {
-      name = "path-key";
-      packageName = "path-key";
-      version = "3.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz";
-        sha512 = "ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==";
-      };
-    };
-    "path-to-regexp-0.1.7" = {
-      name = "path-to-regexp";
-      packageName = "path-to-regexp";
-      version = "0.1.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz";
-        sha1 = "df604178005f522f15eb4490e7247a1bfaa67f8c";
-      };
-    };
-    "path-type-4.0.0" = {
-      name = "path-type";
-      packageName = "path-type";
-      version = "4.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz";
-        sha512 = "gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==";
-      };
-    };
-    "pathval-1.1.1" = {
-      name = "pathval";
-      packageName = "pathval";
-      version = "1.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz";
-        sha512 = "Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==";
-      };
-    };
-    "performance-now-2.1.0" = {
-      name = "performance-now";
-      packageName = "performance-now";
-      version = "2.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz";
-        sha1 = "6309f4e0e5fa913ec1c69307ae364b4b377c9e7b";
-      };
-    };
-    "pg-8.7.1" = {
-      name = "pg";
-      packageName = "pg";
-      version = "8.7.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/pg/-/pg-8.7.1.tgz";
-        sha512 = "7bdYcv7V6U3KAtWjpQJJBww0UEsWuh4yQ/EjNf2HeO/NnvKjpvhEIe/A/TleP6wtmSKnUnghs5A9jUoK6iDdkA==";
-      };
-    };
-    "pg-connection-string-2.5.0" = {
-      name = "pg-connection-string";
-      packageName = "pg-connection-string";
-      version = "2.5.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/pg-connection-string/-/pg-connection-string-2.5.0.tgz";
-        sha512 = "r5o/V/ORTA6TmUnyWZR9nCj1klXCO2CEKNRlVuJptZe85QuhFayC7WeMic7ndayT5IRIR0S0xFxFi2ousartlQ==";
-      };
-    };
-    "pg-int8-1.0.1" = {
-      name = "pg-int8";
-      packageName = "pg-int8";
-      version = "1.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/pg-int8/-/pg-int8-1.0.1.tgz";
-        sha512 = "WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==";
-      };
-    };
-    "pg-minify-1.6.2" = {
-      name = "pg-minify";
-      packageName = "pg-minify";
-      version = "1.6.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/pg-minify/-/pg-minify-1.6.2.tgz";
-        sha512 = "1KdmFGGTP6jplJoI8MfvRlfvMiyBivMRP7/ffh4a11RUFJ7kC2J0ZHlipoKiH/1hz+DVgceon9U2qbaHpPeyPg==";
-      };
-    };
-    "pg-pool-3.4.1" = {
-      name = "pg-pool";
-      packageName = "pg-pool";
-      version = "3.4.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/pg-pool/-/pg-pool-3.4.1.tgz";
-        sha512 = "TVHxR/gf3MeJRvchgNHxsYsTCHQ+4wm3VIHSS19z8NC0+gioEhq1okDY1sm/TYbfoP6JLFx01s0ShvZ3puP/iQ==";
-      };
-    };
-    "pg-promise-10.11.1" = {
-      name = "pg-promise";
-      packageName = "pg-promise";
-      version = "10.11.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/pg-promise/-/pg-promise-10.11.1.tgz";
-        sha512 = "HAv32WSKf2m2RqHerW5RmANn/mcXIwWXbg/gOfGQcoS0SE+8iBi3Jj4JmoR4PNzSEozo/y/npy4e6F16psOItw==";
-      };
-    };
-    "pg-protocol-1.5.0" = {
-      name = "pg-protocol";
-      packageName = "pg-protocol";
-      version = "1.5.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/pg-protocol/-/pg-protocol-1.5.0.tgz";
-        sha512 = "muRttij7H8TqRNu/DxrAJQITO4Ac7RmX3Klyr/9mJEOBeIpgnF8f9jAfRz5d3XwQZl5qBjF9gLsUtMPJE0vezQ==";
-      };
-    };
-    "pg-types-2.2.0" = {
-      name = "pg-types";
-      packageName = "pg-types";
-      version = "2.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/pg-types/-/pg-types-2.2.0.tgz";
-        sha512 = "qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==";
-      };
-    };
-    "pgpass-1.0.4" = {
-      name = "pgpass";
-      packageName = "pgpass";
-      version = "1.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/pgpass/-/pgpass-1.0.4.tgz";
-        sha512 = "YmuA56alyBq7M59vxVBfPJrGSozru8QAdoNlWuW3cz8l+UX3cWge0vTvjKhsSHSJpo3Bom8/Mm6hf0TR5GY0+w==";
-      };
-    };
-    "picomatch-2.2.3" = {
-      name = "picomatch";
-      packageName = "picomatch";
-      version = "2.2.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/picomatch/-/picomatch-2.2.3.tgz";
-        sha512 = "KpELjfwcCDUb9PeigTs2mBJzXUPzAuP2oPcA989He8Rte0+YUAjw1JVedDhuTKPkHjSYzMN3npC9luThGYEKdg==";
-      };
-    };
-    "pify-3.0.0" = {
-      name = "pify";
-      packageName = "pify";
-      version = "3.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz";
-        sha1 = "e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176";
-      };
-    };
-    "postcss-8.3.6" = {
-      name = "postcss";
-      packageName = "postcss";
-      version = "8.3.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss/-/postcss-8.3.6.tgz";
-        sha512 = "wG1cc/JhRgdqB6WHEuyLTedf3KIRuD0hG6ldkFEZNCjRxiC+3i6kkWUUbiJQayP28iwG35cEmAbe98585BYV0A==";
-      };
-    };
-    "postgres-array-2.0.0" = {
-      name = "postgres-array";
-      packageName = "postgres-array";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postgres-array/-/postgres-array-2.0.0.tgz";
-        sha512 = "VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==";
-      };
-    };
-    "postgres-bytea-1.0.0" = {
-      name = "postgres-bytea";
-      packageName = "postgres-bytea";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postgres-bytea/-/postgres-bytea-1.0.0.tgz";
-        sha1 = "027b533c0aa890e26d172d47cf9ccecc521acd35";
-      };
-    };
-    "postgres-date-1.0.7" = {
-      name = "postgres-date";
-      packageName = "postgres-date";
-      version = "1.0.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postgres-date/-/postgres-date-1.0.7.tgz";
-        sha512 = "suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q==";
-      };
-    };
-    "postgres-interval-1.2.0" = {
-      name = "postgres-interval";
-      packageName = "postgres-interval";
-      version = "1.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postgres-interval/-/postgres-interval-1.2.0.tgz";
-        sha512 = "9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==";
-      };
-    };
-    "prebuild-install-6.1.4" = {
-      name = "prebuild-install";
-      packageName = "prebuild-install";
-      version = "6.1.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/prebuild-install/-/prebuild-install-6.1.4.tgz";
-        sha512 = "Z4vpywnK1lBg+zdPCVCsKq0xO66eEV9rWo2zrROGGiRS4JtueBOdlB1FnY8lcy7JsUud/Q3ijUxyWN26Ika0vQ==";
-      };
-    };
-    "prelude-ls-1.2.1" = {
-      name = "prelude-ls";
-      packageName = "prelude-ls";
-      version = "1.2.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz";
-        sha512 = "vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==";
-      };
-    };
-    "process-nextick-args-2.0.1" = {
-      name = "process-nextick-args";
-      packageName = "process-nextick-args";
-      version = "2.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz";
-        sha512 = "3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==";
-      };
-    };
-    "progress-2.0.3" = {
-      name = "progress";
-      packageName = "progress";
-      version = "2.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz";
-        sha512 = "7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==";
-      };
-    };
-    "prom-client-13.1.0" = {
-      name = "prom-client";
-      packageName = "prom-client";
-      version = "13.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/prom-client/-/prom-client-13.1.0.tgz";
-        sha512 = "jT9VccZCWrJWXdyEtQddCDszYsiuWj5T0ekrPszi/WEegj3IZy6Mm09iOOVM86A4IKMWq8hZkT2dD9MaSe+sng==";
-      };
-    };
-    "prom-client-14.0.1" = {
-      name = "prom-client";
-      packageName = "prom-client";
-      version = "14.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/prom-client/-/prom-client-14.0.1.tgz";
-        sha512 = "HxTArb6fkOntQHoRGvv4qd/BkorjliiuO2uSWC2KC17MUTKYttWdDoXX/vxOhQdkoECEM9BBH0pj2l8G8kev6w==";
-      };
-    };
-    "proxy-addr-2.0.6" = {
-      name = "proxy-addr";
-      packageName = "proxy-addr";
-      version = "2.0.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz";
-        sha512 = "dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==";
-      };
-    };
-    "psl-1.8.0" = {
-      name = "psl";
-      packageName = "psl";
-      version = "1.8.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz";
-        sha512 = "RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==";
-      };
-    };
-    "pump-3.0.0" = {
-      name = "pump";
-      packageName = "pump";
-      version = "3.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz";
-        sha512 = "LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==";
-      };
-    };
-    "punycode-2.1.1" = {
-      name = "punycode";
-      packageName = "punycode";
-      version = "2.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz";
-        sha512 = "XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==";
-      };
-    };
-    "qs-6.10.1" = {
-      name = "qs";
-      packageName = "qs";
-      version = "6.10.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz";
-        sha512 = "M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==";
-      };
-    };
-    "qs-6.5.2" = {
-      name = "qs";
-      packageName = "qs";
-      version = "6.5.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz";
-        sha512 = "N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==";
-      };
-    };
-    "qs-6.7.0" = {
-      name = "qs";
-      packageName = "qs";
-      version = "6.7.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz";
-        sha512 = "VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==";
-      };
-    };
-    "queue-microtask-1.2.3" = {
-      name = "queue-microtask";
-      packageName = "queue-microtask";
-      version = "1.2.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz";
-        sha512 = "NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==";
-      };
-    };
-    "randombytes-2.0.3" = {
-      name = "randombytes";
-      packageName = "randombytes";
-      version = "2.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/randombytes/-/randombytes-2.0.3.tgz";
-        sha1 = "674c99760901c3c4112771a31e521dc349cc09ec";
-      };
-    };
-    "randombytes-2.1.0" = {
-      name = "randombytes";
-      packageName = "randombytes";
-      version = "2.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz";
-        sha512 = "vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==";
-      };
-    };
-    "randomstring-1.2.1" = {
-      name = "randomstring";
-      packageName = "randomstring";
-      version = "1.2.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/randomstring/-/randomstring-1.2.1.tgz";
-        sha512 = "eMnfell9XuU3jfCx3f4xCaFAt0YMFPZhx9R3PSStmLarDKg5j5vivqKhf/8pvG+VX/YkxsckHK/VPUrKa5V07A==";
-      };
-    };
-    "range-parser-1.2.1" = {
-      name = "range-parser";
-      packageName = "range-parser";
-      version = "1.2.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz";
-        sha512 = "Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==";
-      };
-    };
-    "raw-body-2.4.0" = {
-      name = "raw-body";
-      packageName = "raw-body";
-      version = "2.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz";
-        sha512 = "4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==";
-      };
-    };
-    "rc-1.2.8" = {
-      name = "rc";
-      packageName = "rc";
-      version = "1.2.8";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz";
-        sha512 = "y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==";
-      };
-    };
-    "readable-stream-2.3.7" = {
-      name = "readable-stream";
-      packageName = "readable-stream";
-      version = "2.3.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz";
-        sha512 = "Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==";
-      };
-    };
-    "readable-stream-3.6.0" = {
-      name = "readable-stream";
-      packageName = "readable-stream";
-      version = "3.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz";
-        sha512 = "BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==";
-      };
-    };
-    "readdirp-3.6.0" = {
-      name = "readdirp";
-      packageName = "readdirp";
-      version = "3.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz";
-        sha512 = "hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==";
-      };
-    };
-    "regenerator-runtime-0.13.9" = {
-      name = "regenerator-runtime";
-      packageName = "regenerator-runtime";
-      version = "0.13.9";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz";
-        sha512 = "p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==";
-      };
-    };
-    "regexpp-3.2.0" = {
-      name = "regexpp";
-      packageName = "regexpp";
-      version = "3.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz";
-        sha512 = "pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==";
-      };
-    };
-    "regextras-0.8.0" = {
-      name = "regextras";
-      packageName = "regextras";
-      version = "0.8.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/regextras/-/regextras-0.8.0.tgz";
-        sha512 = "k519uI04Z3SaY0fLX843MRXnDeG2+vHOFsyhiPZvNLe7r8rD2YNRjq4BQLZZ0oAr2NrtvZlICsXysGNFPGa3CQ==";
-      };
-    };
-    "request-2.88.2" = {
-      name = "request";
-      packageName = "request";
-      version = "2.88.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/request/-/request-2.88.2.tgz";
-        sha512 = "MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==";
-      };
-    };
-    "request-promise-4.2.6" = {
-      name = "request-promise";
-      packageName = "request-promise";
-      version = "4.2.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/request-promise/-/request-promise-4.2.6.tgz";
-        sha512 = "HCHI3DJJUakkOr8fNoCc73E5nU5bqITjOYFMDrKHYOXWXrgD/SBaC7LjwuPymUprRyuF06UK7hd/lMHkmUXglQ==";
-      };
-    };
-    "request-promise-core-1.1.4" = {
-      name = "request-promise-core";
-      packageName = "request-promise-core";
-      version = "1.1.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz";
-        sha512 = "TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==";
-      };
-    };
-    "require-directory-2.1.1" = {
-      name = "require-directory";
-      packageName = "require-directory";
-      version = "2.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz";
-        sha1 = "8c64ad5fd30dab1c976e2344ffe7f792a6a6df42";
-      };
-    };
-    "resolve-from-4.0.0" = {
-      name = "resolve-from";
-      packageName = "resolve-from";
-      version = "4.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz";
-        sha512 = "pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==";
-      };
-    };
-    "retry-0.13.1" = {
-      name = "retry";
-      packageName = "retry";
-      version = "0.13.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz";
-        sha512 = "XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==";
-      };
-    };
-    "reusify-1.0.4" = {
-      name = "reusify";
-      packageName = "reusify";
-      version = "1.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz";
-        sha512 = "U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==";
-      };
-    };
-    "rimraf-3.0.2" = {
-      name = "rimraf";
-      packageName = "rimraf";
-      version = "3.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz";
-        sha512 = "JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==";
-      };
-    };
-    "run-parallel-1.2.0" = {
-      name = "run-parallel";
-      packageName = "run-parallel";
-      version = "1.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz";
-        sha512 = "5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==";
-      };
-    };
-    "safe-buffer-5.1.2" = {
-      name = "safe-buffer";
-      packageName = "safe-buffer";
-      version = "5.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz";
-        sha512 = "Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==";
-      };
-    };
-    "safe-buffer-5.2.1" = {
-      name = "safe-buffer";
-      packageName = "safe-buffer";
-      version = "5.2.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz";
-        sha512 = "rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==";
-      };
-    };
-    "safer-buffer-2.1.2" = {
-      name = "safer-buffer";
-      packageName = "safer-buffer";
-      version = "2.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz";
-        sha512 = "YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==";
-      };
-    };
-    "sanitize-html-2.5.1" = {
-      name = "sanitize-html";
-      packageName = "sanitize-html";
-      version = "2.5.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.5.1.tgz";
-        sha512 = "hUITPitQk+eFNLtr4dEkaaiAJndG2YE87IOpcfBSL1XdklWgwcNDJdr9Ppe8QKL/C3jFt1xH/Mbj20e0GZQOfg==";
-      };
-    };
-    "semver-5.7.1" = {
-      name = "semver";
-      packageName = "semver";
-      version = "5.7.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz";
-        sha512 = "sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==";
-      };
-    };
-    "semver-7.3.5" = {
-      name = "semver";
-      packageName = "semver";
-      version = "7.3.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz";
-        sha512 = "PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==";
-      };
-    };
-    "send-0.17.1" = {
-      name = "send";
-      packageName = "send";
-      version = "0.17.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/send/-/send-0.17.1.tgz";
-        sha512 = "BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==";
-      };
-    };
-    "serialize-javascript-6.0.0" = {
-      name = "serialize-javascript";
-      packageName = "serialize-javascript";
-      version = "6.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz";
-        sha512 = "Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==";
-      };
-    };
-    "serve-static-1.14.1" = {
-      name = "serve-static";
-      packageName = "serve-static";
-      version = "1.14.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz";
-        sha512 = "JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==";
-      };
-    };
-    "set-blocking-2.0.0" = {
-      name = "set-blocking";
-      packageName = "set-blocking";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz";
-        sha1 = "045f9782d011ae9a6803ddd382b24392b3d890f7";
-      };
-    };
-    "setprototypeof-1.1.1" = {
-      name = "setprototypeof";
-      packageName = "setprototypeof";
-      version = "1.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz";
-        sha512 = "JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==";
-      };
-    };
-    "shebang-command-2.0.0" = {
-      name = "shebang-command";
-      packageName = "shebang-command";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz";
-        sha512 = "kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==";
-      };
-    };
-    "shebang-regex-3.0.0" = {
-      name = "shebang-regex";
-      packageName = "shebang-regex";
-      version = "3.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz";
-        sha512 = "7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==";
-      };
-    };
-    "side-channel-1.0.4" = {
-      name = "side-channel";
-      packageName = "side-channel";
-      version = "1.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz";
-        sha512 = "q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==";
-      };
-    };
-    "signal-exit-3.0.4" = {
-      name = "signal-exit";
-      packageName = "signal-exit";
-      version = "3.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.4.tgz";
-        sha512 = "rqYhcAnZ6d/vTPGghdrw7iumdcbXpsk1b8IG/rz+VWV51DM0p7XCtMoJ3qhPLIbp3tvyt3pKRbaaEMZYpHto8Q==";
-      };
-    };
-    "simple-concat-1.0.1" = {
-      name = "simple-concat";
-      packageName = "simple-concat";
-      version = "1.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz";
-        sha512 = "cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==";
-      };
-    };
-    "simple-get-3.1.0" = {
-      name = "simple-get";
-      packageName = "simple-get";
-      version = "3.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/simple-get/-/simple-get-3.1.0.tgz";
-        sha512 = "bCR6cP+aTdScaQCnQKbPKtJOKDp/hj9EDLJo3Nw4y1QksqaovlW/bnptB6/c1e+qmNIDHRK+oXFDdEqBT8WzUA==";
-      };
-    };
-    "simple-swizzle-0.2.2" = {
-      name = "simple-swizzle";
-      packageName = "simple-swizzle";
-      version = "0.2.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz";
-        sha1 = "a4da6b635ffcccca33f70d17cb92592de95e557a";
-      };
-    };
-    "slash-3.0.0" = {
-      name = "slash";
-      packageName = "slash";
-      version = "3.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz";
-        sha512 = "g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==";
-      };
-    };
-    "source-map-0.6.1" = {
-      name = "source-map";
-      packageName = "source-map";
-      version = "0.6.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz";
-        sha512 = "UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==";
-      };
-    };
-    "source-map-js-0.6.2" = {
-      name = "source-map-js";
-      packageName = "source-map-js";
-      version = "0.6.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/source-map-js/-/source-map-js-0.6.2.tgz";
-        sha512 = "/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==";
-      };
-    };
-    "source-map-support-0.5.19" = {
-      name = "source-map-support";
-      packageName = "source-map-support";
-      version = "0.5.19";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz";
-        sha512 = "Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==";
-      };
-    };
-    "spdx-exceptions-2.3.0" = {
-      name = "spdx-exceptions";
-      packageName = "spdx-exceptions";
-      version = "2.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz";
-        sha512 = "/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==";
-      };
-    };
-    "spdx-expression-parse-3.0.1" = {
-      name = "spdx-expression-parse";
-      packageName = "spdx-expression-parse";
-      version = "3.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz";
-        sha512 = "cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==";
-      };
-    };
-    "spdx-license-ids-3.0.7" = {
-      name = "spdx-license-ids";
-      packageName = "spdx-license-ids";
-      version = "3.0.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz";
-        sha512 = "U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==";
-      };
-    };
-    "spex-3.2.0" = {
-      name = "spex";
-      packageName = "spex";
-      version = "3.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/spex/-/spex-3.2.0.tgz";
-        sha512 = "9srjJM7NaymrpwMHvSmpDeIK5GoRMX/Tq0E8aOlDPS54dDnDUIp30DrP9SphMPEETDLzEM9+4qo+KipmbtPecg==";
-      };
-    };
-    "split2-3.2.2" = {
-      name = "split2";
-      packageName = "split2";
-      version = "3.2.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz";
-        sha512 = "9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==";
-      };
-    };
-    "sshpk-1.16.1" = {
-      name = "sshpk";
-      packageName = "sshpk";
-      version = "1.16.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz";
-        sha512 = "HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==";
-      };
-    };
-    "stack-trace-0.0.10" = {
-      name = "stack-trace";
-      packageName = "stack-trace";
-      version = "0.0.10";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz";
-        sha1 = "547c70b347e8d32b4e108ea1a2a159e5fdde19c0";
-      };
-    };
-    "statuses-1.5.0" = {
-      name = "statuses";
-      packageName = "statuses";
-      version = "1.5.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz";
-        sha1 = "161c7dac177659fd9811f43771fa99381478628c";
-      };
-    };
-    "stealthy-require-1.1.1" = {
-      name = "stealthy-require";
-      packageName = "stealthy-require";
-      version = "1.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz";
-        sha1 = "35b09875b4ff49f26a777e509b3090a3226bf24b";
-      };
-    };
-    "steno-0.4.4" = {
-      name = "steno";
-      packageName = "steno";
-      version = "0.4.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/steno/-/steno-0.4.4.tgz";
-        sha1 = "071105bdfc286e6615c0403c27e9d7b5dcb855cb";
-      };
-    };
-    "string-width-1.0.2" = {
-      name = "string-width";
-      packageName = "string-width";
-      version = "1.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz";
-        sha1 = "118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3";
-      };
-    };
-    "string-width-2.1.1" = {
-      name = "string-width";
-      packageName = "string-width";
-      version = "2.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz";
-        sha512 = "nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==";
-      };
-    };
-    "string-width-4.2.0" = {
-      name = "string-width";
-      packageName = "string-width";
-      version = "4.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz";
-        sha512 = "zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==";
-      };
-    };
-    "string_decoder-1.1.1" = {
-      name = "string_decoder";
-      packageName = "string_decoder";
-      version = "1.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz";
-        sha512 = "n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==";
-      };
-    };
-    "string_decoder-1.3.0" = {
-      name = "string_decoder";
-      packageName = "string_decoder";
-      version = "1.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz";
-        sha512 = "hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==";
-      };
-    };
-    "strip-ansi-3.0.1" = {
-      name = "strip-ansi";
-      packageName = "strip-ansi";
-      version = "3.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz";
-        sha1 = "6a385fb8853d952d5ff05d0e8aaf94278dc63dcf";
-      };
-    };
-    "strip-ansi-4.0.0" = {
-      name = "strip-ansi";
-      packageName = "strip-ansi";
-      version = "4.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz";
-        sha1 = "a8479022eb1ac368a871389b635262c505ee368f";
-      };
-    };
-    "strip-ansi-6.0.1" = {
-      name = "strip-ansi";
-      packageName = "strip-ansi";
-      version = "6.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz";
-        sha512 = "Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==";
-      };
-    };
-    "strip-json-comments-2.0.1" = {
-      name = "strip-json-comments";
-      packageName = "strip-json-comments";
-      version = "2.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz";
-        sha1 = "3c531942e908c2697c0ec344858c286c7ca0a60a";
-      };
-    };
-    "strip-json-comments-3.1.1" = {
-      name = "strip-json-comments";
-      packageName = "strip-json-comments";
-      version = "3.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz";
-        sha512 = "6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==";
-      };
-    };
-    "supports-color-7.2.0" = {
-      name = "supports-color";
-      packageName = "supports-color";
-      version = "7.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz";
-        sha512 = "qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==";
-      };
-    };
-    "supports-color-8.1.1" = {
-      name = "supports-color";
-      packageName = "supports-color";
-      version = "8.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz";
-        sha512 = "MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==";
-      };
-    };
-    "tar-6.1.11" = {
-      name = "tar";
-      packageName = "tar";
-      version = "6.1.11";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz";
-        sha512 = "an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==";
-      };
-    };
-    "tar-fs-2.1.1" = {
-      name = "tar-fs";
-      packageName = "tar-fs";
-      version = "2.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz";
-        sha512 = "V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==";
-      };
-    };
-    "tar-stream-2.2.0" = {
-      name = "tar-stream";
-      packageName = "tar-stream";
-      version = "2.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz";
-        sha512 = "ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==";
-      };
-    };
-    "tdigest-0.1.1" = {
-      name = "tdigest";
-      packageName = "tdigest";
-      version = "0.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/tdigest/-/tdigest-0.1.1.tgz";
-        sha1 = "2e3cb2c39ea449e55d1e6cd91117accca4588021";
-      };
-    };
-    "text-hex-1.0.0" = {
-      name = "text-hex";
-      packageName = "text-hex";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz";
-        sha512 = "uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==";
-      };
-    };
-    "text-table-0.2.0" = {
-      name = "text-table";
-      packageName = "text-table";
-      version = "0.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz";
-        sha1 = "7f5ee823ae805207c00af2df4a84ec3fcfa570b4";
-      };
-    };
-    "to-regex-range-5.0.1" = {
-      name = "to-regex-range";
-      packageName = "to-regex-range";
-      version = "5.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz";
-        sha512 = "65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==";
-      };
-    };
-    "toidentifier-1.0.0" = {
-      name = "toidentifier";
-      packageName = "toidentifier";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz";
-        sha512 = "yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==";
-      };
-    };
-    "tough-cookie-2.5.0" = {
-      name = "tough-cookie";
-      packageName = "tough-cookie";
-      version = "2.5.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz";
-        sha512 = "nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==";
-      };
-    };
-    "triple-beam-1.3.0" = {
-      name = "triple-beam";
-      packageName = "triple-beam";
-      version = "1.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/triple-beam/-/triple-beam-1.3.0.tgz";
-        sha512 = "XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw==";
-      };
-    };
-    "ts-node-10.1.0" = {
-      name = "ts-node";
-      packageName = "ts-node";
-      version = "10.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ts-node/-/ts-node-10.1.0.tgz";
-        sha512 = "6szn3+J9WyG2hE+5W8e0ruZrzyk1uFLYye6IGMBadnOzDh8aP7t8CbFpsfCiEx2+wMixAhjFt7lOZC4+l+WbEA==";
-      };
-    };
-    "tslib-1.14.1" = {
-      name = "tslib";
-      packageName = "tslib";
-      version = "1.14.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz";
-        sha512 = "Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==";
-      };
-    };
-    "tsutils-3.21.0" = {
-      name = "tsutils";
-      packageName = "tsutils";
-      version = "3.21.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz";
-        sha512 = "mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==";
-      };
-    };
-    "tunnel-agent-0.6.0" = {
-      name = "tunnel-agent";
-      packageName = "tunnel-agent";
-      version = "0.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz";
-        sha1 = "27a5dea06b36b04a0a9966774b290868f0fc40fd";
-      };
-    };
-    "tweetnacl-0.14.5" = {
-      name = "tweetnacl";
-      packageName = "tweetnacl";
-      version = "0.14.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz";
-        sha1 = "5ae68177f192d4456269d108afa93ff8743f4f64";
-      };
-    };
-    "type-check-0.4.0" = {
-      name = "type-check";
-      packageName = "type-check";
-      version = "0.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz";
-        sha512 = "XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==";
-      };
-    };
-    "type-detect-4.0.8" = {
-      name = "type-detect";
-      packageName = "type-detect";
-      version = "4.0.8";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz";
-        sha512 = "0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==";
-      };
-    };
-    "type-fest-0.20.2" = {
-      name = "type-fest";
-      packageName = "type-fest";
-      version = "0.20.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz";
-        sha512 = "Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==";
-      };
-    };
-    "type-is-1.6.18" = {
-      name = "type-is";
-      packageName = "type-is";
-      version = "1.6.18";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz";
-        sha512 = "TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==";
-      };
-    };
-    "typescript-4.4.3" = {
-      name = "typescript";
-      packageName = "typescript";
-      version = "4.4.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/typescript/-/typescript-4.4.3.tgz";
-        sha512 = "4xfscpisVgqqDfPaJo5vkd+Qd/ItkoagnHpufr+i2QCHBsNYp+G7UAoyFl8aPtx879u38wPV65rZ8qbGZijalA==";
-      };
-    };
-    "underscore-1.4.4" = {
-      name = "underscore";
-      packageName = "underscore";
-      version = "1.4.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz";
-        sha1 = "61a6a32010622afa07963bf325203cf12239d604";
-      };
-    };
-    "unhomoglyph-1.0.6" = {
-      name = "unhomoglyph";
-      packageName = "unhomoglyph";
-      version = "1.0.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/unhomoglyph/-/unhomoglyph-1.0.6.tgz";
-        sha512 = "7uvcWI3hWshSADBu4JpnyYbTVc7YlhF5GDW/oPD5AxIxl34k4wXR3WDkPnzLxkN32LiTCTKMQLtKVZiwki3zGg==";
-      };
-    };
-    "unpipe-1.0.0" = {
-      name = "unpipe";
-      packageName = "unpipe";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz";
-        sha1 = "b2bf4ee8514aae6165b4817829d21b2ef49904ec";
-      };
-    };
-    "uri-js-4.4.1" = {
-      name = "uri-js";
-      packageName = "uri-js";
-      version = "4.4.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz";
-        sha512 = "7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==";
-      };
-    };
-    "util-deprecate-1.0.2" = {
-      name = "util-deprecate";
-      packageName = "util-deprecate";
-      version = "1.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz";
-        sha1 = "450d4dc9fa70de732762fbd2d4a28981419a0ccf";
-      };
-    };
-    "utils-merge-1.0.1" = {
-      name = "utils-merge";
-      packageName = "utils-merge";
-      version = "1.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz";
-        sha1 = "9f95710f50a267947b2ccc124741c1028427e713";
-      };
-    };
-    "uuid-3.4.0" = {
-      name = "uuid";
-      packageName = "uuid";
-      version = "3.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz";
-        sha512 = "HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==";
-      };
-    };
-    "uuid-8.3.2" = {
-      name = "uuid";
-      packageName = "uuid";
-      version = "8.3.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz";
-        sha512 = "+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==";
-      };
-    };
-    "v8-compile-cache-2.3.0" = {
-      name = "v8-compile-cache";
-      packageName = "v8-compile-cache";
-      version = "2.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz";
-        sha512 = "l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==";
-      };
-    };
-    "vary-1.1.2" = {
-      name = "vary";
-      packageName = "vary";
-      version = "1.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz";
-        sha1 = "2299f02c6ded30d4a5961b0b9f74524a18f634fc";
-      };
-    };
-    "verror-1.10.0" = {
-      name = "verror";
-      packageName = "verror";
-      version = "1.10.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz";
-        sha1 = "3a105ca17053af55d6e270c1f8288682e18da400";
-      };
-    };
-    "which-2.0.2" = {
-      name = "which";
-      packageName = "which";
-      version = "2.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/which/-/which-2.0.2.tgz";
-        sha512 = "BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==";
-      };
-    };
-    "wide-align-1.1.3" = {
-      name = "wide-align";
-      packageName = "wide-align";
-      version = "1.1.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz";
-        sha512 = "QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==";
-      };
-    };
-    "winston-3.3.3" = {
-      name = "winston";
-      packageName = "winston";
-      version = "3.3.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/winston/-/winston-3.3.3.tgz";
-        sha512 = "oEXTISQnC8VlSAKf1KYSSd7J6IWuRPQqDdo8eoRNaYKLvwSb5+79Z3Yi1lrl6KDpU6/VWaxpakDAtb1oQ4n9aw==";
-      };
-    };
-    "winston-daily-rotate-file-4.5.5" = {
-      name = "winston-daily-rotate-file";
-      packageName = "winston-daily-rotate-file";
-      version = "4.5.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/winston-daily-rotate-file/-/winston-daily-rotate-file-4.5.5.tgz";
-        sha512 = "ds0WahIjiDhKCiMXmY799pDBW+58ByqIBtUcsqr4oDoXrAI3Zn+hbgFdUxzMfqA93OG0mPLYVMiotqTgE/WeWQ==";
-      };
-    };
-    "winston-transport-4.4.0" = {
-      name = "winston-transport";
-      packageName = "winston-transport";
-      version = "4.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/winston-transport/-/winston-transport-4.4.0.tgz";
-        sha512 = "Lc7/p3GtqtqPBYYtS6KCN3c77/2QCev51DvcJKbkFPQNoj1sinkGwLGFDxkXY9J6p9+EPnYs+D90uwbnaiURTw==";
-      };
-    };
-    "word-wrap-1.2.3" = {
-      name = "word-wrap";
-      packageName = "word-wrap";
-      version = "1.2.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz";
-        sha512 = "Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==";
-      };
-    };
-    "workerpool-6.1.5" = {
-      name = "workerpool";
-      packageName = "workerpool";
-      version = "6.1.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/workerpool/-/workerpool-6.1.5.tgz";
-        sha512 = "XdKkCK0Zqc6w3iTxLckiuJ81tiD/o5rBE/m+nXpRCB+/Sq4DqkfXZ/x0jW02DG1tGsfUGXbTJyZDP+eu67haSw==";
-      };
-    };
-    "wrap-ansi-7.0.0" = {
-      name = "wrap-ansi";
-      packageName = "wrap-ansi";
-      version = "7.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz";
-        sha512 = "YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==";
-      };
-    };
-    "wrappy-1.0.2" = {
-      name = "wrappy";
-      packageName = "wrappy";
-      version = "1.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz";
-        sha1 = "b5243d8f3ec1aa35f1364605bc0d1036e30ab69f";
-      };
-    };
-    "ws-5.2.3" = {
-      name = "ws";
-      packageName = "ws";
-      version = "5.2.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ws/-/ws-5.2.3.tgz";
-        sha512 = "jZArVERrMsKUatIdnLzqvcfydI85dvd/Fp1u/VOpfdDWQ4c9qWXe+VIeAbQ5FrDwciAkr+lzofXLz3Kuf26AOA==";
-      };
-    };
-    "xtend-4.0.2" = {
-      name = "xtend";
-      packageName = "xtend";
-      version = "4.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz";
-        sha512 = "LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==";
-      };
-    };
-    "y18n-5.0.8" = {
-      name = "y18n";
-      packageName = "y18n";
-      version = "5.0.8";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz";
-        sha512 = "0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==";
-      };
-    };
-    "yallist-4.0.0" = {
-      name = "yallist";
-      packageName = "yallist";
-      version = "4.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz";
-        sha512 = "3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==";
-      };
-    };
-    "yargs-16.2.0" = {
-      name = "yargs";
-      packageName = "yargs";
-      version = "16.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz";
-        sha512 = "D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==";
-      };
-    };
-    "yargs-17.2.1" = {
-      name = "yargs";
-      packageName = "yargs";
-      version = "17.2.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/yargs/-/yargs-17.2.1.tgz";
-        sha512 = "XfR8du6ua4K6uLGm5S6fA+FIJom/MdJcFNVY8geLlp2v8GYbOXD4EB1tPNZsRn4vBzKGMgb5DRZMeWuFc2GO8Q==";
-      };
-    };
-    "yargs-parser-20.2.4" = {
-      name = "yargs-parser";
-      packageName = "yargs-parser";
-      version = "20.2.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz";
-        sha512 = "WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==";
-      };
-    };
-    "yargs-unparser-2.0.0" = {
-      name = "yargs-unparser";
-      packageName = "yargs-unparser";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz";
-        sha512 = "7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==";
-      };
-    };
-    "yn-3.1.1" = {
-      name = "yn";
-      packageName = "yn";
-      version = "3.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz";
-        sha512 = "Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==";
-      };
-    };
-    "yocto-queue-0.1.0" = {
-      name = "yocto-queue";
-      packageName = "yocto-queue";
-      version = "0.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz";
-        sha512 = "rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==";
-      };
-    };
-  };
-  args = {
-    name = "matrix-appservice-slack";
-    packageName = "matrix-appservice-slack";
-    version = "1.11.0";
-    src = ./.;
-    dependencies = [
-      sources."@alloc/quick-lru-5.2.0"
-      sources."@babel/runtime-7.16.3"
-      sources."@dabh/diagnostics-2.0.2"
-      (sources."@es-joy/jsdoccomment-0.12.0" // {
-        dependencies = [
-          sources."comment-parser-1.2.4"
-        ];
-      })
-      (sources."@eslint/eslintrc-1.0.5" // {
-        dependencies = [
-          sources."debug-4.3.3"
-          sources."ignore-4.0.6"
-          sources."ms-2.1.2"
-        ];
-      })
-      (sources."@humanwhocodes/config-array-0.9.2" // {
-        dependencies = [
-          sources."debug-4.3.3"
-          sources."ms-2.1.2"
-        ];
-      })
-      sources."@humanwhocodes/object-schema-1.2.1"
-      sources."@matrix-org/olm-https://gitlab.matrix.org/api/v4/projects/27/packages/npm/@matrix-org/olm/-/@matrix-org/olm-3.2.4.tgz"
-      sources."@nodelib/fs.scandir-2.1.5"
-      sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.8"
-      sources."@slack/logger-2.0.0"
-      (sources."@slack/rtm-api-5.0.5" // {
-        dependencies = [
-          sources."p-queue-2.4.2"
-        ];
-      })
-      sources."@slack/types-1.10.0"
-      (sources."@slack/web-api-5.15.0" // {
-        dependencies = [
-          sources."axios-0.21.4"
-        ];
-      })
-      sources."@tsconfig/node10-1.0.8"
-      sources."@tsconfig/node12-1.0.9"
-      sources."@tsconfig/node14-1.0.1"
-      sources."@tsconfig/node16-1.0.1"
-      sources."@types/body-parser-1.19.0"
-      sources."@types/chai-4.2.21"
-      sources."@types/connect-3.4.34"
-      sources."@types/express-4.17.13"
-      sources."@types/express-serve-static-core-4.17.19"
-      sources."@types/is-stream-1.1.0"
-      sources."@types/js-yaml-4.0.2"
-      sources."@types/json-schema-7.0.9"
-      sources."@types/mime-1.3.2"
-      sources."@types/mocha-8.2.3"
-      sources."@types/nedb-1.8.12"
-      sources."@types/node-12.20.16"
-      sources."@types/node-emoji-1.8.1"
-      sources."@types/nunjucks-3.1.5"
-      sources."@types/p-queue-2.3.2"
-      sources."@types/qs-6.9.6"
-      sources."@types/randomstring-1.1.7"
-      sources."@types/range-parser-1.2.3"
-      sources."@types/retry-0.12.0"
-      sources."@types/serve-static-1.13.9"
-      sources."@types/uuid-8.3.1"
-      sources."@types/ws-7.2.6"
-      sources."@types/yargs-17.0.3"
-      sources."@types/yargs-parser-20.2.1"
-      (sources."@typescript-eslint/eslint-plugin-5.6.0" // {
-        dependencies = [
-          sources."debug-4.3.3"
-          sources."ms-2.1.2"
-        ];
-      })
-      sources."@typescript-eslint/experimental-utils-5.6.0"
-      (sources."@typescript-eslint/parser-5.6.0" // {
-        dependencies = [
-          sources."debug-4.3.3"
-          sources."ms-2.1.2"
-        ];
-      })
-      sources."@typescript-eslint/scope-manager-5.6.0"
-      sources."@typescript-eslint/types-5.6.0"
-      (sources."@typescript-eslint/typescript-estree-5.6.0" // {
-        dependencies = [
-          sources."debug-4.3.3"
-          sources."ms-2.1.2"
-        ];
-      })
-      sources."@typescript-eslint/visitor-keys-5.6.0"
-      sources."@ungap/promise-all-settled-1.1.2"
-      sources."Slackdown-git+https://Half-Shot@github.com/half-shot/slackdown.git#efd8934a3d9c3bf0064c0b217c5cf6b62ee697e4"
-      sources."a-sync-waterfall-1.0.1"
-      sources."abbrev-1.1.1"
-      sources."accepts-1.3.7"
-      sources."acorn-8.6.0"
-      sources."acorn-jsx-5.3.2"
-      sources."ajv-6.12.6"
-      sources."another-json-0.2.0"
-      sources."ansi-colors-4.1.1"
-      sources."ansi-regex-5.0.1"
-      sources."anymatch-3.1.2"
-      sources."aproba-1.2.0"
-      (sources."are-we-there-yet-1.1.7" // {
-        dependencies = [
-          sources."readable-stream-2.3.7"
-          sources."string_decoder-1.1.1"
-        ];
-      })
-      sources."arg-4.1.3"
-      sources."array-flatten-1.1.1"
-      sources."array-union-2.1.0"
-      sources."array-uniq-1.0.2"
-      sources."asap-2.0.6"
-      sources."asn1-0.2.4"
-      sources."assert-options-0.7.0"
-      sources."assert-plus-1.0.0"
-      sources."assertion-error-1.1.0"
-      sources."async-0.2.10"
-      sources."async-limiter-1.0.1"
-      sources."asynckit-0.4.0"
-      sources."aws-sign2-0.7.0"
-      sources."aws4-1.11.0"
-      sources."axios-0.26.0"
-      sources."balanced-match-1.0.2"
-      sources."base-x-3.0.9"
-      sources."base64-js-1.5.1"
-      sources."basic-auth-2.0.1"
-      sources."bcrypt-pbkdf-1.0.2"
-      sources."better-sqlite3-7.4.3"
-      sources."binary-extensions-2.2.0"
-      sources."binary-search-tree-0.2.5"
-      sources."bindings-1.5.0"
-      sources."bintrees-1.0.1"
-      (sources."bl-4.1.0" // {
-        dependencies = [
-          sources."inherits-2.0.4"
-        ];
-      })
-      sources."bluebird-3.7.2"
-      sources."body-parser-1.19.0"
-      sources."brace-expansion-1.1.11"
-      sources."braces-3.0.2"
-      sources."browser-request-0.3.3"
-      sources."browser-stdout-1.3.1"
-      sources."bs58-4.0.1"
-      sources."buffer-5.7.1"
-      sources."buffer-from-1.1.1"
-      sources."buffer-writer-2.0.0"
-      sources."bytes-3.1.0"
-      sources."call-bind-1.0.2"
-      sources."callsites-3.1.0"
-      sources."camelcase-6.2.0"
-      sources."caseless-0.12.0"
-      sources."chai-4.3.4"
-      (sources."chalk-4.1.0" // {
-        dependencies = [
-          sources."ansi-styles-4.3.0"
-          sources."color-convert-2.0.1"
-          sources."color-name-1.1.4"
-          sources."has-flag-4.0.0"
-          sources."supports-color-7.2.0"
-        ];
-      })
-      sources."check-error-1.0.2"
-      sources."chokidar-3.5.2"
-      sources."chownr-2.0.0"
-      sources."cliui-7.0.4"
-      sources."code-point-at-1.1.0"
-      sources."color-3.0.0"
-      sources."color-convert-1.9.3"
-      sources."color-name-1.1.3"
-      sources."color-string-1.6.0"
-      sources."colorette-1.4.0"
-      sources."colors-1.3.3"
-      sources."colorspace-1.1.2"
-      sources."combined-stream-1.0.8"
-      sources."commander-5.1.0"
-      sources."comment-parser-1.3.0"
-      sources."concat-map-0.0.1"
-      sources."console-control-strings-1.1.0"
-      sources."content-disposition-0.5.3"
-      sources."content-type-1.0.4"
-      sources."cookie-0.4.0"
-      sources."cookie-signature-1.0.6"
-      sources."core-util-is-1.0.2"
-      sources."create-require-1.1.1"
-      sources."cross-spawn-7.0.3"
-      sources."dashdash-1.14.1"
-      sources."debug-2.6.9"
-      sources."decamelize-4.0.0"
-      sources."decompress-response-4.2.1"
-      sources."deep-eql-3.0.1"
-      sources."deep-extend-0.6.0"
-      sources."deep-is-0.1.3"
-      sources."deepmerge-4.2.2"
-      sources."delayed-stream-1.0.0"
-      sources."delegates-1.0.0"
-      sources."depd-1.1.2"
-      sources."destroy-1.0.4"
-      sources."detect-libc-1.0.3"
-      sources."diff-4.0.2"
-      sources."dir-glob-3.0.1"
-      sources."doctrine-3.0.0"
-      (sources."dom-serializer-1.3.2" // {
-        dependencies = [
-          sources."domhandler-4.2.2"
-        ];
-      })
-      sources."domelementtype-2.2.0"
-      sources."domhandler-3.3.0"
-      (sources."domutils-2.8.0" // {
-        dependencies = [
-          sources."domhandler-4.2.2"
-        ];
-      })
-      sources."ecc-jsbn-0.1.2"
-      sources."ee-first-1.1.1"
-      sources."emoji-regex-8.0.0"
-      sources."enabled-2.0.0"
-      sources."encodeurl-1.0.2"
-      sources."end-of-stream-1.4.4"
-      sources."enquirer-2.3.6"
-      sources."entities-2.2.0"
-      sources."escalade-3.1.1"
-      sources."escape-html-1.0.3"
-      sources."escape-string-regexp-4.0.0"
-      (sources."eslint-8.4.1" // {
-        dependencies = [
-          sources."debug-4.3.3"
-          sources."eslint-scope-7.1.0"
-          sources."estraverse-5.3.0"
-          sources."glob-parent-6.0.2"
-          sources."ignore-4.0.6"
-          sources."ms-2.1.2"
-        ];
-      })
-      (sources."eslint-plugin-jsdoc-37.1.0" // {
-        dependencies = [
-          sources."debug-4.3.3"
-          sources."ms-2.1.2"
-        ];
-      })
-      sources."eslint-plugin-prefer-arrow-1.2.3"
-      sources."eslint-scope-5.1.1"
-      (sources."eslint-utils-3.0.0" // {
-        dependencies = [
-          sources."eslint-visitor-keys-2.1.0"
-        ];
-      })
-      sources."eslint-visitor-keys-3.1.0"
-      sources."espree-9.2.0"
-      (sources."esquery-1.4.0" // {
-        dependencies = [
-          sources."estraverse-5.2.0"
-        ];
-      })
-      (sources."esrecurse-4.3.0" // {
-        dependencies = [
-          sources."estraverse-5.3.0"
-        ];
-      })
-      sources."estraverse-4.3.0"
-      sources."esutils-2.0.3"
-      sources."etag-1.8.1"
-      sources."eventemitter3-3.1.2"
-      sources."expand-template-2.0.3"
-      sources."express-4.17.1"
-      sources."extend-3.0.2"
-      sources."extsprintf-1.3.0"
-      sources."fast-deep-equal-3.1.3"
-      sources."fast-glob-3.2.7"
-      sources."fast-json-stable-stringify-2.1.0"
-      sources."fast-levenshtein-2.0.6"
-      sources."fast-safe-stringify-2.0.6"
-      sources."fastq-1.13.0"
-      sources."file-entry-cache-6.0.1"
-      sources."file-stream-rotator-0.5.7"
-      sources."file-uri-to-path-1.0.0"
-      sources."fill-range-7.0.1"
-      sources."finalhandler-1.1.2"
-      sources."find-up-5.0.0"
-      sources."finity-0.5.4"
-      sources."flat-5.0.2"
-      sources."flat-cache-3.0.4"
-      sources."flatted-3.1.1"
-      sources."fn.name-1.1.0"
-      sources."follow-redirects-1.14.8"
-      sources."forever-agent-0.6.1"
-      sources."form-data-2.5.1"
-      sources."forwarded-0.1.2"
-      sources."fresh-0.5.2"
-      sources."fs-constants-1.0.0"
-      sources."fs-minipass-2.1.0"
-      sources."fs.realpath-1.0.0"
-      sources."fsevents-2.3.2"
-      sources."function-bind-1.1.1"
-      sources."functional-red-black-tree-1.0.1"
-      (sources."gauge-2.7.4" // {
-        dependencies = [
-          sources."ansi-regex-2.1.1"
-          sources."is-fullwidth-code-point-1.0.0"
-          sources."string-width-1.0.2"
-          sources."strip-ansi-3.0.1"
-        ];
-      })
-      sources."generate-function-2.3.1"
-      sources."generate-object-property-1.2.0"
-      sources."get-caller-file-2.0.5"
-      sources."get-func-name-2.0.0"
-      sources."get-intrinsic-1.1.1"
-      sources."getpass-0.1.7"
-      sources."github-from-package-0.0.0"
-      sources."glob-7.1.7"
-      sources."glob-parent-5.1.2"
-      sources."glob-to-regexp-0.4.1"
-      sources."globals-13.12.0"
-      sources."globby-11.0.4"
-      sources."graceful-fs-4.2.8"
-      sources."growl-1.10.5"
-      sources."har-schema-2.0.0"
-      sources."har-validator-5.1.5"
-      sources."has-1.0.3"
-      sources."has-symbols-1.0.2"
-      sources."has-unicode-2.0.1"
-      sources."hash.js-1.1.7"
-      sources."he-1.2.0"
-      sources."html-to-text-6.0.0"
-      sources."htmlencode-0.0.4"
-      sources."htmlparser2-4.1.0"
-      sources."http-errors-1.7.2"
-      sources."http-signature-1.2.0"
-      sources."iconv-lite-0.4.24"
-      sources."ieee754-1.2.1"
-      sources."ignore-5.1.9"
-      sources."immediate-3.0.6"
-      sources."import-fresh-3.3.0"
-      sources."imurmurhash-0.1.4"
-      sources."inflight-1.0.6"
-      sources."inherits-2.0.3"
-      sources."ini-1.3.8"
-      sources."ipaddr.js-1.9.1"
-      sources."is-arrayish-0.3.2"
-      sources."is-binary-path-2.1.0"
-      sources."is-extglob-2.1.1"
-      sources."is-fullwidth-code-point-3.0.0"
-      sources."is-glob-4.0.3"
-      sources."is-my-ip-valid-1.0.0"
-      sources."is-my-json-valid-2.20.6"
-      sources."is-number-7.0.0"
-      sources."is-plain-obj-2.1.0"
-      sources."is-plain-object-5.0.0"
-      sources."is-promise-2.2.2"
-      sources."is-property-1.0.2"
-      sources."is-stream-1.1.0"
-      sources."is-typedarray-1.0.0"
-      sources."is-unicode-supported-0.1.0"
-      sources."isarray-1.0.0"
-      sources."isexe-2.0.0"
-      sources."isstream-0.1.2"
-      (sources."js-yaml-4.1.0" // {
-        dependencies = [
-          sources."argparse-2.0.1"
-        ];
-      })
-      sources."jsbn-0.1.1"
-      sources."jsdoc-type-pratt-parser-2.0.0"
-      sources."json-schema-0.2.3"
-      sources."json-schema-traverse-0.4.1"
-      sources."json-stable-stringify-without-jsonify-1.0.1"
-      sources."json-stringify-safe-5.0.1"
-      sources."jsonpointer-5.0.0"
-      sources."jsprim-1.4.1"
-      sources."klona-2.0.4"
-      sources."kuler-2.0.0"
-      sources."levn-0.4.1"
-      sources."lie-3.1.1"
-      sources."localforage-1.7.3"
-      sources."locate-path-6.0.0"
-      sources."lodash-4.17.21"
-      sources."lodash.merge-4.6.2"
-      sources."lodash.toarray-4.4.0"
-      sources."log-symbols-4.1.0"
-      (sources."logform-2.2.0" // {
-        dependencies = [
-          sources."fecha-4.2.0"
-          sources."ms-2.1.2"
-        ];
-      })
-      sources."loglevel-1.8.0"
-      sources."lowdb-1.0.0"
-      sources."lru-cache-6.0.0"
-      sources."make-error-1.3.6"
-      sources."matrix-appservice-0.10.0"
-      (sources."matrix-appservice-bridge-3.2.0" // {
-        dependencies = [
-          sources."prom-client-14.0.1"
-        ];
-      })
-      (sources."matrix-bot-sdk-0.6.0-beta.2" // {
-        dependencies = [
-          sources."mkdirp-1.0.4"
-        ];
-      })
-      (sources."matrix-js-sdk-12.5.0" // {
-        dependencies = [
-          sources."qs-6.10.1"
-        ];
-      })
-      sources."media-typer-0.3.0"
-      sources."merge-descriptors-1.0.1"
-      sources."merge2-1.4.1"
-      sources."methods-1.1.2"
-      sources."micromatch-4.0.4"
-      sources."mime-1.6.0"
-      sources."mime-db-1.40.0"
-      sources."mime-types-2.1.24"
-      sources."mimic-response-2.1.0"
-      sources."minimalistic-assert-1.0.1"
-      sources."minimatch-3.0.4"
-      sources."minimist-1.2.5"
-      sources."minipass-3.1.5"
-      sources."minizlib-2.1.2"
-      sources."mkdirp-0.5.5"
-      sources."mkdirp-classic-0.5.3"
-      (sources."mocha-9.0.2" // {
-        dependencies = [
-          (sources."debug-4.3.1" // {
-            dependencies = [
-              sources."ms-2.1.2"
-            ];
-          })
-          sources."diff-5.0.0"
-          sources."has-flag-4.0.0"
-          sources."ms-2.1.3"
-          sources."supports-color-8.1.1"
-          sources."yargs-16.2.0"
-        ];
-      })
-      sources."moment-2.29.1"
-      (sources."morgan-1.10.0" // {
-        dependencies = [
-          sources."depd-2.0.0"
-        ];
-      })
-      sources."ms-2.0.0"
-      sources."nanoid-3.1.23"
-      sources."napi-build-utils-1.0.2"
-      sources."natural-compare-1.4.0"
-      sources."nedb-1.8.0"
-      sources."negotiator-0.6.2"
-      (sources."node-abi-2.30.1" // {
-        dependencies = [
-          sources."semver-5.7.1"
-        ];
-      })
-      sources."node-emoji-1.10.0"
-      sources."nopt-5.0.0"
-      sources."normalize-path-3.0.0"
-      sources."npmlog-4.1.2"
-      sources."number-is-nan-1.0.1"
-      sources."nunjucks-3.2.3"
-      sources."oauth-sign-0.9.0"
-      sources."object-assign-4.1.1"
-      sources."object-hash-2.1.1"
-      sources."object-inspect-1.11.0"
-      sources."on-finished-2.3.0"
-      sources."on-headers-1.0.2"
-      sources."once-1.4.0"
-      sources."one-time-1.0.0"
-      sources."optionator-0.9.1"
-      sources."p-cancelable-1.1.0"
-      sources."p-finally-1.0.0"
-      sources."p-limit-3.1.0"
-      sources."p-locate-5.0.0"
-      (sources."p-queue-6.6.2" // {
-        dependencies = [
-          sources."eventemitter3-4.0.7"
-        ];
-      })
-      sources."p-retry-4.6.1"
-      sources."p-timeout-3.2.0"
-      sources."packet-reader-1.0.0"
-      sources."parent-module-1.0.1"
-      sources."parse-srcset-1.0.2"
-      sources."parseurl-1.3.3"
-      sources."path-exists-4.0.0"
-      sources."path-is-absolute-1.0.1"
-      sources."path-key-3.1.1"
-      sources."path-to-regexp-0.1.7"
-      sources."path-type-4.0.0"
-      sources."pathval-1.1.1"
-      sources."performance-now-2.1.0"
-      sources."pg-8.7.1"
-      sources."pg-connection-string-2.5.0"
-      sources."pg-int8-1.0.1"
-      sources."pg-minify-1.6.2"
-      sources."pg-pool-3.4.1"
-      sources."pg-promise-10.11.1"
-      sources."pg-protocol-1.5.0"
-      sources."pg-types-2.2.0"
-      sources."pgpass-1.0.4"
-      sources."picomatch-2.2.3"
-      sources."pify-3.0.0"
-      sources."postcss-8.3.6"
-      sources."postgres-array-2.0.0"
-      sources."postgres-bytea-1.0.0"
-      sources."postgres-date-1.0.7"
-      sources."postgres-interval-1.2.0"
-      sources."prebuild-install-6.1.4"
-      sources."prelude-ls-1.2.1"
-      sources."process-nextick-args-2.0.1"
-      sources."progress-2.0.3"
-      sources."prom-client-13.1.0"
-      sources."proxy-addr-2.0.6"
-      sources."psl-1.8.0"
-      sources."pump-3.0.0"
-      sources."punycode-2.1.1"
-      sources."qs-6.7.0"
-      sources."queue-microtask-1.2.3"
-      sources."randombytes-2.0.3"
-      sources."randomstring-1.2.1"
-      sources."range-parser-1.2.1"
-      sources."raw-body-2.4.0"
-      (sources."rc-1.2.8" // {
-        dependencies = [
-          sources."strip-json-comments-2.0.1"
-        ];
-      })
-      sources."readable-stream-3.6.0"
-      sources."readdirp-3.6.0"
-      sources."regenerator-runtime-0.13.9"
-      sources."regexpp-3.2.0"
-      sources."regextras-0.8.0"
-      (sources."request-2.88.2" // {
-        dependencies = [
-          sources."form-data-2.3.3"
-          sources."qs-6.5.2"
-          sources."uuid-3.4.0"
-        ];
-      })
-      sources."request-promise-4.2.6"
-      sources."request-promise-core-1.1.4"
-      sources."require-directory-2.1.1"
-      sources."resolve-from-4.0.0"
-      sources."retry-0.13.1"
-      sources."reusify-1.0.4"
-      sources."rimraf-3.0.2"
-      sources."run-parallel-1.2.0"
-      sources."safe-buffer-5.1.2"
-      sources."safer-buffer-2.1.2"
-      (sources."sanitize-html-2.5.1" // {
-        dependencies = [
-          sources."domhandler-4.2.2"
-          sources."htmlparser2-6.1.0"
-        ];
-      })
-      sources."semver-7.3.5"
-      (sources."send-0.17.1" // {
-        dependencies = [
-          sources."ms-2.1.1"
-        ];
-      })
-      (sources."serialize-javascript-6.0.0" // {
-        dependencies = [
-          sources."randombytes-2.1.0"
-        ];
-      })
-      sources."serve-static-1.14.1"
-      sources."set-blocking-2.0.0"
-      sources."setprototypeof-1.1.1"
-      sources."shebang-command-2.0.0"
-      sources."shebang-regex-3.0.0"
-      sources."side-channel-1.0.4"
-      sources."signal-exit-3.0.4"
-      sources."simple-concat-1.0.1"
-      sources."simple-get-3.1.0"
-      sources."simple-swizzle-0.2.2"
-      sources."slash-3.0.0"
-      sources."source-map-0.6.1"
-      sources."source-map-js-0.6.2"
-      sources."source-map-support-0.5.19"
-      sources."spdx-exceptions-2.3.0"
-      sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.7"
-      sources."spex-3.2.0"
-      sources."split2-3.2.2"
-      sources."sshpk-1.16.1"
-      sources."stack-trace-0.0.10"
-      sources."statuses-1.5.0"
-      sources."stealthy-require-1.1.1"
-      sources."steno-0.4.4"
-      sources."string-width-4.2.0"
-      (sources."string_decoder-1.3.0" // {
-        dependencies = [
-          sources."safe-buffer-5.2.1"
-        ];
-      })
-      sources."strip-ansi-6.0.1"
-      sources."strip-json-comments-3.1.1"
-      (sources."tar-6.1.11" // {
-        dependencies = [
-          sources."mkdirp-1.0.4"
-        ];
-      })
-      (sources."tar-fs-2.1.1" // {
-        dependencies = [
-          sources."chownr-1.1.4"
-        ];
-      })
-      sources."tar-stream-2.2.0"
-      sources."tdigest-0.1.1"
-      sources."text-hex-1.0.0"
-      sources."text-table-0.2.0"
-      sources."to-regex-range-5.0.1"
-      sources."toidentifier-1.0.0"
-      sources."tough-cookie-2.5.0"
-      sources."triple-beam-1.3.0"
-      sources."ts-node-10.1.0"
-      sources."tslib-1.14.1"
-      sources."tsutils-3.21.0"
-      sources."tunnel-agent-0.6.0"
-      sources."tweetnacl-0.14.5"
-      sources."type-check-0.4.0"
-      sources."type-detect-4.0.8"
-      sources."type-fest-0.20.2"
-      sources."type-is-1.6.18"
-      sources."typescript-4.4.3"
-      sources."underscore-1.4.4"
-      sources."unhomoglyph-1.0.6"
-      sources."unpipe-1.0.0"
-      sources."uri-js-4.4.1"
-      sources."util-deprecate-1.0.2"
-      sources."utils-merge-1.0.1"
-      sources."uuid-8.3.2"
-      sources."v8-compile-cache-2.3.0"
-      sources."vary-1.1.2"
-      sources."verror-1.10.0"
-      sources."which-2.0.2"
-      (sources."wide-align-1.1.3" // {
-        dependencies = [
-          sources."ansi-regex-3.0.0"
-          sources."is-fullwidth-code-point-2.0.0"
-          sources."string-width-2.1.1"
-          sources."strip-ansi-4.0.0"
-        ];
-      })
-      (sources."winston-3.3.3" // {
-        dependencies = [
-          sources."async-3.2.0"
-          sources."is-stream-2.0.0"
-        ];
-      })
-      sources."winston-daily-rotate-file-4.5.5"
-      (sources."winston-transport-4.4.0" // {
-        dependencies = [
-          sources."readable-stream-2.3.7"
-          sources."string_decoder-1.1.1"
-        ];
-      })
-      sources."word-wrap-1.2.3"
-      sources."workerpool-6.1.5"
-      (sources."wrap-ansi-7.0.0" // {
-        dependencies = [
-          sources."ansi-styles-4.3.0"
-          sources."color-convert-2.0.1"
-          sources."color-name-1.1.4"
-        ];
-      })
-      sources."wrappy-1.0.2"
-      sources."ws-5.2.3"
-      sources."xtend-4.0.2"
-      sources."y18n-5.0.8"
-      sources."yallist-4.0.0"
-      sources."yargs-17.2.1"
-      sources."yargs-parser-20.2.4"
-      sources."yargs-unparser-2.0.0"
-      sources."yn-3.1.1"
-      sources."yocto-queue-0.1.0"
-    ];
-    buildInputs = globalBuildInputs;
-    meta = {
-      description = "A Matrix <--> Slack bridge";
-      homepage = "https://github.com/matrix-org/matrix-appservice-slack#readme";
-      license = "Apache-2.0";
-    };
-    production = false;
-    bypassCache = true;
-    reconstructLock = false;
-  };
-in
-{
-  args = args;
-  sources = sources;
-  tarball = nodeEnv.buildNodeSourceDist args;
-  package = nodeEnv.buildNodePackage args;
-  shell = nodeEnv.buildNodeShell args;
-  nodeDependencies = nodeEnv.buildNodeDependencies (lib.overrideExisting args {
-    src = stdenv.mkDerivation {
-      name = args.name + "-package-json";
-      src = nix-gitignore.gitignoreSourcePure [
-        "*"
-        "!package.json"
-        "!package-lock.json"
-      ] args.src;
-      dontBuild = true;
-      installPhase = "mkdir -p $out; cp -r ./* $out;";
-    };
-  });
-}
diff --git a/pkgs/servers/matrix-synapse/matrix-appservice-slack/package.json b/pkgs/servers/matrix-synapse/matrix-appservice-slack/package.json
new file mode 100644
index 0000000000000..1c440ad9279ef
--- /dev/null
+++ b/pkgs/servers/matrix-synapse/matrix-appservice-slack/package.json
@@ -0,0 +1,77 @@
+{
+  "name": "matrix-appservice-slack",
+  "version": "2.0.1",
+  "description": "A Matrix <--> Slack bridge",
+  "engines": {
+    "node": ">=16 <=18"
+  },
+  "main": "app.js",
+  "scripts": {
+    "prepare": "yarn build",
+    "start": "node ./lib/app.js",
+    "build": "tsc --build",
+    "test": "yarn test:unit && yarn test:integration",
+    "test:unit": "mocha --require ts-node/register --recursive tests/unit/*.ts",
+    "test:integration": "mocha --exit --reporter list --ui bdd --require ts-node/register --recursive tests/integration/*.ts",
+    "test:postgres": "SLACKBRIDGE_TEST_ENABLEPG=yes mocha --reporter list --ui bdd --require ts-node/register --recursive tests/integration/PgDatastoreTest.ts",
+    "lint": "eslint -c .eslintrc.js ./src"
+  },
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/matrix-org/matrix-appservice-slack.git"
+  },
+  "keywords": [
+    "matrix-org",
+    "slack"
+  ],
+  "author": "Matrix.org",
+  "license": "Apache-2.0",
+  "bugs": {
+    "url": "https://github.com/matrix-org/matrix-appservice-slack/issues"
+  },
+  "homepage": "https://github.com/matrix-org/matrix-appservice-slack#readme",
+  "dependencies": {
+    "@alloc/quick-lru": "^5.2.0",
+    "@slack/logger": "^3.0.0",
+    "@slack/rtm-api": "^6.0.0",
+    "@slack/web-api": "^6.7.2",
+    "Slackdown": "git+https://Half-Shot@github.com/half-shot/slackdown.git",
+    "axios": "^0.27.2",
+    "escape-string-regexp": "^4.0.0",
+    "matrix-appservice-bridge": "^5.1.0",
+    "minimist": "^1.2.6",
+    "nedb": "^1.8.0",
+    "node-emoji": "^1.10.0",
+    "nunjucks": "^3.2.3",
+    "p-queue": "^6.0.0",
+    "pg-promise": "^10.11.1",
+    "randomstring": "^1.2.1",
+    "uuid": "^8.3.2",
+    "yargs": "17.5.1"
+  },
+  "devDependencies": {
+    "@tsconfig/node16": "^1.0.3",
+    "@types/chai": "^4.2.21",
+    "@types/js-yaml": "^4.0.2",
+    "@types/mocha": "^9.1.1",
+    "@types/nedb": "^1.8.12",
+    "@types/node": "^18.6.1",
+    "@types/node-emoji": "^1.8.1",
+    "@types/nunjucks": "^3.1.5",
+    "@types/randomstring": "^1.1.7",
+    "@types/uuid": "^8.3.1",
+    "@types/yargs": "17.0.10",
+    "@typescript-eslint/eslint-plugin": "^5.31.0",
+    "@typescript-eslint/parser": "^5.31.0",
+    "chai": "^4.3.4",
+    "eslint": "^8.20.0",
+    "eslint-plugin-jsdoc": "^39.3.3",
+    "eslint-plugin-prefer-arrow": "^1.2.3",
+    "js-yaml": "^4.1.0",
+    "mocha": "^10.0.0",
+    "prom-client": "^14.0.1",
+    "source-map-support": "^0.5.19",
+    "ts-node": "^10.1.0",
+    "typescript": "^4.4.3"
+  }
+}
diff --git a/pkgs/servers/matrix-synapse/matrix-appservice-slack/pin.json b/pkgs/servers/matrix-synapse/matrix-appservice-slack/pin.json
new file mode 100644
index 0000000000000..306f097c97a26
--- /dev/null
+++ b/pkgs/servers/matrix-synapse/matrix-appservice-slack/pin.json
@@ -0,0 +1,5 @@
+{
+  "version": "2.0.1",
+  "srcHash": "N7EzhqKL3GiuoU2d/Y33eZhKJSCvtLDRVO40mpIBEkw=",
+  "yarnHash": "1d9kyrzcs1c54xk0yl8n3jp61l3n8dzph1d5a4daifa7ad635hv7"
+}
diff --git a/pkgs/servers/matrix-synapse/matrix-appservice-slack/update.sh b/pkgs/servers/matrix-synapse/matrix-appservice-slack/update.sh
new file mode 100755
index 0000000000000..647daae22144d
--- /dev/null
+++ b/pkgs/servers/matrix-synapse/matrix-appservice-slack/update.sh
@@ -0,0 +1,36 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -I nixpkgs=../../../../ -i bash -p nix curl jq prefetch-yarn-deps nix-prefetch-github
+
+if [ "$#" -gt 1 ] || [[ "$1" == -* ]]; then
+  echo "Regenerates packaging data for matrix-appservice-slack."
+  echo "Usage: $0 [git release tag]"
+  exit 1
+fi
+
+version="$1"
+
+set -euo pipefail
+
+if [ -z "$version" ]; then
+  version="$(curl "https://api.github.com/repos/matrix-org/matrix-appservice-slack/releases?per_page=1" | jq -r '.[0].tag_name')"
+fi
+
+src="https://raw.githubusercontent.com/matrix-org/matrix-appservice-slack/$version"
+src_hash=$(nix-prefetch-github matrix-org matrix-appservice-slack --rev ${version} | jq -r .sha256)
+
+tmpdir=$(mktemp -d)
+trap 'rm -rf "$tmpdir"' EXIT
+
+pushd $tmpdir
+curl -O "$src/yarn.lock"
+yarn_hash=$(prefetch-yarn-deps yarn.lock)
+popd
+
+curl -O "$src/package.json"
+cat > pin.json << EOF
+{
+  "version": "$version",
+  "srcHash": "$src_hash",
+  "yarnHash": "$yarn_hash"
+}
+EOF
diff --git a/pkgs/servers/minio/default.nix b/pkgs/servers/minio/default.nix
index 1a8a2b251c0e8..b7171a4bdecf6 100644
--- a/pkgs/servers/minio/default.nix
+++ b/pkgs/servers/minio/default.nix
@@ -15,16 +15,16 @@ let
 in
 buildGoModule rec {
   pname = "minio";
-  version = "2022-09-25T15-44-53Z";
+  version = "2022-10-08T20-11-00Z";
 
   src = fetchFromGitHub {
     owner = "minio";
     repo = "minio";
     rev = "RELEASE.${version}";
-    sha256 = "sha256-ygDE7oqNddC+7kIkGu3QuswQp1Mh441rHvwF2JIKOzE=";
+    sha256 = "sha256-mLyhKiCSQcGXykoGUA+alzOadyI68MNlg0WL7ko8D7c=";
   };
 
-  vendorSha256 = "sha256-nl7lQ+PnfEgEnc/g2PIpsSQH18v/YF5yw+tlIYWNP1A=";
+  vendorSha256 = "sha256-POls1yyNRdXeMgis5otcVFNf3w/x4QGKDtxVfRoQJck=";
 
   doCheck = false;
 
diff --git a/pkgs/servers/misc/gobgpd/default.nix b/pkgs/servers/misc/gobgpd/default.nix
index 3d475b81a6088..5fd62ad653e12 100644
--- a/pkgs/servers/misc/gobgpd/default.nix
+++ b/pkgs/servers/misc/gobgpd/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "gobgpd";
-  version = "3.6.0";
+  version = "3.7.0";
 
   src = fetchFromGitHub {
     owner = "osrg";
     repo = "gobgp";
     rev = "v${version}";
-    sha256 = "sha256-NJK8MW/vUZwdGIEipL/zyh24o/pu7fwQMeDxyoFdtP4=";
+    sha256 = "sha256-3Brm9pWCLCSjNE5ZACAV4K34L3oBfvT9VI4TKMXrmgY=";
   };
 
   vendorSha256 = "sha256-FxfER3THsA7NRuQKEdWQxgUN0SiNI00hGUMVD+3BaG4=";
diff --git a/pkgs/servers/monitoring/alerta/default.nix b/pkgs/servers/monitoring/alerta/default.nix
index c3758c26b253b..795ae560f0bec 100644
--- a/pkgs/servers/monitoring/alerta/default.nix
+++ b/pkgs/servers/monitoring/alerta/default.nix
@@ -14,6 +14,7 @@ python3.pkgs.buildPythonApplication rec {
   propagatedBuildInputs = with python3.pkgs; [
     bcrypt
     blinker
+    cryptography
     flask
     flask-compress
     flask-cors
diff --git a/pkgs/servers/monitoring/grafana-agent/default.nix b/pkgs/servers/monitoring/grafana-agent/default.nix
index f549d3ece33fd..60a7333fe0d9b 100644
--- a/pkgs/servers/monitoring/grafana-agent/default.nix
+++ b/pkgs/servers/monitoring/grafana-agent/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "grafana-agent";
-  version = "0.24.1";
+  version = "0.25.1";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "grafana";
     repo = "agent";
-    sha256 = "sha256-WxULVtqKxYXMWNY4l0wvTkqcDkPrlHcS70NgQhe8nzU=";
+    sha256 = "sha256-VbcWYH3eSKfYlSoN9HpxvhtvW36M1aYn9nLDfEbIzTY=";
   };
 
-  vendorSha256 = "sha256-hdo8uiVJAMMPo1N8kLDFPSbyTr5WxNKtq8E7pj6Plak=";
+  vendorSha256 = "sha256-VFTz9+nf4qH8bbFijpT1uIHSAhJy/aMMlIjkvnzzAD4=";
 
   tags = [
     "nonetwork"
diff --git a/pkgs/servers/monitoring/grafana/default.nix b/pkgs/servers/monitoring/grafana/default.nix
index db5465285867f..3e9c9150f03cf 100644
--- a/pkgs/servers/monitoring/grafana/default.nix
+++ b/pkgs/servers/monitoring/grafana/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "grafana";
-  version = "9.1.6";
+  version = "9.1.7";
 
   excludedPackages = [ "alert_webhook_listener" "clean-swagger" "release_publisher" "slow_proxy" "slow_proxy_mac" "macaron" "devenv" ];
 
@@ -10,12 +10,12 @@ buildGoModule rec {
     rev = "v${version}";
     owner = "grafana";
     repo = "grafana";
-    sha256 = "sha256-DIcKz5M1KdyCBQByt/Z8Z+LBAtjdg5VkoFYRo0x6vP8=";
+    sha256 = "sha256-dlQlzX3aGZzBOb0V6ogB8yuoC8Dt18O8nKcJAQ9bfvs=";
   };
 
   srcStatic = fetchurl {
     url = "https://dl.grafana.com/oss/release/grafana-${version}.linux-amd64.tar.gz";
-    sha256 = "sha256-ftLEnrHE36uQ/Lj6hNPlAN4KyNm4P5m3c7H8erJnkVs=";
+    sha256 = "sha256-ioXc9UfbNRz/RCdnFfaEDRxtamR8st9Wc1LQ6wdl8SE=";
   };
 
   vendorSha256 = "sha256-frY84+Tp9qVj9Xs9l0c0u1YyYywMbXO4KS0AF5mpnhQ=";
diff --git a/pkgs/servers/monitoring/icinga2/default.nix b/pkgs/servers/monitoring/icinga2/default.nix
index 55b57e90cbe19..32d9ac270a1b0 100644
--- a/pkgs/servers/monitoring/icinga2/default.nix
+++ b/pkgs/servers/monitoring/icinga2/default.nix
@@ -82,7 +82,7 @@ stdenv.mkDerivation rec {
     ''}
   '';
 
-  vim = runCommand "vim-icinga2-${version}" {} ''
+  vim = runCommand "vim-icinga2-${version}" { pname = "vim-icinga2"; } ''
     mkdir -p $out/share/vim-plugins
     cp -r "${src}/tools/syntax/vim" $out/share/vim-plugins/icinga2
   '';
diff --git a/pkgs/servers/monitoring/loki/promtail.nix b/pkgs/servers/monitoring/loki/promtail.nix
new file mode 100644
index 0000000000000..e8539ee60a32a
--- /dev/null
+++ b/pkgs/servers/monitoring/loki/promtail.nix
@@ -0,0 +1,7 @@
+{ lib, grafana-loki }:
+
+grafana-loki.overrideAttrs (o: {
+  pname = "promtail";
+  subPackages = ["clients/cmd/promtail"];
+  CGO_ENABLED = 1;
+})
diff --git a/pkgs/servers/monitoring/nagios/plugins/check_ssl_cert.nix b/pkgs/servers/monitoring/nagios/plugins/check_ssl_cert.nix
index 7fd79a6e6f8fa..b3b8871b0ff4e 100644
--- a/pkgs/servers/monitoring/nagios/plugins/check_ssl_cert.nix
+++ b/pkgs/servers/monitoring/nagios/plugins/check_ssl_cert.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "check_ssl_cert";
-  version = "2.49.0";
+  version = "2.52.0";
 
   src = fetchFromGitHub {
     owner = "matteocorti";
     repo = "check_ssl_cert";
     rev = "v${version}";
-    hash = "sha256-V6NahQvHrDna7II6GbUadiq5IBrEVTW2EQ6+FxV5zQQ=";
+    hash = "sha256-rYOcbfKWFZN2kFY8H6jf5PXFH/VvXieL2ddvSdFCVPs=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/servers/monitoring/prometheus/nats-exporter.nix b/pkgs/servers/monitoring/prometheus/nats-exporter.nix
index 8019599752b68..4a7b3507730d8 100644
--- a/pkgs/servers/monitoring/prometheus/nats-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/nats-exporter.nix
@@ -13,6 +13,11 @@ buildGoModule rec {
 
   vendorSha256 = "sha256-hlC/s0pYhNHMv3i7Nmu4r6jnXGpc6raScv5dO32+tfQ=";
 
+  preCheck = ''
+    # Fix `insecure algorithm SHA1-RSA` problem
+    export GODEBUG=x509sha1=1;
+  '';
+
   meta = with lib; {
     description = "Exporter for NATS metrics";
     homepage = "https://github.com/nats-io/prometheus-nats-exporter";
diff --git a/pkgs/servers/monitoring/sensu-go/default.nix b/pkgs/servers/monitoring/sensu-go/default.nix
index c9661c79c0ea2..ccb0718a77acb 100644
--- a/pkgs/servers/monitoring/sensu-go/default.nix
+++ b/pkgs/servers/monitoring/sensu-go/default.nix
@@ -4,19 +4,19 @@ let
   generic = { subPackages, pname, postInstall ? "", mainProgram }:
     buildGoModule rec {
       inherit pname;
-      version = "6.8.1";
+      version = "6.8.2";
       shortRev = "3a1ac58"; # for internal version info
 
       src = fetchFromGitHub {
         owner = "sensu";
         repo = "sensu-go";
         rev = "v${version}";
-        sha256 = "sha256-6kyT5atO9hqmrQnjhoLPDJEMueKYXawVvhxKMTEPJ6k=";
+        sha256 = "sha256-1blHYUwZHaAdWN7xag+aSPP2GEBmJ+HKK10pKXiNDxY=";
       };
 
       inherit subPackages postInstall;
 
-      vendorSha256 = "sha256-yysRmhVUw1cYgYhWg74dv3+nmLBDx5ZiXuCba1e/CrI=";
+      vendorSha256 = "sha256-Eiebn4BfdI1VhjzdCl3XT/zoFNUbaC1X0v+tGSfNCOE=";
 
       doCheck = false;
 
diff --git a/pkgs/servers/monitoring/telegraf/default.nix b/pkgs/servers/monitoring/telegraf/default.nix
index d803f68ee3a12..ba0f779e4e17e 100644
--- a/pkgs/servers/monitoring/telegraf/default.nix
+++ b/pkgs/servers/monitoring/telegraf/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "telegraf";
-  version = "1.23.3";
+  version = "1.24.2";
 
   excludedPackages = "test";
 
@@ -12,10 +12,10 @@ buildGoModule rec {
     owner = "influxdata";
     repo = "telegraf";
     rev = "v${version}";
-    sha256 = "sha256-RkyHEcz5T8BZoIeLK5OjrJVBNQg5rfFDcHpE52sNM6U=";
+    sha256 = "sha256-2DUP3g7k0DLXlmhCZH0IUgWpYbdUnRjtsc7uEioYzrE=";
   };
 
-  vendorSha256 = "sha256-JvDX55JY5B7f+6GK7x6D1iSyM/h2l5MuAkH2YXodYdM=";
+  vendorSha256 = "sha256-q6NMzfXoUYpv/BF6ddiQTPq6Xf3oKuUWrEF6fTDvkZI=";
   proxyVendor = true;
 
   ldflags = [
diff --git a/pkgs/servers/monitoring/thanos/default.nix b/pkgs/servers/monitoring/thanos/default.nix
index 04667ae32c81a..71b70a330f1a9 100644
--- a/pkgs/servers/monitoring/thanos/default.nix
+++ b/pkgs/servers/monitoring/thanos/default.nix
@@ -1,16 +1,16 @@
 { lib, buildGoModule, fetchFromGitHub }:
 buildGoModule rec {
   pname = "thanos";
-  version = "0.28.0";
+  version = "0.28.1";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "thanos-io";
     repo = "thanos";
-    sha256 = "sha256-h6HDwPbFflF9vZu3s7cMPOQ9iPNPcuDK/1UAX1fSePE=";
+    sha256 = "sha256-Me97owPOTOuZkK/DQlPijff5Lq7Owx3VXyVB2PLJLnE=";
   };
 
-  vendorSha256 = "sha256-EOVxhmR4bkTlxJ/ozl0zmik0+vqmeWBI1IrL2Hf5MU8=";
+  vendorSha256 = "sha256-sZZCRLOXS2Zrpkrc362nyv7OhOooM130V2CrohM8U+E=";
 
   doCheck = false;
 
diff --git a/pkgs/servers/mycorrhiza/default.nix b/pkgs/servers/mycorrhiza/default.nix
index 9185e719d47d0..bbe136eb94c85 100644
--- a/pkgs/servers/mycorrhiza/default.nix
+++ b/pkgs/servers/mycorrhiza/default.nix
@@ -4,16 +4,16 @@
 
 buildGoModule rec {
   pname = "mycorrhiza";
-  version = "1.11.0";
+  version = "1.12.1";
 
   src = fetchFromGitHub {
     owner = "bouncepaw";
     repo = "mycorrhiza";
     rev = "v${version}";
-    sha256 = "sha256-uPnIp4Fc2vXwZnr19jQf39rReutzUqXO9EsXhjt1TuA=";
+    sha256 = "sha256-Fh3BZTDBLaus5ytnHzvknFMrKVssc6+d85mGHv6EmLo=";
   };
 
-  vendorSha256 = "sha256-be9Et2hAW3xntt9AHN9xfc9dBW/MCvpdl0XdTJKRIy4=";
+  vendorSha256 = "sha256-Z6pQwUMMgHLMrRN4Fpu1QyG7WCHGWuvBc2UBTY6jncU=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/servers/nextcloud/default.nix b/pkgs/servers/nextcloud/default.nix
index 11bf643e4c4cb..16ed95c83ae4f 100644
--- a/pkgs/servers/nextcloud/default.nix
+++ b/pkgs/servers/nextcloud/default.nix
@@ -48,13 +48,13 @@ in {
   '';
 
   nextcloud23 = generic {
-    version = "23.0.9";
-    sha256 = "sha256-Ysxapp8IpRcRBC3CRM4yxoGYCuedAVURT3FhDD4jNBY=";
+    version = "23.0.10";
+    sha256 = "c68cff7f40b1e73e8d173f068e7d9c02d37e3f94a6a36a556a49c3ff5def4267";
   };
 
   nextcloud24 = generic {
-    version = "24.0.5";
-    sha256 = "sha256-sieIN3zLk5Hn+eztP2mpI2Zprqqy4OpSUKc+318e8CY=";
+    version = "24.0.6";
+    sha256 = "b26dff9980a47e7e722805fdbbf87e07f59a3817b03ecc32698e028e9baf0301";
   };
 
   # tip: get the sha with:
diff --git a/pkgs/servers/nosql/influxdb/default.nix b/pkgs/servers/nosql/influxdb/default.nix
index 3761d72fd99e8..eac918cafa2d7 100644
--- a/pkgs/servers/nosql/influxdb/default.nix
+++ b/pkgs/servers/nosql/influxdb/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildGoModule, fetchFromGitHub }:
+{ lib, buildGoModule, fetchFromGitHub, stdenv }:
 
 buildGoModule rec {
   pname = "influxdb";
@@ -24,5 +24,6 @@ buildGoModule rec {
     license = licenses.mit;
     homepage = "https://influxdata.com/";
     maintainers = with maintainers; [ offline zimbatm ];
+    broken = stdenv.isDarwin; # build fails with go > 1.17
   };
 }
diff --git a/pkgs/servers/nosql/janusgraph/default.nix b/pkgs/servers/nosql/janusgraph/default.nix
new file mode 100644
index 0000000000000..3fc63a91cd366
--- /dev/null
+++ b/pkgs/servers/nosql/janusgraph/default.nix
@@ -0,0 +1,44 @@
+{ lib, stdenv, fetchzip, jdk11, makeWrapper }:
+
+stdenv.mkDerivation rec {
+  pname = "janusgraph";
+  version = "0.6.2";
+
+  src = fetchzip {
+    url = "https://github.com/JanusGraph/janusgraph/releases/download/v${version}/janusgraph-${version}.zip";
+    sha256 = "sha256-8TMYk8gGyL71zcFk0Lgo7Isvm4k3eh/H6PjfVePpkI4=";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  installPhase = ''
+    mkdir -p $out/bin $out/share/janusgraph
+    install -D $src/lib/*.jar $out/share/janusgraph
+    cd $src
+    find conf scripts -type f -exec install -D {} $out/share/janusgraph/{} \;
+
+    JANUSGRAPH_LIB=$out/share/janusgraph
+    classpath=""
+    # Add the slf4j-log4j12 binding
+    classpath="$classpath":$(find -L $JANUSGRAPH_LIB -name 'slf4j-log4j12*.jar' | sort | tr '\n' ':')
+    # Add the jars in $JANUSGRAPH_LIB that start with "janusgraph"
+    classpath="$classpath":$(find -L $JANUSGRAPH_LIB -name 'janusgraph*.jar' | sort | tr '\n' ':')
+    # Add the remaining jars in $JANUSGRAPH_LIB.
+    classpath="$classpath":$(find -L $JANUSGRAPH_LIB -name '*.jar' \
+                    \! -name 'janusgraph*' \
+                    \! -name 'slf4j-log4j12*.jar' | sort | tr '\n' ':')
+
+    makeWrapper ${jdk11}/bin/java $out/bin/janusgraph-server \
+      --add-flags "-classpath $classpath org.janusgraph.graphdb.server.JanusGraphServer"
+  '';
+
+  meta = with lib; {
+    description = "An open-source, distributed graph database";
+    homepage = "https://janusgraph.org/";
+    mainProgram = "janusgraph-server";
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.ners ];
+  };
+}
+
diff --git a/pkgs/servers/nosql/mongodb/6.0.nix b/pkgs/servers/nosql/mongodb/6.0.nix
new file mode 100644
index 0000000000000..ef3aa77278ca0
--- /dev/null
+++ b/pkgs/servers/nosql/mongodb/6.0.nix
@@ -0,0 +1,12 @@
+{ stdenv, callPackage, lib, sasl, boost, Security, CoreFoundation, cctools }:
+
+let
+  buildMongoDB = callPackage ./mongodb.nix {
+    inherit sasl boost Security CoreFoundation cctools;
+  };
+in
+buildMongoDB {
+  version = "6.0.1";
+  sha256 = "sha256-3LdyPHj2t7JskCJh6flCYl6qjfAbRXHsi+19L+0O2Zs=";
+  patches = [ ];
+}
diff --git a/pkgs/servers/nosql/mongodb/mongodb.nix b/pkgs/servers/nosql/mongodb/mongodb.nix
index 82837e87d1a64..88dcfdcb7080b 100644
--- a/pkgs/servers/nosql/mongodb/mongodb.nix
+++ b/pkgs/servers/nosql/mongodb/mongodb.nix
@@ -1,8 +1,27 @@
-{ lib, stdenv, fetchurl, sconsPackages, boost, gperftools, pcre-cpp, snappy, zlib, libyamlcpp
-, sasl, openssl, libpcap, python3, curl, Security, CoreFoundation, cctools, xz }:
+{ lib
+, stdenv
+, fetchurl
+, sconsPackages
+, boost
+, gperftools
+, pcre-cpp
+, snappy
+, zlib
+, libyamlcpp
+, sasl
+, openssl
+, libpcap
+, python3
+, curl
+, Security
+, CoreFoundation
+, cctools
+, xz
+}:
 
 # Note:
-# The command line tools are written in Go as part of a different package (mongodb-tools)
+#   The command line administrative tools are part of other packages:
+#   see pkgs.mongodb-tools and pkgs.mongosh.
 
 with lib;
 
@@ -11,17 +30,49 @@ with lib;
 }:
 
 let
-  variants = if versionAtLeast version "4.2"
-    then rec { python = scons.python.withPackages (ps: with ps; [ pyyaml cheetah3 psutil setuptools ]);
-            scons = sconsPackages.scons_3_1_2.override { python = python3; }; # 4.2 < mongodb <= 5.0.x needs scons 3.x built with python3
-            mozjsVersion = "60";
-            mozjsReplace = "defined(HAVE___SINCOS)";
-          }
-    else rec { python = scons.python.withPackages (ps: with ps; [ pyyaml typing cheetah ]);
-            scons = sconsPackages.scons_3_1_2;
-            mozjsVersion = "45";
-            mozjsReplace = "defined(HAVE_SINCOS)";
-          };
+  variants =
+    if versionAtLeast version "6.0" then rec {
+      python = scons.python.withPackages (ps: with ps; [
+        pyyaml
+        cheetah3
+        psutil
+        setuptools
+        packaging
+        pymongo
+      ]);
+
+      # 4.2 < mongodb <= 6.0.x needs scons 3.x built with python3
+      scons = sconsPackages.scons_3_1_2.override { python = python3; };
+
+      mozjsVersion = "60";
+      mozjsReplace = "defined(HAVE___SINCOS)";
+
+    } else if versionAtLeast version "4.2" then rec {
+      python = scons.python.withPackages (ps: with ps; [
+        pyyaml
+        cheetah3
+        psutil
+        setuptools
+      ]);
+
+      # 4.2 < mongodb <= 5.0.x needs scons 3.x built with python3
+      scons = sconsPackages.scons_3_1_2.override { python = python3; };
+
+      mozjsVersion = "60";
+      mozjsReplace = "defined(HAVE___SINCOS)";
+
+    } else rec {
+      python = scons.python.withPackages (ps: with ps; [
+        pyyaml
+        typing
+        cheetah
+      ]);
+
+      scons = sconsPackages.scons_3_1_2;
+      mozjsVersion = "45";
+      mozjsReplace = "defined(HAVE_SINCOS)";
+   };
+
   system-libraries = [
     "boost"
     "pcre"
@@ -129,7 +180,10 @@ in stdenv.mkDerivation rec {
     runHook postInstallCheck
   '';
 
-  installTargets = if (versionAtLeast version "4.4") then "install-core" else "install";
+  installTargets =
+    if (versionAtLeast version "6.0") then "install-devcore"
+    else if (versionAtLeast version "4.4") then "install-core"
+    else "install";
 
   prefixKey = if (versionAtLeast version "4.4") then "DESTDIR=" else "--prefix=";
 
@@ -143,6 +197,9 @@ in stdenv.mkDerivation rec {
     inherit license;
 
     maintainers = with maintainers; [ bluescreen303 offline cstrahan ];
-    platforms = subtractLists systems.doubles.i686 systems.doubles.unix;
+    platforms = subtractLists systems.doubles.i686 (
+      if (versionAtLeast version "6.0") then systems.doubles.linux
+      else systems.doubles.unix
+    );
   };
 }
diff --git a/pkgs/servers/nosql/victoriametrics/default.nix b/pkgs/servers/nosql/victoriametrics/default.nix
index 6b75e72a047cc..139a4b5db7419 100644
--- a/pkgs/servers/nosql/victoriametrics/default.nix
+++ b/pkgs/servers/nosql/victoriametrics/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "VictoriaMetrics";
-  version = "1.81.2";
+  version = "1.82.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-wf/YQX7vrwiNWz1kjWLPSH00rB70HDW3bRuN1DUiP1Y=";
+    sha256 = "sha256-JIl2WeveDoAHzqJ2cqMxpWeNf4yQC9fIdfECOJywJ2A=";
   };
 
   vendorSha256 = null;
diff --git a/pkgs/servers/peertube/default.nix b/pkgs/servers/peertube/default.nix
index 6b94fec15384a..29e082e65cf2e 100644
--- a/pkgs/servers/peertube/default.nix
+++ b/pkgs/servers/peertube/default.nix
@@ -1,47 +1,55 @@
-{ lib, stdenv, callPackage, fetchurl, fetchFromGitHub, buildGoModule, fetchYarnDeps, nixosTests
-, fixup_yarn_lock, jq, nodejs, yarn
+{ lib
+, stdenv
+, callPackage
+, fetchurl
+, fetchFromGitHub
+, buildGoModule
+, fetchYarnDeps
+, nixosTests
+, fixup_yarn_lock
+, jq
+, nodejs
+, which
+, yarn
 }:
 let
   arch =
     if stdenv.hostPlatform.system == "x86_64-linux" then "linux-x64"
     else throw "Unsupported architecture: ${stdenv.hostPlatform.system}";
 
-  version = "4.2.2";
+  bcrypt_version = "5.0.1";
+  bcrypt_lib = fetchurl {
+    url = "https://github.com/kelektiv/node.bcrypt.js/releases/download/v${bcrypt_version}/bcrypt_lib-v${bcrypt_version}-napi-v3-${arch}-glibc.tar.gz";
+    hash = "sha256-3R3dBZyPansTuM77Nmm3f7BbTDkDdiT2HQIrti2Ottc=";
+  };
 
-  source = fetchFromGitHub {
+in stdenv.mkDerivation rec {
+  pname = "peertube";
+  version = "4.3.0";
+
+  src = fetchFromGitHub {
     owner = "Chocobozzz";
     repo = "PeerTube";
     rev = "v${version}";
-    sha256 = "sha256-q6wSk5AO91Z6dw5MgpO7QTAlA8Q5Xx1CboBr7SElVUA=";
+    hash = "sha256-1QpJtonn/mWGcTv2mSeGKAHwPAqOV6VBAYFZH1/jAH8=";
   };
 
   yarnOfflineCacheServer = fetchYarnDeps {
-    yarnLock = "${source}/yarn.lock";
-    sha256 = "sha256-MMsxh20jcbW4YYsJyoupKbT9+Xa1BWZAmYHoj2/t+LM=";
+    yarnLock = "${src}/yarn.lock";
+    hash = "sha256-BimtZpU3aZepvlMfhJ/u0trk1rUsGlzjYk2G90fstII=";
   };
 
   yarnOfflineCacheTools = fetchYarnDeps {
-    yarnLock = "${source}/server/tools/yarn.lock";
-    sha256 = "sha256-maPR8OCiuNlle0JQIkZSgAqW+BrSxPwVm6CkxIrIg5k=";
+    yarnLock = "${src}/server/tools/yarn.lock";
+    hash = "sha256-maPR8OCiuNlle0JQIkZSgAqW+BrSxPwVm6CkxIrIg5k=";
   };
 
   yarnOfflineCacheClient = fetchYarnDeps {
-    yarnLock = "${source}/client/yarn.lock";
-    sha256 = "sha256-6Snx1OwEndGrkMZbAEsoNRUQnZcwH+pwSDZW8igCzXA=";
-  };
-
-  bcrypt_version = "5.0.1";
-  bcrypt_lib = fetchurl {
-    url = "https://github.com/kelektiv/node.bcrypt.js/releases/download/v${bcrypt_version}/bcrypt_lib-v${bcrypt_version}-napi-v3-${arch}-glibc.tar.gz";
-    sha256 = "3R3dBZyPansTuM77Nmm3f7BbTDkDdiT2HQIrti2Ottc=";
+    yarnLock = "${src}/client/yarn.lock";
+    hash = "sha256-IKMu+gQa+d30+yXjHCu/oQOQXL6kTN9WxDI/Y5IL1E8=";
   };
 
-in stdenv.mkDerivation rec {
-  inherit version;
-  pname = "peertube";
-  src = source;
-
-  nativeBuildInputs = [ fixup_yarn_lock jq nodejs yarn ];
+  nativeBuildInputs = [ fixup_yarn_lock jq nodejs which yarn ];
 
   buildPhase = ''
     # Build node modules
@@ -49,13 +57,13 @@ in stdenv.mkDerivation rec {
     fixup_yarn_lock ~/yarn.lock
     fixup_yarn_lock ~/server/tools/yarn.lock
     fixup_yarn_lock ~/client/yarn.lock
-    yarn config --offline set yarn-offline-mirror ${yarnOfflineCacheServer}
+    yarn config --offline set yarn-offline-mirror $yarnOfflineCacheServer
     yarn install --offline --frozen-lockfile --ignore-engines --ignore-scripts --no-progress
     cd ~/server/tools
-    yarn config --offline set yarn-offline-mirror ${yarnOfflineCacheTools}
+    yarn config --offline set yarn-offline-mirror $yarnOfflineCacheTools
     yarn install --offline --frozen-lockfile --ignore-engines --ignore-scripts --no-progress
     cd ~/client
-    yarn config --offline set yarn-offline-mirror ${yarnOfflineCacheClient}
+    yarn config --offline set yarn-offline-mirror $yarnOfflineCacheClient
     yarn install --offline --frozen-lockfile --ignore-engines --ignore-scripts --no-progress
 
     patchShebangs ~/node_modules
@@ -83,7 +91,7 @@ in stdenv.mkDerivation rec {
     # Build PeerTube tools
     cp -r "./server/tools/node_modules" "./dist/server/tools"
     npm run tsc -- --build ./server/tools/tsconfig.json
-    npm run resolve-tspaths:cli
+    npm run resolve-tspaths:server
 
     # Build PeerTube client
     npm run build:client
diff --git a/pkgs/servers/pocketbase/default.nix b/pkgs/servers/pocketbase/default.nix
index 14c88e9d04f8c..f438df71949ce 100644
--- a/pkgs/servers/pocketbase/default.nix
+++ b/pkgs/servers/pocketbase/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "pocketbase";
-  version = "0.7.6";
+  version = "0.7.7";
 
   src = fetchFromGitHub {
     owner = "pocketbase";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-03CvpAATd8HSKaMY17Sl7v08xzTxrQsoBchkYZ5pz14=";
+    sha256 = "sha256-pHYbz1LuPZDOtg3xrvgr+16ziZMZHCtSbY685E8RA1E=";
   };
 
   vendorSha256 = "sha256-i3CRba2HA7dOEh4PU1rNZUl05pZqIm946lIjP7ZcFEc=";
diff --git a/pkgs/servers/prowlarr/default.nix b/pkgs/servers/prowlarr/default.nix
index 385f7147b8073..4655bfc6e405f 100644
--- a/pkgs/servers/prowlarr/default.nix
+++ b/pkgs/servers/prowlarr/default.nix
@@ -16,14 +16,14 @@ let
   }."${stdenv.hostPlatform.system}" or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
 
   hash = {
-    x64-linux_hash = "sha256-t5KjzB+dJGNr80mbRRlGvzuC6NvicyScoVeCygzjKeA=";
-    arm64-linux_hash = "sha256-wj1B573MgLZee3pjzbDyYsEYQ6fIyWQkYQnAbV6IW2Q=";
-    x64-osx_hash = "sha256-sbaWK5FK9luSpra/8aujd02/8Z1LOKkAm5eAghT6LJk=";
+    x64-linux_hash = "sha256-IGCRQWI0jz7t8dMAgvRNTdPTOFp5469VgEJgZCz5zyQ=";
+    arm64-linux_hash = "sha256-X/SCgKM7hZQQLwkrBlTLkV4GkxymEC1JuvKaxe+RAxY=";
+    x64-osx_hash = "sha256-sFfuiwTYvizTJR47Vhtk7KMAo8fg8WvI7RFIuhltnWc=";
   }."${arch}-${os}_hash";
 
 in stdenv.mkDerivation rec {
   pname = "prowlarr";
-  version = "0.4.5.1960";
+  version = "0.4.6.1969";
 
   src = fetchurl {
     url = "https://github.com/Prowlarr/Prowlarr/releases/download/v${version}/Prowlarr.develop.${version}.${os}-core-${arch}.tar.gz";
diff --git a/pkgs/servers/pulseaudio/default.nix b/pkgs/servers/pulseaudio/default.nix
index 5084bd7205145..6b09105ef20a1 100644
--- a/pkgs/servers/pulseaudio/default.nix
+++ b/pkgs/servers/pulseaudio/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchurl, fetchpatch, pkg-config
 , libsndfile, libtool, makeWrapper, perlPackages
-, xorg, libcap, alsa-lib, glib, dconf
+, xlibsWrapper, xorg, libcap, alsa-lib, glib, dconf
 , avahi, libjack2, libasyncns, lirc, dbus
 , sbc, bluez5, udev, openssl, fftwFloat
 , soxr, speexdsp, systemd, webrtc-audio-processing
@@ -76,7 +76,7 @@ stdenv.mkDerivation rec {
     ++ lib.optionals (!libOnly) (
       [ libasyncns webrtc-audio-processing ]
       ++ lib.optional jackaudioSupport libjack2
-      ++ lib.optionals x11Support [ xorg.xlibsWrapper xorg.libXtst xorg.libXi ]
+      ++ lib.optionals x11Support [ xlibsWrapper xorg.libXtst xorg.libXi ]
       ++ lib.optional useSystemd systemd
       ++ lib.optionals stdenv.isLinux [ alsa-lib udev ]
       ++ lib.optional airtunesSupport openssl
@@ -116,6 +116,11 @@ stdenv.mkDerivation rec {
     "-Dsysconfdir=/etc"
     "-Dsysconfdir_install=${placeholder "out"}/etc"
     "-Dudevrulesdir=${placeholder "out"}/lib/udev/rules.d"
+
+    # pulseaudio complains if its binary is moved after installation;
+    # this is needed so that wrapGApp can operate *without*
+    # renaming the unwrapped binaries (see below)
+    "--bindir=${placeholder "out"}/.bin-unwrapped"
   ]
   ++ lib.optional (stdenv.isLinux && useSystemd) "-Dsystemduserunitdir=${placeholder "out"}/lib/systemd/user"
   ++ lib.optionals stdenv.isDarwin [
@@ -133,11 +138,11 @@ stdenv.mkDerivation rec {
   postInstall = lib.optionalString libOnly ''
     find $out/share -maxdepth 1 -mindepth 1 ! -name "vala" -prune -exec rm -r {} \;
     find $out/share/vala -maxdepth 1 -mindepth 1 ! -name "vapi" -prune -exec rm -r {} \;
-    rm -r $out/{bin,etc,lib/pulse-*}
+    rm -r $out/{.bin-unwrapped,etc,lib/pulse-*}
   ''
     + ''
     moveToOutput lib/cmake "$dev"
-    rm -f $out/bin/qpaeq # this is packaged by the "qpaeq" package now, because of missing deps
+    rm -f $out/.bin-unwrapped/qpaeq # this is packaged by the "qpaeq" package now, because of missing deps
   '';
 
   preFixup = lib.optionalString (stdenv.isLinux  && (stdenv.hostPlatform == stdenv.buildPlatform)) ''
@@ -151,6 +156,15 @@ stdenv.mkDerivation rec {
       ln -s "''$file" "''${file%.dylib}.so"
       ln -s "''$file" "$out/lib/pulseaudio/''$(basename ''$file .dylib).so"
     done
+  ''
+  # put symlinks to binaries in `$prefix/bin`;
+  # then wrapGApp will *rename these symlinks* instead of
+  # the original binaries in `$prefix/.bin-unwrapped` (see above);
+  # when pulseaudio is looking for its own binary (it does!),
+  # it will be happy to find it in its original installation location
+  + lib.optionalString (!libOnly) ''
+    mkdir -p $out/bin
+    ln -st $out/bin $out/.bin-unwrapped/*
   '';
 
   meta = {
diff --git a/pkgs/servers/redpanda/default.nix b/pkgs/servers/redpanda/default.nix
index b7a665a95e82e..f941114881c4f 100644
--- a/pkgs/servers/redpanda/default.nix
+++ b/pkgs/servers/redpanda/default.nix
@@ -1,13 +1,13 @@
 { lib, stdenv, fetchzip }:
 
 let
-  version = "22.2.4";
+  version = "22.2.5";
   platform = if stdenv.isLinux then "linux" else "darwin";
   arch = if stdenv.isAarch64 then "arm" else "amd";
   sha256s = {
     darwin.amd = "sha256-AXk3aP1SGiHTfHTCBRTagX0DAVmdcVVIkxWaTnZxB8g=";
     darwin.arm = "sha256-pvOVvNc8lZ2d2fVZVYWvumVWYpnLORNY/3o1t4BN2N4=";
-    linux.amd = "sha256-2JoHy0SF/oj86Dhu47g2IYTiNdjB2Bu/Zc0DGYaUjLo=";
+    linux.amd = "sha256-cQtUu3mVTcRm1HYlzw+nOqTOx6W0XuALkip9uFXyLeM=";
     linux.arm = "sha256-WHjYAbytiu747jFqN0KZ/CkIwAVI7fb32ywtRiQOBm8=";
   };
 in stdenv.mkDerivation rec {
diff --git a/pkgs/servers/rippled/default.nix b/pkgs/servers/rippled/default.nix
index 835307ae0a008..55b082f994847 100644
--- a/pkgs/servers/rippled/default.nix
+++ b/pkgs/servers/rippled/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchgit, fetchurl, git, cmake, pkg-config
-, openssl, boost, grpc, abseil-cpp, protobuf3_8, libnsl }:
+, openssl, boost, grpc, abseil-cpp, protobuf, libnsl }:
 
 let
   sqlite3 = fetchurl rec {
@@ -130,7 +130,7 @@ in stdenv.mkDerivation rec {
   cmakeFlags = ["-Dstatic=OFF" "-DBoost_NO_BOOST_CMAKE=ON"];
 
   nativeBuildInputs = [ pkg-config cmake git ];
-  buildInputs = [ openssl openssl.dev boostSharedStatic grpc abseil-cpp protobuf3_8 libnsl ];
+  buildInputs = [ openssl openssl.dev boostSharedStatic grpc abseil-cpp protobuf libnsl ];
 
   preConfigure = ''
     export HOME=$PWD
diff --git a/pkgs/servers/roon-server/default.nix b/pkgs/servers/roon-server/default.nix
index 755b7920c1e02..5beeb9b6011fc 100644
--- a/pkgs/servers/roon-server/default.nix
+++ b/pkgs/servers/roon-server/default.nix
@@ -15,7 +15,7 @@
 , stdenv
 }:
 let
-  version = "1.8-1105";
+  version = "2.0-1128";
   urlVersion = builtins.replaceStrings [ "." "-" ] [ "00" "0" ] version;
 in
 stdenv.mkDerivation {
@@ -23,8 +23,8 @@ stdenv.mkDerivation {
   inherit version;
 
   src = fetchurl {
-    url = "https://download.roonlabs.com/builds/RoonServer_linuxx64_${urlVersion}.tar.bz2";
-    hash = "sha256-YijqoJ0JqAhaNQ7GNaOilEhbVqmd62Plp1ykjwQw3aw=";
+    url = "https://download.roonlabs.com/updates/production/RoonServer_linuxx64_${urlVersion}.tar.bz2";
+    hash = "sha256-PR3LR7u9X6eUAyoAW1tXv3LzqoVz3RQ0MZwdF0iAXJ8=";
   };
 
   dontConfigure = true;
diff --git a/pkgs/servers/rustypaste/default.nix b/pkgs/servers/rustypaste/default.nix
index a103ed8a461bb..8cc792f145923 100644
--- a/pkgs/servers/rustypaste/default.nix
+++ b/pkgs/servers/rustypaste/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rustypaste";
-  version = "0.7.1";
+  version = "0.8.2";
 
   src = fetchFromGitHub{
     owner = "orhun";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-NGrz08cpio745oVYtfNO1jpViYLaxZ9ZRXQdQG/f0oM=";
+    sha256 = "sha256-EKW/Cik4La66bI7EVbFnhivk1o0nIudJdBW7F5dbQaI=";
   };
 
-  cargoSha256 = "sha256-UQNe2O664PXvcSu6MI5F8RdYJJholjF9iO2I5OSMm2A=";
+  cargoSha256 = "sha256-zIrvBHPthPAzReojmBLb0odDQGcGwZS10rP15qb/zgs=";
 
   # Some tests need network
   checkFlags = [
diff --git a/pkgs/servers/search/meilisearch/default.nix b/pkgs/servers/search/meilisearch/default.nix
index 9dca908a07733..d8db9f953d79f 100644
--- a/pkgs/servers/search/meilisearch/default.nix
+++ b/pkgs/servers/search/meilisearch/default.nix
@@ -8,7 +8,7 @@
 , nixosTests
 }:
 
-let version = "0.28.1";
+let version = "0.29.1";
 in
 rustPlatform.buildRustPackage {
   pname = "meilisearch";
@@ -17,9 +17,9 @@ rustPlatform.buildRustPackage {
     owner = "meilisearch";
     repo = "MeiliSearch";
     rev = "v${version}";
-    sha256 = "sha256-AjSzzOQ1K47tyc8Zn7kAU3B1UE9Tfvd3SvP7W13m6/o=";
+    sha256 = "sha256-1zZqarUxaSlux2ndSnQ3qAs+if2MxN9FPuEAxDnVv28=";
   };
-  cargoSha256 = "sha256-zRSAjOKKmL79eXrA6/ZNE3lo8MFdOqYJkcagcA51c6M=";
+  cargoSha256 = "sha256-VhCpqCBQhr4GgHEUJ30KPGMbN3EqhdJRKr7/PGYQ3OY=";
   # Default features include mini dashboard which downloads something from the internet.
   buildNoDefaultFeatures = true;
   buildInputs = lib.optionals stdenv.isDarwin [ Security DiskArbitration Foundation ];
diff --git a/pkgs/servers/serf/default.nix b/pkgs/servers/serf/default.nix
index 1b9c40a9895a1..0a57054f65f60 100644
--- a/pkgs/servers/serf/default.nix
+++ b/pkgs/servers/serf/default.nix
@@ -5,17 +5,17 @@
 
 buildGoModule rec {
   pname = "serf";
-  version = "0.10.0";
+  version = "0.10.1";
   rev = "a2bba5676d6e37953715ea10e583843793a0c507";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = "serf";
     rev = "v${version}";
-    sha256 = "sha256-5P2Pq2yzTGyw0hLwHdJB4YB+du0D8Q3MagRH3WXZ100=";
+    sha256 = "sha256-8cWSWRfge5UjNzgA1Qp4AzbgIfGBum/ghHcB8H8MyCE=";
   };
 
-  vendorSha256 = "sha256-2v2KcULgrwMRVGA91p7LJQPyQqwHLHhJa1WSivXHQG4=";
+  vendorSha256 = "sha256-6Kw0Co6vaBNkvVyK64wo9/39YF5UwuJg04EPoYwCP1c=";
 
   subPackages = [ "cmd/serf" ];
 
diff --git a/pkgs/servers/sickbeard/sickgear.nix b/pkgs/servers/sickbeard/sickgear.nix
index 5ad9f457c18b6..94f471dd53fe1 100644
--- a/pkgs/servers/sickbeard/sickgear.nix
+++ b/pkgs/servers/sickbeard/sickgear.nix
@@ -4,13 +4,13 @@ let
   pythonEnv = python3.withPackages(ps: with ps; [ cheetah3 lxml ]);
 in stdenv.mkDerivation rec {
   pname = "sickgear";
-  version = "0.25.40";
+  version = "0.25.44";
 
   src = fetchFromGitHub {
     owner = "SickGear";
     repo = "SickGear";
     rev = "release_${version}";
-    sha256 = "sha256-AHV/HSKuVWZFdZdkFp9p7okAcFO40d9OqV20MaHKXaU=";
+    sha256 = "sha256-j9sLIxUru2rjKaL4uV03yQfEdbXpKo1xGunrNZc/t7E=";
   };
 
   patches = [
diff --git a/pkgs/servers/snappymail/default.nix b/pkgs/servers/snappymail/default.nix
index 1f118d33699a2..f6178dba992fc 100644
--- a/pkgs/servers/snappymail/default.nix
+++ b/pkgs/servers/snappymail/default.nix
@@ -2,11 +2,11 @@
 , dataPath ? "/var/lib/snappymail" }:
 stdenv.mkDerivation rec {
   pname = "snappymail";
-  version = "2.18.3";
+  version = "2.18.5";
 
   src = fetchurl {
     url = "https://github.com/the-djmaze/snappymail/releases/download/v${version}/snappymail-${version}.tar.gz";
-    sha256 = "sha256-QAdR7fhF05taVtoUqqbw6EELnSDwRtX2O43VN8p6L7Q=";
+    sha256 = "sha256-JfKxeXLlK4n2BQwJa2JV5VHtNfW6W9cdd+9W+MnxZZo=";
   };
 
   sourceRoot = "snappymail";
diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix
index f8a87ae814246..7190f1209e08d 100644
--- a/pkgs/servers/sql/mariadb/default.nix
+++ b/pkgs/servers/sql/mariadb/default.nix
@@ -106,7 +106,7 @@ commonOptions = packageSettings: rec { # attributes common to both builds
   postInstall = ''
     # Remove Development components. Need to use libmysqlclient.
     rm "$out"/lib/mysql/plugin/daemon_example.ini
-    rm "$out"/lib/{libmariadbclient.a,libmysqlclient.a,libmysqlclient_r.a,libmysqlservices.a}
+    rm "$out"/lib/{libmariadb.a,libmariadbclient.a,libmysqlclient.a,libmysqlclient_r.a,libmysqlservices.a}
     rm -f "$out"/bin/{mariadb-config,mariadb_config,mysql_config}
     rm -r $out/include
     rm -r $out/lib/pkgconfig
diff --git a/pkgs/servers/sql/postgresql/ext/pg_auto_failover.nix b/pkgs/servers/sql/postgresql/ext/pg_auto_failover.nix
index 6f0a22167a91a..2a310660d50c4 100644
--- a/pkgs/servers/sql/postgresql/ext/pg_auto_failover.nix
+++ b/pkgs/servers/sql/postgresql/ext/pg_auto_failover.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "pg_auto_failover";
-  version = "1.6.4";
+  version = "2.0";
 
   src = fetchFromGitHub {
     owner = "citusdata";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-MzMKVS86ymfRwZqTzJsdophRrIIPDp50Wpt7QkGA6Nc=";
+    sha256 = "sha256-CLtLOzKRB9p6+SytMvWCYo7m7s/d+clAGOa2sWi6uZ0=";
   };
 
   buildInputs = [ postgresql openssl zlib readline libkrb5 ];
diff --git a/pkgs/servers/sql/postgresql/ext/pg_ivm.nix b/pkgs/servers/sql/postgresql/ext/pg_ivm.nix
index 7e19ce2956a14..be044befb266f 100644
--- a/pkgs/servers/sql/postgresql/ext/pg_ivm.nix
+++ b/pkgs/servers/sql/postgresql/ext/pg_ivm.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "pg_ivm";
-  version = "1.2";
+  version = "1.3";
 
   src = fetchFromGitHub {
     owner = "sraoss";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-q/iAMrT9npmtIKFKi/vSeYGvFSE+SgsKTP08YfBOpik=";
+    hash = "sha256-HdIqAB/A6+EvioKhS2OKmlABjpeTAgkbU5ihbt/OzdI=";
   };
 
   buildInputs = [ postgresql ];
diff --git a/pkgs/servers/sql/postgresql/ext/smlar.nix b/pkgs/servers/sql/postgresql/ext/smlar.nix
index e4196b61290c3..3bbd19b862fdb 100644
--- a/pkgs/servers/sql/postgresql/ext/smlar.nix
+++ b/pkgs/servers/sql/postgresql/ext/smlar.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "smlar-unstable";
-  version = "2020-10-07";
+  version = "2021-11-08";
 
   src = fetchgit {
     url = "git://sigaev.ru/smlar.git";
-    rev = "25a4fef344f5c2b90e6a9d32144ee12b9198487d";
-    sha256 = "14mj63mbkcphrzw6890pb5n8igh27i9g7kh4wjdhgx3g7llbjbdw";
+    rev = "f2522d5f20a46a3605a761d34a3aefcdffb94e71";
+    sha256 = "sha256-AC6w7uYw0OW70pQpWbK1A3rkCnMvTJzTCAdFiY3rO7A=";
   };
 
   buildInputs = [ postgresql ];
diff --git a/pkgs/servers/sql/postgresql/ext/timescaledb.nix b/pkgs/servers/sql/postgresql/ext/timescaledb.nix
index 95a853fb6d672..2f857b1e8d23d 100644
--- a/pkgs/servers/sql/postgresql/ext/timescaledb.nix
+++ b/pkgs/servers/sql/postgresql/ext/timescaledb.nix
@@ -8,7 +8,7 @@
 
 stdenv.mkDerivation rec {
   pname = "timescaledb";
-  version = "2.8.0";
+  version = "2.8.1";
 
   nativeBuildInputs = [ cmake ];
   buildInputs = [ postgresql openssl libkrb5 ];
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     owner = "timescale";
     repo = "timescaledb";
     rev = version;
-    sha256 = "sha256-xJidQ25JPIFY0KMV9EVrp4+qbU+QWDLaCSNHKOQq+dI=";
+    sha256 = "sha256-2ayWm1lXR1rgDHdpKO0gMJzGRag95qVPU7jSCJRtar0=";
   };
 
   cmakeFlags = [ "-DSEND_TELEMETRY_DEFAULT=OFF" "-DREGRESS_CHECKS=OFF" "-DTAP_CHECKS=OFF" ]
diff --git a/pkgs/servers/sql/proxysql/default.nix b/pkgs/servers/sql/proxysql/default.nix
index b8748368c50d1..97b0591cbff74 100644
--- a/pkgs/servers/sql/proxysql/default.nix
+++ b/pkgs/servers/sql/proxysql/default.nix
@@ -16,7 +16,7 @@
 , libev
 , libgcrypt
 , libinjection
-, libmicrohttpd_0_9_70
+, libmicrohttpd_0_9_69
 , libuuid
 , lz4
 , nlohmann_json
@@ -100,7 +100,7 @@ stdenv.mkDerivation rec {
         { f = "libdaemon"; p = libdaemon; }
         { f = "libev"; p = libev; }
         { f = "libinjection"; p = libinjection; }
-        { f = "libmicrohttpd"; p = libmicrohttpd_0_9_70; }
+        { f = "libmicrohttpd"; p = libmicrohttpd_0_9_69; }
         { f = "libssl"; p = openssl; }
         { f = "lz4"; p = lz4; }
         { f = "pcre"; p = pcre; }
diff --git a/pkgs/servers/squid/default.nix b/pkgs/servers/squid/default.nix
index 41073e8cc8398..362a7432ff498 100644
--- a/pkgs/servers/squid/default.nix
+++ b/pkgs/servers/squid/default.nix
@@ -1,5 +1,6 @@
 { lib, stdenv, fetchurl, perl, openldap, pam, db, cyrus_sasl, libcap
 , expat, libxml2, openssl, pkg-config, systemd
+, cppunit
 }:
 
 stdenv.mkDerivation rec {
@@ -32,6 +33,22 @@ stdenv.mkDerivation rec {
   ] ++ lib.optional (stdenv.isLinux && !stdenv.hostPlatform.isMusl)
     "--enable-linux-netfilter";
 
+  doCheck = true;
+  checkInputs = [ cppunit ];
+  preCheck = ''
+    # tests attempt to copy around "/bin/true" to make some things
+    # no-ops but this doesn't work if our "true" is a multi-call
+    # binary, so make our own fake "true" which will work when used
+    # this way
+    echo "#!$SHELL" > fake-true
+    chmod +x fake-true
+    grep -rlF '/bin/true' test-suite/ | while read -r filename ; do
+      substituteInPlace "$filename" \
+        --replace "$(type -P true)" "$(realpath fake-true)" \
+        --replace "/bin/true" "$(realpath fake-true)"
+    done
+  '';
+
   meta = with lib; {
     description = "A caching proxy for the Web supporting HTTP, HTTPS, FTP, and more";
     homepage = "http://www.squid-cache.org";
diff --git a/pkgs/servers/syncstorage-rs/default.nix b/pkgs/servers/syncstorage-rs/default.nix
index 17a7bb799fdf1..26bf5488f93c1 100644
--- a/pkgs/servers/syncstorage-rs/default.nix
+++ b/pkgs/servers/syncstorage-rs/default.nix
@@ -21,13 +21,13 @@ in
 
 rustPlatform.buildRustPackage rec {
   pname = "syncstorage-rs";
-  version = "0.12.0";
+  version = "0.12.3";
 
   src = fetchFromGitHub {
     owner = "mozilla-services";
     repo = pname;
     rev = version;
-    hash = "sha256-VfIpjpBS7LXe32fxIFp7xmbm40VwxUdHIEm5PnMpd4s=";
+    hash = "sha256-al3SgpJPg8dfdghV1dl00wShrKSJFegRVTilaOi0RHQ=";
   };
 
   nativeBuildInputs = [
@@ -47,7 +47,7 @@ rustPlatform.buildRustPackage rec {
       --prefix PATH : ${lib.makeBinPath [ pyFxADeps ]}
   '';
 
-  cargoSha256 = "sha256-JXxArKA/2SIYJvjNA1yZHR9xDKt3N2U7HVMP/6M3BxE=";
+  cargoSha256 = "sha256-+9Yi+oKctFiTR8cXN6ajtwKEC0kkOP3+kPfUPSYsx5A=";
 
   buildFeatures = [ "grpcio/openssl" ];
 
diff --git a/pkgs/servers/teleport/default.nix b/pkgs/servers/teleport/default.nix
index a7a9b5c8fe515..cf6701fba687b 100644
--- a/pkgs/servers/teleport/default.nix
+++ b/pkgs/servers/teleport/default.nix
@@ -5,6 +5,7 @@
 , makeWrapper
 , symlinkJoin
 , CoreFoundation
+, libfido2
 , openssl
 , pkg-config
 , protobuf
@@ -14,7 +15,6 @@
 , nixosTests
 
 , withRdpClient ? true
-, withRoleTester ? true
 }:
 let
   # This repo has a private submodule "e" which fetchgit cannot handle without failing.
@@ -22,13 +22,13 @@ let
     owner = "gravitational";
     repo = "teleport";
     rev = "v${version}";
-    sha256 = "sha256-KQfdeMuZ9LJHhEJLMl58Yb0+gxgDT7VcVnK1JxjVZaI=";
+    hash = "sha256-F5v3/eKPLhSxW7FImTbE+QMtfn8w5WVTrxMWhgNr3YA=";
   };
-  version = "9.1.2";
+  version = "10.3.1";
 
   rdpClient = rustPlatform.buildRustPackage rec {
-    name = "teleport-rdpclient";
-    cargoSha256 = "sha256-Jz7bB/f4HRxBhSevmfELSrIm+IXUVlADIgp2qWQd5PY=";
+    pname = "teleport-rdpclient";
+    cargoHash = "sha256-Xmabjoq1NXxXemeR06Gg8R/HwdSE+rsxxX645pQ3SuI=";
     inherit version src;
 
     buildAndTestSubdir = "lib/srv/desktop/rdp/rdpclient";
@@ -44,46 +44,32 @@ let
     OPENSSL_NO_VENDOR = "1";
 
     postInstall = ''
-      cp -r target $out
-    '';
-  };
-
-  roleTester = rustPlatform.buildRustPackage {
-    name = "teleport-roletester";
-    inherit version src;
-
-    cargoSha256 = "sha256-gCm4ETbXy6tGJQVSzUkoAWUmKD3poYgkw133LtziASI=";
-    buildAndTestSubdir = "lib/datalog/roletester";
-
-    PROTOC = "${protobuf}/bin/protoc";
-    PROTOC_INCLUDE = "${protobuf}/include";
-
-    postInstall = ''
-      cp -r target $out
+      mkdir -p $out/include
+      cp ${buildAndTestSubdir}/librdprs.h $out/include/
     '';
   };
 
   webassets = fetchFromGitHub {
     owner = "gravitational";
     repo = "webassets";
-    rev = "67e608db77300d8a6cb17709be67f12c1d3271c3";
-    sha256 = "sha256-o4qjXGaNi5XDSUQrUuU+G77EdRnvJ1WUPWrryZU1CUE=";
+    # Submodule rev from https://github.com/gravitational/teleport/tree/v10.3.1
+    rev = "6710dcd0dc19ad101bac3259c463ef940f2ab1f3";
+    hash = "sha256-A13FSpgJODmhugAwy4kqiDw4Rihr//DhQX/bjwaeo2A=";
   };
 in
 buildGoModule rec {
   pname = "teleport";
 
   inherit src version;
-  vendorSha256 = "sha256-UMgWM7KHag99JR4i4mwVHa6yd9aHQ6Dy+pmUijNL4Ew=";
+  vendorHash = "sha256-2Zrd3CbZvxns9lNVtwaaor1mi97IhPc+MRJhj3rU760=";
 
   subPackages = [ "tool/tbot" "tool/tctl" "tool/teleport" "tool/tsh" ];
-  tags = [ "webassets_embed" ]
-    ++ lib.optional withRdpClient "desktop_access_rdp"
-    ++ lib.optional withRoleTester "roletester";
+  tags = [ "libfido2" "webassets_embed" ]
+    ++ lib.optional withRdpClient "desktop_access_rdp";
 
-  buildInputs = [ openssl ]
+  buildInputs = [ openssl libfido2 ]
     ++ lib.optionals (stdenv.isDarwin && withRdpClient) [ CoreFoundation Security ];
-  nativeBuildInputs = [ makeWrapper ];
+  nativeBuildInputs = [ makeWrapper pkg-config ];
 
   patches = [
     # https://github.com/NixOS/nixpkgs/issues/120738
@@ -97,31 +83,26 @@ buildGoModule rec {
   # Reduce closure size for client machines
   outputs = [ "out" "client" ];
 
-  preBuild =
-    let rustDeps = symlinkJoin {
-      name = "teleport-rust-deps";
-      paths = lib.optional withRdpClient rdpClient
-        ++ lib.optional withRoleTester roleTester;
-    };
-    in
-    ''
-      mkdir -p build
-      echo "making webassets"
-      cp -r ${webassets}/* webassets/
-      make lib/web/build/webassets
-
-      cp -r ${rustDeps}/. .
-    '';
+  preBuild = ''
+    mkdir -p build
+    echo "making webassets"
+    cp -r ${webassets}/* webassets/
+    make -j$NIX_BUILD_CORES lib/web/build/webassets
+  '' + lib.optionalString withRdpClient ''
+    ln -s ${rdpClient}/lib/* lib/
+    ln -s ${rdpClient}/include/* lib/srv/desktop/rdp/rdpclient/
+  '';
 
   # Multiple tests fail in the build sandbox
   # due to trying to spawn nixbld's shell (/noshell), etc.
   doCheck = false;
 
   postInstall = ''
-    install -Dm755 -t $client/bin $out/bin/tsh
+    mkdir -p $client/bin
+    mv {$out,$client}/bin/tsh
     # make xdg-open overrideable at runtime
     wrapProgram $client/bin/tsh --suffix PATH : ${lib.makeBinPath [ xdg-utils ]}
-    wrapProgram $out/bin/tsh --suffix PATH : ${lib.makeBinPath [ xdg-utils ]}
+    ln -s {$client,$out}/bin/tsh
   '';
 
   doInstallCheck = true;
diff --git a/pkgs/servers/teleport/rdpclient.patch b/pkgs/servers/teleport/rdpclient.patch
index 141d85ce42c6e..4f35cd184ab5e 100644
--- a/pkgs/servers/teleport/rdpclient.patch
+++ b/pkgs/servers/teleport/rdpclient.patch
@@ -1,17 +1,22 @@
 diff --git a/lib/srv/desktop/rdp/rdpclient/client.go b/lib/srv/desktop/rdp/rdpclient/client.go
-index d191c768f..71117a30d 100644
+index 4357d7aa1..7e21a0076 100644
 --- a/lib/srv/desktop/rdp/rdpclient/client.go
 +++ b/lib/srv/desktop/rdp/rdpclient/client.go
-@@ -56,10 +56,10 @@ package rdpclient
- #cgo linux,amd64 LDFLAGS: -L${SRCDIR}/../../../../../target/x86_64-unknown-linux-gnu/release
- #cgo linux,arm LDFLAGS: -L${SRCDIR}/../../../../../target/arm-unknown-linux-gnueabihf/release
- #cgo linux,arm64 LDFLAGS: -L${SRCDIR}/../../../../../target/aarch64-unknown-linux-gnu/release
+@@ -52,14 +52,9 @@ package rdpclient
+ 
+ /*
+ // Flags to include the static Rust library.
+-#cgo linux,386 LDFLAGS: -L${SRCDIR}/../../../../../target/i686-unknown-linux-gnu/release
+-#cgo linux,amd64 LDFLAGS: -L${SRCDIR}/../../../../../target/x86_64-unknown-linux-gnu/release
+-#cgo linux,arm LDFLAGS: -L${SRCDIR}/../../../../../target/arm-unknown-linux-gnueabihf/release
+-#cgo linux,arm64 LDFLAGS: -L${SRCDIR}/../../../../../target/aarch64-unknown-linux-gnu/release
 -#cgo linux LDFLAGS: -l:librdp_client.a -lpthread -ldl -lm
-+#cgo linux LDFLAGS: -l:librdp_client.a -lpthread -ldl -lm -lssl -lcrypto
- #cgo darwin,amd64 LDFLAGS: -L${SRCDIR}/../../../../../target/x86_64-apple-darwin/release
- #cgo darwin,arm64 LDFLAGS: -L${SRCDIR}/../../../../../target/aarch64-apple-darwin/release
+-#cgo darwin,amd64 LDFLAGS: -L${SRCDIR}/../../../../../target/x86_64-apple-darwin/release
+-#cgo darwin,arm64 LDFLAGS: -L${SRCDIR}/../../../../../target/aarch64-apple-darwin/release
 -#cgo darwin LDFLAGS: -framework CoreFoundation -framework Security -lrdp_client -lpthread -ldl -lm
-+#cgo darwin LDFLAGS: -framework CoreFoundation -framework Security -lrdp_client -lpthread -ldl -lm -lssl -lcrypto
++#cgo LDFLAGS: -L${SRCDIR}/../../../../../lib -lpthread -ldl -lm -lssl -lcrypto
++#cgo linux LDFLAGS: -l:librdp_client.a
++#cgo darwin LDFLAGS: -framework CoreFoundation -framework Security -lrdp_client
  #include <librdprs.h>
  */
  import "C"
diff --git a/pkgs/servers/tmate-ssh-server/default.nix b/pkgs/servers/tmate-ssh-server/default.nix
index dd1c6ad05c483..539b456c9d7fc 100644
--- a/pkgs/servers/tmate-ssh-server/default.nix
+++ b/pkgs/servers/tmate-ssh-server/default.nix
@@ -1,14 +1,28 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook, cmake, libtool, pkg-config
-, zlib, openssl, libevent, ncurses, ruby, msgpack, libssh }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, autoreconfHook
+, cmake
+, libtool
+, pkg-config
+, zlib
+, openssl
+, libevent
+, ncurses
+, ruby
+, msgpack
+, libssh
+, nixosTests
+}:
 
 stdenv.mkDerivation rec {
   pname = "tmate-ssh-server";
   version = "unstable-2021-10-17";
 
   src = fetchFromGitHub {
-    owner  = "tmate-io";
-    repo   = "tmate-ssh-server";
-    rev    = "1f314123df2bb29cb07427ed8663a81c8d9034fd";
+    owner = "tmate-io";
+    repo = "tmate-ssh-server";
+    rev = "1f314123df2bb29cb07427ed8663a81c8d9034fd";
     sha256 = "sha256-9/xlMvtkNWUBRYYnJx20qEgtEcjagH2NtEKZcDOM1BY=";
   };
 
@@ -17,12 +31,13 @@ stdenv.mkDerivation rec {
   buildInputs = [ libtool zlib openssl libevent ncurses ruby msgpack libssh ];
   nativeBuildInputs = [ autoreconfHook cmake pkg-config ];
 
+  passthru.tests.tmate-ssh-server = nixosTests.tmate-ssh-server;
+
   meta = with lib; {
-    homepage    = "https://tmate.io/";
+    homepage = "https://tmate.io/";
     description = "tmate SSH Server";
-    license     = licenses.mit;
-    platforms   = platforms.unix;
+    license = licenses.mit;
+    platforms = platforms.unix;
     maintainers = with maintainers; [ ck3d ];
   };
 }
-
diff --git a/pkgs/servers/traefik/default.nix b/pkgs/servers/traefik/default.nix
index ed6afbc1145ec..812d0cfb99de2 100644
--- a/pkgs/servers/traefik/default.nix
+++ b/pkgs/servers/traefik/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "traefik";
-  version = "2.8.8";
+  version = "2.9.1";
 
   # Archive with static assets for webui
   src = fetchzip {
     url = "https://github.com/traefik/traefik/releases/download/v${version}/traefik-v${version}.src.tar.gz";
-    sha256 = "sha256-DfCHoo6CmEzemzOQrjKj0+p1jogMUkT6wFIOXJssn1s=";
+    sha256 = "sha256-wo1V1anBlIHtMf5ajNs5rLR2uyolCFJTHFIzqJJjwug=";
     stripRoot = false;
   };
 
-  vendorSha256 = "sha256-kKm8yvw5KVwXm2xz/8RxXAI+y1jD9IukSZWiRYG/pHA=";
+  vendorSha256 = "sha256-nAWWnH2ZN+icFPBRaIEATug1jdtRhuiT7CZlYCfzDaY=";
 
   subPackages = [ "cmd/traefik" ];
 
diff --git a/pkgs/servers/vouch-proxy/default.nix b/pkgs/servers/vouch-proxy/default.nix
index b812454fc4c55..9ef0e17f95704 100644
--- a/pkgs/servers/vouch-proxy/default.nix
+++ b/pkgs/servers/vouch-proxy/default.nix
@@ -18,9 +18,6 @@ buildGoModule rec {
     "-X main.version=${version}"
   ];
 
-  # broken with go>1.16
-  doCheck = false;
-
   preCheck = ''
     export VOUCH_ROOT=$PWD
   '';
diff --git a/pkgs/servers/web-apps/baget/default.nix b/pkgs/servers/web-apps/baget/default.nix
index 18176c89bba7f..3488794ad6f45 100644
--- a/pkgs/servers/web-apps/baget/default.nix
+++ b/pkgs/servers/web-apps/baget/default.nix
@@ -11,6 +11,15 @@ buildDotnetModule rec {
     sha256 = "S/3CjXB/fBDzxLuQBQB3CKgEkmzUA8ZzzvzXLN8hfBU=";
   };
 
+  postPatch = ''
+    # this fixes NU1605 errors
+    substituteInPlace \
+      src/BaGet.Azure/BaGet.Azure.csproj \
+      --replace \
+      'Include="Microsoft.Azure.Cosmos.Table" Version="1.0.0"' \
+      'Include="Microsoft.Azure.Cosmos.Table" Version="2.0.0-preview"'
+  '';
+
   projectFile = "src/BaGet/BaGet.csproj";
   nugetDeps = ./deps.nix;
 
diff --git a/pkgs/servers/web-apps/baget/deps.nix b/pkgs/servers/web-apps/baget/deps.nix
index d77342c758b82..08cb9e6faad32 100644
--- a/pkgs/servers/web-apps/baget/deps.nix
+++ b/pkgs/servers/web-apps/baget/deps.nix
@@ -1,3 +1,6 @@
+# This file was automatically generated by passthru.fetch-deps.
+# Please dont edit it manually, your changes might get overwritten!
+
 { fetchNuGet }: [
   (fetchNuGet { pname = "Aliyun.OSS.SDK.NetCore"; version = "2.9.1"; sha256 = "0j07j6cr0lqmmdwgz5alxlq5ifa5vzb58r1rqkgvf49nirz6jhfs"; })
   (fetchNuGet { pname = "AWSSDK.Core"; version = "3.3.104.22"; sha256 = "1930axxsbiahv0rrav34zj355fwxx4nzbvd93sp5g94z6pdh0438"; })
@@ -64,8 +67,9 @@
   (fetchNuGet { pname = "Microsoft.AspNetCore.Mvc.Razor.Extensions"; version = "3.1.18"; sha256 = "0s168gac3g8666pllnmjdbq1v981qgc1wqypyl6pp92jvzvkndp6"; })
   (fetchNuGet { pname = "Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation"; version = "3.1.18"; sha256 = "0069qv17rapqhp2hjzzqim5zxb6clmr9bj4vmfd2pm4byp215flj"; })
   (fetchNuGet { pname = "Microsoft.AspNetCore.Razor.Language"; version = "3.1.18"; sha256 = "0rm6a5hsj4d2a1nlzfb34bm5z7wr826zg25xfbg51a3zvbgva9m7"; })
-  (fetchNuGet { pname = "Microsoft.Azure.Cosmos.Table"; version = "1.0.0"; sha256 = "0ms3nkifj3j7i1h6bxw49fha2iamxdxkzi51q37n0czcszx36apg"; })
-  (fetchNuGet { pname = "Microsoft.Azure.DocumentDB.Core"; version = "2.1.3"; sha256 = "017jq5a5ba4wmrrfr7daa07asnjl8xgvncgxlcyy83mln0xm67a5"; })
+  (fetchNuGet { pname = "Microsoft.Azure.Cosmos"; version = "3.0.0"; sha256 = "0kl1sz8rfdhbs853lcdx2647zp17h87ws07x8w9sl4y743zxw7dj"; })
+  (fetchNuGet { pname = "Microsoft.Azure.Cosmos.Direct"; version = "3.0.0"; sha256 = "0d9q26vvq16ghjirhfayjsxwx9yrppak51m1cg6bdqnafkwlwqki"; })
+  (fetchNuGet { pname = "Microsoft.Azure.Cosmos.Table"; version = "2.0.0-preview"; sha256 = "0krwwqv2q29lj8ydyrx5wv14pmss4fy6gxnx4wd2gj54svl10ri0"; })
   (fetchNuGet { pname = "Microsoft.Azure.KeyVault.Core"; version = "2.0.4"; sha256 = "0rv7z989zxk5myqd4n2a9ccxx9jr4jb3fslc6b4w3p0570af60hn"; })
   (fetchNuGet { pname = "Microsoft.Azure.Search"; version = "5.0.1"; sha256 = "1xpwgcwahflrq5qa2acn0y5x1660qlh5iy0xmn6bisf9pbs6g7hr"; })
   (fetchNuGet { pname = "Microsoft.Azure.Search.Common"; version = "5.0.1"; sha256 = "1ybbvm3iyi7r6v6j19jb16lqlq3am51wg68mzk3jdflk5czn28p7"; })
@@ -91,57 +95,57 @@
   (fetchNuGet { pname = "Microsoft.Data.Sqlite.Core"; version = "3.1.18"; sha256 = "1vh9jjpgqr33kyp72n7k6xkqsd0q978p84lf54rm50krlkx31q0h"; })
   (fetchNuGet { pname = "Microsoft.DotNet.PlatformAbstractions"; version = "3.1.6"; sha256 = "0b9myd7gqbpaw9pkd2bx45jhik9mwj0f1ss57sk2cxmag2lkdws5"; })
   (fetchNuGet { pname = "Microsoft.EntityFrameworkCore"; version = "3.1.0"; sha256 = "1l12lsk1xfrv5pjnm0b9w9kncgdh0pcjcbxl4zrsg82s7bs7dhda"; })
-  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore"; version = "3.1.18"; sha256 = "1y3g71d2i3azsnb995379rspchhbr1ivi1b1kfm0gx8swrp1j1wy"; })
   (fetchNuGet { pname = "Microsoft.EntityFrameworkCore"; version = "3.1.1"; sha256 = "1ymnxrd79fx4q3aq0d7m8dpx4gyqkbjm960knm4yd3889mlxkish"; })
+  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore"; version = "3.1.18"; sha256 = "1y3g71d2i3azsnb995379rspchhbr1ivi1b1kfm0gx8swrp1j1wy"; })
   (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Abstractions"; version = "3.1.0"; sha256 = "1bd6hilnwp47z3l14qspdxi5f5nhv6rivarc6w8wil425bq0h3pd"; })
-  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Abstractions"; version = "3.1.18"; sha256 = "0d00d6wx2mm5bav39bjsikjq0sx6qmp183dbwimfda7wav2bwya8"; })
   (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Abstractions"; version = "3.1.1"; sha256 = "0ddjfxp7k5jgk1fmzjcfxiijcf59mpi5y9lvcr7ly7dhkpx2gsg8"; })
+  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Abstractions"; version = "3.1.18"; sha256 = "0d00d6wx2mm5bav39bjsikjq0sx6qmp183dbwimfda7wav2bwya8"; })
   (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Analyzers"; version = "3.1.0"; sha256 = "1pjn4wwhxgsiap7byld114kx6m0nm6696r8drspqic7lskm4y305"; })
-  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Analyzers"; version = "3.1.18"; sha256 = "10h1w3lv3gxcf24hhy5av4fvdjxdm2iimzp7kz9zh9cm1jg5n0vl"; })
   (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Analyzers"; version = "3.1.1"; sha256 = "0vh2i1wc8514wa5brspn53sa2l034cpjswsvi0d84dnb04aw3b4b"; })
+  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Analyzers"; version = "3.1.18"; sha256 = "10h1w3lv3gxcf24hhy5av4fvdjxdm2iimzp7kz9zh9cm1jg5n0vl"; })
   (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Design"; version = "3.1.18"; sha256 = "0vfn4kni1sgcw8js60gc4cs3g6chfw1mar2jz07bvgjv8wxlv7qw"; })
   (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Relational"; version = "3.1.0"; sha256 = "0javqw6c27ppcysigjvcjcw3mk0gg1pv2pmwfpvvryr1pb4a9n55"; })
-  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Relational"; version = "3.1.18"; sha256 = "0mlq9gmxrmix68mdh0lv803cx15lzrhs5d9622vj8wwdlngg3xdx"; })
   (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Relational"; version = "3.1.1"; sha256 = "1qzw1rd5isa45xbyyq9vg2p04rnbfb2dinfllaaf7qaxy7mhxv65"; })
+  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Relational"; version = "3.1.18"; sha256 = "0mlq9gmxrmix68mdh0lv803cx15lzrhs5d9622vj8wwdlngg3xdx"; })
   (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Sqlite"; version = "3.1.18"; sha256 = "0fs2900masv6j7j8n4kc05n2g55k7cgkhfkp5vb9pn7s2aw90kzi"; })
   (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Sqlite.Core"; version = "3.1.18"; sha256 = "1m6v8g8jacrsfdl3i5q82g3k9y4wb2r3fh739ih66nlv9jbb81q6"; })
   (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.SqlServer"; version = "3.1.18"; sha256 = "08slvfh5p06rwr1n93x44ka54f5qcnkc5b0qig887dxy4yl3kiwk"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Caching.Abstractions"; version = "3.1.0"; sha256 = "0j5m2a48rwyzzvbz0hpr2md35iv78b86zyqjnrjq0y4vb7sairc0"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Caching.Abstractions"; version = "3.1.18"; sha256 = "0qb3csiz02mh85x1yv0wh6x0c4c9d7kml5nhs9n6z0mykpfybqpc"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Caching.Abstractions"; version = "3.1.1"; sha256 = "1m303nrhcjydw8ij3fmf1w8zxpli84l6k1d4ml56yrpc1n6zxmjq"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Caching.Abstractions"; version = "3.1.18"; sha256 = "0qb3csiz02mh85x1yv0wh6x0c4c9d7kml5nhs9n6z0mykpfybqpc"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Caching.Memory"; version = "3.1.0"; sha256 = "1hi61647apn25kqjcb37nqafp8fikymdrk43j3kxjbwwwx507jy1"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Caching.Memory"; version = "3.1.18"; sha256 = "0fdnk16nas3gdkcjqiq3h0rkqv6ajvbp7lvrssa21av258wnvm3w"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Caching.Memory"; version = "3.1.1"; sha256 = "0nyq1iwjql9w2w83sjimsry8chl53372rbvq9jwng3mdzv9qzni4"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Caching.Memory"; version = "3.1.18"; sha256 = "0fdnk16nas3gdkcjqiq3h0rkqv6ajvbp7lvrssa21av258wnvm3w"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Configuration"; version = "3.1.0"; sha256 = "1rszgz0rd5kvib5fscz6ss3pkxyjwqy0xpd4f2ypgzf5z5g5d398"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration"; version = "3.1.18"; sha256 = "0fpvm1h9n0vib4fwvvify2zkc8yzgg8p2qbqrqlp5fd3ppqivjqh"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Configuration"; version = "3.1.1"; sha256 = "1dmhci4qlwqmfgya02yi02xzv31v8g45mq1c4ffigs8jq8qn4f77"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration"; version = "3.1.18"; sha256 = "0fpvm1h9n0vib4fwvvify2zkc8yzgg8p2qbqrqlp5fd3ppqivjqh"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "3.1.0"; sha256 = "1f7h52kamljglx5k08ccryilvk6d6cvr9c26lcb6b2c091znzk0q"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "3.1.18"; sha256 = "1aycn9rwfygdaw5wnb68ql96sb6midm6mj4742dcl9ibkrgks43w"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "3.1.1"; sha256 = "1a1bixlm8wxf2fsr67qdm7k6p441sx2sfjpcjd3rm5df2v2y9zbv"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "3.1.18"; sha256 = "1aycn9rwfygdaw5wnb68ql96sb6midm6mj4742dcl9ibkrgks43w"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Binder"; version = "3.1.0"; sha256 = "13jj7jxihiswmhmql7r5jydbca4x5qj6h7zq10z17gagys6dc7pw"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Binder"; version = "3.1.18"; sha256 = "1bxcqfh75xypiqq2ljf1rwy7yq58a07g9g12jnlh4x7xba9xd4j0"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Binder"; version = "3.1.1"; sha256 = "1brd1cxhkp5cg2wfkjkkyyvkzi4mdzyjafq94rbndzcxn9gxvz39"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Binder"; version = "3.1.18"; sha256 = "1bxcqfh75xypiqq2ljf1rwy7yq58a07g9g12jnlh4x7xba9xd4j0"; })
   (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "3.1.0"; sha256 = "1xc61dy07bn2q73mx1z3ylrw80xpa682qjby13gklnqq636a3gab"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "3.1.18"; sha256 = "0r8fs4pax5pyfny3ppav4v4by3l7r0xpkax9gvq91w3pzvlfvriz"; })
   (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "3.1.1"; sha256 = "01x8a8djyxcqv3fhp1q647b9y720xbbp1922vw9by4zh8f0lzs2w"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "3.1.18"; sha256 = "0r8fs4pax5pyfny3ppav4v4by3l7r0xpkax9gvq91w3pzvlfvriz"; })
   (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "3.1.0"; sha256 = "1pvms778xkyv1a3gfwrxnh8ja769cxi416n7pcidn9wvg15ifvbh"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "3.1.18"; sha256 = "0kvxyhhs5k7xx51ihc8hppbzpcn34bdzmnp42gy2m359wl3iq0c3"; })
   (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "3.1.1"; sha256 = "1k6k6h00p9hpr9jjq5vy4zwn9ggzldzm97gwjil6hpr3kxawb37n"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "3.1.18"; sha256 = "0kvxyhhs5k7xx51ihc8hppbzpcn34bdzmnp42gy2m359wl3iq0c3"; })
   (fetchNuGet { pname = "Microsoft.Extensions.DependencyModel"; version = "3.1.6"; sha256 = "13m2na8a5mglbbjjp0dxb8ifkf23grkyk1g8585mr7v6cbj098ac"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Logging"; version = "3.1.0"; sha256 = "1d3yhqj1rav7vswm747j7w8fh8paybji4rz941hhlq4b12mfqfh4"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Logging"; version = "3.1.18"; sha256 = "0llw82p6crp0329n3rsyrqka21c3dqyjk8lbk25y5848vzi0bzbv"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Logging"; version = "3.1.1"; sha256 = "1y78bn463mrl8vy7iwafrmq4x0vg4pqjd3xaiznfg9lpxjgjl9j3"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Logging"; version = "3.1.18"; sha256 = "0llw82p6crp0329n3rsyrqka21c3dqyjk8lbk25y5848vzi0bzbv"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "3.1.0"; sha256 = "1zyalrcksszmn9r5xjnirfh7847axncgzxkk3k5srbvlcch8fw8g"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "3.1.18"; sha256 = "0pq1kw77zz9ygcdw87wxd1rkcij084jj1cgp6p4b8zpl0a73ba6b"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "3.1.1"; sha256 = "0pyk6g2qs1lrjhj1qz4bqbqpbmbgqlah1b6ynlvv5bdsrb7157zf"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "3.1.18"; sha256 = "0pq1kw77zz9ygcdw87wxd1rkcij084jj1cgp6p4b8zpl0a73ba6b"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "3.1.0"; sha256 = "0akccwhpn93a4qrssyb3rszdsp3j4p9hlxbsb7yhqb78xydaqhyh"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "3.1.18"; sha256 = "0iv79m9grl28b5zcng14v5nrgic3rgy74ws9l92fw2f194qbdy6h"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "3.1.1"; sha256 = "15iik4hqm5ywzv9lvlfqk6d7drgdm87h6x9gliy9ks6snyhbnpb3"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "3.1.18"; sha256 = "0iv79m9grl28b5zcng14v5nrgic3rgy74ws9l92fw2f194qbdy6h"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Options.ConfigurationExtensions"; version = "3.1.18"; sha256 = "0id3s26s7grlzfvqmknz3ir7agns680ad8d0kv6mr9dfrqj6ca1l"; })
   (fetchNuGet { pname = "Microsoft.Extensions.PlatformAbstractions"; version = "1.1.0"; sha256 = "0r4j8v2vvp3kalvb11ny9cvpls3nrvqj0c81rxbkh99ynd2dbscp"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "3.1.0"; sha256 = "1w1y22njywwysi8qjnj4m83qhbq0jr4mmjib0hfawz6cwamh7xrb"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "3.1.18"; sha256 = "1xcwb09acn6w3jv3s0bp0f7q9vq3rzp7cg2jhbn3a9h9pzk8haa2"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "3.1.1"; sha256 = "07rkb1xl7y59qjg9j3bms0fi09gmjrf9f4ipckxlx64k8ciilw9f"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "3.1.18"; sha256 = "1xcwb09acn6w3jv3s0bp0f7q9vq3rzp7cg2jhbn3a9h9pzk8haa2"; })
   (fetchNuGet { pname = "Microsoft.Identity.Client"; version = "3.0.8"; sha256 = "0g7j08fqk8svch31jg0vg32chgmxgbsin0i85whsd42hkjd4l8lg"; })
   (fetchNuGet { pname = "Microsoft.IdentityModel.JsonWebTokens"; version = "5.5.0"; sha256 = "0ahkybdfiwnj5h25j5x2dylz3wfg2194cgqmsiqkaz93gbqibyw0"; })
   (fetchNuGet { pname = "Microsoft.IdentityModel.Logging"; version = "5.5.0"; sha256 = "1a3bvzaas5d653l0yphl95xclj4yvdz5v08g0psj9i137yncn639"; })
@@ -151,6 +155,7 @@
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1"; sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "2.0.0"; sha256 = "1fk2fk2639i7nzy58m9dvpdnzql4vb8yl8vr19r2fp8lmj9w2jr0"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "2.1.0"; sha256 = "0nmdnkmwyxj8cp746hs9an57zspqlmqdm55b00i7yk8a22s6akxz"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "2.1.2"; sha256 = "1507hnpr9my3z4w1r6xk5n0s1j3y6a2c2cnynj76za7cphxi1141"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.0.1"; sha256 = "0ppdkwy6s9p7x9jix3v4402wb171cdiibq7js7i13nxpdky7074p"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
@@ -162,7 +167,6 @@
   (fetchNuGet { pname = "Microsoft.SourceLink.GitHub"; version = "1.0.0"; sha256 = "029ixyaqn48cjza87m5qf0g1ynyhlm6irgbx1n09src9g666yhpd"; })
   (fetchNuGet { pname = "Microsoft.Spatial"; version = "7.2.0"; sha256 = "15a2lv7305729mdffh6r2qff5c1dk9b0w5a60kclw1a580vipzk2"; })
   (fetchNuGet { pname = "Microsoft.Spatial"; version = "7.5.0"; sha256 = "1zxjy5f4bksgf0ilgrqhxpy5g1nzbz54pcp9dx0smvc9yqlacy97"; })
-  (fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.0.1"; sha256 = "1n8ap0cmljbqskxpf8fjzn7kh1vvlndsa75k01qig26mbw97k2q7"; })
   (fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0j0c1wj4ndj21zsgivsc24whiya605603kxrbiw6wkfdync464wq"; })
   (fetchNuGet { pname = "Microsoft.Win32.Registry"; version = "4.5.0"; sha256 = "1zapbz161ji8h82xiajgriq6zgzmb1f3ar517p2h63plhsq5gh2q"; })
   (fetchNuGet { pname = "MySqlConnector"; version = "0.61.0"; sha256 = "0b0mc41dsih4p1ky3kcmibsz4bw14w439nraq5732wjfkq2sqdxg"; })
@@ -181,37 +185,64 @@
   (fetchNuGet { pname = "NuGet.Versioning"; version = "5.10.0"; sha256 = "10vvw6vjpx0c26rlxh7dnpyp4prahn25717ccd8bzkjmyzhm90cs"; })
   (fetchNuGet { pname = "Pomelo.EntityFrameworkCore.MySql"; version = "3.1.0"; sha256 = "0a8ysdwsa0kds5zbfmcdnk8imaqf2hisjms951h1smnlnii9kyds"; })
   (fetchNuGet { pname = "Pomelo.JsonObject"; version = "2.2.1"; sha256 = "1w6s9wjbsyvq8cnqknkdzm9chnv0g5gcsrq5i94zp6br9vg7c627"; })
+  (fetchNuGet { pname = "runtime.any.System.Collections"; version = "4.0.11"; sha256 = "1x44bm1cgv28zmrp095wf9mn8a6a0ivnzp9v14dcbhx06igxzgg0"; })
+  (fetchNuGet { pname = "runtime.any.System.Collections"; version = "4.3.0"; sha256 = "0bv5qgm6vr47ynxqbnkc7i797fdi8gbjjxii173syrx14nmrkwg0"; })
+  (fetchNuGet { pname = "runtime.any.System.Diagnostics.Tools"; version = "4.0.1"; sha256 = "0qcpm90hrm9gx9pmxlvfml65jm0bwpr5dg3r7l7xm9nvmibvc7n7"; })
+  (fetchNuGet { pname = "runtime.any.System.Diagnostics.Tools"; version = "4.3.0"; sha256 = "1wl76vk12zhdh66vmagni66h5xbhgqq7zkdpgw21jhxhvlbcl8pk"; })
+  (fetchNuGet { pname = "runtime.any.System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "00j6nv2xgmd3bi347k00m7wr542wjlig53rmj28pmw7ddcn97jbn"; })
+  (fetchNuGet { pname = "runtime.any.System.Globalization"; version = "4.0.11"; sha256 = "0240rp66pi5bw1xklmh421hj7arwcdmjmgfkiq1cbc6nrm8ah286"; })
+  (fetchNuGet { pname = "runtime.any.System.Globalization"; version = "4.3.0"; sha256 = "1daqf33hssad94lamzg01y49xwndy2q97i2lrb7mgn28656qia1x"; })
+  (fetchNuGet { pname = "runtime.any.System.Globalization.Calendars"; version = "4.3.0"; sha256 = "1ghhhk5psqxcg6w88sxkqrc35bxcz27zbqm2y5p5298pv3v7g201"; })
+  (fetchNuGet { pname = "runtime.any.System.IO"; version = "4.1.0"; sha256 = "0kasfkjiml2kk8prnyn1990nhsahnjggvqwszqjdsfwfl43vpcb5"; })
+  (fetchNuGet { pname = "runtime.any.System.IO"; version = "4.3.0"; sha256 = "0l8xz8zn46w4d10bcn3l4yyn4vhb3lrj2zw8llvz7jk14k4zps5x"; })
+  (fetchNuGet { pname = "runtime.any.System.Reflection"; version = "4.1.0"; sha256 = "06kcs059d5czyakx75rvlwa2mr86156w18fs7chd03f7084l7mq6"; })
+  (fetchNuGet { pname = "runtime.any.System.Reflection"; version = "4.3.0"; sha256 = "02c9h3y35pylc0zfq3wcsvc5nqci95nrkq0mszifc0sjx7xrzkly"; })
+  (fetchNuGet { pname = "runtime.any.System.Reflection.Extensions"; version = "4.0.1"; sha256 = "05k34ijz9g9csh0vbbv3g3lrxl163izwcfncmbcl7k073h32rzkr"; })
+  (fetchNuGet { pname = "runtime.any.System.Reflection.Extensions"; version = "4.3.0"; sha256 = "0zyri97dfc5vyaz9ba65hjj1zbcrzaffhsdlpxc9bh09wy22fq33"; })
+  (fetchNuGet { pname = "runtime.any.System.Reflection.Primitives"; version = "4.0.1"; sha256 = "1zxrpvixr5fqzkxpnin6g6gjq6xajy1snghz99ds2dwbhm276rhz"; })
+  (fetchNuGet { pname = "runtime.any.System.Reflection.Primitives"; version = "4.3.0"; sha256 = "0x1mm8c6iy8rlxm8w9vqw7gb7s1ljadrn049fmf70cyh42vdfhrf"; })
+  (fetchNuGet { pname = "runtime.any.System.Resources.ResourceManager"; version = "4.0.1"; sha256 = "1jmgs7hynb2rff48623wnyb37558bbh1q28k9c249j5r5sgsr5kr"; })
+  (fetchNuGet { pname = "runtime.any.System.Resources.ResourceManager"; version = "4.3.0"; sha256 = "03kickal0iiby82wa5flar18kyv82s9s6d4xhk5h4bi5kfcyfjzl"; })
+  (fetchNuGet { pname = "runtime.any.System.Runtime"; version = "4.1.0"; sha256 = "0mjr2bi7wvnkphfjqgkyf8vfyvy15a829jz6mivl6jmksh2bx40m"; })
+  (fetchNuGet { pname = "runtime.any.System.Runtime"; version = "4.3.0"; sha256 = "1cqh1sv3h5j7ixyb7axxbdkqx6cxy00p4np4j91kpm492rf4s25b"; })
+  (fetchNuGet { pname = "runtime.any.System.Runtime.Handles"; version = "4.0.1"; sha256 = "1kswgqhy34qvc49i981fk711s7knd6z13bp0rin8ms6axkh98nas"; })
+  (fetchNuGet { pname = "runtime.any.System.Runtime.Handles"; version = "4.3.0"; sha256 = "0bh5bi25nk9w9xi8z23ws45q5yia6k7dg3i4axhfqlnj145l011x"; })
+  (fetchNuGet { pname = "runtime.any.System.Runtime.InteropServices"; version = "4.1.0"; sha256 = "0gm8if0hcmp1qys1wmx4970k2x62pqvldgljsyzbjhiy5644vl8z"; })
+  (fetchNuGet { pname = "runtime.any.System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "0c3g3g3jmhlhw4klrc86ka9fjbl7i59ds1fadsb2l8nqf8z3kb19"; })
+  (fetchNuGet { pname = "runtime.any.System.Text.Encoding"; version = "4.0.11"; sha256 = "0m4vgmzi1ky8xlj0r7xcyazxln3j9dlialnk6d2gmgrfnzf8f9m7"; })
+  (fetchNuGet { pname = "runtime.any.System.Text.Encoding"; version = "4.3.0"; sha256 = "0aqqi1v4wx51h51mk956y783wzags13wa7mgqyclacmsmpv02ps3"; })
+  (fetchNuGet { pname = "runtime.any.System.Text.Encoding.Extensions"; version = "4.0.11"; sha256 = "0d1rxxpvg9v7wlibsfgz0r4hwigpadas822qf8m8fs1gma9gs877"; })
+  (fetchNuGet { pname = "runtime.any.System.Text.Encoding.Extensions"; version = "4.3.0"; sha256 = "0lqhgqi0i8194ryqq6v2gqx0fb86db2gqknbm0aq31wb378j7ip8"; })
+  (fetchNuGet { pname = "runtime.any.System.Threading.Tasks"; version = "4.0.11"; sha256 = "1qzdp09qs8br5qxzlm1lgbjn4n57fk8vr1lzrmli2ysdg6x1xzvk"; })
+  (fetchNuGet { pname = "runtime.any.System.Threading.Tasks"; version = "4.3.0"; sha256 = "03mnvkhskbzxddz4hm113zsch1jyzh2cs450dk3rgfjp8crlw1va"; })
   (fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "16rnxzpk5dpbbl1x354yrlsbvwylrq456xzpsha1n9y3glnhyx9d"; })
-  (fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "0rwpqngkqiapqc5c2cpkj7idhngrgss5qpnqg0yh40mbyflcxf8i"; })
   (fetchNuGet { pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0hkg03sgm2wyq8nqk6dbm9jh5vcq57ry42lkqdmfklrw89lsmr59"; })
-  (fetchNuGet { pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "1n06gxwlinhs0w7s8a94r1q3lwqzvynxwd3mp10ws9bg6gck8n4r"; })
   (fetchNuGet { pname = "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0c2p354hjx58xhhz7wv6div8xpi90sc6ibdm40qin21bvi7ymcaa"; })
-  (fetchNuGet { pname = "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "0404wqrc7f2yc0wxv71y3nnybvqx8v4j9d47hlscxy759a525mc3"; })
   (fetchNuGet { pname = "runtime.native.System"; version = "4.0.0"; sha256 = "1ppk69xk59ggacj9n7g6fyxvzmk1g5p4fkijm0d7xqfkig98qrkf"; })
   (fetchNuGet { pname = "runtime.native.System"; version = "4.3.0"; sha256 = "15hgf6zaq9b8br2wi1i3x0zvmk410nlmsmva9p0bbg73v6hml5k4"; })
   (fetchNuGet { pname = "runtime.native.System.Data.SqlClient.sni"; version = "4.4.0"; sha256 = "15wnpyy506q3vyk1yzdjjf49zpdynr7ghh0x5fbz4pcc1if0p9ky"; })
-  (fetchNuGet { pname = "runtime.native.System.Net.Http"; version = "4.0.1"; sha256 = "1hgv2bmbaskx77v8glh7waxws973jn4ah35zysnkxmf0196sfxg6"; })
   (fetchNuGet { pname = "runtime.native.System.Net.Http"; version = "4.3.0"; sha256 = "1n6rgz5132lcibbch1qlf0g9jk60r0kqv087hxc0lisy50zpm7kk"; })
-  (fetchNuGet { pname = "runtime.native.System.Net.Security"; version = "4.3.0"; sha256 = "0dnqjhw445ay3chpia9p6vy4w2j6s9vy3hxszqvdanpvvyaxijr3"; })
   (fetchNuGet { pname = "runtime.native.System.Security.Cryptography"; version = "4.0.0"; sha256 = "0k57aa2c3b10wl3hfqbgrl7xq7g8hh3a3ir44b31dn5p61iiw3z9"; })
   (fetchNuGet { pname = "runtime.native.System.Security.Cryptography.Apple"; version = "4.3.0"; sha256 = "1b61p6gw1m02cc1ry996fl49liiwky6181dzr873g9ds92zl326q"; })
   (fetchNuGet { pname = "runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "18pzfdlwsg2nb1jjjjzyb5qlgy6xjxzmhnfaijq5s2jw3cm3ab97"; })
-  (fetchNuGet { pname = "runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "0zy5r25jppz48i2bkg8b9lfig24xixg6nm3xyr1379zdnqnpm8f6"; })
   (fetchNuGet { pname = "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0qyynf9nz5i7pc26cwhgi8j62ps27sqmf78ijcfgzab50z9g8ay3"; })
-  (fetchNuGet { pname = "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "096ch4n4s8k82xga80lfmpimpzahd2ip1mgwdqgar0ywbbl6x438"; })
   (fetchNuGet { pname = "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1klrs545awhayryma6l7g2pvnp9xy4z0r1i40r80zb45q3i9nbyf"; })
-  (fetchNuGet { pname = "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "1dm8fifl7rf1gy7lnwln78ch4rw54g0pl5g1c189vawavll7p6rj"; })
   (fetchNuGet { pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple"; version = "4.3.0"; sha256 = "10yc8jdrwgcl44b4g93f1ds76b176bajd3zqi2faf5rvh1vy9smi"; })
   (fetchNuGet { pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0zcxjv5pckplvkg0r6mw3asggm7aqzbdjimhvsasb0cgm59x09l3"; })
-  (fetchNuGet { pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "1m9z1k9kzva9n9kwinqxl97x2vgl79qhqjlv17k9s2ymcyv2bwr6"; })
   (fetchNuGet { pname = "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0vhynn79ih7hw7cwjazn87rm9z9fj0rvxgzlab36jybgcpcgphsn"; })
-  (fetchNuGet { pname = "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "1cpx56mcfxz7cpn57wvj18sjisvzq8b5vd9rw16ihd2i6mcp3wa1"; })
   (fetchNuGet { pname = "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "160p68l2c7cqmyqjwxydcvgw7lvl1cr0znkw8fp24d1by9mqc8p3"; })
-  (fetchNuGet { pname = "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "15gsm1a8jdmgmf8j5v1slfz8ks124nfdhk2vxs2rw3asrxalg8hi"; })
   (fetchNuGet { pname = "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "15zrc8fgd8zx28hdghcj5f5i34wf3l6bq5177075m2bc2j34jrqy"; })
-  (fetchNuGet { pname = "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "0q0n5q1r1wnqmr5i5idsrd9ywl33k0js4pngkwq9p368mbxp8x1w"; })
   (fetchNuGet { pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1p4dgxax6p7rlgj4q73k73rslcnz4wdcv8q2flg1s8ygwcm58ld5"; })
-  (fetchNuGet { pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "1x0g58pbpjrmj2x2qw17rdwwnrcl0wvim2hdwz48lixvwvp22n9c"; })
+  (fetchNuGet { pname = "runtime.unix.Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0y61k9zbxhdi0glg154v30kkq7f8646nif8lnnxbvkjpakggd5id"; })
+  (fetchNuGet { pname = "runtime.unix.System.Diagnostics.Debug"; version = "4.0.11"; sha256 = "05ndbai4vpqrry0ghbfgqc8xblmplwjgndxmdn1zklqimczwjg2d"; })
+  (fetchNuGet { pname = "runtime.unix.System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "1lps7fbnw34bnh3lm31gs5c0g0dh7548wfmb8zz62v0zqz71msj5"; })
+  (fetchNuGet { pname = "runtime.unix.System.IO.FileSystem"; version = "4.0.1"; sha256 = "02wnlydnbhai0zy7c3kihg0cis0l1b2z78kyi1ci47c5v0jklwha"; })
+  (fetchNuGet { pname = "runtime.unix.System.IO.FileSystem"; version = "4.3.0"; sha256 = "14nbkhvs7sji5r1saj2x8daz82rnf9kx28d3v2qss34qbr32dzix"; })
+  (fetchNuGet { pname = "runtime.unix.System.Net.Primitives"; version = "4.3.0"; sha256 = "0bdnglg59pzx9394sy4ic66kmxhqp8q8bvmykdxcbs5mm0ipwwm4"; })
+  (fetchNuGet { pname = "runtime.unix.System.Private.Uri"; version = "4.0.1"; sha256 = "0ic5dgc45jkhcr1g9xmmzjm7ffiw4cymm0fprczlx4fnww4783nm"; })
+  (fetchNuGet { pname = "runtime.unix.System.Private.Uri"; version = "4.3.0"; sha256 = "1jx02q6kiwlvfksq1q9qr17fj78y5v6mwsszav4qcz9z25d5g6vk"; })
+  (fetchNuGet { pname = "runtime.unix.System.Runtime.Extensions"; version = "4.1.0"; sha256 = "0x1cwd7cvifzmn5x1wafvj75zdxlk3mxy860igh3x1wx0s8167y4"; })
+  (fetchNuGet { pname = "runtime.unix.System.Runtime.Extensions"; version = "4.3.0"; sha256 = "0pnxxmm8whx38dp6yvwgmh22smknxmqs5n513fc7m4wxvs1bvi4p"; })
   (fetchNuGet { pname = "runtime.win-arm64.runtime.native.System.Data.SqlClient.sni"; version = "4.4.0"; sha256 = "07byf1iyqb7jkb17sp0mmjk46fwq6fx8mlpzywxl7qk09sma44gk"; })
   (fetchNuGet { pname = "runtime.win-x64.runtime.native.System.Data.SqlClient.sni"; version = "4.4.0"; sha256 = "0167s4mpq8bzk3y11pylnynzjr2nc84w96al9x4l8yrf34ccm18y"; })
   (fetchNuGet { pname = "runtime.win-x86.runtime.native.System.Data.SqlClient.sni"; version = "4.4.0"; sha256 = "0k3rkfrlm9jjz56dra61jgxinb8zsqlqzik2sjwz7f8v6z6ddycc"; })
@@ -220,19 +251,17 @@
   (fetchNuGet { pname = "SQLitePCLRaw.lib.e_sqlite3"; version = "2.0.2"; sha256 = "0967w6r6n94hj0fma3kidb9fx1m2p3fgrw6gpsy6q6jbb33qw6vj"; })
   (fetchNuGet { pname = "SQLitePCLRaw.provider.dynamic_cdecl"; version = "2.0.2"; sha256 = "1lzs8yfjygrwfm3hjmkhnbnpsjzq53ijwx9whmii2r9kjg2a46if"; })
   (fetchNuGet { pname = "SQLitePCLRaw.provider.e_sqlite3"; version = "2.0.2"; sha256 = "0ak8jlkva1mnmvyvwhk9zmc4c5b08n4a7l8g9g5mj3ly161hfzm6"; })
+  (fetchNuGet { pname = "System.Buffers"; version = "4.3.0"; sha256 = "0fgns20ispwrfqll4q1zc1waqcmylb3zc50ys9x8zlwxh9pmd9jy"; })
   (fetchNuGet { pname = "System.Buffers"; version = "4.4.0"; sha256 = "183f8063w8zqn99pv0ni0nnwh7fgx46qzxamwnans55hhs2l0g19"; })
   (fetchNuGet { pname = "System.Buffers"; version = "4.5.0"; sha256 = "1ywfqn4md6g3iilpxjn5dsr0f5lx6z0yvhqp4pgjcamygg73cz2c"; })
   (fetchNuGet { pname = "System.Buffers"; version = "4.5.1"; sha256 = "04kb1mdrlcixj9zh1xdi5as0k0qi8byr5mi3p3jcxx72qz93s2y3"; })
   (fetchNuGet { pname = "System.Collections"; version = "4.0.11"; sha256 = "1ga40f5lrwldiyw6vy67d0sg7jd7ww6kgwbksm19wrvq9hr0bsm6"; })
   (fetchNuGet { pname = "System.Collections"; version = "4.3.0"; sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9"; })
-  (fetchNuGet { pname = "System.Collections.Concurrent"; version = "4.0.12"; sha256 = "07y08kvrzpak873pmyxs129g1ch8l27zmg51pcyj2jvq03n0r0fc"; })
   (fetchNuGet { pname = "System.Collections.Concurrent"; version = "4.3.0"; sha256 = "0wi10md9aq33jrkh2c24wr2n9hrpyamsdhsxdcnf43b7y86kkii8"; })
   (fetchNuGet { pname = "System.Collections.Immutable"; version = "1.5.0"; sha256 = "1d5gjn5afnrf461jlxzawcvihz195gayqpcfbv6dd7pxa9ialn06"; })
   (fetchNuGet { pname = "System.Collections.Immutable"; version = "1.7.0"; sha256 = "1gik4sn9jsi1wcy1pyyp0r4sn2g17cwrsh24b2d52vif8p2h24zx"; })
   (fetchNuGet { pname = "System.Collections.Immutable"; version = "1.7.1"; sha256 = "1nh4nlxfc7lbnbl86wwk1a3jwl6myz5j6hvgh5sp4krim9901hsq"; })
-  (fetchNuGet { pname = "System.Collections.NonGeneric"; version = "4.0.1"; sha256 = "19994r5y5bpdhj7di6w047apvil8lh06lh2c2yv9zc4fc5g9bl4d"; })
   (fetchNuGet { pname = "System.Collections.NonGeneric"; version = "4.3.0"; sha256 = "07q3k0hf3mrcjzwj8fwk6gv3n51cb513w4mgkfxzm3i37sc9kz7k"; })
-  (fetchNuGet { pname = "System.Collections.Specialized"; version = "4.0.1"; sha256 = "1wbv7y686p5x169rnaim7sln67ivmv6r57falrnx8aap9y33mam9"; })
   (fetchNuGet { pname = "System.Collections.Specialized"; version = "4.3.0"; sha256 = "1sdwkma4f6j85m3dpb53v9vcgd0zyc9jb33f8g63byvijcj39n20"; })
   (fetchNuGet { pname = "System.ComponentModel"; version = "4.3.0"; sha256 = "0986b10ww3nshy30x9sjyzm0jx339dkjxjj3401r3q0f6fx2wkcb"; })
   (fetchNuGet { pname = "System.ComponentModel.Annotations"; version = "4.7.0"; sha256 = "06x1m46ddxj0ng28d7gry9gjkqdg2kp89jyf480g5gznyybbs49z"; })
@@ -241,24 +270,19 @@
   (fetchNuGet { pname = "System.Configuration.ConfigurationManager"; version = "4.5.0"; sha256 = "1frpy24mn6q7hgwayj98kkx89z861f5dmia4j6zc0a2ydgx8x02c"; })
   (fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.0.11"; sha256 = "0gmjghrqmlgzxivd2xl50ncbglb7ljzb66rlx8ws6dv8jm0d5siz"; })
   (fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "00yjlf19wjydyr6cfviaph3vsjzg3d5nvnya26i2fvfg53sknh3y"; })
-  (fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "4.0.0"; sha256 = "1n6c3fbz7v8d3pn77h4v5wvsfrfg7v1c57lg3nff3cjyh597v23m"; })
   (fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "4.3.0"; sha256 = "0z6m3pbiy0qw6rn3n209rrzf9x1k4002zh90vwcrsym09ipm2liq"; })
   (fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "4.5.0"; sha256 = "1y8m0p3127nak5yspapfnz25qc9x53gqpvwr3hdpsvrcd2r1pgyj"; })
   (fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "4.7.0"; sha256 = "0cr0v5dz8l5ackxv6b772fjcyj2nimqmrmzanjs4cw2668v568n1"; })
   (fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "4.7.1"; sha256 = "1mivaifniyrqwlnvzsfaxzrh2sd981bwzs3cbvs5wi7jjzbcqr4p"; })
   (fetchNuGet { pname = "System.Diagnostics.Tools"; version = "4.0.1"; sha256 = "19cknvg07yhakcvpxg3cxa0bwadplin6kyxd8mpjjpwnp56nl85x"; })
   (fetchNuGet { pname = "System.Diagnostics.Tools"; version = "4.3.0"; sha256 = "0in3pic3s2ddyibi8cvgl102zmvp9r9mchh82ns9f0ms4basylw1"; })
-  (fetchNuGet { pname = "System.Diagnostics.TraceSource"; version = "4.0.0"; sha256 = "1mc7r72xznczzf6mz62dm8xhdi14if1h8qgx353xvhz89qyxsa3h"; })
-  (fetchNuGet { pname = "System.Diagnostics.Tracing"; version = "4.1.0"; sha256 = "1d2r76v1x610x61ahfpigda89gd13qydz6vbwzhpqlyvq8jj6394"; })
   (fetchNuGet { pname = "System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "1m3bx6c2s958qligl67q7grkwfz3w53hpy7nc97mh6f7j5k168c4"; })
   (fetchNuGet { pname = "System.Dynamic.Runtime"; version = "4.0.11"; sha256 = "1pla2dx8gkidf7xkciig6nifdsb494axjvzvann8g2lp3dbqasm9"; })
   (fetchNuGet { pname = "System.Dynamic.Runtime"; version = "4.3.0"; sha256 = "1d951hrvrpndk7insiag80qxjbf2y0y39y8h5hnq9612ws661glk"; })
   (fetchNuGet { pname = "System.Formats.Asn1"; version = "5.0.0"; sha256 = "1axc8z0839yvqi2cb63l73l6d9j6wd20lsbdymwddz9hvrsgfwpn"; })
   (fetchNuGet { pname = "System.Globalization"; version = "4.0.11"; sha256 = "070c5jbas2v7smm660zaf1gh0489xanjqymkvafcs4f8cdrs1d5d"; })
   (fetchNuGet { pname = "System.Globalization"; version = "4.3.0"; sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki"; })
-  (fetchNuGet { pname = "System.Globalization.Calendars"; version = "4.0.1"; sha256 = "0bv0alrm2ck2zk3rz25lfyk9h42f3ywq77mx1syl6vvyncnpg4qh"; })
   (fetchNuGet { pname = "System.Globalization.Calendars"; version = "4.3.0"; sha256 = "1xwl230bkakzzkrggy1l1lxmm3xlhk4bq2pkv790j5lm8g887lxq"; })
-  (fetchNuGet { pname = "System.Globalization.Extensions"; version = "4.0.1"; sha256 = "0hjhdb5ri8z9l93bw04s7ynwrjrhx2n0p34sf33a9hl9phz69fyc"; })
   (fetchNuGet { pname = "System.Globalization.Extensions"; version = "4.3.0"; sha256 = "02a5zfxavhv3jd437bsncbhd2fp1zv4gxzakp1an9l6kdq1mcqls"; })
   (fetchNuGet { pname = "System.IdentityModel.Tokens.Jwt"; version = "5.5.0"; sha256 = "0p6ybl5ik2glwcfhiqlqdggl0qd6027kdxaqy5xmp7qq055qiq6k"; })
   (fetchNuGet { pname = "System.Interactive.Async"; version = "3.1.1"; sha256 = "03iq20gq0n2b2sdzs5jhxf46nzkfgvzip6q5248vka2rcvn1yanh"; })
@@ -272,30 +296,25 @@
   (fetchNuGet { pname = "System.Linq"; version = "4.3.0"; sha256 = "1w0gmba695rbr80l1k2h4mrwzbzsyfl2z4klmpbsvsg5pm4a56s7"; })
   (fetchNuGet { pname = "System.Linq.Expressions"; version = "4.1.0"; sha256 = "1gpdxl6ip06cnab7n3zlcg6mqp7kknf73s8wjinzi4p0apw82fpg"; })
   (fetchNuGet { pname = "System.Linq.Expressions"; version = "4.3.0"; sha256 = "0ky2nrcvh70rqq88m9a5yqabsl4fyd17bpr63iy2mbivjs2nyypv"; })
-  (fetchNuGet { pname = "System.Linq.Queryable"; version = "4.0.1"; sha256 = "11jn9k34g245yyf260gr3ldzvaqa9477w2c5nhb1p8vjx4xm3qaw"; })
   (fetchNuGet { pname = "System.Memory"; version = "4.5.0"; sha256 = "1layqpcx1q4l805fdnj2dfqp6ncx2z42ca06rgsr6ikq4jjgbv30"; })
   (fetchNuGet { pname = "System.Memory"; version = "4.5.1"; sha256 = "0f07d7hny38lq9w69wx4lxkn4wszrqf9m9js6fh9is645csm167c"; })
   (fetchNuGet { pname = "System.Memory"; version = "4.5.2"; sha256 = "1g24dwqfcmf4gpbgbhaw1j49xmpsz389l6bw2xxbsmnzvsf860ld"; })
   (fetchNuGet { pname = "System.Memory"; version = "4.5.3"; sha256 = "0naqahm3wljxb5a911d37mwjqjdxv9l0b49p5dmfyijvni2ppy8a"; })
   (fetchNuGet { pname = "System.Memory"; version = "4.5.4"; sha256 = "14gbbs22mcxwggn0fcfs1b062521azb9fbb7c113x0mq6dzq9h6y"; })
-  (fetchNuGet { pname = "System.Net.Http"; version = "4.1.0"; sha256 = "1i5rqij1icg05j8rrkw4gd4pgia1978mqhjzhsjg69lvwcdfg8yb"; })
   (fetchNuGet { pname = "System.Net.Http"; version = "4.3.0"; sha256 = "1i4gc757xqrzflbk7kc5ksn20kwwfjhw9w7pgdkn19y3cgnl302j"; })
-  (fetchNuGet { pname = "System.Net.NameResolution"; version = "4.0.0"; sha256 = "0dj3pvpv069nyia28gkl4a0fb7q33hbxz2dg25qvpah3l7pbl0qh"; })
   (fetchNuGet { pname = "System.Net.NameResolution"; version = "4.3.0"; sha256 = "15r75pwc0rm3vvwsn8rvm2krf929mjfwliv0mpicjnii24470rkq"; })
-  (fetchNuGet { pname = "System.Net.NetworkInformation"; version = "4.1.0"; sha256 = "17ia8gyr0aq76z9cv37yjmpna7nx30xfppw0lifvi9s2q3yjspd2"; })
-  (fetchNuGet { pname = "System.Net.Primitives"; version = "4.0.11"; sha256 = "10xzzaynkzkakp7jai1ik3r805zrqjxiz7vcagchyxs2v26a516r"; })
   (fetchNuGet { pname = "System.Net.Primitives"; version = "4.3.0"; sha256 = "0c87k50rmdgmxx7df2khd9qj7q35j9rzdmm2572cc55dygmdk3ii"; })
-  (fetchNuGet { pname = "System.Net.Requests"; version = "4.0.11"; sha256 = "13mka55sa6dg6nw4zdrih44gnp8hnj5azynz47ljsh2791lz3d9h"; })
-  (fetchNuGet { pname = "System.Net.Security"; version = "4.3.2"; sha256 = "1aw1ca1vssqrillrh4qkarx0lxwc8wcaqdkfdima8376wb98j2q8"; })
-  (fetchNuGet { pname = "System.Net.Sockets"; version = "4.1.0"; sha256 = "1385fvh8h29da5hh58jm1v78fzi9fi5vj93vhlm2kvqpfahvpqls"; })
-  (fetchNuGet { pname = "System.Net.WebHeaderCollection"; version = "4.0.1"; sha256 = "10bxpxj80c4z00z3ksrfswspq9qqsw8jwxcbzvymzycb97m9b55q"; })
   (fetchNuGet { pname = "System.Numerics.Vectors"; version = "4.4.0"; sha256 = "0rdvma399070b0i46c4qq1h2yvjj3k013sqzkilz4bz5cwmx1rba"; })
   (fetchNuGet { pname = "System.Numerics.Vectors"; version = "4.5.0"; sha256 = "1kzrj37yzawf1b19jq0253rcs8hsq1l2q8g69d7ipnhzb0h97m59"; })
   (fetchNuGet { pname = "System.ObjectModel"; version = "4.0.12"; sha256 = "1sybkfi60a4588xn34nd9a58png36i0xr4y4v4kqpg8wlvy5krrj"; })
   (fetchNuGet { pname = "System.ObjectModel"; version = "4.3.0"; sha256 = "191p63zy5rpqx7dnrb3h7prvgixmk168fhvvkkvhlazncf8r3nc2"; })
   (fetchNuGet { pname = "System.Private.DataContractSerialization"; version = "4.3.0"; sha256 = "06fjipqvjp559rrm825x6pll8gimdj9x1n3larigh5hsm584gndw"; })
+  (fetchNuGet { pname = "System.Private.ServiceModel"; version = "4.5.0"; sha256 = "03zv1076vs3whkhgmjk9ri8c1dz7mypnkj1k0fcnrgp3yi2xxdji"; })
+  (fetchNuGet { pname = "System.Private.Uri"; version = "4.0.1"; sha256 = "0k57qhawjysm4cpbfpc49kl4av7lji310kjcamkl23bwgij5ld9j"; })
+  (fetchNuGet { pname = "System.Private.Uri"; version = "4.3.0"; sha256 = "04r1lkdnsznin0fj4ya1zikxiqr0h6r6a1ww2dsm60gqhdrf0mvx"; })
   (fetchNuGet { pname = "System.Reflection"; version = "4.1.0"; sha256 = "1js89429pfw79mxvbzp8p3q93il6rdff332hddhzi5wqglc4gml9"; })
   (fetchNuGet { pname = "System.Reflection"; version = "4.3.0"; sha256 = "0xl55k0mw8cd8ra6dxzh974nxif58s3k1rjv1vbd7gjbjr39j11m"; })
+  (fetchNuGet { pname = "System.Reflection.DispatchProxy"; version = "4.5.0"; sha256 = "0v9sg38h91aljvjyc77m1y5v34p50hjdbxvvxwa1whlajhafadcn"; })
   (fetchNuGet { pname = "System.Reflection.Emit"; version = "4.0.1"; sha256 = "0ydqcsvh6smi41gyaakglnv252625hf29f7kywy2c70nhii2ylqp"; })
   (fetchNuGet { pname = "System.Reflection.Emit"; version = "4.3.0"; sha256 = "11f8y3qfysfcrscjpjym9msk7lsfxkk4fmz9qq95kn3jd0769f74"; })
   (fetchNuGet { pname = "System.Reflection.Emit.ILGeneration"; version = "4.0.1"; sha256 = "1pcd2ig6bg144y10w7yxgc9d22r7c7ww7qn1frdfwgxr24j9wvv0"; })
@@ -315,6 +334,7 @@
   (fetchNuGet { pname = "System.Runtime"; version = "4.3.0"; sha256 = "066ixvgbf2c929kgknshcxqj6539ax7b9m570cp8n179cpfkapz7"; })
   (fetchNuGet { pname = "System.Runtime.Caching"; version = "4.5.0"; sha256 = "07ijp8j0cplcw1ns0fpkfsavppask164jn51lasiji4sfkjy592r"; })
   (fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "4.5.0"; sha256 = "17labczwqk3jng3kkky73m0jhi8wc21vbl7cz5c0hj2p1dswin43"; })
+  (fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "4.5.1"; sha256 = "1xcrjx5fwg284qdnxyi2d0lzdm5q4frlpkp0nf6vvkx1kdz2prrf"; })
   (fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "4.5.2"; sha256 = "1vz4275fjij8inf31np78hw50al8nqkngk04p3xv5n4fcmf1grgi"; })
   (fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "4.5.3"; sha256 = "1afi6s2r1mh1kygbjmfba6l4f87pi5sg13p4a48idqafli94qxln"; })
   (fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "4.6.0"; sha256 = "0xmzi2gpbmgyfr75p24rqqsba3cmrqgmcv45lsqp5amgrdwd0f0m"; })
@@ -326,41 +346,28 @@
   (fetchNuGet { pname = "System.Runtime.Handles"; version = "4.3.0"; sha256 = "0sw2gfj2xr7sw9qjn0j3l9yw07x73lcs97p8xfc9w1x9h5g5m7i8"; })
   (fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.1.0"; sha256 = "01kxqppx3dr3b6b286xafqilv4s2n0gqvfgzfd4z943ga9i81is1"; })
   (fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "00hywrn4g7hva1b2qri2s6rabzwgxnbpw9zfxmz28z09cpwwgh7j"; })
-  (fetchNuGet { pname = "System.Runtime.Numerics"; version = "4.0.1"; sha256 = "1y308zfvy0l5nrn46mqqr4wb4z1xk758pkk8svbz8b5ij7jnv4nn"; })
   (fetchNuGet { pname = "System.Runtime.Numerics"; version = "4.3.0"; sha256 = "19rav39sr5dky7afygh309qamqqmi9kcwvz3i0c5700v0c5cg61z"; })
   (fetchNuGet { pname = "System.Runtime.Serialization.Formatters"; version = "4.3.0"; sha256 = "114j35n8gcvn3sqv9ar36r1jjq0y1yws9r0yk8i6wm4aq7n9rs0m"; })
   (fetchNuGet { pname = "System.Runtime.Serialization.Json"; version = "4.3.0"; sha256 = "1qp8ghr70smspnjdmlcbl5vwb7fm2iy1b7wx1p53lbpl35w4kz4a"; })
   (fetchNuGet { pname = "System.Runtime.Serialization.Primitives"; version = "4.1.1"; sha256 = "042rfjixknlr6r10vx2pgf56yming8lkjikamg3g4v29ikk78h7k"; })
   (fetchNuGet { pname = "System.Runtime.Serialization.Primitives"; version = "4.3.0"; sha256 = "01vv2p8h4hsz217xxs0rixvb7f2xzbh6wv1gzbfykcbfrza6dvnf"; })
   (fetchNuGet { pname = "System.Security.AccessControl"; version = "4.5.0"; sha256 = "1wvwanz33fzzbnd2jalar0p0z3x0ba53vzx1kazlskp7pwyhlnq0"; })
-  (fetchNuGet { pname = "System.Security.Claims"; version = "4.0.1"; sha256 = "03dw0ls49bvsrffgwycyifjgz0qzr9r85skqhdyhfd51fqf398n6"; })
-  (fetchNuGet { pname = "System.Security.Claims"; version = "4.3.0"; sha256 = "0jvfn7j22l3mm28qjy3rcw287y9h65ha4m940waaxah07jnbzrhn"; })
-  (fetchNuGet { pname = "System.Security.Cryptography.Algorithms"; version = "4.2.0"; sha256 = "148s9g5dgm33ri7dnh19s4lgnlxbpwvrw2jnzllq2kijj4i4vs85"; })
   (fetchNuGet { pname = "System.Security.Cryptography.Algorithms"; version = "4.3.0"; sha256 = "03sq183pfl5kp7gkvq77myv7kbpdnq3y0xj7vi4q1kaw54sny0ml"; })
-  (fetchNuGet { pname = "System.Security.Cryptography.Cng"; version = "4.2.0"; sha256 = "118jijz446kix20blxip0f0q8mhsh9bz118mwc2ch1p6g7facpzc"; })
   (fetchNuGet { pname = "System.Security.Cryptography.Cng"; version = "4.3.0"; sha256 = "1k468aswafdgf56ab6yrn7649kfqx2wm9aslywjam1hdmk5yypmv"; })
   (fetchNuGet { pname = "System.Security.Cryptography.Cng"; version = "4.5.0"; sha256 = "1pm4ykbcz48f1hdmwpia432ha6qbb9kbrxrrp7cg3m8q8xn52ngn"; })
   (fetchNuGet { pname = "System.Security.Cryptography.Cng"; version = "5.0.0"; sha256 = "06hkx2za8jifpslkh491dfwzm5dxrsyxzj5lsc0achb6yzg4zqlw"; })
-  (fetchNuGet { pname = "System.Security.Cryptography.Csp"; version = "4.0.0"; sha256 = "1cwv8lqj8r15q81d2pz2jwzzbaji0l28xfrpw29kdpsaypm92z2q"; })
   (fetchNuGet { pname = "System.Security.Cryptography.Csp"; version = "4.3.0"; sha256 = "1x5wcrddf2s3hb8j78cry7yalca4lb5vfnkrysagbn6r9x6xvrx1"; })
-  (fetchNuGet { pname = "System.Security.Cryptography.Encoding"; version = "4.0.0"; sha256 = "0a8y1a5wkmpawc787gfmnrnbzdgxmx1a14ax43jf3rj9gxmy3vk4"; })
   (fetchNuGet { pname = "System.Security.Cryptography.Encoding"; version = "4.3.0"; sha256 = "1jr6w70igqn07k5zs1ph6xja97hxnb3mqbspdrff6cvssgrixs32"; })
-  (fetchNuGet { pname = "System.Security.Cryptography.OpenSsl"; version = "4.0.0"; sha256 = "16sx3cig3d0ilvzl8xxgffmxbiqx87zdi8fc73i3i7zjih1a7f4q"; })
   (fetchNuGet { pname = "System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0givpvvj8yc7gv4lhb6s1prq6p2c4147204a0wib89inqzd87gqc"; })
   (fetchNuGet { pname = "System.Security.Cryptography.Pkcs"; version = "5.0.0"; sha256 = "0hb2mndac3xrw3786bsjxjfh19bwnr991qib54k6wsqjhjyyvbwj"; })
-  (fetchNuGet { pname = "System.Security.Cryptography.Primitives"; version = "4.0.0"; sha256 = "0i7cfnwph9a10bm26m538h5xcr8b36jscp9sy1zhgifksxz4yixh"; })
   (fetchNuGet { pname = "System.Security.Cryptography.Primitives"; version = "4.3.0"; sha256 = "0pyzncsv48zwly3lw4f2dayqswcfvdwq2nz0dgwmi7fj3pn64wby"; })
   (fetchNuGet { pname = "System.Security.Cryptography.ProtectedData"; version = "4.4.0"; sha256 = "1q8ljvqhasyynp94a1d7jknk946m20lkwy2c3wa8zw2pc517fbj6"; })
   (fetchNuGet { pname = "System.Security.Cryptography.ProtectedData"; version = "4.5.0"; sha256 = "11qlc8q6b7xlspayv07718ibzvlj6ddqqxkvcbxv5b24d5kzbrb7"; })
-  (fetchNuGet { pname = "System.Security.Cryptography.X509Certificates"; version = "4.1.0"; sha256 = "0clg1bv55mfv5dq00m19cp634zx6inm31kf8ppbq1jgyjf2185dh"; })
   (fetchNuGet { pname = "System.Security.Cryptography.X509Certificates"; version = "4.3.0"; sha256 = "0valjcz5wksbvijylxijjxb1mp38mdhv03r533vnx1q3ikzdav9h"; })
   (fetchNuGet { pname = "System.Security.Permissions"; version = "4.5.0"; sha256 = "192ww5rm3c9mirxgl1nzyrwd18am3izqls0hzm0fvcdjl5grvbhm"; })
-  (fetchNuGet { pname = "System.Security.Principal"; version = "4.0.1"; sha256 = "1nbzdfqvzzbgsfdd5qsh94d7dbg2v4sw0yx6himyn52zf8z6007p"; })
-  (fetchNuGet { pname = "System.Security.Principal"; version = "4.3.0"; sha256 = "12cm2zws06z4lfc4dn31iqv7072zyi4m910d4r6wm8yx85arsfxf"; })
-  (fetchNuGet { pname = "System.Security.Principal.Windows"; version = "4.0.0"; sha256 = "1d3vc8i0zss9z8p4qprls4gbh7q4218l9845kclx7wvw41809k6z"; })
   (fetchNuGet { pname = "System.Security.Principal.Windows"; version = "4.5.0"; sha256 = "0rmj89wsl5yzwh0kqjgx45vzf694v9p92r4x4q6yxldk1cv1hi86"; })
-  (fetchNuGet { pname = "System.Security.SecureString"; version = "4.0.0"; sha256 = "026q5f46585hgisz4svhnjc7q0ljprz43v15rybqizlyli5585jz"; })
   (fetchNuGet { pname = "System.Security.SecureString"; version = "4.3.0"; sha256 = "1dypfbw7mxd8cbpcxs3jrp7i5wm1vnp43bv823mk2z94r36ixqfc"; })
+  (fetchNuGet { pname = "System.ServiceModel.Primitives"; version = "4.5.0"; sha256 = "1yalxkrnif3ww7cki86s92s3jbk3nss5kdnsw8zl8hpwibwdq49n"; })
   (fetchNuGet { pname = "System.Text.Encoding"; version = "4.0.11"; sha256 = "1dyqv0hijg265dwxg6l7aiv74102d6xjiwplh2ar1ly6xfaa4iiw"; })
   (fetchNuGet { pname = "System.Text.Encoding"; version = "4.3.0"; sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr"; })
   (fetchNuGet { pname = "System.Text.Encoding.CodePages"; version = "4.5.0"; sha256 = "19x38911pawq4mrxrm04l2bnxwxxlzq8v8rj4cbxnfjj8pnd3vj3"; })
@@ -375,17 +382,14 @@
   (fetchNuGet { pname = "System.Text.RegularExpressions"; version = "4.3.0"; sha256 = "1bgq51k7fwld0njylfn7qc5fmwrk2137gdq7djqdsw347paa9c2l"; })
   (fetchNuGet { pname = "System.Threading"; version = "4.0.11"; sha256 = "19x946h926bzvbsgj28csn46gak2crv2skpwsx80hbgazmkgb1ls"; })
   (fetchNuGet { pname = "System.Threading"; version = "4.3.0"; sha256 = "0rw9wfamvhayp5zh3j7p1yfmx9b5khbf4q50d8k5rk993rskfd34"; })
-  (fetchNuGet { pname = "System.Threading.Overlapped"; version = "4.0.1"; sha256 = "0fi79az3vmqdp9mv3wh2phblfjls89zlj6p9nc3i9f6wmfarj188"; })
   (fetchNuGet { pname = "System.Threading.Tasks"; version = "4.0.11"; sha256 = "0nr1r41rak82qfa5m0lhk9mp0k93bvfd7bbd9sdzwx9mb36g28p5"; })
   (fetchNuGet { pname = "System.Threading.Tasks"; version = "4.3.0"; sha256 = "134z3v9abw3a6jsw17xl3f6hqjpak5l682k2vz39spj4kmydg6k7"; })
   (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.0.0"; sha256 = "1cb51z062mvc2i8blpzmpn9d9mm4y307xrwi65di8ri18cz5r1zr"; })
   (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.3.0"; sha256 = "1xxcx2xh8jin360yjwm4x4cf5y3a2bwpn2ygkfkwkicz7zk50s2z"; })
+  (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.5.1"; sha256 = "1ikrplvw4m6pzjbq3bfbpr572n4i9mni577zvmrkaygvx85q3myw"; })
   (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.5.2"; sha256 = "1sh63dz0dymqcwmprp0nadm77b83vmm7lyllpv578c397bslb8hj"; })
   (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.5.3"; sha256 = "0g7r6hm572ax8v28axrdxz1gnsblg6kszq17g51pj14a5rn2af7i"; })
   (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.5.4"; sha256 = "0y6ncasgfcgnjrhynaf0lwpkpkmv4a07sswwkwbwb5h7riisj153"; })
-  (fetchNuGet { pname = "System.Threading.Thread"; version = "4.0.0"; sha256 = "1gxxm5fl36pjjpnx1k688dcw8m9l7nmf802nxis6swdaw8k54jzc"; })
-  (fetchNuGet { pname = "System.Threading.ThreadPool"; version = "4.0.10"; sha256 = "0fdr61yjcxh5imvyf93n2m3n5g9pp54bnw2l1d2rdl9z6dd31ypx"; })
-  (fetchNuGet { pname = "System.Threading.ThreadPool"; version = "4.3.0"; sha256 = "027s1f4sbx0y1xqw2irqn6x161lzj8qwvnh2gn78ciiczdv10vf1"; })
   (fetchNuGet { pname = "System.ValueTuple"; version = "4.5.0"; sha256 = "00k8ja51d0f9wrq4vv5z2jhq8hy31kac2rg0rv06prylcybzl8cy"; })
   (fetchNuGet { pname = "System.Xml.ReaderWriter"; version = "4.0.11"; sha256 = "0c6ky1jk5ada9m94wcadih98l6k1fvf6vi7vhn1msjixaha419l5"; })
   (fetchNuGet { pname = "System.Xml.ReaderWriter"; version = "4.3.0"; sha256 = "0c47yllxifzmh8gq6rq6l36zzvw4kjvlszkqa9wq3fr59n0hl3s1"; })
diff --git a/pkgs/servers/web-apps/discourse/default.nix b/pkgs/servers/web-apps/discourse/default.nix
index 5035407c48db0..5c53c12022693 100644
--- a/pkgs/servers/web-apps/discourse/default.nix
+++ b/pkgs/servers/web-apps/discourse/default.nix
@@ -159,15 +159,15 @@ let
     ];
   };
 
-  yarnOfflineCache = fetchYarnDeps {
-    yarnLock = src + "/app/assets/javascripts/yarn.lock";
-    sha256 = "0s8cmy76xh4z9y932bjshmpyr04zn3yn62ld9174lks2j965qkbl";
-  };
-
   assets = stdenv.mkDerivation {
     pname = "discourse-assets";
     inherit version src;
 
+    yarnOfflineCache = fetchYarnDeps {
+      yarnLock = src + "/app/assets/javascripts/yarn.lock";
+      sha256 = "0s8cmy76xh4z9y932bjshmpyr04zn3yn62ld9174lks2j965qkbl";
+    };
+
     nativeBuildInputs = runtimeDeps ++ [
       postgresql
       redis
@@ -203,7 +203,7 @@ let
       export HOME=$NIX_BUILD_TOP/fake_home
 
       # Make yarn install packages from our offline cache, not the registry
-      yarn config --offline set yarn-offline-mirror ${yarnOfflineCache}
+      yarn config --offline set yarn-offline-mirror $yarnOfflineCache
 
       # Fixup "resolved"-entries in yarn.lock to match our offline cache
       ${fixup_yarn_lock}/bin/fixup_yarn_lock app/assets/javascripts/yarn.lock
@@ -261,10 +261,6 @@ let
 
       runHook postInstall
     '';
-
-    passthru = {
-      inherit yarnOfflineCache;
-    };
   };
 
   discourse = stdenv.mkDerivation {
diff --git a/pkgs/servers/web-apps/dolibarr/default.nix b/pkgs/servers/web-apps/dolibarr/default.nix
index 5c4256155ddc4..a0eacd743d004 100644
--- a/pkgs/servers/web-apps/dolibarr/default.nix
+++ b/pkgs/servers/web-apps/dolibarr/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "dolibarr";
-  version = "15.0.3";
+  version = "16.0.0";
 
   src = fetchFromGitHub {
     owner = "Dolibarr";
     repo = "dolibarr";
     rev = version;
-    sha256 = "sha256-HMOYj93ZvqM0FQjt313yuGj/r9ELqQlnNkg/CxrBjRM=";
+    sha256 = "sha256-6BS1UHcfxiG1AXJSagxydtl5TU7tyZt21Q3geNmwkYY=";
   };
 
   dontBuild = true;
diff --git a/pkgs/servers/web-apps/galene/default.nix b/pkgs/servers/web-apps/galene/default.nix
index 4d57de25a8f97..0348883035f0a 100644
--- a/pkgs/servers/web-apps/galene/default.nix
+++ b/pkgs/servers/web-apps/galene/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "galene";
-  version = "0.5.5";
+  version = "0.6.1";
 
   src = fetchFromGitHub {
     owner = "jech";
     repo = "galene";
     rev = "galene-${version}";
-    hash = "sha256-J1cX8mm1yZTvsaz7DOAbmjmXkdoIrs793aDnmHm8BFk=";
+    hash = "sha256-Bnx0GqgkOHfoDYLJqVAz/tKyF+cZ0BQTRTGO2pDv7tM=";
   };
 
   vendorSha256 = "sha256-HZQeVa4UB/1jpPbfrh3XgWQe2S3qA8CM268KghgJA0w=";
diff --git a/pkgs/servers/web-apps/hedgedoc/update.sh b/pkgs/servers/web-apps/hedgedoc/update.sh
index 6403eb5da7804..02f9a1598310c 100755
--- a/pkgs/servers/web-apps/hedgedoc/update.sh
+++ b/pkgs/servers/web-apps/hedgedoc/update.sh
@@ -4,7 +4,7 @@ set -euo pipefail
 cd "$(dirname "$0")"
 
 if [ "$#" -gt 1 ] || [[ "$1" == -* ]]; then
-  echo "Regenerates packaging data for the element packages."
+  echo "Regenerates packaging data for the hedgedoc packages."
   echo "Usage: $0 [git release tag]"
   exit 1
 fi
diff --git a/pkgs/servers/web-apps/lemmy/ui.nix b/pkgs/servers/web-apps/lemmy/ui.nix
index 82aa67a45d453..24e7b87f5c703 100644
--- a/pkgs/servers/web-apps/lemmy/ui.nix
+++ b/pkgs/servers/web-apps/lemmy/ui.nix
@@ -14,8 +14,8 @@ let
 
   pkgConfig = {
     node-sass = {
-      nativeBuildInputs = [ ];
-      buildInputs = [ libsass pkg-config python3 ];
+      nativeBuildInputs = [ pkg-config ];
+      buildInputs = [ libsass python3 ];
       postInstall = ''
         LIBSASS_EXT=auto yarn --offline run build
         rm build/config.gypi
diff --git a/pkgs/servers/web-apps/mediawiki/default.nix b/pkgs/servers/web-apps/mediawiki/default.nix
index 05175d802307d..1e0fe00c4974f 100644
--- a/pkgs/servers/web-apps/mediawiki/default.nix
+++ b/pkgs/servers/web-apps/mediawiki/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mediawiki";
-  version = "1.38.2";
+  version = "1.38.4";
 
   src = fetchurl {
     url = "https://releases.wikimedia.org/mediawiki/${lib.versions.majorMinor version}/mediawiki-${version}.tar.gz";
-    sha256 = "sha256-aX6zvb8x0JgQBmEzzHtcotlinHfuphzhagW8mXA9U6Y=";
+    sha256 = "sha256-0rOjLUKkHrZYOPwwh4MH99YzA8NKfoYkEQVag7UCtJc=";
   };
 
   postPatch = ''
diff --git a/pkgs/servers/web-apps/moodle/default.nix b/pkgs/servers/web-apps/moodle/default.nix
index 5c021430eaf5e..8dbf9a385a8af 100644
--- a/pkgs/servers/web-apps/moodle/default.nix
+++ b/pkgs/servers/web-apps/moodle/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchurl, writeText, plugins ? [ ] }:
 
 let
-  version = "4.0.2";
+  version = "4.0.4";
 
   versionParts = lib.take 2 (lib.splitVersion version);
   # 4.2 -> 402, 3.11 -> 311
@@ -15,7 +15,7 @@ in stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://download.moodle.org/stable${stableVersion}/${pname}-${version}.tgz";
-    sha256 = "sha256-Ouz1U5bMzwzQZiMmVOrx3oWtqyn7GE/oeaTrsXmsBJI=";
+    sha256 = "sha256-mwfUTMjNj9BKqIFezaekUtR9lwAMmsHaAUt6rkqfW8k=";
   };
 
   phpConfig = writeText "config.php" ''
diff --git a/pkgs/servers/web-apps/outline/default.nix b/pkgs/servers/web-apps/outline/default.nix
index a509061eee93a..49433fdac8afa 100644
--- a/pkgs/servers/web-apps/outline/default.nix
+++ b/pkgs/servers/web-apps/outline/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "outline";
-  version = "0.65.2";
+  version = "0.66.1";
 
   src = fetchFromGitHub {
     owner = "outline";
     repo = "outline";
     rev = "v${version}";
-    sha256 = "sha256-a9K6nMgg1j93BPiy03M86dDecXv/J47vUaqHH3S6DOs=";
+    sha256 = "sha256-pK/rrGAL9JKt52jQRVtbQgPPe644anOARUNOhPCUCqE=";
   };
 
   nativeBuildInputs = [ makeWrapper yarn2nix-moretea.fixup_yarn_lock ];
diff --git a/pkgs/servers/web-apps/outline/yarn.lock b/pkgs/servers/web-apps/outline/yarn.lock
index ebe827f33150f..d82c2432d603c 100644
--- a/pkgs/servers/web-apps/outline/yarn.lock
+++ b/pkgs/servers/web-apps/outline/yarn.lock
@@ -43,38 +43,38 @@
   dependencies:
     "@babel/highlight" "^7.18.6"
 
-"@babel/compat-data@^7.13.11", "@babel/compat-data@^7.16.0", "@babel/compat-data@^7.18.6":
+"@babel/compat-data@^7.13.11", "@babel/compat-data@^7.16.0", "@babel/compat-data@^7.18.8":
   version "7.18.8"
   resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.18.8.tgz#2483f565faca607b8535590e84e7de323f27764d"
   integrity sha512-HSmX4WZPPK3FUxYp7g2T6EyO8j96HlZJlxmKPSh6KAcqwyDrfx7hKjXpAW/0FhFfTJsR0Yt4lAjLI2coMptIHQ==
 
-"@babel/core@^7.1.0", "@babel/core@^7.11.1", "@babel/core@^7.18.6", "@babel/core@^7.7.2", "@babel/core@^7.7.5":
-  version "7.18.6"
-  resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.18.6.tgz#54a107a3c298aee3fe5e1947a6464b9b6faca03d"
-  integrity sha512-cQbWBpxcbbs/IUredIPkHiAGULLV8iwgNRMFzvbhEXISp4f3rUUXE5+TIw6KwUWUR3DwyI6gmBRnmAtYaWehwQ==
+"@babel/core@^7.11.1", "@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.18.6":
+  version "7.18.10"
+  resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.18.10.tgz#39ad504991d77f1f3da91be0b8b949a5bc466fb8"
+  integrity sha512-JQM6k6ENcBFKVtWvLavlvi/mPcpYZ3+R+2EySDEMSMbp7Mn4FexlbbJVrx2R7Ijhr01T8gyqrOaABWIOgxeUyw==
   dependencies:
     "@ampproject/remapping" "^2.1.0"
     "@babel/code-frame" "^7.18.6"
-    "@babel/generator" "^7.18.6"
-    "@babel/helper-compilation-targets" "^7.18.6"
-    "@babel/helper-module-transforms" "^7.18.6"
-    "@babel/helpers" "^7.18.6"
-    "@babel/parser" "^7.18.6"
-    "@babel/template" "^7.18.6"
-    "@babel/traverse" "^7.18.6"
-    "@babel/types" "^7.18.6"
+    "@babel/generator" "^7.18.10"
+    "@babel/helper-compilation-targets" "^7.18.9"
+    "@babel/helper-module-transforms" "^7.18.9"
+    "@babel/helpers" "^7.18.9"
+    "@babel/parser" "^7.18.10"
+    "@babel/template" "^7.18.10"
+    "@babel/traverse" "^7.18.10"
+    "@babel/types" "^7.18.10"
     convert-source-map "^1.7.0"
     debug "^4.1.0"
     gensync "^1.0.0-beta.2"
     json5 "^2.2.1"
     semver "^6.3.0"
 
-"@babel/generator@^7.18.6", "@babel/generator@^7.18.7", "@babel/generator@^7.7.2":
-  version "7.18.7"
-  resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.18.7.tgz#2aa78da3c05aadfc82dbac16c99552fc802284bd"
-  integrity sha512-shck+7VLlY72a2w9c3zYWuE1pwOKEiQHV7GTUbSnhyl5eu3i04t30tBY82ZRWrDfo3gkakCFtevExnxbkf2a3A==
+"@babel/generator@^7.18.10", "@babel/generator@^7.7.2":
+  version "7.18.12"
+  resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.18.12.tgz#fa58daa303757bd6f5e4bbca91b342040463d9f4"
+  integrity sha512-dfQ8ebCN98SvyL7IxNMCUtZQSq5R7kxgN+r8qYTGDmmSion1hX2C0zq2yo1bsCDhXixokv1SAWTZUMYbO/V5zg==
   dependencies:
-    "@babel/types" "^7.18.7"
+    "@babel/types" "^7.18.10"
     "@jridgewell/gen-mapping" "^0.3.2"
     jsesc "^2.5.1"
 
@@ -93,12 +93,12 @@
     "@babel/helper-explode-assignable-expression" "^7.16.0"
     "@babel/types" "^7.16.0"
 
-"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.16.0", "@babel/helper-compilation-targets@^7.18.6":
-  version "7.18.6"
-  resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.6.tgz#18d35bfb9f83b1293c22c55b3d576c1315b6ed96"
-  integrity sha512-vFjbfhNCzqdeAtZflUFrG5YIFqGTqsctrtkZ1D/NB0mDW9TwW3GmmUepYY4G9wCET5rY5ugz4OGTcLd614IzQg==
+"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.16.0", "@babel/helper-compilation-targets@^7.18.9":
+  version "7.18.9"
+  resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.9.tgz#69e64f57b524cde3e5ff6cc5a9f4a387ee5563bf"
+  integrity sha512-tzLCyVmqUiFlcFoAPLA/gL9TeYrF61VLNtb+hvkuVaB5SUjW7jcfrglBIX1vUIoT7CLP3bBlIMeyEsIl2eFQNg==
   dependencies:
-    "@babel/compat-data" "^7.18.6"
+    "@babel/compat-data" "^7.18.8"
     "@babel/helper-validator-option" "^7.18.6"
     browserslist "^4.20.2"
     semver "^6.3.0"
@@ -138,10 +138,10 @@
     resolve "^1.14.2"
     semver "^6.1.2"
 
-"@babel/helper-environment-visitor@^7.16.7", "@babel/helper-environment-visitor@^7.18.6":
-  version "7.18.6"
-  resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.6.tgz#b7eee2b5b9d70602e59d1a6cad7dd24de7ca6cd7"
-  integrity sha512-8n6gSfn2baOY+qlp+VSzsosjCVGFqWKmDF0cCWOybh52Dw3SEyoWR1KrhMJASjLwIEkkAufZ0xvr+SxLHSpy2Q==
+"@babel/helper-environment-visitor@^7.16.7", "@babel/helper-environment-visitor@^7.18.9":
+  version "7.18.9"
+  resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be"
+  integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==
 
 "@babel/helper-explode-assignable-expression@^7.16.0":
   version "7.16.0"
@@ -150,13 +150,13 @@
   dependencies:
     "@babel/types" "^7.16.0"
 
-"@babel/helper-function-name@^7.16.0", "@babel/helper-function-name@^7.17.9", "@babel/helper-function-name@^7.18.6":
-  version "7.18.6"
-  resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.18.6.tgz#8334fecb0afba66e6d87a7e8c6bb7fed79926b83"
-  integrity sha512-0mWMxV1aC97dhjCah5U5Ua7668r5ZmSC2DLfH2EZnf9c3/dHZKiFa5pRLMH5tjSl471tY6496ZWk/kjNONBxhw==
+"@babel/helper-function-name@^7.16.0", "@babel/helper-function-name@^7.17.9", "@babel/helper-function-name@^7.18.9":
+  version "7.18.9"
+  resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.18.9.tgz#940e6084a55dee867d33b4e487da2676365e86b0"
+  integrity sha512-fJgWlZt7nxGksJS9a0XdSaI4XvpExnNIgRP+rVefWh5U7BL8pPuir6SJUmFKRfjWQ51OtWSzwOxhaH/EBWWc0A==
   dependencies:
     "@babel/template" "^7.18.6"
-    "@babel/types" "^7.18.6"
+    "@babel/types" "^7.18.9"
 
 "@babel/helper-hoist-variables@^7.16.0", "@babel/helper-hoist-variables@^7.18.6":
   version "7.18.6"
@@ -179,19 +179,19 @@
   dependencies:
     "@babel/types" "^7.18.6"
 
-"@babel/helper-module-transforms@^7.16.0", "@babel/helper-module-transforms@^7.17.7", "@babel/helper-module-transforms@^7.18.6":
-  version "7.18.8"
-  resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.18.8.tgz#4f8408afead0188cfa48672f9d0e5787b61778c8"
-  integrity sha512-che3jvZwIcZxrwh63VfnFTUzcAM9v/lznYkkRxIBGMPt1SudOKHAEec0SIRCfiuIzTcF7VGj/CaTT6gY4eWxvA==
+"@babel/helper-module-transforms@^7.16.0", "@babel/helper-module-transforms@^7.17.7", "@babel/helper-module-transforms@^7.18.9":
+  version "7.18.9"
+  resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.18.9.tgz#5a1079c005135ed627442df31a42887e80fcb712"
+  integrity sha512-KYNqY0ICwfv19b31XzvmI/mfcylOzbLtowkw+mfvGPAQ3kfCnMLYbED3YecL5tPd8nAYFQFAd6JHp2LxZk/J1g==
   dependencies:
-    "@babel/helper-environment-visitor" "^7.18.6"
+    "@babel/helper-environment-visitor" "^7.18.9"
     "@babel/helper-module-imports" "^7.18.6"
     "@babel/helper-simple-access" "^7.18.6"
     "@babel/helper-split-export-declaration" "^7.18.6"
     "@babel/helper-validator-identifier" "^7.18.6"
     "@babel/template" "^7.18.6"
-    "@babel/traverse" "^7.18.8"
-    "@babel/types" "^7.18.8"
+    "@babel/traverse" "^7.18.9"
+    "@babel/types" "^7.18.9"
 
 "@babel/helper-optimise-call-expression@^7.16.0", "@babel/helper-optimise-call-expression@^7.16.7":
   version "7.16.7"
@@ -246,6 +246,11 @@
   dependencies:
     "@babel/types" "^7.18.6"
 
+"@babel/helper-string-parser@^7.18.10":
+  version "7.18.10"
+  resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz#181f22d28ebe1b3857fa575f5c290b1aaf659b56"
+  integrity sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==
+
 "@babel/helper-validator-identifier@^7.15.7", "@babel/helper-validator-identifier@^7.18.6":
   version "7.18.6"
   resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz#9c97e30d31b2b8c72a1d08984f2ca9b574d7a076"
@@ -266,14 +271,14 @@
     "@babel/traverse" "^7.16.0"
     "@babel/types" "^7.16.0"
 
-"@babel/helpers@^7.18.6":
-  version "7.18.6"
-  resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.18.6.tgz#4c966140eaa1fcaa3d5a8c09d7db61077d4debfd"
-  integrity sha512-vzSiiqbQOghPngUYt/zWGvK3LAsPhz55vc9XNN0xAl2gV4ieShI2OQli5duxWHD+72PZPTKAcfcZDE1Cwc5zsQ==
+"@babel/helpers@^7.18.9":
+  version "7.18.9"
+  resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.18.9.tgz#4bef3b893f253a1eced04516824ede94dcfe7ff9"
+  integrity sha512-Jf5a+rbrLoR4eNdUmnFu8cN5eNJT6qdTdOg5IHIzq87WwyRw9PwguLFOWYgktN/60IP4fgDUawJvs7PjQIzELQ==
   dependencies:
     "@babel/template" "^7.18.6"
-    "@babel/traverse" "^7.18.6"
-    "@babel/types" "^7.18.6"
+    "@babel/traverse" "^7.18.9"
+    "@babel/types" "^7.18.9"
 
 "@babel/highlight@^7.18.6":
   version "7.18.6"
@@ -284,10 +289,10 @@
     chalk "^2.0.0"
     js-tokens "^4.0.0"
 
-"@babel/parser@^7.1.0", "@babel/parser@^7.18.6", "@babel/parser@^7.18.8", "@babel/parser@^7.7.0", "@babel/parser@^7.7.2":
-  version "7.18.8"
-  resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.18.8.tgz#822146080ac9c62dac0823bb3489622e0bc1cbdf"
-  integrity sha512-RSKRfYX20dyH+elbJK2uqAkVyucL+xXzhqlMD5/ZXx+dAAwpyB7HsvnHe/ZUGOF+xLr5Wx9/JoXVTj6BQE2/oA==
+"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.18.10", "@babel/parser@^7.18.11", "@babel/parser@^7.7.0":
+  version "7.18.11"
+  resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.18.11.tgz#68bb07ab3d380affa9a3f96728df07969645d2d9"
+  integrity sha512-9JKn5vN+hDt0Hdqn1PiJ2guflwP+B6Ga8qbDuoF0PzzVhrzsKIJo8yGqVk6CmMHiMei9w1C1Bp9IMJSIK+HPIQ==
 
 "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.16.0":
   version "7.16.2"
@@ -1004,36 +1009,37 @@
   dependencies:
     regenerator-runtime "^0.13.4"
 
-"@babel/template@^7.16.0", "@babel/template@^7.18.6", "@babel/template@^7.3.3":
-  version "7.18.6"
-  resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.18.6.tgz#1283f4993e00b929d6e2d3c72fdc9168a2977a31"
-  integrity sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==
+"@babel/template@^7.16.0", "@babel/template@^7.18.10", "@babel/template@^7.18.6", "@babel/template@^7.3.3":
+  version "7.18.10"
+  resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.18.10.tgz#6f9134835970d1dbf0835c0d100c9f38de0c5e71"
+  integrity sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==
   dependencies:
     "@babel/code-frame" "^7.18.6"
-    "@babel/parser" "^7.18.6"
-    "@babel/types" "^7.18.6"
+    "@babel/parser" "^7.18.10"
+    "@babel/types" "^7.18.10"
 
-"@babel/traverse@^7.1.0", "@babel/traverse@^7.13.0", "@babel/traverse@^7.16.0", "@babel/traverse@^7.16.7", "@babel/traverse@^7.18.6", "@babel/traverse@^7.18.8", "@babel/traverse@^7.4.5", "@babel/traverse@^7.7.0", "@babel/traverse@^7.7.2":
-  version "7.18.8"
-  resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.18.8.tgz#f095e62ab46abf1da35e5a2011f43aee72d8d5b0"
-  integrity sha512-UNg/AcSySJYR/+mIcJQDCv00T+AqRO7j/ZEJLzpaYtgM48rMg5MnkJgyNqkzo88+p4tfRvZJCEiwwfG6h4jkRg==
+"@babel/traverse@^7.13.0", "@babel/traverse@^7.16.0", "@babel/traverse@^7.16.7", "@babel/traverse@^7.18.10", "@babel/traverse@^7.18.9", "@babel/traverse@^7.4.5", "@babel/traverse@^7.7.0", "@babel/traverse@^7.7.2":
+  version "7.18.11"
+  resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.18.11.tgz#3d51f2afbd83ecf9912bcbb5c4d94e3d2ddaa16f"
+  integrity sha512-TG9PiM2R/cWCAy6BPJKeHzNbu4lPzOSZpeMfeNErskGpTJx6trEvFaVCbDvpcxwy49BKWmEPwiW8mrysNiDvIQ==
   dependencies:
     "@babel/code-frame" "^7.18.6"
-    "@babel/generator" "^7.18.7"
-    "@babel/helper-environment-visitor" "^7.18.6"
-    "@babel/helper-function-name" "^7.18.6"
+    "@babel/generator" "^7.18.10"
+    "@babel/helper-environment-visitor" "^7.18.9"
+    "@babel/helper-function-name" "^7.18.9"
     "@babel/helper-hoist-variables" "^7.18.6"
     "@babel/helper-split-export-declaration" "^7.18.6"
-    "@babel/parser" "^7.18.8"
-    "@babel/types" "^7.18.8"
+    "@babel/parser" "^7.18.11"
+    "@babel/types" "^7.18.10"
     debug "^4.1.0"
     globals "^11.1.0"
 
-"@babel/types@^7.0.0", "@babel/types@^7.0.0-beta.49", "@babel/types@^7.16.0", "@babel/types@^7.16.7", "@babel/types@^7.17.0", "@babel/types@^7.18.6", "@babel/types@^7.18.7", "@babel/types@^7.18.8", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4", "@babel/types@^7.7.0":
-  version "7.18.8"
-  resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.18.8.tgz#c5af199951bf41ba4a6a9a6d0d8ad722b30cd42f"
-  integrity sha512-qwpdsmraq0aJ3osLJRApsc2ouSJCdnMeZwB0DhbtHAtRpZNZCdlbRnHIgcRKzdE1g0iOGg644fzjOBcdOz9cPw==
+"@babel/types@^7.0.0", "@babel/types@^7.0.0-beta.49", "@babel/types@^7.16.0", "@babel/types@^7.16.7", "@babel/types@^7.17.0", "@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4", "@babel/types@^7.7.0":
+  version "7.18.10"
+  resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.18.10.tgz#4908e81b6b339ca7c6b7a555a5fc29446f26dde6"
+  integrity sha512-MJvnbEiiNkpjo+LknnmRrqbY1GPUUggjv+wQVjetM/AONoupqRALB7I6jGqNUAZsKcRIEu2J6FRFvsczljjsaQ==
   dependencies:
+    "@babel/helper-string-parser" "^7.18.10"
     "@babel/helper-validator-identifier" "^7.18.6"
     to-fast-properties "^2.0.0"
 
@@ -1047,20 +1053,20 @@
   resolved "https://registry.yarnpkg.com/@braintree/sanitize-url/-/sanitize-url-6.0.0.tgz#fe364f025ba74f6de6c837a84ef44bdb1d61e68f"
   integrity sha512-mgmE7XBYY/21erpzhexk4Cj1cyTQ9LzvnTxtzM17BJ7ERMNE6W72mQRo0I1Ud8eFJ+RVVIcBNhLFZ3GX4XFz5w==
 
-"@bull-board/api@4.0.0", "@bull-board/api@^4.0.0":
-  version "4.0.0"
-  resolved "https://registry.yarnpkg.com/@bull-board/api/-/api-4.0.0.tgz#63931cbee56ff3b1525f8771d9b8a6df12838962"
-  integrity sha512-4STXOhQv07/8d/Ei6LA38D3aaYtMuOHJMejkkF2CTAW3gAzEtwhDHmrKlk7tG01Gq2jnPNIcYxbd4WIbtP/+fQ==
+"@bull-board/api@4.2.2", "@bull-board/api@^4.2.2":
+  version "4.2.2"
+  resolved "https://registry.yarnpkg.com/@bull-board/api/-/api-4.2.2.tgz#42838f4fda71a3bdca560ea7c6eb80b3d846f446"
+  integrity sha512-YFkkeWvMit0P04k+xu4ZZ22i24m+Tq/w82LBtpt3z9Xu1rGrZoui8CI/YRsaJJE0o9TsqL5tY653oFVcdg35pQ==
   dependencies:
     redis-info "^3.0.8"
 
-"@bull-board/koa@^4.0.0":
-  version "4.0.0"
-  resolved "https://registry.yarnpkg.com/@bull-board/koa/-/koa-4.0.0.tgz#e9d39f166abdc942c0d9e045bbc23941e9e47db1"
-  integrity sha512-8UN8h0NKkpND2w47YmvacG3TZPp0GHjw2By/fuX/MqoLG2Wtu58GCzhmKij8DHW5nfAr5c/0azWwyKJZ6jR5wA==
+"@bull-board/koa@^4.2.2":
+  version "4.2.2"
+  resolved "https://registry.yarnpkg.com/@bull-board/koa/-/koa-4.2.2.tgz#97b74fde56d2df51c3cd2277cedc6f91a921dc63"
+  integrity sha512-ekrD3utbSM1PEdNcstvhli+aFjtdoFJpulkxoLfBPQweRc9yCzfqbgcg6g1DgjaNgQ5iEWLKGr3FSwBON5v6wQ==
   dependencies:
-    "@bull-board/api" "4.0.0"
-    "@bull-board/ui" "4.0.0"
+    "@bull-board/api" "4.2.2"
+    "@bull-board/ui" "4.2.2"
     ejs "^3.1.7"
     koa "^2.13.1"
     koa-mount "^4.0.0"
@@ -1068,12 +1074,12 @@
     koa-static "^5.0.0"
     koa-views "^7.0.1"
 
-"@bull-board/ui@4.0.0":
-  version "4.0.0"
-  resolved "https://registry.yarnpkg.com/@bull-board/ui/-/ui-4.0.0.tgz#6702d2fa286ba54d3f18a0af2e2344c3fe21d836"
-  integrity sha512-sesp3n3e/Zkw7oFxrihB/AGsPWRzLywTXlcc3N6ttGLE1U5ow5yRSg6F/1LFe9OpHsYko0VsYJMcTAeZk7AJ+w==
+"@bull-board/ui@4.2.2":
+  version "4.2.2"
+  resolved "https://registry.yarnpkg.com/@bull-board/ui/-/ui-4.2.2.tgz#2d5d7cbabfdea292988458d58e267bbc4b33aff0"
+  integrity sha512-QLWWTtVj6kQ01ox4OqCs/IdKm+jWFtLvhBU7RwYt8UxmxA6dZ8ffS6hWmjWk5sJ4cKk9GzPoASYMgFv0AMuh0w==
   dependencies:
-    "@bull-board/api" "4.0.0"
+    "@bull-board/api" "4.2.2"
 
 "@bundle-stats/plugin-webpack-filter@^3.1.3":
   version "3.2.0"
@@ -1279,6 +1285,11 @@
   dependencies:
     tslib "^2.1.0"
 
+"@getoutline/jest-runner-serial@^2.0.0":
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/@getoutline/jest-runner-serial/-/jest-runner-serial-2.0.0.tgz#a5b7eba7e5ce198b6fef8f27a79060af6cc2ded0"
+  integrity sha512-sV0a/FbPuT5sf4iotQm7/GY6KtseXvlmNLEOmtXkZ9hZ0NjFzro62G8C4J/e71NJWudhQsKgrxa6Zq8G7F3mnw==
+
 "@getoutline/y-prosemirror@^1.0.18":
   version "1.0.18"
   resolved "https://registry.yarnpkg.com/@getoutline/y-prosemirror/-/y-prosemirror-1.0.18.tgz#17245c0362d30adb85131c86fb9a59358884b234"
@@ -1357,173 +1368,197 @@
   resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd"
   integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==
 
-"@jest/console@^27.4.2":
-  version "27.4.2"
-  resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.4.2.tgz#7a95612d38c007ddb528ee446fe5e5e785e685ce"
-  integrity sha512-xknHThRsPB/To1FUbi6pCe43y58qFC03zfb6R7fDb/FfC7k2R3i1l+izRBJf8DI46KhYGRaF14Eo9A3qbBoixg==
+"@jest/console@^28.1.3":
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/@jest/console/-/console-28.1.3.tgz#2030606ec03a18c31803b8a36382762e447655df"
+  integrity sha512-QPAkP5EwKdK/bxIr6C1I4Vs0rm2nHiANzj/Z5X2JQkrZo6IqvC4ldZ9K95tF0HdidhA8Bo6egxSzUFPYKcEXLw==
   dependencies:
-    "@jest/types" "^27.4.2"
+    "@jest/types" "^28.1.3"
     "@types/node" "*"
     chalk "^4.0.0"
-    jest-message-util "^27.4.2"
-    jest-util "^27.4.2"
+    jest-message-util "^28.1.3"
+    jest-util "^28.1.3"
     slash "^3.0.0"
 
-"@jest/core@^27.4.5":
-  version "27.4.5"
-  resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.4.5.tgz#cae2dc34259782f4866c6606c3b480cce920ed4c"
-  integrity sha512-3tm/Pevmi8bDsgvo73nX8p/WPng6KWlCyScW10FPEoN1HU4pwI83tJ3TsFvi1FfzsjwUlMNEPowgb/rPau/LTQ==
+"@jest/core@^28.1.3":
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/@jest/core/-/core-28.1.3.tgz#0ebf2bd39840f1233cd5f2d1e6fc8b71bd5a1ac7"
+  integrity sha512-CIKBrlaKOzA7YG19BEqCw3SLIsEwjZkeJzf5bdooVnW4bH5cktqe3JX+G2YV1aK5vP8N9na1IGWFzYaTp6k6NA==
   dependencies:
-    "@jest/console" "^27.4.2"
-    "@jest/reporters" "^27.4.5"
-    "@jest/test-result" "^27.4.2"
-    "@jest/transform" "^27.4.5"
-    "@jest/types" "^27.4.2"
+    "@jest/console" "^28.1.3"
+    "@jest/reporters" "^28.1.3"
+    "@jest/test-result" "^28.1.3"
+    "@jest/transform" "^28.1.3"
+    "@jest/types" "^28.1.3"
     "@types/node" "*"
     ansi-escapes "^4.2.1"
     chalk "^4.0.0"
-    emittery "^0.8.1"
+    ci-info "^3.2.0"
     exit "^0.1.2"
-    graceful-fs "^4.2.4"
-    jest-changed-files "^27.4.2"
-    jest-config "^27.4.5"
-    jest-haste-map "^27.4.5"
-    jest-message-util "^27.4.2"
-    jest-regex-util "^27.4.0"
-    jest-resolve "^27.4.5"
-    jest-resolve-dependencies "^27.4.5"
-    jest-runner "^27.4.5"
-    jest-runtime "^27.4.5"
-    jest-snapshot "^27.4.5"
-    jest-util "^27.4.2"
-    jest-validate "^27.4.2"
-    jest-watcher "^27.4.2"
+    graceful-fs "^4.2.9"
+    jest-changed-files "^28.1.3"
+    jest-config "^28.1.3"
+    jest-haste-map "^28.1.3"
+    jest-message-util "^28.1.3"
+    jest-regex-util "^28.0.2"
+    jest-resolve "^28.1.3"
+    jest-resolve-dependencies "^28.1.3"
+    jest-runner "^28.1.3"
+    jest-runtime "^28.1.3"
+    jest-snapshot "^28.1.3"
+    jest-util "^28.1.3"
+    jest-validate "^28.1.3"
+    jest-watcher "^28.1.3"
     micromatch "^4.0.4"
+    pretty-format "^28.1.3"
     rimraf "^3.0.0"
     slash "^3.0.0"
     strip-ansi "^6.0.0"
 
-"@jest/environment@^27.4.4":
-  version "27.4.4"
-  resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.4.4.tgz#66ebebc79673d84aad29d2bb70a8c51e6c29bb4d"
-  integrity sha512-q+niMx7cJgt/t/b6dzLOh4W8Ef/8VyKG7hxASK39jakijJzbFBGpptx3RXz13FFV7OishQ9lTbv+dQ5K3EhfDQ==
+"@jest/environment@^28.1.3":
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-28.1.3.tgz#abed43a6b040a4c24fdcb69eab1f97589b2d663e"
+  integrity sha512-1bf40cMFTEkKyEf585R9Iz1WayDjHoHqvts0XFYEqyKM3cFWDpeMoqKKTAF9LSYQModPUlh8FKptoM2YcMWAXA==
   dependencies:
-    "@jest/fake-timers" "^27.4.2"
-    "@jest/types" "^27.4.2"
+    "@jest/fake-timers" "^28.1.3"
+    "@jest/types" "^28.1.3"
     "@types/node" "*"
-    jest-mock "^27.4.2"
+    jest-mock "^28.1.3"
 
-"@jest/fake-timers@^27.4.2":
-  version "27.4.2"
-  resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.4.2.tgz#d217f86c3ba2027bf29e0b731fd0cb761a72d093"
-  integrity sha512-f/Xpzn5YQk5adtqBgvw1V6bF8Nx3hY0OIRRpCvWcfPl0EAjdqWPdhH3t/3XpiWZqtjIEHDyMKP9ajpva1l4Zmg==
+"@jest/expect-utils@^28.1.3":
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-28.1.3.tgz#58561ce5db7cd253a7edddbc051fb39dda50f525"
+  integrity sha512-wvbi9LUrHJLn3NlDW6wF2hvIMtd4JUl2QNVrjq+IBSHirgfrR3o9RnVtxzdEGO2n9JyIWwHnLfby5KzqBGg2YA==
   dependencies:
-    "@jest/types" "^27.4.2"
-    "@sinonjs/fake-timers" "^8.0.1"
+    jest-get-type "^28.0.2"
+
+"@jest/expect@^28.1.3":
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-28.1.3.tgz#9ac57e1d4491baca550f6bdbd232487177ad6a72"
+  integrity sha512-lzc8CpUbSoE4dqT0U+g1qODQjBRHPpCPXissXD4mS9+sWQdmmpeJ9zSH1rS1HEkrsMN0fb7nKrJ9giAR1d3wBw==
+  dependencies:
+    expect "^28.1.3"
+    jest-snapshot "^28.1.3"
+
+"@jest/fake-timers@^28.1.3":
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-28.1.3.tgz#230255b3ad0a3d4978f1d06f70685baea91c640e"
+  integrity sha512-D/wOkL2POHv52h+ok5Oj/1gOG9HSywdoPtFsRCUmlCILXNn5eIWmcnd3DIiWlJnpGvQtmajqBP95Ei0EimxfLw==
+  dependencies:
+    "@jest/types" "^28.1.3"
+    "@sinonjs/fake-timers" "^9.1.2"
     "@types/node" "*"
-    jest-message-util "^27.4.2"
-    jest-mock "^27.4.2"
-    jest-util "^27.4.2"
+    jest-message-util "^28.1.3"
+    jest-mock "^28.1.3"
+    jest-util "^28.1.3"
 
-"@jest/globals@^27.4.4":
-  version "27.4.4"
-  resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.4.4.tgz#fe501a80c23ea2dab585c42be2a519bb5e38530d"
-  integrity sha512-bqpqQhW30BOreXM8bA8t8JbOQzsq/WnPTnBl+It3UxAD9J8yxEAaBEylHx1dtBapAr/UBk8GidXbzmqnee8tYQ==
+"@jest/globals@^28.1.3":
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-28.1.3.tgz#a601d78ddc5fdef542728309894895b4a42dc333"
+  integrity sha512-XFU4P4phyryCXu1pbcqMO0GSQcYe1IsalYCDzRNyhetyeyxMcIxa11qPNDpVNLeretItNqEmYYQn1UYz/5x1NA==
   dependencies:
-    "@jest/environment" "^27.4.4"
-    "@jest/types" "^27.4.2"
-    expect "^27.4.2"
+    "@jest/environment" "^28.1.3"
+    "@jest/expect" "^28.1.3"
+    "@jest/types" "^28.1.3"
 
-"@jest/reporters@^27.4.5":
-  version "27.4.5"
-  resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.4.5.tgz#e229acca48d18ea39e805540c1c322b075ae63ad"
-  integrity sha512-3orsG4vi8zXuBqEoy2LbnC1kuvkg1KQUgqNxmxpQgIOQEPeV0onvZu+qDQnEoX8qTQErtqn/xzcnbpeTuOLSiA==
+"@jest/reporters@^28.1.3":
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-28.1.3.tgz#9adf6d265edafc5fc4a434cfb31e2df5a67a369a"
+  integrity sha512-JuAy7wkxQZVNU/V6g9xKzCGC5LVXx9FDcABKsSXp5MiKPEE2144a/vXTEDoyzjUpZKfVwp08Wqg5A4WfTMAzjg==
   dependencies:
     "@bcoe/v8-coverage" "^0.2.3"
-    "@jest/console" "^27.4.2"
-    "@jest/test-result" "^27.4.2"
-    "@jest/transform" "^27.4.5"
-    "@jest/types" "^27.4.2"
+    "@jest/console" "^28.1.3"
+    "@jest/test-result" "^28.1.3"
+    "@jest/transform" "^28.1.3"
+    "@jest/types" "^28.1.3"
+    "@jridgewell/trace-mapping" "^0.3.13"
     "@types/node" "*"
     chalk "^4.0.0"
     collect-v8-coverage "^1.0.0"
     exit "^0.1.2"
-    glob "^7.1.2"
-    graceful-fs "^4.2.4"
+    glob "^7.1.3"
+    graceful-fs "^4.2.9"
     istanbul-lib-coverage "^3.0.0"
-    istanbul-lib-instrument "^4.0.3"
+    istanbul-lib-instrument "^5.1.0"
     istanbul-lib-report "^3.0.0"
     istanbul-lib-source-maps "^4.0.0"
-    istanbul-reports "^3.0.2"
-    jest-haste-map "^27.4.5"
-    jest-resolve "^27.4.5"
-    jest-util "^27.4.2"
-    jest-worker "^27.4.5"
+    istanbul-reports "^3.1.3"
+    jest-message-util "^28.1.3"
+    jest-util "^28.1.3"
+    jest-worker "^28.1.3"
     slash "^3.0.0"
-    source-map "^0.6.0"
     string-length "^4.0.1"
+    strip-ansi "^6.0.0"
     terminal-link "^2.0.0"
-    v8-to-istanbul "^8.1.0"
+    v8-to-istanbul "^9.0.1"
 
-"@jest/source-map@^27.4.0":
-  version "27.4.0"
-  resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.4.0.tgz#2f0385d0d884fb3e2554e8f71f8fa957af9a74b6"
-  integrity sha512-Ntjx9jzP26Bvhbm93z/AKcPRj/9wrkI88/gK60glXDx1q+IeI0rf7Lw2c89Ch6ofonB0On/iRDreQuQ6te9pgQ==
+"@jest/schemas@^28.1.3":
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-28.1.3.tgz#ad8b86a66f11f33619e3d7e1dcddd7f2d40ff905"
+  integrity sha512-/l/VWsdt/aBXgjshLWOFyFt3IVdYypu5y2Wn2rOO1un6nkqIn8SLXzgIMYXFyYsRWDyF5EthmKJMIdJvk08grg==
   dependencies:
+    "@sinclair/typebox" "^0.24.1"
+
+"@jest/source-map@^28.1.2":
+  version "28.1.2"
+  resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-28.1.2.tgz#7fe832b172b497d6663cdff6c13b0a920e139e24"
+  integrity sha512-cV8Lx3BeStJb8ipPHnqVw/IM2VCMWO3crWZzYodSIkxXnRcXJipCdx1JCK0K5MsJJouZQTH73mzf4vgxRaH9ww==
+  dependencies:
+    "@jridgewell/trace-mapping" "^0.3.13"
     callsites "^3.0.0"
-    graceful-fs "^4.2.4"
-    source-map "^0.6.0"
+    graceful-fs "^4.2.9"
 
-"@jest/test-result@^27.4.2":
-  version "27.4.2"
-  resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.4.2.tgz#05fd4a5466ec502f3eae0b39dff2b93ea4d5d9ec"
-  integrity sha512-kr+bCrra9jfTgxHXHa2UwoQjxvQk3Am6QbpAiJ5x/50LW8llOYrxILkqY0lZRW/hu8FXesnudbql263+EW9iNA==
+"@jest/test-result@^28.1.3":
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-28.1.3.tgz#5eae945fd9f4b8fcfce74d239e6f725b6bf076c5"
+  integrity sha512-kZAkxnSE+FqE8YjW8gNuoVkkC9I7S1qmenl8sGcDOLropASP+BkcGKwhXoyqQuGOGeYY0y/ixjrd/iERpEXHNg==
   dependencies:
-    "@jest/console" "^27.4.2"
-    "@jest/types" "^27.4.2"
+    "@jest/console" "^28.1.3"
+    "@jest/types" "^28.1.3"
     "@types/istanbul-lib-coverage" "^2.0.0"
     collect-v8-coverage "^1.0.0"
 
-"@jest/test-sequencer@^27.4.5":
-  version "27.4.5"
-  resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.4.5.tgz#1d7e026844d343b60d2ca7fd82c579a17b445d7d"
-  integrity sha512-n5woIn/1v+FT+9hniymHPARA9upYUmfi5Pw9ewVwXCDlK4F5/Gkees9v8vdjGdAIJ2MPHLHodiajLpZZanWzEQ==
+"@jest/test-sequencer@^28.1.3":
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-28.1.3.tgz#9d0c283d906ac599c74bde464bc0d7e6a82886c3"
+  integrity sha512-NIMPEqqa59MWnDi1kvXXpYbqsfQmSJsIbnd85mdVGkiDfQ9WQQTXOLsvISUfonmnBT+w85WEgneCigEEdHDFxw==
   dependencies:
-    "@jest/test-result" "^27.4.2"
-    graceful-fs "^4.2.4"
-    jest-haste-map "^27.4.5"
-    jest-runtime "^27.4.5"
+    "@jest/test-result" "^28.1.3"
+    graceful-fs "^4.2.9"
+    jest-haste-map "^28.1.3"
+    slash "^3.0.0"
 
-"@jest/transform@^27.4.5":
-  version "27.4.5"
-  resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.4.5.tgz#3dfe2e3680cd4aa27356172bf25617ab5b94f195"
-  integrity sha512-PuMet2UlZtlGzwc6L+aZmR3I7CEBpqadO03pU40l2RNY2fFJ191b9/ITB44LNOhVtsyykx0OZvj0PCyuLm7Eew==
+"@jest/transform@^28.1.3":
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-28.1.3.tgz#59d8098e50ab07950e0f2fc0fc7ec462371281b0"
+  integrity sha512-u5dT5di+oFI6hfcLOHGTAfmUxFRrjK+vnaP0kkVow9Md/M7V/MxqQMOz/VV25UZO8pzeA9PjfTpOu6BDuwSPQA==
   dependencies:
-    "@babel/core" "^7.1.0"
-    "@jest/types" "^27.4.2"
-    babel-plugin-istanbul "^6.0.0"
+    "@babel/core" "^7.11.6"
+    "@jest/types" "^28.1.3"
+    "@jridgewell/trace-mapping" "^0.3.13"
+    babel-plugin-istanbul "^6.1.1"
     chalk "^4.0.0"
     convert-source-map "^1.4.0"
     fast-json-stable-stringify "^2.0.0"
-    graceful-fs "^4.2.4"
-    jest-haste-map "^27.4.5"
-    jest-regex-util "^27.4.0"
-    jest-util "^27.4.2"
+    graceful-fs "^4.2.9"
+    jest-haste-map "^28.1.3"
+    jest-regex-util "^28.0.2"
+    jest-util "^28.1.3"
     micromatch "^4.0.4"
-    pirates "^4.0.1"
+    pirates "^4.0.4"
     slash "^3.0.0"
-    source-map "^0.6.1"
-    write-file-atomic "^3.0.0"
+    write-file-atomic "^4.0.1"
 
-"@jest/types@^27.4.2":
-  version "27.4.2"
-  resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.4.2.tgz#96536ebd34da6392c2b7c7737d693885b5dd44a5"
-  integrity sha512-j35yw0PMTPpZsUoOBiuHzr1zTYoad1cVIE0ajEjcrJONxxrko/IRGKkXx3os0Nsi4Hu3+5VmDbVfq5WhG/pWAg==
+"@jest/types@^28.1.3":
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/@jest/types/-/types-28.1.3.tgz#b05de80996ff12512bc5ceb1d208285a7d11748b"
+  integrity sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==
   dependencies:
+    "@jest/schemas" "^28.1.3"
     "@types/istanbul-lib-coverage" "^2.0.0"
     "@types/istanbul-reports" "^3.0.0"
     "@types/node" "*"
-    "@types/yargs" "^16.0.0"
+    "@types/yargs" "^17.0.8"
     chalk "^4.0.0"
 
 "@jimp/bmp@^0.16.1":
@@ -1853,10 +1888,10 @@
   resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz#b6461fb0c2964356c469e115f504c95ad97ab88c"
   integrity sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w==
 
-"@jridgewell/trace-mapping@^0.3.9":
-  version "0.3.11"
-  resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.11.tgz#eb2e124521f27673493030d02dffedf60e56553f"
-  integrity sha512-RllI476aSMsxzeI9TtlSMoNTgHDxEmnl6GkkHwhr0vdL8W+0WuesyI8Vd3rBOfrwtPXbPxdT9ADJdiOKgzxPQA==
+"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.13", "@jridgewell/trace-mapping@^0.3.9":
+  version "0.3.14"
+  resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.14.tgz#b231a081d8f66796e475ad588a1ef473112701ed"
+  integrity sha512-bJWEfQ9lPTvm3SneWwRFVLzrh6nhjwqw7TUFFBEMzwvg7t7PCDenf2lDwqo4NQXzdpgBXyFgDWnQA+2vkruksQ==
   dependencies:
     "@jridgewell/resolve-uri" "^3.0.3"
     "@jridgewell/sourcemap-codec" "^1.4.10"
@@ -1871,6 +1906,36 @@
   resolved "https://registry.yarnpkg.com/@lifeomic/attempt/-/attempt-3.0.3.tgz#e742a5b85eb673e2f1746b0f39cb932cbc6145bb"
   integrity sha512-GlM2AbzrErd/TmLL3E8hAHmb5Q7VhDJp35vIbyPVA5Rz55LZuRr8pwL3qrwwkVNo05gMX1J44gURKb4MHQZo7w==
 
+"@msgpackr-extract/msgpackr-extract-darwin-arm64@2.1.2":
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-darwin-arm64/-/msgpackr-extract-darwin-arm64-2.1.2.tgz#9571b87be3a3f2c46de05585470bc4f3af2f6f00"
+  integrity sha512-TyVLn3S/+ikMDsh0gbKv2YydKClN8HaJDDpONlaZR+LVJmsxLFUgA+O7zu59h9+f9gX1aj/ahw9wqa6rosmrYQ==
+
+"@msgpackr-extract/msgpackr-extract-darwin-x64@2.1.2":
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-darwin-x64/-/msgpackr-extract-darwin-x64-2.1.2.tgz#bfbc6936ede2955218f5621a675679a5fe8e6f4c"
+  integrity sha512-YPXtcVkhmVNoMGlqp81ZHW4dMxK09msWgnxtsDpSiZwTzUBG2N+No2bsr7WMtBKCVJMSD6mbAl7YhKUqkp/Few==
+
+"@msgpackr-extract/msgpackr-extract-linux-arm64@2.1.2":
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-linux-arm64/-/msgpackr-extract-linux-arm64-2.1.2.tgz#22555e28382af2922e7450634c8a2f240bb9eb82"
+  integrity sha512-vHZ2JiOWF2+DN9lzltGbhtQNzDo8fKFGrf37UJrgqxU0yvtERrzUugnfnX1wmVfFhSsF8OxrfqiNOUc5hko1Zg==
+
+"@msgpackr-extract/msgpackr-extract-linux-arm@2.1.2":
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-linux-arm/-/msgpackr-extract-linux-arm-2.1.2.tgz#ffb6ae1beea7ac572b6be6bf2a8e8162ebdd8be7"
+  integrity sha512-42R4MAFeIeNn+L98qwxAt360bwzX2Kf0ZQkBBucJ2Ircza3asoY4CDbgiu9VWklq8gWJVSJSJBwDI+c/THiWkA==
+
+"@msgpackr-extract/msgpackr-extract-linux-x64@2.1.2":
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-linux-x64/-/msgpackr-extract-linux-x64-2.1.2.tgz#7caf62eebbfb1345de40f75e89666b3d4194755f"
+  integrity sha512-RjRoRxg7Q3kPAdUSC5EUUPlwfMkIVhmaRTIe+cqHbKrGZ4M6TyCA/b5qMaukQ/1CHWrqYY2FbKOAU8Hg0pQFzg==
+
+"@msgpackr-extract/msgpackr-extract-win32-x64@2.1.2":
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-win32-x64/-/msgpackr-extract-win32-x64-2.1.2.tgz#f2d8b9ddd8d191205ed26ce54aba3dfc5ae3e7c9"
+  integrity sha512-rIZVR48zA8hGkHIK7ED6+ZiXsjRCcAVBJbm8o89OKAMTmEAQ2QvoOxoiu3w2isAaWwzgtQIOFIqHwvZDyLKCvw==
+
 "@nicolo-ribaudo/chokidar-2@^2.1.8":
   version "2.1.8"
   resolved "https://registry.yarnpkg.com/@nicolo-ribaudo/chokidar-2/-/chokidar-2-2.1.8.tgz#eef8d9b47e8dc589499f14d656e8d2dd978c3d14"
@@ -2290,6 +2355,11 @@
     "@sentry/types" "6.3.1"
     tslib "^1.9.3"
 
+"@sinclair/typebox@^0.24.1":
+  version "0.24.27"
+  resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.24.27.tgz#d55643516a1546174e10da681a8aaa81e757452d"
+  integrity sha512-K7C7IlQ3zLePEZleUN21ceBA2aLcMnLHTLph8QWk1JK37L90obdpY+QGY8bXMKxf1ht1Z0MNewvXxWv0oGDYFg==
+
 "@sindresorhus/is@^0.14.0":
   version "0.14.0"
   resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea"
@@ -2302,10 +2372,10 @@
   dependencies:
     type-detect "4.0.8"
 
-"@sinonjs/fake-timers@^8.0.1":
-  version "8.1.0"
-  resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz#3fdc2b6cb58935b21bfb8d1625eb1300484316e7"
-  integrity sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==
+"@sinonjs/fake-timers@^9.1.2":
+  version "9.1.2"
+  resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-9.1.2.tgz#4eaab737fab77332ab132d396a3c0d364bd0ea8c"
+  integrity sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw==
   dependencies:
     "@sinonjs/commons" "^1.7.0"
 
@@ -2326,12 +2396,12 @@
   dependencies:
     defer-to-connect "^1.0.1"
 
-"@theo.gravity/datadog-apm@2.1.0":
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/@theo.gravity/datadog-apm/-/datadog-apm-2.1.0.tgz#40e94c5d90657d3c73a189b3b0b896a75c8a87b7"
-  integrity sha512-LiDN4f4kvPtrDK553zGexN5UlQ99d7rKv1yTM1/FcFA0fOoD+QqgVmTF/6Qffb3mamQc3jdkW9FX+v4LZKan8A==
+"@theo.gravity/datadog-apm@2.2.0":
+  version "2.2.0"
+  resolved "https://registry.yarnpkg.com/@theo.gravity/datadog-apm/-/datadog-apm-2.2.0.tgz#a005949a9436c24316e6ad99a7e5fe182a29f0b5"
+  integrity sha512-2538L5oW69eApPPSdlPGcyDqlpb4vo6knGONQax7eIiO44gW7XK2r/Hc6hdQ6aSl8PMoNP6uG6khHg0kTz8Nsw==
   dependencies:
-    dd-trace "^1.6.0"
+    dd-trace "^1.7.1"
 
 "@tippy.js/react@^2.2.2":
   version "2.2.3"
@@ -2346,10 +2416,10 @@
   resolved "https://registry.yarnpkg.com/@tommoor/remove-markdown/-/remove-markdown-0.3.2.tgz#5288ddd0e26b6b173e76ebb31c94653b0dcff45d"
   integrity sha512-awcc9hfLZqyyZHOGzAHbnjgZJpQGS1W1oZZ5GXOTTnbKVdKQ4OWYbrRWPUvXI2YAKJazrcS8rxPh67PX3rpGkQ==
 
-"@tootallnate/once@1":
-  version "1.1.2"
-  resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82"
-  integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==
+"@tootallnate/once@2":
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf"
+  integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==
 
 "@types/accepts@*":
   version "1.3.5"
@@ -2363,7 +2433,7 @@
   resolved "https://registry.yarnpkg.com/@types/async-lock/-/async-lock-1.1.5.tgz#a82f33e09aef451d6ded7bffae73f9d254723124"
   integrity sha512-A9ClUfmj6wwZMLRz0NaYzb98YH1exlHdf/cdDSKBfMQJnPOdO8xlEW0Eh2QsTTntGzOFWURcEjYElkZ1IY4GCQ==
 
-"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14":
+"@types/babel__core@^7.1.14":
   version "7.1.17"
   resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.17.tgz#f50ac9d20d64153b510578d84f9643f9a3afbe64"
   integrity sha512-6zzkezS9QEIL8yCBvXWxPTJPNuMeECJVxSOhxNY/jfq9LxOTHivaYTqr37n9LknWWRTIkzqH2UilS5QFvfa90A==
@@ -2389,7 +2459,7 @@
     "@babel/parser" "^7.1.0"
     "@babel/types" "^7.0.0"
 
-"@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6":
+"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6":
   version "7.0.15"
   resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.15.tgz#db9e4238931eb69ef8aab0ad6523d4d4caa39d03"
   integrity sha512-Pzh9O3sTK8V6I1olsXpCfj2k/ygO2q1X0vhhnDrEQyYLHZesWz+zMZMVcwXLCYf0U36EtmyYaFGPfXlTtDHe3A==
@@ -2414,12 +2484,13 @@
   resolved "https://registry.yarnpkg.com/@types/body-scroll-lock/-/body-scroll-lock-3.1.0.tgz#435f6abf682bf58640e1c2ee5978320b891970e7"
   integrity sha512-3owAC4iJub5WPqRhxd8INarF2bWeQq1yQHBgYhN0XLBJMpd5ED10RrJ3aKiAwlTyL5wK7RkBD4SZUQz2AAAMdA==
 
-"@types/bull@^3.15.5":
-  version "3.15.5"
-  resolved "https://registry.yarnpkg.com/@types/bull/-/bull-3.15.5.tgz#a4459c127c5b10fb847531579a2cd5db35751366"
-  integrity sha512-XgJQWJ03jyKMfdoL8IAIoHIo7JkkL74kcxuujTONkSJswm0giIJ9kuVgDNHS0OvD+OiPNcFmbBl0H3scj2+A8A==
+"@types/bull@^3.15.9":
+  version "3.15.9"
+  resolved "https://registry.yarnpkg.com/@types/bull/-/bull-3.15.9.tgz#e10e0901ec3762bff85716b3c580277960751c93"
+  integrity sha512-MPUcyPPQauAmynoO3ezHAmCOhbB0pWmYyijr/5ctaCqhbKWsjW0YCod38ZcLzUBprosfZ9dPqfYIcfdKjk7RNQ==
   dependencies:
     "@types/ioredis" "*"
+    "@types/redis" "^2.8.0"
 
 "@types/cheerio@*":
   version "0.22.30"
@@ -2530,6 +2601,13 @@
     "@types/qs" "*"
     "@types/range-parser" "*"
 
+"@types/express-useragent@^1.0.2":
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/@types/express-useragent/-/express-useragent-1.0.2.tgz#c129f2aae983fb7b646dbcd254973936f745c12f"
+  integrity sha512-eUVCqMsmEO7adMJSxuAARPUxbEJLYQJATiB86bx3MGeyUOTgKNnLTfAMaF+z84DftcH6NBbFFwiRomIcsFVdUQ==
+  dependencies:
+    "@types/express" "*"
+
 "@types/express@*":
   version "4.17.13"
   resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.13.tgz#a76e2995728999bab51a33fabce1d705a3709034"
@@ -2572,10 +2650,10 @@
   resolved "https://registry.yarnpkg.com/@types/google.analytics/-/google.analytics-0.0.42.tgz#efe6ef9251a22ec8208dbb09f221a48a1863d720"
   integrity sha512-w0ZFj3SHznQXSq99kFCuO8tkN6w4T14znjrF2alLCSDnHOXEnpzneyNwxLvekcsDBInr8b5mXmzYh03GArqEyw==
 
-"@types/graceful-fs@^4.1.2":
-  version "4.1.4"
-  resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.4.tgz#4ff9f641a7c6d1a3508ff88bc3141b152772e753"
-  integrity sha512-mWA/4zFQhfvOA8zWkXobwJvBD7vzcxgrOQ0J5CH1votGqdq9m7+FwtGaqyCZqC3NyyBkc9z4m+iry4LlqcMWJg==
+"@types/graceful-fs@^4.1.3":
+  version "4.1.5"
+  resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15"
+  integrity sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==
   dependencies:
     "@types/node" "*"
 
@@ -2645,13 +2723,22 @@
   dependencies:
     "@types/istanbul-lib-report" "*"
 
-"@types/jest@^27.0.2":
-  version "27.0.2"
-  resolved "https://registry.yarnpkg.com/@types/jest/-/jest-27.0.2.tgz#ac383c4d4aaddd29bbf2b916d8d105c304a5fcd7"
-  integrity sha512-4dRxkS/AFX0c5XW6IPMNOydLn2tEhNhJV7DnYK+0bjoJZ+QTmfucBlihX7aoEsh/ocYtkLC73UbnBXBXIxsULA==
+"@types/jest@^28.1.6":
+  version "28.1.6"
+  resolved "https://registry.yarnpkg.com/@types/jest/-/jest-28.1.6.tgz#d6a9cdd38967d2d746861fb5be6b120e38284dd4"
+  integrity sha512-0RbGAFMfcBJKOmqRazM8L98uokwuwD5F8rHrv/ZMbrZBwVOWZUyPG6VFNscjYr/vjM3Vu4fRrCPbOs42AfemaQ==
+  dependencies:
+    jest-matcher-utils "^28.0.0"
+    pretty-format "^28.0.0"
+
+"@types/jsdom@^16.2.4":
+  version "16.2.15"
+  resolved "https://registry.yarnpkg.com/@types/jsdom/-/jsdom-16.2.15.tgz#6c09990ec43b054e49636cba4d11d54367fc90d6"
+  integrity sha512-nwF87yjBKuX/roqGYerZZM0Nv1pZDMAT5YhOHYeM/72Fic+VEqJh4nyoqoapzJnW3pUlfxPY5FhgsJtM+dRnQQ==
   dependencies:
-    jest-diff "^27.0.0"
-    pretty-format "^27.0.0"
+    "@types/node" "*"
+    "@types/parse5" "^6.0.3"
+    "@types/tough-cookie" "*"
 
 "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.6", "@types/json-schema@^7.0.9":
   version "7.0.9"
@@ -2663,10 +2750,10 @@
   resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee"
   integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4=
 
-"@types/jsonwebtoken@^8.5.5":
-  version "8.5.5"
-  resolved "https://registry.yarnpkg.com/@types/jsonwebtoken/-/jsonwebtoken-8.5.5.tgz#da5f2f4baee88f052ef3e4db4c1a0afb46cff22c"
-  integrity sha512-OGqtHQ7N5/Ap/TUwO6IgHDuLiAoTmHhGpNvgkCm/F4N6pKzx/RBSfr2OXZSwC6vkfnsEdb6+7DNZVtiXiwdwFw==
+"@types/jsonwebtoken@^8.5.8":
+  version "8.5.8"
+  resolved "https://registry.yarnpkg.com/@types/jsonwebtoken/-/jsonwebtoken-8.5.8.tgz#01b39711eb844777b7af1d1f2b4cf22fda1c0c44"
+  integrity sha512-zm6xBQpFDIDM6o9r6HSgDeIcLy82TKWctCXEPbJJcXb5AKmi5BNNdLXneixK4lplX3PqIVcwLBCGE/kAGnlD4A==
   dependencies:
     "@types/node" "*"
 
@@ -2741,6 +2828,13 @@
     "@types/koa" "*"
     "@types/koa-send" "*"
 
+"@types/koa-useragent@^2.1.2":
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/@types/koa-useragent/-/koa-useragent-2.1.2.tgz#7c75fe55c742e559c4643d65b34c6ce5945f853f"
+  integrity sha512-vpOSl6Rw6aCJr+kyWb27kGOdFiQD5WQeLOOOQgwMY9Lrqwbocm/td5paP5uE8bOy58ik/rZUly8zoVZACwZXUA==
+  dependencies:
+    koa-useragent "*"
+
 "@types/koa@*", "@types/koa@^2.13.1", "@types/koa@^2.13.4":
   version "2.13.4"
   resolved "https://registry.yarnpkg.com/@types/koa/-/koa-2.13.4.tgz#10620b3f24a8027ef5cbae88b393d1b31205726b"
@@ -2854,11 +2948,6 @@
   dependencies:
     "@types/node" "*"
 
-"@types/normalize-package-data@^2.4.0":
-  version "2.4.0"
-  resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e"
-  integrity sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==
-
 "@types/oauth@*":
   version "0.9.1"
   resolved "https://registry.yarnpkg.com/@types/oauth/-/oauth-0.9.1.tgz#e17221e7f7936b0459ae7d006255dff61adca305"
@@ -2876,6 +2965,11 @@
   resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0"
   integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==
 
+"@types/parse5@^6.0.3":
+  version "6.0.3"
+  resolved "https://registry.yarnpkg.com/@types/parse5/-/parse5-6.0.3.tgz#705bb349e789efa06f43f128cef51240753424cb"
+  integrity sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==
+
 "@types/passport-oauth2@^1.4.11":
   version "1.4.11"
   resolved "https://registry.yarnpkg.com/@types/passport-oauth2/-/passport-oauth2-1.4.11.tgz#fbca527ecb44258774d17bcb251630c321515fa9"
@@ -2958,9 +3052,9 @@
     "@types/prosemirror-view" "*"
 
 "@types/prosemirror-markdown@^1.0.3":
-  version "1.5.5"
-  resolved "https://registry.yarnpkg.com/@types/prosemirror-markdown/-/prosemirror-markdown-1.5.5.tgz#f3cbc27398d1b606c45b2a02354dbfc49928c466"
-  integrity sha512-1a97EHWU0uuNHw8zaRaMXHSUQGd/jUl2wCcaBtMNvMwgdVUx1hg6A7hbs032Aiwq/nQfaC360/KwiFy0nMTkzA==
+  version "1.5.6"
+  resolved "https://registry.yarnpkg.com/@types/prosemirror-markdown/-/prosemirror-markdown-1.5.6.tgz#f985cec020ff37adcc2b490536adb4f82985dfae"
+  integrity sha512-Zm2YvkDsOrvvTct6GxTHAOQ/eAMwmeUMWoyyS1meNqdM3QHmp+mHln03tTAZKd6iRu1WbIKwHzTz/Mhof3C54Q==
   dependencies:
     "@types/markdown-it" "*"
     "@types/prosemirror-model" "*"
@@ -3123,6 +3217,18 @@
   dependencies:
     "@types/react" "*"
 
+"@types/redis-info@^3.0.0":
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/@types/redis-info/-/redis-info-3.0.0.tgz#c925cd7249d71c3d9e12ef5b15168bdf26111b1d"
+  integrity sha512-uvjYcIvPGAIJvnRT3y6jacP1Qqs3hNQLBeKDvDtJOh5ADISsMsMJK15WzP++cfRfAwb1ZafAXwC3YYC/uKAENQ==
+
+"@types/redis@^2.8.0":
+  version "2.8.32"
+  resolved "https://registry.yarnpkg.com/@types/redis/-/redis-2.8.32.tgz#1d3430219afbee10f8cfa389dad2571a05ecfb11"
+  integrity sha512-7jkMKxcGq9p242exlbsVzuJb57KqHRhNl4dHoQu2Y5v9bCAbtIXXH0R3HleSQW4CTOqpHIYUW3t6tpUj4BVQ+w==
+  dependencies:
+    "@types/node" "*"
+
 "@types/refractor@^3.0.2":
   version "3.0.2"
   resolved "https://registry.yarnpkg.com/@types/refractor/-/refractor-3.0.2.tgz#2d42128d59f78f84d2c799ffc5ab5cadbcba2d82"
@@ -3216,6 +3322,11 @@
   resolved "https://registry.yarnpkg.com/@types/tmp/-/tmp-0.2.2.tgz#424537a3b91828cb26aaf697f21ae3cd1b69f7e7"
   integrity sha512-MhSa0yylXtVMsyT8qFpHA1DLHj4DvQGH5ntxrhHSh8PxUVNi35Wk+P5hVgqbO2qZqOotqr9jaoPRL+iRjWYm/A==
 
+"@types/tough-cookie@*":
+  version "4.0.2"
+  resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-4.0.2.tgz#6286b4c7228d58ab7866d19716f3696e03a09397"
+  integrity sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==
+
 "@types/trusted-types@^2.0.2":
   version "2.0.2"
   resolved "https://registry.yarnpkg.com/@types/trusted-types/-/trusted-types-2.0.2.tgz#fc25ad9943bcac11cceb8168db4f275e0e72e756"
@@ -3286,10 +3397,10 @@
   resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-15.0.0.tgz#cb3f9f741869e20cce330ffbeb9271590483882d"
   integrity sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==
 
-"@types/yargs@^16.0.0":
-  version "16.0.4"
-  resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.4.tgz#26aad98dd2c2a38e421086ea9ad42b9e51642977"
-  integrity sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==
+"@types/yargs@^17.0.8":
+  version "17.0.11"
+  resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.11.tgz#5e10ca33e219807c0eee0f08b5efcba9b6a42c06"
+  integrity sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==
   dependencies:
     "@types/yargs-parser" "*"
 
@@ -3523,10 +3634,10 @@
   resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31"
   integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==
 
-abab@^2.0.3, abab@^2.0.5:
-  version "2.0.5"
-  resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a"
-  integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==
+abab@^2.0.5, abab@^2.0.6:
+  version "2.0.6"
+  resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291"
+  integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==
 
 abbrev@1:
   version "1.1.1"
@@ -3569,10 +3680,10 @@ acorn@^7.1.1, acorn@^7.4.0:
   resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa"
   integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
 
-acorn@^8.2.4:
-  version "8.7.0"
-  resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf"
-  integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==
+acorn@^8.5.0:
+  version "8.8.0"
+  resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.0.tgz#88c0187620435c7f6015803f5539dae05a9dbea8"
+  integrity sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==
 
 agent-base@6:
   version "6.0.2"
@@ -3962,19 +4073,25 @@ autotrack@^2.4.1:
     rollup-plugin-node-resolve "^3.0.0"
     source-map "^0.5.6"
 
-aws-sdk@^2.1044.0:
-  version "2.1044.0"
-  resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.1044.0.tgz#0708eaf48daf8d961b414e698d84e8cd1f82c4ad"
-  integrity sha512-n55uGUONQGXteGGG1QlZ1rKx447KSuV/x6jUGNf2nOl41qMI8ZgLUhNUt0uOtw3qJrCTanzCyR/JKBq2PMiqEQ==
+available-typed-arrays@^1.0.5:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7"
+  integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==
+
+aws-sdk@^2.1189.0:
+  version "2.1189.0"
+  resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.1189.0.tgz#8dd6b48dd7896642af8e2f86e026932a28e380d5"
+  integrity sha512-EqluXSo8XAR086nF9UAtPYwUm82ZIRqg8OmHBRQyftcrD1Z0pqMmiuvacXoEAJ/4UU8KKafbpYarxx8rH/pZjQ==
   dependencies:
     buffer "4.9.2"
     events "1.1.1"
     ieee754 "1.1.13"
-    jmespath "0.15.0"
+    jmespath "0.16.0"
     querystring "0.2.0"
     sax "1.2.1"
     url "0.10.3"
-    uuid "3.3.2"
+    util "^0.12.4"
+    uuid "8.0.0"
     xml2js "0.4.19"
 
 axe-core@^4.0.2:
@@ -4027,18 +4144,17 @@ babel-helper-get-function-arity@^6.24.1:
     babel-runtime "^6.22.0"
     babel-types "^6.24.1"
 
-babel-jest@^27.4.5:
-  version "27.4.5"
-  resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.4.5.tgz#d38bd0be8ea71d8b97853a5fc9f76deeb095c709"
-  integrity sha512-3uuUTjXbgtODmSv/DXO9nZfD52IyC2OYTFaXGRzL0kpykzroaquCrD5+lZNafTvZlnNqZHt5pb0M08qVBZnsnA==
+babel-jest@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-28.1.3.tgz#c1187258197c099072156a0a121c11ee1e3917d5"
+  integrity sha512-epUaPOEWMk3cWX0M/sPvCHHCe9fMFAa/9hXEgKP8nFfNl/jlGkE9ucq9NqkZGXLDduCJYS0UvSlPUwC0S+rH6Q==
   dependencies:
-    "@jest/transform" "^27.4.5"
-    "@jest/types" "^27.4.2"
+    "@jest/transform" "^28.1.3"
     "@types/babel__core" "^7.1.14"
-    babel-plugin-istanbul "^6.0.0"
-    babel-preset-jest "^27.4.0"
+    babel-plugin-istanbul "^6.1.1"
+    babel-preset-jest "^28.1.3"
     chalk "^4.0.0"
-    graceful-fs "^4.2.4"
+    graceful-fs "^4.2.9"
     slash "^3.0.0"
 
 babel-loader@^8.1.0:
@@ -4066,25 +4182,25 @@ babel-plugin-dynamic-import-node@^2.3.3:
   dependencies:
     object.assign "^4.1.0"
 
-babel-plugin-istanbul@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz#e159ccdc9af95e0b570c75b4573b7c34d671d765"
-  integrity sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==
+babel-plugin-istanbul@^6.1.1:
+  version "6.1.1"
+  resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73"
+  integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==
   dependencies:
     "@babel/helper-plugin-utils" "^7.0.0"
     "@istanbuljs/load-nyc-config" "^1.0.0"
     "@istanbuljs/schema" "^0.1.2"
-    istanbul-lib-instrument "^4.0.0"
+    istanbul-lib-instrument "^5.0.4"
     test-exclude "^6.0.0"
 
-babel-plugin-jest-hoist@^27.4.0:
-  version "27.4.0"
-  resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.4.0.tgz#d7831fc0f93573788d80dee7e682482da4c730d6"
-  integrity sha512-Jcu7qS4OX5kTWBc45Hz7BMmgXuJqRnhatqpUhnzGC3OBYpOmf2tv6jFNwZpwM7wU7MUuv2r9IPS/ZlYOuburVw==
+babel-plugin-jest-hoist@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-28.1.3.tgz#1952c4d0ea50f2d6d794353762278d1d8cca3fbe"
+  integrity sha512-Ys3tUKAmfnkRUpPdpa98eYrAR0nV+sSFUZZEGuQ2EbFd1y4SOLtD5QDNHAq+bb9a+bbXvYQC4b+ID/THIMcU6Q==
   dependencies:
     "@babel/template" "^7.3.3"
     "@babel/types" "^7.3.3"
-    "@types/babel__core" "^7.0.0"
+    "@types/babel__core" "^7.1.14"
     "@types/babel__traverse" "^7.0.6"
 
 babel-plugin-lodash@^3.3.4:
@@ -4209,12 +4325,12 @@ babel-preset-current-node-syntax@^1.0.0:
     "@babel/plugin-syntax-optional-chaining" "^7.8.3"
     "@babel/plugin-syntax-top-level-await" "^7.8.3"
 
-babel-preset-jest@^27.4.0:
-  version "27.4.0"
-  resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.4.0.tgz#70d0e676a282ccb200fbabd7f415db5fdf393bca"
-  integrity sha512-NK4jGYpnBvNxcGo7/ZpZJr51jCGT+3bwwpVIDY2oNfTxJJldRtB4VAcYdgp1loDE50ODuTu+yBjpMAswv5tlpg==
+babel-preset-jest@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-28.1.3.tgz#5dfc20b99abed5db994406c2b9ab94c73aaa419d"
+  integrity sha512-L+fupJvlWAHbQfn74coNX3zf60LXMJsezNvvx8eIh7iOR1luJ1poxYgQk1F8PYtNq/6QODDHCqsSnTFSWC491A==
   dependencies:
-    babel-plugin-jest-hoist "^27.4.0"
+    babel-plugin-jest-hoist "^28.1.3"
     babel-preset-current-node-syntax "^1.0.0"
 
 babel-runtime@^6.22.0, babel-runtime@^6.26.0:
@@ -4346,10 +4462,10 @@ bluebird@~3.4.0:
   resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.4.7.tgz#f72d760be09b7f76d08ed8fae98b289a8d05fab3"
   integrity sha1-9y12C+Cbf3bQjtj66Ysomo0F+rM=
 
-blueimp-canvas-to-blob@^3.28.0:
-  version "3.28.0"
-  resolved "https://registry.yarnpkg.com/blueimp-canvas-to-blob/-/blueimp-canvas-to-blob-3.28.0.tgz#c8ab4dc6bb08774a7f273798cdf94b0776adf6c8"
-  integrity sha512-5q+YHzgGsuHQ01iouGgJaPJXod2AzTxJXmVv90PpGrRxU7G7IqgPqWXz+PBmt3520jKKi6irWbNV87DicEa7wg==
+blueimp-canvas-to-blob@^3.29.0:
+  version "3.29.0"
+  resolved "https://registry.yarnpkg.com/blueimp-canvas-to-blob/-/blueimp-canvas-to-blob-3.29.0.tgz#d965f06cb1a67fdae207a2be56683f55ef531466"
+  integrity sha512-0pcSSGxC0QxT+yVkivxIqW0Y4VlO2XSDPofBAqoJ1qJxgH9eiUDLv50Rixij2cDuEfx4M6DpD9UGZpRhT5Q8qg==
 
 bmp-js@^0.1.0:
   version "0.1.0"
@@ -4563,9 +4679,9 @@ buffer-equal@^1.0.0:
   integrity sha1-WWFrSYME1Var1GaWayLu2j7KX74=
 
 buffer-from@^1.0.0:
-  version "1.1.1"
-  resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef"
-  integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5"
+  integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==
 
 buffer-writer@2.0.0:
   version "2.0.0"
@@ -4609,20 +4725,19 @@ builtin-status-codes@^3.0.0:
   resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8"
   integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=
 
-bull@^3.29.0:
-  version "3.29.1"
-  resolved "https://registry.yarnpkg.com/bull/-/bull-3.29.1.tgz#7c5d7c557ebbf856892dee576ca5a19b46bb983e"
-  integrity sha512-ASNnorakKCV4hmgHABfn8Ir+gy24a4gaGnXH/0bm1Msq+djOnNfM5XW7Igzsa5iTjpboWXhY9dHFVjiWRKsSGw==
+bull@^4.8.5:
+  version "4.8.5"
+  resolved "https://registry.yarnpkg.com/bull/-/bull-4.8.5.tgz#eebafddc3249d6d5e8ced1c42b8bfa8efcc274aa"
+  integrity sha512-2Z630e4f6VsLJnWMAtfEHwIqJYmND4W3dcG48RIbXeWpvb4UnYtpe/zxEdslJu0PKrltB4IkFj5YtBsdeQRn8w==
   dependencies:
-    cron-parser "^2.13.0"
+    cron-parser "^4.2.1"
     debuglog "^1.0.0"
     get-port "^5.1.1"
-    ioredis "^4.27.0"
+    ioredis "^4.28.5"
     lodash "^4.17.21"
+    msgpackr "^1.5.2"
     p-timeout "^3.2.0"
-    promise.prototype.finally "^3.1.2"
     semver "^7.3.2"
-    util.promisify "^1.0.1"
     uuid "^8.3.0"
 
 busboy@^0.2.11:
@@ -5202,12 +5317,12 @@ compressible@^2.0.0:
   dependencies:
     mime-db ">= 1.43.0 < 2"
 
-compressorjs@^1.0.7:
-  version "1.0.7"
-  resolved "https://registry.yarnpkg.com/compressorjs/-/compressorjs-1.0.7.tgz#67cd0b3b9ac97540515b22b334dc32eb92b730b1"
-  integrity sha512-ca+H8CGrn0LG103//VQmXBbNdvzvHiW26LGdWncp4RmLNbNQjaaFWIUxMN9++hbhGobLtofkHoxzzXGisNyD3w==
+compressorjs@^1.1.1:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/compressorjs/-/compressorjs-1.1.1.tgz#54c147cf37fb38828b08c48646d0258d52faf050"
+  integrity sha512-SysRuUPfmUNoq+RviE0iMFVUmoX2q/x+7PkEPUmk6NGkd85hDrmvujx0Qtp8UCGA6KMe5kuodsylPQcNaLf60w==
   dependencies:
-    blueimp-canvas-to-blob "^3.28.0"
+    blueimp-canvas-to-blob "^3.29.0"
     is-blob "^2.1.0"
 
 compute-scroll-into-view@1.0.14:
@@ -5245,20 +5360,20 @@ concat-stream@~2.0.0:
     readable-stream "^3.0.2"
     typedarray "^0.0.6"
 
-concurrently@^6.2.1:
-  version "6.2.1"
-  resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-6.2.1.tgz#d880fc1d77559084732fa514092a3d5109a0d5bf"
-  integrity sha512-emgwhH+ezkuYKSHZQ+AkgEpoUZZlbpPVYCVv7YZx0r+T7fny1H03r2nYRebpi2DudHR4n1Rgbo2YTxKOxVJ4+g==
+concurrently@^7.3.0:
+  version "7.3.0"
+  resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-7.3.0.tgz#eb45cdbc8df43da195f619aba218a980cae49184"
+  integrity sha512-IiDwm+8DOcFEInca494A8V402tNTQlJaYq78RF2rijOrKEk/AOHTxhN4U1cp7GYKYX5Q6Ymh1dLTBlzIMN0ikA==
   dependencies:
     chalk "^4.1.0"
     date-fns "^2.16.1"
     lodash "^4.17.21"
-    read-pkg "^5.2.0"
-    rxjs "^6.6.3"
+    rxjs "^7.0.0"
+    shell-quote "^1.7.3"
     spawn-command "^0.0.2-1"
     supports-color "^8.1.0"
     tree-kill "^1.2.2"
-    yargs "^16.2.0"
+    yargs "^17.3.1"
 
 condense-newlines@^0.2.1:
   version "0.2.1"
@@ -5445,13 +5560,12 @@ create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7:
     safe-buffer "^5.0.1"
     sha.js "^2.4.8"
 
-cron-parser@^2.13.0:
-  version "2.17.0"
-  resolved "https://registry.yarnpkg.com/cron-parser/-/cron-parser-2.17.0.tgz#5707421a7e0a73ee74675d1c032a2f14123f2cf8"
-  integrity sha512-oTmzVEwlurRe51HqTm4afshVr8Rkxy9kFiWxh5e6SmrY2o9NDYU4S6SduanBZYXLgkLy0skA98y7/tztW/DmjQ==
+cron-parser@^4.2.1:
+  version "4.6.0"
+  resolved "https://registry.yarnpkg.com/cron-parser/-/cron-parser-4.6.0.tgz#404c3fdbff10ae80eef6b709555d577ef2fd2e0d"
+  integrity sha512-guZNLMGUgg6z4+eGhmHGw7ft+v6OQeuHzd1gcLxCo9Yg/qoxmG3nindp2/uwGCLizEisf2H0ptqeVXeoCpP6FA==
   dependencies:
-    is-nan "^1.3.0"
-    moment-timezone "^0.5.31"
+    luxon "^3.0.1"
 
 cross-fetch@3.1.5, cross-fetch@^3.0.4:
   version "3.1.5"
@@ -5569,10 +5683,10 @@ css-what@^5.0.0, css-what@^5.0.1:
   resolved "https://registry.yarnpkg.com/css-what/-/css-what-5.0.1.tgz#3efa820131f4669a8ac2408f9c32e7c7de9f4cad"
   integrity sha512-FYDTSHb/7KXsWICVsxdmiExPjCfRC4qRFBdVwv7Ax9hMnvMmEjP9RfxTEZ3qPZGmADDn2vAKSo9UcN1jKVYscg==
 
-cssom@^0.4.4:
-  version "0.4.4"
-  resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10"
-  integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==
+cssom@^0.5.0:
+  version "0.5.0"
+  resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.5.0.tgz#d254fa92cd8b6fbd83811b9fbaed34663cc17c36"
+  integrity sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==
 
 cssom@~0.3.6:
   version "0.3.8"
@@ -5871,14 +5985,14 @@ damerau-levenshtein@^1.0.6:
   resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.6.tgz#143c1641cb3d85c60c32329e26899adea8701791"
   integrity sha512-JVrozIeElnj3QzfUIt8tB8YMluBJom4Vw9qTPpjGYQ9fYlB3D/rb6OordUxf3xeFB35LKWs0xqcO5U6ySvBtug==
 
-data-urls@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b"
-  integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==
+data-urls@^3.0.1:
+  version "3.0.2"
+  resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-3.0.2.tgz#9cf24a477ae22bcef5cd5f6f0bfbc1d2d3be9143"
+  integrity sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==
   dependencies:
-    abab "^2.0.3"
-    whatwg-mimetype "^2.3.0"
-    whatwg-url "^8.0.0"
+    abab "^2.0.6"
+    whatwg-mimetype "^3.0.0"
+    whatwg-url "^11.0.0"
 
 datadog-metrics@^0.9.3:
   version "0.9.3"
@@ -5893,7 +6007,7 @@ date-fns@^2.16.1, date-fns@^2.23.0, date-fns@^2.25.0:
   resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-2.25.0.tgz#8c5c8f1d958be3809a9a03f4b742eba894fc5680"
   integrity sha512-ovYRFnTrbGPD4nqaEqescPEv1mNwvt+UTqI3Ay9SzNtey9NZnYu6E2qCcBBgJ6/2VF1zGGygpyTDITqpQQ5e+w==
 
-dd-trace@^1.6.0:
+dd-trace@^1.7.1:
   version "1.7.1"
   resolved "https://registry.yarnpkg.com/dd-trace/-/dd-trace-1.7.1.tgz#fb3276df4fa29f5b157fa72fa94c8ea156e83aac"
   integrity sha512-hRrgJgjP3xF/s4EKxSGzOG+ARkWyRz33dwIwi1gJych7zSE7qnt5VL6LcK1Jou4mfyn+kHUbbb0d7t19YpmZsg==
@@ -5965,7 +6079,7 @@ decamelize@^1.2.0:
   resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
   integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=
 
-decimal.js@^10.2.1:
+decimal.js@^10.3.1:
   version "10.3.1"
   resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.3.1.tgz#d8c3a444a9c6774ba60ca6ad7261c3a94fd5e783"
   integrity sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==
@@ -5998,9 +6112,9 @@ deep-extend@^0.6.0:
   integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==
 
 deep-is@^0.1.3, deep-is@~0.1.3:
-  version "0.1.3"
-  resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
-  integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831"
+  integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==
 
 deepmerge@^4.2.2:
   version "4.2.2"
@@ -6012,12 +6126,13 @@ defer-to-connect@^1.0.1:
   resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591"
   integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==
 
-define-properties@^1.1.2, define-properties@^1.1.3:
-  version "1.1.3"
-  resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1"
-  integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==
+define-properties@^1.1.2, define-properties@^1.1.3, define-properties@^1.1.4:
+  version "1.1.4"
+  resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.4.tgz#0b14d7bd7fbeb2f3572c3a7eda80ea5d57fb05b1"
+  integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==
   dependencies:
-    object-keys "^1.0.12"
+    has-property-descriptors "^1.0.0"
+    object-keys "^1.1.1"
 
 define-property@^0.2.5:
   version "0.2.5"
@@ -6109,10 +6224,10 @@ dicer@0.2.5:
     readable-stream "1.1.x"
     streamsearch "0.1.2"
 
-diff-sequences@^27.4.0:
-  version "27.4.0"
-  resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.4.0.tgz#d783920ad8d06ec718a060d00196dfef25b132a5"
-  integrity sha512-YqiQzkrsmHMH5uuh8OdQFU9/ZpADnwzml8z0O5HvRNda+5UZsaX/xN+AAxfR2hWq1Y7HZnAzO9J5lJXOuDz2Ww==
+diff-sequences@^28.1.1:
+  version "28.1.1"
+  resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-28.1.1.tgz#9989dc731266dc2903457a70e996f3a041913ac6"
+  integrity sha512-FU0iFaH/E23a+a718l8Qa/19bF9p06kgE0KipMOMadwa3SjnaElKzPaUC0vnibs6/B/9ni97s61mcejk8W1fQw==
 
 diffie-hellman@^5.0.0:
   version "5.0.3"
@@ -6237,12 +6352,12 @@ domelementtype@^2.0.1, domelementtype@^2.2.0:
   resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.2.0.tgz#9a0b6c2782ed6a1c7323d42267183df9bd8b1d57"
   integrity sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==
 
-domexception@^2.0.1:
-  version "2.0.1"
-  resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304"
-  integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==
+domexception@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/domexception/-/domexception-4.0.0.tgz#4ad1be56ccadc86fc76d033353999a8037d03673"
+  integrity sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==
   dependencies:
-    webidl-conversions "^5.0.0"
+    webidl-conversions "^7.0.0"
 
 domhandler@^2.3.0:
   version "2.4.2"
@@ -6407,10 +6522,10 @@ email-providers@^1.13.1:
   resolved "https://registry.yarnpkg.com/email-providers/-/email-providers-1.13.1.tgz#dfaea33a7744035510f0f64ed44098e7077f68c9"
   integrity sha512-+BPUngcWMy9piqS33yeOcqJXYhIxet94UbK1B/uDOGfjLav4YlDAf9/RhplRypSDBSKx92STNH0PcwgCJnNATw==
 
-emittery@^0.8.1:
-  version "0.8.1"
-  resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860"
-  integrity sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==
+emittery@^0.10.2:
+  version "0.10.2"
+  resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.10.2.tgz#902eec8aedb8c41938c46e9385e9db7e03182933"
+  integrity sha512-aITqOwnLanpHLNXZJENbOgjUBeHocD+xsSJmNrjovKBW5HbSpW3d1pEls7GFQPUWXiwG9+0P4GtHfEqC/4M0Iw==
 
 emoji-regex@*, emoji-regex@^10.0.0:
   version "10.0.0"
@@ -6516,11 +6631,16 @@ entities@^1.1.1:
   resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56"
   integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==
 
-entities@^2.0.0, entities@~2.1.0:
+entities@^2.0.0:
   version "2.1.0"
   resolved "https://registry.yarnpkg.com/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5"
   integrity sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w==
 
+entities@~3.0.1:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/entities/-/entities-3.0.1.tgz#2b887ca62585e96db3903482d336c1006c3001d4"
+  integrity sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==
+
 env-ci@^5.3.3:
   version "5.4.1"
   resolved "https://registry.yarnpkg.com/env-ci/-/env-ci-5.4.1.tgz#814387ddd6857b37472ef612361f34d720c29a18"
@@ -6620,31 +6740,34 @@ error-stack-parser@^2.0.6:
   dependencies:
     stackframe "^1.1.1"
 
-es-abstract@^1.17.0-next.0, es-abstract@^1.17.0-next.1, es-abstract@^1.17.2, es-abstract@^1.17.4, es-abstract@^1.18.0, es-abstract@^1.18.0-next.2, es-abstract@^1.18.2, es-abstract@^1.19.0, es-abstract@^1.19.1:
-  version "1.19.1"
-  resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.19.1.tgz#d4885796876916959de78edaa0df456627115ec3"
-  integrity sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w==
+es-abstract@^1.17.0-next.1, es-abstract@^1.17.4, es-abstract@^1.18.0, es-abstract@^1.18.0-next.2, es-abstract@^1.18.2, es-abstract@^1.19.0, es-abstract@^1.19.1, es-abstract@^1.19.5, es-abstract@^1.20.0:
+  version "1.20.1"
+  resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.20.1.tgz#027292cd6ef44bd12b1913b828116f54787d1814"
+  integrity sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA==
   dependencies:
     call-bind "^1.0.2"
     es-to-primitive "^1.2.1"
     function-bind "^1.1.1"
+    function.prototype.name "^1.1.5"
     get-intrinsic "^1.1.1"
     get-symbol-description "^1.0.0"
     has "^1.0.3"
-    has-symbols "^1.0.2"
+    has-property-descriptors "^1.0.0"
+    has-symbols "^1.0.3"
     internal-slot "^1.0.3"
     is-callable "^1.2.4"
-    is-negative-zero "^2.0.1"
+    is-negative-zero "^2.0.2"
     is-regex "^1.1.4"
-    is-shared-array-buffer "^1.0.1"
+    is-shared-array-buffer "^1.0.2"
     is-string "^1.0.7"
-    is-weakref "^1.0.1"
-    object-inspect "^1.11.0"
+    is-weakref "^1.0.2"
+    object-inspect "^1.12.0"
     object-keys "^1.1.1"
     object.assign "^4.1.2"
-    string.prototype.trimend "^1.0.4"
-    string.prototype.trimstart "^1.0.4"
-    unbox-primitive "^1.0.1"
+    regexp.prototype.flags "^1.4.3"
+    string.prototype.trimend "^1.0.5"
+    string.prototype.trimstart "^1.0.5"
+    unbox-primitive "^1.0.2"
 
 es-array-method-boxes-properly@^1.0.0:
   version "1.0.0"
@@ -6738,10 +6861,10 @@ escodegen@^2.0.0:
   optionalDependencies:
     source-map "~0.6.1"
 
-eslint-config-prettier@^8.3.0:
-  version "8.3.0"
-  resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz#f7471b20b6fe8a9a9254cc684454202886a2dd7a"
-  integrity sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew==
+eslint-config-prettier@^8.5.0:
+  version "8.5.0"
+  resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.5.0.tgz#5a81680ec934beca02c7b1a61cf8ca34b66feab1"
+  integrity sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==
 
 eslint-import-resolver-node@^0.3.6:
   version "0.3.6"
@@ -7076,17 +7199,16 @@ expand-tilde@^2.0.0, expand-tilde@^2.0.2:
   dependencies:
     homedir-polyfill "^1.0.1"
 
-expect@^27.4.2:
-  version "27.4.2"
-  resolved "https://registry.yarnpkg.com/expect/-/expect-27.4.2.tgz#4429b0f7e307771d176de9bdf23229b101db6ef6"
-  integrity sha512-BjAXIDC6ZOW+WBFNg96J22D27Nq5ohn+oGcuP2rtOtcjuxNoV9McpQ60PcQWhdFOSBIQdR72e+4HdnbZTFSTyg==
+expect@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/expect/-/expect-28.1.3.tgz#90a7c1a124f1824133dd4533cce2d2bdcb6603ec"
+  integrity sha512-eEh0xn8HlsuOBxFgIss+2mX85VAS4Qy3OSkjV7rlBWljtA4oWH37glVGyOZSZvErDT/yBywZdPGwCXuTvSG85g==
   dependencies:
-    "@jest/types" "^27.4.2"
-    ansi-styles "^5.0.0"
-    jest-get-type "^27.4.0"
-    jest-matcher-utils "^27.4.2"
-    jest-message-util "^27.4.2"
-    jest-regex-util "^27.4.0"
+    "@jest/expect-utils" "^28.1.3"
+    jest-get-type "^28.0.2"
+    jest-matcher-utils "^28.1.3"
+    jest-message-util "^28.1.3"
+    jest-util "^28.1.3"
 
 exports-loader@^0.6.4:
   version "0.6.4"
@@ -7096,6 +7218,11 @@ exports-loader@^0.6.4:
     loader-utils "^1.0.2"
     source-map "0.5.x"
 
+express-useragent@^1.0.15:
+  version "1.0.15"
+  resolved "https://registry.yarnpkg.com/express-useragent/-/express-useragent-1.0.15.tgz#cefda5fa4904345d51d3368b117a8dd4124985d9"
+  integrity sha512-eq5xMiYCYwFPoekffMjvEIk+NWdlQY9Y38OsTyl13IvA728vKT+q/CSERYWzcw93HGBJcIqMIsZC5CZGARPVdg==
+
 ext@^1.1.2:
   version "1.4.0"
   resolved "https://registry.yarnpkg.com/ext/-/ext-1.4.0.tgz#89ae7a07158f79d35517882904324077e4379244"
@@ -7394,6 +7521,13 @@ focus-visible@^5.2.0:
   resolved "https://registry.yarnpkg.com/focus-visible/-/focus-visible-5.2.0.tgz#3a9e41fccf587bd25dcc2ef045508284f0a4d6b3"
   integrity sha512-Rwix9pBtC1Nuy5wysTmKy+UjbDJpIfg8eHjw0rjZ1mX4GNLz1Bmd16uDpI3Gk1i70Fgcs8Csg2lPm8HULFg9DQ==
 
+for-each@^0.3.3:
+  version "0.3.3"
+  resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e"
+  integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==
+  dependencies:
+    is-callable "^1.1.3"
+
 for-in@^1.0.2:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
@@ -7408,6 +7542,15 @@ form-data@^3.0.0:
     combined-stream "^1.0.8"
     mime-types "^2.1.12"
 
+form-data@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452"
+  integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==
+  dependencies:
+    asynckit "^0.4.0"
+    combined-stream "^1.0.8"
+    mime-types "^2.1.12"
+
 formidable@^1.1.1:
   version "1.2.2"
   resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.2.2.tgz#bf69aea2972982675f00865342b982986f6b8dd9"
@@ -7584,14 +7727,14 @@ function-bind@^1.1.1:
   resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
   integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
 
-function.prototype.name@^1.1.2, function.prototype.name@^1.1.3:
-  version "1.1.4"
-  resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.4.tgz#e4ea839b9d3672ae99d0efd9f38d9191c5eaac83"
-  integrity sha512-iqy1pIotY/RmhdFZygSSlW0wko2yxkSCKqsuv4pr8QESohpYyG/Z7B/XXvPRKTJS//960rgguE5mSRUsDdaJrQ==
+function.prototype.name@^1.1.2, function.prototype.name@^1.1.3, function.prototype.name@^1.1.5:
+  version "1.1.5"
+  resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.5.tgz#cce0505fe1ffb80503e6f9e46cc64e46a12a9621"
+  integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==
   dependencies:
     call-bind "^1.0.2"
     define-properties "^1.1.3"
-    es-abstract "^1.18.0-next.2"
+    es-abstract "^1.19.0"
     functions-have-names "^1.2.2"
 
 functional-red-black-tree@^1.0.1:
@@ -7726,7 +7869,7 @@ glob-stream@^6.1.0:
     to-absolute-glob "^2.0.0"
     unique-stream "^2.0.2"
 
-glob@7.2.0, glob@^7.0.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@^7.1.7:
+glob@7.2.0, glob@^7.0.0, glob@^7.1.1, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@^7.1.7:
   version "7.2.0"
   resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023"
   integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==
@@ -7844,10 +7987,10 @@ got@^9.6.0:
     to-readable-stream "^1.0.0"
     url-parse-lax "^3.0.0"
 
-graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4:
-  version "4.2.6"
-  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.6.tgz#ff040b2b0853b23c3d31027523706f1885d76bee"
-  integrity sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==
+graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.9:
+  version "4.2.10"
+  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c"
+  integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==
 
 graphlib@^2.1.8:
   version "2.1.8"
@@ -7877,10 +8020,10 @@ has-ansi@^2.0.0:
   dependencies:
     ansi-regex "^2.0.0"
 
-has-bigints@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113"
-  integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==
+has-bigints@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa"
+  integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==
 
 has-cors@1.1.0:
   version "1.1.0"
@@ -7897,6 +8040,13 @@ has-flag@^4.0.0:
   resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
   integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
 
+has-property-descriptors@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861"
+  integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==
+  dependencies:
+    get-intrinsic "^1.1.1"
+
 has-symbols@^1.0.1, has-symbols@^1.0.2, has-symbols@^1.0.3:
   version "1.0.3"
   resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8"
@@ -8055,11 +8205,6 @@ homedir-polyfill@^1.0.1:
   dependencies:
     parse-passwd "^1.0.0"
 
-hosted-git-info@^2.1.4:
-  version "2.8.9"
-  resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9"
-  integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==
-
 html-element-map@^1.2.0:
   version "1.3.1"
   resolved "https://registry.yarnpkg.com/html-element-map/-/html-element-map-1.3.1.tgz#44b2cbcfa7be7aa4ff59779e47e51012e1c73c08"
@@ -8068,12 +8213,12 @@ html-element-map@^1.2.0:
     array.prototype.filter "^1.0.0"
     call-bind "^1.0.2"
 
-html-encoding-sniffer@^2.0.1:
-  version "2.0.1"
-  resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3"
-  integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==
+html-encoding-sniffer@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz#2cb1a8cf0db52414776e5b2a7a04d5dd98158de9"
+  integrity sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==
   dependencies:
-    whatwg-encoding "^1.0.5"
+    whatwg-encoding "^2.0.0"
 
 html-entities@^2.1.0:
   version "2.3.2"
@@ -8198,12 +8343,12 @@ http-errors@~1.6.2:
     setprototypeof "1.1.0"
     statuses ">= 1.4.0 < 2"
 
-http-proxy-agent@^4.0.1:
-  version "4.0.1"
-  resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a"
-  integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==
+http-proxy-agent@^5.0.0:
+  version "5.0.0"
+  resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz#5129800203520d434f142bc78ff3c170800f2b43"
+  integrity sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==
   dependencies:
-    "@tootallnate/once" "1"
+    "@tootallnate/once" "2"
     agent-base "6"
     debug "4"
 
@@ -8287,7 +8432,7 @@ iconv-lite@0.4.24:
   dependencies:
     safer-buffer ">= 2.1.2 < 3"
 
-iconv-lite@0.6:
+iconv-lite@0.6, iconv-lite@0.6.3:
   version "0.6.3"
   resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501"
   integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==
@@ -8473,10 +8618,10 @@ invariant@^2.2.1, invariant@^2.2.2, invariant@^2.2.4:
   dependencies:
     loose-envify "^1.0.0"
 
-ioredis@^4.27.0, ioredis@^4.28.0:
-  version "4.28.0"
-  resolved "https://registry.yarnpkg.com/ioredis/-/ioredis-4.28.0.tgz#5a2be3f37ff2075e2332f280eaeb02ab4d9ff0d3"
-  integrity sha512-I+zkeeWp3XFgPT2CtJKxvaF5FjGBGt4yGYljRjQecdQKteThuAsKqffeF1lgHVlYnuNeozRbPOCDNZ7tDWPeig==
+ioredis@^4.28.5:
+  version "4.28.5"
+  resolved "https://registry.yarnpkg.com/ioredis/-/ioredis-4.28.5.tgz#5c149e6a8d76a7f8fa8a504ffc85b7d5b6797f9f"
+  integrity sha512-3GYo0GJtLqgNXj4YhrisLaNNvWSNwSS2wS4OELGfGxH8I69+XfNdnmV1AyN+ZqMh0i7eX+SWjrwFKDBDgfBC1A==
   dependencies:
     cluster-key-slot "^1.1.0"
     debug "^4.3.1"
@@ -8530,6 +8675,14 @@ is-alphanumerical@^1.0.0:
     is-alphabetical "^1.0.0"
     is-decimal "^1.0.0"
 
+is-arguments@^1.0.4:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b"
+  integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==
+  dependencies:
+    call-bind "^1.0.2"
+    has-tostringtag "^1.0.0"
+
 is-arrayish@^0.2.1:
   version "0.2.1"
   resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
@@ -8576,7 +8729,7 @@ is-buffer@^1.1.5:
   resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
   integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
 
-is-callable@^1.1.4, is-callable@^1.1.5, is-callable@^1.2.4:
+is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.1.5, is-callable@^1.2.4:
   version "1.2.4"
   resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945"
   integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==
@@ -8716,22 +8869,15 @@ is-module@^1.0.0:
   resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591"
   integrity sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=
 
-is-nan@^1.3.0:
-  version "1.3.0"
-  resolved "https://registry.yarnpkg.com/is-nan/-/is-nan-1.3.0.tgz#85d1f5482f7051c2019f5673ccebdb06f3b0db03"
-  integrity sha512-z7bbREymOqt2CCaZVly8aC4ML3Xhfi0ekuOnjO2L8vKdl+CttdVoGZQhd4adMFAsxQ5VeRVwORs4tU8RH+HFtQ==
-  dependencies:
-    define-properties "^1.1.3"
-
 is-negated-glob@^1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2"
   integrity sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI=
 
-is-negative-zero@^2.0.1:
-  version "2.0.1"
-  resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24"
-  integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==
+is-negative-zero@^2.0.2:
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150"
+  integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==
 
 is-npm@^5.0.0:
   version "5.0.0"
@@ -8822,10 +8968,12 @@ is-relative@^1.0.0:
   dependencies:
     is-unc-path "^1.0.0"
 
-is-shared-array-buffer@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz#97b0c85fbdacb59c9c446fe653b82cf2b5b7cfe6"
-  integrity sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA==
+is-shared-array-buffer@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79"
+  integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==
+  dependencies:
+    call-bind "^1.0.2"
 
 is-stream@^2.0.0:
   version "2.0.0"
@@ -8851,6 +8999,17 @@ is-symbol@^1.0.2, is-symbol@^1.0.3:
   dependencies:
     has-symbols "^1.0.2"
 
+is-typed-array@^1.1.3, is-typed-array@^1.1.9:
+  version "1.1.9"
+  resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.9.tgz#246d77d2871e7d9f5aeb1d54b9f52c71329ece67"
+  integrity sha512-kfrlnTTn8pZkfpJMUgYD7YZ3qzeJgWUn8XfVYBARc4wnmNOmLbmuuaAs3q5fvB0UJOn6yHAKaGTPM7d6ezoD/A==
+  dependencies:
+    available-typed-arrays "^1.0.5"
+    call-bind "^1.0.2"
+    es-abstract "^1.20.0"
+    for-each "^0.3.3"
+    has-tostringtag "^1.0.0"
+
 is-typedarray@^1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
@@ -8873,12 +9032,12 @@ is-valid-glob@^1.0.0:
   resolved "https://registry.yarnpkg.com/is-valid-glob/-/is-valid-glob-1.0.0.tgz#29bf3eff701be2d4d315dbacc39bc39fe8f601aa"
   integrity sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao=
 
-is-weakref@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.1.tgz#842dba4ec17fa9ac9850df2d6efbc1737274f2a2"
-  integrity sha512-b2jKc2pQZjaeFYWEf7ScFj+Be1I+PXmlu572Q8coTXZ+LD/QQZ7ShPMst8h16riVgyXTQwUsFEl74mDvc/3MHQ==
+is-weakref@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2"
+  integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==
   dependencies:
-    call-bind "^1.0.0"
+    call-bind "^1.0.2"
 
 is-whitespace@^0.3.0:
   version "0.3.0"
@@ -8940,19 +9099,20 @@ isomorphic.js@^0.2.4:
   resolved "https://registry.yarnpkg.com/isomorphic.js/-/isomorphic.js-0.2.4.tgz#24ca374163ae54a7ce3b86ce63b701b91aa84969"
   integrity sha512-Y4NjZceAwaPXctwsHgNsmfuPxR8lJ3f8X7QTAkhltrX4oGIv+eTlgHLXn4tWysC9zGTi929gapnPp+8F8cg7nA==
 
-istanbul-lib-coverage@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec"
-  integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==
+istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0:
+  version "3.2.0"
+  resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3"
+  integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==
 
-istanbul-lib-instrument@^4.0.0, istanbul-lib-instrument@^4.0.3:
-  version "4.0.3"
-  resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d"
-  integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==
+istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0:
+  version "5.2.0"
+  resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz#31d18bdd127f825dd02ea7bfdfd906f8ab840e9f"
+  integrity sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==
   dependencies:
-    "@babel/core" "^7.7.5"
+    "@babel/core" "^7.12.3"
+    "@babel/parser" "^7.14.7"
     "@istanbuljs/schema" "^0.1.2"
-    istanbul-lib-coverage "^3.0.0"
+    istanbul-lib-coverage "^3.2.0"
     semver "^6.3.0"
 
 istanbul-lib-report@^3.0.0:
@@ -8973,10 +9133,10 @@ istanbul-lib-source-maps@^4.0.0:
     istanbul-lib-coverage "^3.0.0"
     source-map "^0.6.1"
 
-istanbul-reports@^3.0.2:
-  version "3.0.2"
-  resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.2.tgz#d593210e5000683750cb09fc0644e4b6e27fd53b"
-  integrity sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==
+istanbul-reports@^3.1.3:
+  version "3.1.5"
+  resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.5.tgz#cc9a6ab25cb25659810e4785ed9d9fb742578bae"
+  integrity sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==
   dependencies:
     html-escaper "^2.0.0"
     istanbul-lib-report "^3.0.0"
@@ -8996,138 +9156,138 @@ java-properties@^1.0.0:
   resolved "https://registry.yarnpkg.com/java-properties/-/java-properties-1.0.2.tgz#ccd1fa73907438a5b5c38982269d0e771fe78211"
   integrity sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ==
 
-jest-changed-files@^27.4.2:
-  version "27.4.2"
-  resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.4.2.tgz#da2547ea47c6e6a5f6ed336151bd2075736eb4a5"
-  integrity sha512-/9x8MjekuzUQoPjDHbBiXbNEBauhrPU2ct7m8TfCg69ywt1y/N+yYwGh3gCpnqUS3klYWDU/lSNgv+JhoD2k1A==
+jest-changed-files@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-28.1.3.tgz#d9aeee6792be3686c47cb988a8eaf82ff4238831"
+  integrity sha512-esaOfUWJXk2nfZt9SPyC8gA1kNfdKLkQWyzsMlqq8msYSlNKfmZxfRgZn4Cd4MGVUF+7v6dBs0d5TOAKa7iIiA==
   dependencies:
-    "@jest/types" "^27.4.2"
     execa "^5.0.0"
-    throat "^6.0.1"
+    p-limit "^3.1.0"
 
-jest-circus@^27.4.5:
-  version "27.4.5"
-  resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.4.5.tgz#70bfb78e0200cab9b84747bf274debacaa538467"
-  integrity sha512-eTNWa9wsvBwPykhMMShheafbwyakcdHZaEYh5iRrQ0PFJxkDP/e3U/FvzGuKWu2WpwUA3C3hPlfpuzvOdTVqnw==
+jest-circus@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-28.1.3.tgz#d14bd11cf8ee1a03d69902dc47b6bd4634ee00e4"
+  integrity sha512-cZ+eS5zc79MBwt+IhQhiEp0OeBddpc1n8MBo1nMB8A7oPMKEO+Sre+wHaLJexQUj9Ya/8NOBY0RESUgYjB6fow==
   dependencies:
-    "@jest/environment" "^27.4.4"
-    "@jest/test-result" "^27.4.2"
-    "@jest/types" "^27.4.2"
+    "@jest/environment" "^28.1.3"
+    "@jest/expect" "^28.1.3"
+    "@jest/test-result" "^28.1.3"
+    "@jest/types" "^28.1.3"
     "@types/node" "*"
     chalk "^4.0.0"
     co "^4.6.0"
     dedent "^0.7.0"
-    expect "^27.4.2"
     is-generator-fn "^2.0.0"
-    jest-each "^27.4.2"
-    jest-matcher-utils "^27.4.2"
-    jest-message-util "^27.4.2"
-    jest-runtime "^27.4.5"
-    jest-snapshot "^27.4.5"
-    jest-util "^27.4.2"
-    pretty-format "^27.4.2"
+    jest-each "^28.1.3"
+    jest-matcher-utils "^28.1.3"
+    jest-message-util "^28.1.3"
+    jest-runtime "^28.1.3"
+    jest-snapshot "^28.1.3"
+    jest-util "^28.1.3"
+    p-limit "^3.1.0"
+    pretty-format "^28.1.3"
     slash "^3.0.0"
     stack-utils "^2.0.3"
-    throat "^6.0.1"
 
-jest-cli@^27.4.5:
-  version "27.4.5"
-  resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.4.5.tgz#8708f54c28d13681f3255ec9026a2b15b03d41e8"
-  integrity sha512-hrky3DSgE0u7sQxaCL7bdebEPHx5QzYmrGuUjaPLmPE8jx5adtvGuOlRspvMoVLTTDOHRnZDoRLYJuA+VCI7Hg==
+jest-cli@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-28.1.3.tgz#558b33c577d06de55087b8448d373b9f654e46b2"
+  integrity sha512-roY3kvrv57Azn1yPgdTebPAXvdR2xfezaKKYzVxZ6It/5NCxzJym6tUI5P1zkdWhfUYkxEI9uZWcQdaFLo8mJQ==
   dependencies:
-    "@jest/core" "^27.4.5"
-    "@jest/test-result" "^27.4.2"
-    "@jest/types" "^27.4.2"
+    "@jest/core" "^28.1.3"
+    "@jest/test-result" "^28.1.3"
+    "@jest/types" "^28.1.3"
     chalk "^4.0.0"
     exit "^0.1.2"
-    graceful-fs "^4.2.4"
+    graceful-fs "^4.2.9"
     import-local "^3.0.2"
-    jest-config "^27.4.5"
-    jest-util "^27.4.2"
-    jest-validate "^27.4.2"
+    jest-config "^28.1.3"
+    jest-util "^28.1.3"
+    jest-validate "^28.1.3"
     prompts "^2.0.1"
-    yargs "^16.2.0"
+    yargs "^17.3.1"
 
-jest-config@^27.4.5:
-  version "27.4.5"
-  resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.4.5.tgz#77ed7f2ba7bcfd7d740ade711d0d13512e08a59e"
-  integrity sha512-t+STVJtPt+fpqQ8GBw850NtSQbnDOw/UzdPfzDaHQ48/AylQlW7LHj3dH+ndxhC1UxJ0Q3qkq7IH+nM1skwTwA==
+jest-config@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-28.1.3.tgz#e315e1f73df3cac31447eed8b8740a477392ec60"
+  integrity sha512-MG3INjByJ0J4AsNBm7T3hsuxKQqFIiRo/AUqb1q9LRKI5UU6Aar9JHbr9Ivn1TVwfUD9KirRoM/T6u8XlcQPHQ==
   dependencies:
-    "@babel/core" "^7.1.0"
-    "@jest/test-sequencer" "^27.4.5"
-    "@jest/types" "^27.4.2"
-    babel-jest "^27.4.5"
+    "@babel/core" "^7.11.6"
+    "@jest/test-sequencer" "^28.1.3"
+    "@jest/types" "^28.1.3"
+    babel-jest "^28.1.3"
     chalk "^4.0.0"
     ci-info "^3.2.0"
     deepmerge "^4.2.2"
-    glob "^7.1.1"
-    graceful-fs "^4.2.4"
-    jest-circus "^27.4.5"
-    jest-environment-jsdom "^27.4.4"
-    jest-environment-node "^27.4.4"
-    jest-get-type "^27.4.0"
-    jest-jasmine2 "^27.4.5"
-    jest-regex-util "^27.4.0"
-    jest-resolve "^27.4.5"
-    jest-runner "^27.4.5"
-    jest-util "^27.4.2"
-    jest-validate "^27.4.2"
+    glob "^7.1.3"
+    graceful-fs "^4.2.9"
+    jest-circus "^28.1.3"
+    jest-environment-node "^28.1.3"
+    jest-get-type "^28.0.2"
+    jest-regex-util "^28.0.2"
+    jest-resolve "^28.1.3"
+    jest-runner "^28.1.3"
+    jest-util "^28.1.3"
+    jest-validate "^28.1.3"
     micromatch "^4.0.4"
-    pretty-format "^27.4.2"
+    parse-json "^5.2.0"
+    pretty-format "^28.1.3"
     slash "^3.0.0"
+    strip-json-comments "^3.1.1"
 
-jest-diff@^27.0.0, jest-diff@^27.4.2:
-  version "27.4.2"
-  resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.4.2.tgz#786b2a5211d854f848e2dcc1e324448e9481f36f"
-  integrity sha512-ujc9ToyUZDh9KcqvQDkk/gkbf6zSaeEg9AiBxtttXW59H/AcqEYp1ciXAtJp+jXWva5nAf/ePtSsgWwE5mqp4Q==
+jest-diff@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-28.1.3.tgz#948a192d86f4e7a64c5264ad4da4877133d8792f"
+  integrity sha512-8RqP1B/OXzjjTWkqMX67iqgwBVJRgCyKD3L9nq+6ZqJMdvjE8RgHktqZ6jNrkdMT+dJuYNI3rhQpxaz7drJHfw==
   dependencies:
     chalk "^4.0.0"
-    diff-sequences "^27.4.0"
-    jest-get-type "^27.4.0"
-    pretty-format "^27.4.2"
+    diff-sequences "^28.1.1"
+    jest-get-type "^28.0.2"
+    pretty-format "^28.1.3"
 
-jest-docblock@^27.4.0:
-  version "27.4.0"
-  resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.4.0.tgz#06c78035ca93cbbb84faf8fce64deae79a59f69f"
-  integrity sha512-7TBazUdCKGV7svZ+gh7C8esAnweJoG+SvcF6Cjqj4l17zA2q1cMwx2JObSioubk317H+cjcHgP+7fTs60paulg==
+jest-docblock@^28.1.1:
+  version "28.1.1"
+  resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-28.1.1.tgz#6f515c3bf841516d82ecd57a62eed9204c2f42a8"
+  integrity sha512-3wayBVNiOYx0cwAbl9rwm5kKFP8yHH3d/fkEaL02NPTkDojPtheGB7HZSFY4wzX+DxyrvhXz0KSCVksmCknCuA==
   dependencies:
     detect-newline "^3.0.0"
 
-jest-each@^27.4.2:
-  version "27.4.2"
-  resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.4.2.tgz#19364c82a692d0d26557642098d1f4619c9ee7d3"
-  integrity sha512-53V2MNyW28CTruB3lXaHNk6PkiIFuzdOC9gR3C6j8YE/ACfrPnz+slB0s17AgU1TtxNzLuHyvNlLJ+8QYw9nBg==
+jest-each@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-28.1.3.tgz#bdd1516edbe2b1f3569cfdad9acd543040028f81"
+  integrity sha512-arT1z4sg2yABU5uogObVPvSlSMQlDA48owx07BDPAiasW0yYpYHYOo4HHLz9q0BVzDVU4hILFjzJw0So9aCL/g==
   dependencies:
-    "@jest/types" "^27.4.2"
+    "@jest/types" "^28.1.3"
     chalk "^4.0.0"
-    jest-get-type "^27.4.0"
-    jest-util "^27.4.2"
-    pretty-format "^27.4.2"
-
-jest-environment-jsdom@^27.4.4:
-  version "27.4.4"
-  resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.4.4.tgz#94f738e99514d7a880e8ed8e03e3a321d43b49db"
-  integrity sha512-cYR3ndNfHBqQgFvS1RL7dNqSvD//K56j/q1s2ygNHcfTCAp12zfIromO1w3COmXrxS8hWAh7+CmZmGCIoqGcGA==
-  dependencies:
-    "@jest/environment" "^27.4.4"
-    "@jest/fake-timers" "^27.4.2"
-    "@jest/types" "^27.4.2"
+    jest-get-type "^28.0.2"
+    jest-util "^28.1.3"
+    pretty-format "^28.1.3"
+
+jest-environment-jsdom@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-28.1.3.tgz#2d4e5d61b7f1d94c3bddfbb21f0308ee506c09fb"
+  integrity sha512-HnlGUmZRdxfCByd3GM2F100DgQOajUBzEitjGqIREcb45kGjZvRrKUdlaF6escXBdcXNl0OBh+1ZrfeZT3GnAg==
+  dependencies:
+    "@jest/environment" "^28.1.3"
+    "@jest/fake-timers" "^28.1.3"
+    "@jest/types" "^28.1.3"
+    "@types/jsdom" "^16.2.4"
     "@types/node" "*"
-    jest-mock "^27.4.2"
-    jest-util "^27.4.2"
-    jsdom "^16.6.0"
-
-jest-environment-node@^27.4.4:
-  version "27.4.4"
-  resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.4.4.tgz#42fe5e3b224cb69b99811ebf6f5eaa5a59618514"
-  integrity sha512-D+v3lbJ2GjQTQR23TK0kY3vFVmSeea05giInI41HHOaJnAwOnmUHTZgUaZL+VxUB43pIzoa7PMwWtCVlIUoVoA==
-  dependencies:
-    "@jest/environment" "^27.4.4"
-    "@jest/fake-timers" "^27.4.2"
-    "@jest/types" "^27.4.2"
+    jest-mock "^28.1.3"
+    jest-util "^28.1.3"
+    jsdom "^19.0.0"
+
+jest-environment-node@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-28.1.3.tgz#7e74fe40eb645b9d56c0c4b70ca4357faa349be5"
+  integrity sha512-ugP6XOhEpjAEhGYvp5Xj989ns5cB1K6ZdjBYuS30umT4CQEETaxSiPcZ/E1kFktX4GkrcM4qu07IIlDYX1gp+A==
+  dependencies:
+    "@jest/environment" "^28.1.3"
+    "@jest/fake-timers" "^28.1.3"
+    "@jest/types" "^28.1.3"
     "@types/node" "*"
-    jest-mock "^27.4.2"
-    jest-util "^27.4.2"
+    jest-mock "^28.1.3"
+    jest-util "^28.1.3"
 
 jest-fetch-mock@^3.0.3:
   version "3.0.3"
@@ -9137,94 +9297,69 @@ jest-fetch-mock@^3.0.3:
     cross-fetch "^3.0.4"
     promise-polyfill "^8.1.3"
 
-jest-get-type@^27.4.0:
-  version "27.4.0"
-  resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.4.0.tgz#7503d2663fffa431638337b3998d39c5e928e9b5"
-  integrity sha512-tk9o+ld5TWq41DkK14L4wox4s2D9MtTpKaAVzXfr5CUKm5ZK2ExcaFE0qls2W71zE/6R2TxxrK9w2r6svAFDBQ==
+jest-get-type@^28.0.2:
+  version "28.0.2"
+  resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-28.0.2.tgz#34622e628e4fdcd793d46db8a242227901fcf203"
+  integrity sha512-ioj2w9/DxSYHfOm5lJKCdcAmPJzQXmbM/Url3rhlghrPvT3tt+7a/+oXc9azkKmLvoiXjtV83bEWqi+vs5nlPA==
 
-jest-haste-map@^27.4.5:
-  version "27.4.5"
-  resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.4.5.tgz#c2921224a59223f91e03ec15703905978ef0cc1a"
-  integrity sha512-oJm1b5qhhPs78K24EDGifWS0dELYxnoBiDhatT/FThgB9yxqUm5F6li3Pv+Q+apMBmmPNzOBnZ7ZxWMB1Leq1Q==
+jest-haste-map@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-28.1.3.tgz#abd5451129a38d9841049644f34b034308944e2b"
+  integrity sha512-3S+RQWDXccXDKSWnkHa/dPwt+2qwA8CJzR61w3FoYCvoo3Pn8tvGcysmMF0Bj0EX5RYvAI2EIvC57OmotfdtKA==
   dependencies:
-    "@jest/types" "^27.4.2"
-    "@types/graceful-fs" "^4.1.2"
+    "@jest/types" "^28.1.3"
+    "@types/graceful-fs" "^4.1.3"
     "@types/node" "*"
     anymatch "^3.0.3"
     fb-watchman "^2.0.0"
-    graceful-fs "^4.2.4"
-    jest-regex-util "^27.4.0"
-    jest-serializer "^27.4.0"
-    jest-util "^27.4.2"
-    jest-worker "^27.4.5"
+    graceful-fs "^4.2.9"
+    jest-regex-util "^28.0.2"
+    jest-util "^28.1.3"
+    jest-worker "^28.1.3"
     micromatch "^4.0.4"
-    walker "^1.0.7"
+    walker "^1.0.8"
   optionalDependencies:
     fsevents "^2.3.2"
 
-jest-jasmine2@^27.4.5:
-  version "27.4.5"
-  resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.4.5.tgz#ff79d11561679ff6c89715b0cd6b1e8c0dfbc6dc"
-  integrity sha512-oUnvwhJDj2LhOiUB1kdnJjkx8C5PwgUZQb9urF77mELH9DGR4e2GqpWQKBOYXWs5+uTN9BGDqRz3Aeg5Wts7aw==
+jest-leak-detector@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-28.1.3.tgz#a6685d9b074be99e3adee816ce84fd30795e654d"
+  integrity sha512-WFVJhnQsiKtDEo5lG2mM0v40QWnBM+zMdHHyJs8AWZ7J0QZJS59MsyKeJHWhpBZBH32S48FOVvGyOFT1h0DlqA==
   dependencies:
-    "@babel/traverse" "^7.1.0"
-    "@jest/environment" "^27.4.4"
-    "@jest/source-map" "^27.4.0"
-    "@jest/test-result" "^27.4.2"
-    "@jest/types" "^27.4.2"
-    "@types/node" "*"
-    chalk "^4.0.0"
-    co "^4.6.0"
-    expect "^27.4.2"
-    is-generator-fn "^2.0.0"
-    jest-each "^27.4.2"
-    jest-matcher-utils "^27.4.2"
-    jest-message-util "^27.4.2"
-    jest-runtime "^27.4.5"
-    jest-snapshot "^27.4.5"
-    jest-util "^27.4.2"
-    pretty-format "^27.4.2"
-    throat "^6.0.1"
-
-jest-leak-detector@^27.4.2:
-  version "27.4.2"
-  resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.4.2.tgz#7fc3120893a7a911c553f3f2bdff9faa4454abbb"
-  integrity sha512-ml0KvFYZllzPBJWDei3mDzUhyp/M4ubKebX++fPaudpe8OsxUE+m+P6ciVLboQsrzOCWDjE20/eXew9QMx/VGw==
-  dependencies:
-    jest-get-type "^27.4.0"
-    pretty-format "^27.4.2"
-
-jest-matcher-utils@^27.4.2:
-  version "27.4.2"
-  resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.4.2.tgz#d17c5038607978a255e0a9a5c32c24e984b6c60b"
-  integrity sha512-jyP28er3RRtMv+fmYC/PKG8wvAmfGcSNproVTW2Y0P/OY7/hWUOmsPfxN1jOhM+0u2xU984u2yEagGivz9OBGQ==
+    jest-get-type "^28.0.2"
+    pretty-format "^28.1.3"
+
+jest-matcher-utils@^28.0.0, jest-matcher-utils@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-28.1.3.tgz#5a77f1c129dd5ba3b4d7fc20728806c78893146e"
+  integrity sha512-kQeJ7qHemKfbzKoGjHHrRKH6atgxMk8Enkk2iPQ3XwO6oE/KYD8lMYOziCkeSB9G4adPM4nR1DE8Tf5JeWH6Bw==
   dependencies:
     chalk "^4.0.0"
-    jest-diff "^27.4.2"
-    jest-get-type "^27.4.0"
-    pretty-format "^27.4.2"
+    jest-diff "^28.1.3"
+    jest-get-type "^28.0.2"
+    pretty-format "^28.1.3"
 
-jest-message-util@^27.4.2:
-  version "27.4.2"
-  resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.4.2.tgz#07f3f1bf207d69cf798ce830cc57f1a849f99388"
-  integrity sha512-OMRqRNd9E0DkBLZpFtZkAGYOXl6ZpoMtQJWTAREJKDOFa0M6ptB7L67tp+cszMBkvSgKOhNtQp2Vbcz3ZZKo/w==
+jest-message-util@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-28.1.3.tgz#232def7f2e333f1eecc90649b5b94b0055e7c43d"
+  integrity sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==
   dependencies:
     "@babel/code-frame" "^7.12.13"
-    "@jest/types" "^27.4.2"
+    "@jest/types" "^28.1.3"
     "@types/stack-utils" "^2.0.0"
     chalk "^4.0.0"
-    graceful-fs "^4.2.4"
+    graceful-fs "^4.2.9"
     micromatch "^4.0.4"
-    pretty-format "^27.4.2"
+    pretty-format "^28.1.3"
     slash "^3.0.0"
     stack-utils "^2.0.3"
 
-jest-mock@^27.4.2:
-  version "27.4.2"
-  resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.4.2.tgz#184ff197a25491bfe4570c286daa5d62eb760b88"
-  integrity sha512-PDDPuyhoukk20JrQKeofK12hqtSka7mWH0QQuxSNgrdiPsrnYYLS6wbzu/HDlxZRzji5ylLRULeuI/vmZZDrYA==
+jest-mock@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-28.1.3.tgz#d4e9b1fc838bea595c77ab73672ebf513ab249da"
+  integrity sha512-o3J2jr6dMMWYVH4Lh/NKmDXdosrsJgi4AviS8oXLujcjpCMBb1FMsblDnOXKZKfSiHLxYub1eS0IHuRXsio9eA==
   dependencies:
-    "@jest/types" "^27.4.2"
+    "@jest/types" "^28.1.3"
     "@types/node" "*"
 
 jest-pnp-resolver@^1.2.2:
@@ -9232,169 +9367,154 @@ jest-pnp-resolver@^1.2.2:
   resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c"
   integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==
 
-jest-regex-util@^27.4.0:
-  version "27.4.0"
-  resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.4.0.tgz#e4c45b52653128843d07ad94aec34393ea14fbca"
-  integrity sha512-WeCpMpNnqJYMQoOjm1nTtsgbR4XHAk1u00qDoNBQoykM280+/TmgA5Qh5giC1ecy6a5d4hbSsHzpBtu5yvlbEg==
+jest-regex-util@^28.0.2:
+  version "28.0.2"
+  resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-28.0.2.tgz#afdc377a3b25fb6e80825adcf76c854e5bf47ead"
+  integrity sha512-4s0IgyNIy0y9FK+cjoVYoxamT7Zeo7MhzqRGx7YDYmaQn1wucY9rotiGkBzzcMXTtjrCAP/f7f+E0F7+fxPNdw==
 
-jest-resolve-dependencies@^27.4.5:
-  version "27.4.5"
-  resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.4.5.tgz#9398af854bdb12d6a9e5a8a536ee401f889a3ecf"
-  integrity sha512-elEVvkvRK51y037NshtEkEnukMBWvlPzZHiL847OrIljJ8yIsujD2GXRPqDXC4rEVKbcdsy7W0FxoZb4WmEs7w==
+jest-resolve-dependencies@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-28.1.3.tgz#8c65d7583460df7275c6ea2791901fa975c1fe66"
+  integrity sha512-qa0QO2Q0XzQoNPouMbCc7Bvtsem8eQgVPNkwn9LnS+R2n8DaVDPL/U1gngC0LTl1RYXJU0uJa2BMC2DbTfFrHA==
   dependencies:
-    "@jest/types" "^27.4.2"
-    jest-regex-util "^27.4.0"
-    jest-snapshot "^27.4.5"
+    jest-regex-util "^28.0.2"
+    jest-snapshot "^28.1.3"
 
-jest-resolve@^27.4.5:
-  version "27.4.5"
-  resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.4.5.tgz#8dc44f5065fb8d58944c20f932cb7b9fe9760cca"
-  integrity sha512-xU3z1BuOz/hUhVUL+918KqUgK+skqOuUsAi7A+iwoUldK6/+PW+utK8l8cxIWT9AW7IAhGNXjSAh1UYmjULZZw==
+jest-resolve@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-28.1.3.tgz#cfb36100341ddbb061ec781426b3c31eb51aa0a8"
+  integrity sha512-Z1W3tTjE6QaNI90qo/BJpfnvpxtaFTFw5CDgwpyE/Kz8U/06N1Hjf4ia9quUhCh39qIGWF1ZuxFiBiJQwSEYKQ==
   dependencies:
-    "@jest/types" "^27.4.2"
     chalk "^4.0.0"
-    graceful-fs "^4.2.4"
-    jest-haste-map "^27.4.5"
+    graceful-fs "^4.2.9"
+    jest-haste-map "^28.1.3"
     jest-pnp-resolver "^1.2.2"
-    jest-util "^27.4.2"
-    jest-validate "^27.4.2"
+    jest-util "^28.1.3"
+    jest-validate "^28.1.3"
     resolve "^1.20.0"
     resolve.exports "^1.1.0"
     slash "^3.0.0"
 
-jest-runner@^27.4.5:
-  version "27.4.5"
-  resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.4.5.tgz#daba2ba71c8f34137dc7ac45616add35370a681e"
-  integrity sha512-/irauncTfmY1WkTaRQGRWcyQLzK1g98GYG/8QvIPviHgO1Fqz1JYeEIsSfF+9mc/UTA6S+IIHFgKyvUrtiBIZg==
+jest-runner@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-28.1.3.tgz#5eee25febd730b4713a2cdfd76bdd5557840f9a1"
+  integrity sha512-GkMw4D/0USd62OVO0oEgjn23TM+YJa2U2Wu5zz9xsQB1MxWKDOlrnykPxnMsN0tnJllfLPinHTka61u0QhaxBA==
   dependencies:
-    "@jest/console" "^27.4.2"
-    "@jest/environment" "^27.4.4"
-    "@jest/test-result" "^27.4.2"
-    "@jest/transform" "^27.4.5"
-    "@jest/types" "^27.4.2"
+    "@jest/console" "^28.1.3"
+    "@jest/environment" "^28.1.3"
+    "@jest/test-result" "^28.1.3"
+    "@jest/transform" "^28.1.3"
+    "@jest/types" "^28.1.3"
     "@types/node" "*"
     chalk "^4.0.0"
-    emittery "^0.8.1"
-    exit "^0.1.2"
-    graceful-fs "^4.2.4"
-    jest-docblock "^27.4.0"
-    jest-environment-jsdom "^27.4.4"
-    jest-environment-node "^27.4.4"
-    jest-haste-map "^27.4.5"
-    jest-leak-detector "^27.4.2"
-    jest-message-util "^27.4.2"
-    jest-resolve "^27.4.5"
-    jest-runtime "^27.4.5"
-    jest-util "^27.4.2"
-    jest-worker "^27.4.5"
-    source-map-support "^0.5.6"
-    throat "^6.0.1"
-
-jest-runtime@^27.4.5:
-  version "27.4.5"
-  resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.4.5.tgz#97703ad2a1799d4f50ab59049bd21a9ceaed2813"
-  integrity sha512-CIYqwuJQXHQtPd/idgrx4zgJ6iCb6uBjQq1RSAGQrw2S8XifDmoM1Ot8NRd80ooAm+ZNdHVwsktIMGlA1F1FAQ==
-  dependencies:
-    "@jest/console" "^27.4.2"
-    "@jest/environment" "^27.4.4"
-    "@jest/globals" "^27.4.4"
-    "@jest/source-map" "^27.4.0"
-    "@jest/test-result" "^27.4.2"
-    "@jest/transform" "^27.4.5"
-    "@jest/types" "^27.4.2"
-    "@types/yargs" "^16.0.0"
+    emittery "^0.10.2"
+    graceful-fs "^4.2.9"
+    jest-docblock "^28.1.1"
+    jest-environment-node "^28.1.3"
+    jest-haste-map "^28.1.3"
+    jest-leak-detector "^28.1.3"
+    jest-message-util "^28.1.3"
+    jest-resolve "^28.1.3"
+    jest-runtime "^28.1.3"
+    jest-util "^28.1.3"
+    jest-watcher "^28.1.3"
+    jest-worker "^28.1.3"
+    p-limit "^3.1.0"
+    source-map-support "0.5.13"
+
+jest-runtime@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-28.1.3.tgz#a57643458235aa53e8ec7821949e728960d0605f"
+  integrity sha512-NU+881ScBQQLc1JHG5eJGU7Ui3kLKrmwCPPtYsJtBykixrM2OhVQlpMmFWJjMyDfdkGgBMNjXCGB/ebzsgNGQw==
+  dependencies:
+    "@jest/environment" "^28.1.3"
+    "@jest/fake-timers" "^28.1.3"
+    "@jest/globals" "^28.1.3"
+    "@jest/source-map" "^28.1.2"
+    "@jest/test-result" "^28.1.3"
+    "@jest/transform" "^28.1.3"
+    "@jest/types" "^28.1.3"
     chalk "^4.0.0"
     cjs-module-lexer "^1.0.0"
     collect-v8-coverage "^1.0.0"
     execa "^5.0.0"
-    exit "^0.1.2"
     glob "^7.1.3"
-    graceful-fs "^4.2.4"
-    jest-haste-map "^27.4.5"
-    jest-message-util "^27.4.2"
-    jest-mock "^27.4.2"
-    jest-regex-util "^27.4.0"
-    jest-resolve "^27.4.5"
-    jest-snapshot "^27.4.5"
-    jest-util "^27.4.2"
-    jest-validate "^27.4.2"
+    graceful-fs "^4.2.9"
+    jest-haste-map "^28.1.3"
+    jest-message-util "^28.1.3"
+    jest-mock "^28.1.3"
+    jest-regex-util "^28.0.2"
+    jest-resolve "^28.1.3"
+    jest-snapshot "^28.1.3"
+    jest-util "^28.1.3"
     slash "^3.0.0"
     strip-bom "^4.0.0"
-    yargs "^16.2.0"
 
-jest-serializer@^27.4.0:
-  version "27.4.0"
-  resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.4.0.tgz#34866586e1cae2388b7d12ffa2c7819edef5958a"
-  integrity sha512-RDhpcn5f1JYTX2pvJAGDcnsNTnsV9bjYPU8xcV+xPwOXnUPOQwf4ZEuiU6G9H1UztH+OapMgu/ckEVwO87PwnQ==
+jest-snapshot@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-28.1.3.tgz#17467b3ab8ddb81e2f605db05583d69388fc0668"
+  integrity sha512-4lzMgtiNlc3DU/8lZfmqxN3AYD6GGLbl+72rdBpXvcV+whX7mDrREzkPdp2RnmfIiWBg1YbuFSkXduF2JcafJg==
   dependencies:
-    "@types/node" "*"
-    graceful-fs "^4.2.4"
-
-jest-snapshot@^27.4.5:
-  version "27.4.5"
-  resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.4.5.tgz#2ea909b20aac0fe62504bc161331f730b8a7ecc7"
-  integrity sha512-eCi/iM1YJFrJWiT9de4+RpWWWBqsHiYxFG9V9o/n0WXs6GpW4lUt4FAHAgFPTLPqCUVzrMQmSmTZSgQzwqR7IQ==
-  dependencies:
-    "@babel/core" "^7.7.2"
+    "@babel/core" "^7.11.6"
     "@babel/generator" "^7.7.2"
-    "@babel/parser" "^7.7.2"
     "@babel/plugin-syntax-typescript" "^7.7.2"
     "@babel/traverse" "^7.7.2"
-    "@babel/types" "^7.0.0"
-    "@jest/transform" "^27.4.5"
-    "@jest/types" "^27.4.2"
-    "@types/babel__traverse" "^7.0.4"
+    "@babel/types" "^7.3.3"
+    "@jest/expect-utils" "^28.1.3"
+    "@jest/transform" "^28.1.3"
+    "@jest/types" "^28.1.3"
+    "@types/babel__traverse" "^7.0.6"
     "@types/prettier" "^2.1.5"
     babel-preset-current-node-syntax "^1.0.0"
     chalk "^4.0.0"
-    expect "^27.4.2"
-    graceful-fs "^4.2.4"
-    jest-diff "^27.4.2"
-    jest-get-type "^27.4.0"
-    jest-haste-map "^27.4.5"
-    jest-matcher-utils "^27.4.2"
-    jest-message-util "^27.4.2"
-    jest-resolve "^27.4.5"
-    jest-util "^27.4.2"
+    expect "^28.1.3"
+    graceful-fs "^4.2.9"
+    jest-diff "^28.1.3"
+    jest-get-type "^28.0.2"
+    jest-haste-map "^28.1.3"
+    jest-matcher-utils "^28.1.3"
+    jest-message-util "^28.1.3"
+    jest-util "^28.1.3"
     natural-compare "^1.4.0"
-    pretty-format "^27.4.2"
-    semver "^7.3.2"
+    pretty-format "^28.1.3"
+    semver "^7.3.5"
 
-jest-util@^27.4.2:
-  version "27.4.2"
-  resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.4.2.tgz#ed95b05b1adfd761e2cda47e0144c6a58e05a621"
-  integrity sha512-YuxxpXU6nlMan9qyLuxHaMMOzXAl5aGZWCSzben5DhLHemYQxCc4YK+4L3ZrCutT8GPQ+ui9k5D8rUJoDioMnA==
+jest-util@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-28.1.3.tgz#f4f932aa0074f0679943220ff9cbba7e497028b0"
+  integrity sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==
   dependencies:
-    "@jest/types" "^27.4.2"
+    "@jest/types" "^28.1.3"
     "@types/node" "*"
     chalk "^4.0.0"
     ci-info "^3.2.0"
-    graceful-fs "^4.2.4"
+    graceful-fs "^4.2.9"
     picomatch "^2.2.3"
 
-jest-validate@^27.4.2:
-  version "27.4.2"
-  resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.4.2.tgz#eecfcc1b1c9429aa007da08a2bae4e32a81bbbc3"
-  integrity sha512-hWYsSUej+Fs8ZhOm5vhWzwSLmVaPAxRy+Mr+z5MzeaHm9AxUpXdoVMEW4R86y5gOobVfBsMFLk4Rb+QkiEpx1A==
+jest-validate@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-28.1.3.tgz#e322267fd5e7c64cea4629612c357bbda96229df"
+  integrity sha512-SZbOGBWEsaTxBGCOpsRWlXlvNkvTkY0XxRfh7zYmvd8uL5Qzyg0CHAXiXKROflh801quA6+/DsT4ODDthOC/OA==
   dependencies:
-    "@jest/types" "^27.4.2"
+    "@jest/types" "^28.1.3"
     camelcase "^6.2.0"
     chalk "^4.0.0"
-    jest-get-type "^27.4.0"
+    jest-get-type "^28.0.2"
     leven "^3.1.0"
-    pretty-format "^27.4.2"
+    pretty-format "^28.1.3"
 
-jest-watcher@^27.4.2:
-  version "27.4.2"
-  resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.4.2.tgz#c9037edfd80354c9fe90de4b6f8b6e2b8e736744"
-  integrity sha512-NJvMVyyBeXfDezhWzUOCOYZrUmkSCiatpjpm+nFUid74OZEHk6aMLrZAukIiFDwdbqp6mTM6Ui1w4oc+8EobQg==
+jest-watcher@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-28.1.3.tgz#c6023a59ba2255e3b4c57179fc94164b3e73abd4"
+  integrity sha512-t4qcqj9hze+jviFPUN3YAtAEeFnr/azITXQEMARf5cMwKY2SMBRnCQTXLixTl20OR6mLh9KLMrgVJgJISym+1g==
   dependencies:
-    "@jest/test-result" "^27.4.2"
-    "@jest/types" "^27.4.2"
+    "@jest/test-result" "^28.1.3"
+    "@jest/types" "^28.1.3"
     "@types/node" "*"
     ansi-escapes "^4.2.1"
     chalk "^4.0.0"
-    jest-util "^27.4.2"
+    emittery "^0.10.2"
+    jest-util "^28.1.3"
     string-length "^4.0.1"
 
 jest-worker@^26.2.1, jest-worker@^26.5.0:
@@ -9406,10 +9526,10 @@ jest-worker@^26.2.1, jest-worker@^26.5.0:
     merge-stream "^2.0.0"
     supports-color "^7.0.0"
 
-jest-worker@^27.4.5:
-  version "27.4.5"
-  resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.4.5.tgz#d696e3e46ae0f24cff3fa7195ffba22889262242"
-  integrity sha512-f2s8kEdy15cv9r7q4KkzGXvlY0JTcmCbMHZBfSQDwW77REr45IDWwd0lksDFeVHH2jJ5pqb90T77XscrjeGzzg==
+jest-worker@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-28.1.3.tgz#7e3c4ce3fa23d1bb6accb169e7f396f98ed4bb98"
+  integrity sha512-CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==
   dependencies:
     "@types/node" "*"
     merge-stream "^2.0.0"
@@ -9426,10 +9546,10 @@ jimp@0.16.1:
     "@jimp/types" "^0.16.1"
     regenerator-runtime "^0.13.3"
 
-jmespath@0.15.0:
-  version "0.15.0"
-  resolved "https://registry.yarnpkg.com/jmespath/-/jmespath-0.15.0.tgz#a3f222a9aae9f966f5d27c796510e28091764217"
-  integrity sha1-o/Iiqarp+Wb10nx5ZRDigJF2Qhc=
+jmespath@0.16.0:
+  version "0.16.0"
+  resolved "https://registry.yarnpkg.com/jmespath/-/jmespath-0.16.0.tgz#b15b0a85dfd4d930d43e69ed605943c802785076"
+  integrity sha512-9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw==
 
 jpeg-js@0.4.2, jpeg-js@0.4.4:
   version "0.4.4"
@@ -9464,23 +9584,23 @@ js-yaml@4.1.0, js-yaml@^3.13.1, js-yaml@^3.14.1:
     argparse "^1.0.7"
     esprima "^4.0.0"
 
-jsdom@^16.6.0:
-  version "16.7.0"
-  resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710"
-  integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==
+jsdom@^19.0.0:
+  version "19.0.0"
+  resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-19.0.0.tgz#93e67c149fe26816d38a849ea30ac93677e16b6a"
+  integrity sha512-RYAyjCbxy/vri/CfnjUWJQQtZ3LKlLnDqj+9XLNnJPgEGeirZs3hllKR20re8LUZ6o1b1X4Jat+Qd26zmP41+A==
   dependencies:
     abab "^2.0.5"
-    acorn "^8.2.4"
+    acorn "^8.5.0"
     acorn-globals "^6.0.0"
-    cssom "^0.4.4"
+    cssom "^0.5.0"
     cssstyle "^2.3.0"
-    data-urls "^2.0.0"
-    decimal.js "^10.2.1"
-    domexception "^2.0.1"
+    data-urls "^3.0.1"
+    decimal.js "^10.3.1"
+    domexception "^4.0.0"
     escodegen "^2.0.0"
-    form-data "^3.0.0"
-    html-encoding-sniffer "^2.0.1"
-    http-proxy-agent "^4.0.1"
+    form-data "^4.0.0"
+    html-encoding-sniffer "^3.0.0"
+    http-proxy-agent "^5.0.0"
     https-proxy-agent "^5.0.0"
     is-potential-custom-element-name "^1.0.1"
     nwsapi "^2.2.0"
@@ -9489,13 +9609,13 @@ jsdom@^16.6.0:
     symbol-tree "^3.2.4"
     tough-cookie "^4.0.0"
     w3c-hr-time "^1.0.2"
-    w3c-xmlserializer "^2.0.0"
-    webidl-conversions "^6.1.0"
-    whatwg-encoding "^1.0.5"
-    whatwg-mimetype "^2.3.0"
-    whatwg-url "^8.5.0"
-    ws "^7.4.6"
-    xml-name-validator "^3.0.0"
+    w3c-xmlserializer "^3.0.0"
+    webidl-conversions "^7.0.0"
+    whatwg-encoding "^2.0.0"
+    whatwg-mimetype "^3.0.0"
+    whatwg-url "^10.0.0"
+    ws "^8.2.3"
+    xml-name-validator "^4.0.0"
 
 jsesc@^2.5.1:
   version "2.5.2"
@@ -9628,15 +9748,15 @@ jsonwebtoken@^8.5.0:
     array-includes "^3.1.1"
     object.assign "^4.1.1"
 
-jszip@^3.7.1:
-  version "3.7.1"
-  resolved "https://registry.yarnpkg.com/jszip/-/jszip-3.7.1.tgz#bd63401221c15625a1228c556ca8a68da6fda3d9"
-  integrity sha512-ghL0tz1XG9ZEmRMcEN2vt7xabrDdqHHeykgARpmZ0BiIctWxM47Vt63ZO2dnp4QYt/xJVLLy5Zv1l/xRdh2byg==
+jszip@^3.10.0, jszip@^3.7.1:
+  version "3.10.0"
+  resolved "https://registry.yarnpkg.com/jszip/-/jszip-3.10.0.tgz#faf3db2b4b8515425e34effcdbb086750a346061"
+  integrity sha512-LDfVtOLtOxb9RXkYOwPyNBTQDL4eUbqahtoY6x07GiDJHwSYvn8sHHIw8wINImV3MqbMNve2gSuM1DDqEKk09Q==
   dependencies:
     lie "~3.3.0"
     pako "~1.0.2"
     readable-stream "~2.3.6"
-    set-immediate-shim "~1.0.1"
+    setimmediate "^1.0.5"
 
 jwa@^1.4.1:
   version "1.4.1"
@@ -9868,6 +9988,13 @@ koa-static@^5.0.0:
     debug "^3.1.0"
     koa-send "^5.0.0"
 
+koa-useragent@*, koa-useragent@^4.1.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/koa-useragent/-/koa-useragent-4.1.0.tgz#d3f128b552c6da3e5e9e9e9c887b2922b16e4468"
+  integrity sha512-x/HUDZ1zAmNNh5hA9hHbPm9p3UVg2prlpHzxCXQCzbibrNS0kmj7MkCResCbAbG7ZT6FVxNSMjR94ZGamdMwxA==
+  dependencies:
+    express-useragent "^1.0.15"
+
 koa-views@^7.0.1:
   version "7.0.1"
   resolved "https://registry.yarnpkg.com/koa-views/-/koa-views-7.0.1.tgz#0c8f8e65d5cd2e08249430cb83dc361e49a17a5a"
@@ -9984,7 +10111,7 @@ levn@^0.4.1:
 levn@~0.3.0:
   version "0.3.0"
   resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee"
-  integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=
+  integrity sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==
   dependencies:
     prelude-ls "~1.1.2"
     type-check "~0.3.2"
@@ -10023,10 +10150,10 @@ lines-and-columns@^1.1.6:
   resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00"
   integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=
 
-linkify-it@^3.0.1:
-  version "3.0.3"
-  resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-3.0.3.tgz#a98baf44ce45a550efb4d49c769d07524cc2fa2e"
-  integrity sha512-ynTsyrFSdE5oZ/O9GEf00kPngmOfVwazR5GKDq6EYfhlpFug3J2zybX56a2PRRpc9P+FuSoGNAwjlbDs9jJBPQ==
+linkify-it@^4.0.1:
+  version "4.0.1"
+  resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-4.0.1.tgz#01f1d5e508190d06669982ba31a7d9f56a5751ec"
+  integrity sha512-C7bfi1UZmoj8+PQx22XyeXCuBlokoyWQL5pWSP+EI6nzRylyThouddufc2c1NDIcP9k5agmN9fLpA7VNJfIiqw==
   dependencies:
     uc.micro "^1.0.1"
 
@@ -10231,7 +10358,7 @@ lodash.uniq@^4.5.0:
   resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
   integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=
 
-lodash@^4.0.1, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.7.0:
+lodash@^4.0.1, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4:
   version "4.17.21"
   resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
   integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
@@ -10329,6 +10456,11 @@ lru_map@^0.3.3:
   resolved "https://registry.yarnpkg.com/lru_map/-/lru_map-0.3.3.tgz#b5c8351b9464cbd750335a79650a0ec0e56118dd"
   integrity sha1-tcg1G5Rky9dQM1p5ZQoOwOVhGN0=
 
+luxon@^3.0.1:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/luxon/-/luxon-3.0.1.tgz#6901111d10ad06fd267ad4e4128a84bef8a77299"
+  integrity sha512-hF3kv0e5gwHQZKz4wtm4c+inDtyc7elkanAsBq+fundaCdUBNJB1dHEGUZIM6SfSBUlbVFduPwEtNjFK8wLtcw==
+
 magic-string@^0.25.0, magic-string@^0.25.7:
   version "0.25.7"
   resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.7.tgz#3f497d6fd34c669c6798dcb821f2ef31f5445051"
@@ -10395,14 +10527,14 @@ markdown-it-emoji@^2.0.0:
   resolved "https://registry.yarnpkg.com/markdown-it-emoji/-/markdown-it-emoji-2.0.0.tgz#3164ad4c009efd946e98274f7562ad611089a231"
   integrity sha512-39j7/9vP/CPCKbEI44oV8yoPJTpvfeReTn/COgRhSpNrjWF3PfP/JUxxB0hxV6ynOY8KH8Y8aX9NMDdo6z+6YQ==
 
-markdown-it@^12.0.0, markdown-it@^12.3.2:
-  version "12.3.2"
-  resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-12.3.2.tgz#bf92ac92283fe983fe4de8ff8abfb5ad72cd0c90"
-  integrity sha512-TchMembfxfNVpHkbtriWltGWc+m3xszaRD0CZup7GFFhzIgQqxIfn3eGj1yZpfuflzPvfkt611B2Q/Bsk1YnGg==
+markdown-it@^13.0.1:
+  version "13.0.1"
+  resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-13.0.1.tgz#c6ecc431cacf1a5da531423fc6a42807814af430"
+  integrity sha512-lTlxriVoy2criHP0JKRhO2VDG9c2ypWCsT237eDiLqi09rmbKoUetyGHq2uOIRoRS//kfoJckS0eUzzkDR+k2Q==
   dependencies:
     argparse "^2.0.1"
-    entities "~2.1.0"
-    linkify-it "^3.0.1"
+    entities "~3.0.1"
+    linkify-it "^4.0.1"
     mdurl "^1.0.1"
     uc.micro "^1.0.5"
 
@@ -10719,10 +10851,10 @@ moment-mini@^2.24.0:
   resolved "https://registry.yarnpkg.com/moment-mini/-/moment-mini-2.24.0.tgz#fa68d98f7fe93ae65bf1262f6abb5fb6983d8d18"
   integrity sha512-9ARkWHBs+6YJIvrIp0Ik5tyTTtP9PoV0Ssu2Ocq5y9v8+NOOpWiRshAp8c4rZVWTOe+157on/5G+zj5pwIQFEQ==
 
-moment-timezone@^0.5.31, moment-timezone@^0.5.34:
-  version "0.5.34"
-  resolved "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.34.tgz#a75938f7476b88f155d3504a9343f7519d9a405c"
-  integrity sha512-3zAEHh2hKUs3EXLESx/wsgw6IQdusOT8Bxm3D9UrHPQR7zlMmzwybC8zHEM1tQ4LJwP7fcxrWr8tuBg05fFCbg==
+moment-timezone@^0.5.34:
+  version "0.5.37"
+  resolved "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.37.tgz#adf97f719c4e458fdb12e2b4e87b8bec9f4eef1e"
+  integrity sha512-uEDzDNFhfaywRl+vwXxffjjq1q0Vzr+fcQpQ1bU0kbzorfS7zVtZnCnGc8mhWmF39d4g4YriF6kwA75mJKE/Zg==
   dependencies:
     moment ">= 2.9.0"
 
@@ -10758,6 +10890,27 @@ ms@2.1.2, ms@^2.1.1:
   resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
   integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
 
+msgpackr-extract@^2.0.2:
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/msgpackr-extract/-/msgpackr-extract-2.1.2.tgz#56272030f3e163e1b51964ef8b1cd5e7240c03ed"
+  integrity sha512-cmrmERQFb19NX2JABOGtrKdHMyI6RUyceaPBQ2iRz9GnDkjBWFjNJC0jyyoOfZl2U/LZE3tQCCQc4dlRyA8mcA==
+  dependencies:
+    node-gyp-build-optional-packages "5.0.3"
+  optionalDependencies:
+    "@msgpackr-extract/msgpackr-extract-darwin-arm64" "2.1.2"
+    "@msgpackr-extract/msgpackr-extract-darwin-x64" "2.1.2"
+    "@msgpackr-extract/msgpackr-extract-linux-arm" "2.1.2"
+    "@msgpackr-extract/msgpackr-extract-linux-arm64" "2.1.2"
+    "@msgpackr-extract/msgpackr-extract-linux-x64" "2.1.2"
+    "@msgpackr-extract/msgpackr-extract-win32-x64" "2.1.2"
+
+msgpackr@^1.5.2:
+  version "1.6.2"
+  resolved "https://registry.yarnpkg.com/msgpackr/-/msgpackr-1.6.2.tgz#176cd9f6b4437dad87a839b37f23c2dfee408d9a"
+  integrity sha512-bqSQ0DYJbXbrJcrZFmMygUZmqQiDfI2ewFVWcrZY12w5XHWtPuW4WppDT/e63Uu311ajwkRRXSoF0uILroBeTA==
+  optionalDependencies:
+    msgpackr-extract "^2.0.2"
+
 multer@^1.4.2:
   version "1.4.2"
   resolved "https://registry.yarnpkg.com/multer/-/multer-1.4.2.tgz#2f1f4d12dbaeeba74cb37e623f234bf4d3d2057a"
@@ -10863,6 +11016,11 @@ node-fetch@2.6.7, node-fetch@^2.1.2, node-fetch@^2.6.1, node-fetch@^2.6.7:
   dependencies:
     whatwg-url "^5.0.0"
 
+node-gyp-build-optional-packages@5.0.3:
+  version "5.0.3"
+  resolved "https://registry.yarnpkg.com/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.0.3.tgz#92a89d400352c44ad3975010368072b41ad66c17"
+  integrity sha512-k75jcVzk5wnnc/FMxsf4udAoTEUv2jY3ycfdSd3yWu6Cnd1oee6/CfZJApyscA4FJOmdoixWwiwOyf16RzD5JA==
+
 node-gyp-build@^3.9.0:
   version "3.9.0"
   resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-3.9.0.tgz#53a350187dd4d5276750da21605d1cb681d09e25"
@@ -10942,16 +11100,6 @@ nopt@~1.0.10:
   dependencies:
     abbrev "1"
 
-normalize-package-data@^2.5.0:
-  version "2.5.0"
-  resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8"
-  integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==
-  dependencies:
-    hosted-git-info "^2.1.4"
-    resolve "^1.10.0"
-    semver "2 || 3 || 4 || 5"
-    validate-npm-package-license "^3.0.1"
-
 normalize-path@^2.1.1:
   version "2.1.1"
   resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9"
@@ -11003,9 +11151,9 @@ nth-check@~1.0.1:
     boolbase "~1.0.0"
 
 nwsapi@^2.2.0:
-  version "2.2.0"
-  resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7"
-  integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==
+  version "2.2.1"
+  resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.1.tgz#10a9f268fbf4c461249ebcfe38e359aa36e2577c"
+  integrity sha512-JYOWTeFoS0Z93587vRJgASD5Ut11fYl5NyihP3KrYBvMe1FRRs6RN7m20SA/16GM4P6hTnZjT+UmDOt38UeXNg==
 
 oauth@0.9.x:
   version "0.9.15"
@@ -11026,7 +11174,7 @@ object-copy@^0.1.0:
     define-property "^0.2.5"
     kind-of "^3.0.3"
 
-object-inspect@^1.11.0, object-inspect@^1.12.0, object-inspect@^1.7.0, object-inspect@^1.9.0:
+object-inspect@^1.12.0, object-inspect@^1.7.0, object-inspect@^1.9.0:
   version "1.12.0"
   resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0"
   integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==
@@ -11039,7 +11187,7 @@ object-is@^1.0.2, object-is@^1.1.2:
     call-bind "^1.0.2"
     define-properties "^1.1.3"
 
-object-keys@^1.0.12, object-keys@^1.1.1:
+object-keys@^1.1.1:
   version "1.1.1"
   resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
   integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
@@ -11080,7 +11228,7 @@ object.fromentries@^2.0.2, object.fromentries@^2.0.3:
     es-abstract "^1.18.0-next.2"
     has "^1.0.3"
 
-object.getownpropertydescriptors@^2.0.3, object.getownpropertydescriptors@^2.1.0:
+object.getownpropertydescriptors@^2.0.3:
   version "2.1.0"
   resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz#369bf1f9592d8ab89d712dced5cb81c7c5352649"
   integrity sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==
@@ -11193,15 +11341,15 @@ os-browserify@^0.3.0:
   resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27"
   integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=
 
-outline-icons@^1.43.1:
-  version "1.43.1"
-  resolved "https://registry.yarnpkg.com/outline-icons/-/outline-icons-1.43.1.tgz#3193c4c659c66b34788db043bb2f843b9c437a48"
-  integrity sha512-REj+JsCFi2Jv5uG0/OrBsMVSBFAIsSROxynWbuO9r2eNT8wdqjni02Mk1gq1qFfTbwOvHJ+7ycadu6zlISAK2g==
+outline-icons@^1.44.0:
+  version "1.44.0"
+  resolved "https://registry.yarnpkg.com/outline-icons/-/outline-icons-1.44.0.tgz#ce9fd272f0556db9b05b5615f87c12b16bd18ea0"
+  integrity sha512-nkKGXuGbOgZjPkyVpZZu7CIDrfmt2eER+3RWfE1LU/GqHkuUt0c5JpCsEyhxXAPMUW09q4sDvHjLVge7DUWeYg==
 
-oy-vey@^0.10.0:
-  version "0.10.0"
-  resolved "https://registry.yarnpkg.com/oy-vey/-/oy-vey-0.10.0.tgz#16160f837f0ea3d0340adfc2377ba93d1ed9ce76"
-  integrity sha512-mdfU2VUl3Ra1ofXiO6Nqd98PBRFWlPM5rTYvSqsDxQEeV5PCfWroWOoVyg8vOpGhJjcDFKIS62PfbPUJUQmSwQ==
+oy-vey@^0.11.2:
+  version "0.11.2"
+  resolved "https://registry.yarnpkg.com/oy-vey/-/oy-vey-0.11.2.tgz#3bbc36a4064993a2ff52f985b066d44dcb4500d9"
+  integrity sha512-06prDST4MicbAWie4eXcouJbGhAu0r7j3Yta1KFtgs7v2t7goHmY06/GWFjT6lpIsGKJC+7vZtwdecRSYnFtPQ==
   dependencies:
     clean-css "^4.0.12"
     object-assign "^4.1.1"
@@ -11231,7 +11379,7 @@ p-limit@^2.0.0, p-limit@^2.2.0:
   dependencies:
     p-try "^2.0.0"
 
-p-limit@^3.0.0, p-limit@^3.0.2:
+p-limit@^3.0.0, p-limit@^3.0.2, p-limit@^3.1.0:
   version "3.1.0"
   resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b"
   integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==
@@ -11385,10 +11533,10 @@ parse-headers@^2.0.0:
   resolved "https://registry.yarnpkg.com/parse-headers/-/parse-headers-2.0.3.tgz#5e8e7512383d140ba02f0c7aa9f49b4399c92515"
   integrity sha512-QhhZ+DCCit2Coi2vmAKbq5RGTRcQUOE2+REgv8vdyu7MnYx2eZztegqtTx99TZ86GTIwqiy3+4nQTWZ2tgmdCA==
 
-parse-json@^5.0.0:
-  version "5.1.0"
-  resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.1.0.tgz#f96088cdf24a8faa9aea9a009f2d9d942c999646"
-  integrity sha512-+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==
+parse-json@^5.0.0, parse-json@^5.2.0:
+  version "5.2.0"
+  resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd"
+  integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==
   dependencies:
     "@babel/code-frame" "^7.0.0"
     error-ex "^1.3.1"
@@ -11678,7 +11826,7 @@ pify@^5.0.0:
   resolved "https://registry.yarnpkg.com/pify/-/pify-5.0.0.tgz#1f5eca3f5e87ebec28cc6d54a0e4aaf00acc127f"
   integrity sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==
 
-pirates@^4.0.1:
+pirates@^4.0.4:
   version "4.0.5"
   resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b"
   integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==
@@ -11790,7 +11938,7 @@ prelude-ls@^1.2.1:
 prelude-ls@~1.1.2:
   version "1.1.2"
   resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
-  integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=
+  integrity sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==
 
 prepend-http@^2.0.0:
   version "2.0.0"
@@ -11822,15 +11970,15 @@ pretty-error@^2.1.1:
     lodash "^4.17.20"
     renderkid "^2.0.4"
 
-pretty-format@^27.0.0, pretty-format@^27.4.2:
-  version "27.4.2"
-  resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.4.2.tgz#e4ce92ad66c3888423d332b40477c87d1dac1fb8"
-  integrity sha512-p0wNtJ9oLuvgOQDEIZ9zQjZffK7KtyR6Si0jnXULIDwrlNF8Cuir3AZP0hHv0jmKuNN/edOnbMjnzd4uTcmWiw==
+pretty-format@^28.0.0, pretty-format@^28.1.3:
+  version "28.1.3"
+  resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-28.1.3.tgz#c9fba8cedf99ce50963a11b27d982a9ae90970d5"
+  integrity sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==
   dependencies:
-    "@jest/types" "^27.4.2"
+    "@jest/schemas" "^28.1.3"
     ansi-regex "^5.0.1"
     ansi-styles "^5.0.0"
-    react-is "^17.0.1"
+    react-is "^18.0.0"
 
 pretty@^2.0.0:
   version "2.0.0"
@@ -11876,15 +12024,6 @@ promise-polyfill@^8.1.3:
   resolved "https://registry.yarnpkg.com/promise-polyfill/-/promise-polyfill-8.2.0.tgz#367394726da7561457aba2133c9ceefbd6267da0"
   integrity sha512-k/TC0mIcPVF6yHhUvwAp7cvL6I2fFV7TzF1DuGPI8mBh4QQazf36xCKEHKTZKRysEoTQoQdKyP25J8MPJp7j5g==
 
-promise.prototype.finally@^3.1.2:
-  version "3.1.2"
-  resolved "https://registry.yarnpkg.com/promise.prototype.finally/-/promise.prototype.finally-3.1.2.tgz#b8af89160c9c673cefe3b4c4435b53cfd0287067"
-  integrity sha512-A2HuJWl2opDH0EafgdjwEw7HysI8ff/n4lW4QEVBCUXFk9QeGecBWv0Deph0UmLe3tTNYegz8MOjsVuE6SMoJA==
-  dependencies:
-    define-properties "^1.1.3"
-    es-abstract "^1.17.0-next.0"
-    function-bind "^1.1.1"
-
 prompts@^2.0.1:
   version "2.4.0"
   resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.0.tgz#4aa5de0723a231d1ee9121c40fdf663df73f61d7"
@@ -11971,12 +12110,12 @@ prosemirror-keymap@^1.0.0, prosemirror-keymap@^1.1.2, prosemirror-keymap@^1.1.5:
     prosemirror-state "^1.0.0"
     w3c-keyname "^2.2.0"
 
-prosemirror-markdown@^1.5.2:
-  version "1.7.0"
-  resolved "https://registry.yarnpkg.com/prosemirror-markdown/-/prosemirror-markdown-1.7.0.tgz#6a1cdb7b8625b443ab887fd4ca62585b86b04351"
-  integrity sha512-jZAehQ6KN5pSTFEdb1+iTvdogRBlKH3+Qqb6wjRuh8auRomEYVvAmSY9OsUL7689HzOUiy02T4f2WxB/t2I8rQ==
+prosemirror-markdown@^1.9.3:
+  version "1.9.3"
+  resolved "https://registry.yarnpkg.com/prosemirror-markdown/-/prosemirror-markdown-1.9.3.tgz#13615fdeea71b744cc7bbbc64480968c8b7a2cee"
+  integrity sha512-tPJ3jEUTF3C5m60m/Eq8Y3SW6d5av0Ll61HuK1NuDP+jXsFFywG2nw500+nn7GQi5lSXP3n1HQP9zd0fpmAlzw==
   dependencies:
-    markdown-it "^12.0.0"
+    markdown-it "^13.0.1"
     prosemirror-model "^1.0.0"
 
 prosemirror-model@1.16.1, prosemirror-model@^1.0.0, prosemirror-model@^1.16.0, prosemirror-model@^1.8.1:
@@ -12074,9 +12213,9 @@ pseudomap@^1.0.2:
   integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM=
 
 psl@^1.1.33:
-  version "1.8.0"
-  resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24"
-  integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7"
+  integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==
 
 pstree.remy@^1.1.8:
   version "1.1.8"
@@ -12235,6 +12374,11 @@ range-parser@^1.0.3:
   resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031"
   integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==
 
+rate-limiter-flexible@^2.3.7:
+  version "2.3.7"
+  resolved "https://registry.yarnpkg.com/rate-limiter-flexible/-/rate-limiter-flexible-2.3.7.tgz#c23e1f818a1575f1de1fd173437f4072125e1615"
+  integrity sha512-dmc+J/IffVBvHlqq5/XClsdLdkOdQV/tjrz00cwneHUbEDYVrf4aUDAyR4Jybcf2+Vpn4NwoVrnnAyt/D0ciWw==
+
 raw-body@^2.2.0:
   version "2.4.1"
   resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.1.tgz#30ac82f98bb5ae8c152e67149dac8d55153b168c"
@@ -12357,15 +12501,20 @@ react-is@^17.0.1:
   resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0"
   integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==
 
+react-is@^18.0.0:
+  version "18.2.0"
+  resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b"
+  integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==
+
 react-medium-image-zoom@^3.1.3:
   version "3.1.3"
   resolved "https://registry.yarnpkg.com/react-medium-image-zoom/-/react-medium-image-zoom-3.1.3.tgz#b1470abc5a342d65c23021c01bafa8c731821478"
   integrity sha512-5CoU8whSCz5Xz2xNeGD34dDfZ6jaf/pybdfZh8HNUmA9mbXbLfj0n6bQWfEUwkq9lsNg1sEkyeIJq2tcvZY8bw==
 
-react-merge-refs@^1.1.0:
-  version "1.1.0"
-  resolved "https://registry.yarnpkg.com/react-merge-refs/-/react-merge-refs-1.1.0.tgz#73d88b892c6c68cbb7a66e0800faa374f4c38b06"
-  integrity sha512-alTKsjEL0dKH/ru1Iyn7vliS2QRcBp9zZPGoWxUOvRGWPUYgjo+V01is7p04It6KhgrzhJGnIj9GgX8W4bZoCQ==
+react-merge-refs@^2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/react-merge-refs/-/react-merge-refs-2.0.1.tgz#a1f8c2dadefa635333e9b91ec59f30b65228b006"
+  integrity sha512-pywF6oouJWuqL26xV3OruRSIqai31R9SdJX/I3gP2q8jLxUnA1IwXcLW8werUHLZOrp4N7YOeQNZrh/BKrHI4A==
 
 react-portal@^4.2.0:
   version "4.2.1"
@@ -12450,10 +12599,10 @@ react-waypoint@^10.1.0:
     prop-types "^15.0.0"
     react-is "^17.0.1"
 
-react-window@^1.8.6:
-  version "1.8.6"
-  resolved "https://registry.yarnpkg.com/react-window/-/react-window-1.8.6.tgz#d011950ac643a994118632665aad0c6382e2a112"
-  integrity sha512-8VwEEYyjz6DCnGBsd+MgkD0KJ2/OXFULyDtorIiTz+QzwoP94tBoA7CnbtyXMm+cCeAUER5KJcPtWl9cpKbOBg==
+react-window@^1.8.7:
+  version "1.8.7"
+  resolved "https://registry.yarnpkg.com/react-window/-/react-window-1.8.7.tgz#5e9fd0d23f48f432d7022cdb327219353a15f0d4"
+  integrity sha512-JHEZbPXBpKMmoNO1bNhoXOOLg/ujhL/BU4IqVU9r8eQPcy5KQnGHIHDRkJ0ns9IM5+Aq5LNwt3j8t3tIrePQzA==
   dependencies:
     "@babel/runtime" "^7.0.0"
     memoize-one ">=3.1.1 <6"
@@ -12473,16 +12622,6 @@ reactcss@^1.2.0:
   dependencies:
     lodash "^4.0.1"
 
-read-pkg@^5.2.0:
-  version "5.2.0"
-  resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc"
-  integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==
-  dependencies:
-    "@types/normalize-package-data" "^2.4.0"
-    normalize-package-data "^2.5.0"
-    parse-json "^5.0.0"
-    type-fest "^0.6.0"
-
 "readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@^2.3.7, readable-stream@~2.3.6:
   version "2.3.7"
   resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
@@ -12658,7 +12797,7 @@ regex-not@^1.0.0, regex-not@^1.0.2:
     extend-shallow "^3.0.2"
     safe-regex "^1.1.0"
 
-regexp.prototype.flags@^1.4.1:
+regexp.prototype.flags@^1.4.1, regexp.prototype.flags@^1.4.3:
   version "1.4.3"
   resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz#87cab30f80f66660181a3bb7bf5981a872b367ac"
   integrity sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==
@@ -12867,7 +13006,7 @@ resolve.exports@^1.1.0:
   resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9"
   integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==
 
-resolve@^1.1.6, resolve@^1.10.0, resolve@^1.10.1, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.18.1, resolve@^1.19.0, resolve@^1.20.0:
+resolve@^1.1.6, resolve@^1.10.1, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.18.1, resolve@^1.19.0, resolve@^1.20.0:
   version "1.20.0"
   resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975"
   integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==
@@ -13029,17 +13168,10 @@ rw@1:
   resolved "https://registry.yarnpkg.com/rw/-/rw-1.3.3.tgz#3f862dfa91ab766b14885ef4d01124bfda074fb4"
   integrity sha1-P4Yt+pGrdmsUiF700BEkv9oHT7Q=
 
-rxjs@^6.6.3:
-  version "6.6.7"
-  resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9"
-  integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==
-  dependencies:
-    tslib "^1.9.0"
-
-rxjs@^7.5.5:
-  version "7.5.5"
-  resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.5.tgz#2ebad89af0f560f460ad5cc4213219e1f7dd4e9f"
-  integrity sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==
+rxjs@^7.0.0, rxjs@^7.5.5:
+  version "7.5.6"
+  resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.6.tgz#0446577557862afd6903517ce7cae79ecb9662bc"
+  integrity sha512-dnyv2/YsXhnm461G+R/Pe5bWP41Nm6LBXEYWI6eiFP4fiwx6WRI/CD0zbdVAudd9xwLEF2IDcKXLHit0FYjUzw==
   dependencies:
     tslib "^2.1.0"
 
@@ -13164,16 +13296,16 @@ semver-diff@^3.1.1:
   dependencies:
     semver "^6.3.0"
 
-"semver@2 || 3 || 4 || 5", semver@^5.5.0, semver@^5.6.0, semver@^5.7.0, semver@^5.7.1:
-  version "5.7.1"
-  resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
-  integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
-
 semver@7.0.0:
   version "7.0.0"
   resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e"
   integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==
 
+semver@^5.5.0, semver@^5.6.0, semver@^5.7.0, semver@^5.7.1:
+  version "5.7.1"
+  resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
+  integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
+
 semver@^6.0.0, semver@^6.1.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0:
   version "6.3.0"
   resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
@@ -13257,11 +13389,6 @@ set-blocking@^2.0.0:
   resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
   integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc=
 
-set-immediate-shim@~1.0.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61"
-  integrity sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=
-
 set-value@^2.0.0, set-value@^2.0.1:
   version "2.0.1"
   resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b"
@@ -13272,10 +13399,10 @@ set-value@^2.0.0, set-value@^2.0.1:
     is-plain-object "^2.0.3"
     split-string "^3.0.1"
 
-setimmediate@^1.0.4:
+setimmediate@^1.0.4, setimmediate@^1.0.5:
   version "1.0.5"
   resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285"
-  integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=
+  integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==
 
 setprototypeof@1.1.0:
   version "1.1.0"
@@ -13329,6 +13456,11 @@ shebang-regex@^3.0.0:
   resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
   integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
 
+shell-quote@^1.7.3:
+  version "1.7.3"
+  resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.3.tgz#aa40edac170445b9a431e17bb62c0b881b9c4123"
+  integrity sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw==
+
 side-channel@^1.0.4:
   version "1.0.4"
   resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf"
@@ -13343,10 +13475,10 @@ sigmund@^1.0.1:
   resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590"
   integrity sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=
 
-signal-exit@^3.0.2, signal-exit@^3.0.3:
-  version "3.0.5"
-  resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.5.tgz#9e3e8cc0c75a99472b44321033a7702e7738252f"
-  integrity sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==
+signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7:
+  version "3.0.7"
+  resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9"
+  integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==
 
 simple-swizzle@^0.2.2:
   version "0.2.2"
@@ -13567,6 +13699,14 @@ source-map-resolve@^0.6.0:
     atob "^2.1.2"
     decode-uri-component "^0.2.0"
 
+source-map-support@0.5.13:
+  version "0.5.13"
+  resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932"
+  integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==
+  dependencies:
+    buffer-from "^1.0.0"
+    source-map "^0.6.0"
+
 source-map-support@^0.4.0:
   version "0.4.18"
   resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f"
@@ -13574,7 +13714,7 @@ source-map-support@^0.4.0:
   dependencies:
     source-map "^0.5.6"
 
-source-map-support@^0.5.6, source-map-support@~0.5.12, source-map-support@~0.5.19:
+source-map-support@~0.5.12, source-map-support@~0.5.19:
   version "0.5.21"
   resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f"
   integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==
@@ -13631,32 +13771,6 @@ spawn-command@^0.0.2-1:
   resolved "https://registry.yarnpkg.com/spawn-command/-/spawn-command-0.0.2-1.tgz#62f5e9466981c1b796dc5929937e11c9c6921bd0"
   integrity sha1-YvXpRmmBwbeW3Fkpk34RycaSG9A=
 
-spdx-correct@^3.0.0:
-  version "3.1.1"
-  resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9"
-  integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==
-  dependencies:
-    spdx-expression-parse "^3.0.0"
-    spdx-license-ids "^3.0.0"
-
-spdx-exceptions@^2.1.0:
-  version "2.3.0"
-  resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d"
-  integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==
-
-spdx-expression-parse@^3.0.0:
-  version "3.0.1"
-  resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679"
-  integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==
-  dependencies:
-    spdx-exceptions "^2.1.0"
-    spdx-license-ids "^3.0.0"
-
-spdx-license-ids@^3.0.0:
-  version "3.0.6"
-  resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.6.tgz#c80757383c28abf7296744998cbc106ae8b854ce"
-  integrity sha512-+orQK83kyMva3WyPf59k1+Y525csj5JejicWut55zeTWANuN17qSiSLUXWtzHeNWORSvT7GLDJ/E/XiIWoXBTw==
-
 split-on-first@^1.0.0:
   version "1.1.0"
   resolved "https://registry.yarnpkg.com/split-on-first/-/split-on-first-1.1.0.tgz#f610afeee3b12bce1d0c30425e76398b78249a5f"
@@ -13830,7 +13944,7 @@ string-width@^3.0.0, string-width@^3.1.0:
     is-fullwidth-code-point "^2.0.0"
     strip-ansi "^5.1.0"
 
-string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2:
+string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3:
   version "4.2.3"
   resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
   integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
@@ -13871,21 +13985,23 @@ string.prototype.trim@^1.2.1:
     define-properties "^1.1.3"
     es-abstract "^1.18.0-next.2"
 
-string.prototype.trimend@^1.0.4:
-  version "1.0.4"
-  resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80"
-  integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==
+string.prototype.trimend@^1.0.5:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz#914a65baaab25fbdd4ee291ca7dde57e869cb8d0"
+  integrity sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==
   dependencies:
     call-bind "^1.0.2"
-    define-properties "^1.1.3"
+    define-properties "^1.1.4"
+    es-abstract "^1.19.5"
 
-string.prototype.trimstart@^1.0.4:
-  version "1.0.4"
-  resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed"
-  integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==
+string.prototype.trimstart@^1.0.5:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz#5466d93ba58cfa2134839f81d7f42437e8c01fef"
+  integrity sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==
   dependencies:
     call-bind "^1.0.2"
-    define-properties "^1.1.3"
+    define-properties "^1.1.4"
+    es-abstract "^1.19.5"
 
 string_decoder@^1.0.0, string_decoder@^1.1.1:
   version "1.3.0"
@@ -14162,9 +14278,9 @@ terser-webpack-plugin@^4.1.0:
     webpack-sources "^1.4.3"
 
 terser@^4.1.2, terser@^4.6.3:
-  version "4.8.0"
-  resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.0.tgz#63056343d7c70bb29f3af665865a46fe03a0df17"
-  integrity sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==
+  version "4.8.1"
+  resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.1.tgz#a00e5634562de2239fd404c649051bf6fc21144f"
+  integrity sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==
   dependencies:
     commander "^2.20.0"
     source-map "~0.6.1"
@@ -14212,11 +14328,6 @@ thenify-all@^1.0.0:
   dependencies:
     any-promise "^1.0.0"
 
-throat@^6.0.1:
-  version "6.0.1"
-  resolved "https://registry.yarnpkg.com/throat/-/throat-6.0.1.tgz#d514fedad95740c12c2d7fc70ea863eb51ade375"
-  integrity sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==
-
 throng@^5.0.0:
   version "5.0.0"
   resolved "https://registry.yarnpkg.com/throng/-/throng-5.0.0.tgz#f9550c0221e579073f68a00be33a593d094e4d29"
@@ -14431,10 +14542,10 @@ tr46@^1.0.1:
   dependencies:
     punycode "^2.1.0"
 
-tr46@^2.1.0:
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240"
-  integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==
+tr46@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/tr46/-/tr46-3.0.0.tgz#555c4e297a950617e8eeddef633c87d4d9d6cbf9"
+  integrity sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==
   dependencies:
     punycode "^2.1.1"
 
@@ -14514,7 +14625,7 @@ type-check@^0.4.0, type-check@~0.4.0:
 type-check@~0.3.2:
   version "0.3.2"
   resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72"
-  integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=
+  integrity sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==
   dependencies:
     prelude-ls "~1.1.2"
 
@@ -14538,11 +14649,6 @@ type-fest@^0.21.3:
   resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37"
   integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==
 
-type-fest@^0.6.0:
-  version "0.6.0"
-  resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b"
-  integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==
-
 type-fest@^0.8.1:
   version "0.8.1"
   resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d"
@@ -14583,10 +14689,10 @@ typedarray@^0.0.6:
   resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
   integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
 
-typescript@^4.2.4, typescript@^4.4.4:
-  version "4.4.4"
-  resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.4.4.tgz#2cd01a1a1f160704d3101fd5a58ff0f9fcb8030c"
-  integrity sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA==
+typescript@^4.2.4, typescript@^4.7.4:
+  version "4.7.4"
+  resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.7.4.tgz#1a88596d1cf47d59507a1bcdfb5b9dfe4d488235"
+  integrity sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==
 
 uc.micro@^1.0.1, uc.micro@^1.0.5:
   version "1.0.6"
@@ -14605,14 +14711,14 @@ umzug@^2.3.0:
   dependencies:
     bluebird "^3.7.2"
 
-unbox-primitive@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471"
-  integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==
+unbox-primitive@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e"
+  integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==
   dependencies:
-    function-bind "^1.1.1"
-    has-bigints "^1.0.1"
-    has-symbols "^1.0.2"
+    call-bind "^1.0.2"
+    has-bigints "^1.0.2"
+    has-symbols "^1.0.3"
     which-boxed-primitive "^1.0.2"
 
 unc-path-regex@^0.1.2:
@@ -14832,16 +14938,6 @@ util.promisify@1.0.0:
     define-properties "^1.1.2"
     object.getownpropertydescriptors "^2.0.3"
 
-util.promisify@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.1.tgz#6baf7774b80eeb0f7520d8b81d07982a59abbaee"
-  integrity sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==
-  dependencies:
-    define-properties "^1.1.3"
-    es-abstract "^1.17.2"
-    has-symbols "^1.0.1"
-    object.getownpropertydescriptors "^2.1.0"
-
 util@0.10.3:
   version "0.10.3"
   resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9"
@@ -14856,6 +14952,18 @@ util@^0.11.0:
   dependencies:
     inherits "2.0.3"
 
+util@^0.12.4:
+  version "0.12.4"
+  resolved "https://registry.yarnpkg.com/util/-/util-0.12.4.tgz#66121a31420df8f01ca0c464be15dfa1d1850253"
+  integrity sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==
+  dependencies:
+    inherits "^2.0.3"
+    is-arguments "^1.0.4"
+    is-generator-function "^1.0.7"
+    is-typed-array "^1.1.3"
+    safe-buffer "^5.1.2"
+    which-typed-array "^1.1.2"
+
 utila@~0.4:
   version "0.4.0"
   resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c"
@@ -14871,10 +14979,10 @@ utils-merge@1.x.x, utils-merge@^1.0.1:
   resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713"
   integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=
 
-uuid@3.3.2:
-  version "3.3.2"
-  resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131"
-  integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==
+uuid@8.0.0:
+  version "8.0.0"
+  resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.0.0.tgz#bc6ccf91b5ff0ac07bbcdbf1c7c4e150db4dbb6c"
+  integrity sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw==
 
 uuid@^8.3.0, uuid@^8.3.2:
   version "8.3.2"
@@ -14886,22 +14994,14 @@ v8-compile-cache@^2.0.3, v8-compile-cache@^2.1.1:
   resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz#9471efa3ef9128d2f7c6a7ca39c4dd6b5055b132"
   integrity sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q==
 
-v8-to-istanbul@^8.1.0:
-  version "8.1.0"
-  resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.1.0.tgz#0aeb763894f1a0a1676adf8a8b7612a38902446c"
-  integrity sha512-/PRhfd8aTNp9Ggr62HPzXg2XasNFGy5PBt0Rp04du7/8GNNSgxFL6WBTkgMKSL9bFjH+8kKEG3f37FmxiTqUUA==
+v8-to-istanbul@^9.0.1:
+  version "9.0.1"
+  resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.0.1.tgz#b6f994b0b5d4ef255e17a0d17dc444a9f5132fa4"
+  integrity sha512-74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w==
   dependencies:
+    "@jridgewell/trace-mapping" "^0.3.12"
     "@types/istanbul-lib-coverage" "^2.0.1"
     convert-source-map "^1.6.0"
-    source-map "^0.7.3"
-
-validate-npm-package-license@^3.0.1:
-  version "3.0.4"
-  resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a"
-  integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==
-  dependencies:
-    spdx-correct "^3.0.0"
-    spdx-expression-parse "^3.0.0"
 
 validator@13.7.0, validator@^13.7.0:
   version "13.7.0"
@@ -15001,12 +15101,12 @@ w3c-keyname@^2.2.0:
   resolved "https://registry.yarnpkg.com/w3c-keyname/-/w3c-keyname-2.2.4.tgz#4ade6916f6290224cdbd1db8ac49eab03d0eef6b"
   integrity sha512-tOhfEwEzFLJzf6d1ZPkYfGj+FWhIpBux9ppoP3rlclw3Z0BZv3N7b7030Z1kYth+6rDuAsXUFr+d0VE6Ed1ikw==
 
-w3c-xmlserializer@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a"
-  integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==
+w3c-xmlserializer@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-3.0.0.tgz#06cdc3eefb7e4d0b20a560a5a3aeb0d2d9a65923"
+  integrity sha512-3WFqGEgSXIyGhOmAFtlicJNMjEps8b1MG31NCA0/vOF9+nKMUW1ckhi9cnNHmf88Rzw5V+dwIwsm2C7X8k9aQg==
   dependencies:
-    xml-name-validator "^3.0.0"
+    xml-name-validator "^4.0.0"
 
 walk-sync@^2.2.0:
   version "2.2.0"
@@ -15018,7 +15118,7 @@ walk-sync@^2.2.0:
     matcher-collection "^2.0.0"
     minimatch "^3.0.4"
 
-walker@^1.0.7:
+walker@^1.0.8:
   version "1.0.8"
   resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f"
   integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==
@@ -15053,15 +15153,10 @@ webidl-conversions@^4.0.2:
   resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad"
   integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==
 
-webidl-conversions@^5.0.0:
-  version "5.0.0"
-  resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff"
-  integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==
-
-webidl-conversions@^6.1.0:
-  version "6.1.0"
-  resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514"
-  integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==
+webidl-conversions@^7.0.0:
+  version "7.0.0"
+  resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-7.0.0.tgz#256b4e1882be7debbf01d05f0aa2039778ea080a"
+  integrity sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==
 
 webpack-cli@^3.3.12:
   version "3.3.12"
@@ -15171,22 +15266,38 @@ webpack@4.44.1:
     watchpack "^1.7.4"
     webpack-sources "^1.4.1"
 
-whatwg-encoding@^1.0.5:
-  version "1.0.5"
-  resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0"
-  integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==
+whatwg-encoding@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz#e7635f597fd87020858626805a2729fa7698ac53"
+  integrity sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==
   dependencies:
-    iconv-lite "0.4.24"
+    iconv-lite "0.6.3"
 
 whatwg-fetch@^3.4.1:
   version "3.5.0"
   resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.5.0.tgz#605a2cd0a7146e5db141e29d1c62ab84c0c4c868"
   integrity sha512-jXkLtsR42xhXg7akoDKvKWE40eJeI+2KZqcp2h3NsOrRnDvtWX36KcKl30dy+hxECivdk2BVUHVNrPtoMBUx6A==
 
-whatwg-mimetype@^2.3.0:
-  version "2.3.0"
-  resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf"
-  integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==
+whatwg-mimetype@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz#5fa1a7623867ff1af6ca3dc72ad6b8a4208beba7"
+  integrity sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==
+
+whatwg-url@^10.0.0:
+  version "10.0.0"
+  resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-10.0.0.tgz#37264f720b575b4a311bd4094ed8c760caaa05da"
+  integrity sha512-CLxxCmdUby142H5FZzn4D8ikO1cmypvXVQktsgosNy4a4BHrDHeciBBGZhb0bNoR5/MltoCatso+vFjjGx8t0w==
+  dependencies:
+    tr46 "^3.0.0"
+    webidl-conversions "^7.0.0"
+
+whatwg-url@^11.0.0:
+  version "11.0.0"
+  resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-11.0.0.tgz#0a849eebb5faf2119b901bb76fd795c2848d4018"
+  integrity sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==
+  dependencies:
+    tr46 "^3.0.0"
+    webidl-conversions "^7.0.0"
 
 whatwg-url@^5.0.0:
   version "5.0.0"
@@ -15205,15 +15316,6 @@ whatwg-url@^7.0.0:
     tr46 "^1.0.1"
     webidl-conversions "^4.0.2"
 
-whatwg-url@^8.0.0, whatwg-url@^8.5.0:
-  version "8.7.0"
-  resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77"
-  integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==
-  dependencies:
-    lodash "^4.7.0"
-    tr46 "^2.1.0"
-    webidl-conversions "^6.1.0"
-
 which-boxed-primitive@^1.0.2:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6"
@@ -15230,6 +15332,18 @@ which-module@^2.0.0:
   resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a"
   integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=
 
+which-typed-array@^1.1.2:
+  version "1.1.8"
+  resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.8.tgz#0cfd53401a6f334d90ed1125754a42ed663eb01f"
+  integrity sha512-Jn4e5PItbcAHyLoRDwvPj1ypu27DJbtdYXUa5zsinrUx77Uvfb0cXwwnGMTn7cjUfhhqgVQnVJCwF+7cgU7tpw==
+  dependencies:
+    available-typed-arrays "^1.0.5"
+    call-bind "^1.0.2"
+    es-abstract "^1.20.0"
+    for-each "^0.3.3"
+    has-tostringtag "^1.0.0"
+    is-typed-array "^1.1.9"
+
 which@^1.2.14, which@^1.2.9, which@^1.3.1:
   version "1.3.1"
   resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
@@ -15504,6 +15618,14 @@ write-file-atomic@^3.0.0:
     signal-exit "^3.0.2"
     typedarray-to-buffer "^3.1.5"
 
+write-file-atomic@^4.0.1:
+  version "4.0.1"
+  resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-4.0.1.tgz#9faa33a964c1c85ff6f849b80b42a88c2c537c8f"
+  integrity sha512-nSKUxgAbyioruk6hU87QzVbY279oYT6uiwgDoujth2ju4mJ+TZau7SQBhtbTmUyuNYTuXnSyRn66FV0+eCgcrQ==
+  dependencies:
+    imurmurhash "^0.1.4"
+    signal-exit "^3.0.7"
+
 write@1.0.3:
   version "1.0.3"
   resolved "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3"
@@ -15511,15 +15633,15 @@ write@1.0.3:
   dependencies:
     mkdirp "^0.5.1"
 
-ws@^7.4.6, ws@^7.5.3:
+ws@^7.5.3:
   version "7.5.6"
   resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.6.tgz#e59fc509fb15ddfb65487ee9765c5a51dec5fe7b"
   integrity sha512-6GLgCqo2cy2A2rjCNFlxQS6ZljG/coZfZXclldI8FB/1G3CCI36Zd8xy2HrFVACi8tfk5XrgLQEk+P0Tnz9UcA==
 
-ws@^8.5.0:
-  version "8.5.0"
-  resolved "https://registry.yarnpkg.com/ws/-/ws-8.5.0.tgz#bfb4be96600757fe5382de12c670dab984a1ed4f"
-  integrity sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==
+ws@^8.2.3, ws@^8.5.0:
+  version "8.8.1"
+  resolved "https://registry.yarnpkg.com/ws/-/ws-8.8.1.tgz#5dbad0feb7ade8ecc99b830c1d77c913d4955ff0"
+  integrity sha512-bGy2JzvzkPowEJV++hF07hAD6niYSr0JzBNo/J29WsB57A2r7Wlc1UFcTR9IzrPvuNVO4B8LGqF8qcpsVOhJCA==
 
 ws@~7.4.2:
   version "7.4.6"
@@ -15541,10 +15663,10 @@ xhr@^2.0.1:
     parse-headers "^2.0.0"
     xtend "^4.0.0"
 
-xml-name-validator@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a"
-  integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==
+xml-name-validator@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-4.0.0.tgz#79a006e2e63149a8600f15430f0a4725d1524835"
+  integrity sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==
 
 xml-parse-from-string@^1.0.0:
   version "1.0.1"
@@ -15654,6 +15776,11 @@ yargs-parser@^20.2.2:
   resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee"
   integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==
 
+yargs-parser@^21.0.0:
+  version "21.0.1"
+  resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.0.1.tgz#0267f286c877a4f0f728fceb6f8a3e4cb95c6e35"
+  integrity sha512-9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg==
+
 yargs@^13.3.2:
   version "13.3.2"
   resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd"
@@ -15683,18 +15810,18 @@ yargs@^16.2.0:
     y18n "^5.0.5"
     yargs-parser "^20.2.2"
 
-yargs@^17.1.1:
-  version "17.2.1"
-  resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.2.1.tgz#e2c95b9796a0e1f7f3bf4427863b42e0418191ea"
-  integrity sha512-XfR8du6ua4K6uLGm5S6fA+FIJom/MdJcFNVY8geLlp2v8GYbOXD4EB1tPNZsRn4vBzKGMgb5DRZMeWuFc2GO8Q==
+yargs@^17.1.1, yargs@^17.3.1:
+  version "17.5.1"
+  resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.5.1.tgz#e109900cab6fcb7fd44b1d8249166feb0b36e58e"
+  integrity sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==
   dependencies:
     cliui "^7.0.2"
     escalade "^3.1.1"
     get-caller-file "^2.0.5"
     require-directory "^2.1.1"
-    string-width "^4.2.0"
+    string-width "^4.2.3"
     y18n "^5.0.5"
-    yargs-parser "^20.2.2"
+    yargs-parser "^21.0.0"
 
 yarn-deduplicate@^3.1.0:
   version "3.1.0"
diff --git a/pkgs/servers/web-apps/outline/yarn.nix b/pkgs/servers/web-apps/outline/yarn.nix
index a8c14c6fe9935..fa4464046bd2c 100644
--- a/pkgs/servers/web-apps/outline/yarn.nix
+++ b/pkgs/servers/web-apps/outline/yarn.nix
@@ -42,19 +42,19 @@
       };
     }
     {
-      name = "_babel_core___core_7.18.6.tgz";
+      name = "_babel_core___core_7.18.10.tgz";
       path = fetchurl {
-        name = "_babel_core___core_7.18.6.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/core/-/core-7.18.6.tgz";
-        sha512 = "cQbWBpxcbbs/IUredIPkHiAGULLV8iwgNRMFzvbhEXISp4f3rUUXE5+TIw6KwUWUR3DwyI6gmBRnmAtYaWehwQ==";
+        name = "_babel_core___core_7.18.10.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/core/-/core-7.18.10.tgz";
+        sha512 = "JQM6k6ENcBFKVtWvLavlvi/mPcpYZ3+R+2EySDEMSMbp7Mn4FexlbbJVrx2R7Ijhr01T8gyqrOaABWIOgxeUyw==";
       };
     }
     {
-      name = "_babel_generator___generator_7.18.7.tgz";
+      name = "_babel_generator___generator_7.18.12.tgz";
       path = fetchurl {
-        name = "_babel_generator___generator_7.18.7.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/generator/-/generator-7.18.7.tgz";
-        sha512 = "shck+7VLlY72a2w9c3zYWuE1pwOKEiQHV7GTUbSnhyl5eu3i04t30tBY82ZRWrDfo3gkakCFtevExnxbkf2a3A==";
+        name = "_babel_generator___generator_7.18.12.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/generator/-/generator-7.18.12.tgz";
+        sha512 = "dfQ8ebCN98SvyL7IxNMCUtZQSq5R7kxgN+r8qYTGDmmSion1hX2C0zq2yo1bsCDhXixokv1SAWTZUMYbO/V5zg==";
       };
     }
     {
@@ -74,11 +74,11 @@
       };
     }
     {
-      name = "_babel_helper_compilation_targets___helper_compilation_targets_7.18.6.tgz";
+      name = "_babel_helper_compilation_targets___helper_compilation_targets_7.18.9.tgz";
       path = fetchurl {
-        name = "_babel_helper_compilation_targets___helper_compilation_targets_7.18.6.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.6.tgz";
-        sha512 = "vFjbfhNCzqdeAtZflUFrG5YIFqGTqsctrtkZ1D/NB0mDW9TwW3GmmUepYY4G9wCET5rY5ugz4OGTcLd614IzQg==";
+        name = "_babel_helper_compilation_targets___helper_compilation_targets_7.18.9.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.9.tgz";
+        sha512 = "tzLCyVmqUiFlcFoAPLA/gL9TeYrF61VLNtb+hvkuVaB5SUjW7jcfrglBIX1vUIoT7CLP3bBlIMeyEsIl2eFQNg==";
       };
     }
     {
@@ -106,11 +106,11 @@
       };
     }
     {
-      name = "_babel_helper_environment_visitor___helper_environment_visitor_7.18.6.tgz";
+      name = "_babel_helper_environment_visitor___helper_environment_visitor_7.18.9.tgz";
       path = fetchurl {
-        name = "_babel_helper_environment_visitor___helper_environment_visitor_7.18.6.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.6.tgz";
-        sha512 = "8n6gSfn2baOY+qlp+VSzsosjCVGFqWKmDF0cCWOybh52Dw3SEyoWR1KrhMJASjLwIEkkAufZ0xvr+SxLHSpy2Q==";
+        name = "_babel_helper_environment_visitor___helper_environment_visitor_7.18.9.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz";
+        sha512 = "3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==";
       };
     }
     {
@@ -122,11 +122,11 @@
       };
     }
     {
-      name = "_babel_helper_function_name___helper_function_name_7.18.6.tgz";
+      name = "_babel_helper_function_name___helper_function_name_7.18.9.tgz";
       path = fetchurl {
-        name = "_babel_helper_function_name___helper_function_name_7.18.6.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.18.6.tgz";
-        sha512 = "0mWMxV1aC97dhjCah5U5Ua7668r5ZmSC2DLfH2EZnf9c3/dHZKiFa5pRLMH5tjSl471tY6496ZWk/kjNONBxhw==";
+        name = "_babel_helper_function_name___helper_function_name_7.18.9.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.18.9.tgz";
+        sha512 = "fJgWlZt7nxGksJS9a0XdSaI4XvpExnNIgRP+rVefWh5U7BL8pPuir6SJUmFKRfjWQ51OtWSzwOxhaH/EBWWc0A==";
       };
     }
     {
@@ -154,11 +154,11 @@
       };
     }
     {
-      name = "_babel_helper_module_transforms___helper_module_transforms_7.18.8.tgz";
+      name = "_babel_helper_module_transforms___helper_module_transforms_7.18.9.tgz";
       path = fetchurl {
-        name = "_babel_helper_module_transforms___helper_module_transforms_7.18.8.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.18.8.tgz";
-        sha512 = "che3jvZwIcZxrwh63VfnFTUzcAM9v/lznYkkRxIBGMPt1SudOKHAEec0SIRCfiuIzTcF7VGj/CaTT6gY4eWxvA==";
+        name = "_babel_helper_module_transforms___helper_module_transforms_7.18.9.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.18.9.tgz";
+        sha512 = "KYNqY0ICwfv19b31XzvmI/mfcylOzbLtowkw+mfvGPAQ3kfCnMLYbED3YecL5tPd8nAYFQFAd6JHp2LxZk/J1g==";
       };
     }
     {
@@ -218,6 +218,14 @@
       };
     }
     {
+      name = "_babel_helper_string_parser___helper_string_parser_7.18.10.tgz";
+      path = fetchurl {
+        name = "_babel_helper_string_parser___helper_string_parser_7.18.10.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz";
+        sha512 = "XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==";
+      };
+    }
+    {
       name = "_babel_helper_validator_identifier___helper_validator_identifier_7.18.6.tgz";
       path = fetchurl {
         name = "_babel_helper_validator_identifier___helper_validator_identifier_7.18.6.tgz";
@@ -242,11 +250,11 @@
       };
     }
     {
-      name = "_babel_helpers___helpers_7.18.6.tgz";
+      name = "_babel_helpers___helpers_7.18.9.tgz";
       path = fetchurl {
-        name = "_babel_helpers___helpers_7.18.6.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.18.6.tgz";
-        sha512 = "vzSiiqbQOghPngUYt/zWGvK3LAsPhz55vc9XNN0xAl2gV4ieShI2OQli5duxWHD+72PZPTKAcfcZDE1Cwc5zsQ==";
+        name = "_babel_helpers___helpers_7.18.9.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.18.9.tgz";
+        sha512 = "Jf5a+rbrLoR4eNdUmnFu8cN5eNJT6qdTdOg5IHIzq87WwyRw9PwguLFOWYgktN/60IP4fgDUawJvs7PjQIzELQ==";
       };
     }
     {
@@ -258,11 +266,11 @@
       };
     }
     {
-      name = "_babel_parser___parser_7.18.8.tgz";
+      name = "_babel_parser___parser_7.18.11.tgz";
       path = fetchurl {
-        name = "_babel_parser___parser_7.18.8.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/parser/-/parser-7.18.8.tgz";
-        sha512 = "RSKRfYX20dyH+elbJK2uqAkVyucL+xXzhqlMD5/ZXx+dAAwpyB7HsvnHe/ZUGOF+xLr5Wx9/JoXVTj6BQE2/oA==";
+        name = "_babel_parser___parser_7.18.11.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/parser/-/parser-7.18.11.tgz";
+        sha512 = "9JKn5vN+hDt0Hdqn1PiJ2guflwP+B6Ga8qbDuoF0PzzVhrzsKIJo8yGqVk6CmMHiMei9w1C1Bp9IMJSIK+HPIQ==";
       };
     }
     {
@@ -914,27 +922,27 @@
       };
     }
     {
-      name = "_babel_template___template_7.18.6.tgz";
+      name = "_babel_template___template_7.18.10.tgz";
       path = fetchurl {
-        name = "_babel_template___template_7.18.6.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/template/-/template-7.18.6.tgz";
-        sha512 = "JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==";
+        name = "_babel_template___template_7.18.10.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/template/-/template-7.18.10.tgz";
+        sha512 = "TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==";
       };
     }
     {
-      name = "_babel_traverse___traverse_7.18.8.tgz";
+      name = "_babel_traverse___traverse_7.18.11.tgz";
       path = fetchurl {
-        name = "_babel_traverse___traverse_7.18.8.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.18.8.tgz";
-        sha512 = "UNg/AcSySJYR/+mIcJQDCv00T+AqRO7j/ZEJLzpaYtgM48rMg5MnkJgyNqkzo88+p4tfRvZJCEiwwfG6h4jkRg==";
+        name = "_babel_traverse___traverse_7.18.11.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.18.11.tgz";
+        sha512 = "TG9PiM2R/cWCAy6BPJKeHzNbu4lPzOSZpeMfeNErskGpTJx6trEvFaVCbDvpcxwy49BKWmEPwiW8mrysNiDvIQ==";
       };
     }
     {
-      name = "_babel_types___types_7.18.8.tgz";
+      name = "_babel_types___types_7.18.10.tgz";
       path = fetchurl {
-        name = "_babel_types___types_7.18.8.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/types/-/types-7.18.8.tgz";
-        sha512 = "qwpdsmraq0aJ3osLJRApsc2ouSJCdnMeZwB0DhbtHAtRpZNZCdlbRnHIgcRKzdE1g0iOGg644fzjOBcdOz9cPw==";
+        name = "_babel_types___types_7.18.10.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/types/-/types-7.18.10.tgz";
+        sha512 = "MJvnbEiiNkpjo+LknnmRrqbY1GPUUggjv+wQVjetM/AONoupqRALB7I6jGqNUAZsKcRIEu2J6FRFvsczljjsaQ==";
       };
     }
     {
@@ -954,27 +962,27 @@
       };
     }
     {
-      name = "_bull_board_api___api_4.0.0.tgz";
+      name = "_bull_board_api___api_4.2.2.tgz";
       path = fetchurl {
-        name = "_bull_board_api___api_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@bull-board/api/-/api-4.0.0.tgz";
-        sha512 = "4STXOhQv07/8d/Ei6LA38D3aaYtMuOHJMejkkF2CTAW3gAzEtwhDHmrKlk7tG01Gq2jnPNIcYxbd4WIbtP/+fQ==";
+        name = "_bull_board_api___api_4.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/@bull-board/api/-/api-4.2.2.tgz";
+        sha512 = "YFkkeWvMit0P04k+xu4ZZ22i24m+Tq/w82LBtpt3z9Xu1rGrZoui8CI/YRsaJJE0o9TsqL5tY653oFVcdg35pQ==";
       };
     }
     {
-      name = "_bull_board_koa___koa_4.0.0.tgz";
+      name = "_bull_board_koa___koa_4.2.2.tgz";
       path = fetchurl {
-        name = "_bull_board_koa___koa_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@bull-board/koa/-/koa-4.0.0.tgz";
-        sha512 = "8UN8h0NKkpND2w47YmvacG3TZPp0GHjw2By/fuX/MqoLG2Wtu58GCzhmKij8DHW5nfAr5c/0azWwyKJZ6jR5wA==";
+        name = "_bull_board_koa___koa_4.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/@bull-board/koa/-/koa-4.2.2.tgz";
+        sha512 = "ekrD3utbSM1PEdNcstvhli+aFjtdoFJpulkxoLfBPQweRc9yCzfqbgcg6g1DgjaNgQ5iEWLKGr3FSwBON5v6wQ==";
       };
     }
     {
-      name = "_bull_board_ui___ui_4.0.0.tgz";
+      name = "_bull_board_ui___ui_4.2.2.tgz";
       path = fetchurl {
-        name = "_bull_board_ui___ui_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@bull-board/ui/-/ui-4.0.0.tgz";
-        sha512 = "sesp3n3e/Zkw7oFxrihB/AGsPWRzLywTXlcc3N6ttGLE1U5ow5yRSg6F/1LFe9OpHsYko0VsYJMcTAeZk7AJ+w==";
+        name = "_bull_board_ui___ui_4.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/@bull-board/ui/-/ui-4.2.2.tgz";
+        sha512 = "QLWWTtVj6kQ01ox4OqCs/IdKm+jWFtLvhBU7RwYt8UxmxA6dZ8ffS6hWmjWk5sJ4cKk9GzPoASYMgFv0AMuh0w==";
       };
     }
     {
@@ -1178,6 +1186,14 @@
       };
     }
     {
+      name = "_getoutline_jest_runner_serial___jest_runner_serial_2.0.0.tgz";
+      path = fetchurl {
+        name = "_getoutline_jest_runner_serial___jest_runner_serial_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/@getoutline/jest-runner-serial/-/jest-runner-serial-2.0.0.tgz";
+        sha512 = "sV0a/FbPuT5sf4iotQm7/GY6KtseXvlmNLEOmtXkZ9hZ0NjFzro62G8C4J/e71NJWudhQsKgrxa6Zq8G7F3mnw==";
+      };
+    }
+    {
       name = "_getoutline_y_prosemirror___y_prosemirror_1.0.18.tgz";
       path = fetchurl {
         name = "_getoutline_y_prosemirror___y_prosemirror_1.0.18.tgz";
@@ -1250,91 +1266,115 @@
       };
     }
     {
-      name = "_jest_console___console_27.4.2.tgz";
+      name = "_jest_console___console_28.1.3.tgz";
       path = fetchurl {
-        name = "_jest_console___console_27.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/console/-/console-27.4.2.tgz";
-        sha512 = "xknHThRsPB/To1FUbi6pCe43y58qFC03zfb6R7fDb/FfC7k2R3i1l+izRBJf8DI46KhYGRaF14Eo9A3qbBoixg==";
+        name = "_jest_console___console_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/console/-/console-28.1.3.tgz";
+        sha512 = "QPAkP5EwKdK/bxIr6C1I4Vs0rm2nHiANzj/Z5X2JQkrZo6IqvC4ldZ9K95tF0HdidhA8Bo6egxSzUFPYKcEXLw==";
       };
     }
     {
-      name = "_jest_core___core_27.4.5.tgz";
+      name = "_jest_core___core_28.1.3.tgz";
       path = fetchurl {
-        name = "_jest_core___core_27.4.5.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/core/-/core-27.4.5.tgz";
-        sha512 = "3tm/Pevmi8bDsgvo73nX8p/WPng6KWlCyScW10FPEoN1HU4pwI83tJ3TsFvi1FfzsjwUlMNEPowgb/rPau/LTQ==";
+        name = "_jest_core___core_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/core/-/core-28.1.3.tgz";
+        sha512 = "CIKBrlaKOzA7YG19BEqCw3SLIsEwjZkeJzf5bdooVnW4bH5cktqe3JX+G2YV1aK5vP8N9na1IGWFzYaTp6k6NA==";
       };
     }
     {
-      name = "_jest_environment___environment_27.4.4.tgz";
+      name = "_jest_environment___environment_28.1.3.tgz";
       path = fetchurl {
-        name = "_jest_environment___environment_27.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/environment/-/environment-27.4.4.tgz";
-        sha512 = "q+niMx7cJgt/t/b6dzLOh4W8Ef/8VyKG7hxASK39jakijJzbFBGpptx3RXz13FFV7OishQ9lTbv+dQ5K3EhfDQ==";
+        name = "_jest_environment___environment_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/environment/-/environment-28.1.3.tgz";
+        sha512 = "1bf40cMFTEkKyEf585R9Iz1WayDjHoHqvts0XFYEqyKM3cFWDpeMoqKKTAF9LSYQModPUlh8FKptoM2YcMWAXA==";
       };
     }
     {
-      name = "_jest_fake_timers___fake_timers_27.4.2.tgz";
+      name = "_jest_expect_utils___expect_utils_28.1.3.tgz";
       path = fetchurl {
-        name = "_jest_fake_timers___fake_timers_27.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.4.2.tgz";
-        sha512 = "f/Xpzn5YQk5adtqBgvw1V6bF8Nx3hY0OIRRpCvWcfPl0EAjdqWPdhH3t/3XpiWZqtjIEHDyMKP9ajpva1l4Zmg==";
+        name = "_jest_expect_utils___expect_utils_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-28.1.3.tgz";
+        sha512 = "wvbi9LUrHJLn3NlDW6wF2hvIMtd4JUl2QNVrjq+IBSHirgfrR3o9RnVtxzdEGO2n9JyIWwHnLfby5KzqBGg2YA==";
       };
     }
     {
-      name = "_jest_globals___globals_27.4.4.tgz";
+      name = "_jest_expect___expect_28.1.3.tgz";
       path = fetchurl {
-        name = "_jest_globals___globals_27.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/globals/-/globals-27.4.4.tgz";
-        sha512 = "bqpqQhW30BOreXM8bA8t8JbOQzsq/WnPTnBl+It3UxAD9J8yxEAaBEylHx1dtBapAr/UBk8GidXbzmqnee8tYQ==";
+        name = "_jest_expect___expect_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/expect/-/expect-28.1.3.tgz";
+        sha512 = "lzc8CpUbSoE4dqT0U+g1qODQjBRHPpCPXissXD4mS9+sWQdmmpeJ9zSH1rS1HEkrsMN0fb7nKrJ9giAR1d3wBw==";
       };
     }
     {
-      name = "_jest_reporters___reporters_27.4.5.tgz";
+      name = "_jest_fake_timers___fake_timers_28.1.3.tgz";
       path = fetchurl {
-        name = "_jest_reporters___reporters_27.4.5.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.4.5.tgz";
-        sha512 = "3orsG4vi8zXuBqEoy2LbnC1kuvkg1KQUgqNxmxpQgIOQEPeV0onvZu+qDQnEoX8qTQErtqn/xzcnbpeTuOLSiA==";
+        name = "_jest_fake_timers___fake_timers_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-28.1.3.tgz";
+        sha512 = "D/wOkL2POHv52h+ok5Oj/1gOG9HSywdoPtFsRCUmlCILXNn5eIWmcnd3DIiWlJnpGvQtmajqBP95Ei0EimxfLw==";
       };
     }
     {
-      name = "_jest_source_map___source_map_27.4.0.tgz";
+      name = "_jest_globals___globals_28.1.3.tgz";
       path = fetchurl {
-        name = "_jest_source_map___source_map_27.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.4.0.tgz";
-        sha512 = "Ntjx9jzP26Bvhbm93z/AKcPRj/9wrkI88/gK60glXDx1q+IeI0rf7Lw2c89Ch6ofonB0On/iRDreQuQ6te9pgQ==";
+        name = "_jest_globals___globals_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/globals/-/globals-28.1.3.tgz";
+        sha512 = "XFU4P4phyryCXu1pbcqMO0GSQcYe1IsalYCDzRNyhetyeyxMcIxa11qPNDpVNLeretItNqEmYYQn1UYz/5x1NA==";
       };
     }
     {
-      name = "_jest_test_result___test_result_27.4.2.tgz";
+      name = "_jest_reporters___reporters_28.1.3.tgz";
       path = fetchurl {
-        name = "_jest_test_result___test_result_27.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.4.2.tgz";
-        sha512 = "kr+bCrra9jfTgxHXHa2UwoQjxvQk3Am6QbpAiJ5x/50LW8llOYrxILkqY0lZRW/hu8FXesnudbql263+EW9iNA==";
+        name = "_jest_reporters___reporters_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/reporters/-/reporters-28.1.3.tgz";
+        sha512 = "JuAy7wkxQZVNU/V6g9xKzCGC5LVXx9FDcABKsSXp5MiKPEE2144a/vXTEDoyzjUpZKfVwp08Wqg5A4WfTMAzjg==";
       };
     }
     {
-      name = "_jest_test_sequencer___test_sequencer_27.4.5.tgz";
+      name = "_jest_schemas___schemas_28.1.3.tgz";
       path = fetchurl {
-        name = "_jest_test_sequencer___test_sequencer_27.4.5.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.4.5.tgz";
-        sha512 = "n5woIn/1v+FT+9hniymHPARA9upYUmfi5Pw9ewVwXCDlK4F5/Gkees9v8vdjGdAIJ2MPHLHodiajLpZZanWzEQ==";
+        name = "_jest_schemas___schemas_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/schemas/-/schemas-28.1.3.tgz";
+        sha512 = "/l/VWsdt/aBXgjshLWOFyFt3IVdYypu5y2Wn2rOO1un6nkqIn8SLXzgIMYXFyYsRWDyF5EthmKJMIdJvk08grg==";
       };
     }
     {
-      name = "_jest_transform___transform_27.4.5.tgz";
+      name = "_jest_source_map___source_map_28.1.2.tgz";
       path = fetchurl {
-        name = "_jest_transform___transform_27.4.5.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/transform/-/transform-27.4.5.tgz";
-        sha512 = "PuMet2UlZtlGzwc6L+aZmR3I7CEBpqadO03pU40l2RNY2fFJ191b9/ITB44LNOhVtsyykx0OZvj0PCyuLm7Eew==";
+        name = "_jest_source_map___source_map_28.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/source-map/-/source-map-28.1.2.tgz";
+        sha512 = "cV8Lx3BeStJb8ipPHnqVw/IM2VCMWO3crWZzYodSIkxXnRcXJipCdx1JCK0K5MsJJouZQTH73mzf4vgxRaH9ww==";
       };
     }
     {
-      name = "_jest_types___types_27.4.2.tgz";
+      name = "_jest_test_result___test_result_28.1.3.tgz";
       path = fetchurl {
-        name = "_jest_types___types_27.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/types/-/types-27.4.2.tgz";
-        sha512 = "j35yw0PMTPpZsUoOBiuHzr1zTYoad1cVIE0ajEjcrJONxxrko/IRGKkXx3os0Nsi4Hu3+5VmDbVfq5WhG/pWAg==";
+        name = "_jest_test_result___test_result_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/test-result/-/test-result-28.1.3.tgz";
+        sha512 = "kZAkxnSE+FqE8YjW8gNuoVkkC9I7S1qmenl8sGcDOLropASP+BkcGKwhXoyqQuGOGeYY0y/ixjrd/iERpEXHNg==";
+      };
+    }
+    {
+      name = "_jest_test_sequencer___test_sequencer_28.1.3.tgz";
+      path = fetchurl {
+        name = "_jest_test_sequencer___test_sequencer_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-28.1.3.tgz";
+        sha512 = "NIMPEqqa59MWnDi1kvXXpYbqsfQmSJsIbnd85mdVGkiDfQ9WQQTXOLsvISUfonmnBT+w85WEgneCigEEdHDFxw==";
+      };
+    }
+    {
+      name = "_jest_transform___transform_28.1.3.tgz";
+      path = fetchurl {
+        name = "_jest_transform___transform_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/transform/-/transform-28.1.3.tgz";
+        sha512 = "u5dT5di+oFI6hfcLOHGTAfmUxFRrjK+vnaP0kkVow9Md/M7V/MxqQMOz/VV25UZO8pzeA9PjfTpOu6BDuwSPQA==";
+      };
+    }
+    {
+      name = "_jest_types___types_28.1.3.tgz";
+      path = fetchurl {
+        name = "_jest_types___types_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/types/-/types-28.1.3.tgz";
+        sha512 = "RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==";
       };
     }
     {
@@ -1634,11 +1674,11 @@
       };
     }
     {
-      name = "_jridgewell_trace_mapping___trace_mapping_0.3.11.tgz";
+      name = "_jridgewell_trace_mapping___trace_mapping_0.3.14.tgz";
       path = fetchurl {
-        name = "_jridgewell_trace_mapping___trace_mapping_0.3.11.tgz";
-        url  = "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.11.tgz";
-        sha512 = "RllI476aSMsxzeI9TtlSMoNTgHDxEmnl6GkkHwhr0vdL8W+0WuesyI8Vd3rBOfrwtPXbPxdT9ADJdiOKgzxPQA==";
+        name = "_jridgewell_trace_mapping___trace_mapping_0.3.14.tgz";
+        url  = "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.14.tgz";
+        sha512 = "bJWEfQ9lPTvm3SneWwRFVLzrh6nhjwqw7TUFFBEMzwvg7t7PCDenf2lDwqo4NQXzdpgBXyFgDWnQA+2vkruksQ==";
       };
     }
     {
@@ -1658,6 +1698,54 @@
       };
     }
     {
+      name = "_msgpackr_extract_msgpackr_extract_darwin_arm64___msgpackr_extract_darwin_arm64_2.1.2.tgz";
+      path = fetchurl {
+        name = "_msgpackr_extract_msgpackr_extract_darwin_arm64___msgpackr_extract_darwin_arm64_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-darwin-arm64/-/msgpackr-extract-darwin-arm64-2.1.2.tgz";
+        sha512 = "TyVLn3S/+ikMDsh0gbKv2YydKClN8HaJDDpONlaZR+LVJmsxLFUgA+O7zu59h9+f9gX1aj/ahw9wqa6rosmrYQ==";
+      };
+    }
+    {
+      name = "_msgpackr_extract_msgpackr_extract_darwin_x64___msgpackr_extract_darwin_x64_2.1.2.tgz";
+      path = fetchurl {
+        name = "_msgpackr_extract_msgpackr_extract_darwin_x64___msgpackr_extract_darwin_x64_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-darwin-x64/-/msgpackr-extract-darwin-x64-2.1.2.tgz";
+        sha512 = "YPXtcVkhmVNoMGlqp81ZHW4dMxK09msWgnxtsDpSiZwTzUBG2N+No2bsr7WMtBKCVJMSD6mbAl7YhKUqkp/Few==";
+      };
+    }
+    {
+      name = "_msgpackr_extract_msgpackr_extract_linux_arm64___msgpackr_extract_linux_arm64_2.1.2.tgz";
+      path = fetchurl {
+        name = "_msgpackr_extract_msgpackr_extract_linux_arm64___msgpackr_extract_linux_arm64_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-linux-arm64/-/msgpackr-extract-linux-arm64-2.1.2.tgz";
+        sha512 = "vHZ2JiOWF2+DN9lzltGbhtQNzDo8fKFGrf37UJrgqxU0yvtERrzUugnfnX1wmVfFhSsF8OxrfqiNOUc5hko1Zg==";
+      };
+    }
+    {
+      name = "_msgpackr_extract_msgpackr_extract_linux_arm___msgpackr_extract_linux_arm_2.1.2.tgz";
+      path = fetchurl {
+        name = "_msgpackr_extract_msgpackr_extract_linux_arm___msgpackr_extract_linux_arm_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-linux-arm/-/msgpackr-extract-linux-arm-2.1.2.tgz";
+        sha512 = "42R4MAFeIeNn+L98qwxAt360bwzX2Kf0ZQkBBucJ2Ircza3asoY4CDbgiu9VWklq8gWJVSJSJBwDI+c/THiWkA==";
+      };
+    }
+    {
+      name = "_msgpackr_extract_msgpackr_extract_linux_x64___msgpackr_extract_linux_x64_2.1.2.tgz";
+      path = fetchurl {
+        name = "_msgpackr_extract_msgpackr_extract_linux_x64___msgpackr_extract_linux_x64_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-linux-x64/-/msgpackr-extract-linux-x64-2.1.2.tgz";
+        sha512 = "RjRoRxg7Q3kPAdUSC5EUUPlwfMkIVhmaRTIe+cqHbKrGZ4M6TyCA/b5qMaukQ/1CHWrqYY2FbKOAU8Hg0pQFzg==";
+      };
+    }
+    {
+      name = "_msgpackr_extract_msgpackr_extract_win32_x64___msgpackr_extract_win32_x64_2.1.2.tgz";
+      path = fetchurl {
+        name = "_msgpackr_extract_msgpackr_extract_win32_x64___msgpackr_extract_win32_x64_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-win32-x64/-/msgpackr-extract-win32-x64-2.1.2.tgz";
+        sha512 = "rIZVR48zA8hGkHIK7ED6+ZiXsjRCcAVBJbm8o89OKAMTmEAQ2QvoOxoiu3w2isAaWwzgtQIOFIqHwvZDyLKCvw==";
+      };
+    }
+    {
       name = "_nicolo_ribaudo_chokidar_2___chokidar_2_2.1.8.tgz";
       path = fetchurl {
         name = "_nicolo_ribaudo_chokidar_2___chokidar_2_2.1.8.tgz";
@@ -2074,6 +2162,14 @@
       };
     }
     {
+      name = "_sinclair_typebox___typebox_0.24.27.tgz";
+      path = fetchurl {
+        name = "_sinclair_typebox___typebox_0.24.27.tgz";
+        url  = "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.24.27.tgz";
+        sha512 = "K7C7IlQ3zLePEZleUN21ceBA2aLcMnLHTLph8QWk1JK37L90obdpY+QGY8bXMKxf1ht1Z0MNewvXxWv0oGDYFg==";
+      };
+    }
+    {
       name = "_sindresorhus_is___is_0.14.0.tgz";
       path = fetchurl {
         name = "_sindresorhus_is___is_0.14.0.tgz";
@@ -2090,11 +2186,11 @@
       };
     }
     {
-      name = "_sinonjs_fake_timers___fake_timers_8.1.0.tgz";
+      name = "_sinonjs_fake_timers___fake_timers_9.1.2.tgz";
       path = fetchurl {
-        name = "_sinonjs_fake_timers___fake_timers_8.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz";
-        sha512 = "OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==";
+        name = "_sinonjs_fake_timers___fake_timers_9.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-9.1.2.tgz";
+        sha512 = "BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw==";
       };
     }
     {
@@ -2114,11 +2210,11 @@
       };
     }
     {
-      name = "_theo.gravity_datadog_apm___datadog_apm_2.1.0.tgz";
+      name = "_theo.gravity_datadog_apm___datadog_apm_2.2.0.tgz";
       path = fetchurl {
-        name = "_theo.gravity_datadog_apm___datadog_apm_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/@theo.gravity/datadog-apm/-/datadog-apm-2.1.0.tgz";
-        sha512 = "LiDN4f4kvPtrDK553zGexN5UlQ99d7rKv1yTM1/FcFA0fOoD+QqgVmTF/6Qffb3mamQc3jdkW9FX+v4LZKan8A==";
+        name = "_theo.gravity_datadog_apm___datadog_apm_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/@theo.gravity/datadog-apm/-/datadog-apm-2.2.0.tgz";
+        sha512 = "2538L5oW69eApPPSdlPGcyDqlpb4vo6knGONQax7eIiO44gW7XK2r/Hc6hdQ6aSl8PMoNP6uG6khHg0kTz8Nsw==";
       };
     }
     {
@@ -2138,11 +2234,11 @@
       };
     }
     {
-      name = "_tootallnate_once___once_1.1.2.tgz";
+      name = "_tootallnate_once___once_2.0.0.tgz";
       path = fetchurl {
-        name = "_tootallnate_once___once_1.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz";
-        sha512 = "RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==";
+        name = "_tootallnate_once___once_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz";
+        sha512 = "XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==";
       };
     }
     {
@@ -2218,11 +2314,11 @@
       };
     }
     {
-      name = "_types_bull___bull_3.15.5.tgz";
+      name = "_types_bull___bull_3.15.9.tgz";
       path = fetchurl {
-        name = "_types_bull___bull_3.15.5.tgz";
-        url  = "https://registry.yarnpkg.com/@types/bull/-/bull-3.15.5.tgz";
-        sha512 = "XgJQWJ03jyKMfdoL8IAIoHIo7JkkL74kcxuujTONkSJswm0giIJ9kuVgDNHS0OvD+OiPNcFmbBl0H3scj2+A8A==";
+        name = "_types_bull___bull_3.15.9.tgz";
+        url  = "https://registry.yarnpkg.com/@types/bull/-/bull-3.15.9.tgz";
+        sha512 = "MPUcyPPQauAmynoO3ezHAmCOhbB0pWmYyijr/5ctaCqhbKWsjW0YCod38ZcLzUBprosfZ9dPqfYIcfdKjk7RNQ==";
       };
     }
     {
@@ -2362,6 +2458,14 @@
       };
     }
     {
+      name = "_types_express_useragent___express_useragent_1.0.2.tgz";
+      path = fetchurl {
+        name = "_types_express_useragent___express_useragent_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/@types/express-useragent/-/express-useragent-1.0.2.tgz";
+        sha512 = "eUVCqMsmEO7adMJSxuAARPUxbEJLYQJATiB86bx3MGeyUOTgKNnLTfAMaF+z84DftcH6NBbFFwiRomIcsFVdUQ==";
+      };
+    }
+    {
       name = "_types_express___express_4.17.13.tgz";
       path = fetchurl {
         name = "_types_express___express_4.17.13.tgz";
@@ -2410,11 +2514,11 @@
       };
     }
     {
-      name = "_types_graceful_fs___graceful_fs_4.1.4.tgz";
+      name = "_types_graceful_fs___graceful_fs_4.1.5.tgz";
       path = fetchurl {
-        name = "_types_graceful_fs___graceful_fs_4.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.4.tgz";
-        sha512 = "mWA/4zFQhfvOA8zWkXobwJvBD7vzcxgrOQ0J5CH1votGqdq9m7+FwtGaqyCZqC3NyyBkc9z4m+iry4LlqcMWJg==";
+        name = "_types_graceful_fs___graceful_fs_4.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz";
+        sha512 = "anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==";
       };
     }
     {
@@ -2506,11 +2610,19 @@
       };
     }
     {
-      name = "_types_jest___jest_27.0.2.tgz";
+      name = "_types_jest___jest_28.1.6.tgz";
+      path = fetchurl {
+        name = "_types_jest___jest_28.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/@types/jest/-/jest-28.1.6.tgz";
+        sha512 = "0RbGAFMfcBJKOmqRazM8L98uokwuwD5F8rHrv/ZMbrZBwVOWZUyPG6VFNscjYr/vjM3Vu4fRrCPbOs42AfemaQ==";
+      };
+    }
+    {
+      name = "_types_jsdom___jsdom_16.2.15.tgz";
       path = fetchurl {
-        name = "_types_jest___jest_27.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/@types/jest/-/jest-27.0.2.tgz";
-        sha512 = "4dRxkS/AFX0c5XW6IPMNOydLn2tEhNhJV7DnYK+0bjoJZ+QTmfucBlihX7aoEsh/ocYtkLC73UbnBXBXIxsULA==";
+        name = "_types_jsdom___jsdom_16.2.15.tgz";
+        url  = "https://registry.yarnpkg.com/@types/jsdom/-/jsdom-16.2.15.tgz";
+        sha512 = "nwF87yjBKuX/roqGYerZZM0Nv1pZDMAT5YhOHYeM/72Fic+VEqJh4nyoqoapzJnW3pUlfxPY5FhgsJtM+dRnQQ==";
       };
     }
     {
@@ -2530,11 +2642,11 @@
       };
     }
     {
-      name = "_types_jsonwebtoken___jsonwebtoken_8.5.5.tgz";
+      name = "_types_jsonwebtoken___jsonwebtoken_8.5.8.tgz";
       path = fetchurl {
-        name = "_types_jsonwebtoken___jsonwebtoken_8.5.5.tgz";
-        url  = "https://registry.yarnpkg.com/@types/jsonwebtoken/-/jsonwebtoken-8.5.5.tgz";
-        sha512 = "OGqtHQ7N5/Ap/TUwO6IgHDuLiAoTmHhGpNvgkCm/F4N6pKzx/RBSfr2OXZSwC6vkfnsEdb6+7DNZVtiXiwdwFw==";
+        name = "_types_jsonwebtoken___jsonwebtoken_8.5.8.tgz";
+        url  = "https://registry.yarnpkg.com/@types/jsonwebtoken/-/jsonwebtoken-8.5.8.tgz";
+        sha512 = "zm6xBQpFDIDM6o9r6HSgDeIcLy82TKWctCXEPbJJcXb5AKmi5BNNdLXneixK4lplX3PqIVcwLBCGE/kAGnlD4A==";
       };
     }
     {
@@ -2618,6 +2730,14 @@
       };
     }
     {
+      name = "_types_koa_useragent___koa_useragent_2.1.2.tgz";
+      path = fetchurl {
+        name = "_types_koa_useragent___koa_useragent_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/@types/koa-useragent/-/koa-useragent-2.1.2.tgz";
+        sha512 = "vpOSl6Rw6aCJr+kyWb27kGOdFiQD5WQeLOOOQgwMY9Lrqwbocm/td5paP5uE8bOy58ik/rZUly8zoVZACwZXUA==";
+      };
+    }
+    {
       name = "_types_koa___koa_2.13.4.tgz";
       path = fetchurl {
         name = "_types_koa___koa_2.13.4.tgz";
@@ -2762,14 +2882,6 @@
       };
     }
     {
-      name = "_types_normalize_package_data___normalize_package_data_2.4.0.tgz";
-      path = fetchurl {
-        name = "_types_normalize_package_data___normalize_package_data_2.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz";
-        sha512 = "f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==";
-      };
-    }
-    {
       name = "_types_oauth___oauth_0.9.1.tgz";
       path = fetchurl {
         name = "_types_oauth___oauth_0.9.1.tgz";
@@ -2794,6 +2906,14 @@
       };
     }
     {
+      name = "_types_parse5___parse5_6.0.3.tgz";
+      path = fetchurl {
+        name = "_types_parse5___parse5_6.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/@types/parse5/-/parse5-6.0.3.tgz";
+        sha512 = "SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==";
+      };
+    }
+    {
       name = "_types_passport_oauth2___passport_oauth2_1.4.11.tgz";
       path = fetchurl {
         name = "_types_passport_oauth2___passport_oauth2_1.4.11.tgz";
@@ -2882,11 +3002,11 @@
       };
     }
     {
-      name = "_types_prosemirror_markdown___prosemirror_markdown_1.5.5.tgz";
+      name = "_types_prosemirror_markdown___prosemirror_markdown_1.5.6.tgz";
       path = fetchurl {
-        name = "_types_prosemirror_markdown___prosemirror_markdown_1.5.5.tgz";
-        url  = "https://registry.yarnpkg.com/@types/prosemirror-markdown/-/prosemirror-markdown-1.5.5.tgz";
-        sha512 = "1a97EHWU0uuNHw8zaRaMXHSUQGd/jUl2wCcaBtMNvMwgdVUx1hg6A7hbs032Aiwq/nQfaC360/KwiFy0nMTkzA==";
+        name = "_types_prosemirror_markdown___prosemirror_markdown_1.5.6.tgz";
+        url  = "https://registry.yarnpkg.com/@types/prosemirror-markdown/-/prosemirror-markdown-1.5.6.tgz";
+        sha512 = "Zm2YvkDsOrvvTct6GxTHAOQ/eAMwmeUMWoyyS1meNqdM3QHmp+mHln03tTAZKd6iRu1WbIKwHzTz/Mhof3C54Q==";
       };
     }
     {
@@ -3066,6 +3186,22 @@
       };
     }
     {
+      name = "_types_redis_info___redis_info_3.0.0.tgz";
+      path = fetchurl {
+        name = "_types_redis_info___redis_info_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/redis-info/-/redis-info-3.0.0.tgz";
+        sha512 = "uvjYcIvPGAIJvnRT3y6jacP1Qqs3hNQLBeKDvDtJOh5ADISsMsMJK15WzP++cfRfAwb1ZafAXwC3YYC/uKAENQ==";
+      };
+    }
+    {
+      name = "_types_redis___redis_2.8.32.tgz";
+      path = fetchurl {
+        name = "_types_redis___redis_2.8.32.tgz";
+        url  = "https://registry.yarnpkg.com/@types/redis/-/redis-2.8.32.tgz";
+        sha512 = "7jkMKxcGq9p242exlbsVzuJb57KqHRhNl4dHoQu2Y5v9bCAbtIXXH0R3HleSQW4CTOqpHIYUW3t6tpUj4BVQ+w==";
+      };
+    }
+    {
       name = "_types_refractor___refractor_3.0.2.tgz";
       path = fetchurl {
         name = "_types_refractor___refractor_3.0.2.tgz";
@@ -3186,6 +3322,14 @@
       };
     }
     {
+      name = "_types_tough_cookie___tough_cookie_4.0.2.tgz";
+      path = fetchurl {
+        name = "_types_tough_cookie___tough_cookie_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-4.0.2.tgz";
+        sha512 = "Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==";
+      };
+    }
+    {
       name = "_types_trusted_types___trusted_types_2.0.2.tgz";
       path = fetchurl {
         name = "_types_trusted_types___trusted_types_2.0.2.tgz";
@@ -3274,11 +3418,11 @@
       };
     }
     {
-      name = "_types_yargs___yargs_16.0.4.tgz";
+      name = "_types_yargs___yargs_17.0.11.tgz";
       path = fetchurl {
-        name = "_types_yargs___yargs_16.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.4.tgz";
-        sha512 = "T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==";
+        name = "_types_yargs___yargs_17.0.11.tgz";
+        url  = "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.11.tgz";
+        sha512 = "aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==";
       };
     }
     {
@@ -3506,11 +3650,11 @@
       };
     }
     {
-      name = "abab___abab_2.0.5.tgz";
+      name = "abab___abab_2.0.6.tgz";
       path = fetchurl {
-        name = "abab___abab_2.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz";
-        sha512 = "9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==";
+        name = "abab___abab_2.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz";
+        sha512 = "j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==";
       };
     }
     {
@@ -3570,11 +3714,11 @@
       };
     }
     {
-      name = "acorn___acorn_8.7.0.tgz";
+      name = "acorn___acorn_8.8.0.tgz";
       path = fetchurl {
-        name = "acorn___acorn_8.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/acorn/-/acorn-8.7.0.tgz";
-        sha512 = "V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==";
+        name = "acorn___acorn_8.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/acorn/-/acorn-8.8.0.tgz";
+        sha512 = "QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==";
       };
     }
     {
@@ -4050,11 +4194,19 @@
       };
     }
     {
-      name = "aws_sdk___aws_sdk_2.1044.0.tgz";
+      name = "available_typed_arrays___available_typed_arrays_1.0.5.tgz";
       path = fetchurl {
-        name = "aws_sdk___aws_sdk_2.1044.0.tgz";
-        url  = "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.1044.0.tgz";
-        sha512 = "n55uGUONQGXteGGG1QlZ1rKx447KSuV/x6jUGNf2nOl41qMI8ZgLUhNUt0uOtw3qJrCTanzCyR/JKBq2PMiqEQ==";
+        name = "available_typed_arrays___available_typed_arrays_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz";
+        sha512 = "DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==";
+      };
+    }
+    {
+      name = "aws_sdk___aws_sdk_2.1189.0.tgz";
+      path = fetchurl {
+        name = "aws_sdk___aws_sdk_2.1189.0.tgz";
+        url  = "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.1189.0.tgz";
+        sha512 = "EqluXSo8XAR086nF9UAtPYwUm82ZIRqg8OmHBRQyftcrD1Z0pqMmiuvacXoEAJ/4UU8KKafbpYarxx8rH/pZjQ==";
       };
     }
     {
@@ -4106,11 +4258,11 @@
       };
     }
     {
-      name = "babel_jest___babel_jest_27.4.5.tgz";
+      name = "babel_jest___babel_jest_28.1.3.tgz";
       path = fetchurl {
-        name = "babel_jest___babel_jest_27.4.5.tgz";
-        url  = "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.4.5.tgz";
-        sha512 = "3uuUTjXbgtODmSv/DXO9nZfD52IyC2OYTFaXGRzL0kpykzroaquCrD5+lZNafTvZlnNqZHt5pb0M08qVBZnsnA==";
+        name = "babel_jest___babel_jest_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/babel-jest/-/babel-jest-28.1.3.tgz";
+        sha512 = "epUaPOEWMk3cWX0M/sPvCHHCe9fMFAa/9hXEgKP8nFfNl/jlGkE9ucq9NqkZGXLDduCJYS0UvSlPUwC0S+rH6Q==";
       };
     }
     {
@@ -4138,19 +4290,19 @@
       };
     }
     {
-      name = "babel_plugin_istanbul___babel_plugin_istanbul_6.0.0.tgz";
+      name = "babel_plugin_istanbul___babel_plugin_istanbul_6.1.1.tgz";
       path = fetchurl {
-        name = "babel_plugin_istanbul___babel_plugin_istanbul_6.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz";
-        sha512 = "AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==";
+        name = "babel_plugin_istanbul___babel_plugin_istanbul_6.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz";
+        sha512 = "Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==";
       };
     }
     {
-      name = "babel_plugin_jest_hoist___babel_plugin_jest_hoist_27.4.0.tgz";
+      name = "babel_plugin_jest_hoist___babel_plugin_jest_hoist_28.1.3.tgz";
       path = fetchurl {
-        name = "babel_plugin_jest_hoist___babel_plugin_jest_hoist_27.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.4.0.tgz";
-        sha512 = "Jcu7qS4OX5kTWBc45Hz7BMmgXuJqRnhatqpUhnzGC3OBYpOmf2tv6jFNwZpwM7wU7MUuv2r9IPS/ZlYOuburVw==";
+        name = "babel_plugin_jest_hoist___babel_plugin_jest_hoist_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-28.1.3.tgz";
+        sha512 = "Ys3tUKAmfnkRUpPdpa98eYrAR0nV+sSFUZZEGuQ2EbFd1y4SOLtD5QDNHAq+bb9a+bbXvYQC4b+ID/THIMcU6Q==";
       };
     }
     {
@@ -4266,11 +4418,11 @@
       };
     }
     {
-      name = "babel_preset_jest___babel_preset_jest_27.4.0.tgz";
+      name = "babel_preset_jest___babel_preset_jest_28.1.3.tgz";
       path = fetchurl {
-        name = "babel_preset_jest___babel_preset_jest_27.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.4.0.tgz";
-        sha512 = "NK4jGYpnBvNxcGo7/ZpZJr51jCGT+3bwwpVIDY2oNfTxJJldRtB4VAcYdgp1loDE50ODuTu+yBjpMAswv5tlpg==";
+        name = "babel_preset_jest___babel_preset_jest_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-28.1.3.tgz";
+        sha512 = "L+fupJvlWAHbQfn74coNX3zf60LXMJsezNvvx8eIh7iOR1luJ1poxYgQk1F8PYtNq/6QODDHCqsSnTFSWC491A==";
       };
     }
     {
@@ -4426,11 +4578,11 @@
       };
     }
     {
-      name = "blueimp_canvas_to_blob___blueimp_canvas_to_blob_3.28.0.tgz";
+      name = "blueimp_canvas_to_blob___blueimp_canvas_to_blob_3.29.0.tgz";
       path = fetchurl {
-        name = "blueimp_canvas_to_blob___blueimp_canvas_to_blob_3.28.0.tgz";
-        url  = "https://registry.yarnpkg.com/blueimp-canvas-to-blob/-/blueimp-canvas-to-blob-3.28.0.tgz";
-        sha512 = "5q+YHzgGsuHQ01iouGgJaPJXod2AzTxJXmVv90PpGrRxU7G7IqgPqWXz+PBmt3520jKKi6irWbNV87DicEa7wg==";
+        name = "blueimp_canvas_to_blob___blueimp_canvas_to_blob_3.29.0.tgz";
+        url  = "https://registry.yarnpkg.com/blueimp-canvas-to-blob/-/blueimp-canvas-to-blob-3.29.0.tgz";
+        sha512 = "0pcSSGxC0QxT+yVkivxIqW0Y4VlO2XSDPofBAqoJ1qJxgH9eiUDLv50Rixij2cDuEfx4M6DpD9UGZpRhT5Q8qg==";
       };
     }
     {
@@ -4650,11 +4802,11 @@
       };
     }
     {
-      name = "buffer_from___buffer_from_1.1.1.tgz";
+      name = "buffer_from___buffer_from_1.1.2.tgz";
       path = fetchurl {
-        name = "buffer_from___buffer_from_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz";
-        sha512 = "MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==";
+        name = "buffer_from___buffer_from_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz";
+        sha512 = "E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==";
       };
     }
     {
@@ -4714,11 +4866,11 @@
       };
     }
     {
-      name = "bull___bull_3.29.1.tgz";
+      name = "bull___bull_4.8.5.tgz";
       path = fetchurl {
-        name = "bull___bull_3.29.1.tgz";
-        url  = "https://registry.yarnpkg.com/bull/-/bull-3.29.1.tgz";
-        sha512 = "ASNnorakKCV4hmgHABfn8Ir+gy24a4gaGnXH/0bm1Msq+djOnNfM5XW7Igzsa5iTjpboWXhY9dHFVjiWRKsSGw==";
+        name = "bull___bull_4.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/bull/-/bull-4.8.5.tgz";
+        sha512 = "2Z630e4f6VsLJnWMAtfEHwIqJYmND4W3dcG48RIbXeWpvb4UnYtpe/zxEdslJu0PKrltB4IkFj5YtBsdeQRn8w==";
       };
     }
     {
@@ -5346,11 +5498,11 @@
       };
     }
     {
-      name = "compressorjs___compressorjs_1.0.7.tgz";
+      name = "compressorjs___compressorjs_1.1.1.tgz";
       path = fetchurl {
-        name = "compressorjs___compressorjs_1.0.7.tgz";
-        url  = "https://registry.yarnpkg.com/compressorjs/-/compressorjs-1.0.7.tgz";
-        sha512 = "ca+H8CGrn0LG103//VQmXBbNdvzvHiW26LGdWncp4RmLNbNQjaaFWIUxMN9++hbhGobLtofkHoxzzXGisNyD3w==";
+        name = "compressorjs___compressorjs_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/compressorjs/-/compressorjs-1.1.1.tgz";
+        sha512 = "SysRuUPfmUNoq+RviE0iMFVUmoX2q/x+7PkEPUmk6NGkd85hDrmvujx0Qtp8UCGA6KMe5kuodsylPQcNaLf60w==";
       };
     }
     {
@@ -5394,11 +5546,11 @@
       };
     }
     {
-      name = "concurrently___concurrently_6.2.1.tgz";
+      name = "concurrently___concurrently_7.3.0.tgz";
       path = fetchurl {
-        name = "concurrently___concurrently_6.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/concurrently/-/concurrently-6.2.1.tgz";
-        sha512 = "emgwhH+ezkuYKSHZQ+AkgEpoUZZlbpPVYCVv7YZx0r+T7fny1H03r2nYRebpi2DudHR4n1Rgbo2YTxKOxVJ4+g==";
+        name = "concurrently___concurrently_7.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/concurrently/-/concurrently-7.3.0.tgz";
+        sha512 = "IiDwm+8DOcFEInca494A8V402tNTQlJaYq78RF2rijOrKEk/AOHTxhN4U1cp7GYKYX5Q6Ymh1dLTBlzIMN0ikA==";
       };
     }
     {
@@ -5602,11 +5754,11 @@
       };
     }
     {
-      name = "cron_parser___cron_parser_2.17.0.tgz";
+      name = "cron_parser___cron_parser_4.6.0.tgz";
       path = fetchurl {
-        name = "cron_parser___cron_parser_2.17.0.tgz";
-        url  = "https://registry.yarnpkg.com/cron-parser/-/cron-parser-2.17.0.tgz";
-        sha512 = "oTmzVEwlurRe51HqTm4afshVr8Rkxy9kFiWxh5e6SmrY2o9NDYU4S6SduanBZYXLgkLy0skA98y7/tztW/DmjQ==";
+        name = "cron_parser___cron_parser_4.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/cron-parser/-/cron-parser-4.6.0.tgz";
+        sha512 = "guZNLMGUgg6z4+eGhmHGw7ft+v6OQeuHzd1gcLxCo9Yg/qoxmG3nindp2/uwGCLizEisf2H0ptqeVXeoCpP6FA==";
       };
     }
     {
@@ -5730,11 +5882,11 @@
       };
     }
     {
-      name = "cssom___cssom_0.4.4.tgz";
+      name = "cssom___cssom_0.5.0.tgz";
       path = fetchurl {
-        name = "cssom___cssom_0.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz";
-        sha512 = "p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==";
+        name = "cssom___cssom_0.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/cssom/-/cssom-0.5.0.tgz";
+        sha512 = "iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==";
       };
     }
     {
@@ -6050,11 +6202,11 @@
       };
     }
     {
-      name = "data_urls___data_urls_2.0.0.tgz";
+      name = "data_urls___data_urls_3.0.2.tgz";
       path = fetchurl {
-        name = "data_urls___data_urls_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz";
-        sha512 = "X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==";
+        name = "data_urls___data_urls_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/data-urls/-/data-urls-3.0.2.tgz";
+        sha512 = "Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==";
       };
     }
     {
@@ -6186,11 +6338,11 @@
       };
     }
     {
-      name = "deep_is___deep_is_0.1.3.tgz";
+      name = "deep_is___deep_is_0.1.4.tgz";
       path = fetchurl {
-        name = "deep_is___deep_is_0.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz";
-        sha1 = "s2nW+128E+7PUk+RsHD+7cNXzzQ=";
+        name = "deep_is___deep_is_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz";
+        sha512 = "oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==";
       };
     }
     {
@@ -6210,11 +6362,11 @@
       };
     }
     {
-      name = "define_properties___define_properties_1.1.3.tgz";
+      name = "define_properties___define_properties_1.1.4.tgz";
       path = fetchurl {
-        name = "define_properties___define_properties_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz";
-        sha512 = "3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==";
+        name = "define_properties___define_properties_1.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.4.tgz";
+        sha512 = "uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==";
       };
     }
     {
@@ -6338,11 +6490,11 @@
       };
     }
     {
-      name = "diff_sequences___diff_sequences_27.4.0.tgz";
+      name = "diff_sequences___diff_sequences_28.1.1.tgz";
       path = fetchurl {
-        name = "diff_sequences___diff_sequences_27.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.4.0.tgz";
-        sha512 = "YqiQzkrsmHMH5uuh8OdQFU9/ZpADnwzml8z0O5HvRNda+5UZsaX/xN+AAxfR2hWq1Y7HZnAzO9J5lJXOuDz2Ww==";
+        name = "diff_sequences___diff_sequences_28.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-28.1.1.tgz";
+        sha512 = "FU0iFaH/E23a+a718l8Qa/19bF9p06kgE0KipMOMadwa3SjnaElKzPaUC0vnibs6/B/9ni97s61mcejk8W1fQw==";
       };
     }
     {
@@ -6490,11 +6642,11 @@
       };
     }
     {
-      name = "domexception___domexception_2.0.1.tgz";
+      name = "domexception___domexception_4.0.0.tgz";
       path = fetchurl {
-        name = "domexception___domexception_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz";
-        sha512 = "yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==";
+        name = "domexception___domexception_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/domexception/-/domexception-4.0.0.tgz";
+        sha512 = "A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==";
       };
     }
     {
@@ -6690,11 +6842,11 @@
       };
     }
     {
-      name = "emittery___emittery_0.8.1.tgz";
+      name = "emittery___emittery_0.10.2.tgz";
       path = fetchurl {
-        name = "emittery___emittery_0.8.1.tgz";
-        url  = "https://registry.yarnpkg.com/emittery/-/emittery-0.8.1.tgz";
-        sha512 = "uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==";
+        name = "emittery___emittery_0.10.2.tgz";
+        url  = "https://registry.yarnpkg.com/emittery/-/emittery-0.10.2.tgz";
+        sha512 = "aITqOwnLanpHLNXZJENbOgjUBeHocD+xsSJmNrjovKBW5HbSpW3d1pEls7GFQPUWXiwG9+0P4GtHfEqC/4M0Iw==";
       };
     }
     {
@@ -6826,6 +6978,14 @@
       };
     }
     {
+      name = "entities___entities_3.0.1.tgz";
+      path = fetchurl {
+        name = "entities___entities_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/entities/-/entities-3.0.1.tgz";
+        sha512 = "WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==";
+      };
+    }
+    {
       name = "env_ci___env_ci_5.4.1.tgz";
       path = fetchurl {
         name = "env_ci___env_ci_5.4.1.tgz";
@@ -6898,11 +7058,11 @@
       };
     }
     {
-      name = "es_abstract___es_abstract_1.19.1.tgz";
+      name = "es_abstract___es_abstract_1.20.1.tgz";
       path = fetchurl {
-        name = "es_abstract___es_abstract_1.19.1.tgz";
-        url  = "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.19.1.tgz";
-        sha512 = "2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w==";
+        name = "es_abstract___es_abstract_1.20.1.tgz";
+        url  = "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.20.1.tgz";
+        sha512 = "WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA==";
       };
     }
     {
@@ -7010,11 +7170,11 @@
       };
     }
     {
-      name = "eslint_config_prettier___eslint_config_prettier_8.3.0.tgz";
+      name = "eslint_config_prettier___eslint_config_prettier_8.5.0.tgz";
       path = fetchurl {
-        name = "eslint_config_prettier___eslint_config_prettier_8.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz";
-        sha512 = "BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew==";
+        name = "eslint_config_prettier___eslint_config_prettier_8.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.5.0.tgz";
+        sha512 = "obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==";
       };
     }
     {
@@ -7314,11 +7474,11 @@
       };
     }
     {
-      name = "expect___expect_27.4.2.tgz";
+      name = "expect___expect_28.1.3.tgz";
       path = fetchurl {
-        name = "expect___expect_27.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/expect/-/expect-27.4.2.tgz";
-        sha512 = "BjAXIDC6ZOW+WBFNg96J22D27Nq5ohn+oGcuP2rtOtcjuxNoV9McpQ60PcQWhdFOSBIQdR72e+4HdnbZTFSTyg==";
+        name = "expect___expect_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/expect/-/expect-28.1.3.tgz";
+        sha512 = "eEh0xn8HlsuOBxFgIss+2mX85VAS4Qy3OSkjV7rlBWljtA4oWH37glVGyOZSZvErDT/yBywZdPGwCXuTvSG85g==";
       };
     }
     {
@@ -7330,6 +7490,14 @@
       };
     }
     {
+      name = "express_useragent___express_useragent_1.0.15.tgz";
+      path = fetchurl {
+        name = "express_useragent___express_useragent_1.0.15.tgz";
+        url  = "https://registry.yarnpkg.com/express-useragent/-/express-useragent-1.0.15.tgz";
+        sha512 = "eq5xMiYCYwFPoekffMjvEIk+NWdlQY9Y38OsTyl13IvA728vKT+q/CSERYWzcw93HGBJcIqMIsZC5CZGARPVdg==";
+      };
+    }
+    {
       name = "ext___ext_1.4.0.tgz";
       path = fetchurl {
         name = "ext___ext_1.4.0.tgz";
@@ -7674,6 +7842,14 @@
       };
     }
     {
+      name = "for_each___for_each_0.3.3.tgz";
+      path = fetchurl {
+        name = "for_each___for_each_0.3.3.tgz";
+        url  = "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz";
+        sha512 = "jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==";
+      };
+    }
+    {
       name = "for_in___for_in_1.0.2.tgz";
       path = fetchurl {
         name = "for_in___for_in_1.0.2.tgz";
@@ -7690,6 +7866,14 @@
       };
     }
     {
+      name = "form_data___form_data_4.0.0.tgz";
+      path = fetchurl {
+        name = "form_data___form_data_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz";
+        sha512 = "ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==";
+      };
+    }
+    {
       name = "formidable___formidable_1.2.2.tgz";
       path = fetchurl {
         name = "formidable___formidable_1.2.2.tgz";
@@ -7874,11 +8058,11 @@
       };
     }
     {
-      name = "function.prototype.name___function.prototype.name_1.1.4.tgz";
+      name = "function.prototype.name___function.prototype.name_1.1.5.tgz";
       path = fetchurl {
-        name = "function.prototype.name___function.prototype.name_1.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.4.tgz";
-        sha512 = "iqy1pIotY/RmhdFZygSSlW0wko2yxkSCKqsuv4pr8QESohpYyG/Z7B/XXvPRKTJS//960rgguE5mSRUsDdaJrQ==";
+        name = "function.prototype.name___function.prototype.name_1.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.5.tgz";
+        sha512 = "uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==";
       };
     }
     {
@@ -8146,11 +8330,11 @@
       };
     }
     {
-      name = "graceful_fs___graceful_fs_4.2.6.tgz";
+      name = "graceful_fs___graceful_fs_4.2.10.tgz";
       path = fetchurl {
-        name = "graceful_fs___graceful_fs_4.2.6.tgz";
-        url  = "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.6.tgz";
-        sha512 = "nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==";
+        name = "graceful_fs___graceful_fs_4.2.10.tgz";
+        url  = "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz";
+        sha512 = "9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==";
       };
     }
     {
@@ -8186,11 +8370,11 @@
       };
     }
     {
-      name = "has_bigints___has_bigints_1.0.1.tgz";
+      name = "has_bigints___has_bigints_1.0.2.tgz";
       path = fetchurl {
-        name = "has_bigints___has_bigints_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.1.tgz";
-        sha512 = "LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==";
+        name = "has_bigints___has_bigints_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz";
+        sha512 = "tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==";
       };
     }
     {
@@ -8218,6 +8402,14 @@
       };
     }
     {
+      name = "has_property_descriptors___has_property_descriptors_1.0.0.tgz";
+      path = fetchurl {
+        name = "has_property_descriptors___has_property_descriptors_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz";
+        sha512 = "62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==";
+      };
+    }
+    {
       name = "has_symbols___has_symbols_1.0.3.tgz";
       path = fetchurl {
         name = "has_symbols___has_symbols_1.0.3.tgz";
@@ -8394,14 +8586,6 @@
       };
     }
     {
-      name = "hosted_git_info___hosted_git_info_2.8.9.tgz";
-      path = fetchurl {
-        name = "hosted_git_info___hosted_git_info_2.8.9.tgz";
-        url  = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz";
-        sha512 = "mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==";
-      };
-    }
-    {
       name = "html_element_map___html_element_map_1.3.1.tgz";
       path = fetchurl {
         name = "html_element_map___html_element_map_1.3.1.tgz";
@@ -8410,11 +8594,11 @@
       };
     }
     {
-      name = "html_encoding_sniffer___html_encoding_sniffer_2.0.1.tgz";
+      name = "html_encoding_sniffer___html_encoding_sniffer_3.0.0.tgz";
       path = fetchurl {
-        name = "html_encoding_sniffer___html_encoding_sniffer_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz";
-        sha512 = "D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==";
+        name = "html_encoding_sniffer___html_encoding_sniffer_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz";
+        sha512 = "oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==";
       };
     }
     {
@@ -8522,11 +8706,11 @@
       };
     }
     {
-      name = "http_proxy_agent___http_proxy_agent_4.0.1.tgz";
+      name = "http_proxy_agent___http_proxy_agent_5.0.0.tgz";
       path = fetchurl {
-        name = "http_proxy_agent___http_proxy_agent_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz";
-        sha512 = "k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==";
+        name = "http_proxy_agent___http_proxy_agent_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz";
+        sha512 = "n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==";
       };
     }
     {
@@ -8866,11 +9050,11 @@
       };
     }
     {
-      name = "ioredis___ioredis_4.28.0.tgz";
+      name = "ioredis___ioredis_4.28.5.tgz";
       path = fetchurl {
-        name = "ioredis___ioredis_4.28.0.tgz";
-        url  = "https://registry.yarnpkg.com/ioredis/-/ioredis-4.28.0.tgz";
-        sha512 = "I+zkeeWp3XFgPT2CtJKxvaF5FjGBGt4yGYljRjQecdQKteThuAsKqffeF1lgHVlYnuNeozRbPOCDNZ7tDWPeig==";
+        name = "ioredis___ioredis_4.28.5.tgz";
+        url  = "https://registry.yarnpkg.com/ioredis/-/ioredis-4.28.5.tgz";
+        sha512 = "3GYo0GJtLqgNXj4YhrisLaNNvWSNwSS2wS4OELGfGxH8I69+XfNdnmV1AyN+ZqMh0i7eX+SWjrwFKDBDgfBC1A==";
       };
     }
     {
@@ -8922,6 +9106,14 @@
       };
     }
     {
+      name = "is_arguments___is_arguments_1.1.1.tgz";
+      path = fetchurl {
+        name = "is_arguments___is_arguments_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz";
+        sha512 = "8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==";
+      };
+    }
+    {
       name = "is_arrayish___is_arrayish_0.2.1.tgz";
       path = fetchurl {
         name = "is_arrayish___is_arrayish_0.2.1.tgz";
@@ -9170,14 +9362,6 @@
       };
     }
     {
-      name = "is_nan___is_nan_1.3.0.tgz";
-      path = fetchurl {
-        name = "is_nan___is_nan_1.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-nan/-/is-nan-1.3.0.tgz";
-        sha512 = "z7bbREymOqt2CCaZVly8aC4ML3Xhfi0ekuOnjO2L8vKdl+CttdVoGZQhd4adMFAsxQ5VeRVwORs4tU8RH+HFtQ==";
-      };
-    }
-    {
       name = "is_negated_glob___is_negated_glob_1.0.0.tgz";
       path = fetchurl {
         name = "is_negated_glob___is_negated_glob_1.0.0.tgz";
@@ -9186,11 +9370,11 @@
       };
     }
     {
-      name = "is_negative_zero___is_negative_zero_2.0.1.tgz";
+      name = "is_negative_zero___is_negative_zero_2.0.2.tgz";
       path = fetchurl {
-        name = "is_negative_zero___is_negative_zero_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz";
-        sha512 = "2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==";
+        name = "is_negative_zero___is_negative_zero_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz";
+        sha512 = "dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==";
       };
     }
     {
@@ -9322,11 +9506,11 @@
       };
     }
     {
-      name = "is_shared_array_buffer___is_shared_array_buffer_1.0.1.tgz";
+      name = "is_shared_array_buffer___is_shared_array_buffer_1.0.2.tgz";
       path = fetchurl {
-        name = "is_shared_array_buffer___is_shared_array_buffer_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz";
-        sha512 = "IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA==";
+        name = "is_shared_array_buffer___is_shared_array_buffer_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz";
+        sha512 = "sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==";
       };
     }
     {
@@ -9362,6 +9546,14 @@
       };
     }
     {
+      name = "is_typed_array___is_typed_array_1.1.9.tgz";
+      path = fetchurl {
+        name = "is_typed_array___is_typed_array_1.1.9.tgz";
+        url  = "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.9.tgz";
+        sha512 = "kfrlnTTn8pZkfpJMUgYD7YZ3qzeJgWUn8XfVYBARc4wnmNOmLbmuuaAs3q5fvB0UJOn6yHAKaGTPM7d6ezoD/A==";
+      };
+    }
+    {
       name = "is_typedarray___is_typedarray_1.0.0.tgz";
       path = fetchurl {
         name = "is_typedarray___is_typedarray_1.0.0.tgz";
@@ -9394,11 +9586,11 @@
       };
     }
     {
-      name = "is_weakref___is_weakref_1.0.1.tgz";
+      name = "is_weakref___is_weakref_1.0.2.tgz";
       path = fetchurl {
-        name = "is_weakref___is_weakref_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.1.tgz";
-        sha512 = "b2jKc2pQZjaeFYWEf7ScFj+Be1I+PXmlu572Q8coTXZ+LD/QQZ7ShPMst8h16riVgyXTQwUsFEl74mDvc/3MHQ==";
+        name = "is_weakref___is_weakref_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz";
+        sha512 = "qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==";
       };
     }
     {
@@ -9490,19 +9682,19 @@
       };
     }
     {
-      name = "istanbul_lib_coverage___istanbul_lib_coverage_3.0.0.tgz";
+      name = "istanbul_lib_coverage___istanbul_lib_coverage_3.2.0.tgz";
       path = fetchurl {
-        name = "istanbul_lib_coverage___istanbul_lib_coverage_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz";
-        sha512 = "UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==";
+        name = "istanbul_lib_coverage___istanbul_lib_coverage_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz";
+        sha512 = "eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==";
       };
     }
     {
-      name = "istanbul_lib_instrument___istanbul_lib_instrument_4.0.3.tgz";
+      name = "istanbul_lib_instrument___istanbul_lib_instrument_5.2.0.tgz";
       path = fetchurl {
-        name = "istanbul_lib_instrument___istanbul_lib_instrument_4.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz";
-        sha512 = "BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==";
+        name = "istanbul_lib_instrument___istanbul_lib_instrument_5.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz";
+        sha512 = "6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==";
       };
     }
     {
@@ -9522,11 +9714,11 @@
       };
     }
     {
-      name = "istanbul_reports___istanbul_reports_3.0.2.tgz";
+      name = "istanbul_reports___istanbul_reports_3.1.5.tgz";
       path = fetchurl {
-        name = "istanbul_reports___istanbul_reports_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.2.tgz";
-        sha512 = "9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==";
+        name = "istanbul_reports___istanbul_reports_3.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.5.tgz";
+        sha512 = "nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==";
       };
     }
     {
@@ -9546,75 +9738,75 @@
       };
     }
     {
-      name = "jest_changed_files___jest_changed_files_27.4.2.tgz";
+      name = "jest_changed_files___jest_changed_files_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_changed_files___jest_changed_files_27.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.4.2.tgz";
-        sha512 = "/9x8MjekuzUQoPjDHbBiXbNEBauhrPU2ct7m8TfCg69ywt1y/N+yYwGh3gCpnqUS3klYWDU/lSNgv+JhoD2k1A==";
+        name = "jest_changed_files___jest_changed_files_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-28.1.3.tgz";
+        sha512 = "esaOfUWJXk2nfZt9SPyC8gA1kNfdKLkQWyzsMlqq8msYSlNKfmZxfRgZn4Cd4MGVUF+7v6dBs0d5TOAKa7iIiA==";
       };
     }
     {
-      name = "jest_circus___jest_circus_27.4.5.tgz";
+      name = "jest_circus___jest_circus_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_circus___jest_circus_27.4.5.tgz";
-        url  = "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.4.5.tgz";
-        sha512 = "eTNWa9wsvBwPykhMMShheafbwyakcdHZaEYh5iRrQ0PFJxkDP/e3U/FvzGuKWu2WpwUA3C3hPlfpuzvOdTVqnw==";
+        name = "jest_circus___jest_circus_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-circus/-/jest-circus-28.1.3.tgz";
+        sha512 = "cZ+eS5zc79MBwt+IhQhiEp0OeBddpc1n8MBo1nMB8A7oPMKEO+Sre+wHaLJexQUj9Ya/8NOBY0RESUgYjB6fow==";
       };
     }
     {
-      name = "jest_cli___jest_cli_27.4.5.tgz";
+      name = "jest_cli___jest_cli_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_cli___jest_cli_27.4.5.tgz";
-        url  = "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.4.5.tgz";
-        sha512 = "hrky3DSgE0u7sQxaCL7bdebEPHx5QzYmrGuUjaPLmPE8jx5adtvGuOlRspvMoVLTTDOHRnZDoRLYJuA+VCI7Hg==";
+        name = "jest_cli___jest_cli_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-cli/-/jest-cli-28.1.3.tgz";
+        sha512 = "roY3kvrv57Azn1yPgdTebPAXvdR2xfezaKKYzVxZ6It/5NCxzJym6tUI5P1zkdWhfUYkxEI9uZWcQdaFLo8mJQ==";
       };
     }
     {
-      name = "jest_config___jest_config_27.4.5.tgz";
+      name = "jest_config___jest_config_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_config___jest_config_27.4.5.tgz";
-        url  = "https://registry.yarnpkg.com/jest-config/-/jest-config-27.4.5.tgz";
-        sha512 = "t+STVJtPt+fpqQ8GBw850NtSQbnDOw/UzdPfzDaHQ48/AylQlW7LHj3dH+ndxhC1UxJ0Q3qkq7IH+nM1skwTwA==";
+        name = "jest_config___jest_config_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-config/-/jest-config-28.1.3.tgz";
+        sha512 = "MG3INjByJ0J4AsNBm7T3hsuxKQqFIiRo/AUqb1q9LRKI5UU6Aar9JHbr9Ivn1TVwfUD9KirRoM/T6u8XlcQPHQ==";
       };
     }
     {
-      name = "jest_diff___jest_diff_27.4.2.tgz";
+      name = "jest_diff___jest_diff_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_diff___jest_diff_27.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.4.2.tgz";
-        sha512 = "ujc9ToyUZDh9KcqvQDkk/gkbf6zSaeEg9AiBxtttXW59H/AcqEYp1ciXAtJp+jXWva5nAf/ePtSsgWwE5mqp4Q==";
+        name = "jest_diff___jest_diff_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-diff/-/jest-diff-28.1.3.tgz";
+        sha512 = "8RqP1B/OXzjjTWkqMX67iqgwBVJRgCyKD3L9nq+6ZqJMdvjE8RgHktqZ6jNrkdMT+dJuYNI3rhQpxaz7drJHfw==";
       };
     }
     {
-      name = "jest_docblock___jest_docblock_27.4.0.tgz";
+      name = "jest_docblock___jest_docblock_28.1.1.tgz";
       path = fetchurl {
-        name = "jest_docblock___jest_docblock_27.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.4.0.tgz";
-        sha512 = "7TBazUdCKGV7svZ+gh7C8esAnweJoG+SvcF6Cjqj4l17zA2q1cMwx2JObSioubk317H+cjcHgP+7fTs60paulg==";
+        name = "jest_docblock___jest_docblock_28.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-28.1.1.tgz";
+        sha512 = "3wayBVNiOYx0cwAbl9rwm5kKFP8yHH3d/fkEaL02NPTkDojPtheGB7HZSFY4wzX+DxyrvhXz0KSCVksmCknCuA==";
       };
     }
     {
-      name = "jest_each___jest_each_27.4.2.tgz";
+      name = "jest_each___jest_each_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_each___jest_each_27.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-each/-/jest-each-27.4.2.tgz";
-        sha512 = "53V2MNyW28CTruB3lXaHNk6PkiIFuzdOC9gR3C6j8YE/ACfrPnz+slB0s17AgU1TtxNzLuHyvNlLJ+8QYw9nBg==";
+        name = "jest_each___jest_each_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-each/-/jest-each-28.1.3.tgz";
+        sha512 = "arT1z4sg2yABU5uogObVPvSlSMQlDA48owx07BDPAiasW0yYpYHYOo4HHLz9q0BVzDVU4hILFjzJw0So9aCL/g==";
       };
     }
     {
-      name = "jest_environment_jsdom___jest_environment_jsdom_27.4.4.tgz";
+      name = "jest_environment_jsdom___jest_environment_jsdom_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_environment_jsdom___jest_environment_jsdom_27.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.4.4.tgz";
-        sha512 = "cYR3ndNfHBqQgFvS1RL7dNqSvD//K56j/q1s2ygNHcfTCAp12zfIromO1w3COmXrxS8hWAh7+CmZmGCIoqGcGA==";
+        name = "jest_environment_jsdom___jest_environment_jsdom_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-28.1.3.tgz";
+        sha512 = "HnlGUmZRdxfCByd3GM2F100DgQOajUBzEitjGqIREcb45kGjZvRrKUdlaF6escXBdcXNl0OBh+1ZrfeZT3GnAg==";
       };
     }
     {
-      name = "jest_environment_node___jest_environment_node_27.4.4.tgz";
+      name = "jest_environment_node___jest_environment_node_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_environment_node___jest_environment_node_27.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.4.4.tgz";
-        sha512 = "D+v3lbJ2GjQTQR23TK0kY3vFVmSeea05giInI41HHOaJnAwOnmUHTZgUaZL+VxUB43pIzoa7PMwWtCVlIUoVoA==";
+        name = "jest_environment_node___jest_environment_node_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-28.1.3.tgz";
+        sha512 = "ugP6XOhEpjAEhGYvp5Xj989ns5cB1K6ZdjBYuS30umT4CQEETaxSiPcZ/E1kFktX4GkrcM4qu07IIlDYX1gp+A==";
       };
     }
     {
@@ -9626,59 +9818,51 @@
       };
     }
     {
-      name = "jest_get_type___jest_get_type_27.4.0.tgz";
-      path = fetchurl {
-        name = "jest_get_type___jest_get_type_27.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.4.0.tgz";
-        sha512 = "tk9o+ld5TWq41DkK14L4wox4s2D9MtTpKaAVzXfr5CUKm5ZK2ExcaFE0qls2W71zE/6R2TxxrK9w2r6svAFDBQ==";
-      };
-    }
-    {
-      name = "jest_haste_map___jest_haste_map_27.4.5.tgz";
+      name = "jest_get_type___jest_get_type_28.0.2.tgz";
       path = fetchurl {
-        name = "jest_haste_map___jest_haste_map_27.4.5.tgz";
-        url  = "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.4.5.tgz";
-        sha512 = "oJm1b5qhhPs78K24EDGifWS0dELYxnoBiDhatT/FThgB9yxqUm5F6li3Pv+Q+apMBmmPNzOBnZ7ZxWMB1Leq1Q==";
+        name = "jest_get_type___jest_get_type_28.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-28.0.2.tgz";
+        sha512 = "ioj2w9/DxSYHfOm5lJKCdcAmPJzQXmbM/Url3rhlghrPvT3tt+7a/+oXc9azkKmLvoiXjtV83bEWqi+vs5nlPA==";
       };
     }
     {
-      name = "jest_jasmine2___jest_jasmine2_27.4.5.tgz";
+      name = "jest_haste_map___jest_haste_map_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_jasmine2___jest_jasmine2_27.4.5.tgz";
-        url  = "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.4.5.tgz";
-        sha512 = "oUnvwhJDj2LhOiUB1kdnJjkx8C5PwgUZQb9urF77mELH9DGR4e2GqpWQKBOYXWs5+uTN9BGDqRz3Aeg5Wts7aw==";
+        name = "jest_haste_map___jest_haste_map_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-28.1.3.tgz";
+        sha512 = "3S+RQWDXccXDKSWnkHa/dPwt+2qwA8CJzR61w3FoYCvoo3Pn8tvGcysmMF0Bj0EX5RYvAI2EIvC57OmotfdtKA==";
       };
     }
     {
-      name = "jest_leak_detector___jest_leak_detector_27.4.2.tgz";
+      name = "jest_leak_detector___jest_leak_detector_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_leak_detector___jest_leak_detector_27.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.4.2.tgz";
-        sha512 = "ml0KvFYZllzPBJWDei3mDzUhyp/M4ubKebX++fPaudpe8OsxUE+m+P6ciVLboQsrzOCWDjE20/eXew9QMx/VGw==";
+        name = "jest_leak_detector___jest_leak_detector_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-28.1.3.tgz";
+        sha512 = "WFVJhnQsiKtDEo5lG2mM0v40QWnBM+zMdHHyJs8AWZ7J0QZJS59MsyKeJHWhpBZBH32S48FOVvGyOFT1h0DlqA==";
       };
     }
     {
-      name = "jest_matcher_utils___jest_matcher_utils_27.4.2.tgz";
+      name = "jest_matcher_utils___jest_matcher_utils_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_matcher_utils___jest_matcher_utils_27.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.4.2.tgz";
-        sha512 = "jyP28er3RRtMv+fmYC/PKG8wvAmfGcSNproVTW2Y0P/OY7/hWUOmsPfxN1jOhM+0u2xU984u2yEagGivz9OBGQ==";
+        name = "jest_matcher_utils___jest_matcher_utils_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-28.1.3.tgz";
+        sha512 = "kQeJ7qHemKfbzKoGjHHrRKH6atgxMk8Enkk2iPQ3XwO6oE/KYD8lMYOziCkeSB9G4adPM4nR1DE8Tf5JeWH6Bw==";
       };
     }
     {
-      name = "jest_message_util___jest_message_util_27.4.2.tgz";
+      name = "jest_message_util___jest_message_util_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_message_util___jest_message_util_27.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.4.2.tgz";
-        sha512 = "OMRqRNd9E0DkBLZpFtZkAGYOXl6ZpoMtQJWTAREJKDOFa0M6ptB7L67tp+cszMBkvSgKOhNtQp2Vbcz3ZZKo/w==";
+        name = "jest_message_util___jest_message_util_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-28.1.3.tgz";
+        sha512 = "PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==";
       };
     }
     {
-      name = "jest_mock___jest_mock_27.4.2.tgz";
+      name = "jest_mock___jest_mock_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_mock___jest_mock_27.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.4.2.tgz";
-        sha512 = "PDDPuyhoukk20JrQKeofK12hqtSka7mWH0QQuxSNgrdiPsrnYYLS6wbzu/HDlxZRzji5ylLRULeuI/vmZZDrYA==";
+        name = "jest_mock___jest_mock_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-mock/-/jest-mock-28.1.3.tgz";
+        sha512 = "o3J2jr6dMMWYVH4Lh/NKmDXdosrsJgi4AviS8oXLujcjpCMBb1FMsblDnOXKZKfSiHLxYub1eS0IHuRXsio9eA==";
       };
     }
     {
@@ -9690,83 +9874,75 @@
       };
     }
     {
-      name = "jest_regex_util___jest_regex_util_27.4.0.tgz";
+      name = "jest_regex_util___jest_regex_util_28.0.2.tgz";
       path = fetchurl {
-        name = "jest_regex_util___jest_regex_util_27.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.4.0.tgz";
-        sha512 = "WeCpMpNnqJYMQoOjm1nTtsgbR4XHAk1u00qDoNBQoykM280+/TmgA5Qh5giC1ecy6a5d4hbSsHzpBtu5yvlbEg==";
+        name = "jest_regex_util___jest_regex_util_28.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-28.0.2.tgz";
+        sha512 = "4s0IgyNIy0y9FK+cjoVYoxamT7Zeo7MhzqRGx7YDYmaQn1wucY9rotiGkBzzcMXTtjrCAP/f7f+E0F7+fxPNdw==";
       };
     }
     {
-      name = "jest_resolve_dependencies___jest_resolve_dependencies_27.4.5.tgz";
+      name = "jest_resolve_dependencies___jest_resolve_dependencies_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_resolve_dependencies___jest_resolve_dependencies_27.4.5.tgz";
-        url  = "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.4.5.tgz";
-        sha512 = "elEVvkvRK51y037NshtEkEnukMBWvlPzZHiL847OrIljJ8yIsujD2GXRPqDXC4rEVKbcdsy7W0FxoZb4WmEs7w==";
+        name = "jest_resolve_dependencies___jest_resolve_dependencies_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-28.1.3.tgz";
+        sha512 = "qa0QO2Q0XzQoNPouMbCc7Bvtsem8eQgVPNkwn9LnS+R2n8DaVDPL/U1gngC0LTl1RYXJU0uJa2BMC2DbTfFrHA==";
       };
     }
     {
-      name = "jest_resolve___jest_resolve_27.4.5.tgz";
+      name = "jest_resolve___jest_resolve_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_resolve___jest_resolve_27.4.5.tgz";
-        url  = "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.4.5.tgz";
-        sha512 = "xU3z1BuOz/hUhVUL+918KqUgK+skqOuUsAi7A+iwoUldK6/+PW+utK8l8cxIWT9AW7IAhGNXjSAh1UYmjULZZw==";
+        name = "jest_resolve___jest_resolve_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-28.1.3.tgz";
+        sha512 = "Z1W3tTjE6QaNI90qo/BJpfnvpxtaFTFw5CDgwpyE/Kz8U/06N1Hjf4ia9quUhCh39qIGWF1ZuxFiBiJQwSEYKQ==";
       };
     }
     {
-      name = "jest_runner___jest_runner_27.4.5.tgz";
+      name = "jest_runner___jest_runner_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_runner___jest_runner_27.4.5.tgz";
-        url  = "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.4.5.tgz";
-        sha512 = "/irauncTfmY1WkTaRQGRWcyQLzK1g98GYG/8QvIPviHgO1Fqz1JYeEIsSfF+9mc/UTA6S+IIHFgKyvUrtiBIZg==";
+        name = "jest_runner___jest_runner_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-runner/-/jest-runner-28.1.3.tgz";
+        sha512 = "GkMw4D/0USd62OVO0oEgjn23TM+YJa2U2Wu5zz9xsQB1MxWKDOlrnykPxnMsN0tnJllfLPinHTka61u0QhaxBA==";
       };
     }
     {
-      name = "jest_runtime___jest_runtime_27.4.5.tgz";
+      name = "jest_runtime___jest_runtime_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_runtime___jest_runtime_27.4.5.tgz";
-        url  = "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.4.5.tgz";
-        sha512 = "CIYqwuJQXHQtPd/idgrx4zgJ6iCb6uBjQq1RSAGQrw2S8XifDmoM1Ot8NRd80ooAm+ZNdHVwsktIMGlA1F1FAQ==";
+        name = "jest_runtime___jest_runtime_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-28.1.3.tgz";
+        sha512 = "NU+881ScBQQLc1JHG5eJGU7Ui3kLKrmwCPPtYsJtBykixrM2OhVQlpMmFWJjMyDfdkGgBMNjXCGB/ebzsgNGQw==";
       };
     }
     {
-      name = "jest_serializer___jest_serializer_27.4.0.tgz";
+      name = "jest_snapshot___jest_snapshot_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_serializer___jest_serializer_27.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.4.0.tgz";
-        sha512 = "RDhpcn5f1JYTX2pvJAGDcnsNTnsV9bjYPU8xcV+xPwOXnUPOQwf4ZEuiU6G9H1UztH+OapMgu/ckEVwO87PwnQ==";
+        name = "jest_snapshot___jest_snapshot_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-28.1.3.tgz";
+        sha512 = "4lzMgtiNlc3DU/8lZfmqxN3AYD6GGLbl+72rdBpXvcV+whX7mDrREzkPdp2RnmfIiWBg1YbuFSkXduF2JcafJg==";
       };
     }
     {
-      name = "jest_snapshot___jest_snapshot_27.4.5.tgz";
+      name = "jest_util___jest_util_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_snapshot___jest_snapshot_27.4.5.tgz";
-        url  = "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.4.5.tgz";
-        sha512 = "eCi/iM1YJFrJWiT9de4+RpWWWBqsHiYxFG9V9o/n0WXs6GpW4lUt4FAHAgFPTLPqCUVzrMQmSmTZSgQzwqR7IQ==";
+        name = "jest_util___jest_util_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-util/-/jest-util-28.1.3.tgz";
+        sha512 = "XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==";
       };
     }
     {
-      name = "jest_util___jest_util_27.4.2.tgz";
+      name = "jest_validate___jest_validate_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_util___jest_util_27.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-util/-/jest-util-27.4.2.tgz";
-        sha512 = "YuxxpXU6nlMan9qyLuxHaMMOzXAl5aGZWCSzben5DhLHemYQxCc4YK+4L3ZrCutT8GPQ+ui9k5D8rUJoDioMnA==";
+        name = "jest_validate___jest_validate_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-validate/-/jest-validate-28.1.3.tgz";
+        sha512 = "SZbOGBWEsaTxBGCOpsRWlXlvNkvTkY0XxRfh7zYmvd8uL5Qzyg0CHAXiXKROflh801quA6+/DsT4ODDthOC/OA==";
       };
     }
     {
-      name = "jest_validate___jest_validate_27.4.2.tgz";
+      name = "jest_watcher___jest_watcher_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_validate___jest_validate_27.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.4.2.tgz";
-        sha512 = "hWYsSUej+Fs8ZhOm5vhWzwSLmVaPAxRy+Mr+z5MzeaHm9AxUpXdoVMEW4R86y5gOobVfBsMFLk4Rb+QkiEpx1A==";
-      };
-    }
-    {
-      name = "jest_watcher___jest_watcher_27.4.2.tgz";
-      path = fetchurl {
-        name = "jest_watcher___jest_watcher_27.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.4.2.tgz";
-        sha512 = "NJvMVyyBeXfDezhWzUOCOYZrUmkSCiatpjpm+nFUid74OZEHk6aMLrZAukIiFDwdbqp6mTM6Ui1w4oc+8EobQg==";
+        name = "jest_watcher___jest_watcher_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-28.1.3.tgz";
+        sha512 = "t4qcqj9hze+jviFPUN3YAtAEeFnr/azITXQEMARf5cMwKY2SMBRnCQTXLixTl20OR6mLh9KLMrgVJgJISym+1g==";
       };
     }
     {
@@ -9778,11 +9954,11 @@
       };
     }
     {
-      name = "jest_worker___jest_worker_27.4.5.tgz";
+      name = "jest_worker___jest_worker_28.1.3.tgz";
       path = fetchurl {
-        name = "jest_worker___jest_worker_27.4.5.tgz";
-        url  = "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.4.5.tgz";
-        sha512 = "f2s8kEdy15cv9r7q4KkzGXvlY0JTcmCbMHZBfSQDwW77REr45IDWwd0lksDFeVHH2jJ5pqb90T77XscrjeGzzg==";
+        name = "jest_worker___jest_worker_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jest-worker/-/jest-worker-28.1.3.tgz";
+        sha512 = "CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==";
       };
     }
     {
@@ -9794,11 +9970,11 @@
       };
     }
     {
-      name = "jmespath___jmespath_0.15.0.tgz";
+      name = "jmespath___jmespath_0.16.0.tgz";
       path = fetchurl {
-        name = "jmespath___jmespath_0.15.0.tgz";
-        url  = "https://registry.yarnpkg.com/jmespath/-/jmespath-0.15.0.tgz";
-        sha1 = "o/Iiqarp+Wb10nx5ZRDigJF2Qhc=";
+        name = "jmespath___jmespath_0.16.0.tgz";
+        url  = "https://registry.yarnpkg.com/jmespath/-/jmespath-0.16.0.tgz";
+        sha512 = "9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw==";
       };
     }
     {
@@ -9842,11 +10018,11 @@
       };
     }
     {
-      name = "jsdom___jsdom_16.7.0.tgz";
+      name = "jsdom___jsdom_19.0.0.tgz";
       path = fetchurl {
-        name = "jsdom___jsdom_16.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz";
-        sha512 = "u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==";
+        name = "jsdom___jsdom_19.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/jsdom/-/jsdom-19.0.0.tgz";
+        sha512 = "RYAyjCbxy/vri/CfnjUWJQQtZ3LKlLnDqj+9XLNnJPgEGeirZs3hllKR20re8LUZ6o1b1X4Jat+Qd26zmP41+A==";
       };
     }
     {
@@ -10018,11 +10194,11 @@
       };
     }
     {
-      name = "jszip___jszip_3.7.1.tgz";
+      name = "jszip___jszip_3.10.0.tgz";
       path = fetchurl {
-        name = "jszip___jszip_3.7.1.tgz";
-        url  = "https://registry.yarnpkg.com/jszip/-/jszip-3.7.1.tgz";
-        sha512 = "ghL0tz1XG9ZEmRMcEN2vt7xabrDdqHHeykgARpmZ0BiIctWxM47Vt63ZO2dnp4QYt/xJVLLy5Zv1l/xRdh2byg==";
+        name = "jszip___jszip_3.10.0.tgz";
+        url  = "https://registry.yarnpkg.com/jszip/-/jszip-3.10.0.tgz";
+        sha512 = "LDfVtOLtOxb9RXkYOwPyNBTQDL4eUbqahtoY6x07GiDJHwSYvn8sHHIw8wINImV3MqbMNve2gSuM1DDqEKk09Q==";
       };
     }
     {
@@ -10266,6 +10442,14 @@
       };
     }
     {
+      name = "koa_useragent___koa_useragent_4.1.0.tgz";
+      path = fetchurl {
+        name = "koa_useragent___koa_useragent_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/koa-useragent/-/koa-useragent-4.1.0.tgz";
+        sha512 = "x/HUDZ1zAmNNh5hA9hHbPm9p3UVg2prlpHzxCXQCzbibrNS0kmj7MkCResCbAbG7ZT6FVxNSMjR94ZGamdMwxA==";
+      };
+    }
+    {
       name = "koa_views___koa_views_7.0.1.tgz";
       path = fetchurl {
         name = "koa_views___koa_views_7.0.1.tgz";
@@ -10374,7 +10558,7 @@
       path = fetchurl {
         name = "levn___levn_0.3.0.tgz";
         url  = "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz";
-        sha1 = "OwmSTt+fCDwEkP3UwLxEIeBHZO4=";
+        sha512 = "0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==";
       };
     }
     {
@@ -10426,11 +10610,11 @@
       };
     }
     {
-      name = "linkify_it___linkify_it_3.0.3.tgz";
+      name = "linkify_it___linkify_it_4.0.1.tgz";
       path = fetchurl {
-        name = "linkify_it___linkify_it_3.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/linkify-it/-/linkify-it-3.0.3.tgz";
-        sha512 = "ynTsyrFSdE5oZ/O9GEf00kPngmOfVwazR5GKDq6EYfhlpFug3J2zybX56a2PRRpc9P+FuSoGNAwjlbDs9jJBPQ==";
+        name = "linkify_it___linkify_it_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/linkify-it/-/linkify-it-4.0.1.tgz";
+        sha512 = "C7bfi1UZmoj8+PQx22XyeXCuBlokoyWQL5pWSP+EI6nzRylyThouddufc2c1NDIcP9k5agmN9fLpA7VNJfIiqw==";
       };
     }
     {
@@ -10786,6 +10970,14 @@
       };
     }
     {
+      name = "luxon___luxon_3.0.1.tgz";
+      path = fetchurl {
+        name = "luxon___luxon_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/luxon/-/luxon-3.0.1.tgz";
+        sha512 = "hF3kv0e5gwHQZKz4wtm4c+inDtyc7elkanAsBq+fundaCdUBNJB1dHEGUZIM6SfSBUlbVFduPwEtNjFK8wLtcw==";
+      };
+    }
+    {
       name = "magic_string___magic_string_0.25.7.tgz";
       path = fetchurl {
         name = "magic_string___magic_string_0.25.7.tgz";
@@ -10858,11 +11050,11 @@
       };
     }
     {
-      name = "markdown_it___markdown_it_12.3.2.tgz";
+      name = "markdown_it___markdown_it_13.0.1.tgz";
       path = fetchurl {
-        name = "markdown_it___markdown_it_12.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/markdown-it/-/markdown-it-12.3.2.tgz";
-        sha512 = "TchMembfxfNVpHkbtriWltGWc+m3xszaRD0CZup7GFFhzIgQqxIfn3eGj1yZpfuflzPvfkt611B2Q/Bsk1YnGg==";
+        name = "markdown_it___markdown_it_13.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/markdown-it/-/markdown-it-13.0.1.tgz";
+        sha512 = "lTlxriVoy2criHP0JKRhO2VDG9c2ypWCsT237eDiLqi09rmbKoUetyGHq2uOIRoRS//kfoJckS0eUzzkDR+k2Q==";
       };
     }
     {
@@ -11218,11 +11410,11 @@
       };
     }
     {
-      name = "moment_timezone___moment_timezone_0.5.34.tgz";
+      name = "moment_timezone___moment_timezone_0.5.37.tgz";
       path = fetchurl {
-        name = "moment_timezone___moment_timezone_0.5.34.tgz";
-        url  = "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.34.tgz";
-        sha512 = "3zAEHh2hKUs3EXLESx/wsgw6IQdusOT8Bxm3D9UrHPQR7zlMmzwybC8zHEM1tQ4LJwP7fcxrWr8tuBg05fFCbg==";
+        name = "moment_timezone___moment_timezone_0.5.37.tgz";
+        url  = "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.37.tgz";
+        sha512 = "uEDzDNFhfaywRl+vwXxffjjq1q0Vzr+fcQpQ1bU0kbzorfS7zVtZnCnGc8mhWmF39d4g4YriF6kwA75mJKE/Zg==";
       };
     }
     {
@@ -11266,6 +11458,22 @@
       };
     }
     {
+      name = "msgpackr_extract___msgpackr_extract_2.1.2.tgz";
+      path = fetchurl {
+        name = "msgpackr_extract___msgpackr_extract_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/msgpackr-extract/-/msgpackr-extract-2.1.2.tgz";
+        sha512 = "cmrmERQFb19NX2JABOGtrKdHMyI6RUyceaPBQ2iRz9GnDkjBWFjNJC0jyyoOfZl2U/LZE3tQCCQc4dlRyA8mcA==";
+      };
+    }
+    {
+      name = "msgpackr___msgpackr_1.6.2.tgz";
+      path = fetchurl {
+        name = "msgpackr___msgpackr_1.6.2.tgz";
+        url  = "https://registry.yarnpkg.com/msgpackr/-/msgpackr-1.6.2.tgz";
+        sha512 = "bqSQ0DYJbXbrJcrZFmMygUZmqQiDfI2ewFVWcrZY12w5XHWtPuW4WppDT/e63Uu311ajwkRRXSoF0uILroBeTA==";
+      };
+    }
+    {
       name = "multer___multer_1.4.2.tgz";
       path = fetchurl {
         name = "multer___multer_1.4.2.tgz";
@@ -11378,6 +11586,14 @@
       };
     }
     {
+      name = "node_gyp_build_optional_packages___node_gyp_build_optional_packages_5.0.3.tgz";
+      path = fetchurl {
+        name = "node_gyp_build_optional_packages___node_gyp_build_optional_packages_5.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.0.3.tgz";
+        sha512 = "k75jcVzk5wnnc/FMxsf4udAoTEUv2jY3ycfdSd3yWu6Cnd1oee6/CfZJApyscA4FJOmdoixWwiwOyf16RzD5JA==";
+      };
+    }
+    {
       name = "node_gyp_build___node_gyp_build_3.9.0.tgz";
       path = fetchurl {
         name = "node_gyp_build___node_gyp_build_3.9.0.tgz";
@@ -11442,14 +11658,6 @@
       };
     }
     {
-      name = "normalize_package_data___normalize_package_data_2.5.0.tgz";
-      path = fetchurl {
-        name = "normalize_package_data___normalize_package_data_2.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz";
-        sha512 = "/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==";
-      };
-    }
-    {
       name = "normalize_path___normalize_path_2.1.1.tgz";
       path = fetchurl {
         name = "normalize_path___normalize_path_2.1.1.tgz";
@@ -11514,11 +11722,11 @@
       };
     }
     {
-      name = "nwsapi___nwsapi_2.2.0.tgz";
+      name = "nwsapi___nwsapi_2.2.1.tgz";
       path = fetchurl {
-        name = "nwsapi___nwsapi_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz";
-        sha512 = "h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==";
+        name = "nwsapi___nwsapi_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.1.tgz";
+        sha512 = "JYOWTeFoS0Z93587vRJgASD5Ut11fYl5NyihP3KrYBvMe1FRRs6RN7m20SA/16GM4P6hTnZjT+UmDOt38UeXNg==";
       };
     }
     {
@@ -11730,19 +11938,19 @@
       };
     }
     {
-      name = "outline_icons___outline_icons_1.43.1.tgz";
+      name = "outline_icons___outline_icons_1.44.0.tgz";
       path = fetchurl {
-        name = "outline_icons___outline_icons_1.43.1.tgz";
-        url  = "https://registry.yarnpkg.com/outline-icons/-/outline-icons-1.43.1.tgz";
-        sha512 = "REj+JsCFi2Jv5uG0/OrBsMVSBFAIsSROxynWbuO9r2eNT8wdqjni02Mk1gq1qFfTbwOvHJ+7ycadu6zlISAK2g==";
+        name = "outline_icons___outline_icons_1.44.0.tgz";
+        url  = "https://registry.yarnpkg.com/outline-icons/-/outline-icons-1.44.0.tgz";
+        sha512 = "nkKGXuGbOgZjPkyVpZZu7CIDrfmt2eER+3RWfE1LU/GqHkuUt0c5JpCsEyhxXAPMUW09q4sDvHjLVge7DUWeYg==";
       };
     }
     {
-      name = "oy_vey___oy_vey_0.10.0.tgz";
+      name = "oy_vey___oy_vey_0.11.2.tgz";
       path = fetchurl {
-        name = "oy_vey___oy_vey_0.10.0.tgz";
-        url  = "https://registry.yarnpkg.com/oy-vey/-/oy-vey-0.10.0.tgz";
-        sha512 = "mdfU2VUl3Ra1ofXiO6Nqd98PBRFWlPM5rTYvSqsDxQEeV5PCfWroWOoVyg8vOpGhJjcDFKIS62PfbPUJUQmSwQ==";
+        name = "oy_vey___oy_vey_0.11.2.tgz";
+        url  = "https://registry.yarnpkg.com/oy-vey/-/oy-vey-0.11.2.tgz";
+        sha512 = "06prDST4MicbAWie4eXcouJbGhAu0r7j3Yta1KFtgs7v2t7goHmY06/GWFjT6lpIsGKJC+7vZtwdecRSYnFtPQ==";
       };
     }
     {
@@ -11954,11 +12162,11 @@
       };
     }
     {
-      name = "parse_json___parse_json_5.1.0.tgz";
+      name = "parse_json___parse_json_5.2.0.tgz";
       path = fetchurl {
-        name = "parse_json___parse_json_5.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/parse-json/-/parse-json-5.1.0.tgz";
-        sha512 = "+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==";
+        name = "parse_json___parse_json_5.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz";
+        sha512 = "ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==";
       };
     }
     {
@@ -12478,7 +12686,7 @@
       path = fetchurl {
         name = "prelude_ls___prelude_ls_1.1.2.tgz";
         url  = "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz";
-        sha1 = "IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=";
+        sha512 = "ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==";
       };
     }
     {
@@ -12522,11 +12730,11 @@
       };
     }
     {
-      name = "pretty_format___pretty_format_27.4.2.tgz";
+      name = "pretty_format___pretty_format_28.1.3.tgz";
       path = fetchurl {
-        name = "pretty_format___pretty_format_27.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.4.2.tgz";
-        sha512 = "p0wNtJ9oLuvgOQDEIZ9zQjZffK7KtyR6Si0jnXULIDwrlNF8Cuir3AZP0hHv0jmKuNN/edOnbMjnzd4uTcmWiw==";
+        name = "pretty_format___pretty_format_28.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/pretty-format/-/pretty-format-28.1.3.tgz";
+        sha512 = "8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==";
       };
     }
     {
@@ -12594,14 +12802,6 @@
       };
     }
     {
-      name = "promise.prototype.finally___promise.prototype.finally_3.1.2.tgz";
-      path = fetchurl {
-        name = "promise.prototype.finally___promise.prototype.finally_3.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/promise.prototype.finally/-/promise.prototype.finally-3.1.2.tgz";
-        sha512 = "A2HuJWl2opDH0EafgdjwEw7HysI8ff/n4lW4QEVBCUXFk9QeGecBWv0Deph0UmLe3tTNYegz8MOjsVuE6SMoJA==";
-      };
-    }
-    {
       name = "prompts___prompts_2.4.0.tgz";
       path = fetchurl {
         name = "prompts___prompts_2.4.0.tgz";
@@ -12682,11 +12882,11 @@
       };
     }
     {
-      name = "prosemirror_markdown___prosemirror_markdown_1.7.0.tgz";
+      name = "prosemirror_markdown___prosemirror_markdown_1.9.3.tgz";
       path = fetchurl {
-        name = "prosemirror_markdown___prosemirror_markdown_1.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/prosemirror-markdown/-/prosemirror-markdown-1.7.0.tgz";
-        sha512 = "jZAehQ6KN5pSTFEdb1+iTvdogRBlKH3+Qqb6wjRuh8auRomEYVvAmSY9OsUL7689HzOUiy02T4f2WxB/t2I8rQ==";
+        name = "prosemirror_markdown___prosemirror_markdown_1.9.3.tgz";
+        url  = "https://registry.yarnpkg.com/prosemirror-markdown/-/prosemirror-markdown-1.9.3.tgz";
+        sha512 = "tPJ3jEUTF3C5m60m/Eq8Y3SW6d5av0Ll61HuK1NuDP+jXsFFywG2nw500+nn7GQi5lSXP3n1HQP9zd0fpmAlzw==";
       };
     }
     {
@@ -12786,11 +12986,11 @@
       };
     }
     {
-      name = "psl___psl_1.8.0.tgz";
+      name = "psl___psl_1.9.0.tgz";
       path = fetchurl {
-        name = "psl___psl_1.8.0.tgz";
-        url  = "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz";
-        sha512 = "RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==";
+        name = "psl___psl_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz";
+        sha512 = "E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==";
       };
     }
     {
@@ -12978,6 +13178,14 @@
       };
     }
     {
+      name = "rate_limiter_flexible___rate_limiter_flexible_2.3.7.tgz";
+      path = fetchurl {
+        name = "rate_limiter_flexible___rate_limiter_flexible_2.3.7.tgz";
+        url  = "https://registry.yarnpkg.com/rate-limiter-flexible/-/rate-limiter-flexible-2.3.7.tgz";
+        sha512 = "dmc+J/IffVBvHlqq5/XClsdLdkOdQV/tjrz00cwneHUbEDYVrf4aUDAyR4Jybcf2+Vpn4NwoVrnnAyt/D0ciWw==";
+      };
+    }
+    {
       name = "raw_body___raw_body_2.4.1.tgz";
       path = fetchurl {
         name = "raw_body___raw_body_2.4.1.tgz";
@@ -13098,6 +13306,14 @@
       };
     }
     {
+      name = "react_is___react_is_18.2.0.tgz";
+      path = fetchurl {
+        name = "react_is___react_is_18.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz";
+        sha512 = "xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==";
+      };
+    }
+    {
       name = "react_medium_image_zoom___react_medium_image_zoom_3.1.3.tgz";
       path = fetchurl {
         name = "react_medium_image_zoom___react_medium_image_zoom_3.1.3.tgz";
@@ -13106,11 +13322,11 @@
       };
     }
     {
-      name = "react_merge_refs___react_merge_refs_1.1.0.tgz";
+      name = "react_merge_refs___react_merge_refs_2.0.1.tgz";
       path = fetchurl {
-        name = "react_merge_refs___react_merge_refs_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/react-merge-refs/-/react-merge-refs-1.1.0.tgz";
-        sha512 = "alTKsjEL0dKH/ru1Iyn7vliS2QRcBp9zZPGoWxUOvRGWPUYgjo+V01is7p04It6KhgrzhJGnIj9GgX8W4bZoCQ==";
+        name = "react_merge_refs___react_merge_refs_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/react-merge-refs/-/react-merge-refs-2.0.1.tgz";
+        sha512 = "pywF6oouJWuqL26xV3OruRSIqai31R9SdJX/I3gP2q8jLxUnA1IwXcLW8werUHLZOrp4N7YOeQNZrh/BKrHI4A==";
       };
     }
     {
@@ -13194,11 +13410,11 @@
       };
     }
     {
-      name = "react_window___react_window_1.8.6.tgz";
+      name = "react_window___react_window_1.8.7.tgz";
       path = fetchurl {
-        name = "react_window___react_window_1.8.6.tgz";
-        url  = "https://registry.yarnpkg.com/react-window/-/react-window-1.8.6.tgz";
-        sha512 = "8VwEEYyjz6DCnGBsd+MgkD0KJ2/OXFULyDtorIiTz+QzwoP94tBoA7CnbtyXMm+cCeAUER5KJcPtWl9cpKbOBg==";
+        name = "react_window___react_window_1.8.7.tgz";
+        url  = "https://registry.yarnpkg.com/react-window/-/react-window-1.8.7.tgz";
+        sha512 = "JHEZbPXBpKMmoNO1bNhoXOOLg/ujhL/BU4IqVU9r8eQPcy5KQnGHIHDRkJ0ns9IM5+Aq5LNwt3j8t3tIrePQzA==";
       };
     }
     {
@@ -13218,14 +13434,6 @@
       };
     }
     {
-      name = "read_pkg___read_pkg_5.2.0.tgz";
-      path = fetchurl {
-        name = "read_pkg___read_pkg_5.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz";
-        sha512 = "Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==";
-      };
-    }
-    {
       name = "readable_stream___readable_stream_2.3.7.tgz";
       path = fetchurl {
         name = "readable_stream___readable_stream_2.3.7.tgz";
@@ -13882,19 +14090,11 @@
       };
     }
     {
-      name = "rxjs___rxjs_6.6.7.tgz";
+      name = "rxjs___rxjs_7.5.6.tgz";
       path = fetchurl {
-        name = "rxjs___rxjs_6.6.7.tgz";
-        url  = "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz";
-        sha512 = "hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==";
-      };
-    }
-    {
-      name = "rxjs___rxjs_7.5.5.tgz";
-      path = fetchurl {
-        name = "rxjs___rxjs_7.5.5.tgz";
-        url  = "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.5.tgz";
-        sha512 = "sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==";
+        name = "rxjs___rxjs_7.5.6.tgz";
+        url  = "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.6.tgz";
+        sha512 = "dnyv2/YsXhnm461G+R/Pe5bWP41Nm6LBXEYWI6eiFP4fiwx6WRI/CD0zbdVAudd9xwLEF2IDcKXLHit0FYjUzw==";
       };
     }
     {
@@ -14042,14 +14242,6 @@
       };
     }
     {
-      name = "semver___semver_5.7.1.tgz";
-      path = fetchurl {
-        name = "semver___semver_5.7.1.tgz";
-        url  = "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz";
-        sha512 = "sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==";
-      };
-    }
-    {
       name = "semver___semver_7.0.0.tgz";
       path = fetchurl {
         name = "semver___semver_7.0.0.tgz";
@@ -14058,6 +14250,14 @@
       };
     }
     {
+      name = "semver___semver_5.7.1.tgz";
+      path = fetchurl {
+        name = "semver___semver_5.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz";
+        sha512 = "sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==";
+      };
+    }
+    {
       name = "semver___semver_6.3.0.tgz";
       path = fetchurl {
         name = "semver___semver_6.3.0.tgz";
@@ -14138,14 +14338,6 @@
       };
     }
     {
-      name = "set_immediate_shim___set_immediate_shim_1.0.1.tgz";
-      path = fetchurl {
-        name = "set_immediate_shim___set_immediate_shim_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz";
-        sha1 = "SysbJ+uAip+NzEgaWOXlb1mfP2E=";
-      };
-    }
-    {
       name = "set_value___set_value_2.0.1.tgz";
       path = fetchurl {
         name = "set_value___set_value_2.0.1.tgz";
@@ -14158,7 +14350,7 @@
       path = fetchurl {
         name = "setimmediate___setimmediate_1.0.5.tgz";
         url  = "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz";
-        sha1 = "KQy7Iy4waULX1+qbg3Mqt4VvgoU=";
+        sha512 = "MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==";
       };
     }
     {
@@ -14234,6 +14426,14 @@
       };
     }
     {
+      name = "shell_quote___shell_quote_1.7.3.tgz";
+      path = fetchurl {
+        name = "shell_quote___shell_quote_1.7.3.tgz";
+        url  = "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.3.tgz";
+        sha512 = "Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw==";
+      };
+    }
+    {
       name = "side_channel___side_channel_1.0.4.tgz";
       path = fetchurl {
         name = "side_channel___side_channel_1.0.4.tgz";
@@ -14250,11 +14450,11 @@
       };
     }
     {
-      name = "signal_exit___signal_exit_3.0.5.tgz";
+      name = "signal_exit___signal_exit_3.0.7.tgz";
       path = fetchurl {
-        name = "signal_exit___signal_exit_3.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.5.tgz";
-        sha512 = "KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==";
+        name = "signal_exit___signal_exit_3.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz";
+        sha512 = "wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==";
       };
     }
     {
@@ -14474,6 +14674,14 @@
       };
     }
     {
+      name = "source_map_support___source_map_support_0.5.13.tgz";
+      path = fetchurl {
+        name = "source_map_support___source_map_support_0.5.13.tgz";
+        url  = "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz";
+        sha512 = "SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==";
+      };
+    }
+    {
       name = "source_map_support___source_map_support_0.4.18.tgz";
       path = fetchurl {
         name = "source_map_support___source_map_support_0.4.18.tgz";
@@ -14562,38 +14770,6 @@
       };
     }
     {
-      name = "spdx_correct___spdx_correct_3.1.1.tgz";
-      path = fetchurl {
-        name = "spdx_correct___spdx_correct_3.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz";
-        sha512 = "cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==";
-      };
-    }
-    {
-      name = "spdx_exceptions___spdx_exceptions_2.3.0.tgz";
-      path = fetchurl {
-        name = "spdx_exceptions___spdx_exceptions_2.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz";
-        sha512 = "/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==";
-      };
-    }
-    {
-      name = "spdx_expression_parse___spdx_expression_parse_3.0.1.tgz";
-      path = fetchurl {
-        name = "spdx_expression_parse___spdx_expression_parse_3.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz";
-        sha512 = "cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==";
-      };
-    }
-    {
-      name = "spdx_license_ids___spdx_license_ids_3.0.6.tgz";
-      path = fetchurl {
-        name = "spdx_license_ids___spdx_license_ids_3.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.6.tgz";
-        sha512 = "+orQK83kyMva3WyPf59k1+Y525csj5JejicWut55zeTWANuN17qSiSLUXWtzHeNWORSvT7GLDJ/E/XiIWoXBTw==";
-      };
-    }
-    {
       name = "split_on_first___split_on_first_1.1.0.tgz";
       path = fetchurl {
         name = "split_on_first___split_on_first_1.1.0.tgz";
@@ -14842,19 +15018,19 @@
       };
     }
     {
-      name = "string.prototype.trimend___string.prototype.trimend_1.0.4.tgz";
+      name = "string.prototype.trimend___string.prototype.trimend_1.0.5.tgz";
       path = fetchurl {
-        name = "string.prototype.trimend___string.prototype.trimend_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz";
-        sha512 = "y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==";
+        name = "string.prototype.trimend___string.prototype.trimend_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz";
+        sha512 = "I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==";
       };
     }
     {
-      name = "string.prototype.trimstart___string.prototype.trimstart_1.0.4.tgz";
+      name = "string.prototype.trimstart___string.prototype.trimstart_1.0.5.tgz";
       path = fetchurl {
-        name = "string.prototype.trimstart___string.prototype.trimstart_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz";
-        sha512 = "jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==";
+        name = "string.prototype.trimstart___string.prototype.trimstart_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz";
+        sha512 = "THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==";
       };
     }
     {
@@ -15162,11 +15338,11 @@
       };
     }
     {
-      name = "terser___terser_4.8.0.tgz";
+      name = "terser___terser_4.8.1.tgz";
       path = fetchurl {
-        name = "terser___terser_4.8.0.tgz";
-        url  = "https://registry.yarnpkg.com/terser/-/terser-4.8.0.tgz";
-        sha512 = "EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==";
+        name = "terser___terser_4.8.1.tgz";
+        url  = "https://registry.yarnpkg.com/terser/-/terser-4.8.1.tgz";
+        sha512 = "4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==";
       };
     }
     {
@@ -15218,14 +15394,6 @@
       };
     }
     {
-      name = "throat___throat_6.0.1.tgz";
-      path = fetchurl {
-        name = "throat___throat_6.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/throat/-/throat-6.0.1.tgz";
-        sha512 = "8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==";
-      };
-    }
-    {
       name = "throng___throng_5.0.0.tgz";
       path = fetchurl {
         name = "throng___throng_5.0.0.tgz";
@@ -15498,11 +15666,11 @@
       };
     }
     {
-      name = "tr46___tr46_2.1.0.tgz";
+      name = "tr46___tr46_3.0.0.tgz";
       path = fetchurl {
-        name = "tr46___tr46_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz";
-        sha512 = "15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==";
+        name = "tr46___tr46_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/tr46/-/tr46-3.0.0.tgz";
+        sha512 = "l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==";
       };
     }
     {
@@ -15606,7 +15774,7 @@
       path = fetchurl {
         name = "type_check___type_check_0.3.2.tgz";
         url  = "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz";
-        sha1 = "WITKtRLPHTVeP7eE8wgEsrUg23I=";
+        sha512 = "ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==";
       };
     }
     {
@@ -15642,14 +15810,6 @@
       };
     }
     {
-      name = "type_fest___type_fest_0.6.0.tgz";
-      path = fetchurl {
-        name = "type_fest___type_fest_0.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz";
-        sha512 = "q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==";
-      };
-    }
-    {
       name = "type_fest___type_fest_0.8.1.tgz";
       path = fetchurl {
         name = "type_fest___type_fest_0.8.1.tgz";
@@ -15706,11 +15866,11 @@
       };
     }
     {
-      name = "typescript___typescript_4.4.4.tgz";
+      name = "typescript___typescript_4.7.4.tgz";
       path = fetchurl {
-        name = "typescript___typescript_4.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/typescript/-/typescript-4.4.4.tgz";
-        sha512 = "DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA==";
+        name = "typescript___typescript_4.7.4.tgz";
+        url  = "https://registry.yarnpkg.com/typescript/-/typescript-4.7.4.tgz";
+        sha512 = "C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==";
       };
     }
     {
@@ -15738,11 +15898,11 @@
       };
     }
     {
-      name = "unbox_primitive___unbox_primitive_1.0.1.tgz";
+      name = "unbox_primitive___unbox_primitive_1.0.2.tgz";
       path = fetchurl {
-        name = "unbox_primitive___unbox_primitive_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.1.tgz";
-        sha512 = "tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==";
+        name = "unbox_primitive___unbox_primitive_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz";
+        sha512 = "61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==";
       };
     }
     {
@@ -16002,14 +16162,6 @@
       };
     }
     {
-      name = "util.promisify___util.promisify_1.0.1.tgz";
-      path = fetchurl {
-        name = "util.promisify___util.promisify_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.1.tgz";
-        sha512 = "g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==";
-      };
-    }
-    {
       name = "util___util_0.10.3.tgz";
       path = fetchurl {
         name = "util___util_0.10.3.tgz";
@@ -16026,6 +16178,14 @@
       };
     }
     {
+      name = "util___util_0.12.4.tgz";
+      path = fetchurl {
+        name = "util___util_0.12.4.tgz";
+        url  = "https://registry.yarnpkg.com/util/-/util-0.12.4.tgz";
+        sha512 = "bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==";
+      };
+    }
+    {
       name = "utila___utila_0.4.0.tgz";
       path = fetchurl {
         name = "utila___utila_0.4.0.tgz";
@@ -16050,11 +16210,11 @@
       };
     }
     {
-      name = "uuid___uuid_3.3.2.tgz";
+      name = "uuid___uuid_8.0.0.tgz";
       path = fetchurl {
-        name = "uuid___uuid_3.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz";
-        sha512 = "yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==";
+        name = "uuid___uuid_8.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/uuid/-/uuid-8.0.0.tgz";
+        sha512 = "jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw==";
       };
     }
     {
@@ -16074,19 +16234,11 @@
       };
     }
     {
-      name = "v8_to_istanbul___v8_to_istanbul_8.1.0.tgz";
-      path = fetchurl {
-        name = "v8_to_istanbul___v8_to_istanbul_8.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.1.0.tgz";
-        sha512 = "/PRhfd8aTNp9Ggr62HPzXg2XasNFGy5PBt0Rp04du7/8GNNSgxFL6WBTkgMKSL9bFjH+8kKEG3f37FmxiTqUUA==";
-      };
-    }
-    {
-      name = "validate_npm_package_license___validate_npm_package_license_3.0.4.tgz";
+      name = "v8_to_istanbul___v8_to_istanbul_9.0.1.tgz";
       path = fetchurl {
-        name = "validate_npm_package_license___validate_npm_package_license_3.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz";
-        sha512 = "DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==";
+        name = "v8_to_istanbul___v8_to_istanbul_9.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.0.1.tgz";
+        sha512 = "74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w==";
       };
     }
     {
@@ -16186,11 +16338,11 @@
       };
     }
     {
-      name = "w3c_xmlserializer___w3c_xmlserializer_2.0.0.tgz";
+      name = "w3c_xmlserializer___w3c_xmlserializer_3.0.0.tgz";
       path = fetchurl {
-        name = "w3c_xmlserializer___w3c_xmlserializer_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz";
-        sha512 = "4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==";
+        name = "w3c_xmlserializer___w3c_xmlserializer_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-3.0.0.tgz";
+        sha512 = "3WFqGEgSXIyGhOmAFtlicJNMjEps8b1MG31NCA0/vOF9+nKMUW1ckhi9cnNHmf88Rzw5V+dwIwsm2C7X8k9aQg==";
       };
     }
     {
@@ -16242,19 +16394,11 @@
       };
     }
     {
-      name = "webidl_conversions___webidl_conversions_5.0.0.tgz";
-      path = fetchurl {
-        name = "webidl_conversions___webidl_conversions_5.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz";
-        sha512 = "VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==";
-      };
-    }
-    {
-      name = "webidl_conversions___webidl_conversions_6.1.0.tgz";
+      name = "webidl_conversions___webidl_conversions_7.0.0.tgz";
       path = fetchurl {
-        name = "webidl_conversions___webidl_conversions_6.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz";
-        sha512 = "qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==";
+        name = "webidl_conversions___webidl_conversions_7.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-7.0.0.tgz";
+        sha512 = "VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==";
       };
     }
     {
@@ -16330,11 +16474,11 @@
       };
     }
     {
-      name = "whatwg_encoding___whatwg_encoding_1.0.5.tgz";
+      name = "whatwg_encoding___whatwg_encoding_2.0.0.tgz";
       path = fetchurl {
-        name = "whatwg_encoding___whatwg_encoding_1.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz";
-        sha512 = "b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==";
+        name = "whatwg_encoding___whatwg_encoding_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz";
+        sha512 = "p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==";
       };
     }
     {
@@ -16346,11 +16490,27 @@
       };
     }
     {
-      name = "whatwg_mimetype___whatwg_mimetype_2.3.0.tgz";
+      name = "whatwg_mimetype___whatwg_mimetype_3.0.0.tgz";
+      path = fetchurl {
+        name = "whatwg_mimetype___whatwg_mimetype_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz";
+        sha512 = "nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==";
+      };
+    }
+    {
+      name = "whatwg_url___whatwg_url_10.0.0.tgz";
+      path = fetchurl {
+        name = "whatwg_url___whatwg_url_10.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-10.0.0.tgz";
+        sha512 = "CLxxCmdUby142H5FZzn4D8ikO1cmypvXVQktsgosNy4a4BHrDHeciBBGZhb0bNoR5/MltoCatso+vFjjGx8t0w==";
+      };
+    }
+    {
+      name = "whatwg_url___whatwg_url_11.0.0.tgz";
       path = fetchurl {
-        name = "whatwg_mimetype___whatwg_mimetype_2.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz";
-        sha512 = "M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==";
+        name = "whatwg_url___whatwg_url_11.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-11.0.0.tgz";
+        sha512 = "RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==";
       };
     }
     {
@@ -16370,14 +16530,6 @@
       };
     }
     {
-      name = "whatwg_url___whatwg_url_8.7.0.tgz";
-      path = fetchurl {
-        name = "whatwg_url___whatwg_url_8.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz";
-        sha512 = "gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==";
-      };
-    }
-    {
       name = "which_boxed_primitive___which_boxed_primitive_1.0.2.tgz";
       path = fetchurl {
         name = "which_boxed_primitive___which_boxed_primitive_1.0.2.tgz";
@@ -16394,6 +16546,14 @@
       };
     }
     {
+      name = "which_typed_array___which_typed_array_1.1.8.tgz";
+      path = fetchurl {
+        name = "which_typed_array___which_typed_array_1.1.8.tgz";
+        url  = "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.8.tgz";
+        sha512 = "Jn4e5PItbcAHyLoRDwvPj1ypu27DJbtdYXUa5zsinrUx77Uvfb0cXwwnGMTn7cjUfhhqgVQnVJCwF+7cgU7tpw==";
+      };
+    }
+    {
       name = "which___which_1.3.1.tgz";
       path = fetchurl {
         name = "which___which_1.3.1.tgz";
@@ -16634,6 +16794,14 @@
       };
     }
     {
+      name = "write_file_atomic___write_file_atomic_4.0.1.tgz";
+      path = fetchurl {
+        name = "write_file_atomic___write_file_atomic_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-4.0.1.tgz";
+        sha512 = "nSKUxgAbyioruk6hU87QzVbY279oYT6uiwgDoujth2ju4mJ+TZau7SQBhtbTmUyuNYTuXnSyRn66FV0+eCgcrQ==";
+      };
+    }
+    {
       name = "write___write_1.0.3.tgz";
       path = fetchurl {
         name = "write___write_1.0.3.tgz";
@@ -16650,11 +16818,11 @@
       };
     }
     {
-      name = "ws___ws_8.5.0.tgz";
+      name = "ws___ws_8.8.1.tgz";
       path = fetchurl {
-        name = "ws___ws_8.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/ws/-/ws-8.5.0.tgz";
-        sha512 = "BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==";
+        name = "ws___ws_8.8.1.tgz";
+        url  = "https://registry.yarnpkg.com/ws/-/ws-8.8.1.tgz";
+        sha512 = "bGy2JzvzkPowEJV++hF07hAD6niYSr0JzBNo/J29WsB57A2r7Wlc1UFcTR9IzrPvuNVO4B8LGqF8qcpsVOhJCA==";
       };
     }
     {
@@ -16682,11 +16850,11 @@
       };
     }
     {
-      name = "xml_name_validator___xml_name_validator_3.0.0.tgz";
+      name = "xml_name_validator___xml_name_validator_4.0.0.tgz";
       path = fetchurl {
-        name = "xml_name_validator___xml_name_validator_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz";
-        sha512 = "A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==";
+        name = "xml_name_validator___xml_name_validator_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-4.0.0.tgz";
+        sha512 = "ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==";
       };
     }
     {
@@ -16842,6 +17010,14 @@
       };
     }
     {
+      name = "yargs_parser___yargs_parser_21.0.1.tgz";
+      path = fetchurl {
+        name = "yargs_parser___yargs_parser_21.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.0.1.tgz";
+        sha512 = "9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg==";
+      };
+    }
+    {
       name = "yargs___yargs_13.3.2.tgz";
       path = fetchurl {
         name = "yargs___yargs_13.3.2.tgz";
@@ -16858,11 +17034,11 @@
       };
     }
     {
-      name = "yargs___yargs_17.2.1.tgz";
+      name = "yargs___yargs_17.5.1.tgz";
       path = fetchurl {
-        name = "yargs___yargs_17.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/yargs/-/yargs-17.2.1.tgz";
-        sha512 = "XfR8du6ua4K6uLGm5S6fA+FIJom/MdJcFNVY8geLlp2v8GYbOXD4EB1tPNZsRn4vBzKGMgb5DRZMeWuFc2GO8Q==";
+        name = "yargs___yargs_17.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/yargs/-/yargs-17.5.1.tgz";
+        sha512 = "t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==";
       };
     }
     {
diff --git a/pkgs/servers/web-apps/snipe-it/default.nix b/pkgs/servers/web-apps/snipe-it/default.nix
index cc49fc40c70f3..e164bed7ed1fb 100644
--- a/pkgs/servers/web-apps/snipe-it/default.nix
+++ b/pkgs/servers/web-apps/snipe-it/default.nix
@@ -19,13 +19,13 @@ let
 
 in package.override rec {
   pname = "snipe-it";
-  version = "6.0.10";
+  version = "6.0.11";
 
   src = fetchFromGitHub {
     owner = "snipe";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-RLUcN2gk3uU2aOqs2poShSRfwQJ6CipxBRqJeO2RNzw=";
+    sha256 = "sha256-r9F3/Lyb7eTeywe1BTgYd3v9ENGzh6ab3WOMdd8aalc=";
   };
 
   meta = with lib; {
diff --git a/pkgs/servers/web-apps/sogo/default.nix b/pkgs/servers/web-apps/sogo/default.nix
index 94672ffe6f107..286883722f64d 100644
--- a/pkgs/servers/web-apps/sogo/default.nix
+++ b/pkgs/servers/web-apps/sogo/default.nix
@@ -14,8 +14,8 @@ gnustep.stdenv.mkDerivation rec {
     hash = "sha256-3Xy0y1sdixy4gXhzhP9mfWeaDmOVJty+X95xCyxayPE=";
   };
 
-  nativeBuildInputs = [ gnustep.make makeWrapper python3 ];
-  buildInputs = [ gnustep.base sope openssl libmemcached curl libsodium libytnef libzip pkg-config openldap oath-toolkit ]
+  nativeBuildInputs = [ gnustep.make makeWrapper python3 pkg-config ];
+  buildInputs = [ gnustep.base sope openssl libmemcached curl libsodium libytnef libzip openldap oath-toolkit ]
     ++ lib.optional enableActiveSync libwbxml;
 
   patches = lib.optional enableActiveSync ./enable-activesync.patch;
diff --git a/pkgs/servers/web-apps/wordpress/packages/README.md b/pkgs/servers/web-apps/wordpress/packages/README.md
new file mode 100644
index 0000000000000..bb9dc033f3b32
--- /dev/null
+++ b/pkgs/servers/web-apps/wordpress/packages/README.md
@@ -0,0 +1,46 @@
+= Adding plugin, theme or language =
+
+To extend the wordpressPackages set, add a new line to the corresponding json
+file with the codename of the package:
+
+- `wordpress-languages.json` for language packs
+- `wordpress-themes.json` for themes
+- `wordpress-plugins.json` for plugins
+
+The codename is the last part in the url of the plugin or theme page, for
+example `cookie-notice` in in the url
+`https://wordpress.org/plugins/cookie-notice/` or `twentytwenty` in
+`https://wordpress.org/themes/twentytwenty/`.
+
+In case of language packages, the name consists of country and language codes.
+For example `de_DE` for country code `de` (Germany) and language `DE` (German).
+For available translations and language codes see [upstream translation repository](https://translate.wordpress.org).
+
+To regenerate the nixpkgs wordpressPackages set, run:
+
+``` 
+./generate.sh
+``` 
+
+After that you can commit and submit the changes.
+
+= Usage with the Wordpress module =
+
+The plugins will be available in the namespace `wordpressPackages.plugins`.
+Using it together with the Wordpress module could look like this:
+
+``` 
+services.wordpress = {
+  sites."blog.${config.networking.domain}" = {
+    plugins = with pkgs.wordpressPackages.plugins; [
+      anti-spam-bee
+      code-syntax-block
+      cookie-notice
+      lightbox-with-photoswipe
+      wp-gdpr-compliance
+    ];
+  };
+};
+```
+
+The same scheme applies to `themes` and `languages`.
diff --git a/pkgs/servers/web-apps/wordpress/packages/default.nix b/pkgs/servers/web-apps/wordpress/packages/default.nix
new file mode 100644
index 0000000000000..d8968de20c397
--- /dev/null
+++ b/pkgs/servers/web-apps/wordpress/packages/default.nix
@@ -0,0 +1,85 @@
+# Source: https://git.helsinki.tools/helsinki-systems/wp4nix/-/blob/master/default.nix
+# Licensed under: MIT
+# Slightly modified
+
+{ lib, newScope, plugins, themes, languages }:
+
+let packages = self:
+  let
+    generatedJson = {
+      inherit plugins themes languages;
+    };
+
+  in {
+    # Create a generic WordPress package. Most arguments are just passed
+    # to `mkDerivation`. The version is automatically filtered for weird characters.
+    mkWordpressDerivation = self.callPackage ({ stdenvNoCC, lib, filterWPString, gettext, wp-cli }:
+      { type, pname, version, ... }@args:
+        assert lib.any (x: x == type) [ "plugin" "theme" "language" ];
+        stdenvNoCC.mkDerivation ({
+          pname = "wordpress-${type}-${pname}";
+          version = filterWPString version;
+
+          dontConfigure = true;
+          dontBuild = true;
+
+          installPhase = ''
+            runHook preInstall
+            cp -R ./. $out
+            runHook postInstall
+          '';
+
+          passthru = {
+            wpName = pname;
+          } // (args.passthru or {});
+        } // lib.optionalAttrs (type == "language") {
+          nativeBuildInputs = [ gettext wp-cli ];
+          dontBuild = false;
+          buildPhase = ''
+            runHook preBuild
+
+            find -name '*.po' -print0 | while IFS= read -d "" -r po; do
+              msgfmt -o $(basename "$po" .po).mo "$po"
+            done
+            wp i18n make-json .
+            rm *.po
+
+            runHook postBuild
+          '';
+        } // removeAttrs args [ "type" "pname" "version" "passthru" ])) {};
+
+    # Create a derivation from the official wordpress.org packages.
+    # This takes the type, the pname and the data generated from the go tool.
+    mkOfficialWordpressDerivation = self.callPackage ({ mkWordpressDerivation, fetchWordpress }:
+      { type, pname, data }:
+      mkWordpressDerivation {
+        inherit type pname;
+        version = data.version;
+
+        src = fetchWordpress type data;
+      }) {};
+
+    # Filter out all characters that might occur in a version string but that that are not allowed
+    # in store paths.
+    filterWPString = builtins.replaceStrings [ " " "," "/" "&" ";" ''"'' "'" "$" ":" "(" ")" "[" "]" "{" "}" "|" "*" "\t" ] [ "_" "." "." "" "" "" "" "" "" "" "" "" "" "" "" "-" "" "" ];
+
+    # Fetch a package from the official wordpress.org SVN.
+    # The data supplied is the data straight from the go tool.
+    fetchWordpress = self.callPackage ({ fetchsvn }: type: data: fetchsvn {
+      inherit (data) rev sha256;
+      url = if type == "plugin" || type == "theme" then
+        "https://" + type + "s.svn.wordpress.org/" + data.path
+      else if type == "language" then
+        "https://i18n.svn.wordpress.org/core/" + data.version + "/" + data.path
+      else if type == "pluginLanguage" then
+        "https://i18n.svn.wordpress.org/plugins/" + data.path
+      else if type == "themeLanguage" then
+        "https://i18n.svn.wordpress.org/themes/" + data.path
+      else
+        throw "fetchWordpress: invalid package type ${type}";
+    }) {};
+
+  } // lib.mapAttrs (type: pkgs: lib.makeExtensible (_: lib.mapAttrs (pname: data: self.mkOfficialWordpressDerivation { type = lib.removeSuffix "s" type; inherit pname data; }) pkgs)) generatedJson;
+
+# This creates an extensible scope.
+in (lib.makeExtensible (_: (lib.makeScope newScope packages))).extend (selfWP: superWP: {})
diff --git a/pkgs/servers/web-apps/wordpress/packages/generate.sh b/pkgs/servers/web-apps/wordpress/packages/generate.sh
new file mode 100755
index 0000000000000..ebe58f526982f
--- /dev/null
+++ b/pkgs/servers/web-apps/wordpress/packages/generate.sh
@@ -0,0 +1,26 @@
+#!/usr/bin/env nix-shell
+#! nix-shell -I nixpkgs=../../../../.. -i bash -p wp4nix
+
+set -e
+set -u
+set -o pipefail
+set -x
+
+NIX_VERSION=$(nix --version|cut -d ' ' -f 3|cut -c -3)
+if [[ "$NIX_VERSION" > 2.3 ]]; then
+  nixFlags="--option experimental-features nix-command eval --raw --impure --expr"
+else
+  nixFlags="eval --raw"
+fi
+
+export WP_VERSION=$(nix $nixFlags '(import <nixpkgs> {}).wordpress.version')
+
+PLUGINS=`cat wordpress-plugins.json | jq -r '.[]' | sed -z 's/\n/,/g;s/,$/\n/'`
+THEMES=`cat wordpress-themes.json | jq -r '.[]' | sed -z 's/\n/,/g;s/,$/\n/'`
+LANGUAGES=`cat wordpress-languages.json | jq -r '.[]' | sed -z 's/\n/,/g;s/,$/\n/'`
+
+wp4nix -p $PLUGINS -pl en
+wp4nix -t $THEMES -tl en
+wp4nix -l $LANGUAGES
+
+rm *.log themeLanguages.json pluginLanguages.json
diff --git a/pkgs/servers/web-apps/wordpress/packages/languages.json b/pkgs/servers/web-apps/wordpress/packages/languages.json
new file mode 100644
index 0000000000000..f5847cad4c9be
--- /dev/null
+++ b/pkgs/servers/web-apps/wordpress/packages/languages.json
@@ -0,0 +1,14 @@
+{
+  "de_DE": {
+    "path": "de_DE",
+    "rev": "932483",
+    "sha256": "1n4rf1bkr8xr6yqxd7c6s4ha3ll819fbfiqln57is9knfpdd6fnq",
+    "version": "5.8"
+  },
+  "fr_FR": {
+    "path": "fr_FR",
+    "rev": "932480",
+    "sha256": "0lmbalcvwfc6331vdazmhr2lp3w418rsp78mrj1rs7a44y8f1igj",
+    "version": "5.8"
+  }
+}
diff --git a/pkgs/servers/web-apps/wordpress/packages/plugins.json b/pkgs/servers/web-apps/wordpress/packages/plugins.json
new file mode 100644
index 0000000000000..85b103da39d02
--- /dev/null
+++ b/pkgs/servers/web-apps/wordpress/packages/plugins.json
@@ -0,0 +1,128 @@
+{
+  "add-widget-after-content": {
+    "path": "add-widget-after-content/tags/2.4.4",
+    "rev": "2671853",
+    "sha256": "0snrkd783f1qxry01858l3r0ll9381xhsig7wlmrvi1zm5jf2drc",
+    "version": "2.4.4"
+  },
+  "antispam-bee": {
+    "path": "antispam-bee/tags/2.11.1",
+    "rev": "2748316",
+    "sha256": "1hjq1yazvypc84lwcjq7za1n3s7vcxd9mc50adpinkwjjph1cgxn",
+    "version": "2.11.1"
+  },
+  "async-javascript": {
+    "path": "async-javascript/tags/2.21.08.31",
+    "rev": "2760769",
+    "sha256": "1yf3pj0nn4gyl0a2wfvznpwb7y0glxg19rgny3bh38k4pj9mli49",
+    "version": "2.21.08.31"
+  },
+  "breeze": {
+    "path": "breeze/tags/2.0.9",
+    "rev": "2786857",
+    "sha256": "0nn3kalwb50kyd563jiixc134hiygkbzs8zkxgsbgmsi511vfzkz",
+    "version": "2.0.9"
+  },
+  "co-authors-plus": {
+    "path": "co-authors-plus/tags/3.5.2",
+    "rev": "2735979",
+    "sha256": "0ph3iskixi2j6bsnlpd4x8wixzm2hbdzchnyfz9mxzzys93qb41k",
+    "version": "3.5.2"
+  },
+  "code-syntax-block": {
+    "path": "code-syntax-block/tags/3.1.1",
+    "rev": "2747615",
+    "sha256": "0dqdsl7f3ihshvly6cqd5l4cbimx5skmips514wvifspwggwmmjm",
+    "version": "3.1.1"
+  },
+  "cookie-notice": {
+    "path": "cookie-notice/tags/2.4.1",
+    "rev": "2790369",
+    "sha256": "1a1qnmi81z8c30d6zgcd5xqd08cxkq71g2hzb6xcbdv04036nf77",
+    "version": "2.4.1"
+  },
+  "disable-xml-rpc": {
+    "path": "disable-xml-rpc/tags/1.0.1",
+    "rev": "2561901",
+    "sha256": "04x5dj79bx5avx8db991nlhrpd3qv3maniqmzwnyd8ab2zblzx83",
+    "version": "1.0.1"
+  },
+  "jetpack": {
+    "path": "jetpack/tags/11.4",
+    "rev": "2794223",
+    "sha256": "123kfn6wn23sz7zv8yk8rszrxwnjgjfrm0cqpwmrs3h1plfqv7kg",
+    "version": "11.4"
+  },
+  "jetpack-lite": {
+    "path": "jetpack-lite/tags/3.0.3",
+    "rev": "1895157",
+    "sha256": "04wq8cnhzgzrhm5pjwicsnavc46n6wdmb6xf8gz4wwl1di2hl471",
+    "version": "3.0.3"
+  },
+  "lightbox-photoswipe": {
+    "path": "lightbox-photoswipe/tags/5.0.16",
+    "rev": "2790158",
+    "sha256": "1pd83v7nz2l002z1y27h97gmhcdcbvsfi8x7llrg9vzijrx0vf18",
+    "version": "5.0.16"
+  },
+  "mailpoet": {
+    "path": "mailpoet/tags/3.100.1",
+    "rev": "2795092",
+    "sha256": "0wgzmicf6mmkmkwsxxaz2d8sylvq6v0a98nbc2yswd11l4igc8ld",
+    "version": "3.100.1"
+  },
+  "opengraph": {
+    "path": "opengraph/tags/1.11.0",
+    "rev": "2730257",
+    "sha256": "133mzlccbdpppps1aq83n2az4xzikak61k4rdzg9aax23l5ggss6",
+    "version": "1.11.0"
+  },
+  "simple-login-captcha": {
+    "path": "simple-login-captcha/tags/1.3.3",
+    "rev": "2729196",
+    "sha256": "1wy9cbibbngjarc8c9qn4bil3qc8i0h2kz0k364zcsnfpwi8jk3c",
+    "version": "1.3.3"
+  },
+  "static-mail-sender-configurator": {
+    "path": "static-mail-sender-configurator/tags/0.9.3",
+    "rev": "2574393",
+    "sha256": "0dirfpm71av0a6qhfsczn94ry9gam4zsyin0czzy8bjzbwd6m649",
+    "version": "0.9.3"
+  },
+  "webp-converter-for-media": {
+    "path": "webp-converter-for-media/tags/5.2.4",
+    "rev": "2791011",
+    "sha256": "18y0yrngywz0zlxd67cn16nvzypb395rhsfavfyl6pq0ygymcxnm",
+    "version": "5.2.4"
+  },
+  "wp-change-email-sender": {
+    "path": "wp-change-email-sender/trunk",
+    "rev": "2655179",
+    "sha256": "0dv5604mn4ly2zm6mwqf5y8vp9cfiw70v66bimvgbahxz4i2w23q",
+    "version": "1.0"
+  },
+  "wp-gdpr-compliance": {
+    "path": "wp-gdpr-compliance/tags/2.0.20",
+    "rev": "2793947",
+    "sha256": "1vvwmi03hjyqw566m75m8lxbhnl3y4h461531a26xwsbmjgbmf9a",
+    "version": "2.0.20"
+  },
+  "wp-mail-smtp": {
+    "path": "wp-mail-smtp/tags/3.6.1",
+    "rev": "2795051",
+    "sha256": "14ry7302c4h7d7lrasiql9jiy3x54ylim3y7j5b633g5lyzadynl",
+    "version": "3.6.1"
+  },
+  "wp-statistics": {
+    "path": "wp-statistics/tags/13.2.6",
+    "rev": "2781181",
+    "sha256": "0vzlhlnna2dx4kyi24rqhbrx5n5zsw51hqgsaslfiyyir64dkzgz",
+    "version": "13.2.6"
+  },
+  "wp-user-avatars": {
+    "path": "wp-user-avatars/trunk",
+    "rev": "2540784",
+    "sha256": "1g21nl6xs9zyq0ainjwa06wl90975l8f9rj0fa20zkmw17w2mdgl",
+    "version": "1.4.1"
+  }
+}
diff --git a/pkgs/servers/web-apps/wordpress/packages/themes.json b/pkgs/servers/web-apps/wordpress/packages/themes.json
new file mode 100644
index 0000000000000..a67d0d9818ae5
--- /dev/null
+++ b/pkgs/servers/web-apps/wordpress/packages/themes.json
@@ -0,0 +1,14 @@
+{
+  "twentytwentyone": {
+    "path": "twentytwentyone/1.6",
+    "rev": "168450",
+    "sha256": "0wfqdyd59hifnncjv59ywjak050gaggsvjx7r01agh44nzkr84fs",
+    "version": "1.6"
+  },
+  "twentytwentytwo": {
+    "path": "twentytwentytwo/1.2",
+    "rev": "168451",
+    "sha256": "0ry7h5bd9h97q38jmsgymm05dfml0ycdhqn7iskpdlc1nnrjrk04",
+    "version": "1.2"
+  }
+}
diff --git a/pkgs/servers/web-apps/wordpress/packages/wordpress-languages.json b/pkgs/servers/web-apps/wordpress/packages/wordpress-languages.json
new file mode 100644
index 0000000000000..53227cfa0fcf0
--- /dev/null
+++ b/pkgs/servers/web-apps/wordpress/packages/wordpress-languages.json
@@ -0,0 +1,4 @@
+[
+  "de_DE"
+, "fr_FR"
+]
diff --git a/pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json b/pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json
new file mode 100644
index 0000000000000..bef597c40f839
--- /dev/null
+++ b/pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json
@@ -0,0 +1,23 @@
+[
+  "add-widget-after-content"
+, "antispam-bee"
+, "async-javascript"
+, "breeze"
+, "code-syntax-block"
+, "cookie-notice"
+, "co-authors-plus"
+, "disable-xml-rpc"
+, "jetpack"
+, "jetpack-lite"
+, "lightbox-photoswipe"
+, "mailpoet"
+, "opengraph"
+, "simple-login-captcha"
+, "static-mail-sender-configurator"
+, "webp-converter-for-media"
+, "wp-mail-smtp"
+, "wp-gdpr-compliance"
+, "wp-statistics"
+, "wp-user-avatars"
+, "wp-change-email-sender"
+]
diff --git a/pkgs/servers/web-apps/wordpress/packages/wordpress-themes.json b/pkgs/servers/web-apps/wordpress/packages/wordpress-themes.json
new file mode 100644
index 0000000000000..80141817ee9b3
--- /dev/null
+++ b/pkgs/servers/web-apps/wordpress/packages/wordpress-themes.json
@@ -0,0 +1,4 @@
+[
+  "twentytwentytwo"
+, "twentytwentyone"
+]
diff --git a/pkgs/servers/x11/quartz-wm/default.nix b/pkgs/servers/x11/quartz-wm/default.nix
index 9beb0553395ef..2d132b389be68 100644
--- a/pkgs/servers/x11/quartz-wm/default.nix
+++ b/pkgs/servers/x11/quartz-wm/default.nix
@@ -12,6 +12,7 @@ in stdenv.mkDerivation {
     ./no_title_crash.patch
     ./extern-patch.patch
   ];
+  nativeBuildInputs = [ pkg-config ];
   buildInputs = [
     xorg.libXinerama
     xorg.libAppleWM
@@ -19,7 +20,6 @@ in stdenv.mkDerivation {
     xorg.libXrandr
     xorg.libXext
     pixman
-    pkg-config
     AppKit Xplugin Foundation
   ];
   meta = with lib; {
diff --git a/pkgs/servers/xinetd/default.nix b/pkgs/servers/xinetd/default.nix
index e296112045d49..d7d1c94d9de2a 100644
--- a/pkgs/servers/xinetd/default.nix
+++ b/pkgs/servers/xinetd/default.nix
@@ -1,31 +1,32 @@
-{ fetchurl, fetchpatch, lib, stdenv, libtirpc }:
+{ lib
+, stdenv
+, fetchurl
+, pkg-config
+, libtirpc
+}:
 
 stdenv.mkDerivation rec {
   pname = "xinetd";
-  version = "2.3.15";
+  version = "2.3.15.4";
 
   src = fetchurl {
-    url = "http://www.xinetd.org/xinetd-${version}.tar.gz";
-    sha256 = "1qsv1al506x33gh92bqa8w21k7mxqrbsrwmxvkj0amn72420ckmz";
+    url = "https://github.com/openSUSE/xinetd/releases/download/${version}/xinetd-${version}.tar.xz";
+    hash = "sha256-K6pYEBC8cDYavfo38SHpKuucXOZ/mnGRPOvWk1nMllQ=";
   };
 
-  patches = [
-    (fetchpatch {
-      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/sys-apps/xinetd/files/xinetd-2.3.15-creds.patch?id=426002bfe2789fb6213fba832c8bfee634d68d02";
-      name = "CVE-2013-4342.patch";
-      sha256 = "1iqcrqzgisz4b6vamprzg2y6chai7qpifqcihisrwbjwbc4wzj8v";
-    })
+  nativeBuildInputs = [
+    pkg-config
   ];
 
-  buildInputs = [ libtirpc ];
-
-  NIX_CFLAGS_COMPILE = [ "-I${libtirpc.dev}/include/tirpc" ];
-  NIX_LDFLAGS = [ "-ltirpc" ];
+  buildInputs = [
+    libtirpc
+  ];
 
   meta = {
     description = "Secure replacement for inetd";
     platforms = lib.platforms.linux;
-    homepage = "http://xinetd.org";
+    homepage = "https://github.com/openSUSE/xinetd";
     license = lib.licenses.free;
+    maintainers = with lib.maintainers; [ fgaz ];
   };
 }
diff --git a/pkgs/servers/zoneminder/default.nix b/pkgs/servers/zoneminder/default.nix
index a698c2e9f7bfa..e790108327e02 100644
--- a/pkgs/servers/zoneminder/default.nix
+++ b/pkgs/servers/zoneminder/default.nix
@@ -41,27 +41,6 @@
 # around it.
 
 let
-  modules = [
-    {
-      path = "web/api/app/Plugin/Crud";
-      src = fetchFromGitHub {
-        owner = "ZoneMinder";
-        repo = "crud";
-        rev = "3.1.0-zm";
-        sha256 = "061avzyml7mla4hlx057fm8a9yjh6m6qslgyzn74cv5p2y7f463l";
-      };
-    }
-    {
-      path = "web/api/app/Plugin/CakePHP-Enum-Behavior";
-      src = fetchFromGitHub {
-        owner = "ZoneMinder";
-        repo = "CakePHP-Enum-Behavior";
-        rev = "1.0-zm";
-        sha256 = "0zsi6s8xymb183kx3szspbrwfjqcgga7786zqvydy6hc8c909cgx";
-      };
-    }
-  ];
-
   addons = [
     {
       path = "scripts/ZoneMinder/lib/ZoneMinder/Control/Xiaomi.pm";
@@ -78,13 +57,13 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "zoneminder";
-  version = "1.36.15";
+  version = "1.36.28";
 
   src = fetchFromGitHub {
     owner  = "ZoneMinder";
     repo   = "zoneminder";
     rev    = version;
-    sha256 = "1qlsg7gd9kpjdbq9d5yrjmc7g1pbscrg4sws7xrdln1z8509sv50";
+    sha256 = "sha256-x00u7AWMNS+wAO/tdWi7GYbMZZM7XnszCO57ZDlm0J0=";
     fetchSubmodules = true;
   };
 
@@ -94,11 +73,6 @@ in stdenv.mkDerivation rec {
   ];
 
   postPatch = ''
-    ${lib.concatStringsSep "\n" (map (e: ''
-      rm -rf ${e.path}/*
-      cp -r ${e.src}/* ${e.path}/
-    '') modules)}
-
     rm -rf web/api/lib/Cake/Test
 
     ${lib.concatStringsSep "\n" (map (e: ''
diff --git a/pkgs/shells/carapace/default.nix b/pkgs/shells/carapace/default.nix
index f1f6a5028172c..842bfe9ca973b 100644
--- a/pkgs/shells/carapace/default.nix
+++ b/pkgs/shells/carapace/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "carapace";
-  version = "0.16.0";
+  version = "0.17.0";
 
   src = fetchFromGitHub {
     owner = "rsteube";
     repo = "${pname}-bin";
     rev = "v${version}";
-    sha256 = "sha256-gIEJvnLX223g6bhfFYrXMTmGGBibc0uewfGqEppOYek=";
+    sha256 = "sha256-nRxNa0Knq2rmm57+7m/LnHFt4eic6bop+yhjHoX0Jc4=";
   };
 
-  vendorSha256 = "sha256-o3BuNQMBZ/rEkXh+9C0DEKbo0Nto7rihM9yuvQFrGws=";
+  vendorSha256 = "sha256-iYZk2G9axC2jVjLwz6PkQKDQCQVmXqRvYmhTOz0OS2U=";
 
   subPackages = [ "./cmd/carapace" ];
 
diff --git a/pkgs/shells/murex/default.nix b/pkgs/shells/murex/default.nix
index 4474577d2e87f..af274958baa3c 100644
--- a/pkgs/shells/murex/default.nix
+++ b/pkgs/shells/murex/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "murex";
-  version = "2.11.2030";
+  version = "2.11.2200";
 
   src = fetchFromGitHub {
     owner = "lmorg";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-/W0nNmMdjtkktwkNGHrxHHibqqbujC591nC4NwEG47U=";
+    sha256 = "sha256-nyrZttTOWpr7rBc2Ks04cWMGZFmd7lVIz6mHa0m+dDE=";
   };
 
   vendorSha256 = "sha256-hLz36ESf6To6sT/ha/yXyhG0U1gGw8HDfnrPJnws25g=";
diff --git a/pkgs/shells/zsh/antibody/default.nix b/pkgs/shells/zsh/antibody/default.nix
index 1db4321259df2..0ecbb9bfdb6f4 100644
--- a/pkgs/shells/zsh/antibody/default.nix
+++ b/pkgs/shells/zsh/antibody/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildGoModule, fetchFromGitHub }:
+{ lib, stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "antibody";
@@ -22,5 +22,13 @@ buildGoModule rec {
     homepage = "https://github.com/getantibody/antibody";
     license = licenses.mit;
     maintainers = with maintainers; [ Br1ght0ne ];
+
+    # golang.org/x/sys needs to be updated due to:
+    #
+    #   https://github.com/golang/go/issues/49219
+    #
+    # but this package is no longer maintained.
+    #
+    broken = stdenv.isDarwin;
   };
 }
diff --git a/pkgs/shells/zsh/oh-my-zsh/default.nix b/pkgs/shells/zsh/oh-my-zsh/default.nix
index d3e6c5978f8ba..ff524568b00cd 100644
--- a/pkgs/shells/zsh/oh-my-zsh/default.nix
+++ b/pkgs/shells/zsh/oh-my-zsh/default.nix
@@ -5,15 +5,15 @@
 , git, nix, nixfmt, jq, coreutils, gnused, curl, cacert, bash }:
 
 stdenv.mkDerivation rec {
-  version = "2022-09-10";
+  version = "2022-10-07";
   pname = "oh-my-zsh";
-  rev = "7dcabbe6826073ef6069c8a4b6f9a943f00d2df0";
+  rev = "11daa7dd5f22acadef1135000e92cc899e22c134";
 
   src = fetchFromGitHub {
     inherit rev;
     owner = "ohmyzsh";
     repo = "ohmyzsh";
-    sha256 = "Mk2GQh7Yh0cyklSEIutIIUEQNMAcPC1i3QT5K6lCEt8=";
+    sha256 = "xtDymRvgm3VHTY3Hh6ikGTY8DQ5jn7Oc44b3HMXz75U=";
   };
 
   strictDeps = true;
diff --git a/pkgs/stdenv/darwin/default.nix b/pkgs/stdenv/darwin/default.nix
index ff56f1de02261..9a7cd9aa9dee5 100644
--- a/pkgs/stdenv/darwin/default.nix
+++ b/pkgs/stdenv/darwin/default.nix
@@ -698,6 +698,11 @@ rec {
         libc = pkgs.darwin.Libsystem;
         shellPackage = pkgs.bash;
         inherit bootstrapTools;
+      } // lib.optionalAttrs useAppleSDKLibs {
+        # This objc4 will be propagated to all builds using the final stdenv,
+        # and we shouldn't mix different builds, because they would be
+        # conflicting LLVM modules. Export it here so we can grab it later.
+        inherit (pkgs.darwin) objc4;
       };
 
       allowedRequisites = (with pkgs; [
diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh
index f0fcb30451dd8..62f9121d73d6b 100644
--- a/pkgs/stdenv/generic/setup.sh
+++ b/pkgs/stdenv/generic/setup.sh
@@ -1100,7 +1100,7 @@ buildPhase() {
         # Old bash empty array hack
         # shellcheck disable=SC2086
         local flagsArray=(
-            ${enableParallelBuilding:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}}
+            ${enableParallelBuilding:+-j${NIX_BUILD_CORES}}
             SHELL=$SHELL
             $makeFlags "${makeFlagsArray[@]}"
             $buildFlags "${buildFlagsArray[@]}"
@@ -1139,7 +1139,7 @@ checkPhase() {
         # Old bash empty array hack
         # shellcheck disable=SC2086
         local flagsArray=(
-            ${enableParallelChecking:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}}
+            ${enableParallelChecking:+-j${NIX_BUILD_CORES}}
             SHELL=$SHELL
             $makeFlags "${makeFlagsArray[@]}"
             ${checkFlags:-VERBOSE=y} "${checkFlagsArray[@]}"
@@ -1273,7 +1273,7 @@ installCheckPhase() {
         # Old bash empty array hack
         # shellcheck disable=SC2086
         local flagsArray=(
-            ${enableParallelChecking:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}}
+            ${enableParallelChecking:+-j${NIX_BUILD_CORES}}
             SHELL=$SHELL
             $makeFlags "${makeFlagsArray[@]}"
             $installCheckFlags "${installCheckFlagsArray[@]}"
diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix
index 6e61b6f12be11..03856d5c07111 100644
--- a/pkgs/stdenv/linux/default.nix
+++ b/pkgs/stdenv/linux/default.nix
@@ -415,12 +415,6 @@ in
       inherit (prevStage.stdenv) fetchurlBoot;
 
       extraAttrs = {
-        # remove before 22.11
-        glibc = lib.warn
-          ( "`stdenv.glibc` is deprecated and will be removed in release 22.11."
-           + " Please use `pkgs.glibc` instead.")
-          prevStage.glibc;
-
         inherit bootstrapTools;
         shellPackage = prevStage.bash;
       };
diff --git a/pkgs/test/cuda/cuda-samples/extension.nix b/pkgs/test/cuda/cuda-samples/extension.nix
index 4c93845d1db6d..9ffca188cb253 100644
--- a/pkgs/test/cuda/cuda-samples/extension.nix
+++ b/pkgs/test/cuda/cuda-samples/extension.nix
@@ -11,6 +11,9 @@ final: prev: let
     "11.4" = "082dkk5y34wyvjgj2p5j1d00rk8xaxb9z0mhvz16bd469r1bw2qk";
     "11.5" = "sha256-AKRZbke0K59lakhTi8dX2cR2aBuWPZkiQxyKaZTvHrI=";
     "11.6" = "sha256-AsLNmAplfuQbXg9zt09tXAuFJ524EtTYsQuUlV1tPkE=";
+    # the tag 11.7 does not exists: see https://github.com/NVIDIA/cuda-samples/issues/128
+    # maybe fixed by https://github.com/NVIDIA/cuda-samples/pull/133
+    "11.7" = throw "The tag 11.7 of cuda-samples does not exists (see see https://github.com/NVIDIA/cuda-samples/issues/128)";
   }.${prev.cudaVersion};
 
 in {
diff --git a/pkgs/tools/X11/opentabletdriver/deps.nix b/pkgs/tools/X11/opentabletdriver/deps.nix
index f0b5252950067..c074419c44b9d 100644
--- a/pkgs/tools/X11/opentabletdriver/deps.nix
+++ b/pkgs/tools/X11/opentabletdriver/deps.nix
@@ -1,3 +1,6 @@
+# This file was automatically generated by passthru.fetch-deps.
+# Please dont edit it manually, your changes might get overwritten!
+
 { fetchNuGet }: [
   (fetchNuGet { pname = "AtkSharp"; version = "3.24.24.34"; sha256 = "1jn1vgi9xm0jp7769k6sbdi8d273kigjrsh93i6s4c03hqxv7cqs"; })
   (fetchNuGet { pname = "CairoSharp"; version = "3.24.24.34"; sha256 = "0pydn1k0cam1gclg9sc1sbnmbyzh28qlc5qanyxcylwghink3kgz"; })
@@ -14,6 +17,8 @@
   (fetchNuGet { pname = "MessagePack"; version = "2.1.194"; sha256 = "1v2gyd9sd6hppfhlzngmzzhnpr39b95rwrqq0r9zzp480b6vzaj0"; })
   (fetchNuGet { pname = "MessagePack.Annotations"; version = "2.1.194"; sha256 = "1jkhq3hiy4brvzsywl4p4jb9jrnzs3vmgr3s8fxpb1dzafadw8b0"; })
   (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "5.0.0"; sha256 = "0d7sjr89zwq0wxirf8la05hfalv9nhvlczg1c7a508k8aw79jvfg"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "5.0.17"; sha256 = "183xgqzlwd5lhacxdwcjl8vcq7r7xypv0hddps9k32mmmwf83d8h"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "5.0.17"; sha256 = "066fwdlssbv556zd9w1x87x1j8j4kafj9rxyy0692bssdb4gcyc8"; })
   (fetchNuGet { pname = "Microsoft.Bcl.AsyncInterfaces"; version = "1.1.1"; sha256 = "0a1ahssqds2ympr7s4xcxv5y8jgxs7ahd6ah6fbgglj4rki1f1vw"; })
   (fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "16.9.4"; sha256 = "11wiyy3ykgk1sa9amy3lgcsg2v7d1sz59ggw647vx8ibpjxijjpp"; })
   (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.0.1"; sha256 = "0zxc0apx1gcx361jlq8smc9pfdgmyjh6hpka8dypc9w23nlsh6yj"; })
@@ -21,7 +26,11 @@
   (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "6.0.0-rc.1.21451.13"; sha256 = "0r6945jq7c2f1wjifq514zvngicndjqfnsjya6hqw0yzah0jr56c"; })
   (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "6.0.0-rc.1.21451.13"; sha256 = "11dg16x6g0gssb143qpghxz1s41himvhr7yhjwxs9hacx4ij2dm1"; })
   (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "16.9.4"; sha256 = "1jdx05zmrqj1s7xfgn3wgy10qb5cl1n1jcj5kz43zvkw1amc7ra4"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "5.0.17"; sha256 = "07v7vyqm556xr1ypkazfp6gh6drgf20zkwbhkpja8bwdcr6lphbb"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "5.0.17"; sha256 = "1lc2jhr4ikffi5ylyf8f6ya6k0hdj0wp1l0017grrwd4m5ajj4vv"; })
   (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "5.0.0"; sha256 = "1p62khf9zk23lh91lvz7plv3g1nzmm3b5szqrcm6mb8w3sjk03wi"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "5.0.17"; sha256 = "16whaq82pj6fqa0vam3a0va9ly843aa1z12hza040vn6252kk9fq"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "5.0.17"; sha256 = "0jgcfs3jc98jfyaaamssznckbpnaygplk8pjsp6dswpansz5bnnq"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1"; sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.1"; sha256 = "164wycgng4mi9zqi2pnsf1pq6gccbqvw6ib916mqizgjmd8f44pj"; })
@@ -44,6 +53,23 @@
   (fetchNuGet { pname = "NuGet.Frameworks"; version = "5.0.0"; sha256 = "18ijvmj13cwjdrrm52c8fpq021531zaz4mj4b4zapxaqzzxf2qjr"; })
   (fetchNuGet { pname = "Octokit"; version = "0.50.0"; sha256 = "1ignj5i6a1c19qqrw00wlr9fdjmwrxkxz7gdxj0x653w84gbv7qq"; })
   (fetchNuGet { pname = "PangoSharp"; version = "3.24.24.34"; sha256 = "1r0h14cklglfpv1lhv93cxmzi2w7d5s03gzpq3j5dmrz43flg9zw"; })
+  (fetchNuGet { pname = "runtime.any.System.Collections"; version = "4.3.0"; sha256 = "0bv5qgm6vr47ynxqbnkc7i797fdi8gbjjxii173syrx14nmrkwg0"; })
+  (fetchNuGet { pname = "runtime.any.System.Diagnostics.Tools"; version = "4.3.0"; sha256 = "1wl76vk12zhdh66vmagni66h5xbhgqq7zkdpgw21jhxhvlbcl8pk"; })
+  (fetchNuGet { pname = "runtime.any.System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "00j6nv2xgmd3bi347k00m7wr542wjlig53rmj28pmw7ddcn97jbn"; })
+  (fetchNuGet { pname = "runtime.any.System.Globalization"; version = "4.3.0"; sha256 = "1daqf33hssad94lamzg01y49xwndy2q97i2lrb7mgn28656qia1x"; })
+  (fetchNuGet { pname = "runtime.any.System.Globalization.Calendars"; version = "4.3.0"; sha256 = "1ghhhk5psqxcg6w88sxkqrc35bxcz27zbqm2y5p5298pv3v7g201"; })
+  (fetchNuGet { pname = "runtime.any.System.IO"; version = "4.3.0"; sha256 = "0l8xz8zn46w4d10bcn3l4yyn4vhb3lrj2zw8llvz7jk14k4zps5x"; })
+  (fetchNuGet { pname = "runtime.any.System.Reflection"; version = "4.3.0"; sha256 = "02c9h3y35pylc0zfq3wcsvc5nqci95nrkq0mszifc0sjx7xrzkly"; })
+  (fetchNuGet { pname = "runtime.any.System.Reflection.Extensions"; version = "4.3.0"; sha256 = "0zyri97dfc5vyaz9ba65hjj1zbcrzaffhsdlpxc9bh09wy22fq33"; })
+  (fetchNuGet { pname = "runtime.any.System.Reflection.Primitives"; version = "4.3.0"; sha256 = "0x1mm8c6iy8rlxm8w9vqw7gb7s1ljadrn049fmf70cyh42vdfhrf"; })
+  (fetchNuGet { pname = "runtime.any.System.Resources.ResourceManager"; version = "4.3.0"; sha256 = "03kickal0iiby82wa5flar18kyv82s9s6d4xhk5h4bi5kfcyfjzl"; })
+  (fetchNuGet { pname = "runtime.any.System.Runtime"; version = "4.3.0"; sha256 = "1cqh1sv3h5j7ixyb7axxbdkqx6cxy00p4np4j91kpm492rf4s25b"; })
+  (fetchNuGet { pname = "runtime.any.System.Runtime.Handles"; version = "4.3.0"; sha256 = "0bh5bi25nk9w9xi8z23ws45q5yia6k7dg3i4axhfqlnj145l011x"; })
+  (fetchNuGet { pname = "runtime.any.System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "0c3g3g3jmhlhw4klrc86ka9fjbl7i59ds1fadsb2l8nqf8z3kb19"; })
+  (fetchNuGet { pname = "runtime.any.System.Text.Encoding"; version = "4.3.0"; sha256 = "0aqqi1v4wx51h51mk956y783wzags13wa7mgqyclacmsmpv02ps3"; })
+  (fetchNuGet { pname = "runtime.any.System.Text.Encoding.Extensions"; version = "4.3.0"; sha256 = "0lqhgqi0i8194ryqq6v2gqx0fb86db2gqknbm0aq31wb378j7ip8"; })
+  (fetchNuGet { pname = "runtime.any.System.Threading.Tasks"; version = "4.3.0"; sha256 = "03mnvkhskbzxddz4hm113zsch1jyzh2cs450dk3rgfjp8crlw1va"; })
+  (fetchNuGet { pname = "runtime.any.System.Threading.Timer"; version = "4.3.0"; sha256 = "0aw4phrhwqz9m61r79vyfl5la64bjxj8l34qnrcwb28v49fg2086"; })
   (fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "16rnxzpk5dpbbl1x354yrlsbvwylrq456xzpsha1n9y3glnhyx9d"; })
   (fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "0rwpqngkqiapqc5c2cpkj7idhngrgss5qpnqg0yh40mbyflcxf8i"; })
   (fetchNuGet { pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0hkg03sgm2wyq8nqk6dbm9jh5vcq57ry42lkqdmfklrw89lsmr59"; })
@@ -71,6 +97,14 @@
   (fetchNuGet { pname = "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "0q0n5q1r1wnqmr5i5idsrd9ywl33k0js4pngkwq9p368mbxp8x1w"; })
   (fetchNuGet { pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1p4dgxax6p7rlgj4q73k73rslcnz4wdcv8q2flg1s8ygwcm58ld5"; })
   (fetchNuGet { pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "1x0g58pbpjrmj2x2qw17rdwwnrcl0wvim2hdwz48lixvwvp22n9c"; })
+  (fetchNuGet { pname = "runtime.unix.Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0y61k9zbxhdi0glg154v30kkq7f8646nif8lnnxbvkjpakggd5id"; })
+  (fetchNuGet { pname = "runtime.unix.System.Console"; version = "4.3.0"; sha256 = "1pfpkvc6x2if8zbdzg9rnc5fx51yllprl8zkm5npni2k50lisy80"; })
+  (fetchNuGet { pname = "runtime.unix.System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "1lps7fbnw34bnh3lm31gs5c0g0dh7548wfmb8zz62v0zqz71msj5"; })
+  (fetchNuGet { pname = "runtime.unix.System.IO.FileSystem"; version = "4.3.0"; sha256 = "14nbkhvs7sji5r1saj2x8daz82rnf9kx28d3v2qss34qbr32dzix"; })
+  (fetchNuGet { pname = "runtime.unix.System.Net.Primitives"; version = "4.3.0"; sha256 = "0bdnglg59pzx9394sy4ic66kmxhqp8q8bvmykdxcbs5mm0ipwwm4"; })
+  (fetchNuGet { pname = "runtime.unix.System.Net.Sockets"; version = "4.3.0"; sha256 = "03npdxzy8gfv035bv1b9rz7c7hv0rxl5904wjz51if491mw0xy12"; })
+  (fetchNuGet { pname = "runtime.unix.System.Private.Uri"; version = "4.3.0"; sha256 = "1jx02q6kiwlvfksq1q9qr17fj78y5v6mwsszav4qcz9z25d5g6vk"; })
+  (fetchNuGet { pname = "runtime.unix.System.Runtime.Extensions"; version = "4.3.0"; sha256 = "0pnxxmm8whx38dp6yvwgmh22smknxmqs5n513fc7m4wxvs1bvi4p"; })
   (fetchNuGet { pname = "SharpZipLib"; version = "1.3.3"; sha256 = "1gij11wfj1mqm10631cjpnhzw882bnzx699jzwhdqakxm1610q8x"; })
   (fetchNuGet { pname = "StreamJsonRpc"; version = "2.6.121"; sha256 = "0xzvpk17w2skndzdg47j7gkrrvw6521db4mv8lc3v8hm97vs9m76"; })
   (fetchNuGet { pname = "System.AppContext"; version = "4.3.0"; sha256 = "1649qvy3dar900z3g817h17nl8jp4ka5vcfmsr05kh0fshn7j3ya"; })
@@ -117,11 +151,13 @@
   (fetchNuGet { pname = "System.Memory"; version = "4.5.4"; sha256 = "14gbbs22mcxwggn0fcfs1b062521azb9fbb7c113x0mq6dzq9h6y"; })
   (fetchNuGet { pname = "System.Net.Http"; version = "4.3.0"; sha256 = "1i4gc757xqrzflbk7kc5ksn20kwwfjhw9w7pgdkn19y3cgnl302j"; })
   (fetchNuGet { pname = "System.Net.Http"; version = "4.3.4"; sha256 = "0kdp31b8819v88l719j6my0yas6myv9d1viql3qz5577mv819jhl"; })
+  (fetchNuGet { pname = "System.Net.NameResolution"; version = "4.3.0"; sha256 = "15r75pwc0rm3vvwsn8rvm2krf929mjfwliv0mpicjnii24470rkq"; })
   (fetchNuGet { pname = "System.Net.Primitives"; version = "4.3.0"; sha256 = "0c87k50rmdgmxx7df2khd9qj7q35j9rzdmm2572cc55dygmdk3ii"; })
   (fetchNuGet { pname = "System.Net.Sockets"; version = "4.3.0"; sha256 = "1ssa65k6chcgi6mfmzrznvqaxk8jp0gvl77xhf1hbzakjnpxspla"; })
   (fetchNuGet { pname = "System.Net.WebSockets"; version = "4.3.0"; sha256 = "1gfj800078kggcgl0xyl00a6y5k4wwh2k2qm69rjy22wbmq7fy4p"; })
   (fetchNuGet { pname = "System.ObjectModel"; version = "4.0.12"; sha256 = "1sybkfi60a4588xn34nd9a58png36i0xr4y4v4kqpg8wlvy5krrj"; })
   (fetchNuGet { pname = "System.ObjectModel"; version = "4.3.0"; sha256 = "191p63zy5rpqx7dnrb3h7prvgixmk168fhvvkkvhlazncf8r3nc2"; })
+  (fetchNuGet { pname = "System.Private.Uri"; version = "4.3.0"; sha256 = "04r1lkdnsznin0fj4ya1zikxiqr0h6r6a1ww2dsm60gqhdrf0mvx"; })
   (fetchNuGet { pname = "System.Reflection"; version = "4.1.0"; sha256 = "1js89429pfw79mxvbzp8p3q93il6rdff332hddhzi5wqglc4gml9"; })
   (fetchNuGet { pname = "System.Reflection"; version = "4.3.0"; sha256 = "0xl55k0mw8cd8ra6dxzh974nxif58s3k1rjv1vbd7gjbjr39j11m"; })
   (fetchNuGet { pname = "System.Reflection.Emit"; version = "4.0.1"; sha256 = "0ydqcsvh6smi41gyaakglnv252625hf29f7kywy2c70nhii2ylqp"; })
@@ -156,6 +192,7 @@
   (fetchNuGet { pname = "System.Runtime.Numerics"; version = "4.3.0"; sha256 = "19rav39sr5dky7afygh309qamqqmi9kcwvz3i0c5700v0c5cg61z"; })
   (fetchNuGet { pname = "System.Runtime.Serialization.Primitives"; version = "4.1.1"; sha256 = "042rfjixknlr6r10vx2pgf56yming8lkjikamg3g4v29ikk78h7k"; })
   (fetchNuGet { pname = "System.Security.AccessControl"; version = "4.6.0"; sha256 = "1wl1dyghi0qhpap1vgfhg2ybdyyhy9vc2a7dpm1xb30vfgmlkjmf"; })
+  (fetchNuGet { pname = "System.Security.Claims"; version = "4.3.0"; sha256 = "0jvfn7j22l3mm28qjy3rcw287y9h65ha4m940waaxah07jnbzrhn"; })
   (fetchNuGet { pname = "System.Security.Cryptography.Algorithms"; version = "4.3.0"; sha256 = "03sq183pfl5kp7gkvq77myv7kbpdnq3y0xj7vi4q1kaw54sny0ml"; })
   (fetchNuGet { pname = "System.Security.Cryptography.Cng"; version = "4.3.0"; sha256 = "1k468aswafdgf56ab6yrn7649kfqx2wm9aslywjam1hdmk5yypmv"; })
   (fetchNuGet { pname = "System.Security.Cryptography.Csp"; version = "4.3.0"; sha256 = "1x5wcrddf2s3hb8j78cry7yalca4lb5vfnkrysagbn6r9x6xvrx1"; })
@@ -163,6 +200,8 @@
   (fetchNuGet { pname = "System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0givpvvj8yc7gv4lhb6s1prq6p2c4147204a0wib89inqzd87gqc"; })
   (fetchNuGet { pname = "System.Security.Cryptography.Primitives"; version = "4.3.0"; sha256 = "0pyzncsv48zwly3lw4f2dayqswcfvdwq2nz0dgwmi7fj3pn64wby"; })
   (fetchNuGet { pname = "System.Security.Cryptography.X509Certificates"; version = "4.3.0"; sha256 = "0valjcz5wksbvijylxijjxb1mp38mdhv03r533vnx1q3ikzdav9h"; })
+  (fetchNuGet { pname = "System.Security.Principal"; version = "4.3.0"; sha256 = "12cm2zws06z4lfc4dn31iqv7072zyi4m910d4r6wm8yx85arsfxf"; })
+  (fetchNuGet { pname = "System.Security.Principal.Windows"; version = "4.3.0"; sha256 = "00a0a7c40i3v4cb20s2cmh9csb5jv2l0frvnlzyfxh848xalpdwr"; })
   (fetchNuGet { pname = "System.Security.Principal.Windows"; version = "4.6.0"; sha256 = "1jmfzfz1n8hp63s5lja5xxpzkinbp6g59l3km9h8avjiisdrg5wm"; })
   (fetchNuGet { pname = "System.Text.Encoding"; version = "4.0.11"; sha256 = "1dyqv0hijg265dwxg6l7aiv74102d6xjiwplh2ar1ly6xfaa4iiw"; })
   (fetchNuGet { pname = "System.Text.Encoding"; version = "4.3.0"; sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr"; })
@@ -178,6 +217,7 @@
   (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.0.0"; sha256 = "1cb51z062mvc2i8blpzmpn9d9mm4y307xrwi65di8ri18cz5r1zr"; })
   (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.3.0"; sha256 = "1xxcx2xh8jin360yjwm4x4cf5y3a2bwpn2ygkfkwkicz7zk50s2z"; })
   (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.5.4"; sha256 = "0y6ncasgfcgnjrhynaf0lwpkpkmv4a07sswwkwbwb5h7riisj153"; })
+  (fetchNuGet { pname = "System.Threading.ThreadPool"; version = "4.3.0"; sha256 = "027s1f4sbx0y1xqw2irqn6x161lzj8qwvnh2gn78ciiczdv10vf1"; })
   (fetchNuGet { pname = "System.Threading.Timer"; version = "4.3.0"; sha256 = "1nx773nsx6z5whv8kaa1wjh037id2f1cxhb69pvgv12hd2b6qs56"; })
   (fetchNuGet { pname = "System.Xml.ReaderWriter"; version = "4.0.11"; sha256 = "0c6ky1jk5ada9m94wcadih98l6k1fvf6vi7vhn1msjixaha419l5"; })
   (fetchNuGet { pname = "System.Xml.ReaderWriter"; version = "4.3.0"; sha256 = "0c47yllxifzmh8gq6rq6l36zzvw4kjvlszkqa9wq3fr59n0hl3s1"; })
diff --git a/pkgs/tools/X11/smart-wallpaper/default.nix b/pkgs/tools/X11/smart-wallpaper/default.nix
index 2ddece8331494..f992838935c7d 100644
--- a/pkgs/tools/X11/smart-wallpaper/default.nix
+++ b/pkgs/tools/X11/smart-wallpaper/default.nix
@@ -6,6 +6,7 @@
 , killall
 , xwinwrap
 , swaybg
+, redshift
 }:
 
 stdenvNoCC.mkDerivation {
@@ -24,7 +25,7 @@ stdenvNoCC.mkDerivation {
   installPhase = ''
     install -Dm755 -t $out/bin smart-wallpaper
     wrapProgram $out/bin/smart-wallpaper \
-      --prefix PATH : ${lib.makeBinPath [ xdpyinfo killall xwinwrap swaybg ]}
+      --prefix PATH : ${lib.makeBinPath [ xdpyinfo killall xwinwrap swaybg redshift ]}
   '';
 
   meta = with lib; {
diff --git a/pkgs/tools/X11/vdpauinfo/default.nix b/pkgs/tools/X11/vdpauinfo/default.nix
index 35305d44635f4..a5fc87aaf6f2b 100644
--- a/pkgs/tools/X11/vdpauinfo/default.nix
+++ b/pkgs/tools/X11/vdpauinfo/default.nix
@@ -1,15 +1,16 @@
-{ lib, stdenv, fetchurl, pkg-config, libvdpau }:
+{ lib, stdenv, fetchurl, autoreconfHook, pkg-config, libvdpau }:
 
 stdenv.mkDerivation rec {
   pname = "vdpauinfo";
-  version = "1.3";
+  version = "1.5";
 
   src = fetchurl {
-    url = "https://gitlab.freedesktop.org/vdpau/vdpauinfo/uploads/6fa9718c507ef0fb6966170ef55344bf/${pname}-${version}.tar.gz";
-    sha256 = "0s6jdadnycyd1agsnfx7hrf17hmipasx1fpmppd4m1z6i9sp1i6g";
+    url = "https://gitlab.freedesktop.org/vdpau/vdpauinfo/-/archive/${version}/${pname}-${version}.tar.bz2";
+    hash = "sha256-uOs/r8Ow7KvSpY1NhD2A+D4Qs6iWJe4fZGfVj6nIiCw=";
   };
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [ autoreconfHook pkg-config ];
+
   buildInputs = [ libvdpau ];
 
   meta = with lib; {
@@ -17,6 +18,6 @@ stdenv.mkDerivation rec {
     description = "Tool to query the Video Decode and Presentation API for Unix (VDPAU) abilities of the system";
     license = licenses.mit; # expat version
     platforms = platforms.unix;
-    maintainers = [ maintainers.vcunat ];
+    maintainers = with maintainers; [ vcunat ];
   };
 }
diff --git a/pkgs/tools/X11/xnee/default.nix b/pkgs/tools/X11/xnee/default.nix
index d2236dfe354eb..c16da204f2f4f 100644
--- a/pkgs/tools/X11/xnee/default.nix
+++ b/pkgs/tools/X11/xnee/default.nix
@@ -33,9 +33,10 @@ stdenv.mkDerivation rec {
         --replace 'LIBSEMA="CCC"' 'LIBSEMA=""'
     '';
 
+  nativeBuildInputs = [ pkg-config ];
   buildInputs =
     [ libX11 xorgproto libXext libXtst gtk2
-      libXi pkg-config
+      libXi
       texinfo
     ];
 
diff --git a/pkgs/tools/admin/aws-sso-cli/default.nix b/pkgs/tools/admin/aws-sso-cli/default.nix
index f658597e8a7bf..3700c6ee81e4b 100644
--- a/pkgs/tools/admin/aws-sso-cli/default.nix
+++ b/pkgs/tools/admin/aws-sso-cli/default.nix
@@ -6,20 +6,19 @@
 }:
 buildGoModule rec {
   pname = "aws-sso-cli";
-  version = "1.9.2";
+  version = "1.9.4";
 
   src = fetchFromGitHub {
     owner = "synfinatic";
     repo = pname;
     rev = "v${version}";
-    sha256 = "9/dZfRmFAyE5NEMmuiVsRvwgqQrTNhXkTR9N0d3zgfk=";
+    sha256 = "sha256-xFAJrJSVf7wgJPUELCiwZVK0nBeOChuJBKROeJIRURc=";
   };
-  vendorSha256 = "BlSCLvlrKiubMtfFSZ5ppMmL2ZhJcBXxJfeRgMADYB4=";
+  vendorSha256 = "sha256-f0HrQzHK1JDWmRrnqG/N4X8TG0DP/IRWd6b7QR/vyzo=";
 
   nativeBuildInputs = [ makeWrapper ];
 
   postInstall = ''
-    mv $out/bin/cmd $out/bin/aws-sso
     wrapProgram $out/bin/aws-sso \
       --suffix PATH : ${lib.makeBinPath [ xdg-utils ]}
   '';
diff --git a/pkgs/tools/admin/eksctl/default.nix b/pkgs/tools/admin/eksctl/default.nix
index d324920a3f3b5..f62f1c4c687af 100644
--- a/pkgs/tools/admin/eksctl/default.nix
+++ b/pkgs/tools/admin/eksctl/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "eksctl";
-  version = "0.113.0";
+  version = "0.114.0";
 
   src = fetchFromGitHub {
     owner = "weaveworks";
     repo = pname;
     rev = version;
-    sha256 = "sha256-sHknZg34FHhYcf4l2oPQG6RGpybF0lC4n816YoVPeGk=";
+    sha256 = "sha256-m1R6g9KgbbdlBg7p1gVWpSu02azaqg7bQsFQ4gQB2hM=";
   };
 
-  vendorSha256 = "sha256-z/3aUSuAZSVsQ67JgUy6z3T91vKHlBjjQS4oSljl/nk=";
+  vendorSha256 = "sha256-glMu2GwMWsuIjLjCwskH90wn690tosLTCThd4LUZobo=";
 
   doCheck = false;
 
diff --git a/pkgs/tools/admin/exoscale-cli/default.nix b/pkgs/tools/admin/exoscale-cli/default.nix
index 4f3caefefa9bc..a643b9929c33a 100644
--- a/pkgs/tools/admin/exoscale-cli/default.nix
+++ b/pkgs/tools/admin/exoscale-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "exoscale-cli";
-  version = "1.59.1";
+  version = "1.59.3";
 
   src = fetchFromGitHub {
     owner = "exoscale";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "sha256-dkiUO68NtWU/GOOuJvihlOfnEjF+5sNSkOAttCrQEHI=";
+    sha256 = "sha256-QJDj8YW7gO0xvKqUYrgNlSfOqtk29C3nLsqO1BjowTE=";
   };
 
   vendorSha256 = null;
diff --git a/pkgs/tools/admin/google-cloud-sdk/components.json b/pkgs/tools/admin/google-cloud-sdk/components.json
index 114f7ac9832e7..40332cb9d04ec 100644
--- a/pkgs/tools/admin/google-cloud-sdk/components.json
+++ b/pkgs/tools/admin/google-cloud-sdk/components.json
@@ -5,7 +5,7 @@
         "checksum": "5a65179c291bc480696ca323d2f8c4874985458303eff8f233e16cdca4e88e6f",
         "contents_checksum": "038c999c7a7d70d5133eab7dc5868c4c3d0358431dad250f9833306af63016c8",
         "size": 800,
-        "source": "components/google-cloud-sdk-alpha-20220826172526.tar.gz",
+        "source": "components/google-cloud-sdk-alpha-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -22,8 +22,8 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20220826172526,
-        "version_string": "2022.08.26"
+        "build_number": 20220923141408,
+        "version_string": "2022.09.23"
       }
     },
     {
@@ -56,15 +56,15 @@
       "platform_required": false,
       "version": {
         "build_number": 0,
-        "version_string": "1.4.3"
+        "version_string": "1.4.4"
       }
     },
     {
       "data": {
-        "checksum": "9a11f7c85ffff2fd7ad4946b5c1ea97a1162e687b559244ee21228c8154d90dd",
-        "contents_checksum": "2cd31930d0f1326c8f3e0be44bb9ab3c5335ed38c170090f7105ba7accccb4a1",
-        "size": 19054806,
-        "source": "components/google-cloud-sdk-anthos-auth-darwin-arm-20220729144039.tar.gz",
+        "checksum": "f197d04a40be89731ecd7a653f83900dcc4dcd84e54e0833c529f9f8dfa4395c",
+        "contents_checksum": "fa1d4910c1ce188c5c450d655c5d15e59a146364ec46e3fda0791db76c2edd17",
+        "size": 20108065,
+        "source": "components/google-cloud-sdk-anthos-auth-darwin-arm-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -88,16 +88,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220729144039,
-        "version_string": "1.4.3"
+        "build_number": 20220923141408,
+        "version_string": "1.4.4"
       }
     },
     {
       "data": {
-        "checksum": "e04c7143047fd26430e26e3e67fa1768413d8ed1d6e014a0d96c6075559ce3aa",
-        "contents_checksum": "f7b242bfa64f2c78d388ce361a829f6d0bfd53e8f0fabfc6b4b14fa6e3ef4682",
-        "size": 19911349,
-        "source": "components/google-cloud-sdk-anthos-auth-darwin-x86_64-20220729144039.tar.gz",
+        "checksum": "5417a11523868f36d6b7c3199e3029cf9f43c8cb99c57dba016942db4141c939",
+        "contents_checksum": "06a661642cbd20bcb9965c7a4b505d4d72944c48c30b8ada71db7e53c898d505",
+        "size": 21183974,
+        "source": "components/google-cloud-sdk-anthos-auth-darwin-x86_64-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -121,16 +121,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220729144039,
-        "version_string": "1.4.3"
+        "build_number": 20220923141408,
+        "version_string": "1.4.4"
       }
     },
     {
       "data": {
-        "checksum": "030fa3615f5a7833a642047bdf531936c8d8fa827f5dbc44384de1a9e85df254",
-        "contents_checksum": "5119864e84d03d45dc0c00713072a8c34ecf95f18ac4633c938b581dbad86a28",
-        "size": 18716150,
-        "source": "components/google-cloud-sdk-anthos-auth-linux-arm-20220729144039.tar.gz",
+        "checksum": "c9dee264071d169de081880019f2f6fdb14edc22cbd20c19de76bb7cfa196eae",
+        "contents_checksum": "80ae98f1bfd1bd5cce9cddd642a1505d5401908d8890a22afa723490132b4342",
+        "size": 19755666,
+        "source": "components/google-cloud-sdk-anthos-auth-linux-arm-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -154,16 +154,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220729144039,
-        "version_string": "1.4.3"
+        "build_number": 20220923141408,
+        "version_string": "1.4.4"
       }
     },
     {
       "data": {
-        "checksum": "b3377c443f135a112ace343bb6ab6c20bf763e29512947f95bb239a381ee9b86",
-        "contents_checksum": "4543d98cd25e05c6bfb9e36d89b7b34a226218e5ce3feee07276377fde8f5967",
-        "size": 20095013,
-        "source": "components/google-cloud-sdk-anthos-auth-linux-x86_64-20220729144039.tar.gz",
+        "checksum": "b5efe7e9cd17f44905186242e663b97734183e14c66daed35553bc59bbf07a3a",
+        "contents_checksum": "57b753ecbde456973bed97af69aa7d1696694c1d30e9756d57658f79689fd925",
+        "size": 21362894,
+        "source": "components/google-cloud-sdk-anthos-auth-linux-x86_64-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -187,16 +187,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220729144039,
-        "version_string": "1.4.3"
+        "build_number": 20220923141408,
+        "version_string": "1.4.4"
       }
     },
     {
       "data": {
-        "checksum": "29c9c078662d94e48a601c2916ca9030e0d81f8f442e3e11a654c90ff0816838",
-        "contents_checksum": "78662933c423257a0aaafd07a1bcbf1eed864015a5e42ffbfb0d4caa30d9b5f0",
-        "size": 20093409,
-        "source": "components/google-cloud-sdk-anthos-auth-windows-x86_64-20220729144039.tar.gz",
+        "checksum": "ab73e4c82e95a7b707f2298906a7a5fb9a2c1fe741c4584ab16e507bcf7b6d5b",
+        "contents_checksum": "38d10a97aa0e5fbf2c927acda1c853c25a2b729615bebd2ac8fce4eb77c2466a",
+        "size": 21470866,
+        "source": "components/google-cloud-sdk-anthos-auth-windows-x86_64-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -220,8 +220,8 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220729144039,
-        "version_string": "1.4.3"
+        "build_number": 20220923141408,
+        "version_string": "1.4.4"
       }
     },
     {
@@ -1020,10 +1020,10 @@
     },
     {
       "data": {
-        "checksum": "e650804080d747f02c46b8b96d7e47aaa1aeed762da10725a558a3c9226f57b4",
-        "contents_checksum": "6c4ec2d67682d146f06aaddaafd1f568b3aacba413f0fd42b83cf41e1c8616ed",
-        "size": 53827944,
-        "source": "components/google-cloud-sdk-app-engine-java-20220819155753.tar.gz",
+        "checksum": "f4aebdd247726881bb16c12d2b33ff09574282653ec6a39c6dfd41508351ed8d",
+        "contents_checksum": "8a2e935650c2dbc309e1f6fa72ec964fb80bfc2f8fa5164916fcce00dbc7eb47",
+        "size": 76738516,
+        "source": "components/google-cloud-sdk-app-engine-java-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -1041,8 +1041,8 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20220819155753,
-        "version_string": "1.9.98.1"
+        "build_number": 20220923141408,
+        "version_string": "2.0.8"
       }
     },
     {
@@ -1432,7 +1432,7 @@
         "checksum": "707d412854a14450b4fddee199d258e75946fe51b44eb2980c8cd7e274c15760",
         "contents_checksum": "0b4e9d8e6394dc841aece07ca4da91920a460cbd7ec22495be4a2b4f46635b4d",
         "size": 797,
-        "source": "components/google-cloud-sdk-beta-20220826172526.tar.gz",
+        "source": "components/google-cloud-sdk-beta-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -1449,8 +1449,8 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20220826172526,
-        "version_string": "2022.08.26"
+        "build_number": 20220923141408,
+        "version_string": "2022.09.23"
       }
     },
     {
@@ -1765,10 +1765,10 @@
     },
     {
       "data": {
-        "checksum": "81e8b301e5f04c691ccc32b422bd5b515f58a83c61ffcc02eb0f727368ab74af",
-        "contents_checksum": "de1b4b7eb575cc2af80471030289edae18d4fbdda140df61864c4f85ec97f656",
-        "size": 1649904,
-        "source": "components/google-cloud-sdk-bq-20220826172526.tar.gz",
+        "checksum": "32c61f28a7ca91e20d33e5bb69df23a4e0d845583e77e7d2eaa2fd4443c6d573",
+        "contents_checksum": "f9a4cd505db656f70848c44b3c7198c06543bdcaffe5168b0af2ca868e909750",
+        "size": 1660964,
+        "source": "components/google-cloud-sdk-bq-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -1787,16 +1787,16 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20220826172526,
-        "version_string": "2.0.75"
+        "build_number": 20220923141408,
+        "version_string": "2.0.78"
       }
     },
     {
       "data": {
-        "checksum": "31be1877239d6dcb9113966dbeea4ff62f2526f0e39a860c34f141a150ef78c5",
-        "contents_checksum": "73f7b6b5d91c4b7ec7cd49116af97ac4e806c983850dadf9ac5b9c5364068d78",
-        "size": 1816,
-        "source": "components/google-cloud-sdk-bq-nix-20220805142045.tar.gz",
+        "checksum": "f1417d278b3814ed9e70fa6af25835a18228a10dca6482a91bf650584463e7d8",
+        "contents_checksum": "c27a1e54bd9a2e2a7005fc771294fadd88850b3f7f69ee9bc239a1468eb0f79b",
+        "size": 1837,
+        "source": "components/google-cloud-sdk-bq-nix-20220920185015.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -1821,8 +1821,8 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220805142045,
-        "version_string": "2.0.75"
+        "build_number": 20220920185015,
+        "version_string": "2.0.77"
       }
     },
     {
@@ -2818,15 +2818,15 @@
       "platform_required": false,
       "version": {
         "build_number": 0,
-        "version_string": "1.4.3"
+        "version_string": "1.4.5"
       }
     },
     {
       "data": {
-        "checksum": "70917c386da1adc19e650b58285b73e5c0ae487748b926edb68e506f3be27c33",
-        "contents_checksum": "78a0616222d1caca2dae4ccec6f0f030af2c70b49b2369b002bfbe265b6e5399",
-        "size": 28519205,
-        "source": "components/google-cloud-sdk-cloud-spanner-emulator-linux-x86_64-20220719210002.tar.gz",
+        "checksum": "f2e205c542b4ec2225791878a7fc350b33118b4d42183ca1103f0e392593a8e4",
+        "contents_checksum": "8101181c7cff6d3ffb98d2cc209f151dfc64944470957161129740ca1c9b00e2",
+        "size": 29784440,
+        "source": "components/google-cloud-sdk-cloud-spanner-emulator-linux-x86_64-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -2851,8 +2851,8 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220719210002,
-        "version_string": "1.4.3"
+        "build_number": 20220923141408,
+        "version_string": "1.4.5"
       }
     },
     {
@@ -3152,15 +3152,15 @@
       "platform_required": false,
       "version": {
         "build_number": 0,
-        "version_string": "1.92.0"
+        "version_string": "1.93.0"
       }
     },
     {
       "data": {
-        "checksum": "e69ad0ad6158e75c1a5e50cbd6e47712ae1333466e98fa0e38360388a7741397",
-        "contents_checksum": "887b9e9f94fb330ce38b71e63563b43a2b3625090ca97df01c395f1a170f1f0b",
-        "size": 58031942,
-        "source": "components/google-cloud-sdk-config-connector-darwin-arm-20220826172526.tar.gz",
+        "checksum": "dd20420980225726c0bb881fdcfb935bf8d25aad84f0bb315e4d5b0ce51cf0fa",
+        "contents_checksum": "8dc4d4419a866c0aaa33fd0d4e0fde885aa926dcf9b8025a580e060b916ca599",
+        "size": 58308273,
+        "source": "components/google-cloud-sdk-config-connector-darwin-arm-20220912133630.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -3184,16 +3184,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220826172526,
-        "version_string": "1.92.0"
+        "build_number": 20220912133630,
+        "version_string": "1.93.0"
       }
     },
     {
       "data": {
-        "checksum": "9bd57dfb4397c571345f275ade22db8bfbf0c7ce1f0766be04033a8d5108d129",
-        "contents_checksum": "e03b352e55adc4f2e70452569f3513e8661cb309cffd804f670c42c8d11b90e7",
-        "size": 59628145,
-        "source": "components/google-cloud-sdk-config-connector-darwin-x86_64-20220826172526.tar.gz",
+        "checksum": "541307135cc5c06430cf1368a5a6f9dfe050031aedf1b7e7497362505f81074b",
+        "contents_checksum": "d234dc236ff1c4d88fb4caebd61955df9d3ee5b3db094472dce64f031d646e97",
+        "size": 59915703,
+        "source": "components/google-cloud-sdk-config-connector-darwin-x86_64-20220912133630.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -3217,16 +3217,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220826172526,
-        "version_string": "1.92.0"
+        "build_number": 20220912133630,
+        "version_string": "1.93.0"
       }
     },
     {
       "data": {
-        "checksum": "6819e1c06d7cee23dee7f278908a2ade370fd3c862c0c3f975d368e6e4face8d",
-        "contents_checksum": "b4f2a75282db97fd5a04fee33d770588ec86e914bb1ac7ef65cabc33c48b028f",
-        "size": 54427844,
-        "source": "components/google-cloud-sdk-config-connector-linux-arm-20220826172526.tar.gz",
+        "checksum": "693e9b1fdb2b8958388dca7abc405891d481c5973a5a622da8fa54920114af2c",
+        "contents_checksum": "b29263faa92ec2b3a2780f837c14d991c570914d7a9df10940325fab9e6cbe4d",
+        "size": 54695578,
+        "source": "components/google-cloud-sdk-config-connector-linux-arm-20220912133630.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -3250,16 +3250,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220826172526,
-        "version_string": "1.92.0"
+        "build_number": 20220912133630,
+        "version_string": "1.93.0"
       }
     },
     {
       "data": {
-        "checksum": "16fbc19aa9b3b8d8d9ddffc346f6d7ffe7d20d1ea8a6e3f3f9bab43b2d6e0a11",
-        "contents_checksum": "d40df11cbe34f661b57f9743c7c9bef8a43232ea3b37568debe1fdc5a3c4ab51",
-        "size": 59183027,
-        "source": "components/google-cloud-sdk-config-connector-linux-x86_64-20220826172526.tar.gz",
+        "checksum": "62babd72829ff1e9c0ee92ee5fcf0052b19780ff028014871ab73d34aeff4021",
+        "contents_checksum": "29127a962616825f78276a0143a3b75239c66d7df4f582aee85b3801e9590a8d",
+        "size": 59462846,
+        "source": "components/google-cloud-sdk-config-connector-linux-x86_64-20220912133630.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -3283,16 +3283,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220826172526,
-        "version_string": "1.92.0"
+        "build_number": 20220912133630,
+        "version_string": "1.93.0"
       }
     },
     {
       "data": {
-        "checksum": "fe8328a8e56d137d50b2db1ddadb5db24fa1b2ce940373556f98d918f2e94f57",
-        "contents_checksum": "1ab0f32fc5cb49579dcd8fa5cdfd525fada6f67817d364a277908c3bac80c963",
-        "size": 59356188,
-        "source": "components/google-cloud-sdk-config-connector-windows-x86_64-20220826172526.tar.gz",
+        "checksum": "e2b541bcbbfcdcd359bc828c7d51538cda3ef0fc4f90ad7ca274792b643bd74f",
+        "contents_checksum": "5221ebb5c2a0cc2c8752806c680382f21366c87cda41f5aa0e009da0d73e9bce",
+        "size": 59649780,
+        "source": "components/google-cloud-sdk-config-connector-windows-x86_64-20220912133630.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -3316,19 +3316,20 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220826172526,
-        "version_string": "1.92.0"
+        "build_number": 20220912133630,
+        "version_string": "1.93.0"
       }
     },
     {
       "data": {
-        "checksum": "67ea11d36e9538cab9ca073ba009e4f4d8bdc74e27417b0833ce49042a268b31",
-        "contents_checksum": "513f4f9f2de029c8056b85991065c9cc55a94244d54dab53427ab86d782a22ed",
-        "size": 25728101,
-        "source": "components/google-cloud-sdk-core-20220826172526.tar.gz",
+        "checksum": "9f400edfce1cdaed0c64868bf07c766a37c16586b8c562d1e4998b718779c736",
+        "contents_checksum": "1e78cf08ebac768823adaf54ad0079cc22c75da881f34d09f9fb8f9e81ddcce2",
+        "size": 26095678,
+        "source": "components/google-cloud-sdk-core-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
+        "bundled-python3-unix",
         "core-nix",
         "core-win",
         "gcloud-deps",
@@ -3345,19 +3346,20 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20220826172526,
-        "version_string": "2022.08.26"
+        "build_number": 20220923141408,
+        "version_string": "2022.09.23"
       }
     },
     {
       "data": {
-        "checksum": "8b588bd281f23c083d797c5144da4f856edf23c86131efbabc8ab389ce740fdc",
-        "contents_checksum": "8f1c24d273122da4020ac2106e439187e5d1d2769c75ccff72359fd4e892746f",
-        "size": 2202,
-        "source": "components/google-cloud-sdk-core-nix-20220805142045.tar.gz",
+        "checksum": "6db75a8f57486ed49afbd2866643bd21e77e08aa7aaf04bd9ee1713acad7b3bf",
+        "contents_checksum": "5ab83e0028ef523ae3eab59b05b6f2f3d340be750385dc66bd1127c75d7a6d4b",
+        "size": 2221,
+        "source": "components/google-cloud-sdk-core-nix-20220920185015.tar.gz",
         "type": "tar"
       },
       "dependencies": [
+        "bundled-python3-unix",
         "core",
         "gcloud-deps",
         "ssh-tools"
@@ -3380,8 +3382,8 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220805142045,
-        "version_string": "2022.08.05"
+        "build_number": 20220920185015,
+        "version_string": "2022.09.20"
       }
     },
     {
@@ -3393,6 +3395,7 @@
         "type": "tar"
       },
       "dependencies": [
+        "bundled-python3-unix",
         "core",
         "gcloud-deps",
         "ssh-tools"
@@ -3449,10 +3452,10 @@
     },
     {
       "data": {
-        "checksum": "ede6475214e26c5237656f3381b267609bb1470303bea118bd4d85025105da25",
-        "contents_checksum": "e15062374974a0b422807965f10d3599cfe3caf0643d62aee2d0cc5e46bc96cf",
-        "size": 1832,
-        "source": "components/google-cloud-sdk-datalab-nix-20220805142045.tar.gz",
+        "checksum": "6afdc65013c2389a52d6b8b6c7ea043b19822f31a6d3bf696e128a9bd3f8fd61",
+        "contents_checksum": "3fb8b295ae8fecb0ea685d8f6acd1cd9517f26b037a343767b21fd48ec84edc1",
+        "size": 1854,
+        "source": "components/google-cloud-sdk-datalab-nix-20220920185015.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -3480,7 +3483,7 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220805142045,
+        "build_number": 20220920185015,
         "version_string": "20190610"
       }
     },
@@ -3807,7 +3810,6 @@
     {
       "dependencies": [
         "gcloud-crc32c-darwin-arm",
-        "gcloud-crc32c-darwin-x86",
         "gcloud-crc32c-darwin-x86_64",
         "gcloud-crc32c-linux-arm",
         "gcloud-crc32c-linux-x86",
@@ -3876,39 +3878,6 @@
     },
     {
       "data": {
-        "checksum": "1921da0b8ce346094cf85d30c76fe8dcdc49a2c1a7024e2b92fc921f1e8f4ae6",
-        "contents_checksum": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
-        "size": 104,
-        "source": "components/google-cloud-sdk-gcloud-crc32c-darwin-x86-20220729144039.tar.gz",
-        "type": "tar"
-      },
-      "dependencies": [
-        "gcloud-crc32c"
-      ],
-      "details": {
-        "description": "Command line tool that calculates CRC32C hashes on local files.",
-        "display_name": "Google Cloud CRC32C Hash Tool"
-      },
-      "id": "gcloud-crc32c-darwin-x86",
-      "is_configuration": false,
-      "is_hidden": true,
-      "is_required": false,
-      "platform": {
-        "architectures": [
-          "x86"
-        ],
-        "operating_systems": [
-          "MACOSX"
-        ]
-      },
-      "platform_required": false,
-      "version": {
-        "build_number": 20220729144039,
-        "version_string": "1.0.0"
-      }
-    },
-    {
-      "data": {
         "checksum": "766f6271d8ad1de1b2b803e7aca680abc445344e30dbb448ead0b98b041ad70a",
         "contents_checksum": "b8e4eee009bbb6e2d521353569e20f32a66a9f5decd79915baee05eb64b2ac1a",
         "size": 1250758,
@@ -4107,10 +4076,10 @@
     },
     {
       "data": {
-        "checksum": "ecc87f105076886c96fa5c3fa0a585c02dad5fc1ee7b3057c77d7734345a89ed",
-        "contents_checksum": "70e95c8c5184e7f15e8806f70d450dec7f5dd34b93254128a3505e78fdaeb0d5",
-        "size": 11787976,
-        "source": "components/google-cloud-sdk-gcloud-deps-20220819155753.tar.gz",
+        "checksum": "2ed9abf269d41558e85a748916225d14eb9a61ad3fa181b1c644a2d53219941b",
+        "contents_checksum": "7d0c3959b707eedc156cbdb6d6e1b2e75a69637d5efc36268639f9addf73c626",
+        "size": 11801890,
+        "source": "components/google-cloud-sdk-gcloud-deps-20220912133630.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -4133,8 +4102,8 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20220819155753,
-        "version_string": "2022.08.19"
+        "build_number": 20220912133630,
+        "version_string": "2022.09.12"
       }
     },
     {
@@ -4370,10 +4339,10 @@
     },
     {
       "data": {
-        "checksum": "51bdccd26675d35f001e8cc4559ce94d37c0d40533a3f7510efbbb8a45f3d033",
-        "contents_checksum": "fae4b5a2357238e46e5fb51f936bbc351a7af6871d0c40dfd6138d12c72f6535",
-        "size": 5092288,
-        "source": "components/google-cloud-sdk-gcloud-man-pages-nix-20220826172526.tar.gz",
+        "checksum": "9c53b485c9da6befa0f4edc4e822fa33b78aee0918c768e6491d540c1eef9cc8",
+        "contents_checksum": "e0e0264b5a04d814ca438ccf03c5712ad6288198a29edd7ee1ae2ba3d1249d61",
+        "size": 5175748,
+        "source": "components/google-cloud-sdk-gcloud-man-pages-nix-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -4398,7 +4367,7 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220826172526,
+        "build_number": 20220923141408,
         "version_string": ""
       }
     },
@@ -4671,10 +4640,10 @@
     },
     {
       "data": {
-        "checksum": "0d5a788c9a2ce8afa11df39ca92395b896c75abc6613aeaa5bf26f11cf500000",
-        "contents_checksum": "c018a70eda52d4d450c0df6d4d0a85cc63b356c6459d0e75ae3154118d0bcda7",
-        "size": 16238934,
-        "source": "components/google-cloud-sdk-gsutil-20220812141601.tar.gz",
+        "checksum": "86455168929ba37f0d6446aabc883fbc6bf9c7317776940f2ee4708660ddba73",
+        "contents_checksum": "f3ff13f8c1b4347fb0be3a943d10539f19b482dab150e95cc6c4cefc55b8d39c",
+        "size": 16281930,
+        "source": "components/google-cloud-sdk-gsutil-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -4693,16 +4662,16 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20220812141601,
-        "version_string": "5.12"
+        "build_number": 20220923141408,
+        "version_string": "5.14"
       }
     },
     {
       "data": {
-        "checksum": "8dedc4501d4c44664dbe4bf403e7ca33d772eb92fe31622e1b0100fd7333eb06",
-        "contents_checksum": "cfed152cbb1c3bd59b818004578584d95049de6ae963f0ecfda786b7feca12f3",
-        "size": 1831,
-        "source": "components/google-cloud-sdk-gsutil-nix-20220805142045.tar.gz",
+        "checksum": "43435ae1c5c1570a279aa7ba79345a4121a040f5ae732968ce6e2802fa91cf7d",
+        "contents_checksum": "5368c71d19578ae4e3b2c2e44ef794040d45cfefcaad8137454ee1fcc75069ea",
+        "size": 1851,
+        "source": "components/google-cloud-sdk-gsutil-nix-20220920185015.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -4727,16 +4696,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220805142045,
-        "version_string": "5.11"
+        "build_number": 20220920185015,
+        "version_string": "5.13"
       }
     },
     {
       "data": {
-        "checksum": "d8619ff9a346685d60cb3c9092cecc640bc3b426079454ba78d5a57f6001006c",
-        "contents_checksum": "9dce4185b8d842133a744c2582b9d1910d358cc4b9f7b2699cbd56ea65f81c94",
-        "size": 3898,
-        "source": "components/google-cloud-sdk-gsutil-win-20220805142045.tar.gz",
+        "checksum": "e9fa362ebfd166fcd02a4a0b2be6cb1bc8070b78bc95aa6412cef27e014800a0",
+        "contents_checksum": "268fc5137f56690b853b7d9c606cf48bcc168555d8d24f02e1bb5bcdd4678305",
+        "size": 3915,
+        "source": "components/google-cloud-sdk-gsutil-win-20220920185015.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -4758,8 +4727,8 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220805142045,
-        "version_string": "5.11"
+        "build_number": 20220920185015,
+        "version_string": "5.13"
       }
     },
     {
@@ -4986,10 +4955,10 @@
     },
     {
       "data": {
-        "checksum": "9de67dcca25d9fe988f7bb50d51f469f15f94a18448baf324836e967ab33f00a",
-        "contents_checksum": "727cf52bb3893c60b77edd5989e9febe5445381d1a5ffeb4f9dbdbf3d1ca33ca",
+        "checksum": "7856f8122d27e23899e913ba4fad9700ee6c2abafc9abcf487248ba2db57321c",
+        "contents_checksum": "8bc4e63305e3309718a8f77c23552d310b167cb9e636e42b69c2b44f7b3657dd",
         "size": 48204,
-        "source": "components/google-cloud-sdk-kubectl-20220826172526.tar.gz",
+        "source": "components/google-cloud-sdk-kubectl-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5013,16 +4982,16 @@
       "platform": {},
       "platform_required": true,
       "version": {
-        "build_number": 20220826172526,
-        "version_string": "1.22.12"
+        "build_number": 20220923141408,
+        "version_string": "1.22.14"
       }
     },
     {
       "data": {
-        "checksum": "183a93dc2868f125fd74ac0907d8314806af95bcdee7dfedd2a0d6693e38220a",
-        "contents_checksum": "5cc81a6770bf326c6f9dce82a620a6a6210319969e3a4de91d567eab2b21acb8",
-        "size": 68347897,
-        "source": "components/google-cloud-sdk-kubectl-darwin-arm-20220722145557.tar.gz",
+        "checksum": "21d6b384830db24c47ad84eed130e0ac43c5092cafbfe64a5c2b1f767a2d3bdd",
+        "contents_checksum": "7030de0f4f7c209f9db17e0926b19bb665f81977082e1c75359235f00eabafe9",
+        "size": 82321843,
+        "source": "components/google-cloud-sdk-kubectl-darwin-arm-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5047,16 +5016,16 @@
       },
       "platform_required": true,
       "version": {
-        "build_number": 20220722145557,
-        "version_string": "1.22.12"
+        "build_number": 20220923141408,
+        "version_string": "1.22.14"
       }
     },
     {
       "data": {
-        "checksum": "f08c5e917c04dce420d4fb5fc98e4f0dbb234ed00ba81c11c7dcf6ba05da1c71",
-        "contents_checksum": "4f1cdd27d68a22e9fd4bc762f6d8d4ab6a079b2c6e52c3c2ba8f9de82b099b0d",
-        "size": 95973956,
-        "source": "components/google-cloud-sdk-kubectl-darwin-x86_64-20220722145557.tar.gz",
+        "checksum": "1e3068a62f3afa8e46782e22880ae35f6358e4b637956a7cb6116cd08aa4ff71",
+        "contents_checksum": "f217554c39fdf2744df60e20e1b3da9fa384e1f8ffc2b813ee3fdbd138f6e9b4",
+        "size": 97570066,
+        "source": "components/google-cloud-sdk-kubectl-darwin-x86_64-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5081,16 +5050,16 @@
       },
       "platform_required": true,
       "version": {
-        "build_number": 20220722145557,
-        "version_string": "1.22.12"
+        "build_number": 20220923141408,
+        "version_string": "1.22.14"
       }
     },
     {
       "data": {
-        "checksum": "68a90b93bcc95518e57f627fd3db2d949ac290ba457645633c6c92f22d5a02aa",
-        "contents_checksum": "e023599a6381690ffdf61952d8183b1010d0c445b5ca3f5543650cb56b31bd43",
-        "size": 84739879,
-        "source": "components/google-cloud-sdk-kubectl-linux-arm-20220722145557.tar.gz",
+        "checksum": "52e38b9e2ae7a948af11d9fc4bf4d355ef15fbbcd74226710ab01f7da32ac35a",
+        "contents_checksum": "831a4170256641069a14fdfae161c780b1210938b3fa7881819cea3b3bea7c4f",
+        "size": 86262197,
+        "source": "components/google-cloud-sdk-kubectl-linux-arm-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5115,16 +5084,16 @@
       },
       "platform_required": true,
       "version": {
-        "build_number": 20220722145557,
-        "version_string": "1.22.12"
+        "build_number": 20220923141408,
+        "version_string": "1.22.14"
       }
     },
     {
       "data": {
-        "checksum": "dbb20121a8590ae23b9b4570d9bbe1ed4ef75c0301fb5c82ba8f39d8204e3dc9",
-        "contents_checksum": "c164f5f80d3d6a6fb34faefa4a5e2f30203870fe258de483ff9da2daa636bba6",
-        "size": 85216084,
-        "source": "components/google-cloud-sdk-kubectl-linux-x86-20220722145557.tar.gz",
+        "checksum": "71a1963cbeb19cfe29b65bfc50f1cf9c2468fe13632a4325160b81ecb01c6aa9",
+        "contents_checksum": "92480f7feaa3e8cda1a573eebfdca4109fb64df5f759dd3ae266a64b03cbdd26",
+        "size": 86774419,
+        "source": "components/google-cloud-sdk-kubectl-linux-x86-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5149,16 +5118,16 @@
       },
       "platform_required": true,
       "version": {
-        "build_number": 20220722145557,
-        "version_string": "1.22.12"
+        "build_number": 20220923141408,
+        "version_string": "1.22.14"
       }
     },
     {
       "data": {
-        "checksum": "cad7f2a1e918a582f849e2a7680a901f844b67fc13185ab81ddf0df644d73a2e",
-        "contents_checksum": "ce7711c4e5f89e79ce85cfe25e733911a67a8e20de9ac19794f4a84d083f754d",
-        "size": 91318082,
-        "source": "components/google-cloud-sdk-kubectl-linux-x86_64-20220722145557.tar.gz",
+        "checksum": "ae520fa71535f79bcc12515c6f1421fca9ece08b0ed59f7ee406756ba48561dd",
+        "contents_checksum": "0b465529d9e1674a10fc52ab12fb2db1253572ca020e9e57f2bb56be7edb14ca",
+        "size": 92944406,
+        "source": "components/google-cloud-sdk-kubectl-linux-x86_64-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5183,8 +5152,8 @@
       },
       "platform_required": true,
       "version": {
-        "build_number": 20220722145557,
-        "version_string": "1.22.12"
+        "build_number": 20220923141408,
+        "version_string": "1.22.14"
       }
     },
     {
@@ -5217,15 +5186,15 @@
       "platform_required": false,
       "version": {
         "build_number": 0,
-        "version_string": "1.4.3"
+        "version_string": "1.4.4"
       }
     },
     {
       "data": {
-        "checksum": "2ec95a80a5c1c165488702eecfe84a17f51c8dd0ea96e5b5b10e805bb45f61a5",
-        "contents_checksum": "2d1d1a849782dcf64e1b187387e2335277cb6801cf657e91eebd2d8582f2fe19",
-        "size": 19054821,
-        "source": "components/google-cloud-sdk-kubectl-oidc-darwin-arm-20220729144039.tar.gz",
+        "checksum": "a7d9d1a977856dc342b82936bedfda0032e27ec4657fd380048cd7dc5de05039",
+        "contents_checksum": "2d656b34043e23ff6a98a7fb432efa86d251eb0b14c4452d17c537dc02e04eaf",
+        "size": 20108100,
+        "source": "components/google-cloud-sdk-kubectl-oidc-darwin-arm-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5249,16 +5218,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220729144039,
-        "version_string": "1.4.3"
+        "build_number": 20220923141408,
+        "version_string": "1.4.4"
       }
     },
     {
       "data": {
-        "checksum": "f9f5fba90117efb21a256ced62d431d1c1257855052ca53066cb52dbaf76c960",
-        "contents_checksum": "72cdd4ed404e24c506ddddaaff6c5ea19a222dac673a21ac4a288bedc267a2f3",
-        "size": 19911397,
-        "source": "components/google-cloud-sdk-kubectl-oidc-darwin-x86_64-20220729144039.tar.gz",
+        "checksum": "1d6d08431d911928ef8500d1979720278f8116e86ae52afc32ce0b76ec4a5fb0",
+        "contents_checksum": "497465b1a0c3a6781d2bb0b68a951af0a4d2230ae67caa84288d38b853800a53",
+        "size": 21183987,
+        "source": "components/google-cloud-sdk-kubectl-oidc-darwin-x86_64-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5282,16 +5251,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220729144039,
-        "version_string": "1.4.3"
+        "build_number": 20220923141408,
+        "version_string": "1.4.4"
       }
     },
     {
       "data": {
-        "checksum": "b75f04ad05de495342265e6b3b65d9146cd6a0c32aa8d3c8af9cdf29ef9396a3",
-        "contents_checksum": "bd186ff699cd4a85dea551e3b2a98f9bc6b17f3c1bde5ab26de3a8013cd1b48f",
-        "size": 18716163,
-        "source": "components/google-cloud-sdk-kubectl-oidc-linux-arm-20220729144039.tar.gz",
+        "checksum": "87550a6e878b3091c8da5df8380c65f9e2579f012b7cbddc3e64fb637906fc38",
+        "contents_checksum": "2c33c85c5826938f014a33c21d28289676cccc09d7ffb87368fd94faf43b6cc1",
+        "size": 19755678,
+        "source": "components/google-cloud-sdk-kubectl-oidc-linux-arm-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5315,16 +5284,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220729144039,
-        "version_string": "1.4.3"
+        "build_number": 20220923141408,
+        "version_string": "1.4.4"
       }
     },
     {
       "data": {
-        "checksum": "a961eb557b60f2b4f85efaf1178bb2b2c00dc76aad4428e52e4675ac433b39f9",
-        "contents_checksum": "02d55ba02e330737d36b164642c351579a90d96a2618b313a36b069f3dc9eb62",
-        "size": 20095032,
-        "source": "components/google-cloud-sdk-kubectl-oidc-linux-x86_64-20220729144039.tar.gz",
+        "checksum": "cd6945af71ecfdf94c693ee22b7629ad62dc650cf0c19d58761fe260f792e36f",
+        "contents_checksum": "c2092312910a7e7e86adcd8d72c9e97d7d9757d6dce2f3e24124d9bcadd0d9eb",
+        "size": 21362894,
+        "source": "components/google-cloud-sdk-kubectl-oidc-linux-x86_64-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5348,16 +5317,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220729144039,
-        "version_string": "1.4.3"
+        "build_number": 20220923141408,
+        "version_string": "1.4.4"
       }
     },
     {
       "data": {
-        "checksum": "58504d03cb89202ae39a199cd099d52bd370698a231dcc69636c583d58cda6f0",
-        "contents_checksum": "61fea21e4e483439b865217a3d6cffc20ece1e596415d1ed2fe5cf0157873332",
-        "size": 20093462,
-        "source": "components/google-cloud-sdk-kubectl-oidc-windows-x86_64-20220729144039.tar.gz",
+        "checksum": "2cf3f2460446692a81c888ec16ac7cbd838fd83acdec46e99bd9225ed49a5d67",
+        "contents_checksum": "6477f1e7ad0e16d891b1b47c201c2bf0e4409789893be60e1697593c58f74025",
+        "size": 21470876,
+        "source": "components/google-cloud-sdk-kubectl-oidc-windows-x86_64-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5381,16 +5350,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220729144039,
-        "version_string": "1.4.3"
+        "build_number": 20220923141408,
+        "version_string": "1.4.4"
       }
     },
     {
       "data": {
-        "checksum": "a4ab96118718d8deb17e4a6366e710016cd724e0f9aa748b12337f692f2a3560",
-        "contents_checksum": "4ef9d705ffbbe3a250f977e96144284b6eb5de741022baf9cf891b3701f3b1ae",
-        "size": 89788788,
-        "source": "components/google-cloud-sdk-kubectl-windows-x86-20220722145557.tar.gz",
+        "checksum": "28440941a732c6dfda5f05efc0cba74023c913f825871c90ae3c06b14ad2bdda",
+        "contents_checksum": "95a17b296f14a9d7d0dfced9ad0a55c941fccc83c99b168b3ba9853e3adba360",
+        "size": 91332851,
+        "source": "components/google-cloud-sdk-kubectl-windows-x86-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5417,16 +5386,16 @@
       },
       "platform_required": true,
       "version": {
-        "build_number": 20220722145557,
-        "version_string": "1.22.12"
+        "build_number": 20220923141408,
+        "version_string": "1.22.14"
       }
     },
     {
       "data": {
-        "checksum": "a6b1959aebd022162d6fdbc83c98112a7a7fd8fc1a9d753c8c76720b94e44875",
-        "contents_checksum": "3159a9b26c49fd74a95e88235d7d0ce4c9424639121557870161d94ae4c1cc91",
-        "size": 92776963,
-        "source": "components/google-cloud-sdk-kubectl-windows-x86_64-20220722145557.tar.gz",
+        "checksum": "b21d319af27d9765f51be9c3b44807c3ca1769beec3674568dc81409f6334186",
+        "contents_checksum": "a87f48bab704f3f53d9d7b7ea2280a60c793963387d24b0db227e8502ea2995a",
+        "size": 94323359,
+        "source": "components/google-cloud-sdk-kubectl-windows-x86_64-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5453,8 +5422,8 @@
       },
       "platform_required": true,
       "version": {
-        "build_number": 20220722145557,
-        "version_string": "1.22.12"
+        "build_number": 20220923141408,
+        "version_string": "1.22.14"
       }
     },
     {
@@ -5785,6 +5754,204 @@
     },
     {
       "dependencies": [
+        "log-streaming-darwin-arm",
+        "log-streaming-darwin-x86_64",
+        "log-streaming-linux-arm",
+        "log-streaming-linux-x86_64",
+        "log-streaming-windows-x86_64"
+      ],
+      "details": {
+        "description": "Provides log streaming services.",
+        "display_name": "Log Streaming"
+      },
+      "id": "log-streaming",
+      "is_configuration": false,
+      "is_hidden": false,
+      "is_required": false,
+      "platform": {
+        "architectures": [
+          "arm",
+          "x86_64"
+        ],
+        "operating_systems": [
+          "LINUX",
+          "MACOSX",
+          "WINDOWS"
+        ]
+      },
+      "platform_required": false,
+      "version": {
+        "build_number": 0,
+        "version_string": "0.1.0"
+      }
+    },
+    {
+      "data": {
+        "checksum": "2d038a49773005dbca959451cb68376ee7350d5ef6ef203da00238bbc92ba3ba",
+        "contents_checksum": "43a1da489e8b9c536778d69bbcca31c3e26ac8e8adee8305c25b5ccd9d5bcfb5",
+        "size": 12250253,
+        "source": "components/google-cloud-sdk-log-streaming-darwin-arm-20220923141408.tar.gz",
+        "type": "tar"
+      },
+      "dependencies": [
+        "log-streaming"
+      ],
+      "details": {
+        "description": "Provides log streaming services.",
+        "display_name": "Log Streaming"
+      },
+      "id": "log-streaming-darwin-arm",
+      "is_configuration": false,
+      "is_hidden": true,
+      "is_required": false,
+      "platform": {
+        "architectures": [
+          "arm"
+        ],
+        "operating_systems": [
+          "MACOSX"
+        ]
+      },
+      "platform_required": false,
+      "version": {
+        "build_number": 20220923141408,
+        "version_string": "0.1.0"
+      }
+    },
+    {
+      "data": {
+        "checksum": "2e24ef158bf59bc13e64305464923e34a3c5a22eebed42994fd8bd2262c8de4e",
+        "contents_checksum": "14a71125b30e23301f0a52ec57ecf1fa8cd84f0c972bcec5d8ab53fbd5bb2b82",
+        "size": 12632972,
+        "source": "components/google-cloud-sdk-log-streaming-darwin-x86_64-20220923141408.tar.gz",
+        "type": "tar"
+      },
+      "dependencies": [
+        "log-streaming"
+      ],
+      "details": {
+        "description": "Provides log streaming services.",
+        "display_name": "Log Streaming"
+      },
+      "id": "log-streaming-darwin-x86_64",
+      "is_configuration": false,
+      "is_hidden": true,
+      "is_required": false,
+      "platform": {
+        "architectures": [
+          "x86_64"
+        ],
+        "operating_systems": [
+          "MACOSX"
+        ]
+      },
+      "platform_required": false,
+      "version": {
+        "build_number": 20220923141408,
+        "version_string": "0.1.0"
+      }
+    },
+    {
+      "data": {
+        "checksum": "eb647953fb3921dbe63f2b5d642a524d4cca2212ef4235ac037d7622b6686521",
+        "contents_checksum": "8a83ad4a79e8269b11fc4f8b279f8e97c7a6318d4236663e166219fb76e7ae8d",
+        "size": 12118626,
+        "source": "components/google-cloud-sdk-log-streaming-linux-arm-20220923141408.tar.gz",
+        "type": "tar"
+      },
+      "dependencies": [
+        "log-streaming"
+      ],
+      "details": {
+        "description": "Provides log streaming services.",
+        "display_name": "Log Streaming"
+      },
+      "id": "log-streaming-linux-arm",
+      "is_configuration": false,
+      "is_hidden": true,
+      "is_required": false,
+      "platform": {
+        "architectures": [
+          "arm"
+        ],
+        "operating_systems": [
+          "LINUX"
+        ]
+      },
+      "platform_required": false,
+      "version": {
+        "build_number": 20220923141408,
+        "version_string": "0.1.0"
+      }
+    },
+    {
+      "data": {
+        "checksum": "c422d2a99e2354b6cf57717eeb33c39af64d458ea023909aeac65d8cf3a35991",
+        "contents_checksum": "bfecc7629c23e684ac4638b9ea54b887f31c5ffbbf62f42153915e133085da23",
+        "size": 14329668,
+        "source": "components/google-cloud-sdk-log-streaming-linux-x86_64-20220923141408.tar.gz",
+        "type": "tar"
+      },
+      "dependencies": [
+        "log-streaming"
+      ],
+      "details": {
+        "description": "Provides log streaming services.",
+        "display_name": "Log Streaming"
+      },
+      "id": "log-streaming-linux-x86_64",
+      "is_configuration": false,
+      "is_hidden": true,
+      "is_required": false,
+      "platform": {
+        "architectures": [
+          "x86_64"
+        ],
+        "operating_systems": [
+          "LINUX"
+        ]
+      },
+      "platform_required": false,
+      "version": {
+        "build_number": 20220923141408,
+        "version_string": "0.1.0"
+      }
+    },
+    {
+      "data": {
+        "checksum": "4f183757d5f71b19f2894dd357ead27a5cfc2463912e6fa2221521844e235cf4",
+        "contents_checksum": "10e1197c43d20fb5b3a53fa79b04323f7eaa42afb6e15fac35799f7de00be2eb",
+        "size": 12777192,
+        "source": "components/google-cloud-sdk-log-streaming-windows-x86_64-20220923141408.tar.gz",
+        "type": "tar"
+      },
+      "dependencies": [
+        "log-streaming"
+      ],
+      "details": {
+        "description": "Provides log streaming services.",
+        "display_name": "Log Streaming"
+      },
+      "id": "log-streaming-windows-x86_64",
+      "is_configuration": false,
+      "is_hidden": true,
+      "is_required": false,
+      "platform": {
+        "architectures": [
+          "x86_64"
+        ],
+        "operating_systems": [
+          "WINDOWS"
+        ]
+      },
+      "platform_required": false,
+      "version": {
+        "build_number": 20220923141408,
+        "version_string": "0.1.0"
+      }
+    },
+    {
+      "dependencies": [
         "minikube-darwin-arm",
         "minikube-darwin-x86_64",
         "minikube-linux-arm",
@@ -5813,15 +5980,15 @@
       "platform_required": false,
       "version": {
         "build_number": 0,
-        "version_string": "1.26.1"
+        "version_string": "1.27.0"
       }
     },
     {
       "data": {
-        "checksum": "27a35a1156344d63a44e376956e024a8031b1eeaf8adc0c1833b10d838bf7afe",
-        "contents_checksum": "e4101d218a7ce1f361ebffa3b2940dc45e496796e29415ad8f6913b8d2c06ab4",
-        "size": 30786798,
-        "source": "components/google-cloud-sdk-minikube-darwin-arm-20220805142045.tar.gz",
+        "checksum": "5a63b4052f5892e5723d62b812eea09d4bb20218e1c8986527c218b7e0e5b2b2",
+        "contents_checksum": "98639bbd563712ce9ac35a72de5382da64af64783a8adc5986dfd01367928015",
+        "size": 31131878,
+        "source": "components/google-cloud-sdk-minikube-darwin-arm-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5845,16 +6012,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220805142045,
-        "version_string": "1.26.1"
+        "build_number": 20220923141408,
+        "version_string": "1.27.0"
       }
     },
     {
       "data": {
-        "checksum": "e851e190b2a4747d32f72ba2caaf9cda7bbf6a67b1c357a221598ee9af04eb52",
-        "contents_checksum": "40b12f79e6446f3d5cbbc3133069cd7349e0ce7744959362b235345329aae84e",
-        "size": 31814476,
-        "source": "components/google-cloud-sdk-minikube-darwin-x86_64-20220805142045.tar.gz",
+        "checksum": "1f58909a020d0a8a1ff3aa20dd71cd0148cf16adf323230ddb35e91421945afc",
+        "contents_checksum": "847392870c71810c7f038f2da223e5162cd58a2e4b277e04b03839cd89f12d55",
+        "size": 32365761,
+        "source": "components/google-cloud-sdk-minikube-darwin-x86_64-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5878,16 +6045,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220805142045,
-        "version_string": "1.26.1"
+        "build_number": 20220923141408,
+        "version_string": "1.27.0"
       }
     },
     {
       "data": {
-        "checksum": "793a34c028e32ed307023aed42012f89bf1677e8ef004b785b10816bd3c1347d",
-        "contents_checksum": "eeea49fc6d42b8b6aca0b5cbcc18e594042d24bdda142e530b7b4ca5b250c100",
-        "size": 30251095,
-        "source": "components/google-cloud-sdk-minikube-linux-arm-20220805142045.tar.gz",
+        "checksum": "e4d3268beb0091f8431d85b260381cd5204c891b54feba5410dcc6738f767a12",
+        "contents_checksum": "f217a95d3c5ebb18055d48b9b7aa278a0211914591bc01366a53b6eb4bcaddc2",
+        "size": 30626509,
+        "source": "components/google-cloud-sdk-minikube-linux-arm-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5911,16 +6078,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220805142045,
-        "version_string": "1.26.1"
+        "build_number": 20220923141408,
+        "version_string": "1.27.0"
       }
     },
     {
       "data": {
-        "checksum": "f8018c1c90f3aaa7d6d16ebdd6fc9f9f4fe1278278257dc8baedbea8faaea055",
-        "contents_checksum": "c9a2f9ed229eab8c0bae77fd9eaa2bd1c287383db3f4395cf5131a8bb20abbe2",
-        "size": 32405345,
-        "source": "components/google-cloud-sdk-minikube-linux-x86_64-20220805142045.tar.gz",
+        "checksum": "c41f2b5b94a91b4d712fe68bb9ee84a81c0afc862b71c71cd68c55b822781faa",
+        "contents_checksum": "89cff2f8b843db2a4b411cc8593e4bf623a9c2fdd89fc63f1e42eb9dd2bc9263",
+        "size": 32992037,
+        "source": "components/google-cloud-sdk-minikube-linux-x86_64-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5944,16 +6111,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220805142045,
-        "version_string": "1.26.1"
+        "build_number": 20220923141408,
+        "version_string": "1.27.0"
       }
     },
     {
       "data": {
-        "checksum": "1b3a3552de1ec3cf7b23b4add0a225272122953bc1588f24022fc68fbb331bed",
-        "contents_checksum": "1e5745e14161ac8df58286ceab2412c42ba9612b7ca689c5175b32c49384bc04",
-        "size": 32246442,
-        "source": "components/google-cloud-sdk-minikube-windows-x86_64-20220805142045.tar.gz",
+        "checksum": "4461b0d6dce2ad476d7c40c3bd55a13855a6f3cffb21b4dc22728f36cb6fce13",
+        "contents_checksum": "b05dcba039ce63ec98e9a42da93f262246e7d0b775f87b5823a37a78dc937305",
+        "size": 32922362,
+        "source": "components/google-cloud-sdk-minikube-windows-x86_64-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5977,8 +6144,8 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220805142045,
-        "version_string": "1.26.1"
+        "build_number": 20220923141408,
+        "version_string": "1.27.0"
       }
     },
     {
@@ -6006,15 +6173,15 @@
       "platform_required": false,
       "version": {
         "build_number": 0,
-        "version_string": "1.12.2-rc.2"
+        "version_string": "1.13.0-rc.7"
       }
     },
     {
       "data": {
-        "checksum": "3d68d8a604dcf4123f7e52b839ab67909956cbee8bef9f592ae31173a0c77e59",
-        "contents_checksum": "72b328cc2cd63d282976b31e57b9391789a45e629d114c5bfa701fb1b20bc6df",
-        "size": 25577195,
-        "source": "components/google-cloud-sdk-nomos-darwin-x86_64-20220826172526.tar.gz",
+        "checksum": "e3b8394db81bd917f498d4c64f3002a1e462a2176503c9780406e2bfcb2c0764",
+        "contents_checksum": "6ca04e9e59fc7f84e1cc154b1e502f1503b10c3965a0208140fa405d6167ab62",
+        "size": 25595518,
+        "source": "components/google-cloud-sdk-nomos-darwin-x86_64-20220920185015.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -6038,16 +6205,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220826172526,
-        "version_string": "1.12.2-rc.2"
+        "build_number": 20220920185015,
+        "version_string": "1.13.0-rc.7"
       }
     },
     {
       "data": {
-        "checksum": "6ffb0aaa5b7d76ce29a8460da26014eef438d077bfecf440198df041c17cedfe",
-        "contents_checksum": "bb0711b94470949df670ebedd6dccad98334276aab1547750be9b73ba31f9079",
-        "size": 26179434,
-        "source": "components/google-cloud-sdk-nomos-linux-x86_64-20220826172526.tar.gz",
+        "checksum": "04542a9dbdb94a0cc4f28a7c61d1f8883a9918366fa2b7449458431c8eed78e2",
+        "contents_checksum": "e916b7982d9ac6827821d0d020976818ce85438cf1a5dd0a8d5daf0610101bbc",
+        "size": 26198140,
+        "source": "components/google-cloud-sdk-nomos-linux-x86_64-20220920185015.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -6071,8 +6238,8 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20220826172526,
-        "version_string": "1.12.2-rc.2"
+        "build_number": 20220920185015,
+        "version_string": "1.13.0-rc.7"
       }
     },
     {
@@ -6764,10 +6931,10 @@
     },
     {
       "data": {
-        "checksum": "a070114060f948bdfd1ed7f1947098b042aa260d5123f0d60fa0e145795619c9",
-        "contents_checksum": "2089133ad95150f0c960621fbd43ce19e12550bf9fc1e83af6f53e08ba99807b",
-        "size": 36344281,
-        "source": "components/google-cloud-sdk-tests-20220826172526.tar.gz",
+        "checksum": "6e094c6fb35304bded5f23069152591bfeff44a53e263a09f2412dd193b86844",
+        "contents_checksum": "55b77011bbfe6163f84c590d8ae3b8f122a640024aa6c872ced74d0bdcc2f1e7",
+        "size": 36483380,
+        "source": "components/google-cloud-sdk-tests-20220923141408.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -6784,8 +6951,8 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20220826172526,
-        "version_string": "2022.08.26"
+        "build_number": 20220923141408,
+        "version_string": "2022.09.23"
       }
     }
   ],
@@ -6804,11 +6971,11 @@
   ],
   "post_processing_command": "components post-process",
   "release_notes_url": "RELEASE_NOTES",
-  "revision": 20220826172526,
+  "revision": 20220923141408,
   "schema_version": {
     "no_update": false,
     "url": "https://dl.google.com/dl/cloudsdk/channels/rapid/google-cloud-sdk.tar.gz",
     "version": 3
   },
-  "version": "400.0.0"
+  "version": "404.0.0"
 }
diff --git a/pkgs/tools/admin/google-cloud-sdk/components.nix b/pkgs/tools/admin/google-cloud-sdk/components.nix
index 99069fe4fd9e5..4a57b99e2bae6 100644
--- a/pkgs/tools/admin/google-cloud-sdk/components.nix
+++ b/pkgs/tools/admin/google-cloud-sdk/components.nix
@@ -11,7 +11,7 @@ let
   arches = {
     x86 = "i686";
     x86_64 = "x86_64";
-    # TODO arm
+    arm = "aarch64";
   };
 
   # Mapping from GCS component operating systems to Nix operating systems
@@ -30,8 +30,8 @@ let
     in
     "${arch'}-${os'}";
 
-  # All architectures that are supported
-  allArches = builtins.attrValues arches;
+  # All architectures that are supported by GCS
+  allArches = builtins.attrNames arches;
 
   # A description of all available google-cloud-sdk components.
   # It's a JSON file with a list of components, along with some metadata
diff --git a/pkgs/tools/admin/google-cloud-sdk/data.nix b/pkgs/tools/admin/google-cloud-sdk/data.nix
index 5c634ff61e015..8a0c6ce570ff6 100644
--- a/pkgs/tools/admin/google-cloud-sdk/data.nix
+++ b/pkgs/tools/admin/google-cloud-sdk/data.nix
@@ -1,32 +1,32 @@
 # DO NOT EDIT! This file is generated automatically by update.sh
 { }:
 {
-  version = "400.0.0";
+  version = "404.0.0";
   googleCloudSdkPkgs = {
     x86_64-linux =
       {
-        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-400.0.0-linux-x86_64.tar.gz";
-        sha256 = "0i9xvg26d4rl3nas49rmxbmbwq127nwvgp0di7rszddj63wj7py9";
+        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-404.0.0-linux-x86_64.tar.gz";
+        sha256 = "0s2qr7krzd9z6s2i00qksxnxd1fcp318gxg8fm46rgh2r482k2k5";
       };
     x86_64-darwin =
       {
-        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-400.0.0-darwin-x86_64.tar.gz";
-        sha256 = "0ajywp16105yhxs5hv4cz7vg3jr9wqggb0fcimb23qpvn3xqh6xw";
+        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-404.0.0-darwin-x86_64.tar.gz";
+        sha256 = "11kzzny8a3xs1lijwwkv60qnmcxbfgzpmrdcqbcf6957b5ml6rsl";
       };
     aarch64-linux =
       {
-        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-400.0.0-linux-arm.tar.gz";
-        sha256 = "0dpl7cd1z05q0mgp5qxn23jjsvjhbfxhpjbd4pmhl62qp8x4m5mm";
+        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-404.0.0-linux-arm.tar.gz";
+        sha256 = "11yzs4cc9cn8xwv51mc2qmx84nbvv1zragsdy38wrmfpd5m27jx3";
       };
     aarch64-darwin =
       {
-        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-400.0.0-darwin-arm.tar.gz";
-        sha256 = "16lxw3vrydzn36zwvl74akfgxx6m7mrjfd3dc8kvl1wvbbdqqz3j";
+        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-404.0.0-darwin-arm.tar.gz";
+        sha256 = "03bc1hk3blky9x8wf3lhpblxv1zyq23wimzwd7bb00h35935x449";
       };
     i686-linux =
       {
-        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-400.0.0-linux-x86.tar.gz";
-        sha256 = "09mn21ii17h8rfcmkwgmm3wpkiykgw9kc1dxjpaazxvxbmx0bi2y";
+        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-404.0.0-linux-x86.tar.gz";
+        sha256 = "0zhx9xbp090acdxlii7m94j792nlbvl4agjy35q1z8pi45hc7nl9";
       };
   };
 }
diff --git a/pkgs/tools/admin/google-cloud-sdk/update.sh b/pkgs/tools/admin/google-cloud-sdk/update.sh
index ce19ef1a6e300..114342010f684 100755
--- a/pkgs/tools/admin/google-cloud-sdk/update.sh
+++ b/pkgs/tools/admin/google-cloud-sdk/update.sh
@@ -6,7 +6,7 @@ BASE_URL="$CHANNEL_URL/downloads/google-cloud-sdk"
 
 # Version of Google Cloud SDK from
 # https://cloud.google.com/sdk/docs/release-notes
-VERSION="400.0.0"
+VERSION="404.0.0"
 
 function genMainSrc() {
     local url="${BASE_URL}-${VERSION}-${1}-${2}.tar.gz"
diff --git a/pkgs/tools/admin/lego/default.nix b/pkgs/tools/admin/lego/default.nix
index 5d565b2188794..609c085edbd36 100644
--- a/pkgs/tools/admin/lego/default.nix
+++ b/pkgs/tools/admin/lego/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "lego";
-  version = "4.8.0";
+  version = "4.9.0";
 
   src = fetchFromGitHub {
     owner = "go-acme";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-OYzk5SQQW3360hc/52bYoW3JJDGk/NRUF8IzIjtWlpc=";
+    sha256 = "sha256-lMPyquQ+CeMe/V+hG4h61+GiuCXqjVAcTV9Fo3DNb6E=";
   };
 
-  vendorSha256 = "sha256-FtlVYeW5ac/qOn1WFqbhix8xw/ARol+k3uiyH/dBQbk=";
+  vendorSha256 = "sha256-gHwyXzmws99tPRJKR/boc0Hf+b5h9ZkzH2aiN8u6Z0I=";
 
   doCheck = false;
 
diff --git a/pkgs/tools/admin/procs/default.nix b/pkgs/tools/admin/procs/default.nix
index f6b9b96985874..b7158eefd68f8 100644
--- a/pkgs/tools/admin/procs/default.nix
+++ b/pkgs/tools/admin/procs/default.nix
@@ -1,17 +1,17 @@
-{ lib, stdenv, fetchFromGitHub, rustPlatform, installShellFiles, Security, libiconv }:
+{ lib, stdenv, fetchFromGitHub, rustPlatform, installShellFiles, Security, libiconv, Libsystem }:
 
 rustPlatform.buildRustPackage rec {
   pname = "procs";
-  version = "0.13.1";
+  version = "0.13.2";
 
   src = fetchFromGitHub {
     owner = "dalance";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-/xq1aLdr672v4iAXXLcu47QcsdbLErn3VN/w3sYo9y0=";
+    sha256 = "sha256-lf+vJHR4+PZgoZNP4cSJswP0hi8YkUV85JISJxSjyjU=";
   };
 
-  cargoSha256 = "sha256-BykfUGKBiqr3DoYcqKpY3R84LAuJ19D94xnZcQGKwuI=";
+  cargoSha256 = "sha256-evnUG94PagkgKoVwyd4aBaLXYYpF2k7zGhLRhdNDcoU=";
 
   nativeBuildInputs = [ installShellFiles ];
 
@@ -24,7 +24,7 @@ rustPlatform.buildRustPackage rec {
     installShellCompletion procs.{bash,fish} --zsh _procs
   '';
 
-  buildInputs = lib.optionals stdenv.isDarwin [ Security libiconv ];
+  buildInputs = lib.optionals stdenv.isDarwin [ Security libiconv Libsystem ];
 
   meta = with lib; {
     description = "A modern replacement for ps written in Rust";
@@ -32,6 +32,5 @@ rustPlatform.buildRustPackage rec {
     changelog = "https://github.com/dalance/procs/raw/v${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ Br1ght0ne SuperSandro2000 sciencentistguy ];
-    broken = stdenv.isDarwin && stdenv.isx86_64;
   };
 }
diff --git a/pkgs/tools/admin/pulumi/data.nix b/pkgs/tools/admin/pulumi/data.nix
index ddb4874267a25..8c1b5bcaf764d 100644
--- a/pkgs/tools/admin/pulumi/data.nix
+++ b/pkgs/tools/admin/pulumi/data.nix
@@ -1,40 +1,40 @@
 # DO NOT EDIT! This file is generated automatically by update.sh
 { }:
 {
-  version = "3.40.1";
+  version = "3.42.0";
   pulumiPkgs = {
     x86_64-linux = [
       {
-        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.40.1-linux-x64.tar.gz";
-        sha256 = "07zh77spxsgrq409p61pfik0b8r87ib02x8hcpfhsjd9kgmc9614";
+        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.42.0-linux-x64.tar.gz";
+        sha256 = "1lrfswqw5xd0pxmkfaf77bny94f225rbcjxf7py4s2kbhvc580fv";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v5.4.0-linux-amd64.tar.gz";
         sha256 = "0g3s60yscxrwzbq40zii0mnh2z9yggz0wc2kg9yrfzybrmsmx8z3";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v3.0.0-linux-amd64.tar.gz";
-        sha256 = "0anmkwqwwnk44069d01crrj3y73nrwa5hknxc8fh3x1vwc2jzvfc";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v3.1.0-linux-amd64.tar.gz";
+        sha256 = "1fak0izpaq13jsnab7y1c0vk95lja6w767gk0rp3mp76h6r0mxc8";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.28.0-linux-amd64.tar.gz";
         sha256 = "1hbjni74gqyfsp4amn1mimz53v89fhrmpq3aa46a6mgvv47215ks";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v2.8.0-linux-amd64.tar.gz";
-        sha256 = "0ipzn5947fgjnsg9lci4zsb685880gxigckd500mq0c9w2cbaw2n";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v2.9.0-linux-amd64.tar.gz";
+        sha256 = "15qs31vpip7dbzmhaa2rh6439qdd9b88dblkilwr3rypwiwdsdvy";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v2.13.0-linux-amd64.tar.gz";
         sha256 = "0y7np2qg2hp81cji78bjbcw7ng2g81y1asbnqb2jd2ip0yf43aqp";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.14.0-linux-amd64.tar.gz";
-        sha256 = "099ljh9kkjp2cy64qs6mvbscgr9whmgqd81c6nfmvxjbfy1i118p";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.16.2-linux-amd64.tar.gz";
+        sha256 = "1r65ylh2wpmv3p4wvr93b7yy73s83lv68xv5858lmbx8iblnl9c1";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.19.0-linux-amd64.tar.gz";
-        sha256 = "10xmh1apjhp1b94c8z8v7x3zpmv2nlh85vbkd83d7pb4cvv0dixq";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.21.0-linux-amd64.tar.gz";
+        sha256 = "0fh94k411qravqw5iz9m91aasz9s6lcvc73nw6h3v2df1j6rgm0q";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.28.0-linux-amd64.tar.gz";
@@ -45,8 +45,8 @@
         sha256 = "12sxvvjzf9761cag1kah7sdvjg98mi05jrfy0g06xf7lghlyxpcr";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v4.11.0-linux-amd64.tar.gz";
-        sha256 = "16hkrmw35vvsg1m9bfh6bw989yfmn784hzj7058hpd6mwhac7c07";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v4.12.1-linux-amd64.tar.gz";
+        sha256 = "177s1vi6ci4v04gyck8c2p9r17w8538migw6d1n7yzyf74qjdwhl";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.6.0-linux-amd64.tar.gz";
@@ -57,8 +57,8 @@
         sha256 = "1wcxz4sg7ca0n8csp3j2qjd60cvn984mllbv3js55rrzbh8iqfwp";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.15.2-linux-amd64.tar.gz";
-        sha256 = "0dv6vnm34qnj4qlw65fffb4knbph3yy1afj7zim9bzxbm07nv2wh";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.16.0-linux-amd64.tar.gz";
+        sha256 = "0dwnrqng4w02wcmznksdxksak9kgfrj6pg2jny175a1lr6584blf";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v3.4.1-linux-amd64.tar.gz";
@@ -73,28 +73,28 @@
         sha256 = "1087d10z0h2vlx18czh4yhplb4qqyy94zf0hvqm5n6vmyh9kpr8j";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.37.0-linux-amd64.tar.gz";
-        sha256 = "11wpxzvzw4mbp3mqywgy5n9fx6217w823hqmb6an6m8zskrfgh5m";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.39.0-linux-amd64.tar.gz";
+        sha256 = "11qik0dg12svgh93f5xr7sbqs0bkb8m680cn252lwcwdyz06hfni";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v4.17.0-linux-amd64.tar.gz";
-        sha256 = "14sdhvn2y32y1a6ydqgy1bsbld976c66aiyc9raybxjn9ym28gkd";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v5.0.0-linux-amd64.tar.gz";
+        sha256 = "1n7hmbqc3a4z44wa8pzmfxqzg895pynqsjk0php9z052nkl034kz";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v4.8.0-linux-amd64.tar.gz";
         sha256 = "08kal2cwbaaxif0hxzxylrqkg0msz1jw1l65dzp3r903jclwc1zx";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.26.0-linux-amd64.tar.gz";
-        sha256 = "196pgs43l6n98hf7068a9684jvhmaszs8pql7p9gwcf0539fdsx6";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.26.1-linux-amd64.tar.gz";
+        sha256 = "05p0c088h70js6r1pphv3yaiiz9pkjm2yrang1vl1m5011j2q044";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.10.1-linux-amd64.tar.gz";
         sha256 = "09i6lh9wfsfpa5jkj2nb80f3gvmpg3m3flfgfcc794khlrikqmib";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.21.2-linux-amd64.tar.gz";
-        sha256 = "1ihy52ckcvw2kpaz7905nm19lzahw26c39x4v8mrlz7zjb0pgxj8";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.21.4-linux-amd64.tar.gz";
+        sha256 = "0xdwl5xh114s61wb662239nsqad7jbkr26xs3d3gxm8z1wy6nw90";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v3.10.1-linux-amd64.tar.gz";
@@ -121,16 +121,16 @@
         sha256 = "0vxspn9rjb928ax4755086kil6j3616ga5zn3d6xrwm9cvmal0kb";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.13.0-linux-amd64.tar.gz";
-        sha256 = "1ymcbqb2rx8g1nsvppasqlc2ws00jzrx33k6cghy14yjkd82n6pv";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.14.0-linux-amd64.tar.gz";
+        sha256 = "1i43wmldn3q0jshfa07rldbn7rhyg5r536dzwnfmp47dvk6jhzyl";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.22.0-linux-amd64.tar.gz";
         sha256 = "0rdvz6ibk41dhyfsqblfj56ib5hrr6vsx0z9kgzz5qamyjd1580h";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.9.0-linux-amd64.tar.gz";
-        sha256 = "1i5y1kqyc84v90c7lh5gaydk5qvvs62gc6xxd6n8zzmn9ygkr0c4";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.10.0-linux-amd64.tar.gz";
+        sha256 = "1xf1xikal6fp381pxb7xnq37vx3ica81452xckgpsdn0b2dybxlz";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.11.0-linux-amd64.tar.gz";
@@ -163,36 +163,36 @@
     ];
     x86_64-darwin = [
       {
-        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.40.1-darwin-x64.tar.gz";
-        sha256 = "0av0i5g2450l5ndvihxw32cxzamjqwr338200yaw4wh2qyl8p7rw";
+        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.42.0-darwin-x64.tar.gz";
+        sha256 = "1n036l138nz8w8ciidfhvqpyd1qpfyrv4nqy87z9kygx9pivhj20";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v5.4.0-darwin-amd64.tar.gz";
         sha256 = "0f62xfma1d299625ydj3f95anz47l41dyasq9vpvsi1cqii6h4a1";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v3.0.0-darwin-amd64.tar.gz";
-        sha256 = "156qwg2isv1dflij4y1w3kb31wkn3g0q0ajcy753d7vn8dmwycxr";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v3.1.0-darwin-amd64.tar.gz";
+        sha256 = "0zkg8iqd9n8hfaai0l5vcl6vgi1mh3ggs9bsszrcl7kyzkf3zyyy";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.28.0-darwin-amd64.tar.gz";
         sha256 = "127b62pznybyp4scv1avwpw4ni540496yki0h0k4blm5gnrvr600";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v2.8.0-darwin-amd64.tar.gz";
-        sha256 = "0zz3jb5hbgzwcdcyivz5pd4lfn716fnzld9pms4bjjfvcgpvydn2";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v2.9.0-darwin-amd64.tar.gz";
+        sha256 = "1iw5xzgyfjr6j9dmhvmbnfhw8q4x94af5jb3jzzhbfjnsrbricwb";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v2.13.0-darwin-amd64.tar.gz";
         sha256 = "0dz583zm47v2x2aznc4yszxibmp9schp3b38yzmbry0xrkm1gryx";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.14.0-darwin-amd64.tar.gz";
-        sha256 = "1ar4cfjmq3iszh08i9xmrqvhwc7lb8qvyhnnx4nh99wyw32ssk0a";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.16.2-darwin-amd64.tar.gz";
+        sha256 = "1h4pnhz1iimakg7ngfkpa0hlzh9bp42mhp002fa0z40g55y8i0h9";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.19.0-darwin-amd64.tar.gz";
-        sha256 = "1g5hjpi7w2zwknv6lcvlrbwvd7nq73n5953qzx764hfh6whp5431";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.21.0-darwin-amd64.tar.gz";
+        sha256 = "0382ambpmfp3bwvmwgnpz08jkrxmiwwj5r6a4crq39s8d4lsf3nb";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.28.0-darwin-amd64.tar.gz";
@@ -203,8 +203,8 @@
         sha256 = "026i7hxa80b7mipw792anv1wplmz2w23irfy26bsh77an36hk46y";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v4.11.0-darwin-amd64.tar.gz";
-        sha256 = "0gs08839j2miqvw8rx4b3hz76y5ac6sy7h8pryychcficgf3h2px";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v4.12.1-darwin-amd64.tar.gz";
+        sha256 = "18k9gzsbx48q17y9p8i5wqbjcq9bq94ha96lxvljcyf0jmsklkj6";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.6.0-darwin-amd64.tar.gz";
@@ -215,8 +215,8 @@
         sha256 = "1g3wxvw27v942s4fdym6nxcgipxrqgkh219mi6dn4j3n3kp15scj";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.15.2-darwin-amd64.tar.gz";
-        sha256 = "031pkzx7xshzbf9x5fb84a9699c6zcwqvx295s5diqw4jrcx6003";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.16.0-darwin-amd64.tar.gz";
+        sha256 = "08v8s77plv9fv5bjx6g6wfq1fxknmmacws33zgl06vqdgdsfg1gx";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v3.4.1-darwin-amd64.tar.gz";
@@ -231,28 +231,28 @@
         sha256 = "02p8g3kirc9g9jgmv50l8c9jamidk389in33f7qnz22hck880dr8";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.37.0-darwin-amd64.tar.gz";
-        sha256 = "1p37i9c8d66rvjp11ghjh5fhxg07lgwgpjmr0amjic1vpxlx96wc";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.39.0-darwin-amd64.tar.gz";
+        sha256 = "0s2lvm3zf5dnirm9ka8ilrk5l4m39bdid2r6dpldfc326h079xva";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v4.17.0-darwin-amd64.tar.gz";
-        sha256 = "16a8q87yb4d6ssdrvw5zgflq7bfr6zpf4ldf01y0ffc7hmgwpwbn";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v5.0.0-darwin-amd64.tar.gz";
+        sha256 = "0kz7ah6a1lai12n0lq0lygvszs8fh7fnnz92na06p517bl5dbink";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v4.8.0-darwin-amd64.tar.gz";
         sha256 = "1z9kg9h1gw4s9k1qypir62hv4flx4njrxbxfkknawx29dps3wkff";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.26.0-darwin-amd64.tar.gz";
-        sha256 = "01d2vc6fqzp7zg30pmyp3i3jm0004k2jk8xxqp4hy03p6v7xvyc1";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.26.1-darwin-amd64.tar.gz";
+        sha256 = "03l7q39241krq60dgzlzic49jdjpymxpln2kkgwy9yki9h0ipc5s";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.10.1-darwin-amd64.tar.gz";
         sha256 = "1jp9cfw8jj1wms73b5d1xhkmnylly061fxilxzvnpd49glam7da6";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.21.2-darwin-amd64.tar.gz";
-        sha256 = "038phqrwvyjqh9kvnrn9ic4ac3h6niahrlwz81lllqg757ibrd08";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.21.4-darwin-amd64.tar.gz";
+        sha256 = "1afb90qzwgdvl3lvgqzrkcknv4gd4krdcxmwd39xzzb2kjfd1fh3";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v3.10.1-darwin-amd64.tar.gz";
@@ -279,16 +279,16 @@
         sha256 = "0086l2ch5wdhdilwipln9clq09lnj2njgpp2wn8mxvd69xjccsz0";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.13.0-darwin-amd64.tar.gz";
-        sha256 = "1imgmpn2n9daghpaca6qlww7bp3dmw894fv54j43cpxkm6z29kjk";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.14.0-darwin-amd64.tar.gz";
+        sha256 = "1a7mq8qw17g4f6zfgdnym77q7j8dc1iigxcwmnz46d07mjq34d0h";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.22.0-darwin-amd64.tar.gz";
         sha256 = "1p27dsar8jl7krqz2vrzics45g8s85l4xx3216207x2hq7qbdfb5";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.9.0-darwin-amd64.tar.gz";
-        sha256 = "0yv03kh209cwzi1b47bhsbxslmnk454qkx5lqcn6qnjyc7ij7k6x";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.10.0-darwin-amd64.tar.gz";
+        sha256 = "08nr4qwilg4l3rrjndpr5r9k7fccdqlfzgh0i2np7hk3d5g5nar7";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.11.0-darwin-amd64.tar.gz";
@@ -321,36 +321,36 @@
     ];
     aarch64-linux = [
       {
-        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.40.1-linux-arm64.tar.gz";
-        sha256 = "1vb7ad3gadqhxf4jv5fkr9pf7lzliwaazmfl6j2ja5imqdl4iyri";
+        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.42.0-linux-arm64.tar.gz";
+        sha256 = "11dz7i0nnsanj8xams0pr9nxbq9rwfzrjyg4m8wi5nv6q3frnml9";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v5.4.0-linux-arm64.tar.gz";
         sha256 = "10gmwqfhvz1yp0ld69w01fmjnfw907pa0pmzjndm3p9fwqjrr2nd";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v3.0.0-linux-arm64.tar.gz";
-        sha256 = "16jkz0qrp2pvz60388n97bf59idmfv5j0hg0dzp78j1dhpy1aqnn";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v3.1.0-linux-arm64.tar.gz";
+        sha256 = "1qf8v5qysxxlamz36z1pnjy5mqjn8dbf6aps52rbhyk2mi6v3k7c";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.28.0-linux-arm64.tar.gz";
         sha256 = "1qrg5sq8fqyn9vq92xmdx0pql7hy4dhha3lxjp5ka386bf6jmamc";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v2.8.0-linux-arm64.tar.gz";
-        sha256 = "1n632w71bb93aajq13lgx0ijjx1wws0j8giwlv9pfp9fcgmsx42c";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v2.9.0-linux-arm64.tar.gz";
+        sha256 = "1yqqnc03hv79l1px8qxppwf8n3shdcd8jd46q1xm9f9fm7bkxd9i";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v2.13.0-linux-arm64.tar.gz";
         sha256 = "0ni0dp0wghcaybnzvvwyf0nbnyq8k2akkghxlym48z8dq7n4206y";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.14.0-linux-arm64.tar.gz";
-        sha256 = "0knzcqjpvgs9blarj0rf36racnaav8vii2yxl99rrs731cnf4l1w";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.16.2-linux-arm64.tar.gz";
+        sha256 = "132zvb1wnpwbrg1rg0pr07msfnpf1h1izwr87dki6k40kc3q12mk";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.19.0-linux-arm64.tar.gz";
-        sha256 = "0agz4izq6plzsb4j5jic6dvnkks8q37gy025y5xlrlnczrr45k41";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.21.0-linux-arm64.tar.gz";
+        sha256 = "1c4fxvmw50nrmnq3q8bnypjg2yvpsm3bs6jbw0hxb2zk3im6jjdp";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.28.0-linux-arm64.tar.gz";
@@ -361,8 +361,8 @@
         sha256 = "1bxrh89hkw9b0g20d4apwhswl1dxb4v4nn5rkkkjd91ykin5idp2";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v4.11.0-linux-arm64.tar.gz";
-        sha256 = "1l54kgg14lhgx694yrzabjn27m4xy90v7kifj9b0cdfly4jlhzhz";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v4.12.1-linux-arm64.tar.gz";
+        sha256 = "0gr30lgad0xf7f4acxj9v7r69gncfzh1x7rn7nvyibsfy7ggn80z";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.6.0-linux-arm64.tar.gz";
@@ -373,8 +373,8 @@
         sha256 = "1kmp1lg312d8l1b3sylc6fan5rracmb7rd2v871gwyqx6gya6aqk";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.15.2-linux-arm64.tar.gz";
-        sha256 = "0vanpq5mb3rdbdqflfwp8f1w94xim42ih3a7hc2cmbavyf1vg16a";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.16.0-linux-arm64.tar.gz";
+        sha256 = "0bx2dczfm1zqpkclyf1pj0m0iv2w7c3dlqdajfgism3inyb6313c";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v3.4.1-linux-arm64.tar.gz";
@@ -389,28 +389,28 @@
         sha256 = "1cymvx8dx836d2vcnakgqz51nc033702dph66w8j4swj0sg4wd92";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.37.0-linux-arm64.tar.gz";
-        sha256 = "0wihyyww8nr2asfw1qkcn7zb31w6f15j94135v7wnzljil6pfibx";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.39.0-linux-arm64.tar.gz";
+        sha256 = "1bdbf17z8a2rfgs79xvd71vj7k0zhyvjjvb3vwc46qlf9if3kzsm";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v4.17.0-linux-arm64.tar.gz";
-        sha256 = "0bjpccmn7h4cl7cvmflfzz5avh2hzmkfh3gibnjxfmgs5m92h0bf";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v5.0.0-linux-arm64.tar.gz";
+        sha256 = "0nf5s17x2k57rbmfi0b7lyicmsnm1gq1y5vfy5gpb0wxrcmnyadm";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v4.8.0-linux-arm64.tar.gz";
         sha256 = "1w0azz06rhj04gs0bvfxn0a37z16jywhsyiyhimimynwpawh2amn";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.26.0-linux-arm64.tar.gz";
-        sha256 = "0ra0ai2hfrdr9xpk83dykaddxknyngk2j6a71i4xwk3kmy4yy692";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.26.1-linux-arm64.tar.gz";
+        sha256 = "0d41jxz2rkssalw0l5vhgbxqda3wqw1m1r80nsc1yf9q6n5q0vd4";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.10.1-linux-arm64.tar.gz";
         sha256 = "0gis39k5kgdxl0i4afy78hkcmwpzm1shh4x713p7dg6h8w0afdmi";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.21.2-linux-arm64.tar.gz";
-        sha256 = "12awf88y3iy3hhvpclwlvf6nx46phn0gb84z77k3mb3mp296fnyg";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.21.4-linux-arm64.tar.gz";
+        sha256 = "1xsmnym5i7m8sqw1yciy6xgwxy5sryl0c8dqmyyclzmmxss4y3ng";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v3.10.1-linux-arm64.tar.gz";
@@ -437,16 +437,16 @@
         sha256 = "1djc9ar4x6rmi49grl4nxhycc2fbfvk9h1g2xnzl67adxh2cbgj9";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.13.0-linux-arm64.tar.gz";
-        sha256 = "0bpmmfgmi0061xrfadpijskw1hsgxk64l4kl4vrvc9l9iwjnbk64";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.14.0-linux-arm64.tar.gz";
+        sha256 = "0rwvp6v00iybqlnf52n3a1afvpvr3vvvsxql9jsv4n2wxn4w1bhb";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.22.0-linux-arm64.tar.gz";
         sha256 = "0nn7xj38injiwla8vss4nj25r53ddj0p0mplwqrk1r92l2vcihix";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.9.0-linux-arm64.tar.gz";
-        sha256 = "1b9nw8q5m30csgxq0mg6npzwbsna4nwkwh7b33gax6fimalbcpal";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.10.0-linux-arm64.tar.gz";
+        sha256 = "0p82fkch37zr53vl6wk2i1c8aplv8nk5hypjgzhjcg64a7ahlsv3";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.11.0-linux-arm64.tar.gz";
@@ -479,36 +479,36 @@
     ];
     aarch64-darwin = [
       {
-        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.40.1-darwin-arm64.tar.gz";
-        sha256 = "1zhga32lii81pdgdj6bc2zsm45v8w0sqxk1m2srxgx27kynm848q";
+        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.42.0-darwin-arm64.tar.gz";
+        sha256 = "10lrxkbb8m7pcpqwfi8klpn26k0pbm5lg7yg3y55kc8dqwl220d7";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v5.4.0-darwin-arm64.tar.gz";
         sha256 = "1v6dwsjbqmg9qnlhf5jl98r5c171xnsp3fnyfkg2h8874scg2gpp";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v3.0.0-darwin-arm64.tar.gz";
-        sha256 = "050p3lizllnszdf9w55wq9dsn8acbvfn5gh0qpyw7kknf67xjz77";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v3.1.0-darwin-arm64.tar.gz";
+        sha256 = "0a9lzmkc3c7pc6axbymnq7s9b9qwmrjndg6hspx705d1fx4vs28g";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.28.0-darwin-arm64.tar.gz";
         sha256 = "10wjnyrwrmg1qjsqlizf9g85wadss3nxmdsh87cjvdbkfb3crp3b";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v2.8.0-darwin-arm64.tar.gz";
-        sha256 = "0lcg9p0wq6mk677xp0ga8wcy0pziag5n7y86plklbd2hs5ik13y6";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v2.9.0-darwin-arm64.tar.gz";
+        sha256 = "0g882459cqbxcl9ml7mdc4s4xx6kg7srk56n0x7ypj3k0j7hjbd0";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v2.13.0-darwin-arm64.tar.gz";
         sha256 = "11qrwc44vl0s59bbhjbb15nkcy8nb9lcsw9brb7whvxh2z080nbk";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.14.0-darwin-arm64.tar.gz";
-        sha256 = "1ib3162lbcg4ri0mrqj9qjzfxfgbf47vrazx58bj24j0z804wpcg";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.16.2-darwin-arm64.tar.gz";
+        sha256 = "0xh5v19szndrj9r4gd7mx99m383rmbj13n77ny43zwbd8vbnhq6z";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.19.0-darwin-arm64.tar.gz";
-        sha256 = "1lw0gp5lyc2r1a3dsgr55adcja3rj66bfrmp5qncpdmpkcx2fs74";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.21.0-darwin-arm64.tar.gz";
+        sha256 = "1899q6zagxi5jjd4a73yfkbbm8idh5dklrzj7620jz3cc6c3mwrg";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.28.0-darwin-arm64.tar.gz";
@@ -519,8 +519,8 @@
         sha256 = "030fyfj5yd4p0f7ffwdsqvkjwxihz96vgy2qqibhyyv3p6ymdpym";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v4.11.0-darwin-arm64.tar.gz";
-        sha256 = "1762izxr7vm2invlpff99afs76vln8q87xa0kxdlsn3jp664gbhw";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v4.12.1-darwin-arm64.tar.gz";
+        sha256 = "0jp50xcv9ss156i3v173j28ia7ykslmcv8nb4a8bz10jmhkxg52v";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.6.0-darwin-arm64.tar.gz";
@@ -531,8 +531,8 @@
         sha256 = "0903sjihlr5wjf9ddnib3j072549d4342p0pnjprb4kacc1b43ln";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.15.2-darwin-arm64.tar.gz";
-        sha256 = "1s2faanxajzd0x8qd1a42nzkzfjrkinwqw7654zgb8l25bgnhykd";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.16.0-darwin-arm64.tar.gz";
+        sha256 = "1gzh37b5jmpz3ih7s7r11vx7wpph7pvn3iidy6gckrs9rw9jp7l4";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v3.4.1-darwin-arm64.tar.gz";
@@ -547,28 +547,28 @@
         sha256 = "1gmx1lympd3r4i2vsnnmd70qq3x0ijbv53j7vkys59g560rw1bvm";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.37.0-darwin-arm64.tar.gz";
-        sha256 = "029zq7r58m69gwxr8ihay70qsgm2609daqn0h62ach0p9dzyisdq";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.39.0-darwin-arm64.tar.gz";
+        sha256 = "1rfxrqyfm7dijmcg1h6ipic1wj0r177aqnrfhrql50asy0c0spmf";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v4.17.0-darwin-arm64.tar.gz";
-        sha256 = "0kqp1w7w6g9a6q0h0ahmrq2klxxj128x9dcln577f5js0yb14g1w";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v5.0.0-darwin-arm64.tar.gz";
+        sha256 = "0246m5df3xbh5kjfj2g3lifk443daphq0sccs1rbmvfzhb8lm7yv";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v4.8.0-darwin-arm64.tar.gz";
         sha256 = "02jkpzz7kyb9i8mqis4ckqz5mwpwcgas1br7vmiipk8mw1pzwhyw";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.26.0-darwin-arm64.tar.gz";
-        sha256 = "1k5a68pxis0hfk4lkfbz7s3jcj39pip035snl5p4kix6rn6k6n3n";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.26.1-darwin-arm64.tar.gz";
+        sha256 = "0b7i3g2zpcid8v5clcjrn0qhblwcacgqvypmcp4vlcxdp3x5lmsk";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.10.1-darwin-arm64.tar.gz";
         sha256 = "1679zpv2r3i2acjmx2a6i7dc47p73gf3jw1k1aclasd5cyjf46jf";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.21.2-darwin-arm64.tar.gz";
-        sha256 = "0csvmcbwpqlychwg5h12vjmdxf803aw5m6v10rlbhdhncg38zgcj";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.21.4-darwin-arm64.tar.gz";
+        sha256 = "0f6qyr1g96skvgvbdkgaqjmp5rb97558s2g1viar9pv729zk8ijr";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v3.10.1-darwin-arm64.tar.gz";
@@ -595,16 +595,16 @@
         sha256 = "1j6c83xvcanyzp1q8zwa952dplvvi0f4psfdscpplbsgzmq5v54n";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.13.0-darwin-arm64.tar.gz";
-        sha256 = "0pvfnycvnz3ram5lpvaggbhfn7lxbi74rbcndw5xw0ihpk31kjim";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.14.0-darwin-arm64.tar.gz";
+        sha256 = "07kj6rz7dh08n74zfjprjnzjcrizcmy8rfbnvfi9qkavh0mgcxvv";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.22.0-darwin-arm64.tar.gz";
         sha256 = "149isdz4fs052z1r7jfhx1mq18j8s4wrfgvbabil3wchfkgcqr8f";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.9.0-darwin-arm64.tar.gz";
-        sha256 = "09vg056rjzrp8zqh4kjjlq4dnkkzxz32kzawmaj8fxi6ds1s9y9i";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.10.0-darwin-arm64.tar.gz";
+        sha256 = "1y1hb4s9214a5nlm0byzm0w4n1c190w57b0q4grl064hnw6490v1";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.11.0-darwin-arm64.tar.gz";
diff --git a/pkgs/tools/admin/pulumi/update.sh b/pkgs/tools/admin/pulumi/update.sh
index 23b400f249480..163de7a9b61d5 100755
--- a/pkgs/tools/admin/pulumi/update.sh
+++ b/pkgs/tools/admin/pulumi/update.sh
@@ -12,7 +12,7 @@ SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
 
 # Version of Pulumi from
 # https://www.pulumi.com/docs/get-started/install/versions/
-VERSION="3.40.1"
+VERSION="3.42.0"
 
 # An array of plugin names. The respective repository inside Pulumi's
 # Github organization is called pulumi-$name by convention.
diff --git a/pkgs/tools/admin/swapspace/default.nix b/pkgs/tools/admin/swapspace/default.nix
index a608202406999..a859de9967070 100644
--- a/pkgs/tools/admin/swapspace/default.nix
+++ b/pkgs/tools/admin/swapspace/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "swapspace";
-  version = "1.17";
+  version = "1.18";
 
   src = fetchFromGitHub {
     owner = "Tookmund";
     repo = "Swapspace";
     rev = "v${version}";
-    sha256 = "sha256-v1kSkepZm6+S4wf86ETgQzEAZBLJ2jQBgCRdF7yvuxs=";
+    sha256 = "sha256-tzsw10cpu5hldkm0psWcFnWToWQejout/oGHJais6yw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/admin/synapse-admin/default.nix b/pkgs/tools/admin/synapse-admin/default.nix
index 098cc57d97e7b..2cde74ba45325 100644
--- a/pkgs/tools/admin/synapse-admin/default.nix
+++ b/pkgs/tools/admin/synapse-admin/default.nix
@@ -23,6 +23,9 @@ mkYarnPackage rec {
   NODE_ENV = "production";
   ${if baseUrl != null then "REACT_APP_SERVER" else null} = baseUrl;
 
+  # error:0308010C:digital envelope routines::unsupported
+  NODE_OPTIONS = "--openssl-legacy-provider";
+
   buildPhase = ''
     runHook preBuild
 
diff --git a/pkgs/tools/admin/tigervnc/default.nix b/pkgs/tools/admin/tigervnc/default.nix
index 549096ec0e430..724301854b403 100644
--- a/pkgs/tools/admin/tigervnc/default.nix
+++ b/pkgs/tools/admin/tigervnc/default.nix
@@ -92,7 +92,7 @@ stdenv.mkDerivation rec {
         --with-xkb-path=${xkeyboard_config}/share/X11/xkb \
         --with-xkb-bin-directory=${xorg.xkbcomp}/bin \
         --with-xkb-output=$out/share/X11/xkb/compiled
-    make TIGERVNC_SRC=$src TIGERVNC_BUILDDIR=`pwd`/../.. -j$NIX_BUILD_CORES -l$NIX_BUILD_CORES
+    make TIGERVNC_SRC=$src TIGERVNC_BUILDDIR=`pwd`/../.. -j$NIX_BUILD_CORES
     popd
   '' + lib.optionalString stdenv.isDarwin ''
     make dmg
diff --git a/pkgs/tools/admin/trivy/default.nix b/pkgs/tools/admin/trivy/default.nix
index 32dacb1ec1729..c6676a89d9492 100644
--- a/pkgs/tools/admin/trivy/default.nix
+++ b/pkgs/tools/admin/trivy/default.nix
@@ -15,7 +15,7 @@ buildGoModule rec {
   };
   # hash missmatch on across linux and darwin
   proxyVendor = true;
-  vendorSha256 = "sha256-iXc70QOZZjnFuvRDm9e1uWqjkJNqV/1uAu1EdZNjL70=";
+  vendorSha256 = "sha256-h9GydAVW2mIFNMlz9aEW6hUioD9noQwnueatkoQDkpY=";
 
   excludedPackages = "misc";
 
diff --git a/pkgs/tools/admin/wander/default.nix b/pkgs/tools/admin/wander/default.nix
index f215deacac996..5eda08a6b1c88 100644
--- a/pkgs/tools/admin/wander/default.nix
+++ b/pkgs/tools/admin/wander/default.nix
@@ -1,17 +1,41 @@
-{ buildGoModule, fetchFromGitHub, lib }:
+{ wander, buildGoModule, fetchFromGitHub, fetchpatch, installShellFiles, lib, testers }:
 
 buildGoModule rec {
   pname = "wander";
-  version = "0.7.0";
+  version = "0.8.0";
 
   src = fetchFromGitHub {
     owner = "robinovitch61";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-aQqJDUDYHoUZ6ixnY3lmFOx29QpRRke5XHFIpsA+Bnw=";
+    sha256 = "sha256-G/TrfnmEyomdUCN5nUS9v5iqeUzgZzMLUZnfroQLZuk=";
   };
 
-  vendorSha256 = "sha256-T+URnRLumXFz48go9TN0Wha99T03OWGfDK7cQ+zKeRI=";
+  vendorSha256 = "sha256-iTaZ5/0UrLJ3JE3FwQpvjKKrhqklG4n1WFTJhWfj/rI=";
+
+  patches = [
+    (fetchpatch {
+      url = "https://github.com/robinovitch61/wander/commit/b3d3249541de005404a41c17a15218a4f73f68e5.patch";
+      sha256 = "sha256-z8bdSFcAqnwEu0gupxW/L1o/asyxbvTYIdtLZNmQpz8=";
+    })
+  ];
+
+  ldflags = [ "-X github.com/robinovitch61/wander/cmd.Version=v${version}" ];
+
+  nativeBuildInputs = [ installShellFiles ];
+
+  postInstall = ''
+    installShellCompletion --cmd wander \
+      --fish <($out/bin/wander completion fish) \
+      --bash <($out/bin/wander completion bash) \
+      --zsh <($out/bin/wander completion zsh)
+  '';
+
+  passthru.tests.version = testers.testVersion {
+    package = wander;
+    command = "wander --version";
+    version = "v${version}";
+  };
 
   meta = with lib; {
     description = "Terminal app/TUI for HashiCorp Nomad";
diff --git a/pkgs/tools/archivers/xarchiver/default.nix b/pkgs/tools/archivers/xarchiver/default.nix
index 12d112de54a6c..8862ad8030bff 100644
--- a/pkgs/tools/archivers/xarchiver/default.nix
+++ b/pkgs/tools/archivers/xarchiver/default.nix
@@ -2,14 +2,14 @@
   coreutils, zip, unzip, p7zip, unar, gnutar, bzip2, gzip, lhasa, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
-  version = "0.5.4.18";
+  version = "0.5.4.19";
   pname = "xarchiver";
 
   src = fetchFromGitHub {
     owner = "ib";
     repo = "xarchiver";
     rev = version;
-    sha256 = "sha256-WBHsUMI4xl1P17aBTuxxyGOhQzOnd8ZhS/ped8nXMLA=";
+    sha256 = "sha256-YCfjOGbjjv4ntNDK3E49hYCVYDhMsRBJ7zsHt8hqQ7Y=";
   };
 
   nativeBuildInputs = [ intltool pkg-config makeWrapper wrapGAppsHook ];
diff --git a/pkgs/tools/audio/liquidsoap/full.nix b/pkgs/tools/audio/liquidsoap/full.nix
index b390c943cd2a7..8ef960625ec80 100644
--- a/pkgs/tools/audio/liquidsoap/full.nix
+++ b/pkgs/tools/audio/liquidsoap/full.nix
@@ -7,14 +7,14 @@
 
 let
   pname = "liquidsoap";
-  version = "2.0.6";
+  version = "2.1.2";
 in
 stdenv.mkDerivation {
   inherit pname version;
 
   src = fetchurl {
     url = "https://github.com/savonet/${pname}/releases/download/v${version}/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-1wD9BApbDA/ovzZoniay+jciP/V2C8EoGQehd5N8PPQ=";
+    sha256 = "sha256-e7iCBY9xKQZrkQ+IlahE1KEbDW89tTIlpGvHZubh3bM=";
   };
 
   postFixup = ''
@@ -35,11 +35,13 @@ stdenv.mkDerivation {
       ocamlPackages.mm
       ocamlPackages.ocaml_pcre
       ocamlPackages.menhir ocamlPackages.menhirLib
+      ocamlPackages.camomile
+      ocamlPackages.ocurl
+      ocamlPackages.uri
       ocamlPackages.sedlex
 
       # Recommended dependencies
-      ocamlPackages.camomile
-      ocamlPackages.samplerate
+      ocamlPackages.ffmpeg
 
       # Optional dependencies
       ocamlPackages.camlimages
@@ -51,8 +53,6 @@ stdenv.mkDerivation {
       ocamlPackages.dssi
       ocamlPackages.faad
       ocamlPackages.fdkaac
-      ocamlPackages.srt
-      ocamlPackages.ffmpeg
       ocamlPackages.flac
       ocamlPackages.frei0r
       ocamlPackages.gstreamer
@@ -60,6 +60,7 @@ stdenv.mkDerivation {
       ocamlPackages.ladspa
       ocamlPackages.lame
       ocamlPackages.lastfm
+      ocamlPackages.lilv
       ocamlPackages.lo
       ocamlPackages.mad
       ocamlPackages.magic
@@ -68,6 +69,7 @@ stdenv.mkDerivation {
       ocamlPackages.portaudio
       ocamlPackages.pulseaudio
       ocamlPackages.shine
+      ocamlPackages.samplerate
       ocamlPackages.soundtouch
       ocamlPackages.speex
       ocamlPackages.srt
@@ -82,10 +84,7 @@ stdenv.mkDerivation {
       ocamlPackages.tsdl-ttf
 
       # Undocumented dependencies
-      ocamlPackages.ocurl
-      ocamlPackages.lilv
       ocamlPackages.graphics
-      ocamlPackages.yojson
       ocamlPackages.cohttp-lwt-unix
     ];
 
diff --git a/pkgs/tools/audio/midimonster/default.nix b/pkgs/tools/audio/midimonster/default.nix
index 3792d997aa000..841704427c2b4 100644
--- a/pkgs/tools/audio/midimonster/default.nix
+++ b/pkgs/tools/audio/midimonster/default.nix
@@ -19,7 +19,8 @@ stdenv.mkDerivation rec {
   pname = "midimonster";
   version = "0.6.0";
 
-  buildInputs = [pkg-config gnumake gcc lua5_4 openssl jack1 python3 alsa-lib ncurses libevdev];
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [gnumake gcc lua5_4 openssl jack1 python3 alsa-lib ncurses libevdev];
 
   src = fetchFromGitHub {
     repo = "midimonster";
diff --git a/pkgs/tools/audio/mpdcron/default.nix b/pkgs/tools/audio/mpdcron/default.nix
index 94ba5a56d032b..924181608af44 100644
--- a/pkgs/tools/audio/mpdcron/default.nix
+++ b/pkgs/tools/audio/mpdcron/default.nix
@@ -31,10 +31,9 @@ in stdenv.mkDerivation {
     sha256 = "0vdksf6lcgmizqr5mqp0bbci259k0dj7gpmhx32md41jlmw5skaw";
   };
 
-  nativeBuildInputs = [ autoconf automake ];
+  nativeBuildInputs = [ autoconf automake pkg-config ];
   buildInputs = [
     libtool
-    pkg-config
     glib
     libdaemon
     pandoc
diff --git a/pkgs/tools/backup/dump/default.nix b/pkgs/tools/backup/dump/default.nix
index 75a449a1276af..f9e1b68ac395a 100644
--- a/pkgs/tools/backup/dump/default.nix
+++ b/pkgs/tools/backup/dump/default.nix
@@ -13,7 +13,8 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-0CGs3k+77T2T662YFCL2cfSNZrKeyI196DZC7Pv/T9A=";
   };
 
-  buildInputs = [ e2fsprogs pkg-config ncurses readline ];
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ e2fsprogs ncurses readline ];
 
   meta = with lib; {
     homepage = "https://dump.sourceforge.io/";
diff --git a/pkgs/tools/backup/kopia/default.nix b/pkgs/tools/backup/kopia/default.nix
index ba81f7f360668..786e4bd859d1d 100644
--- a/pkgs/tools/backup/kopia/default.nix
+++ b/pkgs/tools/backup/kopia/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "kopia";
-  version = "0.12.0";
+  version = "0.12.1";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-HiM9rEdC9q3MxU6TugnyMOefakFY47HhbCdJG83m+C8=";
+    sha256 = "sha256-5zocfkNHsTFl3Sjwkr7dGnDY+4WO20F5AMgjfFulNd0=";
   };
 
-  vendorSha256 = "sha256-7eT2HeYxyUb3MUhdjZoAFs+6GzAyTUbvE0QlXnt06uU=";
+  vendorSha256 = "sha256-Xmd4Q2X0cur4XGEjy1ysEEQkNqch4G+jGkPnrepgP6g=";
 
   doCheck = false;
 
diff --git a/pkgs/tools/backup/zfsbackup/default.nix b/pkgs/tools/backup/zfsbackup/default.nix
index 332ad619a431d..29d4d5392ae80 100644
--- a/pkgs/tools/backup/zfsbackup/default.nix
+++ b/pkgs/tools/backup/zfsbackup/default.nix
@@ -6,17 +6,17 @@
 
 buildGoModule rec {
   pname = "zfsbackup";
-  version = "unstable-2021-05-26";
-  rev = "2d4534b920d3c57552667e1c6da9978b3a9278f0";
+  version = "unstable-2022-09-23";
+  rev = "a30f1a44bcae5f64cfb36a12926242a968a759c6";
 
   src = fetchFromGitHub {
     owner = "someone1";
     repo = "zfsbackup-go";
     inherit rev;
-    sha256 = "sha256-slVwXXGLvq+eAlqzD8p1fnc17CGUBY0Z68SURBBuf2k=";
+    sha256 = "sha256-ZJ7gtT4AdMLEs2+hJa2Sia0hSoQd3CftdqRsH/oJxd8=";
   };
 
-  vendorSha256 = "sha256-jpxp8RKDBrkBBaY89QnKYGWFI/DUURUVX8cPJ/qoLrg=";
+  vendorSha256 = "sha256-aYAficUFYYhZygfQZyczP49CeouAKKZJW8IFlkFh9lI=";
 
   ldflags = [ "-w" "-s" ];
 
diff --git a/pkgs/tools/compression/bzip3/default.nix b/pkgs/tools/compression/bzip3/default.nix
index 3b532f5ab8683..7ce09405dedb1 100644
--- a/pkgs/tools/compression/bzip3/default.nix
+++ b/pkgs/tools/compression/bzip3/default.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation rec {
   pname = "bzip3";
-  version = "1.1.5";
+  version = "1.1.6";
 
   outputs = [ "bin" "dev" "out" ];
 
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     owner = "kspalaiologos";
     repo = "bzip3";
     rev = version;
-    hash = "sha256-HTflIcEZ57EC1zxcmG6Wg0QErpqiq8DNawhLkVogCYI=";
+    hash = "sha256-MtD1pAznoH3yqaMO5P8GVexZSWZJxqADwh1sYvecAew=";
   };
 
   postPatch = ''
diff --git a/pkgs/tools/compression/gzip/default.nix b/pkgs/tools/compression/gzip/default.nix
index bd28ca63e80a4..771188a98cd9f 100644
--- a/pkgs/tools/compression/gzip/default.nix
+++ b/pkgs/tools/compression/gzip/default.nix
@@ -24,7 +24,14 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ xz.bin ];
 
-  makeFlags = [ "SHELL=/bin/sh" "GREP=grep" ];
+  makeFlags = [
+    "SHELL=/bin/sh"
+    "GREP=grep"
+    # gzip 1.12 doesn't build `zless` unless it can find `less`, but we
+    # can avoid having `less` as a build input if we just override these.
+    "ZLESS_MAN=zless.1"
+    "ZLESS_PROG=zless"
+  ];
 
   # Many gzip executables are shell scripts that depend upon other gzip
   # executables being in $PATH.  Rather than try to re-write all the
diff --git a/pkgs/tools/compression/lz4/default.nix b/pkgs/tools/compression/lz4/default.nix
index bf048eeb87df2..584b000a3e293 100644
--- a/pkgs/tools/compression/lz4/default.nix
+++ b/pkgs/tools/compression/lz4/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, valgrind
+{ lib, stdenv, fetchFromGitHub, fetchpatch, valgrind
 , enableStatic ? stdenv.hostPlatform.isStatic
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
@@ -14,6 +14,14 @@ stdenv.mkDerivation rec {
     owner = pname;
   };
 
+  patches = [
+    (fetchpatch { # https://github.com/lz4/lz4/pull/1162
+      name = "build-shared-no.patch";
+      url = "https://github.com/lz4/lz4/commit/851ef4b23c7cbf4ceb2ba1099666a8b5ec4fa195.patch";
+      sha256 = "sha256-P+/uz3m7EAmHgXF/1Vncc0uKKxNVq6HNIsElx0rGxpw=";
+    })
+  ];
+
   # TODO(@Ericson2314): Separate binaries and libraries
   outputs = [ "bin" "out" "dev" ];
 
diff --git a/pkgs/tools/filesystems/bcachefs-tools/default.nix b/pkgs/tools/filesystems/bcachefs-tools/default.nix
index 9abbe2e9a04ae..4e52a1d9e5673 100644
--- a/pkgs/tools/filesystems/bcachefs-tools/default.nix
+++ b/pkgs/tools/filesystems/bcachefs-tools/default.nix
@@ -22,13 +22,13 @@
 
 stdenv.mkDerivation {
   pname = "bcachefs-tools";
-  version = "unstable-2022-05-02";
+  version = "unstable-2022-09-28";
 
   src = fetchFromGitHub {
     owner = "koverstreet";
     repo = "bcachefs-tools";
-    rev = "6f5afc0c12bbf56ffdabe5b2c5297aef255c4baa";
-    sha256 = "0483zhm3gmk6fd1pn815i3fixwlwsnks3817gn7n3idbbw0kg5ng";
+    rev = "99caca2c70f312c4a2504a7e7a9c92a91426d885";
+    sha256 = "sha256-9bFTBFkQq8SvhYa9K4+MH2zvKZviNaq0sFWoeGgch7g=";
   };
 
   postPatch = ''
diff --git a/pkgs/tools/filesystems/httpfs/default.nix b/pkgs/tools/filesystems/httpfs/default.nix
index 61843e4c65bed..24233a8441d30 100644
--- a/pkgs/tools/filesystems/httpfs/default.nix
+++ b/pkgs/tools/filesystems/httpfs/default.nix
@@ -10,8 +10,9 @@ stdenv.mkDerivation rec {
     sha256 = "1h8ggvhw30n2r6w11n1s458ypggdqx6ldwd61ma4yd7binrlpjq1";
   };
 
+  nativeBuildInputs = [ pkg-config ];
   buildInputs =
-    [ pkg-config fuse openssl
+    [ fuse openssl
       asciidoc docbook_xml_dtd_45 docbook_xsl libxml2 libxslt
     ];
 
diff --git a/pkgs/tools/graphics/cfdg/default.nix b/pkgs/tools/graphics/cfdg/default.nix
index 44a1e0d1d2a18..fd4a8b366fefc 100644
--- a/pkgs/tools/graphics/cfdg/default.nix
+++ b/pkgs/tools/graphics/cfdg/default.nix
@@ -10,7 +10,8 @@ stdenv.mkDerivation rec {
     sha256 = "13m8npccacmgxbs4il45zw53dskjh53ngv2nxahwqw8shjrws4mh";
   };
 
-  buildInputs = [ libpng bison flex ffmpeg icu ];
+  nativeBuildInputs = [ bison flex ];
+  buildInputs = [ libpng ffmpeg icu ];
 
   postPatch = ''
     sed -e "/YY_NO_UNISTD/a#include <stdio.h>" -i src-common/cfdg.l
@@ -18,11 +19,15 @@ stdenv.mkDerivation rec {
   '';
 
   installPhase = ''
+    runHook preInstall
+
     mkdir -p $out/bin
     cp cfdg $out/bin/
 
     mkdir -p $out/share/doc/${pname}-${version}
     cp *.txt $out/share/doc/${pname}-${version}
+
+    runHook postInstall
   '';
 
   meta = with lib; {
@@ -30,6 +35,6 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ raskin ];
     platforms = platforms.linux;
     homepage = "https://contextfreeart.org/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
   };
 }
diff --git a/pkgs/tools/graphics/cfdg/src-for-default.nix b/pkgs/tools/graphics/cfdg/src-for-default.nix
deleted file mode 100644
index 7ff076a5b0ae1..0000000000000
--- a/pkgs/tools/graphics/cfdg/src-for-default.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{
-   version="3.0.2";
-   name="cfdg-3.0.2";
-   hash="1pd1hjippbhad8l4s4lsglykh22i24qfrgmnxrsx71bvcqbr356p";
-   url="http://www.contextfreeart.org/download/ContextFreeSource3.0.2.tgz";
-   advertisedUrl="http://www.contextfreeart.org/download/ContextFreeSource3.0.2.tgz";
-
-
-}
diff --git a/pkgs/tools/graphics/grim/default.nix b/pkgs/tools/graphics/grim/default.nix
index 4ca4cd9a0346c..861e2e170e065 100644
--- a/pkgs/tools/graphics/grim/default.nix
+++ b/pkgs/tools/graphics/grim/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromSourcehut, pixman, libpng, libjpeg, meson, ninja, wayland, pkg-config, scdoc, wayland-protocols }:
+{ lib, stdenv, fetchFromSourcehut, fetchpatch, pixman, libpng, libjpeg, meson, ninja, wayland, pkg-config, scdoc, wayland-protocols }:
 
 stdenv.mkDerivation rec {
   pname = "grim";
@@ -11,6 +11,19 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-lwJn1Lysv1qLauqmrduUlzdoKUrUM5uBjv+dWSsrM6w=";
   };
 
+  mesonFlags = [
+    "-Dwerror=false"
+  ];
+
+  patches = [
+    # Fixes build on 32bit platforms. Patch is upstream, but unreleased
+    (fetchpatch {
+      name = "grim-fix-32bit-printf.patch";
+      url = "https://git.sr.ht/~emersion/grim/commit/89e02e663fabc534b7e7039514f60a8c5d70070d.patch";
+      sha256 = "1gwb060v3q856p84y0mqqpkqmgb9jwn70y4mzv35y4b9xld8inci";
+    })
+  ];
+
   nativeBuildInputs = [
     meson
     ninja
diff --git a/pkgs/tools/graphics/pngquant/default.nix b/pkgs/tools/graphics/pngquant/default.nix
index 5faab72d8fbc8..908ad26fa6a66 100644
--- a/pkgs/tools/graphics/pngquant/default.nix
+++ b/pkgs/tools/graphics/pngquant/default.nix
@@ -27,6 +27,6 @@ stdenv.mkDerivation rec {
     changelog = "https://github.com/kornelski/pngquant/raw/${version}/CHANGELOG";
     platforms = platforms.unix;
     license = with licenses; [ gpl3Plus hpnd bsd2 ];
-    maintainers = [ ];
+    maintainers = [ maintainers.srapenne ];
   };
 }
diff --git a/pkgs/tools/graphics/s2png/default.nix b/pkgs/tools/graphics/s2png/default.nix
index c112488094407..d3f8b74512a80 100644
--- a/pkgs/tools/graphics/s2png/default.nix
+++ b/pkgs/tools/graphics/s2png/default.nix
@@ -11,7 +11,8 @@ stdenv.mkDerivation rec {
     sha256 = "0y3crfm0jqprgxamlly713cka2x1bp6z63p1lw9wh4wc37kpira6";
   };
 
-  buildInputs = [ diffutils gd pkg-config ];
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ diffutils gd ];
   installFlags = [ "prefix=" "DESTDIR=$(out)" ];
 
   meta = {
diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-mozc/default.nix b/pkgs/tools/inputmethods/ibus-engines/ibus-mozc/default.nix
index 8d4a93a375ecf..7333558aaaef1 100644
--- a/pkgs/tools/inputmethods/ibus-engines/ibus-mozc/default.nix
+++ b/pkgs/tools/inputmethods/ibus-engines/ibus-mozc/default.nix
@@ -8,8 +8,8 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "google";
     repo = "mozc";
-    rev = "063c41f1d7c1a877f44c1f8caad6be1897350336";
-    sha256 = "sha256-sgsfJZALpPHFB5bXu4OkRssViRDaPcgLfEyGhbqvJbI=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-sgsfJZALpPHFB5bXu4OkRssViRDaPcgLfEyGhbqvJbI=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/tools/inputmethods/input-remapper/default.nix b/pkgs/tools/inputmethods/input-remapper/default.nix
index 0a1ce3108f231..9137b834555dd 100644
--- a/pkgs/tools/inputmethods/input-remapper/default.nix
+++ b/pkgs/tools/inputmethods/input-remapper/default.nix
@@ -29,28 +29,20 @@
   # failures when building. Override this to true to run tests anyway
   # See upstream issue: https://github.com/sezanzeb/input-remapper/issues/306
 , withDoCheck ? false
-  # Version and rev and hash are package arguments to allow overriding
-  # while ensuring the values in prePatch and src match
-  # https://discourse.nixos.org/t/avoid-rec-expresions-in-nixpkgs/8293/7
-  # The names are prefixed with input_remapper to avoid potential
-  # collisions with package names
-, input_remapper_version ? "1.4.2"
-, input_remapper_src_rev ? "af20f87a1298153e765b840a2164ba63b9ef937a"
-, input_remapper_src_hash ? "sha256-eG4Fx1z74Bq1HrfmzOuULQLziGdWnHLax8y2dymjWsI="
 }:
 
 let
   maybeXmodmap = lib.optional withXmodmap xmodmap;
 in
-buildPythonApplication {
+(buildPythonApplication {
   pname = "input-remapper";
-  version = input_remapper_version;
+  version = "1.5.0";
 
   src = fetchFromGitHub {
-    rev = input_remapper_src_rev;
+    rev = "e31a1b2bc5d23fe13130afcc242063196335399f";
     owner = "sezanzeb";
     repo = "input-remapper";
-    hash = input_remapper_src_hash;
+    hash = "sha256-KPQLgXSonuOgphagYN2JN+CMIpmjTIPUTCqOPDk0UYU=";
   };
 
   # Fixes error
@@ -58,17 +50,14 @@ buildPythonApplication {
   # at startup, see https://github.com/NixOS/nixpkgs/issues/56943
   strictDeps = false;
 
-  prePatch = ''
-    # set revision for --version output
-    echo "COMMIT_HASH = '${input_remapper_src_rev}'" > inputremapper/commit_hash.py
-
+  postPatch = ''
     # fix FHS paths
     substituteInPlace inputremapper/configs/data.py \
       --replace "/usr/share/input-remapper"  "$out/usr/share/input-remapper"
-  '' + (lib.optionalString (withDebugLogLevel) ''
+  '' + lib.optionalString withDebugLogLevel ''
     # if debugging
     substituteInPlace inputremapper/logger.py --replace "logger.setLevel(logging.INFO)"  "logger.setLevel(logging.DEBUG)"
-  '');
+  '';
 
   doCheck = withDoCheck;
   checkInputs = [
@@ -161,4 +150,14 @@ buildPythonApplication {
     maintainers = with maintainers; [ LunNova ];
     mainProgram = "input-remapper-gtk";
   };
-}
+}).overrideAttrs (final: prev: {
+  # Set in an override as buildPythonApplication doesn't yet support
+  # the `final:` arg yet from #119942 'overlay style overridable recursive attributes'
+  # this ensures the rev matches the input src's rev after overriding
+  # See https://discourse.nixos.org/t/avoid-rec-expresions-in-nixpkgs/8293/7 for more
+  # discussion
+  postPatch = prev.postPatch or "" + ''
+    # set revision for --version output
+    echo "COMMIT_HASH = '${final.src.rev}'" > inputremapper/commit_hash.py
+  '';
+})
diff --git a/pkgs/tools/inputmethods/m17n-lib/default.nix b/pkgs/tools/inputmethods/m17n-lib/default.nix
index cc290ab0eca94..ff3b0afad25da 100644
--- a/pkgs/tools/inputmethods/m17n-lib/default.nix
+++ b/pkgs/tools/inputmethods/m17n-lib/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, m17n_db, autoreconfHook, pkg-config }:
+{ lib, stdenv, fetchurl, fetchpatch, m17n_db, autoreconfHook, pkg-config }:
 stdenv.mkDerivation rec {
   pname = "m17n-lib";
   version = "1.8.0";
@@ -8,6 +8,17 @@ stdenv.mkDerivation rec {
     sha256 = "0jp61y09xqj10mclpip48qlfhniw8gwy8b28cbzxy8hq8pkwmfkq";
   };
 
+  patches = [
+    (fetchpatch {
+      # Patch pending upstream inclusion:
+      #   https://savannah.nongnu.org/bugs/index.php?61377
+      name = "parallel-build.patch";
+      url = "https://savannah.nongnu.org/bugs/download.php?file_id=53704";
+      hash = "sha256-1smKSIFVRJZSwCv0NiUsnndxKcPnJ/wqzH8+ka6nfNM=";
+      excludes = [ "src/ChangeLog" ];
+    })
+  ];
+
   strictDeps = true;
 
   # reconf needed to sucesfully cross-compile
@@ -17,10 +28,7 @@ stdenv.mkDerivation rec {
     m17n_db
   ];
 
-  # Fails parallel build due to missing intra-package depends:
-  #   https://savannah.nongnu.org/bugs/index.php?61377
-  #     make[2]: *** No rule to make target '../src/libm17n-core.la', needed by 'libm17n.la'.  Stop.
-  enableParallelBuilding = false;
+  enableParallelBuilding = true;
 
   meta = {
     homepage = "https://www.nongnu.org/m17n/";
diff --git a/pkgs/tools/misc/adrgen/default.nix b/pkgs/tools/misc/adrgen/default.nix
index 83117f403506d..777994d83edde 100644
--- a/pkgs/tools/misc/adrgen/default.nix
+++ b/pkgs/tools/misc/adrgen/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildGoModule
 , fetchFromGitHub
+, fetchpatch
 , testers
 , adrgen
 }:
@@ -13,10 +14,19 @@ buildGoModule rec {
     owner = "asiermarques";
     repo = "adrgen";
     rev = "v${version}";
-    sha256 = "sha256-2ZE/orsfwL59Io09c4yfXt2enVmpSM/QHlUMgyd9RYQ=";
+    hash = "sha256-2ZE/orsfwL59Io09c4yfXt2enVmpSM/QHlUMgyd9RYQ=";
   };
 
-  vendorSha256 = "sha256-aDtUD+KKKSE0TpSi4+6HXSBMqF/TROZZhT0ox3a8Idk=";
+  patches = [
+    # https://github.com/asiermarques/adrgen/pull/14
+    (fetchpatch {
+      name = "update-x-sys-for-go-1.18-on-aarch64-darwin.patch";
+      url = "https://github.com/asiermarques/adrgen/commit/485dc383106467d1029ee6d92c9bcbc3c2281626.patch";
+      hash = "sha256-38ktHrRgW5ysQmafvFthNtkZ6nnM61z4yEA7wUGmWb4=";
+    })
+  ];
+
+  vendorHash = "sha256-RXwwv3Q/kQ6FondpiUm5XZogAVK2aaVmKu4hfr+AnAM=";
 
   passthru.tests.version = testers.testVersion {
     package = adrgen;
diff --git a/pkgs/tools/misc/bash_unit/default.nix b/pkgs/tools/misc/bash_unit/default.nix
index 4a72557f9a013..90e34286d38e7 100644
--- a/pkgs/tools/misc/bash_unit/default.nix
+++ b/pkgs/tools/misc/bash_unit/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "bash_unit";
-  version = "2.0.0";
+  version = "2.0.1";
 
   src = fetchFromGitHub {
     owner = "pgrange";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-ekkyyp280YRXMuNXbiV78Hrfd/zk2nESE1bRCpUP1eE=";
+    sha256 = "sha256-P3fDfv7SexrNMynZBbgwwZcH2H/t4bwFM4HULlLaiM4=";
   };
 
   installPhase = ''
diff --git a/pkgs/tools/misc/broot/default.nix b/pkgs/tools/misc/broot/default.nix
index a1183d550106a..0d4919599d930 100644
--- a/pkgs/tools/misc/broot/default.nix
+++ b/pkgs/tools/misc/broot/default.nix
@@ -15,14 +15,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "broot";
-  version = "1.15.0";
+  version = "1.16.0";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-nLwHYZ9CuhQBX0Vl/aAe3CiUlvLe2LTr4ydlk8POAI8=";
+    sha256 = "sha256-1R6Q1xRV8FG8IMwZ+u7BJBvIqT1Pgah3emA1oln5hS0=";
   };
 
-  cargoHash = "sha256-Q7BIwcebWV86MY7b79MMjKgDOaQmC9tWa2fh8JQQhYs=";
+  cargoHash = "sha256-+Q5rdOEN7arIyj+2n2JRtr8kRQgXmlxq3jumpuDiYdE=";
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/pkgs/tools/misc/ckb-next/default.nix b/pkgs/tools/misc/ckb-next/default.nix
index 14edd24d24879..efd581a06cbc9 100644
--- a/pkgs/tools/misc/ckb-next/default.nix
+++ b/pkgs/tools/misc/ckb-next/default.nix
@@ -50,6 +50,6 @@ mkDerivation rec {
     homepage = "https://github.com/ckb-next/ckb-next";
     license = licenses.gpl2;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ superherointj ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/tools/misc/coreboot-configurator/default.nix b/pkgs/tools/misc/coreboot-configurator/default.nix
new file mode 100644
index 0000000000000..bed689651a4bd
--- /dev/null
+++ b/pkgs/tools/misc/coreboot-configurator/default.nix
@@ -0,0 +1,43 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, inkscape
+, meson
+, ninja
+, pkg-config
+, libyamlcpp
+, nvramtool
+, qtbase
+, qtsvg
+, wrapQtAppsHook
+}:
+
+stdenv.mkDerivation {
+  pname = "coreboot-configurator";
+  version = "unstable-2022-08-22";
+
+  src = fetchFromGitHub {
+    owner = "StarLabsLtd";
+    repo = "coreboot-configurator";
+    rev = "37c93e7e101a20f85be309904177b9404875cfd8";
+    sha256 = "2pk+uJk1EnVNO2vO1zF9Q6TLpij69iRdr5DFiNcZlM0=";
+  };
+
+  nativeBuildInputs = [ inkscape meson ninja pkg-config wrapQtAppsHook ];
+  buildInputs = [ libyamlcpp qtbase qtsvg ];
+
+  postPatch = ''
+    substituteInPlace src/application/*.cpp \
+      --replace '/usr/bin/pkexec' 'sudo' \
+      --replace '/usr/bin/systemctl' 'systemctl' \
+      --replace '/usr/sbin/nvramtool' '${nvramtool}/bin/nvramtool'
+  '';
+
+  meta = with lib; {
+    description = "A simple GUI to change settings in Coreboot's CBFS";
+    homepage = "https://support.starlabs.systems/kb/guides/coreboot-configurator";
+    license = licenses.gpl2Only;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ danth ];
+  };
+}
diff --git a/pkgs/tools/misc/cpuminer/default.nix b/pkgs/tools/misc/cpuminer/default.nix
index 27bf0ec5374bb..eb7a73e469c78 100644
--- a/pkgs/tools/misc/cpuminer/default.nix
+++ b/pkgs/tools/misc/cpuminer/default.nix
@@ -19,7 +19,8 @@ stdenv.mkDerivation rec {
 
   patchPhase = if stdenv.cc.isClang then "${perl}/bin/perl ./nomacro.pl" else null;
 
-  buildInputs = [ curl jansson autoreconfHook ];
+  nativeBuildInputs = [ autoreconfHook ];
+  buildInputs = [ curl jansson ];
 
   configureFlags = [ "CFLAGS=-O3" ];
 
diff --git a/pkgs/tools/misc/csv2parquet/default.nix b/pkgs/tools/misc/csv2parquet/default.nix
new file mode 100644
index 0000000000000..2ebd7d378eb13
--- /dev/null
+++ b/pkgs/tools/misc/csv2parquet/default.nix
@@ -0,0 +1,22 @@
+{ lib, fetchFromGitHub, rustPlatform }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "csv2parquet";
+  version = "0.6.0";
+
+  src = fetchFromGitHub {
+    owner = "domoritz";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-kb5j7d5lhElbDuoDpsijaXy3Dxjs7nRCUorkg4vKQi8=";
+  };
+
+  cargoSha256 = "sha256-rfwqLWNl05GyIBCOv9PaaYmkHBa58x0ck8Jz1qZyeos=";
+
+  meta = with lib; {
+    description = "Convert CSV files to Apache Parquet";
+    homepage = "https://github.com/domoritz/csv2parquet";
+    license = licenses.mit;
+    maintainers = with maintainers; [ john-shaffer ];
+  };
+}
diff --git a/pkgs/tools/misc/czkawka/default.nix b/pkgs/tools/misc/czkawka/default.nix
index fce125b35cd53..67ceb8fc37ff4 100644
--- a/pkgs/tools/misc/czkawka/default.nix
+++ b/pkgs/tools/misc/czkawka/default.nix
@@ -8,7 +8,7 @@
 , gdk-pixbuf
 , atk
 , gtk4
-, wrapGAppsHook
+, wrapGAppsHook4
 , gobject-introspection
 , xvfb-run
 , testers
@@ -30,7 +30,7 @@ rustPlatform.buildRustPackage rec {
 
   nativeBuildInputs = [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook4
     gobject-introspection
   ];
 
diff --git a/pkgs/tools/misc/depotdownloader/deps.nix b/pkgs/tools/misc/depotdownloader/deps.nix
index 625d0716eb695..320c1e35844ee 100644
--- a/pkgs/tools/misc/depotdownloader/deps.nix
+++ b/pkgs/tools/misc/depotdownloader/deps.nix
@@ -1,3 +1,6 @@
+# This file was automatically generated by passthru.fetch-deps.
+# Please dont edit it manually, your changes might get overwritten!
+
 { fetchNuGet }: [
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "5.0.0"; sha256 = "0mwpwdflidzgzfx2dlpkvvnkgkr2ayaf0s80737h4wa35gaj11rc"; })
   (fetchNuGet { pname = "Microsoft.Win32.Registry"; version = "5.0.0"; sha256 = "102hvhq2gmlcbq8y2cb7hdr2dnmjzfp2k3asr1ycwrfacwyaak7n"; })
diff --git a/pkgs/tools/misc/diffoscope/default.nix b/pkgs/tools/misc/diffoscope/default.nix
index 65b66b4cf43fb..3884807bd7196 100644
--- a/pkgs/tools/misc/diffoscope/default.nix
+++ b/pkgs/tools/misc/diffoscope/default.nix
@@ -67,25 +67,12 @@ python3Packages.buildPythonApplication rec {
   '';
 
   disabledTests = [
-    # Disable flaky test and a failing one
-    "test_android_manifest"
     "test_sbin_added_to_path"
     "test_diff_meta"
     "test_diff_meta2"
-    "test_obj_no_differences"
 
     # fails because it fails to determine llvm version
     "test_item3_deflate_llvm_bitcode"
-
-    # OSError: [Errno 84] Invalid or incomplete multibyte or wide character: b'/build/pytest-of-nixbld/pytest-0/\xf0(\x8c('
-    "test_non_unicode_filename"
-
-    # disable formatting tests because they can break on black updates
-    "test_code_is_black_clean"
-
-    # fails at 2022-09-30
-    "test_identification"
-    "test_diff"
   ] ++ lib.optionals stdenv.isDarwin [
     # Disable flaky tests on Darwin
     "test_non_unicode_filename"
diff --git a/pkgs/tools/misc/discocss/default.nix b/pkgs/tools/misc/discocss/default.nix
index f847f615756a5..c44d37505155b 100644
--- a/pkgs/tools/misc/discocss/default.nix
+++ b/pkgs/tools/misc/discocss/default.nix
@@ -1,4 +1,10 @@
-{ stdenvNoCC, lib, fetchFromGitHub }:
+{ stdenvNoCC
+, lib
+, fetchFromGitHub
+, discordAlias ? false
+, discord
+, makeWrapper
+}:
 
 stdenvNoCC.mkDerivation rec {
   pname = "discocss";
@@ -13,8 +19,16 @@ stdenvNoCC.mkDerivation rec {
 
   dontBuild = true;
 
+  nativeBuildInputs = [ makeWrapper ];
+
   installPhase = ''
-    install -Dm755 ./discocss $out/bin/discocss
+    install -Dm755 discocss $out/bin/discocss
+  '' + lib.optionalString discordAlias ''
+    wrapProgram $out/bin/discocss --set DISCOCSS_DISCORD_BIN ${discord}/bin/Discord
+    ln -s $out/bin/discocss $out/bin/Discord
+    ln -s $out/bin/discocss $out/bin/discord
+    mkdir -p $out/share
+    ln -s ${discord}/share/* $out/share
   '';
 
   meta = with lib; {
diff --git a/pkgs/tools/misc/esphome/default.nix b/pkgs/tools/misc/esphome/default.nix
index 3ea44a8e30c62..bad958bb82c5a 100644
--- a/pkgs/tools/misc/esphome/default.nix
+++ b/pkgs/tools/misc/esphome/default.nix
@@ -15,14 +15,14 @@ let
 in
 with python.pkgs; buildPythonApplication rec {
   pname = "esphome";
-  version = "2022.9.2";
+  version = "2022.9.3";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-PVJZ2cOguXIh96246AVofTg1ZWqWJPFcDXlPk3Rn+Cs=";
+    hash = "sha256-xrfNdJD8c0PbtipGTQNSCcXaWu4TEyER6lHtREdVcFI=";
   };
 
   postPatch = ''
diff --git a/pkgs/tools/misc/expect/default.nix b/pkgs/tools/misc/expect/default.nix
index 5a792c040b39e..45f45e89e82d4 100644
--- a/pkgs/tools/misc/expect/default.nix
+++ b/pkgs/tools/misc/expect/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, buildPackages, fetchurl, tcl, makeWrapper, autoreconfHook, fetchpatch }:
+{ lib, stdenv, buildPackages, fetchurl, tcl, makeWrapper, autoreconfHook, fetchpatch, substituteAll }:
 
 tcl.mkTclDerivation rec {
   pname = "expect";
@@ -14,6 +14,10 @@ tcl.mkTclDerivation rec {
       url = "https://raw.githubusercontent.com/buildroot/buildroot/c05e6aa361a4049eabd8b21eb64a34899ef83fc7/package/expect/0001-enable-cross-compilation.patch";
       sha256 = "1jwx2l1slidvcpahxbyqs942l81jd62rzbxliyd9lwysk38c8b6b";
     })
+    (substituteAll {
+      src = ./fix-cross-compilation.patch;
+      tcl = "${buildPackages.tcl}/bin/tclsh";
+    })
   ];
 
   postPatch = ''
diff --git a/pkgs/tools/misc/expect/fix-cross-compilation.patch b/pkgs/tools/misc/expect/fix-cross-compilation.patch
new file mode 100644
index 0000000000000..8edc4bea39d69
--- /dev/null
+++ b/pkgs/tools/misc/expect/fix-cross-compilation.patch
@@ -0,0 +1,11 @@
+--- a/Makefile.in	2022-09-07 21:46:37.090519258 +0200
++++ b/Makefile.in	2022-09-07 21:46:21.462592279 +0200
+@@ -380,7 +380,7 @@
+ 	cp $(DIST_ROOT)/$(PKG_DIR).tar.gz $(top_builddir)
+ 
+ $(SCRIPTS):
+-	$(TCLSH) $(srcdir)/fixline1 $(SHORT_BINDIR) < $(srcdir)/example/$@ > $@
++	@tcl@ $(srcdir)/fixline1 $(SHORT_BINDIR) < $(srcdir)/example/$@ > $@
+ 
+ ## We cannot use TCL_LIBS below (after TCL_LIB_SPEC) because its
+ ## expansion references the contents of LIBS, which contains linker
diff --git a/pkgs/tools/misc/fend/default.nix b/pkgs/tools/misc/fend/default.nix
index 7bb3cb200d3a6..453697e8a5cc8 100644
--- a/pkgs/tools/misc/fend/default.nix
+++ b/pkgs/tools/misc/fend/default.nix
@@ -3,6 +3,8 @@
 , fetchFromGitHub
 , rustPlatform
 , darwin
+, pandoc
+, installShellFiles
 }:
 
 rustPlatform.buildRustPackage rec {
@@ -18,8 +20,18 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "sha256-jGPS9x4DKQCXZkaJu9qIEqoxIu+1WraqfqxGFRV5z7A=";
 
+  nativeBuildInputs = [ pandoc installShellFiles ];
   buildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ];
 
+  postBuild = ''
+    patchShebangs --build ./documentation/build.sh
+    ./documentation/build.sh
+  '';
+
+  preFixup = ''
+    installManPage documentation/fend.1
+  '';
+
   doInstallCheck = true;
 
   installCheckPhase = ''
diff --git a/pkgs/tools/misc/fx_cast/default.nix b/pkgs/tools/misc/fx_cast/default.nix
index 111447fe48394..f7ca224ada041 100644
--- a/pkgs/tools/misc/fx_cast/default.nix
+++ b/pkgs/tools/misc/fx_cast/default.nix
@@ -23,13 +23,13 @@
 in
 stdenv.mkDerivation rec {
   pname = "fx_cast_bridge";
-  version = "0.2.0";
+  version = "0.3.1";
 
   src = pkgs.fetchFromGitHub {
     owner = "hensm";
     repo = "fx_cast";
     rev = "v${version}";
-    hash = "sha256-bgoItAOIHxGow7TjlRzaMqtIefcSym1h5n6v/9fFZfc=";
+    hash = "sha256-hB4NVJW2exHoKsMp0CKzHerYgj8aR77rV+ZsCoWA1Dg=";
   };
 
   buildInputs = with pkgs; [
diff --git a/pkgs/tools/misc/gh-dash/default.nix b/pkgs/tools/misc/gh-dash/default.nix
index 3f1d866f3189d..a06237b33a7d9 100644
--- a/pkgs/tools/misc/gh-dash/default.nix
+++ b/pkgs/tools/misc/gh-dash/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "gh-dash";
-  version = "3.4.1";
+  version = "3.4.2";
 
   src = fetchFromGitHub {
     owner = "dlvhdr";
     repo = "gh-dash";
     rev = "v${version}";
-    sha256 = "sha256-NGUuUBCoLKyyFdTw7n/PY486JEcrTsed4/iuB9iUTLE=";
+    sha256 = "sha256-MiVscWYq2Y9EaupSYbTA9bsToLoIVhHCNE2Kj0GpkPw=";
   };
 
   vendorSha256 = "sha256-BbrHvphTQLvUKanmO4GrNpkT0MSlY7+WMJiyXV7dFB8=";
diff --git a/pkgs/tools/misc/goreleaser/default.nix b/pkgs/tools/misc/goreleaser/default.nix
index ff6458243a622..56a3159511436 100644
--- a/pkgs/tools/misc/goreleaser/default.nix
+++ b/pkgs/tools/misc/goreleaser/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "goreleaser";
-  version = "1.11.4";
+  version = "1.11.5";
 
   src = fetchFromGitHub {
     owner = "goreleaser";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-hbgInZZ1ahFPIGHiHs68GqbMfFfYMcJy92iL2fvGxr0=";
+    sha256 = "sha256-RertNRBwrlodsjwv1NqNOR6ZDEMaRsHG1dVEu0Z501I=";
   };
 
-  vendorSha256 = "sha256-iUXbvwh04W8cZ4pa+OS4bRi3bCyFQ2shPzHNh6/e3Vs=";
+  vendorSha256 = "sha256-d068X29Lh0l9S7HTmO75HcsV9ZdUsjp977Esxy7gzKI=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/tools/misc/hdl-dump/default.nix b/pkgs/tools/misc/hdl-dump/default.nix
index 0d2dfbc504acf..8990a447dc0ce 100644
--- a/pkgs/tools/misc/hdl-dump/default.nix
+++ b/pkgs/tools/misc/hdl-dump/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "hdl-dump";
-  version = "unstable-2021-08-20";
+  version = "unstable-2022-09-19";
 
   src = fetchFromGitHub {
     owner = "ps2homebrew";
     repo = pname;
-    rev = "1e760d7672dc12a36c09690b8c9b20d6642a2926";
-    sha256 = "sha256-NMExi2pUyj8vRn9beT2YvnEogRw/xzgqE+roaZ/vNZs=";
+    rev = "87d3099d2ba39a15e86ebc7dc725e8eaa49f2d5f";
+    hash = "sha256-eBqF4OGEaLQXQ4JMtD/Yn+f97RzKVsnC+4oyiEhLTUM=";
   };
 
   makeFlags = [ "RELEASE=yes" ];
diff --git a/pkgs/tools/misc/iam-policy-json-to-terraform/default.nix b/pkgs/tools/misc/iam-policy-json-to-terraform/default.nix
index 4ac31329706e4..4d00ffb03b4bf 100644
--- a/pkgs/tools/misc/iam-policy-json-to-terraform/default.nix
+++ b/pkgs/tools/misc/iam-policy-json-to-terraform/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "iam-policy-json-to-terraform";
-  version = "1.8.0";
+  version = "1.8.1";
 
   src = fetchFromGitHub {
     owner = "flosell";
     repo = pname;
     rev = "${version}";
-    sha256 = "sha256-1OQvm3M/n/8F3QHNfPlq9YQVyV97NlHX3dXWA/VXEZU=";
+    sha256 = "sha256-O3JlBWT2YVu3mv/BCbs65k7HMF4cRCihd59wZzeoxcI=";
   };
 
-  vendorSha256 = "sha256-Fn5GgGW9QhnQOKV34Kzl1Yctv3XLQ51lCuuGx5kvlIA=";
+  vendorSha256 = "sha256-IXWt/yFapDamfZClI6gm5vPA5VW2gV2iEq5c/nJXiiA=";
 
   meta = with lib; {
     description = "Small tool to convert an IAM Policy in JSON format into a Terraform aws_iam_policy_document ";
diff --git a/pkgs/tools/misc/infracost/default.nix b/pkgs/tools/misc/infracost/default.nix
index 9f7e0f0bf2cf7..32f311c6ee7cc 100644
--- a/pkgs/tools/misc/infracost/default.nix
+++ b/pkgs/tools/misc/infracost/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
+{ lib, buildGoModule, fetchFromGitHub, installShellFiles, stdenv }:
 
 buildGoModule rec {
   pname = "infracost";
@@ -63,5 +63,6 @@ buildGoModule rec {
     '';
     license = licenses.asl20;
     maintainers = with maintainers; [ davegallant jk ];
+    broken = stdenv.isx86_64; # https://hydra.nixos.org/build/193087915
   };
 }
diff --git a/pkgs/tools/misc/inklingreader/default.nix b/pkgs/tools/misc/inklingreader/default.nix
new file mode 100644
index 0000000000000..8710da482a655
--- /dev/null
+++ b/pkgs/tools/misc/inklingreader/default.nix
@@ -0,0 +1,39 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, autoreconfHook
+, pkg-config
+, gtk3
+, librsvg
+, libusb1
+}:
+
+stdenv.mkDerivation rec {
+  pname = "inklingreader";
+  version = "unstable-2017-09-07";
+
+  src = fetchFromGitHub {
+    owner = "roelj";
+    repo = "inklingreader";
+    rev = "90f9d0d7f5353657f4d25fd75635e29c10c08d2e";
+    sha256 = "sha256-852m8g61r+NQhCYz9ghSbCG0sjao2E8B9GS06NG4GyY=";
+  };
+
+  nativeBuildInputs = [
+    autoreconfHook
+    pkg-config
+  ];
+  buildInputs = [
+    gtk3
+    librsvg
+    libusb1
+  ];
+
+  meta = {
+    homepage = "https://github.com/roelj/inklingreader";
+    description = "A GNU/Linux-friendly version of the Wacom Inkling SketchManager";
+    license = lib.licenses.gpl3;
+    maintainers = with lib.maintainers; [ totoroot ];
+    platforms = lib.platforms.linux;
+  };
+}
diff --git a/pkgs/tools/misc/lazycli/default.nix b/pkgs/tools/misc/lazycli/default.nix
new file mode 100644
index 0000000000000..d3ef8192b38b5
--- /dev/null
+++ b/pkgs/tools/misc/lazycli/default.nix
@@ -0,0 +1,27 @@
+{ lib, rustPlatform, fetchFromGitHub }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "lazycli";
+  version = "0.1.15";
+
+  src = fetchFromGitHub {
+    owner = "jesseduffield";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1qq167hc7pp9l0m40ysphfljakmm8hjjnhpldvb0kbc825h0z8z5";
+  };
+
+  cargoSha256 = "sha256-1BIUXepR7ppEkTLDOCZz9RBv+RazNMXnCnH1rvzVFgs=";
+
+  checkFlags = [
+    # currently broken: https://github.com/jesseduffield/lazycli/pull/20
+    "--skip=command::test_run_command_fail"
+  ];
+
+  meta = with lib; {
+    description = "A tool to static turn CLI commands into TUIs";
+    homepage = "https://github.com/jesseduffield/lazycli";
+    license = licenses.mit;
+    maintainers = with maintainers; [ figsoda ];
+  };
+}
diff --git a/pkgs/tools/misc/lemmeknow/default.nix b/pkgs/tools/misc/lemmeknow/default.nix
new file mode 100644
index 0000000000000..281db8169197c
--- /dev/null
+++ b/pkgs/tools/misc/lemmeknow/default.nix
@@ -0,0 +1,20 @@
+{ lib, rustPlatform, fetchCrate }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "lemmeknow";
+  version = "0.6.0";
+
+  src = fetchCrate {
+    inherit pname version;
+    sha256 = "sha256-xDHgIo6VGBp27JMqhG4r/MZTIAA8ViAJqWJNchZywTs=";
+  };
+
+  cargoSha256 = "sha256-bPI8S2hNQnIPj8Sl0QYs6piCdWSUYFH1qcf7DL+oxIo=";
+
+  meta = with lib; {
+    description = "A tool to identify anything";
+    homepage = "https://github.com/swanandx/lemmeknow";
+    license = licenses.mit;
+    maintainers = with maintainers; [ figsoda ];
+  };
+}
diff --git a/pkgs/tools/misc/lorri/default.nix b/pkgs/tools/misc/lorri/default.nix
index 94720f1193777..aabc9d0e773fa 100644
--- a/pkgs/tools/misc/lorri/default.nix
+++ b/pkgs/tools/misc/lorri/default.nix
@@ -12,10 +12,12 @@
 
 let
   # Run `eval $(nix-build -A lorri.updater)` after updating the revision!
-  version = "1.5.0";
-  gitRev = "f4b6a135e2efb18b3a679e3946d4d070a1c45a2c";
-  sha256 = "0irgzw7vwhvm97nmylj44x2dnd8pwf47gvlgw7fj58fj67a0l8fr";
-  cargoSha256 = "18l7yxciqcvagsg9lykilfhr104a4qqdydjkjysxgd197xalxgzr";
+  # It will copy some required files if necessary.
+  # Also don’t forget to run `nix-build -A lorri.tests`
+  version = "1.6.0";
+  gitRev = "1.6.0";
+  sha256 = "sha256-peelMKv9GOTPdyb1iifzlFikeayTchqaYCgeXyR5EgM=";
+  cargoSha256 = "sha256-UFAmTYnCqsQxBnCm1zMu+BcWIZMuuxvpF7poLlzC6Kg=";
 
 in (rustPlatform.buildRustPackage rec {
   pname = "lorri";
diff --git a/pkgs/tools/misc/nautilus-open-any-terminal/default.nix b/pkgs/tools/misc/nautilus-open-any-terminal/default.nix
index 21dd287f56ad5..3d34dda25a524 100644
--- a/pkgs/tools/misc/nautilus-open-any-terminal/default.nix
+++ b/pkgs/tools/misc/nautilus-open-any-terminal/default.nix
@@ -15,13 +15,13 @@
 
 python3.pkgs.buildPythonPackage rec {
   pname = "nautilus-open-any-terminal";
-  version = "0.3.0";
+  version = "0.4.0";
 
   src = fetchFromGitHub {
     owner = "Stunkymonkey";
     repo = pname;
     rev = version;
-    sha256 = "sha256-PF6DVpiAPL9NG4jK6wDqdqYw+26Nks/bGEbbaV/5aIs=";
+    sha256 = "sha256-EAI60Mw+OTPfjOS6lkGMul7QvTR7NXyNfevWY2JP1yI=";
   };
 
   patches = [ ./hardcode-gsettings.patch ];
diff --git a/pkgs/tools/misc/nautilus-open-any-terminal/hardcode-gsettings.patch b/pkgs/tools/misc/nautilus-open-any-terminal/hardcode-gsettings.patch
index 402f78ed04b13..194bb55902aec 100644
--- a/pkgs/tools/misc/nautilus-open-any-terminal/hardcode-gsettings.patch
+++ b/pkgs/tools/misc/nautilus-open-any-terminal/hardcode-gsettings.patch
@@ -2,20 +2,20 @@ diff --git a/nautilus_open_any_terminal/open_any_terminal_extension.py b/nautilu
 index b02a995..a616399 100644
 --- a/nautilus_open_any_terminal/open_any_terminal_extension.py
 +++ b/nautilus_open_any_terminal/open_any_terminal_extension.py
-@@ -125,9 +125,10 @@ def set_terminal_args(*args):
+@@ -205,9 +205,10 @@ def set_terminal_args(*args):
  
- class OpenAnyTerminalShortcutProvider(GObject.GObject, Nautilus.LocationWidgetProvider):
-     def __init__(self):
--        source = Gio.SettingsSchemaSource.get_default()
--        if source.lookup(GSETTINGS_PATH, True):
--            self._gsettings = Gio.Settings.new(GSETTINGS_PATH)
-+        source = Gio.SettingsSchemaSource.new_from_directory("@gsettings_path@", Gio.SettingsSchemaSource.get_default(), True)
-+        if True:
-+            _schema = source.lookup(GSETTINGS_PATH, False)
-+            self._gsettings = Gio.Settings.new_full(_schema, None, None);
-             self._gsettings.connect("changed", self._bind_shortcut)
-             self._create_accel_group()
-         self._window = None
+     class OpenAnyTerminalShortcutProvider(GObject.GObject, Nautilus.LocationWidgetProvider):
+         def __init__(self):
+-            source = Gio.SettingsSchemaSource.get_default()
+-            if source.lookup(GSETTINGS_PATH, True):
+-                self._gsettings = Gio.Settings.new(GSETTINGS_PATH)
++            source = Gio.SettingsSchemaSource.new_from_directory("@gsettings_path@", Gio.SettingsSchemaSource.get_default(), True)
++            if True:
++                _schema = source.lookup(GSETTINGS_PATH, False)
++                self._gsettings = Gio.Settings.new_full(_schema, None, None);
+                 self._gsettings.connect("changed", self._bind_shortcut)
+                 self._create_accel_group()
+             self._window = None
 @@ -232,9 +233,10 @@ class OpenAnyTerminalExtension(GObject.GObject, Nautilus.MenuProvider):
          return items
  
@@ -28,5 +28,4 @@ index b02a995..a616399 100644
 +    _schema = source.lookup(GSETTINGS_PATH, False)
 +    _gsettings = Gio.Settings.new_full(_schema, None, None);
      _gsettings.connect("changed", set_terminal_args)
-     value = _gsettings.get_string(GSETTINGS_TERMINAL)
-     if value in TERM_PARAMS:
+     set_terminal_args()
diff --git a/pkgs/tools/misc/notify-desktop/default.nix b/pkgs/tools/misc/notify-desktop/default.nix
index c906443b07ca3..22b5035da5144 100644
--- a/pkgs/tools/misc/notify-desktop/default.nix
+++ b/pkgs/tools/misc/notify-desktop/default.nix
@@ -11,7 +11,8 @@ stdenv.mkDerivation {
     sha256 = "1brcvl2fx0yzxj9mc8hzfl32zdka1f1bxpzsclcsjplyakyinr1a";
   };
 
-  buildInputs = [ dbus pkg-config ];
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ dbus ];
 
   installPhase = ''
     mkdir -p $out/bin
diff --git a/pkgs/tools/misc/notify/default.nix b/pkgs/tools/misc/notify/default.nix
index 9f84a7a867dc1..7a44525dfb7f0 100644
--- a/pkgs/tools/misc/notify/default.nix
+++ b/pkgs/tools/misc/notify/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "notify";
-  version = "1.0.2";
+  version = "1.0.4";
 
   src = fetchFromGitHub {
     owner = "projectdiscovery";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-VRMwyVaTUJ+dDqewDGNZR1jH2EmDq1b42he7andh+/Q=";
+    sha256 = "sha256-PZSt4mhon0JbFxeq5tOXb+xWKOoxT6rjRS1E3Jf2V3c=";
   };
 
-  vendorSha256 = "sha256-JsEKtE3N7C+BA3SanYwX17uJcFmbzPMWl5tUYPLCRdQ=";
+  vendorSha256 = "sha256-MoGaIs2WmJk+E8pTljrahuaJ1VwYBhGBf1XGYVYOVt4=";
 
   modRoot = ".";
   subPackages = [
diff --git a/pkgs/tools/misc/ntfy-sh/default.nix b/pkgs/tools/misc/ntfy-sh/default.nix
index ebb813d44ec04..3038cc6abc78d 100644
--- a/pkgs/tools/misc/ntfy-sh/default.nix
+++ b/pkgs/tools/misc/ntfy-sh/default.nix
@@ -1,5 +1,11 @@
-{ lib, buildGoModule, fetchFromGitHub }:
+{ lib, pkgs, nodejs, stdenv, buildGoModule, fetchFromGitHub, debianutils, mkdocs, python3, python3Packages }:
 
+let
+  nodeDependencies = (import ./node-composition.nix {
+    inherit pkgs nodejs;
+    inherit (stdenv.hostPlatform) system;
+  }).nodeDependencies;
+in
 buildGoModule rec {
   pname = "ntfy-sh";
   version = "1.28.0";
@@ -15,8 +21,24 @@ buildGoModule rec {
 
   doCheck = false;
 
+  ldflags = [ "-s" "-w" "-X main.version=${version}" ];
+
+  nativeBuildInputs = [
+    debianutils
+    mkdocs
+    nodejs
+    python3
+    python3Packages.mkdocs-material
+    python3Packages.mkdocs-minify
+  ];
+
+  postPatch = ''
+    sed -i 's# /bin/echo# echo#' Makefile
+  '';
+
   preBuild = ''
-    make cli-deps-static-sites
+    ln -s ${nodeDependencies}/lib/node_modules web/node_modules
+    DISABLE_ESLINT_PLUGIN=true npm_config_offline=true make web-build docs-build
   '';
 
   meta = with lib; {
diff --git a/pkgs/tools/misc/ntfy-sh/generate-dependencies.sh b/pkgs/tools/misc/ntfy-sh/generate-dependencies.sh
new file mode 100755
index 0000000000000..a7cafab319eef
--- /dev/null
+++ b/pkgs/tools/misc/ntfy-sh/generate-dependencies.sh
@@ -0,0 +1,11 @@
+#!/usr/bin/env bash
+
+ROOT="$(realpath "$(dirname -- "$(readlink -f -- "${BASH_SOURCE[0]}")")"/../../../..)"
+
+$(nix-build $ROOT -A  nodePackages.node2nix --no-out-link)/bin/node2nix \
+  --nodejs-14 \
+  --node-env ../../../development/node-packages/node-env.nix \
+  --development \
+  --lock ./package-lock-temp.json \
+  --output node-packages.nix \
+  --composition node-composition.nix
diff --git a/pkgs/servers/matrix-synapse/matrix-appservice-slack/node-composition.nix b/pkgs/tools/misc/ntfy-sh/node-composition.nix
index f9a1999f36d73..a038d882e7feb 100644
--- a/pkgs/servers/matrix-synapse/matrix-appservice-slack/node-composition.nix
+++ b/pkgs/tools/misc/ntfy-sh/node-composition.nix
@@ -1,4 +1,4 @@
-# This file has been generated by node2nix 1.9.0. Do not edit!
+# This file has been generated by node2nix 1.11.1. Do not edit!
 
 {pkgs ? import <nixpkgs> {
     inherit system;
diff --git a/pkgs/tools/misc/ntfy-sh/node-packages.nix b/pkgs/tools/misc/ntfy-sh/node-packages.nix
new file mode 100644
index 0000000000000..590f83e8c4324
--- /dev/null
+++ b/pkgs/tools/misc/ntfy-sh/node-packages.nix
@@ -0,0 +1,12660 @@
+# This file has been generated by node2nix 1.11.1. Do not edit!
+
+{nodeEnv, fetchurl, fetchgit, nix-gitignore, stdenv, lib, globalBuildInputs ? []}:
+
+let
+  sources = {
+    "@ampproject/remapping-2.2.0" = {
+      name = "_at_ampproject_slash_remapping";
+      packageName = "@ampproject/remapping";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz";
+        sha512 = "qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==";
+      };
+    };
+    "@apideck/better-ajv-errors-0.3.6" = {
+      name = "_at_apideck_slash_better-ajv-errors";
+      packageName = "@apideck/better-ajv-errors";
+      version = "0.3.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@apideck/better-ajv-errors/-/better-ajv-errors-0.3.6.tgz";
+        sha512 = "P+ZygBLZtkp0qqOAJJVX4oX/sFo5JR3eBWwwuqHHhK0GIgQOKWrAfiAaWX0aArHkRWHMuggFEgAZNxVPwPZYaA==";
+      };
+    };
+    "@babel/code-frame-7.18.6" = {
+      name = "_at_babel_slash_code-frame";
+      packageName = "@babel/code-frame";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz";
+        sha512 = "TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==";
+      };
+    };
+    "@babel/compat-data-7.19.1" = {
+      name = "_at_babel_slash_compat-data";
+      packageName = "@babel/compat-data";
+      version = "7.19.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.19.1.tgz";
+        sha512 = "72a9ghR0gnESIa7jBN53U32FOVCEoztyIlKaNoU05zRhEecduGK9L9c3ww7Mp06JiR+0ls0GBPFJQwwtjn9ksg==";
+      };
+    };
+    "@babel/core-7.19.1" = {
+      name = "_at_babel_slash_core";
+      packageName = "@babel/core";
+      version = "7.19.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/core/-/core-7.19.1.tgz";
+        sha512 = "1H8VgqXme4UXCRv7/Wa1bq7RVymKOzC7znjyFM8KiEzwFqcKUKYNoQef4GhdklgNvoBXyW4gYhuBNCM5o1zImw==";
+      };
+    };
+    "@babel/eslint-parser-7.19.1" = {
+      name = "_at_babel_slash_eslint-parser";
+      packageName = "@babel/eslint-parser";
+      version = "7.19.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.19.1.tgz";
+        sha512 = "AqNf2QWt1rtu2/1rLswy6CDP7H9Oh3mMhk177Y67Rg8d7RD9WfOLLv8CGn6tisFvS2htm86yIe1yLF6I1UDaGQ==";
+      };
+    };
+    "@babel/generator-7.19.0" = {
+      name = "_at_babel_slash_generator";
+      packageName = "@babel/generator";
+      version = "7.19.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/generator/-/generator-7.19.0.tgz";
+        sha512 = "S1ahxf1gZ2dpoiFgA+ohK9DIpz50bJ0CWs7Zlzb54Z4sG8qmdIrGrVqmy1sAtTVRb+9CU6U8VqT9L0Zj7hxHVg==";
+      };
+    };
+    "@babel/helper-annotate-as-pure-7.18.6" = {
+      name = "_at_babel_slash_helper-annotate-as-pure";
+      packageName = "@babel/helper-annotate-as-pure";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz";
+        sha512 = "duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==";
+      };
+    };
+    "@babel/helper-builder-binary-assignment-operator-visitor-7.18.9" = {
+      name = "_at_babel_slash_helper-builder-binary-assignment-operator-visitor";
+      packageName = "@babel/helper-builder-binary-assignment-operator-visitor";
+      version = "7.18.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz";
+        sha512 = "yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==";
+      };
+    };
+    "@babel/helper-compilation-targets-7.19.1" = {
+      name = "_at_babel_slash_helper-compilation-targets";
+      packageName = "@babel/helper-compilation-targets";
+      version = "7.19.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.19.1.tgz";
+        sha512 = "LlLkkqhCMyz2lkQPvJNdIYU7O5YjWRgC2R4omjCTpZd8u8KMQzZvX4qce+/BluN1rcQiV7BoGUpmQ0LeHerbhg==";
+      };
+    };
+    "@babel/helper-create-class-features-plugin-7.19.0" = {
+      name = "_at_babel_slash_helper-create-class-features-plugin";
+      packageName = "@babel/helper-create-class-features-plugin";
+      version = "7.19.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.19.0.tgz";
+        sha512 = "NRz8DwF4jT3UfrmUoZjd0Uph9HQnP30t7Ash+weACcyNkiYTywpIjDBgReJMKgr+n86sn2nPVVmJ28Dm053Kqw==";
+      };
+    };
+    "@babel/helper-create-regexp-features-plugin-7.19.0" = {
+      name = "_at_babel_slash_helper-create-regexp-features-plugin";
+      packageName = "@babel/helper-create-regexp-features-plugin";
+      version = "7.19.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.19.0.tgz";
+        sha512 = "htnV+mHX32DF81amCDrwIDr8nrp1PTm+3wfBN9/v8QJOLEioOCOG7qNyq0nHeFiWbT3Eb7gsPwEmV64UCQ1jzw==";
+      };
+    };
+    "@babel/helper-define-polyfill-provider-0.3.3" = {
+      name = "_at_babel_slash_helper-define-polyfill-provider";
+      packageName = "@babel/helper-define-polyfill-provider";
+      version = "0.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz";
+        sha512 = "z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==";
+      };
+    };
+    "@babel/helper-environment-visitor-7.18.9" = {
+      name = "_at_babel_slash_helper-environment-visitor";
+      packageName = "@babel/helper-environment-visitor";
+      version = "7.18.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz";
+        sha512 = "3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==";
+      };
+    };
+    "@babel/helper-explode-assignable-expression-7.18.6" = {
+      name = "_at_babel_slash_helper-explode-assignable-expression";
+      packageName = "@babel/helper-explode-assignable-expression";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz";
+        sha512 = "eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==";
+      };
+    };
+    "@babel/helper-function-name-7.19.0" = {
+      name = "_at_babel_slash_helper-function-name";
+      packageName = "@babel/helper-function-name";
+      version = "7.19.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz";
+        sha512 = "WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==";
+      };
+    };
+    "@babel/helper-hoist-variables-7.18.6" = {
+      name = "_at_babel_slash_helper-hoist-variables";
+      packageName = "@babel/helper-hoist-variables";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz";
+        sha512 = "UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==";
+      };
+    };
+    "@babel/helper-member-expression-to-functions-7.18.9" = {
+      name = "_at_babel_slash_helper-member-expression-to-functions";
+      packageName = "@babel/helper-member-expression-to-functions";
+      version = "7.18.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz";
+        sha512 = "RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==";
+      };
+    };
+    "@babel/helper-module-imports-7.18.6" = {
+      name = "_at_babel_slash_helper-module-imports";
+      packageName = "@babel/helper-module-imports";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz";
+        sha512 = "0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==";
+      };
+    };
+    "@babel/helper-module-transforms-7.19.0" = {
+      name = "_at_babel_slash_helper-module-transforms";
+      packageName = "@babel/helper-module-transforms";
+      version = "7.19.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.19.0.tgz";
+        sha512 = "3HBZ377Fe14RbLIA+ac3sY4PTgpxHVkFrESaWhoI5PuyXPBBX8+C34qblV9G89ZtycGJCmCI/Ut+VUDK4bltNQ==";
+      };
+    };
+    "@babel/helper-optimise-call-expression-7.18.6" = {
+      name = "_at_babel_slash_helper-optimise-call-expression";
+      packageName = "@babel/helper-optimise-call-expression";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz";
+        sha512 = "HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==";
+      };
+    };
+    "@babel/helper-plugin-utils-7.19.0" = {
+      name = "_at_babel_slash_helper-plugin-utils";
+      packageName = "@babel/helper-plugin-utils";
+      version = "7.19.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.19.0.tgz";
+        sha512 = "40Ryx7I8mT+0gaNxm8JGTZFUITNqdLAgdg0hXzeVZxVD6nFsdhQvip6v8dqkRHzsz1VFpFAaOCHNn0vKBL7Czw==";
+      };
+    };
+    "@babel/helper-remap-async-to-generator-7.18.9" = {
+      name = "_at_babel_slash_helper-remap-async-to-generator";
+      packageName = "@babel/helper-remap-async-to-generator";
+      version = "7.18.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz";
+        sha512 = "dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==";
+      };
+    };
+    "@babel/helper-replace-supers-7.19.1" = {
+      name = "_at_babel_slash_helper-replace-supers";
+      packageName = "@babel/helper-replace-supers";
+      version = "7.19.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.19.1.tgz";
+        sha512 = "T7ahH7wV0Hfs46SFh5Jz3s0B6+o8g3c+7TMxu7xKfmHikg7EAZ3I2Qk9LFhjxXq8sL7UkP5JflezNwoZa8WvWw==";
+      };
+    };
+    "@babel/helper-simple-access-7.18.6" = {
+      name = "_at_babel_slash_helper-simple-access";
+      packageName = "@babel/helper-simple-access";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz";
+        sha512 = "iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==";
+      };
+    };
+    "@babel/helper-skip-transparent-expression-wrappers-7.18.9" = {
+      name = "_at_babel_slash_helper-skip-transparent-expression-wrappers";
+      packageName = "@babel/helper-skip-transparent-expression-wrappers";
+      version = "7.18.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.18.9.tgz";
+        sha512 = "imytd2gHi3cJPsybLRbmFrF7u5BIEuI2cNheyKi3/iOBC63kNn3q8Crn2xVuESli0aM4KYsyEqKyS7lFL8YVtw==";
+      };
+    };
+    "@babel/helper-split-export-declaration-7.18.6" = {
+      name = "_at_babel_slash_helper-split-export-declaration";
+      packageName = "@babel/helper-split-export-declaration";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz";
+        sha512 = "bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==";
+      };
+    };
+    "@babel/helper-string-parser-7.18.10" = {
+      name = "_at_babel_slash_helper-string-parser";
+      packageName = "@babel/helper-string-parser";
+      version = "7.18.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz";
+        sha512 = "XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==";
+      };
+    };
+    "@babel/helper-validator-identifier-7.19.1" = {
+      name = "_at_babel_slash_helper-validator-identifier";
+      packageName = "@babel/helper-validator-identifier";
+      version = "7.19.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz";
+        sha512 = "awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==";
+      };
+    };
+    "@babel/helper-validator-option-7.18.6" = {
+      name = "_at_babel_slash_helper-validator-option";
+      packageName = "@babel/helper-validator-option";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz";
+        sha512 = "XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==";
+      };
+    };
+    "@babel/helper-wrap-function-7.19.0" = {
+      name = "_at_babel_slash_helper-wrap-function";
+      packageName = "@babel/helper-wrap-function";
+      version = "7.19.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.19.0.tgz";
+        sha512 = "txX8aN8CZyYGTwcLhlk87KRqncAzhh5TpQamZUa0/u3an36NtDpUP6bQgBCBcLeBs09R/OwQu3OjK0k/HwfNDg==";
+      };
+    };
+    "@babel/helpers-7.19.0" = {
+      name = "_at_babel_slash_helpers";
+      packageName = "@babel/helpers";
+      version = "7.19.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helpers/-/helpers-7.19.0.tgz";
+        sha512 = "DRBCKGwIEdqY3+rPJgG/dKfQy9+08rHIAJx8q2p+HSWP87s2HCrQmaAMMyMll2kIXKCW0cO1RdQskx15Xakftg==";
+      };
+    };
+    "@babel/highlight-7.18.6" = {
+      name = "_at_babel_slash_highlight";
+      packageName = "@babel/highlight";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz";
+        sha512 = "u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==";
+      };
+    };
+    "@babel/parser-7.19.1" = {
+      name = "_at_babel_slash_parser";
+      packageName = "@babel/parser";
+      version = "7.19.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.19.1.tgz";
+        sha512 = "h7RCSorm1DdTVGJf3P2Mhj3kdnkmF/EiysUkzS2TdgAYqyjFdMQJbVuXOBej2SBJaXan/lIVtT6KkGbyyq753A==";
+      };
+    };
+    "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6" = {
+      name = "_at_babel_slash_plugin-bugfix-safari-id-destructuring-collision-in-function-expression";
+      packageName = "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz";
+        sha512 = "Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==";
+      };
+    };
+    "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9" = {
+      name = "_at_babel_slash_plugin-bugfix-v8-spread-parameters-in-optional-chaining";
+      packageName = "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining";
+      version = "7.18.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9.tgz";
+        sha512 = "AHrP9jadvH7qlOj6PINbgSuphjQUAK7AOT7DPjBo9EHoLhQTnnK5u45e1Hd4DbSQEO9nqPWtQ89r+XEOWFScKg==";
+      };
+    };
+    "@babel/plugin-proposal-async-generator-functions-7.19.1" = {
+      name = "_at_babel_slash_plugin-proposal-async-generator-functions";
+      packageName = "@babel/plugin-proposal-async-generator-functions";
+      version = "7.19.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.19.1.tgz";
+        sha512 = "0yu8vNATgLy4ivqMNBIwb1HebCelqN7YX8SL3FDXORv/RqT0zEEWUCH4GH44JsSrvCu6GqnAdR5EBFAPeNBB4Q==";
+      };
+    };
+    "@babel/plugin-proposal-class-properties-7.18.6" = {
+      name = "_at_babel_slash_plugin-proposal-class-properties";
+      packageName = "@babel/plugin-proposal-class-properties";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz";
+        sha512 = "cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==";
+      };
+    };
+    "@babel/plugin-proposal-class-static-block-7.18.6" = {
+      name = "_at_babel_slash_plugin-proposal-class-static-block";
+      packageName = "@babel/plugin-proposal-class-static-block";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.6.tgz";
+        sha512 = "+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw==";
+      };
+    };
+    "@babel/plugin-proposal-decorators-7.19.1" = {
+      name = "_at_babel_slash_plugin-proposal-decorators";
+      packageName = "@babel/plugin-proposal-decorators";
+      version = "7.19.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.19.1.tgz";
+        sha512 = "LfIKNBBY7Q1OX5C4xAgRQffOg2OnhAo9fnbcOHgOC9Yytm2Sw+4XqHufRYU86tHomzepxtvuVaNO+3EVKR4ivw==";
+      };
+    };
+    "@babel/plugin-proposal-dynamic-import-7.18.6" = {
+      name = "_at_babel_slash_plugin-proposal-dynamic-import";
+      packageName = "@babel/plugin-proposal-dynamic-import";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz";
+        sha512 = "1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==";
+      };
+    };
+    "@babel/plugin-proposal-export-namespace-from-7.18.9" = {
+      name = "_at_babel_slash_plugin-proposal-export-namespace-from";
+      packageName = "@babel/plugin-proposal-export-namespace-from";
+      version = "7.18.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz";
+        sha512 = "k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==";
+      };
+    };
+    "@babel/plugin-proposal-json-strings-7.18.6" = {
+      name = "_at_babel_slash_plugin-proposal-json-strings";
+      packageName = "@babel/plugin-proposal-json-strings";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz";
+        sha512 = "lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==";
+      };
+    };
+    "@babel/plugin-proposal-logical-assignment-operators-7.18.9" = {
+      name = "_at_babel_slash_plugin-proposal-logical-assignment-operators";
+      packageName = "@babel/plugin-proposal-logical-assignment-operators";
+      version = "7.18.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.18.9.tgz";
+        sha512 = "128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q==";
+      };
+    };
+    "@babel/plugin-proposal-nullish-coalescing-operator-7.18.6" = {
+      name = "_at_babel_slash_plugin-proposal-nullish-coalescing-operator";
+      packageName = "@babel/plugin-proposal-nullish-coalescing-operator";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz";
+        sha512 = "wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==";
+      };
+    };
+    "@babel/plugin-proposal-numeric-separator-7.18.6" = {
+      name = "_at_babel_slash_plugin-proposal-numeric-separator";
+      packageName = "@babel/plugin-proposal-numeric-separator";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz";
+        sha512 = "ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==";
+      };
+    };
+    "@babel/plugin-proposal-object-rest-spread-7.18.9" = {
+      name = "_at_babel_slash_plugin-proposal-object-rest-spread";
+      packageName = "@babel/plugin-proposal-object-rest-spread";
+      version = "7.18.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.9.tgz";
+        sha512 = "kDDHQ5rflIeY5xl69CEqGEZ0KY369ehsCIEbTGb4siHG5BE9sga/T0r0OUwyZNLMmZE79E1kbsqAjwFCW4ds6Q==";
+      };
+    };
+    "@babel/plugin-proposal-optional-catch-binding-7.18.6" = {
+      name = "_at_babel_slash_plugin-proposal-optional-catch-binding";
+      packageName = "@babel/plugin-proposal-optional-catch-binding";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz";
+        sha512 = "Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==";
+      };
+    };
+    "@babel/plugin-proposal-optional-chaining-7.18.9" = {
+      name = "_at_babel_slash_plugin-proposal-optional-chaining";
+      packageName = "@babel/plugin-proposal-optional-chaining";
+      version = "7.18.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz";
+        sha512 = "v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w==";
+      };
+    };
+    "@babel/plugin-proposal-private-methods-7.18.6" = {
+      name = "_at_babel_slash_plugin-proposal-private-methods";
+      packageName = "@babel/plugin-proposal-private-methods";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz";
+        sha512 = "nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==";
+      };
+    };
+    "@babel/plugin-proposal-private-property-in-object-7.18.6" = {
+      name = "_at_babel_slash_plugin-proposal-private-property-in-object";
+      packageName = "@babel/plugin-proposal-private-property-in-object";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.18.6.tgz";
+        sha512 = "9Rysx7FOctvT5ouj5JODjAFAkgGoudQuLPamZb0v1TGLpapdNaftzifU8NTWQm0IRjqoYypdrSmyWgkocDQ8Dw==";
+      };
+    };
+    "@babel/plugin-proposal-unicode-property-regex-7.18.6" = {
+      name = "_at_babel_slash_plugin-proposal-unicode-property-regex";
+      packageName = "@babel/plugin-proposal-unicode-property-regex";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz";
+        sha512 = "2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==";
+      };
+    };
+    "@babel/plugin-syntax-async-generators-7.8.4" = {
+      name = "_at_babel_slash_plugin-syntax-async-generators";
+      packageName = "@babel/plugin-syntax-async-generators";
+      version = "7.8.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz";
+        sha512 = "tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==";
+      };
+    };
+    "@babel/plugin-syntax-bigint-7.8.3" = {
+      name = "_at_babel_slash_plugin-syntax-bigint";
+      packageName = "@babel/plugin-syntax-bigint";
+      version = "7.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz";
+        sha512 = "wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==";
+      };
+    };
+    "@babel/plugin-syntax-class-properties-7.12.13" = {
+      name = "_at_babel_slash_plugin-syntax-class-properties";
+      packageName = "@babel/plugin-syntax-class-properties";
+      version = "7.12.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz";
+        sha512 = "fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==";
+      };
+    };
+    "@babel/plugin-syntax-class-static-block-7.14.5" = {
+      name = "_at_babel_slash_plugin-syntax-class-static-block";
+      packageName = "@babel/plugin-syntax-class-static-block";
+      version = "7.14.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz";
+        sha512 = "b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==";
+      };
+    };
+    "@babel/plugin-syntax-decorators-7.19.0" = {
+      name = "_at_babel_slash_plugin-syntax-decorators";
+      packageName = "@babel/plugin-syntax-decorators";
+      version = "7.19.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.19.0.tgz";
+        sha512 = "xaBZUEDntt4faL1yN8oIFlhfXeQAWJW7CLKYsHTUqriCUbj8xOra8bfxxKGi/UwExPFBuPdH4XfHc9rGQhrVkQ==";
+      };
+    };
+    "@babel/plugin-syntax-dynamic-import-7.8.3" = {
+      name = "_at_babel_slash_plugin-syntax-dynamic-import";
+      packageName = "@babel/plugin-syntax-dynamic-import";
+      version = "7.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz";
+        sha512 = "5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==";
+      };
+    };
+    "@babel/plugin-syntax-export-namespace-from-7.8.3" = {
+      name = "_at_babel_slash_plugin-syntax-export-namespace-from";
+      packageName = "@babel/plugin-syntax-export-namespace-from";
+      version = "7.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz";
+        sha512 = "MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==";
+      };
+    };
+    "@babel/plugin-syntax-flow-7.18.6" = {
+      name = "_at_babel_slash_plugin-syntax-flow";
+      packageName = "@babel/plugin-syntax-flow";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.18.6.tgz";
+        sha512 = "LUbR+KNTBWCUAqRG9ex5Gnzu2IOkt8jRJbHHXFT9q+L9zm7M/QQbEqXyw1n1pohYvOyWC8CjeyjrSaIwiYjK7A==";
+      };
+    };
+    "@babel/plugin-syntax-import-assertions-7.18.6" = {
+      name = "_at_babel_slash_plugin-syntax-import-assertions";
+      packageName = "@babel/plugin-syntax-import-assertions";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.18.6.tgz";
+        sha512 = "/DU3RXad9+bZwrgWJQKbr39gYbJpLJHezqEzRzi/BHRlJ9zsQb4CK2CA/5apllXNomwA1qHwzvHl+AdEmC5krQ==";
+      };
+    };
+    "@babel/plugin-syntax-import-meta-7.10.4" = {
+      name = "_at_babel_slash_plugin-syntax-import-meta";
+      packageName = "@babel/plugin-syntax-import-meta";
+      version = "7.10.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz";
+        sha512 = "Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==";
+      };
+    };
+    "@babel/plugin-syntax-json-strings-7.8.3" = {
+      name = "_at_babel_slash_plugin-syntax-json-strings";
+      packageName = "@babel/plugin-syntax-json-strings";
+      version = "7.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz";
+        sha512 = "lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==";
+      };
+    };
+    "@babel/plugin-syntax-jsx-7.18.6" = {
+      name = "_at_babel_slash_plugin-syntax-jsx";
+      packageName = "@babel/plugin-syntax-jsx";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz";
+        sha512 = "6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==";
+      };
+    };
+    "@babel/plugin-syntax-logical-assignment-operators-7.10.4" = {
+      name = "_at_babel_slash_plugin-syntax-logical-assignment-operators";
+      packageName = "@babel/plugin-syntax-logical-assignment-operators";
+      version = "7.10.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz";
+        sha512 = "d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==";
+      };
+    };
+    "@babel/plugin-syntax-nullish-coalescing-operator-7.8.3" = {
+      name = "_at_babel_slash_plugin-syntax-nullish-coalescing-operator";
+      packageName = "@babel/plugin-syntax-nullish-coalescing-operator";
+      version = "7.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz";
+        sha512 = "aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==";
+      };
+    };
+    "@babel/plugin-syntax-numeric-separator-7.10.4" = {
+      name = "_at_babel_slash_plugin-syntax-numeric-separator";
+      packageName = "@babel/plugin-syntax-numeric-separator";
+      version = "7.10.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz";
+        sha512 = "9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==";
+      };
+    };
+    "@babel/plugin-syntax-object-rest-spread-7.8.3" = {
+      name = "_at_babel_slash_plugin-syntax-object-rest-spread";
+      packageName = "@babel/plugin-syntax-object-rest-spread";
+      version = "7.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz";
+        sha512 = "XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==";
+      };
+    };
+    "@babel/plugin-syntax-optional-catch-binding-7.8.3" = {
+      name = "_at_babel_slash_plugin-syntax-optional-catch-binding";
+      packageName = "@babel/plugin-syntax-optional-catch-binding";
+      version = "7.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz";
+        sha512 = "6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==";
+      };
+    };
+    "@babel/plugin-syntax-optional-chaining-7.8.3" = {
+      name = "_at_babel_slash_plugin-syntax-optional-chaining";
+      packageName = "@babel/plugin-syntax-optional-chaining";
+      version = "7.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz";
+        sha512 = "KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==";
+      };
+    };
+    "@babel/plugin-syntax-private-property-in-object-7.14.5" = {
+      name = "_at_babel_slash_plugin-syntax-private-property-in-object";
+      packageName = "@babel/plugin-syntax-private-property-in-object";
+      version = "7.14.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz";
+        sha512 = "0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==";
+      };
+    };
+    "@babel/plugin-syntax-top-level-await-7.14.5" = {
+      name = "_at_babel_slash_plugin-syntax-top-level-await";
+      packageName = "@babel/plugin-syntax-top-level-await";
+      version = "7.14.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz";
+        sha512 = "hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==";
+      };
+    };
+    "@babel/plugin-syntax-typescript-7.18.6" = {
+      name = "_at_babel_slash_plugin-syntax-typescript";
+      packageName = "@babel/plugin-syntax-typescript";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.18.6.tgz";
+        sha512 = "mAWAuq4rvOepWCBid55JuRNvpTNf2UGVgoz4JV0fXEKolsVZDzsa4NqCef758WZJj/GDu0gVGItjKFiClTAmZA==";
+      };
+    };
+    "@babel/plugin-transform-arrow-functions-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-arrow-functions";
+      packageName = "@babel/plugin-transform-arrow-functions";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz";
+        sha512 = "9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ==";
+      };
+    };
+    "@babel/plugin-transform-async-to-generator-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-async-to-generator";
+      packageName = "@babel/plugin-transform-async-to-generator";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz";
+        sha512 = "ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==";
+      };
+    };
+    "@babel/plugin-transform-block-scoped-functions-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-block-scoped-functions";
+      packageName = "@babel/plugin-transform-block-scoped-functions";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz";
+        sha512 = "ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==";
+      };
+    };
+    "@babel/plugin-transform-block-scoping-7.18.9" = {
+      name = "_at_babel_slash_plugin-transform-block-scoping";
+      packageName = "@babel/plugin-transform-block-scoping";
+      version = "7.18.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.9.tgz";
+        sha512 = "5sDIJRV1KtQVEbt/EIBwGy4T01uYIo4KRB3VUqzkhrAIOGx7AoctL9+Ux88btY0zXdDyPJ9mW+bg+v+XEkGmtw==";
+      };
+    };
+    "@babel/plugin-transform-classes-7.19.0" = {
+      name = "_at_babel_slash_plugin-transform-classes";
+      packageName = "@babel/plugin-transform-classes";
+      version = "7.19.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.19.0.tgz";
+        sha512 = "YfeEE9kCjqTS9IitkgfJuxjcEtLUHMqa8yUJ6zdz8vR7hKuo6mOy2C05P0F1tdMmDCeuyidKnlrw/iTppHcr2A==";
+      };
+    };
+    "@babel/plugin-transform-computed-properties-7.18.9" = {
+      name = "_at_babel_slash_plugin-transform-computed-properties";
+      packageName = "@babel/plugin-transform-computed-properties";
+      version = "7.18.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz";
+        sha512 = "+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw==";
+      };
+    };
+    "@babel/plugin-transform-destructuring-7.18.13" = {
+      name = "_at_babel_slash_plugin-transform-destructuring";
+      packageName = "@babel/plugin-transform-destructuring";
+      version = "7.18.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.18.13.tgz";
+        sha512 = "TodpQ29XekIsex2A+YJPj5ax2plkGa8YYY6mFjCohk/IG9IY42Rtuj1FuDeemfg2ipxIFLzPeA83SIBnlhSIow==";
+      };
+    };
+    "@babel/plugin-transform-dotall-regex-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-dotall-regex";
+      packageName = "@babel/plugin-transform-dotall-regex";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz";
+        sha512 = "6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==";
+      };
+    };
+    "@babel/plugin-transform-duplicate-keys-7.18.9" = {
+      name = "_at_babel_slash_plugin-transform-duplicate-keys";
+      packageName = "@babel/plugin-transform-duplicate-keys";
+      version = "7.18.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz";
+        sha512 = "d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==";
+      };
+    };
+    "@babel/plugin-transform-exponentiation-operator-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-exponentiation-operator";
+      packageName = "@babel/plugin-transform-exponentiation-operator";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz";
+        sha512 = "wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==";
+      };
+    };
+    "@babel/plugin-transform-flow-strip-types-7.19.0" = {
+      name = "_at_babel_slash_plugin-transform-flow-strip-types";
+      packageName = "@babel/plugin-transform-flow-strip-types";
+      version = "7.19.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.19.0.tgz";
+        sha512 = "sgeMlNaQVbCSpgLSKP4ZZKfsJVnFnNQlUSk6gPYzR/q7tzCgQF2t8RBKAP6cKJeZdveei7Q7Jm527xepI8lNLg==";
+      };
+    };
+    "@babel/plugin-transform-for-of-7.18.8" = {
+      name = "_at_babel_slash_plugin-transform-for-of";
+      packageName = "@babel/plugin-transform-for-of";
+      version = "7.18.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz";
+        sha512 = "yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ==";
+      };
+    };
+    "@babel/plugin-transform-function-name-7.18.9" = {
+      name = "_at_babel_slash_plugin-transform-function-name";
+      packageName = "@babel/plugin-transform-function-name";
+      version = "7.18.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz";
+        sha512 = "WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==";
+      };
+    };
+    "@babel/plugin-transform-literals-7.18.9" = {
+      name = "_at_babel_slash_plugin-transform-literals";
+      packageName = "@babel/plugin-transform-literals";
+      version = "7.18.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz";
+        sha512 = "IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==";
+      };
+    };
+    "@babel/plugin-transform-member-expression-literals-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-member-expression-literals";
+      packageName = "@babel/plugin-transform-member-expression-literals";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz";
+        sha512 = "qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==";
+      };
+    };
+    "@babel/plugin-transform-modules-amd-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-modules-amd";
+      packageName = "@babel/plugin-transform-modules-amd";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.6.tgz";
+        sha512 = "Pra5aXsmTsOnjM3IajS8rTaLCy++nGM4v3YR4esk5PCsyg9z8NA5oQLwxzMUtDBd8F+UmVza3VxoAaWCbzH1rg==";
+      };
+    };
+    "@babel/plugin-transform-modules-commonjs-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-modules-commonjs";
+      packageName = "@babel/plugin-transform-modules-commonjs";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.6.tgz";
+        sha512 = "Qfv2ZOWikpvmedXQJDSbxNqy7Xr/j2Y8/KfijM0iJyKkBTmWuvCA1yeH1yDM7NJhBW/2aXxeucLj6i80/LAJ/Q==";
+      };
+    };
+    "@babel/plugin-transform-modules-systemjs-7.19.0" = {
+      name = "_at_babel_slash_plugin-transform-modules-systemjs";
+      packageName = "@babel/plugin-transform-modules-systemjs";
+      version = "7.19.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.19.0.tgz";
+        sha512 = "x9aiR0WXAWmOWsqcsnrzGR+ieaTMVyGyffPVA7F8cXAGt/UxefYv6uSHZLkAFChN5M5Iy1+wjE+xJuPt22H39A==";
+      };
+    };
+    "@babel/plugin-transform-modules-umd-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-modules-umd";
+      packageName = "@babel/plugin-transform-modules-umd";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz";
+        sha512 = "dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==";
+      };
+    };
+    "@babel/plugin-transform-named-capturing-groups-regex-7.19.1" = {
+      name = "_at_babel_slash_plugin-transform-named-capturing-groups-regex";
+      packageName = "@babel/plugin-transform-named-capturing-groups-regex";
+      version = "7.19.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.19.1.tgz";
+        sha512 = "oWk9l9WItWBQYS4FgXD4Uyy5kq898lvkXpXQxoJEY1RnvPk4R/Dvu2ebXU9q8lP+rlMwUQTFf2Ok6d78ODa0kw==";
+      };
+    };
+    "@babel/plugin-transform-new-target-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-new-target";
+      packageName = "@babel/plugin-transform-new-target";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz";
+        sha512 = "DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==";
+      };
+    };
+    "@babel/plugin-transform-object-super-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-object-super";
+      packageName = "@babel/plugin-transform-object-super";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz";
+        sha512 = "uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==";
+      };
+    };
+    "@babel/plugin-transform-parameters-7.18.8" = {
+      name = "_at_babel_slash_plugin-transform-parameters";
+      packageName = "@babel/plugin-transform-parameters";
+      version = "7.18.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.18.8.tgz";
+        sha512 = "ivfbE3X2Ss+Fj8nnXvKJS6sjRG4gzwPMsP+taZC+ZzEGjAYlvENixmt1sZ5Ca6tWls+BlKSGKPJ6OOXvXCbkFg==";
+      };
+    };
+    "@babel/plugin-transform-property-literals-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-property-literals";
+      packageName = "@babel/plugin-transform-property-literals";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz";
+        sha512 = "cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==";
+      };
+    };
+    "@babel/plugin-transform-react-constant-elements-7.18.12" = {
+      name = "_at_babel_slash_plugin-transform-react-constant-elements";
+      packageName = "@babel/plugin-transform-react-constant-elements";
+      version = "7.18.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.18.12.tgz";
+        sha512 = "Q99U9/ttiu+LMnRU8psd23HhvwXmKWDQIpocm0JKaICcZHnw+mdQbHm6xnSy7dOl8I5PELakYtNBubNQlBXbZw==";
+      };
+    };
+    "@babel/plugin-transform-react-display-name-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-react-display-name";
+      packageName = "@babel/plugin-transform-react-display-name";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz";
+        sha512 = "TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==";
+      };
+    };
+    "@babel/plugin-transform-react-jsx-7.19.0" = {
+      name = "_at_babel_slash_plugin-transform-react-jsx";
+      packageName = "@babel/plugin-transform-react-jsx";
+      version = "7.19.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.19.0.tgz";
+        sha512 = "UVEvX3tXie3Szm3emi1+G63jyw1w5IcMY0FSKM+CRnKRI5Mr1YbCNgsSTwoTwKphQEG9P+QqmuRFneJPZuHNhg==";
+      };
+    };
+    "@babel/plugin-transform-react-jsx-development-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-react-jsx-development";
+      packageName = "@babel/plugin-transform-react-jsx-development";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz";
+        sha512 = "SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==";
+      };
+    };
+    "@babel/plugin-transform-react-pure-annotations-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-react-pure-annotations";
+      packageName = "@babel/plugin-transform-react-pure-annotations";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz";
+        sha512 = "I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==";
+      };
+    };
+    "@babel/plugin-transform-regenerator-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-regenerator";
+      packageName = "@babel/plugin-transform-regenerator";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.6.tgz";
+        sha512 = "poqRI2+qiSdeldcz4wTSTXBRryoq3Gc70ye7m7UD5Ww0nE29IXqMl6r7Nd15WBgRd74vloEMlShtH6CKxVzfmQ==";
+      };
+    };
+    "@babel/plugin-transform-reserved-words-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-reserved-words";
+      packageName = "@babel/plugin-transform-reserved-words";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz";
+        sha512 = "oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==";
+      };
+    };
+    "@babel/plugin-transform-runtime-7.19.1" = {
+      name = "_at_babel_slash_plugin-transform-runtime";
+      packageName = "@babel/plugin-transform-runtime";
+      version = "7.19.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.19.1.tgz";
+        sha512 = "2nJjTUFIzBMP/f/miLxEK9vxwW/KUXsdvN4sR//TmuDhe6yU2h57WmIOE12Gng3MDP/xpjUV/ToZRdcf8Yj4fA==";
+      };
+    };
+    "@babel/plugin-transform-shorthand-properties-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-shorthand-properties";
+      packageName = "@babel/plugin-transform-shorthand-properties";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz";
+        sha512 = "eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==";
+      };
+    };
+    "@babel/plugin-transform-spread-7.19.0" = {
+      name = "_at_babel_slash_plugin-transform-spread";
+      packageName = "@babel/plugin-transform-spread";
+      version = "7.19.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.19.0.tgz";
+        sha512 = "RsuMk7j6n+r752EtzyScnWkQyuJdli6LdO5Klv8Yx0OfPVTcQkIUfS8clx5e9yHXzlnhOZF3CbQ8C2uP5j074w==";
+      };
+    };
+    "@babel/plugin-transform-sticky-regex-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-sticky-regex";
+      packageName = "@babel/plugin-transform-sticky-regex";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz";
+        sha512 = "kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==";
+      };
+    };
+    "@babel/plugin-transform-template-literals-7.18.9" = {
+      name = "_at_babel_slash_plugin-transform-template-literals";
+      packageName = "@babel/plugin-transform-template-literals";
+      version = "7.18.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz";
+        sha512 = "S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==";
+      };
+    };
+    "@babel/plugin-transform-typeof-symbol-7.18.9" = {
+      name = "_at_babel_slash_plugin-transform-typeof-symbol";
+      packageName = "@babel/plugin-transform-typeof-symbol";
+      version = "7.18.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz";
+        sha512 = "SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==";
+      };
+    };
+    "@babel/plugin-transform-typescript-7.19.1" = {
+      name = "_at_babel_slash_plugin-transform-typescript";
+      packageName = "@babel/plugin-transform-typescript";
+      version = "7.19.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.19.1.tgz";
+        sha512 = "+ILcOU+6mWLlvCwnL920m2Ow3wWx3Wo8n2t5aROQmV55GZt+hOiLvBaa3DNzRjSEHa1aauRs4/YLmkCfFkhhRQ==";
+      };
+    };
+    "@babel/plugin-transform-unicode-escapes-7.18.10" = {
+      name = "_at_babel_slash_plugin-transform-unicode-escapes";
+      packageName = "@babel/plugin-transform-unicode-escapes";
+      version = "7.18.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz";
+        sha512 = "kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==";
+      };
+    };
+    "@babel/plugin-transform-unicode-regex-7.18.6" = {
+      name = "_at_babel_slash_plugin-transform-unicode-regex";
+      packageName = "@babel/plugin-transform-unicode-regex";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz";
+        sha512 = "gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==";
+      };
+    };
+    "@babel/preset-env-7.19.1" = {
+      name = "_at_babel_slash_preset-env";
+      packageName = "@babel/preset-env";
+      version = "7.19.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.19.1.tgz";
+        sha512 = "c8B2c6D16Lp+Nt6HcD+nHl0VbPKVnNPTpszahuxJJnurfMtKeZ80A+qUv48Y7wqvS+dTFuLuaM9oYxyNHbCLWA==";
+      };
+    };
+    "@babel/preset-modules-0.1.5" = {
+      name = "_at_babel_slash_preset-modules";
+      packageName = "@babel/preset-modules";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz";
+        sha512 = "A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==";
+      };
+    };
+    "@babel/preset-react-7.18.6" = {
+      name = "_at_babel_slash_preset-react";
+      packageName = "@babel/preset-react";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.18.6.tgz";
+        sha512 = "zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg==";
+      };
+    };
+    "@babel/preset-typescript-7.18.6" = {
+      name = "_at_babel_slash_preset-typescript";
+      packageName = "@babel/preset-typescript";
+      version = "7.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.18.6.tgz";
+        sha512 = "s9ik86kXBAnD760aybBucdpnLsAt0jK1xqJn2juOn9lkOvSHV60os5hxoVJsPzMQxvnUJFAlkont2DvvaYEBtQ==";
+      };
+    };
+    "@babel/runtime-7.19.0" = {
+      name = "_at_babel_slash_runtime";
+      packageName = "@babel/runtime";
+      version = "7.19.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.19.0.tgz";
+        sha512 = "eR8Lo9hnDS7tqkO7NsV+mKvCmv5boaXFSZ70DnfhcgiEne8hv9oCEd36Klw74EtizEqLsy4YnW8UWwpBVolHZA==";
+      };
+    };
+    "@babel/runtime-corejs3-7.19.1" = {
+      name = "_at_babel_slash_runtime-corejs3";
+      packageName = "@babel/runtime-corejs3";
+      version = "7.19.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.19.1.tgz";
+        sha512 = "j2vJGnkopRzH+ykJ8h68wrHnEUmtK//E723jjixiAl/PPf6FhqY/vYRcMVlNydRKQjQsTsYEjpx+DZMIvnGk/g==";
+      };
+    };
+    "@babel/template-7.18.10" = {
+      name = "_at_babel_slash_template";
+      packageName = "@babel/template";
+      version = "7.18.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz";
+        sha512 = "TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==";
+      };
+    };
+    "@babel/traverse-7.19.1" = {
+      name = "_at_babel_slash_traverse";
+      packageName = "@babel/traverse";
+      version = "7.19.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/traverse/-/traverse-7.19.1.tgz";
+        sha512 = "0j/ZfZMxKukDaag2PtOPDbwuELqIar6lLskVPPJDjXMXjfLb1Obo/1yjxIGqqAJrmfaTIY3z2wFLAQ7qSkLsuA==";
+      };
+    };
+    "@babel/types-7.19.0" = {
+      name = "_at_babel_slash_types";
+      packageName = "@babel/types";
+      version = "7.19.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/types/-/types-7.19.0.tgz";
+        sha512 = "YuGopBq3ke25BVSiS6fgF49Ul9gH1x70Bcr6bqRLjWCkcX8Hre1/5+z+IiWOIerRMSSEfGZVB9z9kyq7wVs9YA==";
+      };
+    };
+    "@bcoe/v8-coverage-0.2.3" = {
+      name = "_at_bcoe_slash_v8-coverage";
+      packageName = "@bcoe/v8-coverage";
+      version = "0.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz";
+        sha512 = "0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==";
+      };
+    };
+    "@csstools/normalize.css-12.0.0" = {
+      name = "_at_csstools_slash_normalize.css";
+      packageName = "@csstools/normalize.css";
+      version = "12.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@csstools/normalize.css/-/normalize.css-12.0.0.tgz";
+        sha512 = "M0qqxAcwCsIVfpFQSlGN5XjXWu8l5JDZN+fPt1LeW5SZexQTgnaEvgXAY+CeygRw0EeppWHi12JxESWiWrB0Sg==";
+      };
+    };
+    "@csstools/postcss-cascade-layers-1.1.1" = {
+      name = "_at_csstools_slash_postcss-cascade-layers";
+      packageName = "@csstools/postcss-cascade-layers";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.1.1.tgz";
+        sha512 = "+KdYrpKC5TgomQr2DlZF4lDEpHcoxnj5IGddYYfBWJAKfj1JtuHUIqMa+E1pJJ+z3kvDViWMqyqPlG4Ja7amQA==";
+      };
+    };
+    "@csstools/postcss-color-function-1.1.1" = {
+      name = "_at_csstools_slash_postcss-color-function";
+      packageName = "@csstools/postcss-color-function";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-1.1.1.tgz";
+        sha512 = "Bc0f62WmHdtRDjf5f3e2STwRAl89N2CLb+9iAwzrv4L2hncrbDwnQD9PCq0gtAt7pOI2leIV08HIBUd4jxD8cw==";
+      };
+    };
+    "@csstools/postcss-font-format-keywords-1.0.1" = {
+      name = "_at_csstools_slash_postcss-font-format-keywords";
+      packageName = "@csstools/postcss-font-format-keywords";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-1.0.1.tgz";
+        sha512 = "ZgrlzuUAjXIOc2JueK0X5sZDjCtgimVp/O5CEqTcs5ShWBa6smhWYbS0x5cVc/+rycTDbjjzoP0KTDnUneZGOg==";
+      };
+    };
+    "@csstools/postcss-hwb-function-1.0.2" = {
+      name = "_at_csstools_slash_postcss-hwb-function";
+      packageName = "@csstools/postcss-hwb-function";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-1.0.2.tgz";
+        sha512 = "YHdEru4o3Rsbjmu6vHy4UKOXZD+Rn2zmkAmLRfPet6+Jz4Ojw8cbWxe1n42VaXQhD3CQUXXTooIy8OkVbUcL+w==";
+      };
+    };
+    "@csstools/postcss-ic-unit-1.0.1" = {
+      name = "_at_csstools_slash_postcss-ic-unit";
+      packageName = "@csstools/postcss-ic-unit";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-1.0.1.tgz";
+        sha512 = "Ot1rcwRAaRHNKC9tAqoqNZhjdYBzKk1POgWfhN4uCOE47ebGcLRqXjKkApVDpjifL6u2/55ekkpnFcp+s/OZUw==";
+      };
+    };
+    "@csstools/postcss-is-pseudo-class-2.0.7" = {
+      name = "_at_csstools_slash_postcss-is-pseudo-class";
+      packageName = "@csstools/postcss-is-pseudo-class";
+      version = "2.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-2.0.7.tgz";
+        sha512 = "7JPeVVZHd+jxYdULl87lvjgvWldYu+Bc62s9vD/ED6/QTGjy0jy0US/f6BG53sVMTBJ1lzKZFpYmofBN9eaRiA==";
+      };
+    };
+    "@csstools/postcss-nested-calc-1.0.0" = {
+      name = "_at_csstools_slash_postcss-nested-calc";
+      packageName = "@csstools/postcss-nested-calc";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@csstools/postcss-nested-calc/-/postcss-nested-calc-1.0.0.tgz";
+        sha512 = "JCsQsw1wjYwv1bJmgjKSoZNvf7R6+wuHDAbi5f/7MbFhl2d/+v+TvBTU4BJH3G1X1H87dHl0mh6TfYogbT/dJQ==";
+      };
+    };
+    "@csstools/postcss-normalize-display-values-1.0.1" = {
+      name = "_at_csstools_slash_postcss-normalize-display-values";
+      packageName = "@csstools/postcss-normalize-display-values";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-1.0.1.tgz";
+        sha512 = "jcOanIbv55OFKQ3sYeFD/T0Ti7AMXc9nM1hZWu8m/2722gOTxFg7xYu4RDLJLeZmPUVQlGzo4jhzvTUq3x4ZUw==";
+      };
+    };
+    "@csstools/postcss-oklab-function-1.1.1" = {
+      name = "_at_csstools_slash_postcss-oklab-function";
+      packageName = "@csstools/postcss-oklab-function";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-1.1.1.tgz";
+        sha512 = "nJpJgsdA3dA9y5pgyb/UfEzE7W5Ka7u0CX0/HIMVBNWzWemdcTH3XwANECU6anWv/ao4vVNLTMxhiPNZsTK6iA==";
+      };
+    };
+    "@csstools/postcss-progressive-custom-properties-1.3.0" = {
+      name = "_at_csstools_slash_postcss-progressive-custom-properties";
+      packageName = "@csstools/postcss-progressive-custom-properties";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-1.3.0.tgz";
+        sha512 = "ASA9W1aIy5ygskZYuWams4BzafD12ULvSypmaLJT2jvQ8G0M3I8PRQhC0h7mG0Z3LI05+agZjqSR9+K9yaQQjA==";
+      };
+    };
+    "@csstools/postcss-stepped-value-functions-1.0.1" = {
+      name = "_at_csstools_slash_postcss-stepped-value-functions";
+      packageName = "@csstools/postcss-stepped-value-functions";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-1.0.1.tgz";
+        sha512 = "dz0LNoo3ijpTOQqEJLY8nyaapl6umbmDcgj4AD0lgVQ572b2eqA1iGZYTTWhrcrHztWDDRAX2DGYyw2VBjvCvQ==";
+      };
+    };
+    "@csstools/postcss-text-decoration-shorthand-1.0.0" = {
+      name = "_at_csstools_slash_postcss-text-decoration-shorthand";
+      packageName = "@csstools/postcss-text-decoration-shorthand";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-1.0.0.tgz";
+        sha512 = "c1XwKJ2eMIWrzQenN0XbcfzckOLLJiczqy+YvfGmzoVXd7pT9FfObiSEfzs84bpE/VqfpEuAZ9tCRbZkZxxbdw==";
+      };
+    };
+    "@csstools/postcss-trigonometric-functions-1.0.2" = {
+      name = "_at_csstools_slash_postcss-trigonometric-functions";
+      packageName = "@csstools/postcss-trigonometric-functions";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-1.0.2.tgz";
+        sha512 = "woKaLO///4bb+zZC2s80l+7cm07M7268MsyG3M0ActXXEFi6SuhvriQYcb58iiKGbjwwIU7n45iRLEHypB47Og==";
+      };
+    };
+    "@csstools/postcss-unset-value-1.0.2" = {
+      name = "_at_csstools_slash_postcss-unset-value";
+      packageName = "@csstools/postcss-unset-value";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@csstools/postcss-unset-value/-/postcss-unset-value-1.0.2.tgz";
+        sha512 = "c8J4roPBILnelAsdLr4XOAR/GsTm0GJi4XpcfvoWk3U6KiTCqiFYc63KhRMQQX35jYMp4Ao8Ij9+IZRgMfJp1g==";
+      };
+    };
+    "@csstools/selector-specificity-2.0.2" = {
+      name = "_at_csstools_slash_selector-specificity";
+      packageName = "@csstools/selector-specificity";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz";
+        sha512 = "IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==";
+      };
+    };
+    "@emotion/babel-plugin-11.10.2" = {
+      name = "_at_emotion_slash_babel-plugin";
+      packageName = "@emotion/babel-plugin";
+      version = "11.10.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.10.2.tgz";
+        sha512 = "xNQ57njWTFVfPAc3cjfuaPdsgLp5QOSuRsj9MA6ndEhH/AzuZM86qIQzt6rq+aGBwj3n5/TkLmU5lhAfdRmogA==";
+      };
+    };
+    "@emotion/cache-11.10.3" = {
+      name = "_at_emotion_slash_cache";
+      packageName = "@emotion/cache";
+      version = "11.10.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@emotion/cache/-/cache-11.10.3.tgz";
+        sha512 = "Psmp/7ovAa8appWh3g51goxu/z3iVms7JXOreq136D8Bbn6dYraPnmL6mdM8GThEx9vwSn92Fz+mGSjBzN8UPQ==";
+      };
+    };
+    "@emotion/hash-0.9.0" = {
+      name = "_at_emotion_slash_hash";
+      packageName = "@emotion/hash";
+      version = "0.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.0.tgz";
+        sha512 = "14FtKiHhy2QoPIzdTcvh//8OyBlknNs2nXRwIhG904opCby3l+9Xaf/wuPvICBF0rc1ZCNBd3nKe9cd2mecVkQ==";
+      };
+    };
+    "@emotion/is-prop-valid-1.2.0" = {
+      name = "_at_emotion_slash_is-prop-valid";
+      packageName = "@emotion/is-prop-valid";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.0.tgz";
+        sha512 = "3aDpDprjM0AwaxGE09bOPkNxHpBd+kA6jty3RnaEXdweX1DF1U3VQpPYb0g1IStAuK7SVQ1cy+bNBBKp4W3Fjg==";
+      };
+    };
+    "@emotion/memoize-0.8.0" = {
+      name = "_at_emotion_slash_memoize";
+      packageName = "@emotion/memoize";
+      version = "0.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.0.tgz";
+        sha512 = "G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA==";
+      };
+    };
+    "@emotion/react-11.10.4" = {
+      name = "_at_emotion_slash_react";
+      packageName = "@emotion/react";
+      version = "11.10.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@emotion/react/-/react-11.10.4.tgz";
+        sha512 = "j0AkMpr6BL8gldJZ6XQsQ8DnS9TxEQu1R+OGmDZiWjBAJtCcbt0tS3I/YffoqHXxH6MjgI7KdMbYKw3MEiU9eA==";
+      };
+    };
+    "@emotion/serialize-1.1.0" = {
+      name = "_at_emotion_slash_serialize";
+      packageName = "@emotion/serialize";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.0.tgz";
+        sha512 = "F1ZZZW51T/fx+wKbVlwsfchr5q97iW8brAnXmsskz4d0hVB4O3M/SiA3SaeH06x02lSNzkkQv+n3AX3kCXKSFA==";
+      };
+    };
+    "@emotion/sheet-1.2.0" = {
+      name = "_at_emotion_slash_sheet";
+      packageName = "@emotion/sheet";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.0.tgz";
+        sha512 = "OiTkRgpxescko+M51tZsMq7Puu/KP55wMT8BgpcXVG2hqXc0Vo0mfymJ/Uj24Hp0i083ji/o0aLddh08UEjq8w==";
+      };
+    };
+    "@emotion/styled-11.10.4" = {
+      name = "_at_emotion_slash_styled";
+      packageName = "@emotion/styled";
+      version = "11.10.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@emotion/styled/-/styled-11.10.4.tgz";
+        sha512 = "pRl4R8Ez3UXvOPfc2bzIoV8u9P97UedgHS4FPX594ntwEuAMA114wlaHvOK24HB48uqfXiGlYIZYCxVJ1R1ttQ==";
+      };
+    };
+    "@emotion/unitless-0.8.0" = {
+      name = "_at_emotion_slash_unitless";
+      packageName = "@emotion/unitless";
+      version = "0.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.0.tgz";
+        sha512 = "VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw==";
+      };
+    };
+    "@emotion/use-insertion-effect-with-fallbacks-1.0.0" = {
+      name = "_at_emotion_slash_use-insertion-effect-with-fallbacks";
+      packageName = "@emotion/use-insertion-effect-with-fallbacks";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.0.tgz";
+        sha512 = "1eEgUGmkaljiBnRMTdksDV1W4kUnmwgp7X9G8B++9GYwl1lUdqSndSriIrTJ0N7LQaoauY9JJ2yhiOYK5+NI4A==";
+      };
+    };
+    "@emotion/utils-1.2.0" = {
+      name = "_at_emotion_slash_utils";
+      packageName = "@emotion/utils";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.0.tgz";
+        sha512 = "sn3WH53Kzpw8oQ5mgMmIzzyAaH2ZqFEbozVVBSYp538E06OSE6ytOp7pRAjNQR+Q/orwqdQYJSe2m3hCOeznkw==";
+      };
+    };
+    "@emotion/weak-memoize-0.3.0" = {
+      name = "_at_emotion_slash_weak-memoize";
+      packageName = "@emotion/weak-memoize";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.0.tgz";
+        sha512 = "AHPmaAx+RYfZz0eYu6Gviiagpmiyw98ySSlQvCUhVGDRtDFe4DBS0x1bSjdF3gqUDYOczB+yYvBTtEylYSdRhg==";
+      };
+    };
+    "@eslint/eslintrc-1.3.2" = {
+      name = "_at_eslint_slash_eslintrc";
+      packageName = "@eslint/eslintrc";
+      version = "1.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.2.tgz";
+        sha512 = "AXYd23w1S/bv3fTs3Lz0vjiYemS08jWkI3hYyS9I1ry+0f+Yjs1wm+sU0BS8qDOPrBIkp4qHYC16I8uVtpLajQ==";
+      };
+    };
+    "@humanwhocodes/config-array-0.10.5" = {
+      name = "_at_humanwhocodes_slash_config-array";
+      packageName = "@humanwhocodes/config-array";
+      version = "0.10.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.10.5.tgz";
+        sha512 = "XVVDtp+dVvRxMoxSiSfasYaG02VEe1qH5cKgMQJWhol6HwzbcqoCMJi8dAGoYAO57jhUyhI6cWuRiTcRaDaYug==";
+      };
+    };
+    "@humanwhocodes/gitignore-to-minimatch-1.0.2" = {
+      name = "_at_humanwhocodes_slash_gitignore-to-minimatch";
+      packageName = "@humanwhocodes/gitignore-to-minimatch";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@humanwhocodes/gitignore-to-minimatch/-/gitignore-to-minimatch-1.0.2.tgz";
+        sha512 = "rSqmMJDdLFUsyxR6FMtD00nfQKKLFb1kv+qBbOVKqErvloEIJLo5bDTJTQNTYgeyp78JsA7u/NPi5jT1GR/MuA==";
+      };
+    };
+    "@humanwhocodes/module-importer-1.0.1" = {
+      name = "_at_humanwhocodes_slash_module-importer";
+      packageName = "@humanwhocodes/module-importer";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz";
+        sha512 = "bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==";
+      };
+    };
+    "@humanwhocodes/object-schema-1.2.1" = {
+      name = "_at_humanwhocodes_slash_object-schema";
+      packageName = "@humanwhocodes/object-schema";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz";
+        sha512 = "ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==";
+      };
+    };
+    "@istanbuljs/load-nyc-config-1.1.0" = {
+      name = "_at_istanbuljs_slash_load-nyc-config";
+      packageName = "@istanbuljs/load-nyc-config";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz";
+        sha512 = "VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==";
+      };
+    };
+    "@istanbuljs/schema-0.1.3" = {
+      name = "_at_istanbuljs_slash_schema";
+      packageName = "@istanbuljs/schema";
+      version = "0.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz";
+        sha512 = "ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==";
+      };
+    };
+    "@jest/console-27.5.1" = {
+      name = "_at_jest_slash_console";
+      packageName = "@jest/console";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz";
+        sha512 = "kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==";
+      };
+    };
+    "@jest/console-28.1.3" = {
+      name = "_at_jest_slash_console";
+      packageName = "@jest/console";
+      version = "28.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jest/console/-/console-28.1.3.tgz";
+        sha512 = "QPAkP5EwKdK/bxIr6C1I4Vs0rm2nHiANzj/Z5X2JQkrZo6IqvC4ldZ9K95tF0HdidhA8Bo6egxSzUFPYKcEXLw==";
+      };
+    };
+    "@jest/core-27.5.1" = {
+      name = "_at_jest_slash_core";
+      packageName = "@jest/core";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz";
+        sha512 = "AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==";
+      };
+    };
+    "@jest/environment-27.5.1" = {
+      name = "_at_jest_slash_environment";
+      packageName = "@jest/environment";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz";
+        sha512 = "/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==";
+      };
+    };
+    "@jest/fake-timers-27.5.1" = {
+      name = "_at_jest_slash_fake-timers";
+      packageName = "@jest/fake-timers";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz";
+        sha512 = "/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==";
+      };
+    };
+    "@jest/globals-27.5.1" = {
+      name = "_at_jest_slash_globals";
+      packageName = "@jest/globals";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz";
+        sha512 = "ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==";
+      };
+    };
+    "@jest/reporters-27.5.1" = {
+      name = "_at_jest_slash_reporters";
+      packageName = "@jest/reporters";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz";
+        sha512 = "cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==";
+      };
+    };
+    "@jest/schemas-28.1.3" = {
+      name = "_at_jest_slash_schemas";
+      packageName = "@jest/schemas";
+      version = "28.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jest/schemas/-/schemas-28.1.3.tgz";
+        sha512 = "/l/VWsdt/aBXgjshLWOFyFt3IVdYypu5y2Wn2rOO1un6nkqIn8SLXzgIMYXFyYsRWDyF5EthmKJMIdJvk08grg==";
+      };
+    };
+    "@jest/source-map-27.5.1" = {
+      name = "_at_jest_slash_source-map";
+      packageName = "@jest/source-map";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz";
+        sha512 = "y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==";
+      };
+    };
+    "@jest/test-result-27.5.1" = {
+      name = "_at_jest_slash_test-result";
+      packageName = "@jest/test-result";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz";
+        sha512 = "EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==";
+      };
+    };
+    "@jest/test-result-28.1.3" = {
+      name = "_at_jest_slash_test-result";
+      packageName = "@jest/test-result";
+      version = "28.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jest/test-result/-/test-result-28.1.3.tgz";
+        sha512 = "kZAkxnSE+FqE8YjW8gNuoVkkC9I7S1qmenl8sGcDOLropASP+BkcGKwhXoyqQuGOGeYY0y/ixjrd/iERpEXHNg==";
+      };
+    };
+    "@jest/test-sequencer-27.5.1" = {
+      name = "_at_jest_slash_test-sequencer";
+      packageName = "@jest/test-sequencer";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz";
+        sha512 = "LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==";
+      };
+    };
+    "@jest/transform-27.5.1" = {
+      name = "_at_jest_slash_transform";
+      packageName = "@jest/transform";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz";
+        sha512 = "ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==";
+      };
+    };
+    "@jest/types-27.5.1" = {
+      name = "_at_jest_slash_types";
+      packageName = "@jest/types";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz";
+        sha512 = "Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==";
+      };
+    };
+    "@jest/types-28.1.3" = {
+      name = "_at_jest_slash_types";
+      packageName = "@jest/types";
+      version = "28.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz";
+        sha512 = "RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==";
+      };
+    };
+    "@jridgewell/gen-mapping-0.1.1" = {
+      name = "_at_jridgewell_slash_gen-mapping";
+      packageName = "@jridgewell/gen-mapping";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz";
+        sha512 = "sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==";
+      };
+    };
+    "@jridgewell/gen-mapping-0.3.2" = {
+      name = "_at_jridgewell_slash_gen-mapping";
+      packageName = "@jridgewell/gen-mapping";
+      version = "0.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz";
+        sha512 = "mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==";
+      };
+    };
+    "@jridgewell/resolve-uri-3.1.0" = {
+      name = "_at_jridgewell_slash_resolve-uri";
+      packageName = "@jridgewell/resolve-uri";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz";
+        sha512 = "F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==";
+      };
+    };
+    "@jridgewell/set-array-1.1.2" = {
+      name = "_at_jridgewell_slash_set-array";
+      packageName = "@jridgewell/set-array";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz";
+        sha512 = "xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==";
+      };
+    };
+    "@jridgewell/source-map-0.3.2" = {
+      name = "_at_jridgewell_slash_source-map";
+      packageName = "@jridgewell/source-map";
+      version = "0.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz";
+        sha512 = "m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==";
+      };
+    };
+    "@jridgewell/sourcemap-codec-1.4.14" = {
+      name = "_at_jridgewell_slash_sourcemap-codec";
+      packageName = "@jridgewell/sourcemap-codec";
+      version = "1.4.14";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz";
+        sha512 = "XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==";
+      };
+    };
+    "@jridgewell/trace-mapping-0.3.15" = {
+      name = "_at_jridgewell_slash_trace-mapping";
+      packageName = "@jridgewell/trace-mapping";
+      version = "0.3.15";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz";
+        sha512 = "oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==";
+      };
+    };
+    "@leichtgewicht/ip-codec-2.0.4" = {
+      name = "_at_leichtgewicht_slash_ip-codec";
+      packageName = "@leichtgewicht/ip-codec";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz";
+        sha512 = "Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==";
+      };
+    };
+    "@mui/base-5.0.0-alpha.99" = {
+      name = "_at_mui_slash_base";
+      packageName = "@mui/base";
+      version = "5.0.0-alpha.99";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mui/base/-/base-5.0.0-alpha.99.tgz";
+        sha512 = "D04H6O1c0Jv561yI0SVbpa8MpqpW3G43CwJxV2o6ALfI0DMJ45w07dGafmDchb6aCWTRTdggd3rjgmuzyNwPiQ==";
+      };
+    };
+    "@mui/core-downloads-tracker-5.10.7" = {
+      name = "_at_mui_slash_core-downloads-tracker";
+      packageName = "@mui/core-downloads-tracker";
+      version = "5.10.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.10.7.tgz";
+        sha512 = "3N0UYVy3MbrHzM3j6f7fIUCZ+bQ1/sSZq143tLxwSssW3Z4AqE83brpr5flEY1Lx+Aowv/cPyQMmZxzRlFCGqw==";
+      };
+    };
+    "@mui/icons-material-5.10.6" = {
+      name = "_at_mui_slash_icons-material";
+      packageName = "@mui/icons-material";
+      version = "5.10.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.10.6.tgz";
+        sha512 = "QwxdRmLA46S94B0hExPDx0td+A2unF+33bQ6Cs+lNpJKVsm1YeHwNdYXYcnpWeHeQQ07055OXl7IB2GKDd0MfA==";
+      };
+    };
+    "@mui/material-5.10.7" = {
+      name = "_at_mui_slash_material";
+      packageName = "@mui/material";
+      version = "5.10.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mui/material/-/material-5.10.7.tgz";
+        sha512 = "o1jcQGii+q7ORrXhBiMmGzFDaboc1qTgOOC3zDW+NR9ryVzWzL7qEeqoORbgDB5zk9OBsXCjB91fUH/ls5xMwg==";
+      };
+    };
+    "@mui/private-theming-5.10.6" = {
+      name = "_at_mui_slash_private-theming";
+      packageName = "@mui/private-theming";
+      version = "5.10.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.10.6.tgz";
+        sha512 = "I/W0QyTLRdEx6py3lKAquKO/rNF/7j+nIOM/xCyI9kU0fcotVTcTY08mKMsS6vrzdWpi6pAkD0wP0KwWy5R5VA==";
+      };
+    };
+    "@mui/styled-engine-5.10.7" = {
+      name = "_at_mui_slash_styled-engine";
+      packageName = "@mui/styled-engine";
+      version = "5.10.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.10.7.tgz";
+        sha512 = "CCrtW+vvCKEm6pOE/QcutQ+ORC/iE6D1ghscN4l7LE2JXPvTXO/z0yu8Wxug1JEDlWm4r1Qa0PzJe1P9bjKzNA==";
+      };
+    };
+    "@mui/system-5.10.7" = {
+      name = "_at_mui_slash_system";
+      packageName = "@mui/system";
+      version = "5.10.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mui/system/-/system-5.10.7.tgz";
+        sha512 = "kwyhjjKGsgtBRFl6vSqidDZcNKU5S1juTgm4Xi2fyWxaEbIQb9Sh9y0iVP2bNCJzgDr0alLaENOZOEaDWHISAQ==";
+      };
+    };
+    "@mui/types-7.2.0" = {
+      name = "_at_mui_slash_types";
+      packageName = "@mui/types";
+      version = "7.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mui/types/-/types-7.2.0.tgz";
+        sha512 = "lGXtFKe5lp3UxTBGqKI1l7G8sE2xBik8qCfrLHD5olwP/YU0/ReWoWT7Lp1//ri32dK39oPMrJN8TgbkCSbsNA==";
+      };
+    };
+    "@mui/utils-5.10.6" = {
+      name = "_at_mui_slash_utils";
+      packageName = "@mui/utils";
+      version = "5.10.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mui/utils/-/utils-5.10.6.tgz";
+        sha512 = "g0Qs8xN/MW2M3fLL8197h5J2VB9U+49fLlnKKqC6zy/yus5cZwdT+Gwec+wUMxgwQoxMDn+J8oDWAn28kEOR/Q==";
+      };
+    };
+    "@nicolo-ribaudo/eslint-scope-5-internals-5.1.1-v1" = {
+      name = "_at_nicolo-ribaudo_slash_eslint-scope-5-internals";
+      packageName = "@nicolo-ribaudo/eslint-scope-5-internals";
+      version = "5.1.1-v1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz";
+        sha512 = "54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==";
+      };
+    };
+    "@nodelib/fs.scandir-2.1.5" = {
+      name = "_at_nodelib_slash_fs.scandir";
+      packageName = "@nodelib/fs.scandir";
+      version = "2.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz";
+        sha512 = "vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==";
+      };
+    };
+    "@nodelib/fs.stat-2.0.5" = {
+      name = "_at_nodelib_slash_fs.stat";
+      packageName = "@nodelib/fs.stat";
+      version = "2.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz";
+        sha512 = "RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==";
+      };
+    };
+    "@nodelib/fs.walk-1.2.8" = {
+      name = "_at_nodelib_slash_fs.walk";
+      packageName = "@nodelib/fs.walk";
+      version = "1.2.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz";
+        sha512 = "oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==";
+      };
+    };
+    "@pmmmwh/react-refresh-webpack-plugin-0.5.7" = {
+      name = "_at_pmmmwh_slash_react-refresh-webpack-plugin";
+      packageName = "@pmmmwh/react-refresh-webpack-plugin";
+      version = "0.5.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.7.tgz";
+        sha512 = "bcKCAzF0DV2IIROp9ZHkRJa6O4jy7NlnHdWL3GmcUxYWNjLXkK5kfELELwEfSP5hXPfVL/qOGMAROuMQb9GG8Q==";
+      };
+    };
+    "@popperjs/core-2.11.6" = {
+      name = "_at_popperjs_slash_core";
+      packageName = "@popperjs/core";
+      version = "2.11.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz";
+        sha512 = "50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==";
+      };
+    };
+    "@remix-run/router-1.0.1" = {
+      name = "_at_remix-run_slash_router";
+      packageName = "@remix-run/router";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@remix-run/router/-/router-1.0.1.tgz";
+        sha512 = "eBV5rvW4dRFOU1eajN7FmYxjAIVz/mRHgUE9En9mBn6m3mulK3WTR5C3iQhL9MZ14rWAq+xOlEaCkDiW0/heOg==";
+      };
+    };
+    "@rollup/plugin-babel-5.3.1" = {
+      name = "_at_rollup_slash_plugin-babel";
+      packageName = "@rollup/plugin-babel";
+      version = "5.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz";
+        sha512 = "WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==";
+      };
+    };
+    "@rollup/plugin-node-resolve-11.2.1" = {
+      name = "_at_rollup_slash_plugin-node-resolve";
+      packageName = "@rollup/plugin-node-resolve";
+      version = "11.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-11.2.1.tgz";
+        sha512 = "yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg==";
+      };
+    };
+    "@rollup/plugin-replace-2.4.2" = {
+      name = "_at_rollup_slash_plugin-replace";
+      packageName = "@rollup/plugin-replace";
+      version = "2.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-2.4.2.tgz";
+        sha512 = "IGcu+cydlUMZ5En85jxHH4qj2hta/11BHq95iHEyb2sbgiN0eCdzvUcHw5gt9pBL5lTi4JDYJ1acCoMGpTvEZg==";
+      };
+    };
+    "@rollup/pluginutils-3.1.0" = {
+      name = "_at_rollup_slash_pluginutils";
+      packageName = "@rollup/pluginutils";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz";
+        sha512 = "GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==";
+      };
+    };
+    "@rushstack/eslint-patch-1.2.0" = {
+      name = "_at_rushstack_slash_eslint-patch";
+      packageName = "@rushstack/eslint-patch";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.2.0.tgz";
+        sha512 = "sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg==";
+      };
+    };
+    "@sinclair/typebox-0.24.43" = {
+      name = "_at_sinclair_slash_typebox";
+      packageName = "@sinclair/typebox";
+      version = "0.24.43";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.43.tgz";
+        sha512 = "1orQTvtazZmsPeBroJjysvsOQCYV2yjWlebkSY38pl5vr2tdLjEJ+LoxITlGNZaH2RE19WlAwQMkH/7C14wLfw==";
+      };
+    };
+    "@sinonjs/commons-1.8.3" = {
+      name = "_at_sinonjs_slash_commons";
+      packageName = "@sinonjs/commons";
+      version = "1.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz";
+        sha512 = "xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==";
+      };
+    };
+    "@sinonjs/fake-timers-8.1.0" = {
+      name = "_at_sinonjs_slash_fake-timers";
+      packageName = "@sinonjs/fake-timers";
+      version = "8.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz";
+        sha512 = "OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==";
+      };
+    };
+    "@surma/rollup-plugin-off-main-thread-2.2.3" = {
+      name = "_at_surma_slash_rollup-plugin-off-main-thread";
+      packageName = "@surma/rollup-plugin-off-main-thread";
+      version = "2.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@surma/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-2.2.3.tgz";
+        sha512 = "lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ==";
+      };
+    };
+    "@svgr/babel-plugin-add-jsx-attribute-5.4.0" = {
+      name = "_at_svgr_slash_babel-plugin-add-jsx-attribute";
+      packageName = "@svgr/babel-plugin-add-jsx-attribute";
+      version = "5.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-5.4.0.tgz";
+        sha512 = "ZFf2gs/8/6B8PnSofI0inYXr2SDNTDScPXhN7k5EqD4aZ3gi6u+rbmZHVB8IM3wDyx8ntKACZbtXSm7oZGRqVg==";
+      };
+    };
+    "@svgr/babel-plugin-remove-jsx-attribute-5.4.0" = {
+      name = "_at_svgr_slash_babel-plugin-remove-jsx-attribute";
+      packageName = "@svgr/babel-plugin-remove-jsx-attribute";
+      version = "5.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-5.4.0.tgz";
+        sha512 = "yaS4o2PgUtwLFGTKbsiAy6D0o3ugcUhWK0Z45umJ66EPWunAz9fuFw2gJuje6wqQvQWOTJvIahUwndOXb7QCPg==";
+      };
+    };
+    "@svgr/babel-plugin-remove-jsx-empty-expression-5.0.1" = {
+      name = "_at_svgr_slash_babel-plugin-remove-jsx-empty-expression";
+      packageName = "@svgr/babel-plugin-remove-jsx-empty-expression";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-5.0.1.tgz";
+        sha512 = "LA72+88A11ND/yFIMzyuLRSMJ+tRKeYKeQ+mR3DcAZ5I4h5CPWN9AHyUzJbWSYp/u2u0xhmgOe0+E41+GjEueA==";
+      };
+    };
+    "@svgr/babel-plugin-replace-jsx-attribute-value-5.0.1" = {
+      name = "_at_svgr_slash_babel-plugin-replace-jsx-attribute-value";
+      packageName = "@svgr/babel-plugin-replace-jsx-attribute-value";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-5.0.1.tgz";
+        sha512 = "PoiE6ZD2Eiy5mK+fjHqwGOS+IXX0wq/YDtNyIgOrc6ejFnxN4b13pRpiIPbtPwHEc+NT2KCjteAcq33/F1Y9KQ==";
+      };
+    };
+    "@svgr/babel-plugin-svg-dynamic-title-5.4.0" = {
+      name = "_at_svgr_slash_babel-plugin-svg-dynamic-title";
+      packageName = "@svgr/babel-plugin-svg-dynamic-title";
+      version = "5.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-5.4.0.tgz";
+        sha512 = "zSOZH8PdZOpuG1ZVx/cLVePB2ibo3WPpqo7gFIjLV9a0QsuQAzJiwwqmuEdTaW2pegyBE17Uu15mOgOcgabQZg==";
+      };
+    };
+    "@svgr/babel-plugin-svg-em-dimensions-5.4.0" = {
+      name = "_at_svgr_slash_babel-plugin-svg-em-dimensions";
+      packageName = "@svgr/babel-plugin-svg-em-dimensions";
+      version = "5.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-5.4.0.tgz";
+        sha512 = "cPzDbDA5oT/sPXDCUYoVXEmm3VIoAWAPT6mSPTJNbQaBNUuEKVKyGH93oDY4e42PYHRW67N5alJx/eEol20abw==";
+      };
+    };
+    "@svgr/babel-plugin-transform-react-native-svg-5.4.0" = {
+      name = "_at_svgr_slash_babel-plugin-transform-react-native-svg";
+      packageName = "@svgr/babel-plugin-transform-react-native-svg";
+      version = "5.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-5.4.0.tgz";
+        sha512 = "3eYP/SaopZ41GHwXma7Rmxcv9uRslRDTY1estspeB1w1ueZWd/tPlMfEOoccYpEMZU3jD4OU7YitnXcF5hLW2Q==";
+      };
+    };
+    "@svgr/babel-plugin-transform-svg-component-5.5.0" = {
+      name = "_at_svgr_slash_babel-plugin-transform-svg-component";
+      packageName = "@svgr/babel-plugin-transform-svg-component";
+      version = "5.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-5.5.0.tgz";
+        sha512 = "q4jSH1UUvbrsOtlo/tKcgSeiCHRSBdXoIoqX1pgcKK/aU3JD27wmMKwGtpB8qRYUYoyXvfGxUVKchLuR5pB3rQ==";
+      };
+    };
+    "@svgr/babel-preset-5.5.0" = {
+      name = "_at_svgr_slash_babel-preset";
+      packageName = "@svgr/babel-preset";
+      version = "5.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-5.5.0.tgz";
+        sha512 = "4FiXBjvQ+z2j7yASeGPEi8VD/5rrGQk4Xrq3EdJmoZgz/tpqChpo5hgXDvmEauwtvOc52q8ghhZK4Oy7qph4ig==";
+      };
+    };
+    "@svgr/core-5.5.0" = {
+      name = "_at_svgr_slash_core";
+      packageName = "@svgr/core";
+      version = "5.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@svgr/core/-/core-5.5.0.tgz";
+        sha512 = "q52VOcsJPvV3jO1wkPtzTuKlvX7Y3xIcWRpCMtBF3MrteZJtBfQw/+u0B1BHy5ColpQc1/YVTrPEtSYIMNZlrQ==";
+      };
+    };
+    "@svgr/hast-util-to-babel-ast-5.5.0" = {
+      name = "_at_svgr_slash_hast-util-to-babel-ast";
+      packageName = "@svgr/hast-util-to-babel-ast";
+      version = "5.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-5.5.0.tgz";
+        sha512 = "cAaR/CAiZRB8GP32N+1jocovUtvlj0+e65TB50/6Lcime+EA49m/8l+P2ko+XPJ4dw3xaPS3jOL4F2X4KWxoeQ==";
+      };
+    };
+    "@svgr/plugin-jsx-5.5.0" = {
+      name = "_at_svgr_slash_plugin-jsx";
+      packageName = "@svgr/plugin-jsx";
+      version = "5.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-5.5.0.tgz";
+        sha512 = "V/wVh33j12hGh05IDg8GpIUXbjAPnTdPTKuP4VNLggnwaHMPNQNae2pRnyTAILWCQdz5GyMqtO488g7CKM8CBA==";
+      };
+    };
+    "@svgr/plugin-svgo-5.5.0" = {
+      name = "_at_svgr_slash_plugin-svgo";
+      packageName = "@svgr/plugin-svgo";
+      version = "5.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-5.5.0.tgz";
+        sha512 = "r5swKk46GuQl4RrVejVwpeeJaydoxkdwkM1mBKOgJLBUJPGaLci6ylg/IjhrRsREKDkr4kbMWdgOtbXEh0fyLQ==";
+      };
+    };
+    "@svgr/webpack-5.5.0" = {
+      name = "_at_svgr_slash_webpack";
+      packageName = "@svgr/webpack";
+      version = "5.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@svgr/webpack/-/webpack-5.5.0.tgz";
+        sha512 = "DOBOK255wfQxguUta2INKkzPj6AIS6iafZYiYmHn6W3pHlycSRRlvWKCfLDG10fXfLWqE3DJHgRUOyJYmARa7g==";
+      };
+    };
+    "@tootallnate/once-1.1.2" = {
+      name = "_at_tootallnate_slash_once";
+      packageName = "@tootallnate/once";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz";
+        sha512 = "RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==";
+      };
+    };
+    "@trysound/sax-0.2.0" = {
+      name = "_at_trysound_slash_sax";
+      packageName = "@trysound/sax";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz";
+        sha512 = "L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==";
+      };
+    };
+    "@types/babel__core-7.1.19" = {
+      name = "_at_types_slash_babel__core";
+      packageName = "@types/babel__core";
+      version = "7.1.19";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.19.tgz";
+        sha512 = "WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==";
+      };
+    };
+    "@types/babel__generator-7.6.4" = {
+      name = "_at_types_slash_babel__generator";
+      packageName = "@types/babel__generator";
+      version = "7.6.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz";
+        sha512 = "tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==";
+      };
+    };
+    "@types/babel__template-7.4.1" = {
+      name = "_at_types_slash_babel__template";
+      packageName = "@types/babel__template";
+      version = "7.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz";
+        sha512 = "azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==";
+      };
+    };
+    "@types/babel__traverse-7.18.2" = {
+      name = "_at_types_slash_babel__traverse";
+      packageName = "@types/babel__traverse";
+      version = "7.18.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.2.tgz";
+        sha512 = "FcFaxOr2V5KZCviw1TnutEMVUVsGt4D2hP1TAfXZAMKuHYW3xQhe3jTxNPWutgCJ3/X1c5yX8ZoGVEItxKbwBg==";
+      };
+    };
+    "@types/body-parser-1.19.2" = {
+      name = "_at_types_slash_body-parser";
+      packageName = "@types/body-parser";
+      version = "1.19.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz";
+        sha512 = "ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==";
+      };
+    };
+    "@types/bonjour-3.5.10" = {
+      name = "_at_types_slash_bonjour";
+      packageName = "@types/bonjour";
+      version = "3.5.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz";
+        sha512 = "p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==";
+      };
+    };
+    "@types/connect-3.4.35" = {
+      name = "_at_types_slash_connect";
+      packageName = "@types/connect";
+      version = "3.4.35";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz";
+        sha512 = "cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==";
+      };
+    };
+    "@types/connect-history-api-fallback-1.3.5" = {
+      name = "_at_types_slash_connect-history-api-fallback";
+      packageName = "@types/connect-history-api-fallback";
+      version = "1.3.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz";
+        sha512 = "h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==";
+      };
+    };
+    "@types/eslint-8.4.6" = {
+      name = "_at_types_slash_eslint";
+      packageName = "@types/eslint";
+      version = "8.4.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.6.tgz";
+        sha512 = "/fqTbjxyFUaYNO7VcW5g+4npmqVACz1bB7RTHYuLj+PRjw9hrCwrUXVQFpChUS0JsyEFvMZ7U/PfmvWgxJhI9g==";
+      };
+    };
+    "@types/eslint-scope-3.7.4" = {
+      name = "_at_types_slash_eslint-scope";
+      packageName = "@types/eslint-scope";
+      version = "3.7.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz";
+        sha512 = "9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==";
+      };
+    };
+    "@types/estree-0.0.39" = {
+      name = "_at_types_slash_estree";
+      packageName = "@types/estree";
+      version = "0.0.39";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz";
+        sha512 = "EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==";
+      };
+    };
+    "@types/estree-0.0.51" = {
+      name = "_at_types_slash_estree";
+      packageName = "@types/estree";
+      version = "0.0.51";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz";
+        sha512 = "CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==";
+      };
+    };
+    "@types/estree-1.0.0" = {
+      name = "_at_types_slash_estree";
+      packageName = "@types/estree";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/estree/-/estree-1.0.0.tgz";
+        sha512 = "WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==";
+      };
+    };
+    "@types/express-4.17.14" = {
+      name = "_at_types_slash_express";
+      packageName = "@types/express";
+      version = "4.17.14";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/express/-/express-4.17.14.tgz";
+        sha512 = "TEbt+vaPFQ+xpxFLFssxUDXj5cWCxZJjIcB7Yg0k0GMHGtgtQgpvx/MUQUeAkNbA9AAGrwkAsoeItdTgS7FMyg==";
+      };
+    };
+    "@types/express-serve-static-core-4.17.31" = {
+      name = "_at_types_slash_express-serve-static-core";
+      packageName = "@types/express-serve-static-core";
+      version = "4.17.31";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.31.tgz";
+        sha512 = "DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q==";
+      };
+    };
+    "@types/graceful-fs-4.1.5" = {
+      name = "_at_types_slash_graceful-fs";
+      packageName = "@types/graceful-fs";
+      version = "4.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz";
+        sha512 = "anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==";
+      };
+    };
+    "@types/html-minifier-terser-6.1.0" = {
+      name = "_at_types_slash_html-minifier-terser";
+      packageName = "@types/html-minifier-terser";
+      version = "6.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz";
+        sha512 = "oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==";
+      };
+    };
+    "@types/http-proxy-1.17.9" = {
+      name = "_at_types_slash_http-proxy";
+      packageName = "@types/http-proxy";
+      version = "1.17.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.9.tgz";
+        sha512 = "QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw==";
+      };
+    };
+    "@types/istanbul-lib-coverage-2.0.4" = {
+      name = "_at_types_slash_istanbul-lib-coverage";
+      packageName = "@types/istanbul-lib-coverage";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz";
+        sha512 = "z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==";
+      };
+    };
+    "@types/istanbul-lib-report-3.0.0" = {
+      name = "_at_types_slash_istanbul-lib-report";
+      packageName = "@types/istanbul-lib-report";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz";
+        sha512 = "plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==";
+      };
+    };
+    "@types/istanbul-reports-3.0.1" = {
+      name = "_at_types_slash_istanbul-reports";
+      packageName = "@types/istanbul-reports";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz";
+        sha512 = "c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==";
+      };
+    };
+    "@types/json-schema-7.0.11" = {
+      name = "_at_types_slash_json-schema";
+      packageName = "@types/json-schema";
+      version = "7.0.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz";
+        sha512 = "wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==";
+      };
+    };
+    "@types/json5-0.0.29" = {
+      name = "_at_types_slash_json5";
+      packageName = "@types/json5";
+      version = "0.0.29";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz";
+        sha512 = "dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==";
+      };
+    };
+    "@types/mime-3.0.1" = {
+      name = "_at_types_slash_mime";
+      packageName = "@types/mime";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz";
+        sha512 = "Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==";
+      };
+    };
+    "@types/node-18.7.23" = {
+      name = "_at_types_slash_node";
+      packageName = "@types/node";
+      version = "18.7.23";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/node/-/node-18.7.23.tgz";
+        sha512 = "DWNcCHolDq0ZKGizjx2DZjR/PqsYwAcYUJmfMWqtVU2MBMG5Mo+xFZrhGId5r/O5HOuMPyQEcM6KUBp5lBZZBg==";
+      };
+    };
+    "@types/parse-json-4.0.0" = {
+      name = "_at_types_slash_parse-json";
+      packageName = "@types/parse-json";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz";
+        sha512 = "//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==";
+      };
+    };
+    "@types/prettier-2.7.1" = {
+      name = "_at_types_slash_prettier";
+      packageName = "@types/prettier";
+      version = "2.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.1.tgz";
+        sha512 = "ri0UmynRRvZiiUJdiz38MmIblKK+oH30MztdBVR95dv/Ubw6neWSb8u1XpRb72L4qsZOhz+L+z9JD40SJmfWow==";
+      };
+    };
+    "@types/prop-types-15.7.5" = {
+      name = "_at_types_slash_prop-types";
+      packageName = "@types/prop-types";
+      version = "15.7.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz";
+        sha512 = "JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==";
+      };
+    };
+    "@types/q-1.5.5" = {
+      name = "_at_types_slash_q";
+      packageName = "@types/q";
+      version = "1.5.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/q/-/q-1.5.5.tgz";
+        sha512 = "L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ==";
+      };
+    };
+    "@types/qs-6.9.7" = {
+      name = "_at_types_slash_qs";
+      packageName = "@types/qs";
+      version = "6.9.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz";
+        sha512 = "FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==";
+      };
+    };
+    "@types/range-parser-1.2.4" = {
+      name = "_at_types_slash_range-parser";
+      packageName = "@types/range-parser";
+      version = "1.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz";
+        sha512 = "EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==";
+      };
+    };
+    "@types/react-18.0.21" = {
+      name = "_at_types_slash_react";
+      packageName = "@types/react";
+      version = "18.0.21";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/react/-/react-18.0.21.tgz";
+        sha512 = "7QUCOxvFgnD5Jk8ZKlUAhVcRj7GuJRjnjjiY/IUBWKgOlnvDvTMLD4RTF7NPyVmbRhNrbomZiOepg7M/2Kj1mA==";
+      };
+    };
+    "@types/react-is-17.0.3" = {
+      name = "_at_types_slash_react-is";
+      packageName = "@types/react-is";
+      version = "17.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/react-is/-/react-is-17.0.3.tgz";
+        sha512 = "aBTIWg1emtu95bLTLx0cpkxwGW3ueZv71nE2YFBpL8k/z5czEW8yYpOo8Dp+UUAFAtKwNaOsh/ioSeQnWlZcfw==";
+      };
+    };
+    "@types/react-transition-group-4.4.5" = {
+      name = "_at_types_slash_react-transition-group";
+      packageName = "@types/react-transition-group";
+      version = "4.4.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.5.tgz";
+        sha512 = "juKD/eiSM3/xZYzjuzH6ZwpP+/lejltmiS3QEzV/vmb/Q8+HfDmxu+Baga8UEMGBqV88Nbg4l2hY/K2DkyaLLA==";
+      };
+    };
+    "@types/resolve-1.17.1" = {
+      name = "_at_types_slash_resolve";
+      packageName = "@types/resolve";
+      version = "1.17.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz";
+        sha512 = "yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==";
+      };
+    };
+    "@types/retry-0.12.0" = {
+      name = "_at_types_slash_retry";
+      packageName = "@types/retry";
+      version = "0.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz";
+        sha512 = "wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==";
+      };
+    };
+    "@types/scheduler-0.16.2" = {
+      name = "_at_types_slash_scheduler";
+      packageName = "@types/scheduler";
+      version = "0.16.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz";
+        sha512 = "hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==";
+      };
+    };
+    "@types/serve-index-1.9.1" = {
+      name = "_at_types_slash_serve-index";
+      packageName = "@types/serve-index";
+      version = "1.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz";
+        sha512 = "d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==";
+      };
+    };
+    "@types/serve-static-1.15.0" = {
+      name = "_at_types_slash_serve-static";
+      packageName = "@types/serve-static";
+      version = "1.15.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz";
+        sha512 = "z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==";
+      };
+    };
+    "@types/sockjs-0.3.33" = {
+      name = "_at_types_slash_sockjs";
+      packageName = "@types/sockjs";
+      version = "0.3.33";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz";
+        sha512 = "f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==";
+      };
+    };
+    "@types/stack-utils-2.0.1" = {
+      name = "_at_types_slash_stack-utils";
+      packageName = "@types/stack-utils";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz";
+        sha512 = "Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==";
+      };
+    };
+    "@types/trusted-types-2.0.2" = {
+      name = "_at_types_slash_trusted-types";
+      packageName = "@types/trusted-types";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.2.tgz";
+        sha512 = "F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg==";
+      };
+    };
+    "@types/ws-8.5.3" = {
+      name = "_at_types_slash_ws";
+      packageName = "@types/ws";
+      version = "8.5.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz";
+        sha512 = "6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==";
+      };
+    };
+    "@types/yargs-16.0.4" = {
+      name = "_at_types_slash_yargs";
+      packageName = "@types/yargs";
+      version = "16.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.4.tgz";
+        sha512 = "T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==";
+      };
+    };
+    "@types/yargs-17.0.13" = {
+      name = "_at_types_slash_yargs";
+      packageName = "@types/yargs";
+      version = "17.0.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.13.tgz";
+        sha512 = "9sWaruZk2JGxIQU+IhI1fhPYRcQ0UuTNuKuCW9bR5fp7qi2Llf7WDzNa17Cy7TKnh3cdxDOiyTu6gaLS0eDatg==";
+      };
+    };
+    "@types/yargs-parser-21.0.0" = {
+      name = "_at_types_slash_yargs-parser";
+      packageName = "@types/yargs-parser";
+      version = "21.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz";
+        sha512 = "iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==";
+      };
+    };
+    "@typescript-eslint/eslint-plugin-5.38.1" = {
+      name = "_at_typescript-eslint_slash_eslint-plugin";
+      packageName = "@typescript-eslint/eslint-plugin";
+      version = "5.38.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.38.1.tgz";
+        sha512 = "ky7EFzPhqz3XlhS7vPOoMDaQnQMn+9o5ICR9CPr/6bw8HrFkzhMSxuA3gRfiJVvs7geYrSeawGJjZoZQKCOglQ==";
+      };
+    };
+    "@typescript-eslint/experimental-utils-5.38.1" = {
+      name = "_at_typescript-eslint_slash_experimental-utils";
+      packageName = "@typescript-eslint/experimental-utils";
+      version = "5.38.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.38.1.tgz";
+        sha512 = "Zv0EcU0iu64DiVG3pRZU0QYCgANO//U1fS3oEs3eqHD1eIVVcQsFd/T01ckaNbL2H2aCqRojY2xZuMAPcOArEA==";
+      };
+    };
+    "@typescript-eslint/parser-5.38.1" = {
+      name = "_at_typescript-eslint_slash_parser";
+      packageName = "@typescript-eslint/parser";
+      version = "5.38.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.38.1.tgz";
+        sha512 = "LDqxZBVFFQnQRz9rUZJhLmox+Ep5kdUmLatLQnCRR6523YV+XhRjfYzStQ4MheFA8kMAfUlclHSbu+RKdRwQKw==";
+      };
+    };
+    "@typescript-eslint/scope-manager-5.38.1" = {
+      name = "_at_typescript-eslint_slash_scope-manager";
+      packageName = "@typescript-eslint/scope-manager";
+      version = "5.38.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.38.1.tgz";
+        sha512 = "BfRDq5RidVU3RbqApKmS7RFMtkyWMM50qWnDAkKgQiezRtLKsoyRKIvz1Ok5ilRWeD9IuHvaidaLxvGx/2eqTQ==";
+      };
+    };
+    "@typescript-eslint/type-utils-5.38.1" = {
+      name = "_at_typescript-eslint_slash_type-utils";
+      packageName = "@typescript-eslint/type-utils";
+      version = "5.38.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.38.1.tgz";
+        sha512 = "UU3j43TM66gYtzo15ivK2ZFoDFKKP0k03MItzLdq0zV92CeGCXRfXlfQX5ILdd4/DSpHkSjIgLLLh1NtkOJOAw==";
+      };
+    };
+    "@typescript-eslint/types-5.38.1" = {
+      name = "_at_typescript-eslint_slash_types";
+      packageName = "@typescript-eslint/types";
+      version = "5.38.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.38.1.tgz";
+        sha512 = "QTW1iHq1Tffp9lNfbfPm4WJabbvpyaehQ0SrvVK2yfV79SytD9XDVxqiPvdrv2LK7DGSFo91TB2FgWanbJAZXg==";
+      };
+    };
+    "@typescript-eslint/typescript-estree-5.38.1" = {
+      name = "_at_typescript-eslint_slash_typescript-estree";
+      packageName = "@typescript-eslint/typescript-estree";
+      version = "5.38.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.38.1.tgz";
+        sha512 = "99b5e/Enoe8fKMLdSuwrfH/C0EIbpUWmeEKHmQlGZb8msY33qn1KlkFww0z26o5Omx7EVjzVDCWEfrfCDHfE7g==";
+      };
+    };
+    "@typescript-eslint/utils-5.38.1" = {
+      name = "_at_typescript-eslint_slash_utils";
+      packageName = "@typescript-eslint/utils";
+      version = "5.38.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.38.1.tgz";
+        sha512 = "oIuUiVxPBsndrN81oP8tXnFa/+EcZ03qLqPDfSZ5xIJVm7A9V0rlkQwwBOAGtrdN70ZKDlKv+l1BeT4eSFxwXA==";
+      };
+    };
+    "@typescript-eslint/visitor-keys-5.38.1" = {
+      name = "_at_typescript-eslint_slash_visitor-keys";
+      packageName = "@typescript-eslint/visitor-keys";
+      version = "5.38.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.38.1.tgz";
+        sha512 = "bSHr1rRxXt54+j2n4k54p4fj8AHJ49VDWtjpImOpzQj4qjAiOpPni+V1Tyajh19Api1i844F757cur8wH3YvOA==";
+      };
+    };
+    "@webassemblyjs/ast-1.11.1" = {
+      name = "_at_webassemblyjs_slash_ast";
+      packageName = "@webassemblyjs/ast";
+      version = "1.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz";
+        sha512 = "ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==";
+      };
+    };
+    "@webassemblyjs/floating-point-hex-parser-1.11.1" = {
+      name = "_at_webassemblyjs_slash_floating-point-hex-parser";
+      packageName = "@webassemblyjs/floating-point-hex-parser";
+      version = "1.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz";
+        sha512 = "iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==";
+      };
+    };
+    "@webassemblyjs/helper-api-error-1.11.1" = {
+      name = "_at_webassemblyjs_slash_helper-api-error";
+      packageName = "@webassemblyjs/helper-api-error";
+      version = "1.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz";
+        sha512 = "RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==";
+      };
+    };
+    "@webassemblyjs/helper-buffer-1.11.1" = {
+      name = "_at_webassemblyjs_slash_helper-buffer";
+      packageName = "@webassemblyjs/helper-buffer";
+      version = "1.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz";
+        sha512 = "gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==";
+      };
+    };
+    "@webassemblyjs/helper-numbers-1.11.1" = {
+      name = "_at_webassemblyjs_slash_helper-numbers";
+      packageName = "@webassemblyjs/helper-numbers";
+      version = "1.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz";
+        sha512 = "vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==";
+      };
+    };
+    "@webassemblyjs/helper-wasm-bytecode-1.11.1" = {
+      name = "_at_webassemblyjs_slash_helper-wasm-bytecode";
+      packageName = "@webassemblyjs/helper-wasm-bytecode";
+      version = "1.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz";
+        sha512 = "PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==";
+      };
+    };
+    "@webassemblyjs/helper-wasm-section-1.11.1" = {
+      name = "_at_webassemblyjs_slash_helper-wasm-section";
+      packageName = "@webassemblyjs/helper-wasm-section";
+      version = "1.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz";
+        sha512 = "10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==";
+      };
+    };
+    "@webassemblyjs/ieee754-1.11.1" = {
+      name = "_at_webassemblyjs_slash_ieee754";
+      packageName = "@webassemblyjs/ieee754";
+      version = "1.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz";
+        sha512 = "hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==";
+      };
+    };
+    "@webassemblyjs/leb128-1.11.1" = {
+      name = "_at_webassemblyjs_slash_leb128";
+      packageName = "@webassemblyjs/leb128";
+      version = "1.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz";
+        sha512 = "BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==";
+      };
+    };
+    "@webassemblyjs/utf8-1.11.1" = {
+      name = "_at_webassemblyjs_slash_utf8";
+      packageName = "@webassemblyjs/utf8";
+      version = "1.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz";
+        sha512 = "9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==";
+      };
+    };
+    "@webassemblyjs/wasm-edit-1.11.1" = {
+      name = "_at_webassemblyjs_slash_wasm-edit";
+      packageName = "@webassemblyjs/wasm-edit";
+      version = "1.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz";
+        sha512 = "g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==";
+      };
+    };
+    "@webassemblyjs/wasm-gen-1.11.1" = {
+      name = "_at_webassemblyjs_slash_wasm-gen";
+      packageName = "@webassemblyjs/wasm-gen";
+      version = "1.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz";
+        sha512 = "F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==";
+      };
+    };
+    "@webassemblyjs/wasm-opt-1.11.1" = {
+      name = "_at_webassemblyjs_slash_wasm-opt";
+      packageName = "@webassemblyjs/wasm-opt";
+      version = "1.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz";
+        sha512 = "VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==";
+      };
+    };
+    "@webassemblyjs/wasm-parser-1.11.1" = {
+      name = "_at_webassemblyjs_slash_wasm-parser";
+      packageName = "@webassemblyjs/wasm-parser";
+      version = "1.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz";
+        sha512 = "rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==";
+      };
+    };
+    "@webassemblyjs/wast-printer-1.11.1" = {
+      name = "_at_webassemblyjs_slash_wast-printer";
+      packageName = "@webassemblyjs/wast-printer";
+      version = "1.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz";
+        sha512 = "IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==";
+      };
+    };
+    "@xtuc/ieee754-1.2.0" = {
+      name = "_at_xtuc_slash_ieee754";
+      packageName = "@xtuc/ieee754";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz";
+        sha512 = "DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==";
+      };
+    };
+    "@xtuc/long-4.2.2" = {
+      name = "_at_xtuc_slash_long";
+      packageName = "@xtuc/long";
+      version = "4.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz";
+        sha512 = "NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==";
+      };
+    };
+    "abab-2.0.6" = {
+      name = "abab";
+      packageName = "abab";
+      version = "2.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz";
+        sha512 = "j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==";
+      };
+    };
+    "accepts-1.3.8" = {
+      name = "accepts";
+      packageName = "accepts";
+      version = "1.3.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz";
+        sha512 = "PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==";
+      };
+    };
+    "acorn-7.4.1" = {
+      name = "acorn";
+      packageName = "acorn";
+      version = "7.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz";
+        sha512 = "nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==";
+      };
+    };
+    "acorn-8.8.0" = {
+      name = "acorn";
+      packageName = "acorn";
+      version = "8.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz";
+        sha512 = "QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==";
+      };
+    };
+    "acorn-globals-6.0.0" = {
+      name = "acorn-globals";
+      packageName = "acorn-globals";
+      version = "6.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz";
+        sha512 = "ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==";
+      };
+    };
+    "acorn-import-assertions-1.8.0" = {
+      name = "acorn-import-assertions";
+      packageName = "acorn-import-assertions";
+      version = "1.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz";
+        sha512 = "m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==";
+      };
+    };
+    "acorn-jsx-5.3.2" = {
+      name = "acorn-jsx";
+      packageName = "acorn-jsx";
+      version = "5.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz";
+        sha512 = "rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==";
+      };
+    };
+    "acorn-node-1.8.2" = {
+      name = "acorn-node";
+      packageName = "acorn-node";
+      version = "1.8.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz";
+        sha512 = "8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==";
+      };
+    };
+    "acorn-walk-7.2.0" = {
+      name = "acorn-walk";
+      packageName = "acorn-walk";
+      version = "7.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz";
+        sha512 = "OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==";
+      };
+    };
+    "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==";
+      };
+    };
+    "adjust-sourcemap-loader-4.0.0" = {
+      name = "adjust-sourcemap-loader";
+      packageName = "adjust-sourcemap-loader";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz";
+        sha512 = "OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==";
+      };
+    };
+    "agent-base-6.0.2" = {
+      name = "agent-base";
+      packageName = "agent-base";
+      version = "6.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz";
+        sha512 = "RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==";
+      };
+    };
+    "ajv-6.12.6" = {
+      name = "ajv";
+      packageName = "ajv";
+      version = "6.12.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz";
+        sha512 = "j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==";
+      };
+    };
+    "ajv-8.11.0" = {
+      name = "ajv";
+      packageName = "ajv";
+      version = "8.11.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz";
+        sha512 = "wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==";
+      };
+    };
+    "ajv-formats-2.1.1" = {
+      name = "ajv-formats";
+      packageName = "ajv-formats";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz";
+        sha512 = "Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==";
+      };
+    };
+    "ajv-keywords-3.5.2" = {
+      name = "ajv-keywords";
+      packageName = "ajv-keywords";
+      version = "3.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz";
+        sha512 = "5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==";
+      };
+    };
+    "ajv-keywords-5.1.0" = {
+      name = "ajv-keywords";
+      packageName = "ajv-keywords";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz";
+        sha512 = "YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==";
+      };
+    };
+    "ansi-escapes-4.3.2" = {
+      name = "ansi-escapes";
+      packageName = "ansi-escapes";
+      version = "4.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz";
+        sha512 = "gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==";
+      };
+    };
+    "ansi-html-community-0.0.8" = {
+      name = "ansi-html-community";
+      packageName = "ansi-html-community";
+      version = "0.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz";
+        sha512 = "1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==";
+      };
+    };
+    "ansi-regex-5.0.1" = {
+      name = "ansi-regex";
+      packageName = "ansi-regex";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz";
+        sha512 = "quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==";
+      };
+    };
+    "ansi-regex-6.0.1" = {
+      name = "ansi-regex";
+      packageName = "ansi-regex";
+      version = "6.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz";
+        sha512 = "n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==";
+      };
+    };
+    "ansi-styles-3.2.1" = {
+      name = "ansi-styles";
+      packageName = "ansi-styles";
+      version = "3.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz";
+        sha512 = "VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==";
+      };
+    };
+    "ansi-styles-4.3.0" = {
+      name = "ansi-styles";
+      packageName = "ansi-styles";
+      version = "4.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz";
+        sha512 = "zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==";
+      };
+    };
+    "ansi-styles-5.2.0" = {
+      name = "ansi-styles";
+      packageName = "ansi-styles";
+      version = "5.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz";
+        sha512 = "Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==";
+      };
+    };
+    "anymatch-3.1.2" = {
+      name = "anymatch";
+      packageName = "anymatch";
+      version = "3.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz";
+        sha512 = "P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==";
+      };
+    };
+    "arg-5.0.2" = {
+      name = "arg";
+      packageName = "arg";
+      version = "5.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz";
+        sha512 = "PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==";
+      };
+    };
+    "argparse-1.0.10" = {
+      name = "argparse";
+      packageName = "argparse";
+      version = "1.0.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz";
+        sha512 = "o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==";
+      };
+    };
+    "argparse-2.0.1" = {
+      name = "argparse";
+      packageName = "argparse";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz";
+        sha512 = "8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==";
+      };
+    };
+    "aria-query-4.2.2" = {
+      name = "aria-query";
+      packageName = "aria-query";
+      version = "4.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz";
+        sha512 = "o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==";
+      };
+    };
+    "array-flatten-1.1.1" = {
+      name = "array-flatten";
+      packageName = "array-flatten";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz";
+        sha512 = "PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==";
+      };
+    };
+    "array-flatten-2.1.2" = {
+      name = "array-flatten";
+      packageName = "array-flatten";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz";
+        sha512 = "hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==";
+      };
+    };
+    "array-includes-3.1.5" = {
+      name = "array-includes";
+      packageName = "array-includes";
+      version = "3.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-includes/-/array-includes-3.1.5.tgz";
+        sha512 = "iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ==";
+      };
+    };
+    "array-union-2.1.0" = {
+      name = "array-union";
+      packageName = "array-union";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz";
+        sha512 = "HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==";
+      };
+    };
+    "array.prototype.flat-1.3.0" = {
+      name = "array.prototype.flat";
+      packageName = "array.prototype.flat";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.0.tgz";
+        sha512 = "12IUEkHsAhA4DY5s0FPgNXIdc8VRSqD9Zp78a5au9abH/SOBrsp082JOWFNTjkMozh8mqcdiKuaLGhPeYztxSw==";
+      };
+    };
+    "array.prototype.flatmap-1.3.0" = {
+      name = "array.prototype.flatmap";
+      packageName = "array.prototype.flatmap";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.0.tgz";
+        sha512 = "PZC9/8TKAIxcWKdyeb77EzULHPrIX/tIZebLJUQOMR1OwYosT8yggdfWScfTBCDj5utONvOuPQQumYsU2ULbkg==";
+      };
+    };
+    "array.prototype.reduce-1.0.4" = {
+      name = "array.prototype.reduce";
+      packageName = "array.prototype.reduce";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.4.tgz";
+        sha512 = "WnM+AjG/DvLRLo4DDl+r+SvCzYtD2Jd9oeBYMcEaI7t3fFrHY9M53/wdLcTvmZNQ70IU6Htj0emFkZ5TS+lrdw==";
+      };
+    };
+    "asap-2.0.6" = {
+      name = "asap";
+      packageName = "asap";
+      version = "2.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz";
+        sha512 = "BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==";
+      };
+    };
+    "ast-types-flow-0.0.7" = {
+      name = "ast-types-flow";
+      packageName = "ast-types-flow";
+      version = "0.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz";
+        sha512 = "eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==";
+      };
+    };
+    "async-3.2.4" = {
+      name = "async";
+      packageName = "async";
+      version = "3.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/async/-/async-3.2.4.tgz";
+        sha512 = "iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==";
+      };
+    };
+    "asynckit-0.4.0" = {
+      name = "asynckit";
+      packageName = "asynckit";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz";
+        sha512 = "Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==";
+      };
+    };
+    "at-least-node-1.0.0" = {
+      name = "at-least-node";
+      packageName = "at-least-node";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz";
+        sha512 = "+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==";
+      };
+    };
+    "autoprefixer-10.4.12" = {
+      name = "autoprefixer";
+      packageName = "autoprefixer";
+      version = "10.4.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.12.tgz";
+        sha512 = "WrCGV9/b97Pa+jtwf5UGaRjgQIg7OK3D06GnoYoZNcG1Xb8Gt3EfuKjlhh9i/VtT16g6PYjZ69jdJ2g8FxSC4Q==";
+      };
+    };
+    "axe-core-4.4.3" = {
+      name = "axe-core";
+      packageName = "axe-core";
+      version = "4.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/axe-core/-/axe-core-4.4.3.tgz";
+        sha512 = "32+ub6kkdhhWick/UjvEwRchgoetXqTK14INLqbGm5U2TzBkBNF3nQtLYm8ovxSkQWArjEQvftCKryjZaATu3w==";
+      };
+    };
+    "axobject-query-2.2.0" = {
+      name = "axobject-query";
+      packageName = "axobject-query";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz";
+        sha512 = "Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==";
+      };
+    };
+    "babel-jest-27.5.1" = {
+      name = "babel-jest";
+      packageName = "babel-jest";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz";
+        sha512 = "cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==";
+      };
+    };
+    "babel-loader-8.2.5" = {
+      name = "babel-loader";
+      packageName = "babel-loader";
+      version = "8.2.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz";
+        sha512 = "OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==";
+      };
+    };
+    "babel-plugin-dynamic-import-node-2.3.3" = {
+      name = "babel-plugin-dynamic-import-node";
+      packageName = "babel-plugin-dynamic-import-node";
+      version = "2.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz";
+        sha512 = "jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==";
+      };
+    };
+    "babel-plugin-istanbul-6.1.1" = {
+      name = "babel-plugin-istanbul";
+      packageName = "babel-plugin-istanbul";
+      version = "6.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz";
+        sha512 = "Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==";
+      };
+    };
+    "babel-plugin-jest-hoist-27.5.1" = {
+      name = "babel-plugin-jest-hoist";
+      packageName = "babel-plugin-jest-hoist";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz";
+        sha512 = "50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==";
+      };
+    };
+    "babel-plugin-macros-3.1.0" = {
+      name = "babel-plugin-macros";
+      packageName = "babel-plugin-macros";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz";
+        sha512 = "Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==";
+      };
+    };
+    "babel-plugin-named-asset-import-0.3.8" = {
+      name = "babel-plugin-named-asset-import";
+      packageName = "babel-plugin-named-asset-import";
+      version = "0.3.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.8.tgz";
+        sha512 = "WXiAc++qo7XcJ1ZnTYGtLxmBCVbddAml3CEXgWaBzNzLNoxtQ8AiGEFDMOhot9XjTCQbvP5E77Fj9Gk924f00Q==";
+      };
+    };
+    "babel-plugin-polyfill-corejs2-0.3.3" = {
+      name = "babel-plugin-polyfill-corejs2";
+      packageName = "babel-plugin-polyfill-corejs2";
+      version = "0.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz";
+        sha512 = "8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==";
+      };
+    };
+    "babel-plugin-polyfill-corejs3-0.6.0" = {
+      name = "babel-plugin-polyfill-corejs3";
+      packageName = "babel-plugin-polyfill-corejs3";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz";
+        sha512 = "+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==";
+      };
+    };
+    "babel-plugin-polyfill-regenerator-0.4.1" = {
+      name = "babel-plugin-polyfill-regenerator";
+      packageName = "babel-plugin-polyfill-regenerator";
+      version = "0.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz";
+        sha512 = "NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==";
+      };
+    };
+    "babel-plugin-transform-react-remove-prop-types-0.4.24" = {
+      name = "babel-plugin-transform-react-remove-prop-types";
+      packageName = "babel-plugin-transform-react-remove-prop-types";
+      version = "0.4.24";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.24.tgz";
+        sha512 = "eqj0hVcJUR57/Ug2zE1Yswsw4LhuqqHhD+8v120T1cl3kjg76QwtyBrdIk4WVwK+lAhBJVYCd/v+4nc4y+8JsA==";
+      };
+    };
+    "babel-preset-current-node-syntax-1.0.1" = {
+      name = "babel-preset-current-node-syntax";
+      packageName = "babel-preset-current-node-syntax";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz";
+        sha512 = "M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==";
+      };
+    };
+    "babel-preset-jest-27.5.1" = {
+      name = "babel-preset-jest";
+      packageName = "babel-preset-jest";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz";
+        sha512 = "Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==";
+      };
+    };
+    "babel-preset-react-app-10.0.1" = {
+      name = "babel-preset-react-app";
+      packageName = "babel-preset-react-app";
+      version = "10.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babel-preset-react-app/-/babel-preset-react-app-10.0.1.tgz";
+        sha512 = "b0D9IZ1WhhCWkrTXyFuIIgqGzSkRIH5D5AmB0bXbzYAB1OBAwHcUeyWW2LorutLWF5btNo/N7r/cIdmvvKJlYg==";
+      };
+    };
+    "balanced-match-1.0.2" = {
+      name = "balanced-match";
+      packageName = "balanced-match";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz";
+        sha512 = "3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==";
+      };
+    };
+    "batch-0.6.1" = {
+      name = "batch";
+      packageName = "batch";
+      version = "0.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz";
+        sha512 = "x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==";
+      };
+    };
+    "bfj-7.0.2" = {
+      name = "bfj";
+      packageName = "bfj";
+      version = "7.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bfj/-/bfj-7.0.2.tgz";
+        sha512 = "+e/UqUzwmzJamNF50tBV6tZPTORow7gQ96iFow+8b562OdMpEK0BcJEq2OSPEDmAbSMBQ7PKZ87ubFkgxpYWgw==";
+      };
+    };
+    "big.js-5.2.2" = {
+      name = "big.js";
+      packageName = "big.js";
+      version = "5.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz";
+        sha512 = "vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==";
+      };
+    };
+    "binary-extensions-2.2.0" = {
+      name = "binary-extensions";
+      packageName = "binary-extensions";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz";
+        sha512 = "jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==";
+      };
+    };
+    "bluebird-3.7.2" = {
+      name = "bluebird";
+      packageName = "bluebird";
+      version = "3.7.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz";
+        sha512 = "XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==";
+      };
+    };
+    "body-parser-1.20.0" = {
+      name = "body-parser";
+      packageName = "body-parser";
+      version = "1.20.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz";
+        sha512 = "DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==";
+      };
+    };
+    "bonjour-service-1.0.14" = {
+      name = "bonjour-service";
+      packageName = "bonjour-service";
+      version = "1.0.14";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.14.tgz";
+        sha512 = "HIMbgLnk1Vqvs6B4Wq5ep7mxvj9sGz5d1JJyDNSGNIdA/w2MCz6GTjWTdjqOJV1bEPj+6IkxDvWNFKEBxNt4kQ==";
+      };
+    };
+    "boolbase-1.0.0" = {
+      name = "boolbase";
+      packageName = "boolbase";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz";
+        sha512 = "JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==";
+      };
+    };
+    "brace-expansion-1.1.11" = {
+      name = "brace-expansion";
+      packageName = "brace-expansion";
+      version = "1.1.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz";
+        sha512 = "iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==";
+      };
+    };
+    "brace-expansion-2.0.1" = {
+      name = "brace-expansion";
+      packageName = "brace-expansion";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz";
+        sha512 = "XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==";
+      };
+    };
+    "braces-3.0.2" = {
+      name = "braces";
+      packageName = "braces";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz";
+        sha512 = "b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==";
+      };
+    };
+    "browser-process-hrtime-1.0.0" = {
+      name = "browser-process-hrtime";
+      packageName = "browser-process-hrtime";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz";
+        sha512 = "9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==";
+      };
+    };
+    "browserslist-4.21.4" = {
+      name = "browserslist";
+      packageName = "browserslist";
+      version = "4.21.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz";
+        sha512 = "CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==";
+      };
+    };
+    "bser-2.1.1" = {
+      name = "bser";
+      packageName = "bser";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz";
+        sha512 = "gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==";
+      };
+    };
+    "buffer-from-1.1.2" = {
+      name = "buffer-from";
+      packageName = "buffer-from";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz";
+        sha512 = "E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==";
+      };
+    };
+    "builtin-modules-3.3.0" = {
+      name = "builtin-modules";
+      packageName = "builtin-modules";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz";
+        sha512 = "zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==";
+      };
+    };
+    "bytes-3.0.0" = {
+      name = "bytes";
+      packageName = "bytes";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz";
+        sha512 = "pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==";
+      };
+    };
+    "bytes-3.1.2" = {
+      name = "bytes";
+      packageName = "bytes";
+      version = "3.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz";
+        sha512 = "/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==";
+      };
+    };
+    "call-bind-1.0.2" = {
+      name = "call-bind";
+      packageName = "call-bind";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz";
+        sha512 = "7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==";
+      };
+    };
+    "callsites-3.1.0" = {
+      name = "callsites";
+      packageName = "callsites";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz";
+        sha512 = "P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==";
+      };
+    };
+    "camel-case-4.1.2" = {
+      name = "camel-case";
+      packageName = "camel-case";
+      version = "4.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz";
+        sha512 = "gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==";
+      };
+    };
+    "camelcase-5.3.1" = {
+      name = "camelcase";
+      packageName = "camelcase";
+      version = "5.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz";
+        sha512 = "L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==";
+      };
+    };
+    "camelcase-6.3.0" = {
+      name = "camelcase";
+      packageName = "camelcase";
+      version = "6.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz";
+        sha512 = "Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==";
+      };
+    };
+    "camelcase-css-2.0.1" = {
+      name = "camelcase-css";
+      packageName = "camelcase-css";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz";
+        sha512 = "QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==";
+      };
+    };
+    "caniuse-api-3.0.0" = {
+      name = "caniuse-api";
+      packageName = "caniuse-api";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz";
+        sha512 = "bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==";
+      };
+    };
+    "caniuse-lite-1.0.30001412" = {
+      name = "caniuse-lite";
+      packageName = "caniuse-lite";
+      version = "1.0.30001412";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001412.tgz";
+        sha512 = "+TeEIee1gS5bYOiuf+PS/kp2mrXic37Hl66VY6EAfxasIk5fELTktK2oOezYed12H8w7jt3s512PpulQidPjwA==";
+      };
+    };
+    "case-sensitive-paths-webpack-plugin-2.4.0" = {
+      name = "case-sensitive-paths-webpack-plugin";
+      packageName = "case-sensitive-paths-webpack-plugin";
+      version = "2.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz";
+        sha512 = "roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw==";
+      };
+    };
+    "chalk-2.4.2" = {
+      name = "chalk";
+      packageName = "chalk";
+      version = "2.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz";
+        sha512 = "Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==";
+      };
+    };
+    "chalk-4.1.2" = {
+      name = "chalk";
+      packageName = "chalk";
+      version = "4.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz";
+        sha512 = "oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==";
+      };
+    };
+    "char-regex-1.0.2" = {
+      name = "char-regex";
+      packageName = "char-regex";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz";
+        sha512 = "kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==";
+      };
+    };
+    "char-regex-2.0.1" = {
+      name = "char-regex";
+      packageName = "char-regex";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/char-regex/-/char-regex-2.0.1.tgz";
+        sha512 = "oSvEeo6ZUD7NepqAat3RqoucZ5SeqLJgOvVIwkafu6IP3V0pO38s/ypdVUmDDK6qIIHNlYHJAKX9E7R7HoKElw==";
+      };
+    };
+    "check-types-11.1.2" = {
+      name = "check-types";
+      packageName = "check-types";
+      version = "11.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/check-types/-/check-types-11.1.2.tgz";
+        sha512 = "tzWzvgePgLORb9/3a0YenggReLKAIb2owL03H2Xdoe5pKcUyWRSEQ8xfCar8t2SIAuEDwtmx2da1YB52YuHQMQ==";
+      };
+    };
+    "chokidar-3.5.3" = {
+      name = "chokidar";
+      packageName = "chokidar";
+      version = "3.5.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz";
+        sha512 = "Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==";
+      };
+    };
+    "chrome-trace-event-1.0.3" = {
+      name = "chrome-trace-event";
+      packageName = "chrome-trace-event";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz";
+        sha512 = "p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==";
+      };
+    };
+    "ci-info-3.4.0" = {
+      name = "ci-info";
+      packageName = "ci-info";
+      version = "3.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ci-info/-/ci-info-3.4.0.tgz";
+        sha512 = "t5QdPT5jq3o262DOQ8zA6E1tlH2upmUc4Hlvrbx1pGYJuiiHl7O7rvVNI+l8HTVhd/q3Qc9vqimkNk5yiXsAug==";
+      };
+    };
+    "cjs-module-lexer-1.2.2" = {
+      name = "cjs-module-lexer";
+      packageName = "cjs-module-lexer";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz";
+        sha512 = "cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==";
+      };
+    };
+    "clean-css-5.3.1" = {
+      name = "clean-css";
+      packageName = "clean-css";
+      version = "5.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/clean-css/-/clean-css-5.3.1.tgz";
+        sha512 = "lCr8OHhiWCTw4v8POJovCoh4T7I9U11yVsPjMWWnnMmp9ZowCxyad1Pathle/9HjaDp+fdQKjO9fQydE6RHTZg==";
+      };
+    };
+    "cliui-7.0.4" = {
+      name = "cliui";
+      packageName = "cliui";
+      version = "7.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz";
+        sha512 = "OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==";
+      };
+    };
+    "clsx-1.2.1" = {
+      name = "clsx";
+      packageName = "clsx";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz";
+        sha512 = "EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==";
+      };
+    };
+    "co-4.6.0" = {
+      name = "co";
+      packageName = "co";
+      version = "4.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/co/-/co-4.6.0.tgz";
+        sha512 = "QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==";
+      };
+    };
+    "coa-2.0.2" = {
+      name = "coa";
+      packageName = "coa";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz";
+        sha512 = "q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==";
+      };
+    };
+    "collect-v8-coverage-1.0.1" = {
+      name = "collect-v8-coverage";
+      packageName = "collect-v8-coverage";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz";
+        sha512 = "iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==";
+      };
+    };
+    "color-convert-1.9.3" = {
+      name = "color-convert";
+      packageName = "color-convert";
+      version = "1.9.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz";
+        sha512 = "QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==";
+      };
+    };
+    "color-convert-2.0.1" = {
+      name = "color-convert";
+      packageName = "color-convert";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz";
+        sha512 = "RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==";
+      };
+    };
+    "color-name-1.1.3" = {
+      name = "color-name";
+      packageName = "color-name";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz";
+        sha512 = "72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==";
+      };
+    };
+    "color-name-1.1.4" = {
+      name = "color-name";
+      packageName = "color-name";
+      version = "1.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz";
+        sha512 = "dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==";
+      };
+    };
+    "colord-2.9.3" = {
+      name = "colord";
+      packageName = "colord";
+      version = "2.9.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz";
+        sha512 = "jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==";
+      };
+    };
+    "colorette-2.0.19" = {
+      name = "colorette";
+      packageName = "colorette";
+      version = "2.0.19";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz";
+        sha512 = "3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==";
+      };
+    };
+    "combined-stream-1.0.8" = {
+      name = "combined-stream";
+      packageName = "combined-stream";
+      version = "1.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz";
+        sha512 = "FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==";
+      };
+    };
+    "commander-2.20.3" = {
+      name = "commander";
+      packageName = "commander";
+      version = "2.20.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz";
+        sha512 = "GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==";
+      };
+    };
+    "commander-7.2.0" = {
+      name = "commander";
+      packageName = "commander";
+      version = "7.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz";
+        sha512 = "QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==";
+      };
+    };
+    "commander-8.3.0" = {
+      name = "commander";
+      packageName = "commander";
+      version = "8.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz";
+        sha512 = "OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==";
+      };
+    };
+    "common-path-prefix-3.0.0" = {
+      name = "common-path-prefix";
+      packageName = "common-path-prefix";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz";
+        sha512 = "QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==";
+      };
+    };
+    "common-tags-1.8.2" = {
+      name = "common-tags";
+      packageName = "common-tags";
+      version = "1.8.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz";
+        sha512 = "gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==";
+      };
+    };
+    "commondir-1.0.1" = {
+      name = "commondir";
+      packageName = "commondir";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz";
+        sha512 = "W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==";
+      };
+    };
+    "compressible-2.0.18" = {
+      name = "compressible";
+      packageName = "compressible";
+      version = "2.0.18";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz";
+        sha512 = "AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==";
+      };
+    };
+    "compression-1.7.4" = {
+      name = "compression";
+      packageName = "compression";
+      version = "1.7.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz";
+        sha512 = "jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==";
+      };
+    };
+    "concat-map-0.0.1" = {
+      name = "concat-map";
+      packageName = "concat-map";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz";
+        sha512 = "/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==";
+      };
+    };
+    "confusing-browser-globals-1.0.11" = {
+      name = "confusing-browser-globals";
+      packageName = "confusing-browser-globals";
+      version = "1.0.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz";
+        sha512 = "JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==";
+      };
+    };
+    "connect-history-api-fallback-2.0.0" = {
+      name = "connect-history-api-fallback";
+      packageName = "connect-history-api-fallback";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz";
+        sha512 = "U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==";
+      };
+    };
+    "content-disposition-0.5.4" = {
+      name = "content-disposition";
+      packageName = "content-disposition";
+      version = "0.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz";
+        sha512 = "FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==";
+      };
+    };
+    "content-type-1.0.4" = {
+      name = "content-type";
+      packageName = "content-type";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz";
+        sha512 = "hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==";
+      };
+    };
+    "convert-source-map-1.8.0" = {
+      name = "convert-source-map";
+      packageName = "convert-source-map";
+      version = "1.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz";
+        sha512 = "+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==";
+      };
+    };
+    "cookie-0.5.0" = {
+      name = "cookie";
+      packageName = "cookie";
+      version = "0.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz";
+        sha512 = "YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==";
+      };
+    };
+    "cookie-signature-1.0.6" = {
+      name = "cookie-signature";
+      packageName = "cookie-signature";
+      version = "1.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz";
+        sha512 = "QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==";
+      };
+    };
+    "core-js-3.25.3" = {
+      name = "core-js";
+      packageName = "core-js";
+      version = "3.25.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/core-js/-/core-js-3.25.3.tgz";
+        sha512 = "y1hvKXmPHvm5B7w4ln1S4uc9eV/O5+iFExSRUimnvIph11uaizFR8LFMdONN8hG3P2pipUfX4Y/fR8rAEtcHcQ==";
+      };
+    };
+    "core-js-compat-3.25.3" = {
+      name = "core-js-compat";
+      packageName = "core-js-compat";
+      version = "3.25.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.25.3.tgz";
+        sha512 = "xVtYpJQ5grszDHEUU9O7XbjjcZ0ccX3LgQsyqSvTnjX97ZqEgn9F5srmrwwwMtbKzDllyFPL+O+2OFMl1lU4TQ==";
+      };
+    };
+    "core-js-pure-3.25.3" = {
+      name = "core-js-pure";
+      packageName = "core-js-pure";
+      version = "3.25.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.25.3.tgz";
+        sha512 = "T/7qvgv70MEvRkZ8p6BasLZmOVYKzOaWNBEHAU8FmveCJkl4nko2quqPQOmy6AJIp5MBanhz9no3A94NoRb0XA==";
+      };
+    };
+    "core-util-is-1.0.3" = {
+      name = "core-util-is";
+      packageName = "core-util-is";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz";
+        sha512 = "ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==";
+      };
+    };
+    "cosmiconfig-6.0.0" = {
+      name = "cosmiconfig";
+      packageName = "cosmiconfig";
+      version = "6.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz";
+        sha512 = "xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==";
+      };
+    };
+    "cosmiconfig-7.0.1" = {
+      name = "cosmiconfig";
+      packageName = "cosmiconfig";
+      version = "7.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz";
+        sha512 = "a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==";
+      };
+    };
+    "cross-fetch-3.1.5" = {
+      name = "cross-fetch";
+      packageName = "cross-fetch";
+      version = "3.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz";
+        sha512 = "lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==";
+      };
+    };
+    "cross-spawn-7.0.3" = {
+      name = "cross-spawn";
+      packageName = "cross-spawn";
+      version = "7.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz";
+        sha512 = "iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==";
+      };
+    };
+    "crypto-random-string-2.0.0" = {
+      name = "crypto-random-string";
+      packageName = "crypto-random-string";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz";
+        sha512 = "v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==";
+      };
+    };
+    "css-blank-pseudo-3.0.3" = {
+      name = "css-blank-pseudo";
+      packageName = "css-blank-pseudo";
+      version = "3.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz";
+        sha512 = "VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ==";
+      };
+    };
+    "css-declaration-sorter-6.3.1" = {
+      name = "css-declaration-sorter";
+      packageName = "css-declaration-sorter";
+      version = "6.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz";
+        sha512 = "fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w==";
+      };
+    };
+    "css-has-pseudo-3.0.4" = {
+      name = "css-has-pseudo";
+      packageName = "css-has-pseudo";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz";
+        sha512 = "Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw==";
+      };
+    };
+    "css-loader-6.7.1" = {
+      name = "css-loader";
+      packageName = "css-loader";
+      version = "6.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz";
+        sha512 = "yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==";
+      };
+    };
+    "css-minimizer-webpack-plugin-3.4.1" = {
+      name = "css-minimizer-webpack-plugin";
+      packageName = "css-minimizer-webpack-plugin";
+      version = "3.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-3.4.1.tgz";
+        sha512 = "1u6D71zeIfgngN2XNRJefc/hY7Ybsxd74Jm4qngIXyUEk7fss3VUzuHxLAq/R8NAba4QU9OUSaMZlbpRc7bM4Q==";
+      };
+    };
+    "css-prefers-color-scheme-6.0.3" = {
+      name = "css-prefers-color-scheme";
+      packageName = "css-prefers-color-scheme";
+      version = "6.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz";
+        sha512 = "4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==";
+      };
+    };
+    "css-select-2.1.0" = {
+      name = "css-select";
+      packageName = "css-select";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz";
+        sha512 = "Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==";
+      };
+    };
+    "css-select-4.3.0" = {
+      name = "css-select";
+      packageName = "css-select";
+      version = "4.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz";
+        sha512 = "wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==";
+      };
+    };
+    "css-select-base-adapter-0.1.1" = {
+      name = "css-select-base-adapter";
+      packageName = "css-select-base-adapter";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz";
+        sha512 = "jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==";
+      };
+    };
+    "css-tree-1.0.0-alpha.37" = {
+      name = "css-tree";
+      packageName = "css-tree";
+      version = "1.0.0-alpha.37";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz";
+        sha512 = "DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==";
+      };
+    };
+    "css-tree-1.1.3" = {
+      name = "css-tree";
+      packageName = "css-tree";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz";
+        sha512 = "tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==";
+      };
+    };
+    "css-what-3.4.2" = {
+      name = "css-what";
+      packageName = "css-what";
+      version = "3.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz";
+        sha512 = "ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==";
+      };
+    };
+    "css-what-6.1.0" = {
+      name = "css-what";
+      packageName = "css-what";
+      version = "6.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz";
+        sha512 = "HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==";
+      };
+    };
+    "cssdb-7.0.1" = {
+      name = "cssdb";
+      packageName = "cssdb";
+      version = "7.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cssdb/-/cssdb-7.0.1.tgz";
+        sha512 = "pT3nzyGM78poCKLAEy2zWIVX2hikq6dIrjuZzLV98MumBg+xMTNYfHx7paUlfiRTgg91O/vR889CIf+qiv79Rw==";
+      };
+    };
+    "cssesc-3.0.0" = {
+      name = "cssesc";
+      packageName = "cssesc";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz";
+        sha512 = "/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==";
+      };
+    };
+    "cssnano-5.1.13" = {
+      name = "cssnano";
+      packageName = "cssnano";
+      version = "5.1.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cssnano/-/cssnano-5.1.13.tgz";
+        sha512 = "S2SL2ekdEz6w6a2epXn4CmMKU4K3KpcyXLKfAYc9UQQqJRkD/2eLUG0vJ3Db/9OvO5GuAdgXw3pFbR6abqghDQ==";
+      };
+    };
+    "cssnano-preset-default-5.2.12" = {
+      name = "cssnano-preset-default";
+      packageName = "cssnano-preset-default";
+      version = "5.2.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.12.tgz";
+        sha512 = "OyCBTZi+PXgylz9HAA5kHyoYhfGcYdwFmyaJzWnzxuGRtnMw/kR6ilW9XzlzlRAtB6PLT/r+prYgkef7hngFew==";
+      };
+    };
+    "cssnano-utils-3.1.0" = {
+      name = "cssnano-utils";
+      packageName = "cssnano-utils";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz";
+        sha512 = "JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==";
+      };
+    };
+    "csso-4.2.0" = {
+      name = "csso";
+      packageName = "csso";
+      version = "4.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz";
+        sha512 = "wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==";
+      };
+    };
+    "cssom-0.3.8" = {
+      name = "cssom";
+      packageName = "cssom";
+      version = "0.3.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz";
+        sha512 = "b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==";
+      };
+    };
+    "cssom-0.4.4" = {
+      name = "cssom";
+      packageName = "cssom";
+      version = "0.4.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz";
+        sha512 = "p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==";
+      };
+    };
+    "cssstyle-2.3.0" = {
+      name = "cssstyle";
+      packageName = "cssstyle";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz";
+        sha512 = "AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==";
+      };
+    };
+    "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==";
+      };
+    };
+    "damerau-levenshtein-1.0.8" = {
+      name = "damerau-levenshtein";
+      packageName = "damerau-levenshtein";
+      version = "1.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz";
+        sha512 = "sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==";
+      };
+    };
+    "data-urls-2.0.0" = {
+      name = "data-urls";
+      packageName = "data-urls";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz";
+        sha512 = "X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==";
+      };
+    };
+    "debug-2.6.9" = {
+      name = "debug";
+      packageName = "debug";
+      version = "2.6.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz";
+        sha512 = "bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==";
+      };
+    };
+    "debug-3.2.7" = {
+      name = "debug";
+      packageName = "debug";
+      version = "3.2.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz";
+        sha512 = "CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==";
+      };
+    };
+    "debug-4.3.4" = {
+      name = "debug";
+      packageName = "debug";
+      version = "4.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz";
+        sha512 = "PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==";
+      };
+    };
+    "decimal.js-10.4.1" = {
+      name = "decimal.js";
+      packageName = "decimal.js";
+      version = "10.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.1.tgz";
+        sha512 = "F29o+vci4DodHYT9UrR5IEbfBw9pE5eSapIJdTqXK5+6hq+t8VRxwQyKlW2i+KDKFkkJQRvFyI/QXD83h8LyQw==";
+      };
+    };
+    "dedent-0.7.0" = {
+      name = "dedent";
+      packageName = "dedent";
+      version = "0.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz";
+        sha512 = "Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==";
+      };
+    };
+    "deep-is-0.1.4" = {
+      name = "deep-is";
+      packageName = "deep-is";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz";
+        sha512 = "oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==";
+      };
+    };
+    "deepmerge-4.2.2" = {
+      name = "deepmerge";
+      packageName = "deepmerge";
+      version = "4.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz";
+        sha512 = "FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==";
+      };
+    };
+    "default-gateway-6.0.3" = {
+      name = "default-gateway";
+      packageName = "default-gateway";
+      version = "6.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz";
+        sha512 = "fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==";
+      };
+    };
+    "define-lazy-prop-2.0.0" = {
+      name = "define-lazy-prop";
+      packageName = "define-lazy-prop";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz";
+        sha512 = "Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==";
+      };
+    };
+    "define-properties-1.1.4" = {
+      name = "define-properties";
+      packageName = "define-properties";
+      version = "1.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz";
+        sha512 = "uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==";
+      };
+    };
+    "defined-1.0.0" = {
+      name = "defined";
+      packageName = "defined";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz";
+        sha512 = "Y2caI5+ZwS5c3RiNDJ6u53VhQHv+hHKwhkI1iHvceKUHw9Df6EK2zRLfjejRgMuCuxK7PfSWIMwWecceVvThjQ==";
+      };
+    };
+    "delayed-stream-1.0.0" = {
+      name = "delayed-stream";
+      packageName = "delayed-stream";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz";
+        sha512 = "ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==";
+      };
+    };
+    "depd-1.1.2" = {
+      name = "depd";
+      packageName = "depd";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz";
+        sha512 = "7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==";
+      };
+    };
+    "depd-2.0.0" = {
+      name = "depd";
+      packageName = "depd";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz";
+        sha512 = "g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==";
+      };
+    };
+    "destroy-1.2.0" = {
+      name = "destroy";
+      packageName = "destroy";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz";
+        sha512 = "2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==";
+      };
+    };
+    "detect-newline-3.1.0" = {
+      name = "detect-newline";
+      packageName = "detect-newline";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz";
+        sha512 = "TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==";
+      };
+    };
+    "detect-node-2.1.0" = {
+      name = "detect-node";
+      packageName = "detect-node";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz";
+        sha512 = "T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==";
+      };
+    };
+    "detect-port-alt-1.1.6" = {
+      name = "detect-port-alt";
+      packageName = "detect-port-alt";
+      version = "1.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz";
+        sha512 = "5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==";
+      };
+    };
+    "detective-5.2.1" = {
+      name = "detective";
+      packageName = "detective";
+      version = "5.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz";
+        sha512 = "v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==";
+      };
+    };
+    "dexie-3.2.2" = {
+      name = "dexie";
+      packageName = "dexie";
+      version = "3.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dexie/-/dexie-3.2.2.tgz";
+        sha512 = "q5dC3HPmir2DERlX+toCBbHQXW5MsyrFqPFcovkH9N2S/UW/H3H5AWAB6iEOExeraAu+j+zRDG+zg/D7YhH0qg==";
+      };
+    };
+    "dexie-react-hooks-1.1.1" = {
+      name = "dexie-react-hooks";
+      packageName = "dexie-react-hooks";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dexie-react-hooks/-/dexie-react-hooks-1.1.1.tgz";
+        sha512 = "Cam5JP6PxHN564RvWEoe8cqLhosW0O4CAZ9XEVYeGHJBa6KEJlOpd9CUpV3kmU9dm2MrW97/lk7qkf1xpij7gA==";
+      };
+    };
+    "didyoumean-1.2.2" = {
+      name = "didyoumean";
+      packageName = "didyoumean";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz";
+        sha512 = "gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==";
+      };
+    };
+    "diff-sequences-27.5.1" = {
+      name = "diff-sequences";
+      packageName = "diff-sequences";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz";
+        sha512 = "k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==";
+      };
+    };
+    "dir-glob-3.0.1" = {
+      name = "dir-glob";
+      packageName = "dir-glob";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz";
+        sha512 = "WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==";
+      };
+    };
+    "dlv-1.1.3" = {
+      name = "dlv";
+      packageName = "dlv";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz";
+        sha512 = "+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==";
+      };
+    };
+    "dns-equal-1.0.0" = {
+      name = "dns-equal";
+      packageName = "dns-equal";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz";
+        sha512 = "z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==";
+      };
+    };
+    "dns-packet-5.4.0" = {
+      name = "dns-packet";
+      packageName = "dns-packet";
+      version = "5.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz";
+        sha512 = "EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==";
+      };
+    };
+    "doctrine-2.1.0" = {
+      name = "doctrine";
+      packageName = "doctrine";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz";
+        sha512 = "35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==";
+      };
+    };
+    "doctrine-3.0.0" = {
+      name = "doctrine";
+      packageName = "doctrine";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz";
+        sha512 = "yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==";
+      };
+    };
+    "dom-converter-0.2.0" = {
+      name = "dom-converter";
+      packageName = "dom-converter";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz";
+        sha512 = "gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==";
+      };
+    };
+    "dom-helpers-5.2.1" = {
+      name = "dom-helpers";
+      packageName = "dom-helpers";
+      version = "5.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz";
+        sha512 = "nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==";
+      };
+    };
+    "dom-serializer-0.2.2" = {
+      name = "dom-serializer";
+      packageName = "dom-serializer";
+      version = "0.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz";
+        sha512 = "2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==";
+      };
+    };
+    "dom-serializer-1.4.1" = {
+      name = "dom-serializer";
+      packageName = "dom-serializer";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz";
+        sha512 = "VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==";
+      };
+    };
+    "domelementtype-1.3.1" = {
+      name = "domelementtype";
+      packageName = "domelementtype";
+      version = "1.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz";
+        sha512 = "BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==";
+      };
+    };
+    "domelementtype-2.3.0" = {
+      name = "domelementtype";
+      packageName = "domelementtype";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz";
+        sha512 = "OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==";
+      };
+    };
+    "domexception-2.0.1" = {
+      name = "domexception";
+      packageName = "domexception";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz";
+        sha512 = "yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==";
+      };
+    };
+    "domhandler-4.3.1" = {
+      name = "domhandler";
+      packageName = "domhandler";
+      version = "4.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz";
+        sha512 = "GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==";
+      };
+    };
+    "domutils-1.7.0" = {
+      name = "domutils";
+      packageName = "domutils";
+      version = "1.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz";
+        sha512 = "Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==";
+      };
+    };
+    "domutils-2.8.0" = {
+      name = "domutils";
+      packageName = "domutils";
+      version = "2.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz";
+        sha512 = "w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==";
+      };
+    };
+    "dot-case-3.0.4" = {
+      name = "dot-case";
+      packageName = "dot-case";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz";
+        sha512 = "Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==";
+      };
+    };
+    "dotenv-10.0.0" = {
+      name = "dotenv";
+      packageName = "dotenv";
+      version = "10.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz";
+        sha512 = "rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==";
+      };
+    };
+    "dotenv-expand-5.1.0" = {
+      name = "dotenv-expand";
+      packageName = "dotenv-expand";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz";
+        sha512 = "YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==";
+      };
+    };
+    "duplexer-0.1.2" = {
+      name = "duplexer";
+      packageName = "duplexer";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz";
+        sha512 = "jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==";
+      };
+    };
+    "ee-first-1.1.1" = {
+      name = "ee-first";
+      packageName = "ee-first";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz";
+        sha512 = "WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==";
+      };
+    };
+    "ejs-3.1.8" = {
+      name = "ejs";
+      packageName = "ejs";
+      version = "3.1.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ejs/-/ejs-3.1.8.tgz";
+        sha512 = "/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ==";
+      };
+    };
+    "electron-to-chromium-1.4.264" = {
+      name = "electron-to-chromium";
+      packageName = "electron-to-chromium";
+      version = "1.4.264";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.264.tgz";
+        sha512 = "AZ6ZRkucHOQT8wke50MktxtmcWZr67kE17X/nAXFf62NIdMdgY6xfsaJD5Szoy84lnkuPWH+4tTNE3s2+bPCiw==";
+      };
+    };
+    "emittery-0.10.2" = {
+      name = "emittery";
+      packageName = "emittery";
+      version = "0.10.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/emittery/-/emittery-0.10.2.tgz";
+        sha512 = "aITqOwnLanpHLNXZJENbOgjUBeHocD+xsSJmNrjovKBW5HbSpW3d1pEls7GFQPUWXiwG9+0P4GtHfEqC/4M0Iw==";
+      };
+    };
+    "emittery-0.8.1" = {
+      name = "emittery";
+      packageName = "emittery";
+      version = "0.8.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz";
+        sha512 = "uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==";
+      };
+    };
+    "emoji-regex-8.0.0" = {
+      name = "emoji-regex";
+      packageName = "emoji-regex";
+      version = "8.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz";
+        sha512 = "MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==";
+      };
+    };
+    "emoji-regex-9.2.2" = {
+      name = "emoji-regex";
+      packageName = "emoji-regex";
+      version = "9.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz";
+        sha512 = "L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==";
+      };
+    };
+    "emojis-list-3.0.0" = {
+      name = "emojis-list";
+      packageName = "emojis-list";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz";
+        sha512 = "/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==";
+      };
+    };
+    "encodeurl-1.0.2" = {
+      name = "encodeurl";
+      packageName = "encodeurl";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz";
+        sha512 = "TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==";
+      };
+    };
+    "enhanced-resolve-5.10.0" = {
+      name = "enhanced-resolve";
+      packageName = "enhanced-resolve";
+      version = "5.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz";
+        sha512 = "T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ==";
+      };
+    };
+    "entities-2.2.0" = {
+      name = "entities";
+      packageName = "entities";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz";
+        sha512 = "p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==";
+      };
+    };
+    "error-ex-1.3.2" = {
+      name = "error-ex";
+      packageName = "error-ex";
+      version = "1.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz";
+        sha512 = "7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==";
+      };
+    };
+    "error-stack-parser-2.1.4" = {
+      name = "error-stack-parser";
+      packageName = "error-stack-parser";
+      version = "2.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz";
+        sha512 = "Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==";
+      };
+    };
+    "es-abstract-1.20.3" = {
+      name = "es-abstract";
+      packageName = "es-abstract";
+      version = "1.20.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.3.tgz";
+        sha512 = "AyrnaKVpMzljIdwjzrj+LxGmj8ik2LckwXacHqrJJ/jxz6dDDBcZ7I7nlHM0FvEW8MfbWJwOd+yT2XzYW49Frw==";
+      };
+    };
+    "es-array-method-boxes-properly-1.0.0" = {
+      name = "es-array-method-boxes-properly";
+      packageName = "es-array-method-boxes-properly";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz";
+        sha512 = "wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==";
+      };
+    };
+    "es-module-lexer-0.9.3" = {
+      name = "es-module-lexer";
+      packageName = "es-module-lexer";
+      version = "0.9.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz";
+        sha512 = "1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==";
+      };
+    };
+    "es-shim-unscopables-1.0.0" = {
+      name = "es-shim-unscopables";
+      packageName = "es-shim-unscopables";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz";
+        sha512 = "Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==";
+      };
+    };
+    "es-to-primitive-1.2.1" = {
+      name = "es-to-primitive";
+      packageName = "es-to-primitive";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz";
+        sha512 = "QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==";
+      };
+    };
+    "escalade-3.1.1" = {
+      name = "escalade";
+      packageName = "escalade";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz";
+        sha512 = "k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==";
+      };
+    };
+    "escape-html-1.0.3" = {
+      name = "escape-html";
+      packageName = "escape-html";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz";
+        sha512 = "NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==";
+      };
+    };
+    "escape-string-regexp-1.0.5" = {
+      name = "escape-string-regexp";
+      packageName = "escape-string-regexp";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz";
+        sha512 = "vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==";
+      };
+    };
+    "escape-string-regexp-2.0.0" = {
+      name = "escape-string-regexp";
+      packageName = "escape-string-regexp";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz";
+        sha512 = "UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==";
+      };
+    };
+    "escape-string-regexp-4.0.0" = {
+      name = "escape-string-regexp";
+      packageName = "escape-string-regexp";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz";
+        sha512 = "TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==";
+      };
+    };
+    "escodegen-2.0.0" = {
+      name = "escodegen";
+      packageName = "escodegen";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz";
+        sha512 = "mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==";
+      };
+    };
+    "eslint-8.24.0" = {
+      name = "eslint";
+      packageName = "eslint";
+      version = "8.24.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint/-/eslint-8.24.0.tgz";
+        sha512 = "dWFaPhGhTAiPcCgm3f6LI2MBWbogMnTJzFBbhXVRQDJPkr9pGZvVjlVfXd+vyDcWPA2Ic9L2AXPIQM0+vk/cSQ==";
+      };
+    };
+    "eslint-config-react-app-7.0.1" = {
+      name = "eslint-config-react-app";
+      packageName = "eslint-config-react-app";
+      version = "7.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-config-react-app/-/eslint-config-react-app-7.0.1.tgz";
+        sha512 = "K6rNzvkIeHaTd8m/QEh1Zko0KI7BACWkkneSs6s9cKZC/J27X3eZR6Upt1jkmZ/4FK+XUOPPxMEN7+lbUXfSlA==";
+      };
+    };
+    "eslint-import-resolver-node-0.3.6" = {
+      name = "eslint-import-resolver-node";
+      packageName = "eslint-import-resolver-node";
+      version = "0.3.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz";
+        sha512 = "0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==";
+      };
+    };
+    "eslint-module-utils-2.7.4" = {
+      name = "eslint-module-utils";
+      packageName = "eslint-module-utils";
+      version = "2.7.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz";
+        sha512 = "j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==";
+      };
+    };
+    "eslint-plugin-flowtype-8.0.3" = {
+      name = "eslint-plugin-flowtype";
+      packageName = "eslint-plugin-flowtype";
+      version = "8.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-plugin-flowtype/-/eslint-plugin-flowtype-8.0.3.tgz";
+        sha512 = "dX8l6qUL6O+fYPtpNRideCFSpmWOUVx5QcaGLVqe/vlDiBSe4vYljDWDETwnyFzpl7By/WVIu6rcrniCgH9BqQ==";
+      };
+    };
+    "eslint-plugin-import-2.26.0" = {
+      name = "eslint-plugin-import";
+      packageName = "eslint-plugin-import";
+      version = "2.26.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.26.0.tgz";
+        sha512 = "hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==";
+      };
+    };
+    "eslint-plugin-jest-25.7.0" = {
+      name = "eslint-plugin-jest";
+      packageName = "eslint-plugin-jest";
+      version = "25.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-25.7.0.tgz";
+        sha512 = "PWLUEXeeF7C9QGKqvdSbzLOiLTx+bno7/HC9eefePfEb257QFHg7ye3dh80AZVkaa/RQsBB1Q/ORQvg2X7F0NQ==";
+      };
+    };
+    "eslint-plugin-jsx-a11y-6.6.1" = {
+      name = "eslint-plugin-jsx-a11y";
+      packageName = "eslint-plugin-jsx-a11y";
+      version = "6.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.6.1.tgz";
+        sha512 = "sXgFVNHiWffBq23uiS/JaP6eVR622DqwB4yTzKvGZGcPq6/yZ3WmOZfuBks/vHWo9GaFOqC2ZK4i6+C35knx7Q==";
+      };
+    };
+    "eslint-plugin-react-7.31.8" = {
+      name = "eslint-plugin-react";
+      packageName = "eslint-plugin-react";
+      version = "7.31.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.8.tgz";
+        sha512 = "5lBTZmgQmARLLSYiwI71tiGVTLUuqXantZM6vlSY39OaDSV0M7+32K5DnLkmFrwTe+Ksz0ffuLUC91RUviVZfw==";
+      };
+    };
+    "eslint-plugin-react-hooks-4.6.0" = {
+      name = "eslint-plugin-react-hooks";
+      packageName = "eslint-plugin-react-hooks";
+      version = "4.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz";
+        sha512 = "oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==";
+      };
+    };
+    "eslint-plugin-testing-library-5.7.0" = {
+      name = "eslint-plugin-testing-library";
+      packageName = "eslint-plugin-testing-library";
+      version = "5.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-5.7.0.tgz";
+        sha512 = "pI8LKtFiAflBpN4h14vTtfhKqLwtIW40TNhWyw0ckqHm0W/J0VmYtThoxpTAdHrvEWnkALSG1Z8ABBkIncMIHA==";
+      };
+    };
+    "eslint-scope-5.1.1" = {
+      name = "eslint-scope";
+      packageName = "eslint-scope";
+      version = "5.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz";
+        sha512 = "2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==";
+      };
+    };
+    "eslint-scope-7.1.1" = {
+      name = "eslint-scope";
+      packageName = "eslint-scope";
+      version = "7.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz";
+        sha512 = "QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==";
+      };
+    };
+    "eslint-utils-3.0.0" = {
+      name = "eslint-utils";
+      packageName = "eslint-utils";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz";
+        sha512 = "uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==";
+      };
+    };
+    "eslint-visitor-keys-2.1.0" = {
+      name = "eslint-visitor-keys";
+      packageName = "eslint-visitor-keys";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz";
+        sha512 = "0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==";
+      };
+    };
+    "eslint-visitor-keys-3.3.0" = {
+      name = "eslint-visitor-keys";
+      packageName = "eslint-visitor-keys";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz";
+        sha512 = "mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==";
+      };
+    };
+    "eslint-webpack-plugin-3.2.0" = {
+      name = "eslint-webpack-plugin";
+      packageName = "eslint-webpack-plugin";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-webpack-plugin/-/eslint-webpack-plugin-3.2.0.tgz";
+        sha512 = "avrKcGncpPbPSUHX6B3stNGzkKFto3eL+DKM4+VyMrVnhPc3vRczVlCq3uhuFOdRvDHTVXuzwk1ZKUrqDQHQ9w==";
+      };
+    };
+    "espree-9.4.0" = {
+      name = "espree";
+      packageName = "espree";
+      version = "9.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/espree/-/espree-9.4.0.tgz";
+        sha512 = "DQmnRpLj7f6TgN/NYb0MTzJXL+vJF9h3pHy4JhCIs3zwcgez8xmGg3sXHcEO97BrmO2OSvCwMdfdlyl+E9KjOw==";
+      };
+    };
+    "esprima-4.0.1" = {
+      name = "esprima";
+      packageName = "esprima";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz";
+        sha512 = "eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==";
+      };
+    };
+    "esquery-1.4.0" = {
+      name = "esquery";
+      packageName = "esquery";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz";
+        sha512 = "cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==";
+      };
+    };
+    "esrecurse-4.3.0" = {
+      name = "esrecurse";
+      packageName = "esrecurse";
+      version = "4.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz";
+        sha512 = "KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==";
+      };
+    };
+    "estraverse-4.3.0" = {
+      name = "estraverse";
+      packageName = "estraverse";
+      version = "4.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz";
+        sha512 = "39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==";
+      };
+    };
+    "estraverse-5.3.0" = {
+      name = "estraverse";
+      packageName = "estraverse";
+      version = "5.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz";
+        sha512 = "MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==";
+      };
+    };
+    "estree-walker-1.0.1" = {
+      name = "estree-walker";
+      packageName = "estree-walker";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz";
+        sha512 = "1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==";
+      };
+    };
+    "esutils-2.0.3" = {
+      name = "esutils";
+      packageName = "esutils";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz";
+        sha512 = "kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==";
+      };
+    };
+    "etag-1.8.1" = {
+      name = "etag";
+      packageName = "etag";
+      version = "1.8.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz";
+        sha512 = "aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==";
+      };
+    };
+    "eventemitter3-4.0.7" = {
+      name = "eventemitter3";
+      packageName = "eventemitter3";
+      version = "4.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz";
+        sha512 = "8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==";
+      };
+    };
+    "events-3.3.0" = {
+      name = "events";
+      packageName = "events";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/events/-/events-3.3.0.tgz";
+        sha512 = "mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==";
+      };
+    };
+    "execa-5.1.1" = {
+      name = "execa";
+      packageName = "execa";
+      version = "5.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz";
+        sha512 = "8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==";
+      };
+    };
+    "exit-0.1.2" = {
+      name = "exit";
+      packageName = "exit";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz";
+        sha512 = "Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==";
+      };
+    };
+    "expect-27.5.1" = {
+      name = "expect";
+      packageName = "expect";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz";
+        sha512 = "E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==";
+      };
+    };
+    "express-4.18.1" = {
+      name = "express";
+      packageName = "express";
+      version = "4.18.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/express/-/express-4.18.1.tgz";
+        sha512 = "zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==";
+      };
+    };
+    "fast-deep-equal-3.1.3" = {
+      name = "fast-deep-equal";
+      packageName = "fast-deep-equal";
+      version = "3.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz";
+        sha512 = "f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==";
+      };
+    };
+    "fast-glob-3.2.12" = {
+      name = "fast-glob";
+      packageName = "fast-glob";
+      version = "3.2.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz";
+        sha512 = "DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==";
+      };
+    };
+    "fast-json-stable-stringify-2.1.0" = {
+      name = "fast-json-stable-stringify";
+      packageName = "fast-json-stable-stringify";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz";
+        sha512 = "lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==";
+      };
+    };
+    "fast-levenshtein-2.0.6" = {
+      name = "fast-levenshtein";
+      packageName = "fast-levenshtein";
+      version = "2.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz";
+        sha512 = "DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==";
+      };
+    };
+    "fastq-1.13.0" = {
+      name = "fastq";
+      packageName = "fastq";
+      version = "1.13.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz";
+        sha512 = "YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==";
+      };
+    };
+    "faye-websocket-0.11.4" = {
+      name = "faye-websocket";
+      packageName = "faye-websocket";
+      version = "0.11.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz";
+        sha512 = "CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==";
+      };
+    };
+    "fb-watchman-2.0.2" = {
+      name = "fb-watchman";
+      packageName = "fb-watchman";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz";
+        sha512 = "p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==";
+      };
+    };
+    "file-entry-cache-6.0.1" = {
+      name = "file-entry-cache";
+      packageName = "file-entry-cache";
+      version = "6.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz";
+        sha512 = "7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==";
+      };
+    };
+    "file-loader-6.2.0" = {
+      name = "file-loader";
+      packageName = "file-loader";
+      version = "6.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz";
+        sha512 = "qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==";
+      };
+    };
+    "filelist-1.0.4" = {
+      name = "filelist";
+      packageName = "filelist";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz";
+        sha512 = "w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==";
+      };
+    };
+    "filesize-8.0.7" = {
+      name = "filesize";
+      packageName = "filesize";
+      version = "8.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz";
+        sha512 = "pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==";
+      };
+    };
+    "fill-range-7.0.1" = {
+      name = "fill-range";
+      packageName = "fill-range";
+      version = "7.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz";
+        sha512 = "qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==";
+      };
+    };
+    "finalhandler-1.2.0" = {
+      name = "finalhandler";
+      packageName = "finalhandler";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz";
+        sha512 = "5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==";
+      };
+    };
+    "find-cache-dir-3.3.2" = {
+      name = "find-cache-dir";
+      packageName = "find-cache-dir";
+      version = "3.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz";
+        sha512 = "wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==";
+      };
+    };
+    "find-root-1.1.0" = {
+      name = "find-root";
+      packageName = "find-root";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz";
+        sha512 = "NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==";
+      };
+    };
+    "find-up-3.0.0" = {
+      name = "find-up";
+      packageName = "find-up";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz";
+        sha512 = "1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==";
+      };
+    };
+    "find-up-4.1.0" = {
+      name = "find-up";
+      packageName = "find-up";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz";
+        sha512 = "PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==";
+      };
+    };
+    "find-up-5.0.0" = {
+      name = "find-up";
+      packageName = "find-up";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz";
+        sha512 = "78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==";
+      };
+    };
+    "flat-cache-3.0.4" = {
+      name = "flat-cache";
+      packageName = "flat-cache";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz";
+        sha512 = "dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==";
+      };
+    };
+    "flatted-3.2.7" = {
+      name = "flatted";
+      packageName = "flatted";
+      version = "3.2.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz";
+        sha512 = "5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==";
+      };
+    };
+    "follow-redirects-1.15.2" = {
+      name = "follow-redirects";
+      packageName = "follow-redirects";
+      version = "1.15.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz";
+        sha512 = "VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==";
+      };
+    };
+    "fork-ts-checker-webpack-plugin-6.5.2" = {
+      name = "fork-ts-checker-webpack-plugin";
+      packageName = "fork-ts-checker-webpack-plugin";
+      version = "6.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.2.tgz";
+        sha512 = "m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA==";
+      };
+    };
+    "form-data-3.0.1" = {
+      name = "form-data";
+      packageName = "form-data";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz";
+        sha512 = "RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==";
+      };
+    };
+    "forwarded-0.2.0" = {
+      name = "forwarded";
+      packageName = "forwarded";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz";
+        sha512 = "buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==";
+      };
+    };
+    "fraction.js-4.2.0" = {
+      name = "fraction.js";
+      packageName = "fraction.js";
+      version = "4.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz";
+        sha512 = "MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==";
+      };
+    };
+    "fresh-0.5.2" = {
+      name = "fresh";
+      packageName = "fresh";
+      version = "0.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz";
+        sha512 = "zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==";
+      };
+    };
+    "fs-extra-10.1.0" = {
+      name = "fs-extra";
+      packageName = "fs-extra";
+      version = "10.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz";
+        sha512 = "oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==";
+      };
+    };
+    "fs-extra-9.1.0" = {
+      name = "fs-extra";
+      packageName = "fs-extra";
+      version = "9.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz";
+        sha512 = "hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==";
+      };
+    };
+    "fs-monkey-1.0.3" = {
+      name = "fs-monkey";
+      packageName = "fs-monkey";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz";
+        sha512 = "cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==";
+      };
+    };
+    "fs.realpath-1.0.0" = {
+      name = "fs.realpath";
+      packageName = "fs.realpath";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz";
+        sha512 = "OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==";
+      };
+    };
+    "fsevents-2.3.2" = {
+      name = "fsevents";
+      packageName = "fsevents";
+      version = "2.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz";
+        sha512 = "xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==";
+      };
+    };
+    "function-bind-1.1.1" = {
+      name = "function-bind";
+      packageName = "function-bind";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz";
+        sha512 = "yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==";
+      };
+    };
+    "function.prototype.name-1.1.5" = {
+      name = "function.prototype.name";
+      packageName = "function.prototype.name";
+      version = "1.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz";
+        sha512 = "uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==";
+      };
+    };
+    "functions-have-names-1.2.3" = {
+      name = "functions-have-names";
+      packageName = "functions-have-names";
+      version = "1.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz";
+        sha512 = "xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==";
+      };
+    };
+    "gensync-1.0.0-beta.2" = {
+      name = "gensync";
+      packageName = "gensync";
+      version = "1.0.0-beta.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz";
+        sha512 = "3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==";
+      };
+    };
+    "get-caller-file-2.0.5" = {
+      name = "get-caller-file";
+      packageName = "get-caller-file";
+      version = "2.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz";
+        sha512 = "DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==";
+      };
+    };
+    "get-intrinsic-1.1.3" = {
+      name = "get-intrinsic";
+      packageName = "get-intrinsic";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz";
+        sha512 = "QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==";
+      };
+    };
+    "get-own-enumerable-property-symbols-3.0.2" = {
+      name = "get-own-enumerable-property-symbols";
+      packageName = "get-own-enumerable-property-symbols";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz";
+        sha512 = "I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==";
+      };
+    };
+    "get-package-type-0.1.0" = {
+      name = "get-package-type";
+      packageName = "get-package-type";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz";
+        sha512 = "pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==";
+      };
+    };
+    "get-stream-6.0.1" = {
+      name = "get-stream";
+      packageName = "get-stream";
+      version = "6.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz";
+        sha512 = "ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==";
+      };
+    };
+    "get-symbol-description-1.0.0" = {
+      name = "get-symbol-description";
+      packageName = "get-symbol-description";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz";
+        sha512 = "2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==";
+      };
+    };
+    "glob-7.2.3" = {
+      name = "glob";
+      packageName = "glob";
+      version = "7.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz";
+        sha512 = "nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==";
+      };
+    };
+    "glob-parent-5.1.2" = {
+      name = "glob-parent";
+      packageName = "glob-parent";
+      version = "5.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz";
+        sha512 = "AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==";
+      };
+    };
+    "glob-parent-6.0.2" = {
+      name = "glob-parent";
+      packageName = "glob-parent";
+      version = "6.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz";
+        sha512 = "XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==";
+      };
+    };
+    "glob-to-regexp-0.4.1" = {
+      name = "glob-to-regexp";
+      packageName = "glob-to-regexp";
+      version = "0.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz";
+        sha512 = "lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==";
+      };
+    };
+    "global-modules-2.0.0" = {
+      name = "global-modules";
+      packageName = "global-modules";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz";
+        sha512 = "NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==";
+      };
+    };
+    "global-prefix-3.0.0" = {
+      name = "global-prefix";
+      packageName = "global-prefix";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz";
+        sha512 = "awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==";
+      };
+    };
+    "globals-11.12.0" = {
+      name = "globals";
+      packageName = "globals";
+      version = "11.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz";
+        sha512 = "WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==";
+      };
+    };
+    "globals-13.17.0" = {
+      name = "globals";
+      packageName = "globals";
+      version = "13.17.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz";
+        sha512 = "1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==";
+      };
+    };
+    "globby-11.1.0" = {
+      name = "globby";
+      packageName = "globby";
+      version = "11.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz";
+        sha512 = "jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==";
+      };
+    };
+    "graceful-fs-4.2.10" = {
+      name = "graceful-fs";
+      packageName = "graceful-fs";
+      version = "4.2.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz";
+        sha512 = "9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==";
+      };
+    };
+    "grapheme-splitter-1.0.4" = {
+      name = "grapheme-splitter";
+      packageName = "grapheme-splitter";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz";
+        sha512 = "bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==";
+      };
+    };
+    "gzip-size-6.0.0" = {
+      name = "gzip-size";
+      packageName = "gzip-size";
+      version = "6.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz";
+        sha512 = "ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==";
+      };
+    };
+    "handle-thing-2.0.1" = {
+      name = "handle-thing";
+      packageName = "handle-thing";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz";
+        sha512 = "9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==";
+      };
+    };
+    "harmony-reflect-1.6.2" = {
+      name = "harmony-reflect";
+      packageName = "harmony-reflect";
+      version = "1.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/harmony-reflect/-/harmony-reflect-1.6.2.tgz";
+        sha512 = "HIp/n38R9kQjDEziXyDTuW3vvoxxyxjxFzXLrBr18uB47GnSt+G9D29fqrpM5ZkspMcPICud3XsBJQ4Y2URg8g==";
+      };
+    };
+    "has-1.0.3" = {
+      name = "has";
+      packageName = "has";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has/-/has-1.0.3.tgz";
+        sha512 = "f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==";
+      };
+    };
+    "has-bigints-1.0.2" = {
+      name = "has-bigints";
+      packageName = "has-bigints";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz";
+        sha512 = "tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==";
+      };
+    };
+    "has-flag-3.0.0" = {
+      name = "has-flag";
+      packageName = "has-flag";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz";
+        sha512 = "sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==";
+      };
+    };
+    "has-flag-4.0.0" = {
+      name = "has-flag";
+      packageName = "has-flag";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz";
+        sha512 = "EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==";
+      };
+    };
+    "has-property-descriptors-1.0.0" = {
+      name = "has-property-descriptors";
+      packageName = "has-property-descriptors";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz";
+        sha512 = "62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==";
+      };
+    };
+    "has-symbols-1.0.3" = {
+      name = "has-symbols";
+      packageName = "has-symbols";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz";
+        sha512 = "l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==";
+      };
+    };
+    "has-tostringtag-1.0.0" = {
+      name = "has-tostringtag";
+      packageName = "has-tostringtag";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz";
+        sha512 = "kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==";
+      };
+    };
+    "he-1.2.0" = {
+      name = "he";
+      packageName = "he";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/he/-/he-1.2.0.tgz";
+        sha512 = "F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==";
+      };
+    };
+    "hoist-non-react-statics-3.3.2" = {
+      name = "hoist-non-react-statics";
+      packageName = "hoist-non-react-statics";
+      version = "3.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz";
+        sha512 = "/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==";
+      };
+    };
+    "hoopy-0.1.4" = {
+      name = "hoopy";
+      packageName = "hoopy";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz";
+        sha512 = "HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ==";
+      };
+    };
+    "hpack.js-2.1.6" = {
+      name = "hpack.js";
+      packageName = "hpack.js";
+      version = "2.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz";
+        sha512 = "zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==";
+      };
+    };
+    "html-encoding-sniffer-2.0.1" = {
+      name = "html-encoding-sniffer";
+      packageName = "html-encoding-sniffer";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz";
+        sha512 = "D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==";
+      };
+    };
+    "html-entities-2.3.3" = {
+      name = "html-entities";
+      packageName = "html-entities";
+      version = "2.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz";
+        sha512 = "DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==";
+      };
+    };
+    "html-escaper-2.0.2" = {
+      name = "html-escaper";
+      packageName = "html-escaper";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz";
+        sha512 = "H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==";
+      };
+    };
+    "html-minifier-terser-6.1.0" = {
+      name = "html-minifier-terser";
+      packageName = "html-minifier-terser";
+      version = "6.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz";
+        sha512 = "YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==";
+      };
+    };
+    "html-parse-stringify-3.0.1" = {
+      name = "html-parse-stringify";
+      packageName = "html-parse-stringify";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/html-parse-stringify/-/html-parse-stringify-3.0.1.tgz";
+        sha512 = "KknJ50kTInJ7qIScF3jeaFRpMpE8/lfiTdzf/twXyPBLAGrLRTmkz3AdTnKeh40X8k9L2fdYwEp/42WGXIRGcg==";
+      };
+    };
+    "html-webpack-plugin-5.5.0" = {
+      name = "html-webpack-plugin";
+      packageName = "html-webpack-plugin";
+      version = "5.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz";
+        sha512 = "sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==";
+      };
+    };
+    "htmlparser2-6.1.0" = {
+      name = "htmlparser2";
+      packageName = "htmlparser2";
+      version = "6.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz";
+        sha512 = "gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==";
+      };
+    };
+    "http-deceiver-1.2.7" = {
+      name = "http-deceiver";
+      packageName = "http-deceiver";
+      version = "1.2.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz";
+        sha512 = "LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==";
+      };
+    };
+    "http-errors-1.6.3" = {
+      name = "http-errors";
+      packageName = "http-errors";
+      version = "1.6.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz";
+        sha512 = "lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==";
+      };
+    };
+    "http-errors-2.0.0" = {
+      name = "http-errors";
+      packageName = "http-errors";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz";
+        sha512 = "FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==";
+      };
+    };
+    "http-parser-js-0.5.8" = {
+      name = "http-parser-js";
+      packageName = "http-parser-js";
+      version = "0.5.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz";
+        sha512 = "SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==";
+      };
+    };
+    "http-proxy-1.18.1" = {
+      name = "http-proxy";
+      packageName = "http-proxy";
+      version = "1.18.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz";
+        sha512 = "7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==";
+      };
+    };
+    "http-proxy-agent-4.0.1" = {
+      name = "http-proxy-agent";
+      packageName = "http-proxy-agent";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz";
+        sha512 = "k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==";
+      };
+    };
+    "http-proxy-middleware-2.0.6" = {
+      name = "http-proxy-middleware";
+      packageName = "http-proxy-middleware";
+      version = "2.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz";
+        sha512 = "ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==";
+      };
+    };
+    "https-proxy-agent-5.0.1" = {
+      name = "https-proxy-agent";
+      packageName = "https-proxy-agent";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz";
+        sha512 = "dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==";
+      };
+    };
+    "human-signals-2.1.0" = {
+      name = "human-signals";
+      packageName = "human-signals";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz";
+        sha512 = "B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==";
+      };
+    };
+    "i18next-21.9.2" = {
+      name = "i18next";
+      packageName = "i18next";
+      version = "21.9.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/i18next/-/i18next-21.9.2.tgz";
+        sha512 = "00fVrLQOwy45nm3OtC9l1WiLK3nJlIYSljgCt0qzTaAy65aciMdRy9GsuW+a2AtKtdg9/njUGfRH30LRupV7ZQ==";
+      };
+    };
+    "i18next-browser-languagedetector-6.1.5" = {
+      name = "i18next-browser-languagedetector";
+      packageName = "i18next-browser-languagedetector";
+      version = "6.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/i18next-browser-languagedetector/-/i18next-browser-languagedetector-6.1.5.tgz";
+        sha512 = "11t7b39oKeZe4uyMxLSPnfw28BCPNLZgUk7zyufex0zKXZ+Bv+JnmJgoB+IfQLZwDt1d71PM8vwBX1NCgliY3g==";
+      };
+    };
+    "i18next-http-backend-1.4.4" = {
+      name = "i18next-http-backend";
+      packageName = "i18next-http-backend";
+      version = "1.4.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/i18next-http-backend/-/i18next-http-backend-1.4.4.tgz";
+        sha512 = "M4gLPe6JKZ2p1UmE6t4rzWV/sAxgrLThW7ztXAsTpFwFqXoyzhTzX8eYxVv9KjpCQh4K9nwxnEjEi+74C4Thbg==";
+      };
+    };
+    "iconv-lite-0.4.24" = {
+      name = "iconv-lite";
+      packageName = "iconv-lite";
+      version = "0.4.24";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz";
+        sha512 = "v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==";
+      };
+    };
+    "iconv-lite-0.6.3" = {
+      name = "iconv-lite";
+      packageName = "iconv-lite";
+      version = "0.6.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz";
+        sha512 = "4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==";
+      };
+    };
+    "icss-utils-5.1.0" = {
+      name = "icss-utils";
+      packageName = "icss-utils";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz";
+        sha512 = "soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==";
+      };
+    };
+    "idb-7.1.0" = {
+      name = "idb";
+      packageName = "idb";
+      version = "7.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/idb/-/idb-7.1.0.tgz";
+        sha512 = "Wsk07aAxDsntgYJY4h0knZJuTxM73eQ4reRAO+Z1liOh8eMCJ/MoDS8fCui1vGT9mnjtl1sOu3I2i/W1swPYZg==";
+      };
+    };
+    "identity-obj-proxy-3.0.0" = {
+      name = "identity-obj-proxy";
+      packageName = "identity-obj-proxy";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz";
+        sha512 = "00n6YnVHKrinT9t0d9+5yZC6UBNJANpYEQvL2LlX6Ab9lnmxzIRcEmTPuyGScvl1+jKuCICX1Z0Ab1pPKKdikA==";
+      };
+    };
+    "ignore-5.2.0" = {
+      name = "ignore";
+      packageName = "ignore";
+      version = "5.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz";
+        sha512 = "CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==";
+      };
+    };
+    "immer-9.0.15" = {
+      name = "immer";
+      packageName = "immer";
+      version = "9.0.15";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/immer/-/immer-9.0.15.tgz";
+        sha512 = "2eB/sswms9AEUSkOm4SbV5Y7Vmt/bKRwByd52jfLkW4OLYeaTP3EEiJ9agqU0O/tq6Dk62Zfj+TJSqfm1rLVGQ==";
+      };
+    };
+    "import-fresh-3.3.0" = {
+      name = "import-fresh";
+      packageName = "import-fresh";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz";
+        sha512 = "veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==";
+      };
+    };
+    "import-local-3.1.0" = {
+      name = "import-local";
+      packageName = "import-local";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz";
+        sha512 = "ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==";
+      };
+    };
+    "imurmurhash-0.1.4" = {
+      name = "imurmurhash";
+      packageName = "imurmurhash";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz";
+        sha512 = "JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==";
+      };
+    };
+    "inflight-1.0.6" = {
+      name = "inflight";
+      packageName = "inflight";
+      version = "1.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz";
+        sha512 = "k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==";
+      };
+    };
+    "inherits-2.0.3" = {
+      name = "inherits";
+      packageName = "inherits";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz";
+        sha512 = "x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==";
+      };
+    };
+    "inherits-2.0.4" = {
+      name = "inherits";
+      packageName = "inherits";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz";
+        sha512 = "k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==";
+      };
+    };
+    "ini-1.3.8" = {
+      name = "ini";
+      packageName = "ini";
+      version = "1.3.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz";
+        sha512 = "JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==";
+      };
+    };
+    "internal-slot-1.0.3" = {
+      name = "internal-slot";
+      packageName = "internal-slot";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz";
+        sha512 = "O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==";
+      };
+    };
+    "ipaddr.js-1.9.1" = {
+      name = "ipaddr.js";
+      packageName = "ipaddr.js";
+      version = "1.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz";
+        sha512 = "0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==";
+      };
+    };
+    "ipaddr.js-2.0.1" = {
+      name = "ipaddr.js";
+      packageName = "ipaddr.js";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz";
+        sha512 = "1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==";
+      };
+    };
+    "is-arrayish-0.2.1" = {
+      name = "is-arrayish";
+      packageName = "is-arrayish";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz";
+        sha512 = "zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==";
+      };
+    };
+    "is-bigint-1.0.4" = {
+      name = "is-bigint";
+      packageName = "is-bigint";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz";
+        sha512 = "zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==";
+      };
+    };
+    "is-binary-path-2.1.0" = {
+      name = "is-binary-path";
+      packageName = "is-binary-path";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz";
+        sha512 = "ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==";
+      };
+    };
+    "is-boolean-object-1.1.2" = {
+      name = "is-boolean-object";
+      packageName = "is-boolean-object";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz";
+        sha512 = "gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==";
+      };
+    };
+    "is-callable-1.2.7" = {
+      name = "is-callable";
+      packageName = "is-callable";
+      version = "1.2.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz";
+        sha512 = "1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==";
+      };
+    };
+    "is-core-module-2.10.0" = {
+      name = "is-core-module";
+      packageName = "is-core-module";
+      version = "2.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz";
+        sha512 = "Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==";
+      };
+    };
+    "is-date-object-1.0.5" = {
+      name = "is-date-object";
+      packageName = "is-date-object";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz";
+        sha512 = "9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==";
+      };
+    };
+    "is-docker-2.2.1" = {
+      name = "is-docker";
+      packageName = "is-docker";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz";
+        sha512 = "F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==";
+      };
+    };
+    "is-extglob-2.1.1" = {
+      name = "is-extglob";
+      packageName = "is-extglob";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz";
+        sha512 = "SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==";
+      };
+    };
+    "is-fullwidth-code-point-3.0.0" = {
+      name = "is-fullwidth-code-point";
+      packageName = "is-fullwidth-code-point";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz";
+        sha512 = "zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==";
+      };
+    };
+    "is-generator-fn-2.1.0" = {
+      name = "is-generator-fn";
+      packageName = "is-generator-fn";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz";
+        sha512 = "cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==";
+      };
+    };
+    "is-glob-4.0.3" = {
+      name = "is-glob";
+      packageName = "is-glob";
+      version = "4.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz";
+        sha512 = "xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==";
+      };
+    };
+    "is-module-1.0.0" = {
+      name = "is-module";
+      packageName = "is-module";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz";
+        sha512 = "51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==";
+      };
+    };
+    "is-negative-zero-2.0.2" = {
+      name = "is-negative-zero";
+      packageName = "is-negative-zero";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz";
+        sha512 = "dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==";
+      };
+    };
+    "is-number-7.0.0" = {
+      name = "is-number";
+      packageName = "is-number";
+      version = "7.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz";
+        sha512 = "41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==";
+      };
+    };
+    "is-number-object-1.0.7" = {
+      name = "is-number-object";
+      packageName = "is-number-object";
+      version = "1.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz";
+        sha512 = "k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==";
+      };
+    };
+    "is-obj-1.0.1" = {
+      name = "is-obj";
+      packageName = "is-obj";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz";
+        sha512 = "l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==";
+      };
+    };
+    "is-plain-obj-3.0.0" = {
+      name = "is-plain-obj";
+      packageName = "is-plain-obj";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz";
+        sha512 = "gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==";
+      };
+    };
+    "is-potential-custom-element-name-1.0.1" = {
+      name = "is-potential-custom-element-name";
+      packageName = "is-potential-custom-element-name";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz";
+        sha512 = "bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==";
+      };
+    };
+    "is-regex-1.1.4" = {
+      name = "is-regex";
+      packageName = "is-regex";
+      version = "1.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz";
+        sha512 = "kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==";
+      };
+    };
+    "is-regexp-1.0.0" = {
+      name = "is-regexp";
+      packageName = "is-regexp";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz";
+        sha512 = "7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==";
+      };
+    };
+    "is-root-2.1.0" = {
+      name = "is-root";
+      packageName = "is-root";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz";
+        sha512 = "AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==";
+      };
+    };
+    "is-shared-array-buffer-1.0.2" = {
+      name = "is-shared-array-buffer";
+      packageName = "is-shared-array-buffer";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz";
+        sha512 = "sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==";
+      };
+    };
+    "is-stream-2.0.1" = {
+      name = "is-stream";
+      packageName = "is-stream";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz";
+        sha512 = "hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==";
+      };
+    };
+    "is-string-1.0.7" = {
+      name = "is-string";
+      packageName = "is-string";
+      version = "1.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz";
+        sha512 = "tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==";
+      };
+    };
+    "is-symbol-1.0.4" = {
+      name = "is-symbol";
+      packageName = "is-symbol";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz";
+        sha512 = "C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==";
+      };
+    };
+    "is-typedarray-1.0.0" = {
+      name = "is-typedarray";
+      packageName = "is-typedarray";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz";
+        sha512 = "cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==";
+      };
+    };
+    "is-weakref-1.0.2" = {
+      name = "is-weakref";
+      packageName = "is-weakref";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz";
+        sha512 = "qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==";
+      };
+    };
+    "is-wsl-2.2.0" = {
+      name = "is-wsl";
+      packageName = "is-wsl";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz";
+        sha512 = "fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==";
+      };
+    };
+    "isarray-1.0.0" = {
+      name = "isarray";
+      packageName = "isarray";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz";
+        sha512 = "VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==";
+      };
+    };
+    "isexe-2.0.0" = {
+      name = "isexe";
+      packageName = "isexe";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz";
+        sha512 = "RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==";
+      };
+    };
+    "istanbul-lib-coverage-3.2.0" = {
+      name = "istanbul-lib-coverage";
+      packageName = "istanbul-lib-coverage";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz";
+        sha512 = "eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==";
+      };
+    };
+    "istanbul-lib-instrument-5.2.0" = {
+      name = "istanbul-lib-instrument";
+      packageName = "istanbul-lib-instrument";
+      version = "5.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz";
+        sha512 = "6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==";
+      };
+    };
+    "istanbul-lib-report-3.0.0" = {
+      name = "istanbul-lib-report";
+      packageName = "istanbul-lib-report";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz";
+        sha512 = "wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==";
+      };
+    };
+    "istanbul-lib-source-maps-4.0.1" = {
+      name = "istanbul-lib-source-maps";
+      packageName = "istanbul-lib-source-maps";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz";
+        sha512 = "n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==";
+      };
+    };
+    "istanbul-reports-3.1.5" = {
+      name = "istanbul-reports";
+      packageName = "istanbul-reports";
+      version = "3.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz";
+        sha512 = "nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==";
+      };
+    };
+    "jake-10.8.5" = {
+      name = "jake";
+      packageName = "jake";
+      version = "10.8.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jake/-/jake-10.8.5.tgz";
+        sha512 = "sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw==";
+      };
+    };
+    "jest-27.5.1" = {
+      name = "jest";
+      packageName = "jest";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz";
+        sha512 = "Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==";
+      };
+    };
+    "jest-changed-files-27.5.1" = {
+      name = "jest-changed-files";
+      packageName = "jest-changed-files";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz";
+        sha512 = "buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==";
+      };
+    };
+    "jest-circus-27.5.1" = {
+      name = "jest-circus";
+      packageName = "jest-circus";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz";
+        sha512 = "D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==";
+      };
+    };
+    "jest-cli-27.5.1" = {
+      name = "jest-cli";
+      packageName = "jest-cli";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz";
+        sha512 = "Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==";
+      };
+    };
+    "jest-config-27.5.1" = {
+      name = "jest-config";
+      packageName = "jest-config";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz";
+        sha512 = "5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==";
+      };
+    };
+    "jest-diff-27.5.1" = {
+      name = "jest-diff";
+      packageName = "jest-diff";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz";
+        sha512 = "m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==";
+      };
+    };
+    "jest-docblock-27.5.1" = {
+      name = "jest-docblock";
+      packageName = "jest-docblock";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz";
+        sha512 = "rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==";
+      };
+    };
+    "jest-each-27.5.1" = {
+      name = "jest-each";
+      packageName = "jest-each";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz";
+        sha512 = "1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==";
+      };
+    };
+    "jest-environment-jsdom-27.5.1" = {
+      name = "jest-environment-jsdom";
+      packageName = "jest-environment-jsdom";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz";
+        sha512 = "TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==";
+      };
+    };
+    "jest-environment-node-27.5.1" = {
+      name = "jest-environment-node";
+      packageName = "jest-environment-node";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz";
+        sha512 = "Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==";
+      };
+    };
+    "jest-get-type-27.5.1" = {
+      name = "jest-get-type";
+      packageName = "jest-get-type";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz";
+        sha512 = "2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==";
+      };
+    };
+    "jest-haste-map-27.5.1" = {
+      name = "jest-haste-map";
+      packageName = "jest-haste-map";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz";
+        sha512 = "7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==";
+      };
+    };
+    "jest-jasmine2-27.5.1" = {
+      name = "jest-jasmine2";
+      packageName = "jest-jasmine2";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz";
+        sha512 = "jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==";
+      };
+    };
+    "jest-leak-detector-27.5.1" = {
+      name = "jest-leak-detector";
+      packageName = "jest-leak-detector";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz";
+        sha512 = "POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==";
+      };
+    };
+    "jest-matcher-utils-27.5.1" = {
+      name = "jest-matcher-utils";
+      packageName = "jest-matcher-utils";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz";
+        sha512 = "z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==";
+      };
+    };
+    "jest-message-util-27.5.1" = {
+      name = "jest-message-util";
+      packageName = "jest-message-util";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz";
+        sha512 = "rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==";
+      };
+    };
+    "jest-message-util-28.1.3" = {
+      name = "jest-message-util";
+      packageName = "jest-message-util";
+      version = "28.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz";
+        sha512 = "PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==";
+      };
+    };
+    "jest-mock-27.5.1" = {
+      name = "jest-mock";
+      packageName = "jest-mock";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz";
+        sha512 = "K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==";
+      };
+    };
+    "jest-pnp-resolver-1.2.2" = {
+      name = "jest-pnp-resolver";
+      packageName = "jest-pnp-resolver";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz";
+        sha512 = "olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==";
+      };
+    };
+    "jest-regex-util-27.5.1" = {
+      name = "jest-regex-util";
+      packageName = "jest-regex-util";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz";
+        sha512 = "4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==";
+      };
+    };
+    "jest-regex-util-28.0.2" = {
+      name = "jest-regex-util";
+      packageName = "jest-regex-util";
+      version = "28.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-28.0.2.tgz";
+        sha512 = "4s0IgyNIy0y9FK+cjoVYoxamT7Zeo7MhzqRGx7YDYmaQn1wucY9rotiGkBzzcMXTtjrCAP/f7f+E0F7+fxPNdw==";
+      };
+    };
+    "jest-resolve-27.5.1" = {
+      name = "jest-resolve";
+      packageName = "jest-resolve";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz";
+        sha512 = "FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==";
+      };
+    };
+    "jest-resolve-dependencies-27.5.1" = {
+      name = "jest-resolve-dependencies";
+      packageName = "jest-resolve-dependencies";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz";
+        sha512 = "QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==";
+      };
+    };
+    "jest-runner-27.5.1" = {
+      name = "jest-runner";
+      packageName = "jest-runner";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz";
+        sha512 = "g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==";
+      };
+    };
+    "jest-runtime-27.5.1" = {
+      name = "jest-runtime";
+      packageName = "jest-runtime";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz";
+        sha512 = "o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==";
+      };
+    };
+    "jest-serializer-27.5.1" = {
+      name = "jest-serializer";
+      packageName = "jest-serializer";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz";
+        sha512 = "jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==";
+      };
+    };
+    "jest-snapshot-27.5.1" = {
+      name = "jest-snapshot";
+      packageName = "jest-snapshot";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz";
+        sha512 = "yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==";
+      };
+    };
+    "jest-util-27.5.1" = {
+      name = "jest-util";
+      packageName = "jest-util";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz";
+        sha512 = "Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==";
+      };
+    };
+    "jest-util-28.1.3" = {
+      name = "jest-util";
+      packageName = "jest-util";
+      version = "28.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz";
+        sha512 = "XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==";
+      };
+    };
+    "jest-validate-27.5.1" = {
+      name = "jest-validate";
+      packageName = "jest-validate";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz";
+        sha512 = "thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==";
+      };
+    };
+    "jest-watch-typeahead-1.1.0" = {
+      name = "jest-watch-typeahead";
+      packageName = "jest-watch-typeahead";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-watch-typeahead/-/jest-watch-typeahead-1.1.0.tgz";
+        sha512 = "Va5nLSJTN7YFtC2jd+7wsoe1pNe5K4ShLux/E5iHEwlB9AxaxmggY7to9KUqKojhaJw3aXqt5WAb4jGPOolpEw==";
+      };
+    };
+    "jest-watcher-27.5.1" = {
+      name = "jest-watcher";
+      packageName = "jest-watcher";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz";
+        sha512 = "z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==";
+      };
+    };
+    "jest-watcher-28.1.3" = {
+      name = "jest-watcher";
+      packageName = "jest-watcher";
+      version = "28.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-watcher/-/jest-watcher-28.1.3.tgz";
+        sha512 = "t4qcqj9hze+jviFPUN3YAtAEeFnr/azITXQEMARf5cMwKY2SMBRnCQTXLixTl20OR6mLh9KLMrgVJgJISym+1g==";
+      };
+    };
+    "jest-worker-26.6.2" = {
+      name = "jest-worker";
+      packageName = "jest-worker";
+      version = "26.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz";
+        sha512 = "KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==";
+      };
+    };
+    "jest-worker-27.5.1" = {
+      name = "jest-worker";
+      packageName = "jest-worker";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz";
+        sha512 = "7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==";
+      };
+    };
+    "jest-worker-28.1.3" = {
+      name = "jest-worker";
+      packageName = "jest-worker";
+      version = "28.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-worker/-/jest-worker-28.1.3.tgz";
+        sha512 = "CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==";
+      };
+    };
+    "js-base64-3.7.2" = {
+      name = "js-base64";
+      packageName = "js-base64";
+      version = "3.7.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/js-base64/-/js-base64-3.7.2.tgz";
+        sha512 = "NnRs6dsyqUXejqk/yv2aiXlAvOs56sLkX6nUdeaNezI5LFFLlsZjOThmwnrcwh5ZZRwZlCMnVAY3CvhIhoVEKQ==";
+      };
+    };
+    "js-sdsl-4.1.4" = {
+      name = "js-sdsl";
+      packageName = "js-sdsl";
+      version = "4.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.1.4.tgz";
+        sha512 = "Y2/yD55y5jteOAmY50JbUZYwk3CP3wnLPEZnlR1w9oKhITrBEtAxwuWKebFf8hMrPMgbYwFoWK/lH2sBkErELw==";
+      };
+    };
+    "js-tokens-4.0.0" = {
+      name = "js-tokens";
+      packageName = "js-tokens";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz";
+        sha512 = "RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==";
+      };
+    };
+    "js-yaml-3.14.1" = {
+      name = "js-yaml";
+      packageName = "js-yaml";
+      version = "3.14.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz";
+        sha512 = "okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==";
+      };
+    };
+    "js-yaml-4.1.0" = {
+      name = "js-yaml";
+      packageName = "js-yaml";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz";
+        sha512 = "wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==";
+      };
+    };
+    "jsdom-16.7.0" = {
+      name = "jsdom";
+      packageName = "jsdom";
+      version = "16.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz";
+        sha512 = "u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==";
+      };
+    };
+    "jsesc-0.5.0" = {
+      name = "jsesc";
+      packageName = "jsesc";
+      version = "0.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz";
+        sha512 = "uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==";
+      };
+    };
+    "jsesc-2.5.2" = {
+      name = "jsesc";
+      packageName = "jsesc";
+      version = "2.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz";
+        sha512 = "OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==";
+      };
+    };
+    "json-parse-even-better-errors-2.3.1" = {
+      name = "json-parse-even-better-errors";
+      packageName = "json-parse-even-better-errors";
+      version = "2.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz";
+        sha512 = "xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==";
+      };
+    };
+    "json-schema-0.4.0" = {
+      name = "json-schema";
+      packageName = "json-schema";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz";
+        sha512 = "es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==";
+      };
+    };
+    "json-schema-traverse-0.4.1" = {
+      name = "json-schema-traverse";
+      packageName = "json-schema-traverse";
+      version = "0.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz";
+        sha512 = "xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==";
+      };
+    };
+    "json-schema-traverse-1.0.0" = {
+      name = "json-schema-traverse";
+      packageName = "json-schema-traverse";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz";
+        sha512 = "NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==";
+      };
+    };
+    "json-stable-stringify-without-jsonify-1.0.1" = {
+      name = "json-stable-stringify-without-jsonify";
+      packageName = "json-stable-stringify-without-jsonify";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz";
+        sha512 = "Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==";
+      };
+    };
+    "json5-1.0.1" = {
+      name = "json5";
+      packageName = "json5";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz";
+        sha512 = "aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==";
+      };
+    };
+    "json5-2.2.1" = {
+      name = "json5";
+      packageName = "json5";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz";
+        sha512 = "1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==";
+      };
+    };
+    "jsonfile-6.1.0" = {
+      name = "jsonfile";
+      packageName = "jsonfile";
+      version = "6.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz";
+        sha512 = "5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==";
+      };
+    };
+    "jsonpointer-5.0.1" = {
+      name = "jsonpointer";
+      packageName = "jsonpointer";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsonpointer/-/jsonpointer-5.0.1.tgz";
+        sha512 = "p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==";
+      };
+    };
+    "jsx-ast-utils-3.3.3" = {
+      name = "jsx-ast-utils";
+      packageName = "jsx-ast-utils";
+      version = "3.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz";
+        sha512 = "fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==";
+      };
+    };
+    "kind-of-6.0.3" = {
+      name = "kind-of";
+      packageName = "kind-of";
+      version = "6.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz";
+        sha512 = "dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==";
+      };
+    };
+    "kleur-3.0.3" = {
+      name = "kleur";
+      packageName = "kleur";
+      version = "3.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz";
+        sha512 = "eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==";
+      };
+    };
+    "klona-2.0.5" = {
+      name = "klona";
+      packageName = "klona";
+      version = "2.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz";
+        sha512 = "pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==";
+      };
+    };
+    "language-subtag-registry-0.3.22" = {
+      name = "language-subtag-registry";
+      packageName = "language-subtag-registry";
+      version = "0.3.22";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz";
+        sha512 = "tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==";
+      };
+    };
+    "language-tags-1.0.5" = {
+      name = "language-tags";
+      packageName = "language-tags";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/language-tags/-/language-tags-1.0.5.tgz";
+        sha512 = "qJhlO9cGXi6hBGKoxEG/sKZDAHD5Hnu9Hs4WbOY3pCWXDhw0N8x1NenNzm2EnNLkLkk7J2SdxAkDSbb6ftT+UQ==";
+      };
+    };
+    "leven-3.1.0" = {
+      name = "leven";
+      packageName = "leven";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz";
+        sha512 = "qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==";
+      };
+    };
+    "levn-0.3.0" = {
+      name = "levn";
+      packageName = "levn";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz";
+        sha512 = "0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==";
+      };
+    };
+    "levn-0.4.1" = {
+      name = "levn";
+      packageName = "levn";
+      version = "0.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz";
+        sha512 = "+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==";
+      };
+    };
+    "lilconfig-2.0.6" = {
+      name = "lilconfig";
+      packageName = "lilconfig";
+      version = "2.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz";
+        sha512 = "9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==";
+      };
+    };
+    "lines-and-columns-1.2.4" = {
+      name = "lines-and-columns";
+      packageName = "lines-and-columns";
+      version = "1.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz";
+        sha512 = "7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==";
+      };
+    };
+    "loader-runner-4.3.0" = {
+      name = "loader-runner";
+      packageName = "loader-runner";
+      version = "4.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz";
+        sha512 = "3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==";
+      };
+    };
+    "loader-utils-2.0.2" = {
+      name = "loader-utils";
+      packageName = "loader-utils";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz";
+        sha512 = "TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==";
+      };
+    };
+    "loader-utils-3.2.0" = {
+      name = "loader-utils";
+      packageName = "loader-utils";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.0.tgz";
+        sha512 = "HVl9ZqccQihZ7JM85dco1MvO9G+ONvxoGa9rkhzFsneGLKSUg1gJf9bWzhRhcvm2qChhWpebQhP44qxjKIUCaQ==";
+      };
+    };
+    "locate-path-3.0.0" = {
+      name = "locate-path";
+      packageName = "locate-path";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz";
+        sha512 = "7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==";
+      };
+    };
+    "locate-path-5.0.0" = {
+      name = "locate-path";
+      packageName = "locate-path";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz";
+        sha512 = "t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==";
+      };
+    };
+    "locate-path-6.0.0" = {
+      name = "locate-path";
+      packageName = "locate-path";
+      version = "6.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz";
+        sha512 = "iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==";
+      };
+    };
+    "lodash-4.17.21" = {
+      name = "lodash";
+      packageName = "lodash";
+      version = "4.17.21";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz";
+        sha512 = "v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==";
+      };
+    };
+    "lodash.debounce-4.0.8" = {
+      name = "lodash.debounce";
+      packageName = "lodash.debounce";
+      version = "4.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz";
+        sha512 = "FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==";
+      };
+    };
+    "lodash.memoize-4.1.2" = {
+      name = "lodash.memoize";
+      packageName = "lodash.memoize";
+      version = "4.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz";
+        sha512 = "t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==";
+      };
+    };
+    "lodash.merge-4.6.2" = {
+      name = "lodash.merge";
+      packageName = "lodash.merge";
+      version = "4.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz";
+        sha512 = "0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==";
+      };
+    };
+    "lodash.sortby-4.7.0" = {
+      name = "lodash.sortby";
+      packageName = "lodash.sortby";
+      version = "4.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz";
+        sha512 = "HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==";
+      };
+    };
+    "lodash.uniq-4.5.0" = {
+      name = "lodash.uniq";
+      packageName = "lodash.uniq";
+      version = "4.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz";
+        sha512 = "xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==";
+      };
+    };
+    "loose-envify-1.4.0" = {
+      name = "loose-envify";
+      packageName = "loose-envify";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz";
+        sha512 = "lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==";
+      };
+    };
+    "lower-case-2.0.2" = {
+      name = "lower-case";
+      packageName = "lower-case";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz";
+        sha512 = "7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==";
+      };
+    };
+    "lru-cache-6.0.0" = {
+      name = "lru-cache";
+      packageName = "lru-cache";
+      version = "6.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz";
+        sha512 = "Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==";
+      };
+    };
+    "magic-string-0.25.9" = {
+      name = "magic-string";
+      packageName = "magic-string";
+      version = "0.25.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz";
+        sha512 = "RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==";
+      };
+    };
+    "make-dir-3.1.0" = {
+      name = "make-dir";
+      packageName = "make-dir";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz";
+        sha512 = "g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==";
+      };
+    };
+    "makeerror-1.0.12" = {
+      name = "makeerror";
+      packageName = "makeerror";
+      version = "1.0.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz";
+        sha512 = "JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==";
+      };
+    };
+    "mdn-data-2.0.14" = {
+      name = "mdn-data";
+      packageName = "mdn-data";
+      version = "2.0.14";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz";
+        sha512 = "dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==";
+      };
+    };
+    "mdn-data-2.0.4" = {
+      name = "mdn-data";
+      packageName = "mdn-data";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz";
+        sha512 = "iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==";
+      };
+    };
+    "media-typer-0.3.0" = {
+      name = "media-typer";
+      packageName = "media-typer";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz";
+        sha512 = "dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==";
+      };
+    };
+    "memfs-3.4.7" = {
+      name = "memfs";
+      packageName = "memfs";
+      version = "3.4.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/memfs/-/memfs-3.4.7.tgz";
+        sha512 = "ygaiUSNalBX85388uskeCyhSAoOSgzBbtVCr9jA2RROssFL9Q19/ZXFqS+2Th2sr1ewNIWgFdLzLC3Yl1Zv+lw==";
+      };
+    };
+    "merge-descriptors-1.0.1" = {
+      name = "merge-descriptors";
+      packageName = "merge-descriptors";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz";
+        sha512 = "cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==";
+      };
+    };
+    "merge-stream-2.0.0" = {
+      name = "merge-stream";
+      packageName = "merge-stream";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz";
+        sha512 = "abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==";
+      };
+    };
+    "merge2-1.4.1" = {
+      name = "merge2";
+      packageName = "merge2";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz";
+        sha512 = "8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==";
+      };
+    };
+    "methods-1.1.2" = {
+      name = "methods";
+      packageName = "methods";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz";
+        sha512 = "iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==";
+      };
+    };
+    "micromatch-4.0.5" = {
+      name = "micromatch";
+      packageName = "micromatch";
+      version = "4.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz";
+        sha512 = "DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==";
+      };
+    };
+    "mime-1.6.0" = {
+      name = "mime";
+      packageName = "mime";
+      version = "1.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz";
+        sha512 = "x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==";
+      };
+    };
+    "mime-db-1.52.0" = {
+      name = "mime-db";
+      packageName = "mime-db";
+      version = "1.52.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz";
+        sha512 = "sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==";
+      };
+    };
+    "mime-types-2.1.35" = {
+      name = "mime-types";
+      packageName = "mime-types";
+      version = "2.1.35";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz";
+        sha512 = "ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==";
+      };
+    };
+    "mimic-fn-2.1.0" = {
+      name = "mimic-fn";
+      packageName = "mimic-fn";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz";
+        sha512 = "OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==";
+      };
+    };
+    "mini-css-extract-plugin-2.6.1" = {
+      name = "mini-css-extract-plugin";
+      packageName = "mini-css-extract-plugin";
+      version = "2.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.6.1.tgz";
+        sha512 = "wd+SD57/K6DiV7jIR34P+s3uckTRuQvx0tKPcvjFlrEylk6P4mQ2KSWk1hblj1Kxaqok7LogKOieygXqBczNlg==";
+      };
+    };
+    "minimalistic-assert-1.0.1" = {
+      name = "minimalistic-assert";
+      packageName = "minimalistic-assert";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz";
+        sha512 = "UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==";
+      };
+    };
+    "minimatch-3.0.4" = {
+      name = "minimatch";
+      packageName = "minimatch";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz";
+        sha512 = "yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==";
+      };
+    };
+    "minimatch-3.1.2" = {
+      name = "minimatch";
+      packageName = "minimatch";
+      version = "3.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz";
+        sha512 = "J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==";
+      };
+    };
+    "minimatch-5.1.0" = {
+      name = "minimatch";
+      packageName = "minimatch";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz";
+        sha512 = "9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==";
+      };
+    };
+    "minimist-1.2.6" = {
+      name = "minimist";
+      packageName = "minimist";
+      version = "1.2.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz";
+        sha512 = "Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==";
+      };
+    };
+    "mkdirp-0.5.6" = {
+      name = "mkdirp";
+      packageName = "mkdirp";
+      version = "0.5.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz";
+        sha512 = "FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==";
+      };
+    };
+    "ms-2.0.0" = {
+      name = "ms";
+      packageName = "ms";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz";
+        sha512 = "Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==";
+      };
+    };
+    "ms-2.1.2" = {
+      name = "ms";
+      packageName = "ms";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz";
+        sha512 = "sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==";
+      };
+    };
+    "ms-2.1.3" = {
+      name = "ms";
+      packageName = "ms";
+      version = "2.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz";
+        sha512 = "6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==";
+      };
+    };
+    "multicast-dns-7.2.5" = {
+      name = "multicast-dns";
+      packageName = "multicast-dns";
+      version = "7.2.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz";
+        sha512 = "2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==";
+      };
+    };
+    "nanoid-3.3.4" = {
+      name = "nanoid";
+      packageName = "nanoid";
+      version = "3.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz";
+        sha512 = "MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==";
+      };
+    };
+    "natural-compare-1.4.0" = {
+      name = "natural-compare";
+      packageName = "natural-compare";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz";
+        sha512 = "OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==";
+      };
+    };
+    "negotiator-0.6.3" = {
+      name = "negotiator";
+      packageName = "negotiator";
+      version = "0.6.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz";
+        sha512 = "+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==";
+      };
+    };
+    "neo-async-2.6.2" = {
+      name = "neo-async";
+      packageName = "neo-async";
+      version = "2.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz";
+        sha512 = "Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==";
+      };
+    };
+    "no-case-3.0.4" = {
+      name = "no-case";
+      packageName = "no-case";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz";
+        sha512 = "fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==";
+      };
+    };
+    "node-fetch-2.6.7" = {
+      name = "node-fetch";
+      packageName = "node-fetch";
+      version = "2.6.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz";
+        sha512 = "ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==";
+      };
+    };
+    "node-forge-1.3.1" = {
+      name = "node-forge";
+      packageName = "node-forge";
+      version = "1.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz";
+        sha512 = "dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==";
+      };
+    };
+    "node-int64-0.4.0" = {
+      name = "node-int64";
+      packageName = "node-int64";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz";
+        sha512 = "O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==";
+      };
+    };
+    "node-releases-2.0.6" = {
+      name = "node-releases";
+      packageName = "node-releases";
+      version = "2.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz";
+        sha512 = "PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==";
+      };
+    };
+    "normalize-path-3.0.0" = {
+      name = "normalize-path";
+      packageName = "normalize-path";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz";
+        sha512 = "6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==";
+      };
+    };
+    "normalize-range-0.1.2" = {
+      name = "normalize-range";
+      packageName = "normalize-range";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz";
+        sha512 = "bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==";
+      };
+    };
+    "normalize-url-6.1.0" = {
+      name = "normalize-url";
+      packageName = "normalize-url";
+      version = "6.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz";
+        sha512 = "DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==";
+      };
+    };
+    "npm-run-path-4.0.1" = {
+      name = "npm-run-path";
+      packageName = "npm-run-path";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz";
+        sha512 = "S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==";
+      };
+    };
+    "nth-check-1.0.2" = {
+      name = "nth-check";
+      packageName = "nth-check";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz";
+        sha512 = "WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==";
+      };
+    };
+    "nth-check-2.1.1" = {
+      name = "nth-check";
+      packageName = "nth-check";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz";
+        sha512 = "lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==";
+      };
+    };
+    "nwsapi-2.2.2" = {
+      name = "nwsapi";
+      packageName = "nwsapi";
+      version = "2.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz";
+        sha512 = "90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==";
+      };
+    };
+    "object-assign-4.1.1" = {
+      name = "object-assign";
+      packageName = "object-assign";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz";
+        sha512 = "rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==";
+      };
+    };
+    "object-hash-3.0.0" = {
+      name = "object-hash";
+      packageName = "object-hash";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz";
+        sha512 = "RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==";
+      };
+    };
+    "object-inspect-1.12.2" = {
+      name = "object-inspect";
+      packageName = "object-inspect";
+      version = "1.12.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz";
+        sha512 = "z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==";
+      };
+    };
+    "object-keys-1.1.1" = {
+      name = "object-keys";
+      packageName = "object-keys";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz";
+        sha512 = "NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==";
+      };
+    };
+    "object.assign-4.1.4" = {
+      name = "object.assign";
+      packageName = "object.assign";
+      version = "4.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz";
+        sha512 = "1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==";
+      };
+    };
+    "object.entries-1.1.5" = {
+      name = "object.entries";
+      packageName = "object.entries";
+      version = "1.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object.entries/-/object.entries-1.1.5.tgz";
+        sha512 = "TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g==";
+      };
+    };
+    "object.fromentries-2.0.5" = {
+      name = "object.fromentries";
+      packageName = "object.fromentries";
+      version = "2.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.5.tgz";
+        sha512 = "CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw==";
+      };
+    };
+    "object.getownpropertydescriptors-2.1.4" = {
+      name = "object.getownpropertydescriptors";
+      packageName = "object.getownpropertydescriptors";
+      version = "2.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.4.tgz";
+        sha512 = "sccv3L/pMModT6dJAYF3fzGMVcb38ysQ0tEE6ixv2yXJDtEIPph268OlAdJj5/qZMZDq2g/jqvwppt36uS/uQQ==";
+      };
+    };
+    "object.hasown-1.1.1" = {
+      name = "object.hasown";
+      packageName = "object.hasown";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.1.tgz";
+        sha512 = "LYLe4tivNQzq4JdaWW6WO3HMZZJWzkkH8fnI6EebWl0VZth2wL2Lovm74ep2/gZzlaTdV62JZHEqHQ2yVn8Q/A==";
+      };
+    };
+    "object.values-1.1.5" = {
+      name = "object.values";
+      packageName = "object.values";
+      version = "1.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz";
+        sha512 = "QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==";
+      };
+    };
+    "obuf-1.1.2" = {
+      name = "obuf";
+      packageName = "obuf";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz";
+        sha512 = "PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==";
+      };
+    };
+    "on-finished-2.4.1" = {
+      name = "on-finished";
+      packageName = "on-finished";
+      version = "2.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz";
+        sha512 = "oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==";
+      };
+    };
+    "on-headers-1.0.2" = {
+      name = "on-headers";
+      packageName = "on-headers";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz";
+        sha512 = "pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==";
+      };
+    };
+    "once-1.4.0" = {
+      name = "once";
+      packageName = "once";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/once/-/once-1.4.0.tgz";
+        sha512 = "lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==";
+      };
+    };
+    "onetime-5.1.2" = {
+      name = "onetime";
+      packageName = "onetime";
+      version = "5.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz";
+        sha512 = "kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==";
+      };
+    };
+    "open-8.4.0" = {
+      name = "open";
+      packageName = "open";
+      version = "8.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/open/-/open-8.4.0.tgz";
+        sha512 = "XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==";
+      };
+    };
+    "optionator-0.8.3" = {
+      name = "optionator";
+      packageName = "optionator";
+      version = "0.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz";
+        sha512 = "+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==";
+      };
+    };
+    "optionator-0.9.1" = {
+      name = "optionator";
+      packageName = "optionator";
+      version = "0.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz";
+        sha512 = "74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==";
+      };
+    };
+    "p-limit-2.3.0" = {
+      name = "p-limit";
+      packageName = "p-limit";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz";
+        sha512 = "//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==";
+      };
+    };
+    "p-limit-3.1.0" = {
+      name = "p-limit";
+      packageName = "p-limit";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz";
+        sha512 = "TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==";
+      };
+    };
+    "p-locate-3.0.0" = {
+      name = "p-locate";
+      packageName = "p-locate";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz";
+        sha512 = "x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==";
+      };
+    };
+    "p-locate-4.1.0" = {
+      name = "p-locate";
+      packageName = "p-locate";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz";
+        sha512 = "R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==";
+      };
+    };
+    "p-locate-5.0.0" = {
+      name = "p-locate";
+      packageName = "p-locate";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz";
+        sha512 = "LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==";
+      };
+    };
+    "p-retry-4.6.2" = {
+      name = "p-retry";
+      packageName = "p-retry";
+      version = "4.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz";
+        sha512 = "312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==";
+      };
+    };
+    "p-try-2.2.0" = {
+      name = "p-try";
+      packageName = "p-try";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz";
+        sha512 = "R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==";
+      };
+    };
+    "param-case-3.0.4" = {
+      name = "param-case";
+      packageName = "param-case";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz";
+        sha512 = "RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==";
+      };
+    };
+    "parent-module-1.0.1" = {
+      name = "parent-module";
+      packageName = "parent-module";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz";
+        sha512 = "GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==";
+      };
+    };
+    "parse-json-5.2.0" = {
+      name = "parse-json";
+      packageName = "parse-json";
+      version = "5.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz";
+        sha512 = "ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==";
+      };
+    };
+    "parse5-6.0.1" = {
+      name = "parse5";
+      packageName = "parse5";
+      version = "6.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz";
+        sha512 = "Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==";
+      };
+    };
+    "parseurl-1.3.3" = {
+      name = "parseurl";
+      packageName = "parseurl";
+      version = "1.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz";
+        sha512 = "CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==";
+      };
+    };
+    "pascal-case-3.1.2" = {
+      name = "pascal-case";
+      packageName = "pascal-case";
+      version = "3.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz";
+        sha512 = "uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==";
+      };
+    };
+    "path-exists-3.0.0" = {
+      name = "path-exists";
+      packageName = "path-exists";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz";
+        sha512 = "bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==";
+      };
+    };
+    "path-exists-4.0.0" = {
+      name = "path-exists";
+      packageName = "path-exists";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz";
+        sha512 = "ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==";
+      };
+    };
+    "path-is-absolute-1.0.1" = {
+      name = "path-is-absolute";
+      packageName = "path-is-absolute";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz";
+        sha512 = "AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==";
+      };
+    };
+    "path-key-3.1.1" = {
+      name = "path-key";
+      packageName = "path-key";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz";
+        sha512 = "ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==";
+      };
+    };
+    "path-parse-1.0.7" = {
+      name = "path-parse";
+      packageName = "path-parse";
+      version = "1.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz";
+        sha512 = "LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==";
+      };
+    };
+    "path-to-regexp-0.1.7" = {
+      name = "path-to-regexp";
+      packageName = "path-to-regexp";
+      version = "0.1.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz";
+        sha512 = "5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==";
+      };
+    };
+    "path-type-4.0.0" = {
+      name = "path-type";
+      packageName = "path-type";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz";
+        sha512 = "gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==";
+      };
+    };
+    "performance-now-2.1.0" = {
+      name = "performance-now";
+      packageName = "performance-now";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz";
+        sha512 = "7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==";
+      };
+    };
+    "picocolors-0.2.1" = {
+      name = "picocolors";
+      packageName = "picocolors";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz";
+        sha512 = "cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==";
+      };
+    };
+    "picocolors-1.0.0" = {
+      name = "picocolors";
+      packageName = "picocolors";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz";
+        sha512 = "1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==";
+      };
+    };
+    "picomatch-2.3.1" = {
+      name = "picomatch";
+      packageName = "picomatch";
+      version = "2.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz";
+        sha512 = "JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==";
+      };
+    };
+    "pify-2.3.0" = {
+      name = "pify";
+      packageName = "pify";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz";
+        sha512 = "udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==";
+      };
+    };
+    "pirates-4.0.5" = {
+      name = "pirates";
+      packageName = "pirates";
+      version = "4.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz";
+        sha512 = "8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==";
+      };
+    };
+    "pkg-dir-4.2.0" = {
+      name = "pkg-dir";
+      packageName = "pkg-dir";
+      version = "4.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz";
+        sha512 = "HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==";
+      };
+    };
+    "pkg-up-3.1.0" = {
+      name = "pkg-up";
+      packageName = "pkg-up";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz";
+        sha512 = "nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==";
+      };
+    };
+    "postcss-7.0.39" = {
+      name = "postcss";
+      packageName = "postcss";
+      version = "7.0.39";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz";
+        sha512 = "yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==";
+      };
+    };
+    "postcss-8.4.16" = {
+      name = "postcss";
+      packageName = "postcss";
+      version = "8.4.16";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz";
+        sha512 = "ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==";
+      };
+    };
+    "postcss-attribute-case-insensitive-5.0.2" = {
+      name = "postcss-attribute-case-insensitive";
+      packageName = "postcss-attribute-case-insensitive";
+      version = "5.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.2.tgz";
+        sha512 = "XIidXV8fDr0kKt28vqki84fRK8VW8eTuIa4PChv2MqKuT6C9UjmSKzen6KaWhWEoYvwxFCa7n/tC1SZ3tyq4SQ==";
+      };
+    };
+    "postcss-browser-comments-4.0.0" = {
+      name = "postcss-browser-comments";
+      packageName = "postcss-browser-comments";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-browser-comments/-/postcss-browser-comments-4.0.0.tgz";
+        sha512 = "X9X9/WN3KIvY9+hNERUqX9gncsgBA25XaeR+jshHz2j8+sYyHktHw1JdKuMjeLpGktXidqDhA7b/qm1mrBDmgg==";
+      };
+    };
+    "postcss-calc-8.2.4" = {
+      name = "postcss-calc";
+      packageName = "postcss-calc";
+      version = "8.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz";
+        sha512 = "SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==";
+      };
+    };
+    "postcss-clamp-4.1.0" = {
+      name = "postcss-clamp";
+      packageName = "postcss-clamp";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-clamp/-/postcss-clamp-4.1.0.tgz";
+        sha512 = "ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==";
+      };
+    };
+    "postcss-color-functional-notation-4.2.4" = {
+      name = "postcss-color-functional-notation";
+      packageName = "postcss-color-functional-notation";
+      version = "4.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-4.2.4.tgz";
+        sha512 = "2yrTAUZUab9s6CpxkxC4rVgFEVaR6/2Pipvi6qcgvnYiVqZcbDHEoBDhrXzyb7Efh2CCfHQNtcqWcIruDTIUeg==";
+      };
+    };
+    "postcss-color-hex-alpha-8.0.4" = {
+      name = "postcss-color-hex-alpha";
+      packageName = "postcss-color-hex-alpha";
+      version = "8.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-8.0.4.tgz";
+        sha512 = "nLo2DCRC9eE4w2JmuKgVA3fGL3d01kGq752pVALF68qpGLmx2Qrk91QTKkdUqqp45T1K1XV8IhQpcu1hoAQflQ==";
+      };
+    };
+    "postcss-color-rebeccapurple-7.1.1" = {
+      name = "postcss-color-rebeccapurple";
+      packageName = "postcss-color-rebeccapurple";
+      version = "7.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-7.1.1.tgz";
+        sha512 = "pGxkuVEInwLHgkNxUc4sdg4g3py7zUeCQ9sMfwyHAT+Ezk8a4OaaVZ8lIY5+oNqA/BXXgLyXv0+5wHP68R79hg==";
+      };
+    };
+    "postcss-colormin-5.3.0" = {
+      name = "postcss-colormin";
+      packageName = "postcss-colormin";
+      version = "5.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.0.tgz";
+        sha512 = "WdDO4gOFG2Z8n4P8TWBpshnL3JpmNmJwdnfP2gbk2qBA8PWwOYcmjmI/t3CmMeL72a7Hkd+x/Mg9O2/0rD54Pg==";
+      };
+    };
+    "postcss-convert-values-5.1.2" = {
+      name = "postcss-convert-values";
+      packageName = "postcss-convert-values";
+      version = "5.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.2.tgz";
+        sha512 = "c6Hzc4GAv95B7suy4udszX9Zy4ETyMCgFPUDtWjdFTKH1SE9eFY/jEpHSwTH1QPuwxHpWslhckUQWbNRM4ho5g==";
+      };
+    };
+    "postcss-custom-media-8.0.2" = {
+      name = "postcss-custom-media";
+      packageName = "postcss-custom-media";
+      version = "8.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-8.0.2.tgz";
+        sha512 = "7yi25vDAoHAkbhAzX9dHx2yc6ntS4jQvejrNcC+csQJAXjj15e7VcWfMgLqBNAbOvqi5uIa9huOVwdHbf+sKqg==";
+      };
+    };
+    "postcss-custom-properties-12.1.9" = {
+      name = "postcss-custom-properties";
+      packageName = "postcss-custom-properties";
+      version = "12.1.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-12.1.9.tgz";
+        sha512 = "/E7PRvK8DAVljBbeWrcEQJPG72jaImxF3vvCNFwv9cC8CzigVoNIpeyfnJzphnN3Fd8/auBf5wvkw6W9MfmTyg==";
+      };
+    };
+    "postcss-custom-selectors-6.0.3" = {
+      name = "postcss-custom-selectors";
+      packageName = "postcss-custom-selectors";
+      version = "6.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-6.0.3.tgz";
+        sha512 = "fgVkmyiWDwmD3JbpCmB45SvvlCD6z9CG6Ie6Iere22W5aHea6oWa7EM2bpnv2Fj3I94L3VbtvX9KqwSi5aFzSg==";
+      };
+    };
+    "postcss-dir-pseudo-class-6.0.5" = {
+      name = "postcss-dir-pseudo-class";
+      packageName = "postcss-dir-pseudo-class";
+      version = "6.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-6.0.5.tgz";
+        sha512 = "eqn4m70P031PF7ZQIvSgy9RSJ5uI2171O/OO/zcRNYpJbvaeKFUlar1aJ7rmgiQtbm0FSPsRewjpdS0Oew7MPA==";
+      };
+    };
+    "postcss-discard-comments-5.1.2" = {
+      name = "postcss-discard-comments";
+      packageName = "postcss-discard-comments";
+      version = "5.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz";
+        sha512 = "+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==";
+      };
+    };
+    "postcss-discard-duplicates-5.1.0" = {
+      name = "postcss-discard-duplicates";
+      packageName = "postcss-discard-duplicates";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz";
+        sha512 = "zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==";
+      };
+    };
+    "postcss-discard-empty-5.1.1" = {
+      name = "postcss-discard-empty";
+      packageName = "postcss-discard-empty";
+      version = "5.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz";
+        sha512 = "zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==";
+      };
+    };
+    "postcss-discard-overridden-5.1.0" = {
+      name = "postcss-discard-overridden";
+      packageName = "postcss-discard-overridden";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz";
+        sha512 = "21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==";
+      };
+    };
+    "postcss-double-position-gradients-3.1.2" = {
+      name = "postcss-double-position-gradients";
+      packageName = "postcss-double-position-gradients";
+      version = "3.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.2.tgz";
+        sha512 = "GX+FuE/uBR6eskOK+4vkXgT6pDkexLokPaz/AbJna9s5Kzp/yl488pKPjhy0obB475ovfT1Wv8ho7U/cHNaRgQ==";
+      };
+    };
+    "postcss-env-function-4.0.6" = {
+      name = "postcss-env-function";
+      packageName = "postcss-env-function";
+      version = "4.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-4.0.6.tgz";
+        sha512 = "kpA6FsLra+NqcFnL81TnsU+Z7orGtDTxcOhl6pwXeEq1yFPpRMkCDpHhrz8CFQDr/Wfm0jLiNQ1OsGGPjlqPwA==";
+      };
+    };
+    "postcss-flexbugs-fixes-5.0.2" = {
+      name = "postcss-flexbugs-fixes";
+      packageName = "postcss-flexbugs-fixes";
+      version = "5.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-5.0.2.tgz";
+        sha512 = "18f9voByak7bTktR2QgDveglpn9DTbBWPUzSOe9g0N4WR/2eSt6Vrcbf0hmspvMI6YWGywz6B9f7jzpFNJJgnQ==";
+      };
+    };
+    "postcss-focus-visible-6.0.4" = {
+      name = "postcss-focus-visible";
+      packageName = "postcss-focus-visible";
+      version = "6.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-6.0.4.tgz";
+        sha512 = "QcKuUU/dgNsstIK6HELFRT5Y3lbrMLEOwG+A4s5cA+fx3A3y/JTq3X9LaOj3OC3ALH0XqyrgQIgey/MIZ8Wczw==";
+      };
+    };
+    "postcss-focus-within-5.0.4" = {
+      name = "postcss-focus-within";
+      packageName = "postcss-focus-within";
+      version = "5.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-5.0.4.tgz";
+        sha512 = "vvjDN++C0mu8jz4af5d52CB184ogg/sSxAFS+oUJQq2SuCe7T5U2iIsVJtsCp2d6R4j0jr5+q3rPkBVZkXD9fQ==";
+      };
+    };
+    "postcss-font-variant-5.0.0" = {
+      name = "postcss-font-variant";
+      packageName = "postcss-font-variant";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz";
+        sha512 = "1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==";
+      };
+    };
+    "postcss-gap-properties-3.0.5" = {
+      name = "postcss-gap-properties";
+      packageName = "postcss-gap-properties";
+      version = "3.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-3.0.5.tgz";
+        sha512 = "IuE6gKSdoUNcvkGIqdtjtcMtZIFyXZhmFd5RUlg97iVEvp1BZKV5ngsAjCjrVy+14uhGBQl9tzmi1Qwq4kqVOg==";
+      };
+    };
+    "postcss-image-set-function-4.0.7" = {
+      name = "postcss-image-set-function";
+      packageName = "postcss-image-set-function";
+      version = "4.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-4.0.7.tgz";
+        sha512 = "9T2r9rsvYzm5ndsBE8WgtrMlIT7VbtTfE7b3BQnudUqnBcBo7L758oc+o+pdj/dUV0l5wjwSdjeOH2DZtfv8qw==";
+      };
+    };
+    "postcss-import-14.1.0" = {
+      name = "postcss-import";
+      packageName = "postcss-import";
+      version = "14.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz";
+        sha512 = "flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==";
+      };
+    };
+    "postcss-initial-4.0.1" = {
+      name = "postcss-initial";
+      packageName = "postcss-initial";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-initial/-/postcss-initial-4.0.1.tgz";
+        sha512 = "0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==";
+      };
+    };
+    "postcss-js-4.0.0" = {
+      name = "postcss-js";
+      packageName = "postcss-js";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz";
+        sha512 = "77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==";
+      };
+    };
+    "postcss-lab-function-4.2.1" = {
+      name = "postcss-lab-function";
+      packageName = "postcss-lab-function";
+      version = "4.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-4.2.1.tgz";
+        sha512 = "xuXll4isR03CrQsmxyz92LJB2xX9n+pZJ5jE9JgcnmsCammLyKdlzrBin+25dy6wIjfhJpKBAN80gsTlCgRk2w==";
+      };
+    };
+    "postcss-load-config-3.1.4" = {
+      name = "postcss-load-config";
+      packageName = "postcss-load-config";
+      version = "3.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz";
+        sha512 = "6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==";
+      };
+    };
+    "postcss-loader-6.2.1" = {
+      name = "postcss-loader";
+      packageName = "postcss-loader";
+      version = "6.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-loader/-/postcss-loader-6.2.1.tgz";
+        sha512 = "WbbYpmAaKcux/P66bZ40bpWsBucjx/TTgVVzRZ9yUO8yQfVBlameJ0ZGVaPfH64hNSBh63a+ICP5nqOpBA0w+Q==";
+      };
+    };
+    "postcss-logical-5.0.4" = {
+      name = "postcss-logical";
+      packageName = "postcss-logical";
+      version = "5.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-logical/-/postcss-logical-5.0.4.tgz";
+        sha512 = "RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==";
+      };
+    };
+    "postcss-media-minmax-5.0.0" = {
+      name = "postcss-media-minmax";
+      packageName = "postcss-media-minmax";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-5.0.0.tgz";
+        sha512 = "yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==";
+      };
+    };
+    "postcss-merge-longhand-5.1.6" = {
+      name = "postcss-merge-longhand";
+      packageName = "postcss-merge-longhand";
+      version = "5.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.6.tgz";
+        sha512 = "6C/UGF/3T5OE2CEbOuX7iNO63dnvqhGZeUnKkDeifebY0XqkkvrctYSZurpNE902LDf2yKwwPFgotnfSoPhQiw==";
+      };
+    };
+    "postcss-merge-rules-5.1.2" = {
+      name = "postcss-merge-rules";
+      packageName = "postcss-merge-rules";
+      version = "5.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.2.tgz";
+        sha512 = "zKMUlnw+zYCWoPN6yhPjtcEdlJaMUZ0WyVcxTAmw3lkkN/NDMRkOkiuctQEoWAOvH7twaxUUdvBWl0d4+hifRQ==";
+      };
+    };
+    "postcss-minify-font-values-5.1.0" = {
+      name = "postcss-minify-font-values";
+      packageName = "postcss-minify-font-values";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz";
+        sha512 = "el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==";
+      };
+    };
+    "postcss-minify-gradients-5.1.1" = {
+      name = "postcss-minify-gradients";
+      packageName = "postcss-minify-gradients";
+      version = "5.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz";
+        sha512 = "VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==";
+      };
+    };
+    "postcss-minify-params-5.1.3" = {
+      name = "postcss-minify-params";
+      packageName = "postcss-minify-params";
+      version = "5.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.3.tgz";
+        sha512 = "bkzpWcjykkqIujNL+EVEPOlLYi/eZ050oImVtHU7b4lFS82jPnsCb44gvC6pxaNt38Els3jWYDHTjHKf0koTgg==";
+      };
+    };
+    "postcss-minify-selectors-5.2.1" = {
+      name = "postcss-minify-selectors";
+      packageName = "postcss-minify-selectors";
+      version = "5.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz";
+        sha512 = "nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==";
+      };
+    };
+    "postcss-modules-extract-imports-3.0.0" = {
+      name = "postcss-modules-extract-imports";
+      packageName = "postcss-modules-extract-imports";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz";
+        sha512 = "bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==";
+      };
+    };
+    "postcss-modules-local-by-default-4.0.0" = {
+      name = "postcss-modules-local-by-default";
+      packageName = "postcss-modules-local-by-default";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz";
+        sha512 = "sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==";
+      };
+    };
+    "postcss-modules-scope-3.0.0" = {
+      name = "postcss-modules-scope";
+      packageName = "postcss-modules-scope";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz";
+        sha512 = "hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==";
+      };
+    };
+    "postcss-modules-values-4.0.0" = {
+      name = "postcss-modules-values";
+      packageName = "postcss-modules-values";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz";
+        sha512 = "RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==";
+      };
+    };
+    "postcss-nested-5.0.6" = {
+      name = "postcss-nested";
+      packageName = "postcss-nested";
+      version = "5.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-nested/-/postcss-nested-5.0.6.tgz";
+        sha512 = "rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==";
+      };
+    };
+    "postcss-nesting-10.2.0" = {
+      name = "postcss-nesting";
+      packageName = "postcss-nesting";
+      version = "10.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-10.2.0.tgz";
+        sha512 = "EwMkYchxiDiKUhlJGzWsD9b2zvq/r2SSubcRrgP+jujMXFzqvANLt16lJANC+5uZ6hjI7lpRmI6O8JIl+8l1KA==";
+      };
+    };
+    "postcss-normalize-10.0.1" = {
+      name = "postcss-normalize";
+      packageName = "postcss-normalize";
+      version = "10.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-normalize/-/postcss-normalize-10.0.1.tgz";
+        sha512 = "+5w18/rDev5mqERcG3W5GZNMJa1eoYYNGo8gB7tEwaos0ajk3ZXAI4mHGcNT47NE+ZnZD1pEpUOFLvltIwmeJA==";
+      };
+    };
+    "postcss-normalize-charset-5.1.0" = {
+      name = "postcss-normalize-charset";
+      packageName = "postcss-normalize-charset";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz";
+        sha512 = "mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==";
+      };
+    };
+    "postcss-normalize-display-values-5.1.0" = {
+      name = "postcss-normalize-display-values";
+      packageName = "postcss-normalize-display-values";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz";
+        sha512 = "WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==";
+      };
+    };
+    "postcss-normalize-positions-5.1.1" = {
+      name = "postcss-normalize-positions";
+      packageName = "postcss-normalize-positions";
+      version = "5.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz";
+        sha512 = "6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==";
+      };
+    };
+    "postcss-normalize-repeat-style-5.1.1" = {
+      name = "postcss-normalize-repeat-style";
+      packageName = "postcss-normalize-repeat-style";
+      version = "5.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz";
+        sha512 = "mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==";
+      };
+    };
+    "postcss-normalize-string-5.1.0" = {
+      name = "postcss-normalize-string";
+      packageName = "postcss-normalize-string";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz";
+        sha512 = "oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==";
+      };
+    };
+    "postcss-normalize-timing-functions-5.1.0" = {
+      name = "postcss-normalize-timing-functions";
+      packageName = "postcss-normalize-timing-functions";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz";
+        sha512 = "DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==";
+      };
+    };
+    "postcss-normalize-unicode-5.1.0" = {
+      name = "postcss-normalize-unicode";
+      packageName = "postcss-normalize-unicode";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.0.tgz";
+        sha512 = "J6M3MizAAZ2dOdSjy2caayJLQT8E8K9XjLce8AUQMwOrCvjCHv24aLC/Lps1R1ylOfol5VIDMaM/Lo9NGlk1SQ==";
+      };
+    };
+    "postcss-normalize-url-5.1.0" = {
+      name = "postcss-normalize-url";
+      packageName = "postcss-normalize-url";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz";
+        sha512 = "5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==";
+      };
+    };
+    "postcss-normalize-whitespace-5.1.1" = {
+      name = "postcss-normalize-whitespace";
+      packageName = "postcss-normalize-whitespace";
+      version = "5.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz";
+        sha512 = "83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==";
+      };
+    };
+    "postcss-opacity-percentage-1.1.2" = {
+      name = "postcss-opacity-percentage";
+      packageName = "postcss-opacity-percentage";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-opacity-percentage/-/postcss-opacity-percentage-1.1.2.tgz";
+        sha512 = "lyUfF7miG+yewZ8EAk9XUBIlrHyUE6fijnesuz+Mj5zrIHIEw6KcIZSOk/elVMqzLvREmXB83Zi/5QpNRYd47w==";
+      };
+    };
+    "postcss-ordered-values-5.1.3" = {
+      name = "postcss-ordered-values";
+      packageName = "postcss-ordered-values";
+      version = "5.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz";
+        sha512 = "9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==";
+      };
+    };
+    "postcss-overflow-shorthand-3.0.4" = {
+      name = "postcss-overflow-shorthand";
+      packageName = "postcss-overflow-shorthand";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-3.0.4.tgz";
+        sha512 = "otYl/ylHK8Y9bcBnPLo3foYFLL6a6Ak+3EQBPOTR7luMYCOsiVTUk1iLvNf6tVPNGXcoL9Hoz37kpfriRIFb4A==";
+      };
+    };
+    "postcss-page-break-3.0.4" = {
+      name = "postcss-page-break";
+      packageName = "postcss-page-break";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz";
+        sha512 = "1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==";
+      };
+    };
+    "postcss-place-7.0.5" = {
+      name = "postcss-place";
+      packageName = "postcss-place";
+      version = "7.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-place/-/postcss-place-7.0.5.tgz";
+        sha512 = "wR8igaZROA6Z4pv0d+bvVrvGY4GVHihBCBQieXFY3kuSuMyOmEnnfFzHl/tQuqHZkfkIVBEbDvYcFfHmpSet9g==";
+      };
+    };
+    "postcss-preset-env-7.8.2" = {
+      name = "postcss-preset-env";
+      packageName = "postcss-preset-env";
+      version = "7.8.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-7.8.2.tgz";
+        sha512 = "rSMUEaOCnovKnwc5LvBDHUDzpGP+nrUeWZGWt9M72fBvckCi45JmnJigUr4QG4zZeOHmOCNCZnd2LKDvP++ZuQ==";
+      };
+    };
+    "postcss-pseudo-class-any-link-7.1.6" = {
+      name = "postcss-pseudo-class-any-link";
+      packageName = "postcss-pseudo-class-any-link";
+      version = "7.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.6.tgz";
+        sha512 = "9sCtZkO6f/5ML9WcTLcIyV1yz9D1rf0tWc+ulKcvV30s0iZKS/ONyETvoWsr6vnrmW+X+KmuK3gV/w5EWnT37w==";
+      };
+    };
+    "postcss-reduce-initial-5.1.0" = {
+      name = "postcss-reduce-initial";
+      packageName = "postcss-reduce-initial";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.0.tgz";
+        sha512 = "5OgTUviz0aeH6MtBjHfbr57tml13PuedK/Ecg8szzd4XRMbYxH4572JFG067z+FqBIf6Zp/d+0581glkvvWMFw==";
+      };
+    };
+    "postcss-reduce-transforms-5.1.0" = {
+      name = "postcss-reduce-transforms";
+      packageName = "postcss-reduce-transforms";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz";
+        sha512 = "2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==";
+      };
+    };
+    "postcss-replace-overflow-wrap-4.0.0" = {
+      name = "postcss-replace-overflow-wrap";
+      packageName = "postcss-replace-overflow-wrap";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz";
+        sha512 = "KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==";
+      };
+    };
+    "postcss-selector-not-6.0.1" = {
+      name = "postcss-selector-not";
+      packageName = "postcss-selector-not";
+      version = "6.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-6.0.1.tgz";
+        sha512 = "1i9affjAe9xu/y9uqWH+tD4r6/hDaXJruk8xn2x1vzxC2U3J3LKO3zJW4CyxlNhA56pADJ/djpEwpH1RClI2rQ==";
+      };
+    };
+    "postcss-selector-parser-6.0.10" = {
+      name = "postcss-selector-parser";
+      packageName = "postcss-selector-parser";
+      version = "6.0.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz";
+        sha512 = "IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==";
+      };
+    };
+    "postcss-svgo-5.1.0" = {
+      name = "postcss-svgo";
+      packageName = "postcss-svgo";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz";
+        sha512 = "D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==";
+      };
+    };
+    "postcss-unique-selectors-5.1.1" = {
+      name = "postcss-unique-selectors";
+      packageName = "postcss-unique-selectors";
+      version = "5.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz";
+        sha512 = "5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==";
+      };
+    };
+    "postcss-value-parser-4.2.0" = {
+      name = "postcss-value-parser";
+      packageName = "postcss-value-parser";
+      version = "4.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz";
+        sha512 = "1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==";
+      };
+    };
+    "prelude-ls-1.1.2" = {
+      name = "prelude-ls";
+      packageName = "prelude-ls";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz";
+        sha512 = "ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==";
+      };
+    };
+    "prelude-ls-1.2.1" = {
+      name = "prelude-ls";
+      packageName = "prelude-ls";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz";
+        sha512 = "vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==";
+      };
+    };
+    "pretty-bytes-5.6.0" = {
+      name = "pretty-bytes";
+      packageName = "pretty-bytes";
+      version = "5.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz";
+        sha512 = "FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==";
+      };
+    };
+    "pretty-error-4.0.0" = {
+      name = "pretty-error";
+      packageName = "pretty-error";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pretty-error/-/pretty-error-4.0.0.tgz";
+        sha512 = "AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==";
+      };
+    };
+    "pretty-format-27.5.1" = {
+      name = "pretty-format";
+      packageName = "pretty-format";
+      version = "27.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz";
+        sha512 = "Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==";
+      };
+    };
+    "pretty-format-28.1.3" = {
+      name = "pretty-format";
+      packageName = "pretty-format";
+      version = "28.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz";
+        sha512 = "8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==";
+      };
+    };
+    "process-nextick-args-2.0.1" = {
+      name = "process-nextick-args";
+      packageName = "process-nextick-args";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz";
+        sha512 = "3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==";
+      };
+    };
+    "promise-8.2.0" = {
+      name = "promise";
+      packageName = "promise";
+      version = "8.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/promise/-/promise-8.2.0.tgz";
+        sha512 = "+CMAlLHqwRYwBMXKCP+o8ns7DN+xHDUiI+0nArsiJ9y+kJVPLFxEaSw6Ha9s9H0tftxg2Yzl25wqj9G7m5wLZg==";
+      };
+    };
+    "prompts-2.4.2" = {
+      name = "prompts";
+      packageName = "prompts";
+      version = "2.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz";
+        sha512 = "NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==";
+      };
+    };
+    "prop-types-15.8.1" = {
+      name = "prop-types";
+      packageName = "prop-types";
+      version = "15.8.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz";
+        sha512 = "oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==";
+      };
+    };
+    "proxy-addr-2.0.7" = {
+      name = "proxy-addr";
+      packageName = "proxy-addr";
+      version = "2.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz";
+        sha512 = "llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==";
+      };
+    };
+    "psl-1.9.0" = {
+      name = "psl";
+      packageName = "psl";
+      version = "1.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz";
+        sha512 = "E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==";
+      };
+    };
+    "punycode-2.1.1" = {
+      name = "punycode";
+      packageName = "punycode";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz";
+        sha512 = "XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==";
+      };
+    };
+    "q-1.5.1" = {
+      name = "q";
+      packageName = "q";
+      version = "1.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/q/-/q-1.5.1.tgz";
+        sha512 = "kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==";
+      };
+    };
+    "qs-6.10.3" = {
+      name = "qs";
+      packageName = "qs";
+      version = "6.10.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz";
+        sha512 = "wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==";
+      };
+    };
+    "querystringify-2.2.0" = {
+      name = "querystringify";
+      packageName = "querystringify";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz";
+        sha512 = "FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==";
+      };
+    };
+    "queue-microtask-1.2.3" = {
+      name = "queue-microtask";
+      packageName = "queue-microtask";
+      version = "1.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz";
+        sha512 = "NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==";
+      };
+    };
+    "quick-lru-5.1.1" = {
+      name = "quick-lru";
+      packageName = "quick-lru";
+      version = "5.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz";
+        sha512 = "WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==";
+      };
+    };
+    "raf-3.4.1" = {
+      name = "raf";
+      packageName = "raf";
+      version = "3.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz";
+        sha512 = "Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==";
+      };
+    };
+    "randombytes-2.1.0" = {
+      name = "randombytes";
+      packageName = "randombytes";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz";
+        sha512 = "vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==";
+      };
+    };
+    "range-parser-1.2.1" = {
+      name = "range-parser";
+      packageName = "range-parser";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz";
+        sha512 = "Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==";
+      };
+    };
+    "raw-body-2.5.1" = {
+      name = "raw-body";
+      packageName = "raw-body";
+      version = "2.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz";
+        sha512 = "qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==";
+      };
+    };
+    "react-18.2.0" = {
+      name = "react";
+      packageName = "react";
+      version = "18.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react/-/react-18.2.0.tgz";
+        sha512 = "/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==";
+      };
+    };
+    "react-app-polyfill-3.0.0" = {
+      name = "react-app-polyfill";
+      packageName = "react-app-polyfill";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-app-polyfill/-/react-app-polyfill-3.0.0.tgz";
+        sha512 = "sZ41cxiU5llIB003yxxQBYrARBqe0repqPTTYBTmMqTz9szeBbE37BehCE891NZsmdZqqP+xWKdT3eo3vOzN8w==";
+      };
+    };
+    "react-dev-utils-12.0.1" = {
+      name = "react-dev-utils";
+      packageName = "react-dev-utils";
+      version = "12.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-12.0.1.tgz";
+        sha512 = "84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==";
+      };
+    };
+    "react-dom-18.2.0" = {
+      name = "react-dom";
+      packageName = "react-dom";
+      version = "18.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz";
+        sha512 = "6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==";
+      };
+    };
+    "react-error-overlay-6.0.11" = {
+      name = "react-error-overlay";
+      packageName = "react-error-overlay";
+      version = "6.0.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.11.tgz";
+        sha512 = "/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==";
+      };
+    };
+    "react-i18next-11.18.6" = {
+      name = "react-i18next";
+      packageName = "react-i18next";
+      version = "11.18.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-i18next/-/react-i18next-11.18.6.tgz";
+        sha512 = "yHb2F9BiT0lqoQDt8loZ5gWP331GwctHz9tYQ8A2EIEUu+CcEdjBLQWli1USG3RdWQt3W+jqQLg/d4rrQR96LA==";
+      };
+    };
+    "react-infinite-scroll-component-6.1.0" = {
+      name = "react-infinite-scroll-component";
+      packageName = "react-infinite-scroll-component";
+      version = "6.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-infinite-scroll-component/-/react-infinite-scroll-component-6.1.0.tgz";
+        sha512 = "SQu5nCqy8DxQWpnUVLx7V7b7LcA37aM7tvoWjTLZp1dk6EJibM5/4EJKzOnl07/BsM1Y40sKLuqjCwwH/xV0TQ==";
+      };
+    };
+    "react-is-16.13.1" = {
+      name = "react-is";
+      packageName = "react-is";
+      version = "16.13.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz";
+        sha512 = "24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==";
+      };
+    };
+    "react-is-17.0.2" = {
+      name = "react-is";
+      packageName = "react-is";
+      version = "17.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz";
+        sha512 = "w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==";
+      };
+    };
+    "react-is-18.2.0" = {
+      name = "react-is";
+      packageName = "react-is";
+      version = "18.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz";
+        sha512 = "xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==";
+      };
+    };
+    "react-refresh-0.11.0" = {
+      name = "react-refresh";
+      packageName = "react-refresh";
+      version = "0.11.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-refresh/-/react-refresh-0.11.0.tgz";
+        sha512 = "F27qZr8uUqwhWZboondsPx8tnC3Ct3SxZA3V5WyEvujRyyNv0VYPhoBg1gZ8/MV5tubQp76Trw8lTv9hzRBa+A==";
+      };
+    };
+    "react-router-6.4.1" = {
+      name = "react-router";
+      packageName = "react-router";
+      version = "6.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-router/-/react-router-6.4.1.tgz";
+        sha512 = "OJASKp5AykDWFewgWUim1vlLr7yfD4vO/h+bSgcP/ix8Md+LMHuAjovA74MQfsfhQJGGN1nHRhwS5qQQbbBt3A==";
+      };
+    };
+    "react-router-dom-6.4.1" = {
+      name = "react-router-dom";
+      packageName = "react-router-dom";
+      version = "6.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.4.1.tgz";
+        sha512 = "MY7NJCrGNVJtGp8ODMOBHu20UaIkmwD2V3YsAOUQoCXFk7Ppdwf55RdcGyrSj+ycSL9Uiwrb3gTLYSnzcRoXww==";
+      };
+    };
+    "react-scripts-5.0.1" = {
+      name = "react-scripts";
+      packageName = "react-scripts";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-scripts/-/react-scripts-5.0.1.tgz";
+        sha512 = "8VAmEm/ZAwQzJ+GOMLbBsTdDKOpuZh7RPs0UymvBR2vRk4iZWCskjbFnxqjrzoIvlNNRZ3QJFx6/qDSi6zSnaQ==";
+      };
+    };
+    "react-transition-group-4.4.5" = {
+      name = "react-transition-group";
+      packageName = "react-transition-group";
+      version = "4.4.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz";
+        sha512 = "pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==";
+      };
+    };
+    "read-cache-1.0.0" = {
+      name = "read-cache";
+      packageName = "read-cache";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz";
+        sha512 = "Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==";
+      };
+    };
+    "readable-stream-2.3.7" = {
+      name = "readable-stream";
+      packageName = "readable-stream";
+      version = "2.3.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz";
+        sha512 = "Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==";
+      };
+    };
+    "readable-stream-3.6.0" = {
+      name = "readable-stream";
+      packageName = "readable-stream";
+      version = "3.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz";
+        sha512 = "BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==";
+      };
+    };
+    "readdirp-3.6.0" = {
+      name = "readdirp";
+      packageName = "readdirp";
+      version = "3.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz";
+        sha512 = "hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==";
+      };
+    };
+    "recursive-readdir-2.2.2" = {
+      name = "recursive-readdir";
+      packageName = "recursive-readdir";
+      version = "2.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz";
+        sha512 = "nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==";
+      };
+    };
+    "regenerate-1.4.2" = {
+      name = "regenerate";
+      packageName = "regenerate";
+      version = "1.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz";
+        sha512 = "zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==";
+      };
+    };
+    "regenerate-unicode-properties-10.1.0" = {
+      name = "regenerate-unicode-properties";
+      packageName = "regenerate-unicode-properties";
+      version = "10.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz";
+        sha512 = "d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==";
+      };
+    };
+    "regenerator-runtime-0.13.9" = {
+      name = "regenerator-runtime";
+      packageName = "regenerator-runtime";
+      version = "0.13.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz";
+        sha512 = "p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==";
+      };
+    };
+    "regenerator-transform-0.15.0" = {
+      name = "regenerator-transform";
+      packageName = "regenerator-transform";
+      version = "0.15.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz";
+        sha512 = "LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==";
+      };
+    };
+    "regex-parser-2.2.11" = {
+      name = "regex-parser";
+      packageName = "regex-parser";
+      version = "2.2.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz";
+        sha512 = "jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==";
+      };
+    };
+    "regexp.prototype.flags-1.4.3" = {
+      name = "regexp.prototype.flags";
+      packageName = "regexp.prototype.flags";
+      version = "1.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz";
+        sha512 = "fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==";
+      };
+    };
+    "regexpp-3.2.0" = {
+      name = "regexpp";
+      packageName = "regexpp";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz";
+        sha512 = "pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==";
+      };
+    };
+    "regexpu-core-5.2.1" = {
+      name = "regexpu-core";
+      packageName = "regexpu-core";
+      version = "5.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.2.1.tgz";
+        sha512 = "HrnlNtpvqP1Xkb28tMhBUO2EbyUHdQlsnlAhzWcwHy8WJR53UWr7/MAvqrsQKMbV4qdpv03oTMG8iIhfsPFktQ==";
+      };
+    };
+    "regjsgen-0.7.1" = {
+      name = "regjsgen";
+      packageName = "regjsgen";
+      version = "0.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regjsgen/-/regjsgen-0.7.1.tgz";
+        sha512 = "RAt+8H2ZEzHeYWxZ3H2z6tF18zyyOnlcdaafLrm21Bguj7uZy6ULibiAFdXEtKQY4Sy7wDTwDiOazasMLc4KPA==";
+      };
+    };
+    "regjsparser-0.9.1" = {
+      name = "regjsparser";
+      packageName = "regjsparser";
+      version = "0.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz";
+        sha512 = "dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==";
+      };
+    };
+    "relateurl-0.2.7" = {
+      name = "relateurl";
+      packageName = "relateurl";
+      version = "0.2.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz";
+        sha512 = "G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==";
+      };
+    };
+    "renderkid-3.0.0" = {
+      name = "renderkid";
+      packageName = "renderkid";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz";
+        sha512 = "q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==";
+      };
+    };
+    "require-directory-2.1.1" = {
+      name = "require-directory";
+      packageName = "require-directory";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz";
+        sha512 = "fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==";
+      };
+    };
+    "require-from-string-2.0.2" = {
+      name = "require-from-string";
+      packageName = "require-from-string";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz";
+        sha512 = "Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==";
+      };
+    };
+    "requires-port-1.0.0" = {
+      name = "requires-port";
+      packageName = "requires-port";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz";
+        sha512 = "KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==";
+      };
+    };
+    "resolve-1.22.1" = {
+      name = "resolve";
+      packageName = "resolve";
+      version = "1.22.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz";
+        sha512 = "nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==";
+      };
+    };
+    "resolve-2.0.0-next.4" = {
+      name = "resolve";
+      packageName = "resolve";
+      version = "2.0.0-next.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz";
+        sha512 = "iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==";
+      };
+    };
+    "resolve-cwd-3.0.0" = {
+      name = "resolve-cwd";
+      packageName = "resolve-cwd";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz";
+        sha512 = "OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==";
+      };
+    };
+    "resolve-from-4.0.0" = {
+      name = "resolve-from";
+      packageName = "resolve-from";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz";
+        sha512 = "pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==";
+      };
+    };
+    "resolve-from-5.0.0" = {
+      name = "resolve-from";
+      packageName = "resolve-from";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz";
+        sha512 = "qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==";
+      };
+    };
+    "resolve-url-loader-4.0.0" = {
+      name = "resolve-url-loader";
+      packageName = "resolve-url-loader";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-4.0.0.tgz";
+        sha512 = "05VEMczVREcbtT7Bz+C+96eUO5HDNvdthIiMB34t7FcF8ehcu4wC0sSgPUubs3XW2Q3CNLJk/BJrCU9wVRymiA==";
+      };
+    };
+    "resolve.exports-1.1.0" = {
+      name = "resolve.exports";
+      packageName = "resolve.exports";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.0.tgz";
+        sha512 = "J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==";
+      };
+    };
+    "retry-0.13.1" = {
+      name = "retry";
+      packageName = "retry";
+      version = "0.13.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz";
+        sha512 = "XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==";
+      };
+    };
+    "reusify-1.0.4" = {
+      name = "reusify";
+      packageName = "reusify";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz";
+        sha512 = "U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==";
+      };
+    };
+    "rimraf-3.0.2" = {
+      name = "rimraf";
+      packageName = "rimraf";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz";
+        sha512 = "JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==";
+      };
+    };
+    "rollup-2.79.1" = {
+      name = "rollup";
+      packageName = "rollup";
+      version = "2.79.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz";
+        sha512 = "uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==";
+      };
+    };
+    "rollup-plugin-terser-7.0.2" = {
+      name = "rollup-plugin-terser";
+      packageName = "rollup-plugin-terser";
+      version = "7.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz";
+        sha512 = "w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==";
+      };
+    };
+    "run-parallel-1.2.0" = {
+      name = "run-parallel";
+      packageName = "run-parallel";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz";
+        sha512 = "5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==";
+      };
+    };
+    "safe-buffer-5.1.2" = {
+      name = "safe-buffer";
+      packageName = "safe-buffer";
+      version = "5.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz";
+        sha512 = "Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==";
+      };
+    };
+    "safe-buffer-5.2.1" = {
+      name = "safe-buffer";
+      packageName = "safe-buffer";
+      version = "5.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz";
+        sha512 = "rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==";
+      };
+    };
+    "safe-regex-test-1.0.0" = {
+      name = "safe-regex-test";
+      packageName = "safe-regex-test";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz";
+        sha512 = "JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==";
+      };
+    };
+    "safer-buffer-2.1.2" = {
+      name = "safer-buffer";
+      packageName = "safer-buffer";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz";
+        sha512 = "YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==";
+      };
+    };
+    "sanitize.css-13.0.0" = {
+      name = "sanitize.css";
+      packageName = "sanitize.css";
+      version = "13.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sanitize.css/-/sanitize.css-13.0.0.tgz";
+        sha512 = "ZRwKbh/eQ6w9vmTjkuG0Ioi3HBwPFce0O+v//ve+aOq1oeCy7jMV2qzzAlpsNuqpqCBjjriM1lbtZbF/Q8jVyA==";
+      };
+    };
+    "sass-loader-12.6.0" = {
+      name = "sass-loader";
+      packageName = "sass-loader";
+      version = "12.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sass-loader/-/sass-loader-12.6.0.tgz";
+        sha512 = "oLTaH0YCtX4cfnJZxKSLAyglED0naiYfNG1iXfU5w1LNZ+ukoA5DtyDIN5zmKVZwYNJP4KRc5Y3hkWga+7tYfA==";
+      };
+    };
+    "sax-1.2.4" = {
+      name = "sax";
+      packageName = "sax";
+      version = "1.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz";
+        sha512 = "NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==";
+      };
+    };
+    "saxes-5.0.1" = {
+      name = "saxes";
+      packageName = "saxes";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz";
+        sha512 = "5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==";
+      };
+    };
+    "scheduler-0.23.0" = {
+      name = "scheduler";
+      packageName = "scheduler";
+      version = "0.23.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz";
+        sha512 = "CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==";
+      };
+    };
+    "schema-utils-2.7.0" = {
+      name = "schema-utils";
+      packageName = "schema-utils";
+      version = "2.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz";
+        sha512 = "0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==";
+      };
+    };
+    "schema-utils-2.7.1" = {
+      name = "schema-utils";
+      packageName = "schema-utils";
+      version = "2.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz";
+        sha512 = "SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==";
+      };
+    };
+    "schema-utils-3.1.1" = {
+      name = "schema-utils";
+      packageName = "schema-utils";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz";
+        sha512 = "Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==";
+      };
+    };
+    "schema-utils-4.0.0" = {
+      name = "schema-utils";
+      packageName = "schema-utils";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz";
+        sha512 = "1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==";
+      };
+    };
+    "select-hose-2.0.0" = {
+      name = "select-hose";
+      packageName = "select-hose";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz";
+        sha512 = "mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==";
+      };
+    };
+    "selfsigned-2.1.1" = {
+      name = "selfsigned";
+      packageName = "selfsigned";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz";
+        sha512 = "GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==";
+      };
+    };
+    "semver-6.3.0" = {
+      name = "semver";
+      packageName = "semver";
+      version = "6.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz";
+        sha512 = "b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==";
+      };
+    };
+    "semver-7.3.7" = {
+      name = "semver";
+      packageName = "semver";
+      version = "7.3.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz";
+        sha512 = "QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==";
+      };
+    };
+    "send-0.18.0" = {
+      name = "send";
+      packageName = "send";
+      version = "0.18.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/send/-/send-0.18.0.tgz";
+        sha512 = "qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==";
+      };
+    };
+    "serialize-javascript-4.0.0" = {
+      name = "serialize-javascript";
+      packageName = "serialize-javascript";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz";
+        sha512 = "GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==";
+      };
+    };
+    "serialize-javascript-6.0.0" = {
+      name = "serialize-javascript";
+      packageName = "serialize-javascript";
+      version = "6.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz";
+        sha512 = "Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==";
+      };
+    };
+    "serve-index-1.9.1" = {
+      name = "serve-index";
+      packageName = "serve-index";
+      version = "1.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz";
+        sha512 = "pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==";
+      };
+    };
+    "serve-static-1.15.0" = {
+      name = "serve-static";
+      packageName = "serve-static";
+      version = "1.15.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz";
+        sha512 = "XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==";
+      };
+    };
+    "setprototypeof-1.1.0" = {
+      name = "setprototypeof";
+      packageName = "setprototypeof";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz";
+        sha512 = "BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==";
+      };
+    };
+    "setprototypeof-1.2.0" = {
+      name = "setprototypeof";
+      packageName = "setprototypeof";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz";
+        sha512 = "E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==";
+      };
+    };
+    "shebang-command-2.0.0" = {
+      name = "shebang-command";
+      packageName = "shebang-command";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz";
+        sha512 = "kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==";
+      };
+    };
+    "shebang-regex-3.0.0" = {
+      name = "shebang-regex";
+      packageName = "shebang-regex";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz";
+        sha512 = "7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==";
+      };
+    };
+    "shell-quote-1.7.3" = {
+      name = "shell-quote";
+      packageName = "shell-quote";
+      version = "1.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.3.tgz";
+        sha512 = "Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw==";
+      };
+    };
+    "side-channel-1.0.4" = {
+      name = "side-channel";
+      packageName = "side-channel";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz";
+        sha512 = "q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==";
+      };
+    };
+    "signal-exit-3.0.7" = {
+      name = "signal-exit";
+      packageName = "signal-exit";
+      version = "3.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz";
+        sha512 = "wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==";
+      };
+    };
+    "sisteransi-1.0.5" = {
+      name = "sisteransi";
+      packageName = "sisteransi";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz";
+        sha512 = "bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==";
+      };
+    };
+    "slash-3.0.0" = {
+      name = "slash";
+      packageName = "slash";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz";
+        sha512 = "g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==";
+      };
+    };
+    "slash-4.0.0" = {
+      name = "slash";
+      packageName = "slash";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz";
+        sha512 = "3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==";
+      };
+    };
+    "sockjs-0.3.24" = {
+      name = "sockjs";
+      packageName = "sockjs";
+      version = "0.3.24";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz";
+        sha512 = "GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==";
+      };
+    };
+    "source-list-map-2.0.1" = {
+      name = "source-list-map";
+      packageName = "source-list-map";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz";
+        sha512 = "qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==";
+      };
+    };
+    "source-map-0.5.6" = {
+      name = "source-map";
+      packageName = "source-map";
+      version = "0.5.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz";
+        sha512 = "MjZkVp0NHr5+TPihLcadqnlVoGIoWo4IBHptutGh9wI3ttUYvCG26HkSuDi+K6lsZ25syXJXcctwgyVCt//xqA==";
+      };
+    };
+    "source-map-0.5.7" = {
+      name = "source-map";
+      packageName = "source-map";
+      version = "0.5.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz";
+        sha512 = "LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==";
+      };
+    };
+    "source-map-0.6.1" = {
+      name = "source-map";
+      packageName = "source-map";
+      version = "0.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz";
+        sha512 = "UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==";
+      };
+    };
+    "source-map-0.7.4" = {
+      name = "source-map";
+      packageName = "source-map";
+      version = "0.7.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz";
+        sha512 = "l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==";
+      };
+    };
+    "source-map-0.8.0-beta.0" = {
+      name = "source-map";
+      packageName = "source-map";
+      version = "0.8.0-beta.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz";
+        sha512 = "2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==";
+      };
+    };
+    "source-map-js-1.0.2" = {
+      name = "source-map-js";
+      packageName = "source-map-js";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz";
+        sha512 = "R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==";
+      };
+    };
+    "source-map-loader-3.0.1" = {
+      name = "source-map-loader";
+      packageName = "source-map-loader";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map-loader/-/source-map-loader-3.0.1.tgz";
+        sha512 = "Vp1UsfyPvgujKQzi4pyDiTOnE3E4H+yHvkVRN3c/9PJmQS4CQJExvcDvaX/D+RV+xQben9HJ56jMJS3CgUeWyA==";
+      };
+    };
+    "source-map-support-0.5.21" = {
+      name = "source-map-support";
+      packageName = "source-map-support";
+      version = "0.5.21";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz";
+        sha512 = "uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==";
+      };
+    };
+    "sourcemap-codec-1.4.8" = {
+      name = "sourcemap-codec";
+      packageName = "sourcemap-codec";
+      version = "1.4.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz";
+        sha512 = "9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==";
+      };
+    };
+    "spdy-4.0.2" = {
+      name = "spdy";
+      packageName = "spdy";
+      version = "4.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz";
+        sha512 = "r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==";
+      };
+    };
+    "spdy-transport-3.0.0" = {
+      name = "spdy-transport";
+      packageName = "spdy-transport";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz";
+        sha512 = "hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==";
+      };
+    };
+    "sprintf-js-1.0.3" = {
+      name = "sprintf-js";
+      packageName = "sprintf-js";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz";
+        sha512 = "D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==";
+      };
+    };
+    "stable-0.1.8" = {
+      name = "stable";
+      packageName = "stable";
+      version = "0.1.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz";
+        sha512 = "ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==";
+      };
+    };
+    "stack-generator-2.0.10" = {
+      name = "stack-generator";
+      packageName = "stack-generator";
+      version = "2.0.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stack-generator/-/stack-generator-2.0.10.tgz";
+        sha512 = "mwnua/hkqM6pF4k8SnmZ2zfETsRUpWXREfA/goT8SLCV4iOFa4bzOX2nDipWAZFPTjLvQB82f5yaodMVhK0yJQ==";
+      };
+    };
+    "stack-utils-2.0.5" = {
+      name = "stack-utils";
+      packageName = "stack-utils";
+      version = "2.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz";
+        sha512 = "xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==";
+      };
+    };
+    "stackframe-1.3.4" = {
+      name = "stackframe";
+      packageName = "stackframe";
+      version = "1.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz";
+        sha512 = "oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==";
+      };
+    };
+    "stacktrace-gps-3.1.2" = {
+      name = "stacktrace-gps";
+      packageName = "stacktrace-gps";
+      version = "3.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stacktrace-gps/-/stacktrace-gps-3.1.2.tgz";
+        sha512 = "GcUgbO4Jsqqg6RxfyTHFiPxdPqF+3LFmQhm7MgCuYQOYuWyqxo5pwRPz5d/u6/WYJdEnWfK4r+jGbyD8TSggXQ==";
+      };
+    };
+    "stacktrace-js-2.0.2" = {
+      name = "stacktrace-js";
+      packageName = "stacktrace-js";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stacktrace-js/-/stacktrace-js-2.0.2.tgz";
+        sha512 = "Je5vBeY4S1r/RnLydLl0TBTi3F2qdfWmYsGvtfZgEI+SCprPppaIhQf5nGcal4gI4cGpCV/duLcAzT1np6sQqg==";
+      };
+    };
+    "statuses-1.5.0" = {
+      name = "statuses";
+      packageName = "statuses";
+      version = "1.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz";
+        sha512 = "OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==";
+      };
+    };
+    "statuses-2.0.1" = {
+      name = "statuses";
+      packageName = "statuses";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz";
+        sha512 = "RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==";
+      };
+    };
+    "string-length-4.0.2" = {
+      name = "string-length";
+      packageName = "string-length";
+      version = "4.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz";
+        sha512 = "+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==";
+      };
+    };
+    "string-length-5.0.1" = {
+      name = "string-length";
+      packageName = "string-length";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string-length/-/string-length-5.0.1.tgz";
+        sha512 = "9Ep08KAMUn0OadnVaBuRdE2l615CQ508kr0XMadjClfYpdCyvrbFp6Taebo8yyxokQ4viUd/xPPUA4FGgUa0ow==";
+      };
+    };
+    "string-natural-compare-3.0.1" = {
+      name = "string-natural-compare";
+      packageName = "string-natural-compare";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string-natural-compare/-/string-natural-compare-3.0.1.tgz";
+        sha512 = "n3sPwynL1nwKi3WJ6AIsClwBMa0zTi54fn2oLU6ndfTSIO05xaznjSf15PcBZU6FNWbmN5Q6cxT4V5hGvB4taw==";
+      };
+    };
+    "string-width-4.2.3" = {
+      name = "string-width";
+      packageName = "string-width";
+      version = "4.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz";
+        sha512 = "wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==";
+      };
+    };
+    "string.prototype.matchall-4.0.7" = {
+      name = "string.prototype.matchall";
+      packageName = "string.prototype.matchall";
+      version = "4.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.7.tgz";
+        sha512 = "f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg==";
+      };
+    };
+    "string.prototype.trimend-1.0.5" = {
+      name = "string.prototype.trimend";
+      packageName = "string.prototype.trimend";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz";
+        sha512 = "I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==";
+      };
+    };
+    "string.prototype.trimstart-1.0.5" = {
+      name = "string.prototype.trimstart";
+      packageName = "string.prototype.trimstart";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz";
+        sha512 = "THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==";
+      };
+    };
+    "string_decoder-1.1.1" = {
+      name = "string_decoder";
+      packageName = "string_decoder";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz";
+        sha512 = "n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==";
+      };
+    };
+    "string_decoder-1.3.0" = {
+      name = "string_decoder";
+      packageName = "string_decoder";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz";
+        sha512 = "hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==";
+      };
+    };
+    "stringify-object-3.3.0" = {
+      name = "stringify-object";
+      packageName = "stringify-object";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz";
+        sha512 = "rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==";
+      };
+    };
+    "strip-ansi-6.0.1" = {
+      name = "strip-ansi";
+      packageName = "strip-ansi";
+      version = "6.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz";
+        sha512 = "Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==";
+      };
+    };
+    "strip-ansi-7.0.1" = {
+      name = "strip-ansi";
+      packageName = "strip-ansi";
+      version = "7.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz";
+        sha512 = "cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==";
+      };
+    };
+    "strip-bom-3.0.0" = {
+      name = "strip-bom";
+      packageName = "strip-bom";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz";
+        sha512 = "vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==";
+      };
+    };
+    "strip-bom-4.0.0" = {
+      name = "strip-bom";
+      packageName = "strip-bom";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz";
+        sha512 = "3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==";
+      };
+    };
+    "strip-comments-2.0.1" = {
+      name = "strip-comments";
+      packageName = "strip-comments";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-comments/-/strip-comments-2.0.1.tgz";
+        sha512 = "ZprKx+bBLXv067WTCALv8SSz5l2+XhpYCsVtSqlMnkAXMWDq+/ekVbl1ghqP9rUHTzv6sm/DwCOiYutU/yp1fw==";
+      };
+    };
+    "strip-final-newline-2.0.0" = {
+      name = "strip-final-newline";
+      packageName = "strip-final-newline";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz";
+        sha512 = "BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==";
+      };
+    };
+    "strip-json-comments-3.1.1" = {
+      name = "strip-json-comments";
+      packageName = "strip-json-comments";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz";
+        sha512 = "6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==";
+      };
+    };
+    "style-loader-3.3.1" = {
+      name = "style-loader";
+      packageName = "style-loader";
+      version = "3.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/style-loader/-/style-loader-3.3.1.tgz";
+        sha512 = "GPcQ+LDJbrcxHORTRes6Jy2sfvK2kS6hpSfI/fXhPt+spVzxF6LJ1dHLN9zIGmVaaP044YKaIatFaufENRiDoQ==";
+      };
+    };
+    "stylehacks-5.1.0" = {
+      name = "stylehacks";
+      packageName = "stylehacks";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.0.tgz";
+        sha512 = "SzLmvHQTrIWfSgljkQCw2++C9+Ne91d/6Sp92I8c5uHTcy/PgeHamwITIbBW9wnFTY/3ZfSXR9HIL6Ikqmcu6Q==";
+      };
+    };
+    "stylis-4.0.13" = {
+      name = "stylis";
+      packageName = "stylis";
+      version = "4.0.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stylis/-/stylis-4.0.13.tgz";
+        sha512 = "xGPXiFVl4YED9Jh7Euv2V220mriG9u4B2TA6Ybjc1catrstKD2PpIdU3U0RKpkVBC2EhmL/F0sPCr9vrFTNRag==";
+      };
+    };
+    "supports-color-5.5.0" = {
+      name = "supports-color";
+      packageName = "supports-color";
+      version = "5.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz";
+        sha512 = "QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==";
+      };
+    };
+    "supports-color-7.2.0" = {
+      name = "supports-color";
+      packageName = "supports-color";
+      version = "7.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz";
+        sha512 = "qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==";
+      };
+    };
+    "supports-color-8.1.1" = {
+      name = "supports-color";
+      packageName = "supports-color";
+      version = "8.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz";
+        sha512 = "MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==";
+      };
+    };
+    "supports-hyperlinks-2.3.0" = {
+      name = "supports-hyperlinks";
+      packageName = "supports-hyperlinks";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz";
+        sha512 = "RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==";
+      };
+    };
+    "supports-preserve-symlinks-flag-1.0.0" = {
+      name = "supports-preserve-symlinks-flag";
+      packageName = "supports-preserve-symlinks-flag";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz";
+        sha512 = "ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==";
+      };
+    };
+    "svg-parser-2.0.4" = {
+      name = "svg-parser";
+      packageName = "svg-parser";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz";
+        sha512 = "e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==";
+      };
+    };
+    "svgo-1.3.2" = {
+      name = "svgo";
+      packageName = "svgo";
+      version = "1.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz";
+        sha512 = "yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==";
+      };
+    };
+    "svgo-2.8.0" = {
+      name = "svgo";
+      packageName = "svgo";
+      version = "2.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz";
+        sha512 = "+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==";
+      };
+    };
+    "symbol-tree-3.2.4" = {
+      name = "symbol-tree";
+      packageName = "symbol-tree";
+      version = "3.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz";
+        sha512 = "9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==";
+      };
+    };
+    "tailwindcss-3.1.8" = {
+      name = "tailwindcss";
+      packageName = "tailwindcss";
+      version = "3.1.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.1.8.tgz";
+        sha512 = "YSneUCZSFDYMwk+TGq8qYFdCA3yfBRdBlS7txSq0LUmzyeqRe3a8fBQzbz9M3WS/iFT4BNf/nmw9mEzrnSaC0g==";
+      };
+    };
+    "tapable-1.1.3" = {
+      name = "tapable";
+      packageName = "tapable";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz";
+        sha512 = "4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==";
+      };
+    };
+    "tapable-2.2.1" = {
+      name = "tapable";
+      packageName = "tapable";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz";
+        sha512 = "GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==";
+      };
+    };
+    "temp-dir-2.0.0" = {
+      name = "temp-dir";
+      packageName = "temp-dir";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz";
+        sha512 = "aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==";
+      };
+    };
+    "tempy-0.6.0" = {
+      name = "tempy";
+      packageName = "tempy";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tempy/-/tempy-0.6.0.tgz";
+        sha512 = "G13vtMYPT/J8A4X2SjdtBTphZlrp1gKv6hZiOjw14RCWg6GbHuQBGtjlx75xLbYV/wEc0D7G5K4rxKP/cXk8Bw==";
+      };
+    };
+    "terminal-link-2.1.1" = {
+      name = "terminal-link";
+      packageName = "terminal-link";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz";
+        sha512 = "un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==";
+      };
+    };
+    "terser-5.15.0" = {
+      name = "terser";
+      packageName = "terser";
+      version = "5.15.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/terser/-/terser-5.15.0.tgz";
+        sha512 = "L1BJiXVmheAQQy+as0oF3Pwtlo4s3Wi1X2zNZ2NxOB4wx9bdS9Vk67XQENLFdLYGCK/Z2di53mTj/hBafR+dTA==";
+      };
+    };
+    "terser-webpack-plugin-5.3.6" = {
+      name = "terser-webpack-plugin";
+      packageName = "terser-webpack-plugin";
+      version = "5.3.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz";
+        sha512 = "kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==";
+      };
+    };
+    "test-exclude-6.0.0" = {
+      name = "test-exclude";
+      packageName = "test-exclude";
+      version = "6.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz";
+        sha512 = "cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==";
+      };
+    };
+    "text-table-0.2.0" = {
+      name = "text-table";
+      packageName = "text-table";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz";
+        sha512 = "N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==";
+      };
+    };
+    "throat-6.0.1" = {
+      name = "throat";
+      packageName = "throat";
+      version = "6.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz";
+        sha512 = "8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==";
+      };
+    };
+    "throttle-debounce-2.3.0" = {
+      name = "throttle-debounce";
+      packageName = "throttle-debounce";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-2.3.0.tgz";
+        sha512 = "H7oLPV0P7+jgvrk+6mwwwBDmxTaxnu9HMXmloNLXwnNO0ZxZ31Orah2n8lU1eMPvsaowP2CX+USCgyovXfdOFQ==";
+      };
+    };
+    "thunky-1.1.0" = {
+      name = "thunky";
+      packageName = "thunky";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz";
+        sha512 = "eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==";
+      };
+    };
+    "tmpl-1.0.5" = {
+      name = "tmpl";
+      packageName = "tmpl";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz";
+        sha512 = "3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==";
+      };
+    };
+    "to-fast-properties-2.0.0" = {
+      name = "to-fast-properties";
+      packageName = "to-fast-properties";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz";
+        sha512 = "/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==";
+      };
+    };
+    "to-regex-range-5.0.1" = {
+      name = "to-regex-range";
+      packageName = "to-regex-range";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz";
+        sha512 = "65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==";
+      };
+    };
+    "toidentifier-1.0.1" = {
+      name = "toidentifier";
+      packageName = "toidentifier";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz";
+        sha512 = "o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==";
+      };
+    };
+    "tough-cookie-4.1.2" = {
+      name = "tough-cookie";
+      packageName = "tough-cookie";
+      version = "4.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.2.tgz";
+        sha512 = "G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==";
+      };
+    };
+    "tr46-0.0.3" = {
+      name = "tr46";
+      packageName = "tr46";
+      version = "0.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz";
+        sha512 = "N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==";
+      };
+    };
+    "tr46-1.0.1" = {
+      name = "tr46";
+      packageName = "tr46";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz";
+        sha512 = "dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==";
+      };
+    };
+    "tr46-2.1.0" = {
+      name = "tr46";
+      packageName = "tr46";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz";
+        sha512 = "15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==";
+      };
+    };
+    "tryer-1.0.1" = {
+      name = "tryer";
+      packageName = "tryer";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tryer/-/tryer-1.0.1.tgz";
+        sha512 = "c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA==";
+      };
+    };
+    "tsconfig-paths-3.14.1" = {
+      name = "tsconfig-paths";
+      packageName = "tsconfig-paths";
+      version = "3.14.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz";
+        sha512 = "fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==";
+      };
+    };
+    "tslib-1.14.1" = {
+      name = "tslib";
+      packageName = "tslib";
+      version = "1.14.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz";
+        sha512 = "Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==";
+      };
+    };
+    "tslib-2.4.0" = {
+      name = "tslib";
+      packageName = "tslib";
+      version = "2.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz";
+        sha512 = "d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==";
+      };
+    };
+    "tsutils-3.21.0" = {
+      name = "tsutils";
+      packageName = "tsutils";
+      version = "3.21.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz";
+        sha512 = "mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==";
+      };
+    };
+    "type-check-0.3.2" = {
+      name = "type-check";
+      packageName = "type-check";
+      version = "0.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz";
+        sha512 = "ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==";
+      };
+    };
+    "type-check-0.4.0" = {
+      name = "type-check";
+      packageName = "type-check";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz";
+        sha512 = "XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==";
+      };
+    };
+    "type-detect-4.0.8" = {
+      name = "type-detect";
+      packageName = "type-detect";
+      version = "4.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz";
+        sha512 = "0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==";
+      };
+    };
+    "type-fest-0.16.0" = {
+      name = "type-fest";
+      packageName = "type-fest";
+      version = "0.16.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-fest/-/type-fest-0.16.0.tgz";
+        sha512 = "eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg==";
+      };
+    };
+    "type-fest-0.20.2" = {
+      name = "type-fest";
+      packageName = "type-fest";
+      version = "0.20.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz";
+        sha512 = "Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==";
+      };
+    };
+    "type-fest-0.21.3" = {
+      name = "type-fest";
+      packageName = "type-fest";
+      version = "0.21.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz";
+        sha512 = "t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==";
+      };
+    };
+    "type-is-1.6.18" = {
+      name = "type-is";
+      packageName = "type-is";
+      version = "1.6.18";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz";
+        sha512 = "TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==";
+      };
+    };
+    "typedarray-to-buffer-3.1.5" = {
+      name = "typedarray-to-buffer";
+      packageName = "typedarray-to-buffer";
+      version = "3.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz";
+        sha512 = "zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==";
+      };
+    };
+    "typescript-4.8.3" = {
+      name = "typescript";
+      packageName = "typescript";
+      version = "4.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typescript/-/typescript-4.8.3.tgz";
+        sha512 = "goMHfm00nWPa8UvR/CPSvykqf6dVV8x/dp0c5mFTMTIu0u0FlGWRioyy7Nn0PGAdHxpJZnuO/ut+PpQ8UiHAig==";
+      };
+    };
+    "unbox-primitive-1.0.2" = {
+      name = "unbox-primitive";
+      packageName = "unbox-primitive";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz";
+        sha512 = "61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==";
+      };
+    };
+    "unicode-canonical-property-names-ecmascript-2.0.0" = {
+      name = "unicode-canonical-property-names-ecmascript";
+      packageName = "unicode-canonical-property-names-ecmascript";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz";
+        sha512 = "yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==";
+      };
+    };
+    "unicode-match-property-ecmascript-2.0.0" = {
+      name = "unicode-match-property-ecmascript";
+      packageName = "unicode-match-property-ecmascript";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz";
+        sha512 = "5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==";
+      };
+    };
+    "unicode-match-property-value-ecmascript-2.0.0" = {
+      name = "unicode-match-property-value-ecmascript";
+      packageName = "unicode-match-property-value-ecmascript";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz";
+        sha512 = "7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==";
+      };
+    };
+    "unicode-property-aliases-ecmascript-2.1.0" = {
+      name = "unicode-property-aliases-ecmascript";
+      packageName = "unicode-property-aliases-ecmascript";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz";
+        sha512 = "6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==";
+      };
+    };
+    "unique-string-2.0.0" = {
+      name = "unique-string";
+      packageName = "unique-string";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz";
+        sha512 = "uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==";
+      };
+    };
+    "universalify-0.2.0" = {
+      name = "universalify";
+      packageName = "universalify";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz";
+        sha512 = "CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==";
+      };
+    };
+    "universalify-2.0.0" = {
+      name = "universalify";
+      packageName = "universalify";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz";
+        sha512 = "hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==";
+      };
+    };
+    "unpipe-1.0.0" = {
+      name = "unpipe";
+      packageName = "unpipe";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz";
+        sha512 = "pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==";
+      };
+    };
+    "unquote-1.1.1" = {
+      name = "unquote";
+      packageName = "unquote";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz";
+        sha512 = "vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==";
+      };
+    };
+    "upath-1.2.0" = {
+      name = "upath";
+      packageName = "upath";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz";
+        sha512 = "aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==";
+      };
+    };
+    "update-browserslist-db-1.0.9" = {
+      name = "update-browserslist-db";
+      packageName = "update-browserslist-db";
+      version = "1.0.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.9.tgz";
+        sha512 = "/xsqn21EGVdXI3EXSum1Yckj3ZVZugqyOZQ/CxYPBD/R+ko9NSUScf8tFF4dOKY+2pvSSJA/S+5B8s4Zr4kyvg==";
+      };
+    };
+    "uri-js-4.4.1" = {
+      name = "uri-js";
+      packageName = "uri-js";
+      version = "4.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz";
+        sha512 = "7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==";
+      };
+    };
+    "url-parse-1.5.10" = {
+      name = "url-parse";
+      packageName = "url-parse";
+      version = "1.5.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz";
+        sha512 = "WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==";
+      };
+    };
+    "util-deprecate-1.0.2" = {
+      name = "util-deprecate";
+      packageName = "util-deprecate";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz";
+        sha512 = "EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==";
+      };
+    };
+    "util.promisify-1.0.1" = {
+      name = "util.promisify";
+      packageName = "util.promisify";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz";
+        sha512 = "g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==";
+      };
+    };
+    "utila-0.4.0" = {
+      name = "utila";
+      packageName = "utila";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz";
+        sha512 = "Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==";
+      };
+    };
+    "utils-merge-1.0.1" = {
+      name = "utils-merge";
+      packageName = "utils-merge";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz";
+        sha512 = "pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==";
+      };
+    };
+    "uuid-8.3.2" = {
+      name = "uuid";
+      packageName = "uuid";
+      version = "8.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz";
+        sha512 = "+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==";
+      };
+    };
+    "v8-to-istanbul-8.1.1" = {
+      name = "v8-to-istanbul";
+      packageName = "v8-to-istanbul";
+      version = "8.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz";
+        sha512 = "FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==";
+      };
+    };
+    "vary-1.1.2" = {
+      name = "vary";
+      packageName = "vary";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz";
+        sha512 = "BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==";
+      };
+    };
+    "void-elements-3.1.0" = {
+      name = "void-elements";
+      packageName = "void-elements";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz";
+        sha512 = "Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==";
+      };
+    };
+    "w3c-hr-time-1.0.2" = {
+      name = "w3c-hr-time";
+      packageName = "w3c-hr-time";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz";
+        sha512 = "z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==";
+      };
+    };
+    "w3c-xmlserializer-2.0.0" = {
+      name = "w3c-xmlserializer";
+      packageName = "w3c-xmlserializer";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz";
+        sha512 = "4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==";
+      };
+    };
+    "walker-1.0.8" = {
+      name = "walker";
+      packageName = "walker";
+      version = "1.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz";
+        sha512 = "ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==";
+      };
+    };
+    "watchpack-2.4.0" = {
+      name = "watchpack";
+      packageName = "watchpack";
+      version = "2.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz";
+        sha512 = "Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==";
+      };
+    };
+    "wbuf-1.7.3" = {
+      name = "wbuf";
+      packageName = "wbuf";
+      version = "1.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz";
+        sha512 = "O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==";
+      };
+    };
+    "webidl-conversions-3.0.1" = {
+      name = "webidl-conversions";
+      packageName = "webidl-conversions";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz";
+        sha512 = "2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==";
+      };
+    };
+    "webidl-conversions-4.0.2" = {
+      name = "webidl-conversions";
+      packageName = "webidl-conversions";
+      version = "4.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz";
+        sha512 = "YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==";
+      };
+    };
+    "webidl-conversions-5.0.0" = {
+      name = "webidl-conversions";
+      packageName = "webidl-conversions";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz";
+        sha512 = "VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==";
+      };
+    };
+    "webidl-conversions-6.1.0" = {
+      name = "webidl-conversions";
+      packageName = "webidl-conversions";
+      version = "6.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz";
+        sha512 = "qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==";
+      };
+    };
+    "webpack-5.74.0" = {
+      name = "webpack";
+      packageName = "webpack";
+      version = "5.74.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/webpack/-/webpack-5.74.0.tgz";
+        sha512 = "A2InDwnhhGN4LYctJj6M1JEaGL7Luj6LOmyBHjcI8529cm5p6VXiTIW2sn6ffvEAKmveLzvu4jrihwXtPojlAA==";
+      };
+    };
+    "webpack-dev-middleware-5.3.3" = {
+      name = "webpack-dev-middleware";
+      packageName = "webpack-dev-middleware";
+      version = "5.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz";
+        sha512 = "hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==";
+      };
+    };
+    "webpack-dev-server-4.11.1" = {
+      name = "webpack-dev-server";
+      packageName = "webpack-dev-server";
+      version = "4.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.11.1.tgz";
+        sha512 = "lILVz9tAUy1zGFwieuaQtYiadImb5M3d+H+L1zDYalYoDl0cksAB1UNyuE5MMWJrG6zR1tXkCP2fitl7yoUJiw==";
+      };
+    };
+    "webpack-manifest-plugin-4.1.1" = {
+      name = "webpack-manifest-plugin";
+      packageName = "webpack-manifest-plugin";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/webpack-manifest-plugin/-/webpack-manifest-plugin-4.1.1.tgz";
+        sha512 = "YXUAwxtfKIJIKkhg03MKuiFAD72PlrqCiwdwO4VEXdRO5V0ORCNwaOwAZawPZalCbmH9kBDmXnNeQOw+BIEiow==";
+      };
+    };
+    "webpack-sources-1.4.3" = {
+      name = "webpack-sources";
+      packageName = "webpack-sources";
+      version = "1.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz";
+        sha512 = "lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==";
+      };
+    };
+    "webpack-sources-2.3.1" = {
+      name = "webpack-sources";
+      packageName = "webpack-sources";
+      version = "2.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.3.1.tgz";
+        sha512 = "y9EI9AO42JjEcrTJFOYmVywVZdKVUfOvDUPsJea5GIr1JOEGFVqwlY2K098fFoIjOkDzHn2AjRvM8dsBZu+gCA==";
+      };
+    };
+    "webpack-sources-3.2.3" = {
+      name = "webpack-sources";
+      packageName = "webpack-sources";
+      version = "3.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz";
+        sha512 = "/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==";
+      };
+    };
+    "websocket-driver-0.7.4" = {
+      name = "websocket-driver";
+      packageName = "websocket-driver";
+      version = "0.7.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz";
+        sha512 = "b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==";
+      };
+    };
+    "websocket-extensions-0.1.4" = {
+      name = "websocket-extensions";
+      packageName = "websocket-extensions";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz";
+        sha512 = "OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==";
+      };
+    };
+    "whatwg-encoding-1.0.5" = {
+      name = "whatwg-encoding";
+      packageName = "whatwg-encoding";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz";
+        sha512 = "b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==";
+      };
+    };
+    "whatwg-fetch-3.6.2" = {
+      name = "whatwg-fetch";
+      packageName = "whatwg-fetch";
+      version = "3.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz";
+        sha512 = "bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==";
+      };
+    };
+    "whatwg-mimetype-2.3.0" = {
+      name = "whatwg-mimetype";
+      packageName = "whatwg-mimetype";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz";
+        sha512 = "M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==";
+      };
+    };
+    "whatwg-url-5.0.0" = {
+      name = "whatwg-url";
+      packageName = "whatwg-url";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz";
+        sha512 = "saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==";
+      };
+    };
+    "whatwg-url-7.1.0" = {
+      name = "whatwg-url";
+      packageName = "whatwg-url";
+      version = "7.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz";
+        sha512 = "WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==";
+      };
+    };
+    "whatwg-url-8.7.0" = {
+      name = "whatwg-url";
+      packageName = "whatwg-url";
+      version = "8.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz";
+        sha512 = "gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==";
+      };
+    };
+    "which-1.3.1" = {
+      name = "which";
+      packageName = "which";
+      version = "1.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/which/-/which-1.3.1.tgz";
+        sha512 = "HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==";
+      };
+    };
+    "which-2.0.2" = {
+      name = "which";
+      packageName = "which";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/which/-/which-2.0.2.tgz";
+        sha512 = "BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==";
+      };
+    };
+    "which-boxed-primitive-1.0.2" = {
+      name = "which-boxed-primitive";
+      packageName = "which-boxed-primitive";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz";
+        sha512 = "bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==";
+      };
+    };
+    "word-wrap-1.2.3" = {
+      name = "word-wrap";
+      packageName = "word-wrap";
+      version = "1.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz";
+        sha512 = "Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==";
+      };
+    };
+    "workbox-background-sync-6.5.4" = {
+      name = "workbox-background-sync";
+      packageName = "workbox-background-sync";
+      version = "6.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-background-sync/-/workbox-background-sync-6.5.4.tgz";
+        sha512 = "0r4INQZMyPky/lj4Ou98qxcThrETucOde+7mRGJl13MPJugQNKeZQOdIJe/1AchOP23cTqHcN/YVpD6r8E6I8g==";
+      };
+    };
+    "workbox-broadcast-update-6.5.4" = {
+      name = "workbox-broadcast-update";
+      packageName = "workbox-broadcast-update";
+      version = "6.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-broadcast-update/-/workbox-broadcast-update-6.5.4.tgz";
+        sha512 = "I/lBERoH1u3zyBosnpPEtcAVe5lwykx9Yg1k6f8/BGEPGaMMgZrwVrqL1uA9QZ1NGGFoyE6t9i7lBjOlDhFEEw==";
+      };
+    };
+    "workbox-build-6.5.4" = {
+      name = "workbox-build";
+      packageName = "workbox-build";
+      version = "6.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-build/-/workbox-build-6.5.4.tgz";
+        sha512 = "kgRevLXEYvUW9WS4XoziYqZ8Q9j/2ziJYEtTrjdz5/L/cTUa2XfyMP2i7c3p34lgqJ03+mTiz13SdFef2POwbA==";
+      };
+    };
+    "workbox-cacheable-response-6.5.4" = {
+      name = "workbox-cacheable-response";
+      packageName = "workbox-cacheable-response";
+      version = "6.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-cacheable-response/-/workbox-cacheable-response-6.5.4.tgz";
+        sha512 = "DCR9uD0Fqj8oB2TSWQEm1hbFs/85hXXoayVwFKLVuIuxwJaihBsLsp4y7J9bvZbqtPJ1KlCkmYVGQKrBU4KAug==";
+      };
+    };
+    "workbox-core-6.5.4" = {
+      name = "workbox-core";
+      packageName = "workbox-core";
+      version = "6.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-core/-/workbox-core-6.5.4.tgz";
+        sha512 = "OXYb+m9wZm8GrORlV2vBbE5EC1FKu71GGp0H4rjmxmF4/HLbMCoTFws87M3dFwgpmg0v00K++PImpNQ6J5NQ6Q==";
+      };
+    };
+    "workbox-expiration-6.5.4" = {
+      name = "workbox-expiration";
+      packageName = "workbox-expiration";
+      version = "6.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-expiration/-/workbox-expiration-6.5.4.tgz";
+        sha512 = "jUP5qPOpH1nXtjGGh1fRBa1wJL2QlIb5mGpct3NzepjGG2uFFBn4iiEBiI9GUmfAFR2ApuRhDydjcRmYXddiEQ==";
+      };
+    };
+    "workbox-google-analytics-6.5.4" = {
+      name = "workbox-google-analytics";
+      packageName = "workbox-google-analytics";
+      version = "6.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-google-analytics/-/workbox-google-analytics-6.5.4.tgz";
+        sha512 = "8AU1WuaXsD49249Wq0B2zn4a/vvFfHkpcFfqAFHNHwln3jK9QUYmzdkKXGIZl9wyKNP+RRX30vcgcyWMcZ9VAg==";
+      };
+    };
+    "workbox-navigation-preload-6.5.4" = {
+      name = "workbox-navigation-preload";
+      packageName = "workbox-navigation-preload";
+      version = "6.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-navigation-preload/-/workbox-navigation-preload-6.5.4.tgz";
+        sha512 = "IIwf80eO3cr8h6XSQJF+Hxj26rg2RPFVUmJLUlM0+A2GzB4HFbQyKkrgD5y2d84g2IbJzP4B4j5dPBRzamHrng==";
+      };
+    };
+    "workbox-precaching-6.5.4" = {
+      name = "workbox-precaching";
+      packageName = "workbox-precaching";
+      version = "6.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-precaching/-/workbox-precaching-6.5.4.tgz";
+        sha512 = "hSMezMsW6btKnxHB4bFy2Qfwey/8SYdGWvVIKFaUm8vJ4E53JAY+U2JwLTRD8wbLWoP6OVUdFlXsTdKu9yoLTg==";
+      };
+    };
+    "workbox-range-requests-6.5.4" = {
+      name = "workbox-range-requests";
+      packageName = "workbox-range-requests";
+      version = "6.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-range-requests/-/workbox-range-requests-6.5.4.tgz";
+        sha512 = "Je2qR1NXCFC8xVJ/Lux6saH6IrQGhMpDrPXWZWWS8n/RD+WZfKa6dSZwU+/QksfEadJEr/NfY+aP/CXFFK5JFg==";
+      };
+    };
+    "workbox-recipes-6.5.4" = {
+      name = "workbox-recipes";
+      packageName = "workbox-recipes";
+      version = "6.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-recipes/-/workbox-recipes-6.5.4.tgz";
+        sha512 = "QZNO8Ez708NNwzLNEXTG4QYSKQ1ochzEtRLGaq+mr2PyoEIC1xFW7MrWxrONUxBFOByksds9Z4//lKAX8tHyUA==";
+      };
+    };
+    "workbox-routing-6.5.4" = {
+      name = "workbox-routing";
+      packageName = "workbox-routing";
+      version = "6.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-routing/-/workbox-routing-6.5.4.tgz";
+        sha512 = "apQswLsbrrOsBUWtr9Lf80F+P1sHnQdYodRo32SjiByYi36IDyL2r7BH1lJtFX8fwNHDa1QOVY74WKLLS6o5Pg==";
+      };
+    };
+    "workbox-strategies-6.5.4" = {
+      name = "workbox-strategies";
+      packageName = "workbox-strategies";
+      version = "6.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-strategies/-/workbox-strategies-6.5.4.tgz";
+        sha512 = "DEtsxhx0LIYWkJBTQolRxG4EI0setTJkqR4m7r4YpBdxtWJH1Mbg01Cj8ZjNOO8etqfA3IZaOPHUxCs8cBsKLw==";
+      };
+    };
+    "workbox-streams-6.5.4" = {
+      name = "workbox-streams";
+      packageName = "workbox-streams";
+      version = "6.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-streams/-/workbox-streams-6.5.4.tgz";
+        sha512 = "FXKVh87d2RFXkliAIheBojBELIPnWbQdyDvsH3t74Cwhg0fDheL1T8BqSM86hZvC0ZESLsznSYWw+Va+KVbUzg==";
+      };
+    };
+    "workbox-sw-6.5.4" = {
+      name = "workbox-sw";
+      packageName = "workbox-sw";
+      version = "6.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-sw/-/workbox-sw-6.5.4.tgz";
+        sha512 = "vo2RQo7DILVRoH5LjGqw3nphavEjK4Qk+FenXeUsknKn14eCNedHOXWbmnvP4ipKhlE35pvJ4yl4YYf6YsJArA==";
+      };
+    };
+    "workbox-webpack-plugin-6.5.4" = {
+      name = "workbox-webpack-plugin";
+      packageName = "workbox-webpack-plugin";
+      version = "6.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-webpack-plugin/-/workbox-webpack-plugin-6.5.4.tgz";
+        sha512 = "LmWm/zoaahe0EGmMTrSLUi+BjyR3cdGEfU3fS6PN1zKFYbqAKuQ+Oy/27e4VSXsyIwAw8+QDfk1XHNGtZu9nQg==";
+      };
+    };
+    "workbox-window-6.5.4" = {
+      name = "workbox-window";
+      packageName = "workbox-window";
+      version = "6.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-window/-/workbox-window-6.5.4.tgz";
+        sha512 = "HnLZJDwYBE+hpG25AQBO8RUWBJRaCsI9ksQJEp3aCOFCaG5kqaToAYXFRAHxzRluM2cQbGzdQF5rjKPWPA1fug==";
+      };
+    };
+    "wrap-ansi-7.0.0" = {
+      name = "wrap-ansi";
+      packageName = "wrap-ansi";
+      version = "7.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz";
+        sha512 = "YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==";
+      };
+    };
+    "wrappy-1.0.2" = {
+      name = "wrappy";
+      packageName = "wrappy";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz";
+        sha512 = "l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==";
+      };
+    };
+    "write-file-atomic-3.0.3" = {
+      name = "write-file-atomic";
+      packageName = "write-file-atomic";
+      version = "3.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz";
+        sha512 = "AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==";
+      };
+    };
+    "ws-7.5.9" = {
+      name = "ws";
+      packageName = "ws";
+      version = "7.5.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz";
+        sha512 = "F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==";
+      };
+    };
+    "ws-8.9.0" = {
+      name = "ws";
+      packageName = "ws";
+      version = "8.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ws/-/ws-8.9.0.tgz";
+        sha512 = "Ja7nszREasGaYUYCI2k4lCKIRTt+y7XuqVoHR44YpI49TtryyqbqvDMn5eqfW7e6HzTukDRIsXqzVHScqRcafg==";
+      };
+    };
+    "xml-name-validator-3.0.0" = {
+      name = "xml-name-validator";
+      packageName = "xml-name-validator";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz";
+        sha512 = "A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==";
+      };
+    };
+    "xmlchars-2.2.0" = {
+      name = "xmlchars";
+      packageName = "xmlchars";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz";
+        sha512 = "JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==";
+      };
+    };
+    "xtend-4.0.2" = {
+      name = "xtend";
+      packageName = "xtend";
+      version = "4.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz";
+        sha512 = "LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==";
+      };
+    };
+    "y18n-5.0.8" = {
+      name = "y18n";
+      packageName = "y18n";
+      version = "5.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz";
+        sha512 = "0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==";
+      };
+    };
+    "yallist-4.0.0" = {
+      name = "yallist";
+      packageName = "yallist";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz";
+        sha512 = "3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==";
+      };
+    };
+    "yaml-1.10.2" = {
+      name = "yaml";
+      packageName = "yaml";
+      version = "1.10.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz";
+        sha512 = "r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==";
+      };
+    };
+    "yargs-16.2.0" = {
+      name = "yargs";
+      packageName = "yargs";
+      version = "16.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz";
+        sha512 = "D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==";
+      };
+    };
+    "yargs-parser-20.2.9" = {
+      name = "yargs-parser";
+      packageName = "yargs-parser";
+      version = "20.2.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz";
+        sha512 = "y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==";
+      };
+    };
+    "yocto-queue-0.1.0" = {
+      name = "yocto-queue";
+      packageName = "yocto-queue";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz";
+        sha512 = "rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==";
+      };
+    };
+  };
+  args = {
+    name = "ntfy";
+    packageName = "ntfy";
+    version = "1.0.0";
+    src = ./.;
+    dependencies = [
+      sources."@ampproject/remapping-2.2.0"
+      sources."@babel/code-frame-7.18.6"
+      sources."@babel/compat-data-7.19.1"
+      sources."@babel/core-7.19.1"
+      (sources."@babel/eslint-parser-7.19.1" // {
+        dependencies = [
+          sources."eslint-visitor-keys-2.1.0"
+        ];
+      })
+      (sources."@babel/generator-7.19.0" // {
+        dependencies = [
+          sources."@jridgewell/gen-mapping-0.3.2"
+        ];
+      })
+      sources."@babel/helper-annotate-as-pure-7.18.6"
+      sources."@babel/helper-builder-binary-assignment-operator-visitor-7.18.9"
+      sources."@babel/helper-compilation-targets-7.19.1"
+      sources."@babel/helper-create-class-features-plugin-7.19.0"
+      sources."@babel/helper-create-regexp-features-plugin-7.19.0"
+      sources."@babel/helper-define-polyfill-provider-0.3.3"
+      sources."@babel/helper-environment-visitor-7.18.9"
+      sources."@babel/helper-explode-assignable-expression-7.18.6"
+      sources."@babel/helper-function-name-7.19.0"
+      sources."@babel/helper-hoist-variables-7.18.6"
+      sources."@babel/helper-member-expression-to-functions-7.18.9"
+      sources."@babel/helper-module-imports-7.18.6"
+      sources."@babel/helper-module-transforms-7.19.0"
+      sources."@babel/helper-optimise-call-expression-7.18.6"
+      sources."@babel/helper-plugin-utils-7.19.0"
+      sources."@babel/helper-remap-async-to-generator-7.18.9"
+      sources."@babel/helper-replace-supers-7.19.1"
+      sources."@babel/helper-simple-access-7.18.6"
+      sources."@babel/helper-skip-transparent-expression-wrappers-7.18.9"
+      sources."@babel/helper-split-export-declaration-7.18.6"
+      sources."@babel/helper-string-parser-7.18.10"
+      sources."@babel/helper-validator-identifier-7.19.1"
+      sources."@babel/helper-validator-option-7.18.6"
+      sources."@babel/helper-wrap-function-7.19.0"
+      sources."@babel/helpers-7.19.0"
+      sources."@babel/highlight-7.18.6"
+      sources."@babel/parser-7.19.1"
+      sources."@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6"
+      sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9"
+      sources."@babel/plugin-proposal-async-generator-functions-7.19.1"
+      sources."@babel/plugin-proposal-class-properties-7.18.6"
+      sources."@babel/plugin-proposal-class-static-block-7.18.6"
+      sources."@babel/plugin-proposal-decorators-7.19.1"
+      sources."@babel/plugin-proposal-dynamic-import-7.18.6"
+      sources."@babel/plugin-proposal-export-namespace-from-7.18.9"
+      sources."@babel/plugin-proposal-json-strings-7.18.6"
+      sources."@babel/plugin-proposal-logical-assignment-operators-7.18.9"
+      sources."@babel/plugin-proposal-nullish-coalescing-operator-7.18.6"
+      sources."@babel/plugin-proposal-numeric-separator-7.18.6"
+      sources."@babel/plugin-proposal-object-rest-spread-7.18.9"
+      sources."@babel/plugin-proposal-optional-catch-binding-7.18.6"
+      sources."@babel/plugin-proposal-optional-chaining-7.18.9"
+      sources."@babel/plugin-proposal-private-methods-7.18.6"
+      sources."@babel/plugin-proposal-private-property-in-object-7.18.6"
+      sources."@babel/plugin-proposal-unicode-property-regex-7.18.6"
+      sources."@babel/plugin-syntax-async-generators-7.8.4"
+      sources."@babel/plugin-syntax-bigint-7.8.3"
+      sources."@babel/plugin-syntax-class-properties-7.12.13"
+      sources."@babel/plugin-syntax-class-static-block-7.14.5"
+      sources."@babel/plugin-syntax-decorators-7.19.0"
+      sources."@babel/plugin-syntax-dynamic-import-7.8.3"
+      sources."@babel/plugin-syntax-export-namespace-from-7.8.3"
+      sources."@babel/plugin-syntax-flow-7.18.6"
+      sources."@babel/plugin-syntax-import-assertions-7.18.6"
+      sources."@babel/plugin-syntax-import-meta-7.10.4"
+      sources."@babel/plugin-syntax-json-strings-7.8.3"
+      sources."@babel/plugin-syntax-jsx-7.18.6"
+      sources."@babel/plugin-syntax-logical-assignment-operators-7.10.4"
+      sources."@babel/plugin-syntax-nullish-coalescing-operator-7.8.3"
+      sources."@babel/plugin-syntax-numeric-separator-7.10.4"
+      sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
+      sources."@babel/plugin-syntax-optional-catch-binding-7.8.3"
+      sources."@babel/plugin-syntax-optional-chaining-7.8.3"
+      sources."@babel/plugin-syntax-private-property-in-object-7.14.5"
+      sources."@babel/plugin-syntax-top-level-await-7.14.5"
+      sources."@babel/plugin-syntax-typescript-7.18.6"
+      sources."@babel/plugin-transform-arrow-functions-7.18.6"
+      sources."@babel/plugin-transform-async-to-generator-7.18.6"
+      sources."@babel/plugin-transform-block-scoped-functions-7.18.6"
+      sources."@babel/plugin-transform-block-scoping-7.18.9"
+      sources."@babel/plugin-transform-classes-7.19.0"
+      sources."@babel/plugin-transform-computed-properties-7.18.9"
+      sources."@babel/plugin-transform-destructuring-7.18.13"
+      sources."@babel/plugin-transform-dotall-regex-7.18.6"
+      sources."@babel/plugin-transform-duplicate-keys-7.18.9"
+      sources."@babel/plugin-transform-exponentiation-operator-7.18.6"
+      sources."@babel/plugin-transform-flow-strip-types-7.19.0"
+      sources."@babel/plugin-transform-for-of-7.18.8"
+      sources."@babel/plugin-transform-function-name-7.18.9"
+      sources."@babel/plugin-transform-literals-7.18.9"
+      sources."@babel/plugin-transform-member-expression-literals-7.18.6"
+      sources."@babel/plugin-transform-modules-amd-7.18.6"
+      sources."@babel/plugin-transform-modules-commonjs-7.18.6"
+      sources."@babel/plugin-transform-modules-systemjs-7.19.0"
+      sources."@babel/plugin-transform-modules-umd-7.18.6"
+      sources."@babel/plugin-transform-named-capturing-groups-regex-7.19.1"
+      sources."@babel/plugin-transform-new-target-7.18.6"
+      sources."@babel/plugin-transform-object-super-7.18.6"
+      sources."@babel/plugin-transform-parameters-7.18.8"
+      sources."@babel/plugin-transform-property-literals-7.18.6"
+      sources."@babel/plugin-transform-react-constant-elements-7.18.12"
+      sources."@babel/plugin-transform-react-display-name-7.18.6"
+      sources."@babel/plugin-transform-react-jsx-7.19.0"
+      sources."@babel/plugin-transform-react-jsx-development-7.18.6"
+      sources."@babel/plugin-transform-react-pure-annotations-7.18.6"
+      sources."@babel/plugin-transform-regenerator-7.18.6"
+      sources."@babel/plugin-transform-reserved-words-7.18.6"
+      sources."@babel/plugin-transform-runtime-7.19.1"
+      sources."@babel/plugin-transform-shorthand-properties-7.18.6"
+      sources."@babel/plugin-transform-spread-7.19.0"
+      sources."@babel/plugin-transform-sticky-regex-7.18.6"
+      sources."@babel/plugin-transform-template-literals-7.18.9"
+      sources."@babel/plugin-transform-typeof-symbol-7.18.9"
+      sources."@babel/plugin-transform-typescript-7.19.1"
+      sources."@babel/plugin-transform-unicode-escapes-7.18.10"
+      sources."@babel/plugin-transform-unicode-regex-7.18.6"
+      sources."@babel/preset-env-7.19.1"
+      sources."@babel/preset-modules-0.1.5"
+      sources."@babel/preset-react-7.18.6"
+      sources."@babel/preset-typescript-7.18.6"
+      sources."@babel/runtime-7.19.0"
+      sources."@babel/runtime-corejs3-7.19.1"
+      sources."@babel/template-7.18.10"
+      sources."@babel/traverse-7.19.1"
+      sources."@babel/types-7.19.0"
+      sources."@bcoe/v8-coverage-0.2.3"
+      sources."@csstools/normalize.css-12.0.0"
+      sources."@csstools/postcss-cascade-layers-1.1.1"
+      sources."@csstools/postcss-color-function-1.1.1"
+      sources."@csstools/postcss-font-format-keywords-1.0.1"
+      sources."@csstools/postcss-hwb-function-1.0.2"
+      sources."@csstools/postcss-ic-unit-1.0.1"
+      sources."@csstools/postcss-is-pseudo-class-2.0.7"
+      sources."@csstools/postcss-nested-calc-1.0.0"
+      sources."@csstools/postcss-normalize-display-values-1.0.1"
+      sources."@csstools/postcss-oklab-function-1.1.1"
+      sources."@csstools/postcss-progressive-custom-properties-1.3.0"
+      sources."@csstools/postcss-stepped-value-functions-1.0.1"
+      sources."@csstools/postcss-text-decoration-shorthand-1.0.0"
+      sources."@csstools/postcss-trigonometric-functions-1.0.2"
+      sources."@csstools/postcss-unset-value-1.0.2"
+      sources."@csstools/selector-specificity-2.0.2"
+      sources."@emotion/babel-plugin-11.10.2"
+      sources."@emotion/cache-11.10.3"
+      sources."@emotion/hash-0.9.0"
+      sources."@emotion/is-prop-valid-1.2.0"
+      sources."@emotion/memoize-0.8.0"
+      sources."@emotion/react-11.10.4"
+      sources."@emotion/serialize-1.1.0"
+      sources."@emotion/sheet-1.2.0"
+      sources."@emotion/styled-11.10.4"
+      sources."@emotion/unitless-0.8.0"
+      sources."@emotion/use-insertion-effect-with-fallbacks-1.0.0"
+      sources."@emotion/utils-1.2.0"
+      sources."@emotion/weak-memoize-0.3.0"
+      (sources."@eslint/eslintrc-1.3.2" // {
+        dependencies = [
+          sources."argparse-2.0.1"
+          sources."globals-13.17.0"
+          sources."js-yaml-4.1.0"
+          sources."type-fest-0.20.2"
+        ];
+      })
+      sources."@humanwhocodes/config-array-0.10.5"
+      sources."@humanwhocodes/gitignore-to-minimatch-1.0.2"
+      sources."@humanwhocodes/module-importer-1.0.1"
+      sources."@humanwhocodes/object-schema-1.2.1"
+      (sources."@istanbuljs/load-nyc-config-1.1.0" // {
+        dependencies = [
+          sources."camelcase-5.3.1"
+          sources."find-up-4.1.0"
+          sources."locate-path-5.0.0"
+          sources."p-limit-2.3.0"
+          sources."p-locate-4.1.0"
+          sources."resolve-from-5.0.0"
+        ];
+      })
+      sources."@istanbuljs/schema-0.1.3"
+      (sources."@jest/console-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      (sources."@jest/core-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      sources."@jest/environment-27.5.1"
+      sources."@jest/fake-timers-27.5.1"
+      sources."@jest/globals-27.5.1"
+      (sources."@jest/reporters-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."source-map-0.6.1"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      sources."@jest/schemas-28.1.3"
+      (sources."@jest/source-map-27.5.1" // {
+        dependencies = [
+          sources."source-map-0.6.1"
+        ];
+      })
+      sources."@jest/test-result-27.5.1"
+      sources."@jest/test-sequencer-27.5.1"
+      (sources."@jest/transform-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."source-map-0.6.1"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      (sources."@jest/types-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      sources."@jridgewell/gen-mapping-0.1.1"
+      sources."@jridgewell/resolve-uri-3.1.0"
+      sources."@jridgewell/set-array-1.1.2"
+      (sources."@jridgewell/source-map-0.3.2" // {
+        dependencies = [
+          sources."@jridgewell/gen-mapping-0.3.2"
+        ];
+      })
+      sources."@jridgewell/sourcemap-codec-1.4.14"
+      sources."@jridgewell/trace-mapping-0.3.15"
+      sources."@leichtgewicht/ip-codec-2.0.4"
+      sources."@mui/base-5.0.0-alpha.99"
+      sources."@mui/core-downloads-tracker-5.10.7"
+      sources."@mui/icons-material-5.10.6"
+      sources."@mui/material-5.10.7"
+      sources."@mui/private-theming-5.10.6"
+      sources."@mui/styled-engine-5.10.7"
+      sources."@mui/system-5.10.7"
+      sources."@mui/types-7.2.0"
+      sources."@mui/utils-5.10.6"
+      (sources."@nicolo-ribaudo/eslint-scope-5-internals-5.1.1-v1" // {
+        dependencies = [
+          sources."eslint-scope-5.1.1"
+          sources."estraverse-4.3.0"
+        ];
+      })
+      sources."@nodelib/fs.scandir-2.1.5"
+      sources."@nodelib/fs.stat-2.0.5"
+      sources."@nodelib/fs.walk-1.2.8"
+      (sources."@pmmmwh/react-refresh-webpack-plugin-0.5.7" // {
+        dependencies = [
+          sources."source-map-0.7.4"
+        ];
+      })
+      sources."@popperjs/core-2.11.6"
+      sources."@remix-run/router-1.0.1"
+      sources."@rollup/plugin-babel-5.3.1"
+      sources."@rollup/plugin-node-resolve-11.2.1"
+      sources."@rollup/plugin-replace-2.4.2"
+      (sources."@rollup/pluginutils-3.1.0" // {
+        dependencies = [
+          sources."@types/estree-0.0.39"
+        ];
+      })
+      sources."@rushstack/eslint-patch-1.2.0"
+      sources."@sinclair/typebox-0.24.43"
+      sources."@sinonjs/commons-1.8.3"
+      sources."@sinonjs/fake-timers-8.1.0"
+      sources."@surma/rollup-plugin-off-main-thread-2.2.3"
+      sources."@svgr/babel-plugin-add-jsx-attribute-5.4.0"
+      sources."@svgr/babel-plugin-remove-jsx-attribute-5.4.0"
+      sources."@svgr/babel-plugin-remove-jsx-empty-expression-5.0.1"
+      sources."@svgr/babel-plugin-replace-jsx-attribute-value-5.0.1"
+      sources."@svgr/babel-plugin-svg-dynamic-title-5.4.0"
+      sources."@svgr/babel-plugin-svg-em-dimensions-5.4.0"
+      sources."@svgr/babel-plugin-transform-react-native-svg-5.4.0"
+      sources."@svgr/babel-plugin-transform-svg-component-5.5.0"
+      sources."@svgr/babel-preset-5.5.0"
+      sources."@svgr/core-5.5.0"
+      sources."@svgr/hast-util-to-babel-ast-5.5.0"
+      sources."@svgr/plugin-jsx-5.5.0"
+      sources."@svgr/plugin-svgo-5.5.0"
+      sources."@svgr/webpack-5.5.0"
+      sources."@tootallnate/once-1.1.2"
+      sources."@trysound/sax-0.2.0"
+      sources."@types/babel__core-7.1.19"
+      sources."@types/babel__generator-7.6.4"
+      sources."@types/babel__template-7.4.1"
+      sources."@types/babel__traverse-7.18.2"
+      sources."@types/body-parser-1.19.2"
+      sources."@types/bonjour-3.5.10"
+      sources."@types/connect-3.4.35"
+      sources."@types/connect-history-api-fallback-1.3.5"
+      sources."@types/eslint-8.4.6"
+      sources."@types/eslint-scope-3.7.4"
+      sources."@types/estree-1.0.0"
+      sources."@types/express-4.17.14"
+      sources."@types/express-serve-static-core-4.17.31"
+      sources."@types/graceful-fs-4.1.5"
+      sources."@types/html-minifier-terser-6.1.0"
+      sources."@types/http-proxy-1.17.9"
+      sources."@types/istanbul-lib-coverage-2.0.4"
+      sources."@types/istanbul-lib-report-3.0.0"
+      sources."@types/istanbul-reports-3.0.1"
+      sources."@types/json-schema-7.0.11"
+      sources."@types/json5-0.0.29"
+      sources."@types/mime-3.0.1"
+      sources."@types/node-18.7.23"
+      sources."@types/parse-json-4.0.0"
+      sources."@types/prettier-2.7.1"
+      sources."@types/prop-types-15.7.5"
+      sources."@types/q-1.5.5"
+      sources."@types/qs-6.9.7"
+      sources."@types/range-parser-1.2.4"
+      sources."@types/react-18.0.21"
+      sources."@types/react-is-17.0.3"
+      sources."@types/react-transition-group-4.4.5"
+      sources."@types/resolve-1.17.1"
+      sources."@types/retry-0.12.0"
+      sources."@types/scheduler-0.16.2"
+      sources."@types/serve-index-1.9.1"
+      sources."@types/serve-static-1.15.0"
+      sources."@types/sockjs-0.3.33"
+      sources."@types/stack-utils-2.0.1"
+      sources."@types/trusted-types-2.0.2"
+      sources."@types/ws-8.5.3"
+      sources."@types/yargs-16.0.4"
+      sources."@types/yargs-parser-21.0.0"
+      (sources."@typescript-eslint/eslint-plugin-5.38.1" // {
+        dependencies = [
+          sources."semver-7.3.7"
+        ];
+      })
+      sources."@typescript-eslint/experimental-utils-5.38.1"
+      sources."@typescript-eslint/parser-5.38.1"
+      sources."@typescript-eslint/scope-manager-5.38.1"
+      sources."@typescript-eslint/type-utils-5.38.1"
+      sources."@typescript-eslint/types-5.38.1"
+      (sources."@typescript-eslint/typescript-estree-5.38.1" // {
+        dependencies = [
+          sources."semver-7.3.7"
+        ];
+      })
+      (sources."@typescript-eslint/utils-5.38.1" // {
+        dependencies = [
+          sources."eslint-scope-5.1.1"
+          sources."estraverse-4.3.0"
+        ];
+      })
+      sources."@typescript-eslint/visitor-keys-5.38.1"
+      sources."@webassemblyjs/ast-1.11.1"
+      sources."@webassemblyjs/floating-point-hex-parser-1.11.1"
+      sources."@webassemblyjs/helper-api-error-1.11.1"
+      sources."@webassemblyjs/helper-buffer-1.11.1"
+      sources."@webassemblyjs/helper-numbers-1.11.1"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.11.1"
+      sources."@webassemblyjs/helper-wasm-section-1.11.1"
+      sources."@webassemblyjs/ieee754-1.11.1"
+      sources."@webassemblyjs/leb128-1.11.1"
+      sources."@webassemblyjs/utf8-1.11.1"
+      sources."@webassemblyjs/wasm-edit-1.11.1"
+      sources."@webassemblyjs/wasm-gen-1.11.1"
+      sources."@webassemblyjs/wasm-opt-1.11.1"
+      sources."@webassemblyjs/wasm-parser-1.11.1"
+      sources."@webassemblyjs/wast-printer-1.11.1"
+      sources."@xtuc/ieee754-1.2.0"
+      sources."@xtuc/long-4.2.2"
+      sources."abab-2.0.6"
+      sources."accepts-1.3.8"
+      sources."acorn-8.8.0"
+      (sources."acorn-globals-6.0.0" // {
+        dependencies = [
+          sources."acorn-7.4.1"
+        ];
+      })
+      sources."acorn-import-assertions-1.8.0"
+      sources."acorn-jsx-5.3.2"
+      (sources."acorn-node-1.8.2" // {
+        dependencies = [
+          sources."acorn-7.4.1"
+        ];
+      })
+      sources."acorn-walk-7.2.0"
+      sources."address-1.2.1"
+      sources."adjust-sourcemap-loader-4.0.0"
+      sources."agent-base-6.0.2"
+      sources."ajv-6.12.6"
+      (sources."ajv-formats-2.1.1" // {
+        dependencies = [
+          sources."ajv-8.11.0"
+          sources."json-schema-traverse-1.0.0"
+        ];
+      })
+      sources."ajv-keywords-3.5.2"
+      sources."ansi-escapes-4.3.2"
+      sources."ansi-html-community-0.0.8"
+      sources."ansi-regex-5.0.1"
+      sources."ansi-styles-3.2.1"
+      sources."anymatch-3.1.2"
+      sources."arg-5.0.2"
+      sources."argparse-1.0.10"
+      sources."aria-query-4.2.2"
+      sources."array-flatten-2.1.2"
+      sources."array-includes-3.1.5"
+      sources."array-union-2.1.0"
+      sources."array.prototype.flat-1.3.0"
+      sources."array.prototype.flatmap-1.3.0"
+      sources."array.prototype.reduce-1.0.4"
+      sources."asap-2.0.6"
+      sources."ast-types-flow-0.0.7"
+      sources."async-3.2.4"
+      sources."asynckit-0.4.0"
+      sources."at-least-node-1.0.0"
+      sources."autoprefixer-10.4.12"
+      sources."axe-core-4.4.3"
+      sources."axobject-query-2.2.0"
+      (sources."babel-jest-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      (sources."babel-loader-8.2.5" // {
+        dependencies = [
+          sources."schema-utils-2.7.1"
+        ];
+      })
+      sources."babel-plugin-dynamic-import-node-2.3.3"
+      sources."babel-plugin-istanbul-6.1.1"
+      sources."babel-plugin-jest-hoist-27.5.1"
+      sources."babel-plugin-macros-3.1.0"
+      sources."babel-plugin-named-asset-import-0.3.8"
+      sources."babel-plugin-polyfill-corejs2-0.3.3"
+      sources."babel-plugin-polyfill-corejs3-0.6.0"
+      sources."babel-plugin-polyfill-regenerator-0.4.1"
+      sources."babel-plugin-transform-react-remove-prop-types-0.4.24"
+      sources."babel-preset-current-node-syntax-1.0.1"
+      sources."babel-preset-jest-27.5.1"
+      sources."babel-preset-react-app-10.0.1"
+      sources."balanced-match-1.0.2"
+      sources."batch-0.6.1"
+      sources."bfj-7.0.2"
+      sources."big.js-5.2.2"
+      sources."binary-extensions-2.2.0"
+      sources."bluebird-3.7.2"
+      (sources."body-parser-1.20.0" // {
+        dependencies = [
+          sources."bytes-3.1.2"
+          sources."debug-2.6.9"
+          sources."iconv-lite-0.4.24"
+          sources."ms-2.0.0"
+        ];
+      })
+      sources."bonjour-service-1.0.14"
+      sources."boolbase-1.0.0"
+      sources."brace-expansion-1.1.11"
+      sources."braces-3.0.2"
+      sources."browser-process-hrtime-1.0.0"
+      sources."browserslist-4.21.4"
+      sources."bser-2.1.1"
+      sources."buffer-from-1.1.2"
+      sources."builtin-modules-3.3.0"
+      sources."bytes-3.0.0"
+      sources."call-bind-1.0.2"
+      sources."callsites-3.1.0"
+      sources."camel-case-4.1.2"
+      sources."camelcase-6.3.0"
+      sources."camelcase-css-2.0.1"
+      sources."caniuse-api-3.0.0"
+      sources."caniuse-lite-1.0.30001412"
+      sources."case-sensitive-paths-webpack-plugin-2.4.0"
+      (sources."chalk-2.4.2" // {
+        dependencies = [
+          sources."escape-string-regexp-1.0.5"
+        ];
+      })
+      sources."char-regex-1.0.2"
+      sources."check-types-11.1.2"
+      (sources."chokidar-3.5.3" // {
+        dependencies = [
+          sources."glob-parent-5.1.2"
+        ];
+      })
+      sources."chrome-trace-event-1.0.3"
+      sources."ci-info-3.4.0"
+      sources."cjs-module-lexer-1.2.2"
+      (sources."clean-css-5.3.1" // {
+        dependencies = [
+          sources."source-map-0.6.1"
+        ];
+      })
+      sources."cliui-7.0.4"
+      sources."clsx-1.2.1"
+      sources."co-4.6.0"
+      sources."coa-2.0.2"
+      sources."collect-v8-coverage-1.0.1"
+      sources."color-convert-1.9.3"
+      sources."color-name-1.1.3"
+      sources."colord-2.9.3"
+      sources."colorette-2.0.19"
+      sources."combined-stream-1.0.8"
+      sources."commander-8.3.0"
+      sources."common-path-prefix-3.0.0"
+      sources."common-tags-1.8.2"
+      sources."commondir-1.0.1"
+      sources."compressible-2.0.18"
+      (sources."compression-1.7.4" // {
+        dependencies = [
+          sources."debug-2.6.9"
+          sources."ms-2.0.0"
+        ];
+      })
+      sources."concat-map-0.0.1"
+      sources."confusing-browser-globals-1.0.11"
+      sources."connect-history-api-fallback-2.0.0"
+      (sources."content-disposition-0.5.4" // {
+        dependencies = [
+          sources."safe-buffer-5.2.1"
+        ];
+      })
+      sources."content-type-1.0.4"
+      sources."convert-source-map-1.8.0"
+      sources."cookie-0.5.0"
+      sources."cookie-signature-1.0.6"
+      sources."core-js-3.25.3"
+      sources."core-js-compat-3.25.3"
+      sources."core-js-pure-3.25.3"
+      sources."core-util-is-1.0.3"
+      sources."cosmiconfig-7.0.1"
+      sources."cross-fetch-3.1.5"
+      sources."cross-spawn-7.0.3"
+      sources."crypto-random-string-2.0.0"
+      sources."css-blank-pseudo-3.0.3"
+      sources."css-declaration-sorter-6.3.1"
+      sources."css-has-pseudo-3.0.4"
+      (sources."css-loader-6.7.1" // {
+        dependencies = [
+          sources."semver-7.3.7"
+        ];
+      })
+      (sources."css-minimizer-webpack-plugin-3.4.1" // {
+        dependencies = [
+          sources."ajv-8.11.0"
+          sources."ajv-keywords-5.1.0"
+          sources."json-schema-traverse-1.0.0"
+          sources."schema-utils-4.0.0"
+          sources."source-map-0.6.1"
+        ];
+      })
+      sources."css-prefers-color-scheme-6.0.3"
+      sources."css-select-4.3.0"
+      sources."css-select-base-adapter-0.1.1"
+      (sources."css-tree-1.0.0-alpha.37" // {
+        dependencies = [
+          sources."source-map-0.6.1"
+        ];
+      })
+      sources."css-what-6.1.0"
+      sources."cssdb-7.0.1"
+      sources."cssesc-3.0.0"
+      sources."cssnano-5.1.13"
+      sources."cssnano-preset-default-5.2.12"
+      sources."cssnano-utils-3.1.0"
+      (sources."csso-4.2.0" // {
+        dependencies = [
+          sources."css-tree-1.1.3"
+          sources."mdn-data-2.0.14"
+          sources."source-map-0.6.1"
+        ];
+      })
+      sources."cssom-0.4.4"
+      (sources."cssstyle-2.3.0" // {
+        dependencies = [
+          sources."cssom-0.3.8"
+        ];
+      })
+      sources."csstype-3.1.1"
+      sources."damerau-levenshtein-1.0.8"
+      (sources."data-urls-2.0.0" // {
+        dependencies = [
+          sources."tr46-2.1.0"
+          sources."whatwg-url-8.7.0"
+        ];
+      })
+      sources."debug-4.3.4"
+      sources."decimal.js-10.4.1"
+      sources."dedent-0.7.0"
+      sources."deep-is-0.1.4"
+      sources."deepmerge-4.2.2"
+      sources."default-gateway-6.0.3"
+      sources."define-lazy-prop-2.0.0"
+      sources."define-properties-1.1.4"
+      sources."defined-1.0.0"
+      sources."delayed-stream-1.0.0"
+      sources."depd-2.0.0"
+      sources."destroy-1.2.0"
+      sources."detect-newline-3.1.0"
+      sources."detect-node-2.1.0"
+      (sources."detect-port-alt-1.1.6" // {
+        dependencies = [
+          sources."debug-2.6.9"
+          sources."ms-2.0.0"
+        ];
+      })
+      sources."detective-5.2.1"
+      sources."dexie-3.2.2"
+      sources."dexie-react-hooks-1.1.1"
+      sources."didyoumean-1.2.2"
+      sources."diff-sequences-27.5.1"
+      sources."dir-glob-3.0.1"
+      sources."dlv-1.1.3"
+      sources."dns-equal-1.0.0"
+      sources."dns-packet-5.4.0"
+      sources."doctrine-3.0.0"
+      sources."dom-converter-0.2.0"
+      sources."dom-helpers-5.2.1"
+      sources."dom-serializer-1.4.1"
+      sources."domelementtype-2.3.0"
+      (sources."domexception-2.0.1" // {
+        dependencies = [
+          sources."webidl-conversions-5.0.0"
+        ];
+      })
+      sources."domhandler-4.3.1"
+      sources."domutils-2.8.0"
+      sources."dot-case-3.0.4"
+      sources."dotenv-10.0.0"
+      sources."dotenv-expand-5.1.0"
+      sources."duplexer-0.1.2"
+      sources."ee-first-1.1.1"
+      sources."ejs-3.1.8"
+      sources."electron-to-chromium-1.4.264"
+      sources."emittery-0.8.1"
+      sources."emoji-regex-9.2.2"
+      sources."emojis-list-3.0.0"
+      sources."encodeurl-1.0.2"
+      sources."enhanced-resolve-5.10.0"
+      sources."entities-2.2.0"
+      sources."error-ex-1.3.2"
+      sources."error-stack-parser-2.1.4"
+      sources."es-abstract-1.20.3"
+      sources."es-array-method-boxes-properly-1.0.0"
+      sources."es-module-lexer-0.9.3"
+      sources."es-shim-unscopables-1.0.0"
+      sources."es-to-primitive-1.2.1"
+      sources."escalade-3.1.1"
+      sources."escape-html-1.0.3"
+      sources."escape-string-regexp-4.0.0"
+      (sources."escodegen-2.0.0" // {
+        dependencies = [
+          sources."levn-0.3.0"
+          sources."optionator-0.8.3"
+          sources."prelude-ls-1.1.2"
+          sources."source-map-0.6.1"
+          sources."type-check-0.3.2"
+        ];
+      })
+      (sources."eslint-8.24.0" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."argparse-2.0.1"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."globals-13.17.0"
+          sources."has-flag-4.0.0"
+          sources."js-yaml-4.1.0"
+          sources."supports-color-7.2.0"
+          sources."type-fest-0.20.2"
+        ];
+      })
+      sources."eslint-config-react-app-7.0.1"
+      (sources."eslint-import-resolver-node-0.3.6" // {
+        dependencies = [
+          sources."debug-3.2.7"
+        ];
+      })
+      (sources."eslint-module-utils-2.7.4" // {
+        dependencies = [
+          sources."debug-3.2.7"
+        ];
+      })
+      sources."eslint-plugin-flowtype-8.0.3"
+      (sources."eslint-plugin-import-2.26.0" // {
+        dependencies = [
+          sources."debug-2.6.9"
+          sources."doctrine-2.1.0"
+          sources."ms-2.0.0"
+        ];
+      })
+      sources."eslint-plugin-jest-25.7.0"
+      sources."eslint-plugin-jsx-a11y-6.6.1"
+      (sources."eslint-plugin-react-7.31.8" // {
+        dependencies = [
+          sources."doctrine-2.1.0"
+          sources."resolve-2.0.0-next.4"
+        ];
+      })
+      sources."eslint-plugin-react-hooks-4.6.0"
+      sources."eslint-plugin-testing-library-5.7.0"
+      sources."eslint-scope-7.1.1"
+      (sources."eslint-utils-3.0.0" // {
+        dependencies = [
+          sources."eslint-visitor-keys-2.1.0"
+        ];
+      })
+      sources."eslint-visitor-keys-3.3.0"
+      (sources."eslint-webpack-plugin-3.2.0" // {
+        dependencies = [
+          sources."ajv-8.11.0"
+          sources."ajv-keywords-5.1.0"
+          sources."has-flag-4.0.0"
+          sources."jest-worker-28.1.3"
+          sources."json-schema-traverse-1.0.0"
+          sources."schema-utils-4.0.0"
+          sources."supports-color-8.1.1"
+        ];
+      })
+      sources."espree-9.4.0"
+      sources."esprima-4.0.1"
+      sources."esquery-1.4.0"
+      sources."esrecurse-4.3.0"
+      sources."estraverse-5.3.0"
+      sources."estree-walker-1.0.1"
+      sources."esutils-2.0.3"
+      sources."etag-1.8.1"
+      sources."eventemitter3-4.0.7"
+      sources."events-3.3.0"
+      sources."execa-5.1.1"
+      sources."exit-0.1.2"
+      sources."expect-27.5.1"
+      (sources."express-4.18.1" // {
+        dependencies = [
+          sources."array-flatten-1.1.1"
+          sources."debug-2.6.9"
+          sources."ms-2.0.0"
+          sources."safe-buffer-5.2.1"
+        ];
+      })
+      sources."fast-deep-equal-3.1.3"
+      (sources."fast-glob-3.2.12" // {
+        dependencies = [
+          sources."glob-parent-5.1.2"
+        ];
+      })
+      sources."fast-json-stable-stringify-2.1.0"
+      sources."fast-levenshtein-2.0.6"
+      sources."fastq-1.13.0"
+      sources."faye-websocket-0.11.4"
+      sources."fb-watchman-2.0.2"
+      sources."file-entry-cache-6.0.1"
+      sources."file-loader-6.2.0"
+      (sources."filelist-1.0.4" // {
+        dependencies = [
+          sources."brace-expansion-2.0.1"
+          sources."minimatch-5.1.0"
+        ];
+      })
+      sources."filesize-8.0.7"
+      sources."fill-range-7.0.1"
+      (sources."finalhandler-1.2.0" // {
+        dependencies = [
+          sources."debug-2.6.9"
+          sources."ms-2.0.0"
+        ];
+      })
+      sources."find-cache-dir-3.3.2"
+      sources."find-root-1.1.0"
+      sources."find-up-5.0.0"
+      sources."flat-cache-3.0.4"
+      sources."flatted-3.2.7"
+      sources."follow-redirects-1.15.2"
+      (sources."fork-ts-checker-webpack-plugin-6.5.2" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."cosmiconfig-6.0.0"
+          sources."fs-extra-9.1.0"
+          sources."has-flag-4.0.0"
+          sources."schema-utils-2.7.0"
+          sources."semver-7.3.7"
+          sources."supports-color-7.2.0"
+          sources."tapable-1.1.3"
+        ];
+      })
+      sources."form-data-3.0.1"
+      sources."forwarded-0.2.0"
+      sources."fraction.js-4.2.0"
+      sources."fresh-0.5.2"
+      sources."fs-extra-10.1.0"
+      sources."fs-monkey-1.0.3"
+      sources."fs.realpath-1.0.0"
+      sources."fsevents-2.3.2"
+      sources."function-bind-1.1.1"
+      sources."function.prototype.name-1.1.5"
+      sources."functions-have-names-1.2.3"
+      sources."gensync-1.0.0-beta.2"
+      sources."get-caller-file-2.0.5"
+      sources."get-intrinsic-1.1.3"
+      sources."get-own-enumerable-property-symbols-3.0.2"
+      sources."get-package-type-0.1.0"
+      sources."get-stream-6.0.1"
+      sources."get-symbol-description-1.0.0"
+      sources."glob-7.2.3"
+      sources."glob-parent-6.0.2"
+      sources."glob-to-regexp-0.4.1"
+      sources."global-modules-2.0.0"
+      (sources."global-prefix-3.0.0" // {
+        dependencies = [
+          sources."which-1.3.1"
+        ];
+      })
+      sources."globals-11.12.0"
+      sources."globby-11.1.0"
+      sources."graceful-fs-4.2.10"
+      sources."grapheme-splitter-1.0.4"
+      sources."gzip-size-6.0.0"
+      sources."handle-thing-2.0.1"
+      sources."harmony-reflect-1.6.2"
+      sources."has-1.0.3"
+      sources."has-bigints-1.0.2"
+      sources."has-flag-3.0.0"
+      sources."has-property-descriptors-1.0.0"
+      sources."has-symbols-1.0.3"
+      sources."has-tostringtag-1.0.0"
+      sources."he-1.2.0"
+      (sources."hoist-non-react-statics-3.3.2" // {
+        dependencies = [
+          sources."react-is-16.13.1"
+        ];
+      })
+      sources."hoopy-0.1.4"
+      (sources."hpack.js-2.1.6" // {
+        dependencies = [
+          sources."readable-stream-2.3.7"
+          sources."string_decoder-1.1.1"
+        ];
+      })
+      sources."html-encoding-sniffer-2.0.1"
+      sources."html-entities-2.3.3"
+      sources."html-escaper-2.0.2"
+      sources."html-minifier-terser-6.1.0"
+      sources."html-parse-stringify-3.0.1"
+      sources."html-webpack-plugin-5.5.0"
+      sources."htmlparser2-6.1.0"
+      sources."http-deceiver-1.2.7"
+      sources."http-errors-2.0.0"
+      sources."http-parser-js-0.5.8"
+      sources."http-proxy-1.18.1"
+      sources."http-proxy-agent-4.0.1"
+      sources."http-proxy-middleware-2.0.6"
+      sources."https-proxy-agent-5.0.1"
+      sources."human-signals-2.1.0"
+      sources."i18next-21.9.2"
+      sources."i18next-browser-languagedetector-6.1.5"
+      sources."i18next-http-backend-1.4.4"
+      sources."iconv-lite-0.6.3"
+      sources."icss-utils-5.1.0"
+      sources."idb-7.1.0"
+      sources."identity-obj-proxy-3.0.0"
+      sources."ignore-5.2.0"
+      sources."immer-9.0.15"
+      sources."import-fresh-3.3.0"
+      sources."import-local-3.1.0"
+      sources."imurmurhash-0.1.4"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.4"
+      sources."ini-1.3.8"
+      sources."internal-slot-1.0.3"
+      sources."ipaddr.js-2.0.1"
+      sources."is-arrayish-0.2.1"
+      sources."is-bigint-1.0.4"
+      sources."is-binary-path-2.1.0"
+      sources."is-boolean-object-1.1.2"
+      sources."is-callable-1.2.7"
+      sources."is-core-module-2.10.0"
+      sources."is-date-object-1.0.5"
+      sources."is-docker-2.2.1"
+      sources."is-extglob-2.1.1"
+      sources."is-fullwidth-code-point-3.0.0"
+      sources."is-generator-fn-2.1.0"
+      sources."is-glob-4.0.3"
+      sources."is-module-1.0.0"
+      sources."is-negative-zero-2.0.2"
+      sources."is-number-7.0.0"
+      sources."is-number-object-1.0.7"
+      sources."is-obj-1.0.1"
+      sources."is-plain-obj-3.0.0"
+      sources."is-potential-custom-element-name-1.0.1"
+      sources."is-regex-1.1.4"
+      sources."is-regexp-1.0.0"
+      sources."is-root-2.1.0"
+      sources."is-shared-array-buffer-1.0.2"
+      sources."is-stream-2.0.1"
+      sources."is-string-1.0.7"
+      sources."is-symbol-1.0.4"
+      sources."is-typedarray-1.0.0"
+      sources."is-weakref-1.0.2"
+      sources."is-wsl-2.2.0"
+      sources."isarray-1.0.0"
+      sources."isexe-2.0.0"
+      sources."istanbul-lib-coverage-3.2.0"
+      sources."istanbul-lib-instrument-5.2.0"
+      (sources."istanbul-lib-report-3.0.0" // {
+        dependencies = [
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      (sources."istanbul-lib-source-maps-4.0.1" // {
+        dependencies = [
+          sources."source-map-0.6.1"
+        ];
+      })
+      sources."istanbul-reports-3.1.5"
+      (sources."jake-10.8.5" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      sources."jest-27.5.1"
+      sources."jest-changed-files-27.5.1"
+      (sources."jest-circus-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      (sources."jest-cli-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      (sources."jest-config-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      (sources."jest-diff-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      sources."jest-docblock-27.5.1"
+      (sources."jest-each-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      sources."jest-environment-jsdom-27.5.1"
+      sources."jest-environment-node-27.5.1"
+      sources."jest-get-type-27.5.1"
+      sources."jest-haste-map-27.5.1"
+      (sources."jest-jasmine2-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      sources."jest-leak-detector-27.5.1"
+      (sources."jest-matcher-utils-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      (sources."jest-message-util-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      sources."jest-mock-27.5.1"
+      sources."jest-pnp-resolver-1.2.2"
+      sources."jest-regex-util-27.5.1"
+      (sources."jest-resolve-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      sources."jest-resolve-dependencies-27.5.1"
+      (sources."jest-runner-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      (sources."jest-runtime-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      sources."jest-serializer-27.5.1"
+      (sources."jest-snapshot-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."semver-7.3.7"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      (sources."jest-util-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      (sources."jest-validate-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      (sources."jest-watch-typeahead-1.1.0" // {
+        dependencies = [
+          (sources."@jest/console-28.1.3" // {
+            dependencies = [
+              sources."slash-3.0.0"
+            ];
+          })
+          sources."@jest/test-result-28.1.3"
+          sources."@jest/types-28.1.3"
+          sources."@types/yargs-17.0.13"
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."emittery-0.10.2"
+          sources."has-flag-4.0.0"
+          (sources."jest-message-util-28.1.3" // {
+            dependencies = [
+              sources."slash-3.0.0"
+            ];
+          })
+          sources."jest-regex-util-28.0.2"
+          sources."jest-util-28.1.3"
+          (sources."jest-watcher-28.1.3" // {
+            dependencies = [
+              sources."string-length-4.0.2"
+              sources."strip-ansi-6.0.1"
+            ];
+          })
+          (sources."pretty-format-28.1.3" // {
+            dependencies = [
+              sources."ansi-styles-5.2.0"
+            ];
+          })
+          sources."slash-4.0.0"
+          (sources."string-length-5.0.1" // {
+            dependencies = [
+              sources."char-regex-2.0.1"
+            ];
+          })
+          (sources."strip-ansi-7.0.1" // {
+            dependencies = [
+              sources."ansi-regex-6.0.1"
+            ];
+          })
+          sources."supports-color-7.2.0"
+        ];
+      })
+      (sources."jest-watcher-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      (sources."jest-worker-27.5.1" // {
+        dependencies = [
+          sources."has-flag-4.0.0"
+          sources."supports-color-8.1.1"
+        ];
+      })
+      sources."js-base64-3.7.2"
+      sources."js-sdsl-4.1.4"
+      sources."js-tokens-4.0.0"
+      sources."js-yaml-3.14.1"
+      (sources."jsdom-16.7.0" // {
+        dependencies = [
+          sources."tr46-2.1.0"
+          sources."whatwg-url-8.7.0"
+        ];
+      })
+      sources."jsesc-2.5.2"
+      sources."json-parse-even-better-errors-2.3.1"
+      sources."json-schema-0.4.0"
+      sources."json-schema-traverse-0.4.1"
+      sources."json-stable-stringify-without-jsonify-1.0.1"
+      sources."json5-2.2.1"
+      sources."jsonfile-6.1.0"
+      sources."jsonpointer-5.0.1"
+      sources."jsx-ast-utils-3.3.3"
+      sources."kind-of-6.0.3"
+      sources."kleur-3.0.3"
+      sources."klona-2.0.5"
+      sources."language-subtag-registry-0.3.22"
+      sources."language-tags-1.0.5"
+      sources."leven-3.1.0"
+      sources."levn-0.4.1"
+      sources."lilconfig-2.0.6"
+      sources."lines-and-columns-1.2.4"
+      sources."loader-runner-4.3.0"
+      sources."loader-utils-2.0.2"
+      sources."locate-path-6.0.0"
+      sources."lodash-4.17.21"
+      sources."lodash.debounce-4.0.8"
+      sources."lodash.memoize-4.1.2"
+      sources."lodash.merge-4.6.2"
+      sources."lodash.sortby-4.7.0"
+      sources."lodash.uniq-4.5.0"
+      sources."loose-envify-1.4.0"
+      sources."lower-case-2.0.2"
+      sources."lru-cache-6.0.0"
+      sources."magic-string-0.25.9"
+      sources."make-dir-3.1.0"
+      sources."makeerror-1.0.12"
+      sources."mdn-data-2.0.4"
+      sources."media-typer-0.3.0"
+      sources."memfs-3.4.7"
+      sources."merge-descriptors-1.0.1"
+      sources."merge-stream-2.0.0"
+      sources."merge2-1.4.1"
+      sources."methods-1.1.2"
+      sources."micromatch-4.0.5"
+      sources."mime-1.6.0"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
+      sources."mimic-fn-2.1.0"
+      (sources."mini-css-extract-plugin-2.6.1" // {
+        dependencies = [
+          sources."ajv-8.11.0"
+          sources."ajv-keywords-5.1.0"
+          sources."json-schema-traverse-1.0.0"
+          sources."schema-utils-4.0.0"
+        ];
+      })
+      sources."minimalistic-assert-1.0.1"
+      sources."minimatch-3.1.2"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
+      sources."ms-2.1.2"
+      sources."multicast-dns-7.2.5"
+      sources."nanoid-3.3.4"
+      sources."natural-compare-1.4.0"
+      sources."negotiator-0.6.3"
+      sources."neo-async-2.6.2"
+      sources."no-case-3.0.4"
+      sources."node-fetch-2.6.7"
+      sources."node-forge-1.3.1"
+      sources."node-int64-0.4.0"
+      sources."node-releases-2.0.6"
+      sources."normalize-path-3.0.0"
+      sources."normalize-range-0.1.2"
+      sources."normalize-url-6.1.0"
+      sources."npm-run-path-4.0.1"
+      sources."nth-check-2.1.1"
+      sources."nwsapi-2.2.2"
+      sources."object-assign-4.1.1"
+      sources."object-hash-3.0.0"
+      sources."object-inspect-1.12.2"
+      sources."object-keys-1.1.1"
+      sources."object.assign-4.1.4"
+      sources."object.entries-1.1.5"
+      sources."object.fromentries-2.0.5"
+      sources."object.getownpropertydescriptors-2.1.4"
+      sources."object.hasown-1.1.1"
+      sources."object.values-1.1.5"
+      sources."obuf-1.1.2"
+      sources."on-finished-2.4.1"
+      sources."on-headers-1.0.2"
+      sources."once-1.4.0"
+      sources."onetime-5.1.2"
+      sources."open-8.4.0"
+      sources."optionator-0.9.1"
+      sources."p-limit-3.1.0"
+      sources."p-locate-5.0.0"
+      sources."p-retry-4.6.2"
+      sources."p-try-2.2.0"
+      sources."param-case-3.0.4"
+      sources."parent-module-1.0.1"
+      sources."parse-json-5.2.0"
+      sources."parse5-6.0.1"
+      sources."parseurl-1.3.3"
+      sources."pascal-case-3.1.2"
+      sources."path-exists-4.0.0"
+      sources."path-is-absolute-1.0.1"
+      sources."path-key-3.1.1"
+      sources."path-parse-1.0.7"
+      sources."path-to-regexp-0.1.7"
+      sources."path-type-4.0.0"
+      sources."performance-now-2.1.0"
+      sources."picocolors-1.0.0"
+      sources."picomatch-2.3.1"
+      sources."pify-2.3.0"
+      sources."pirates-4.0.5"
+      (sources."pkg-dir-4.2.0" // {
+        dependencies = [
+          sources."find-up-4.1.0"
+          sources."locate-path-5.0.0"
+          sources."p-limit-2.3.0"
+          sources."p-locate-4.1.0"
+        ];
+      })
+      (sources."pkg-up-3.1.0" // {
+        dependencies = [
+          sources."find-up-3.0.0"
+          sources."locate-path-3.0.0"
+          sources."p-limit-2.3.0"
+          sources."p-locate-3.0.0"
+          sources."path-exists-3.0.0"
+        ];
+      })
+      sources."postcss-8.4.16"
+      sources."postcss-attribute-case-insensitive-5.0.2"
+      sources."postcss-browser-comments-4.0.0"
+      sources."postcss-calc-8.2.4"
+      sources."postcss-clamp-4.1.0"
+      sources."postcss-color-functional-notation-4.2.4"
+      sources."postcss-color-hex-alpha-8.0.4"
+      sources."postcss-color-rebeccapurple-7.1.1"
+      sources."postcss-colormin-5.3.0"
+      sources."postcss-convert-values-5.1.2"
+      sources."postcss-custom-media-8.0.2"
+      sources."postcss-custom-properties-12.1.9"
+      sources."postcss-custom-selectors-6.0.3"
+      sources."postcss-dir-pseudo-class-6.0.5"
+      sources."postcss-discard-comments-5.1.2"
+      sources."postcss-discard-duplicates-5.1.0"
+      sources."postcss-discard-empty-5.1.1"
+      sources."postcss-discard-overridden-5.1.0"
+      sources."postcss-double-position-gradients-3.1.2"
+      sources."postcss-env-function-4.0.6"
+      sources."postcss-flexbugs-fixes-5.0.2"
+      sources."postcss-focus-visible-6.0.4"
+      sources."postcss-focus-within-5.0.4"
+      sources."postcss-font-variant-5.0.0"
+      sources."postcss-gap-properties-3.0.5"
+      sources."postcss-image-set-function-4.0.7"
+      sources."postcss-import-14.1.0"
+      sources."postcss-initial-4.0.1"
+      sources."postcss-js-4.0.0"
+      sources."postcss-lab-function-4.2.1"
+      sources."postcss-load-config-3.1.4"
+      (sources."postcss-loader-6.2.1" // {
+        dependencies = [
+          sources."semver-7.3.7"
+        ];
+      })
+      sources."postcss-logical-5.0.4"
+      sources."postcss-media-minmax-5.0.0"
+      sources."postcss-merge-longhand-5.1.6"
+      sources."postcss-merge-rules-5.1.2"
+      sources."postcss-minify-font-values-5.1.0"
+      sources."postcss-minify-gradients-5.1.1"
+      sources."postcss-minify-params-5.1.3"
+      sources."postcss-minify-selectors-5.2.1"
+      sources."postcss-modules-extract-imports-3.0.0"
+      sources."postcss-modules-local-by-default-4.0.0"
+      sources."postcss-modules-scope-3.0.0"
+      sources."postcss-modules-values-4.0.0"
+      sources."postcss-nested-5.0.6"
+      sources."postcss-nesting-10.2.0"
+      sources."postcss-normalize-10.0.1"
+      sources."postcss-normalize-charset-5.1.0"
+      sources."postcss-normalize-display-values-5.1.0"
+      sources."postcss-normalize-positions-5.1.1"
+      sources."postcss-normalize-repeat-style-5.1.1"
+      sources."postcss-normalize-string-5.1.0"
+      sources."postcss-normalize-timing-functions-5.1.0"
+      sources."postcss-normalize-unicode-5.1.0"
+      sources."postcss-normalize-url-5.1.0"
+      sources."postcss-normalize-whitespace-5.1.1"
+      sources."postcss-opacity-percentage-1.1.2"
+      sources."postcss-ordered-values-5.1.3"
+      sources."postcss-overflow-shorthand-3.0.4"
+      sources."postcss-page-break-3.0.4"
+      sources."postcss-place-7.0.5"
+      sources."postcss-preset-env-7.8.2"
+      sources."postcss-pseudo-class-any-link-7.1.6"
+      sources."postcss-reduce-initial-5.1.0"
+      sources."postcss-reduce-transforms-5.1.0"
+      sources."postcss-replace-overflow-wrap-4.0.0"
+      sources."postcss-selector-not-6.0.1"
+      sources."postcss-selector-parser-6.0.10"
+      (sources."postcss-svgo-5.1.0" // {
+        dependencies = [
+          sources."commander-7.2.0"
+          sources."css-tree-1.1.3"
+          sources."mdn-data-2.0.14"
+          sources."source-map-0.6.1"
+          sources."svgo-2.8.0"
+        ];
+      })
+      sources."postcss-unique-selectors-5.1.1"
+      sources."postcss-value-parser-4.2.0"
+      sources."prelude-ls-1.2.1"
+      sources."pretty-bytes-5.6.0"
+      sources."pretty-error-4.0.0"
+      (sources."pretty-format-27.5.1" // {
+        dependencies = [
+          sources."ansi-styles-5.2.0"
+          sources."react-is-17.0.2"
+        ];
+      })
+      sources."process-nextick-args-2.0.1"
+      sources."promise-8.2.0"
+      sources."prompts-2.4.2"
+      (sources."prop-types-15.8.1" // {
+        dependencies = [
+          sources."react-is-16.13.1"
+        ];
+      })
+      (sources."proxy-addr-2.0.7" // {
+        dependencies = [
+          sources."ipaddr.js-1.9.1"
+        ];
+      })
+      sources."psl-1.9.0"
+      sources."punycode-2.1.1"
+      sources."q-1.5.1"
+      sources."qs-6.10.3"
+      sources."querystringify-2.2.0"
+      sources."queue-microtask-1.2.3"
+      sources."quick-lru-5.1.1"
+      sources."raf-3.4.1"
+      sources."randombytes-2.1.0"
+      sources."range-parser-1.2.1"
+      (sources."raw-body-2.5.1" // {
+        dependencies = [
+          sources."bytes-3.1.2"
+          sources."iconv-lite-0.4.24"
+        ];
+      })
+      sources."react-18.2.0"
+      sources."react-app-polyfill-3.0.0"
+      (sources."react-dev-utils-12.0.1" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."loader-utils-3.2.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      sources."react-dom-18.2.0"
+      sources."react-error-overlay-6.0.11"
+      sources."react-i18next-11.18.6"
+      sources."react-infinite-scroll-component-6.1.0"
+      sources."react-is-18.2.0"
+      sources."react-refresh-0.11.0"
+      sources."react-router-6.4.1"
+      sources."react-router-dom-6.4.1"
+      (sources."react-scripts-5.0.1" // {
+        dependencies = [
+          sources."semver-7.3.7"
+        ];
+      })
+      sources."react-transition-group-4.4.5"
+      sources."read-cache-1.0.0"
+      sources."readable-stream-3.6.0"
+      sources."readdirp-3.6.0"
+      (sources."recursive-readdir-2.2.2" // {
+        dependencies = [
+          sources."minimatch-3.0.4"
+        ];
+      })
+      sources."regenerate-1.4.2"
+      sources."regenerate-unicode-properties-10.1.0"
+      sources."regenerator-runtime-0.13.9"
+      sources."regenerator-transform-0.15.0"
+      sources."regex-parser-2.2.11"
+      sources."regexp.prototype.flags-1.4.3"
+      sources."regexpp-3.2.0"
+      sources."regexpu-core-5.2.1"
+      sources."regjsgen-0.7.1"
+      (sources."regjsparser-0.9.1" // {
+        dependencies = [
+          sources."jsesc-0.5.0"
+        ];
+      })
+      sources."relateurl-0.2.7"
+      sources."renderkid-3.0.0"
+      sources."require-directory-2.1.1"
+      sources."require-from-string-2.0.2"
+      sources."requires-port-1.0.0"
+      sources."resolve-1.22.1"
+      (sources."resolve-cwd-3.0.0" // {
+        dependencies = [
+          sources."resolve-from-5.0.0"
+        ];
+      })
+      sources."resolve-from-4.0.0"
+      (sources."resolve-url-loader-4.0.0" // {
+        dependencies = [
+          sources."picocolors-0.2.1"
+          sources."postcss-7.0.39"
+          sources."source-map-0.6.1"
+        ];
+      })
+      sources."resolve.exports-1.1.0"
+      sources."retry-0.13.1"
+      sources."reusify-1.0.4"
+      sources."rimraf-3.0.2"
+      sources."rollup-2.79.1"
+      (sources."rollup-plugin-terser-7.0.2" // {
+        dependencies = [
+          sources."has-flag-4.0.0"
+          sources."jest-worker-26.6.2"
+          sources."serialize-javascript-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      sources."run-parallel-1.2.0"
+      sources."safe-buffer-5.1.2"
+      sources."safe-regex-test-1.0.0"
+      sources."safer-buffer-2.1.2"
+      sources."sanitize.css-13.0.0"
+      sources."sass-loader-12.6.0"
+      sources."sax-1.2.4"
+      sources."saxes-5.0.1"
+      sources."scheduler-0.23.0"
+      sources."schema-utils-3.1.1"
+      sources."select-hose-2.0.0"
+      sources."selfsigned-2.1.1"
+      sources."semver-6.3.0"
+      (sources."send-0.18.0" // {
+        dependencies = [
+          (sources."debug-2.6.9" // {
+            dependencies = [
+              sources."ms-2.0.0"
+            ];
+          })
+          sources."ms-2.1.3"
+        ];
+      })
+      sources."serialize-javascript-6.0.0"
+      (sources."serve-index-1.9.1" // {
+        dependencies = [
+          sources."debug-2.6.9"
+          sources."depd-1.1.2"
+          sources."http-errors-1.6.3"
+          sources."inherits-2.0.3"
+          sources."ms-2.0.0"
+          sources."setprototypeof-1.1.0"
+          sources."statuses-1.5.0"
+        ];
+      })
+      sources."serve-static-1.15.0"
+      sources."setprototypeof-1.2.0"
+      sources."shebang-command-2.0.0"
+      sources."shebang-regex-3.0.0"
+      sources."shell-quote-1.7.3"
+      sources."side-channel-1.0.4"
+      sources."signal-exit-3.0.7"
+      sources."sisteransi-1.0.5"
+      sources."slash-3.0.0"
+      sources."sockjs-0.3.24"
+      sources."source-list-map-2.0.1"
+      sources."source-map-0.5.7"
+      sources."source-map-js-1.0.2"
+      sources."source-map-loader-3.0.1"
+      (sources."source-map-support-0.5.21" // {
+        dependencies = [
+          sources."source-map-0.6.1"
+        ];
+      })
+      sources."sourcemap-codec-1.4.8"
+      sources."spdy-4.0.2"
+      sources."spdy-transport-3.0.0"
+      sources."sprintf-js-1.0.3"
+      sources."stable-0.1.8"
+      sources."stack-generator-2.0.10"
+      (sources."stack-utils-2.0.5" // {
+        dependencies = [
+          sources."escape-string-regexp-2.0.0"
+        ];
+      })
+      sources."stackframe-1.3.4"
+      (sources."stacktrace-gps-3.1.2" // {
+        dependencies = [
+          sources."source-map-0.5.6"
+        ];
+      })
+      sources."stacktrace-js-2.0.2"
+      sources."statuses-2.0.1"
+      sources."string-length-4.0.2"
+      sources."string-natural-compare-3.0.1"
+      (sources."string-width-4.2.3" // {
+        dependencies = [
+          sources."emoji-regex-8.0.0"
+        ];
+      })
+      sources."string.prototype.matchall-4.0.7"
+      sources."string.prototype.trimend-1.0.5"
+      sources."string.prototype.trimstart-1.0.5"
+      (sources."string_decoder-1.3.0" // {
+        dependencies = [
+          sources."safe-buffer-5.2.1"
+        ];
+      })
+      sources."stringify-object-3.3.0"
+      sources."strip-ansi-6.0.1"
+      sources."strip-bom-4.0.0"
+      sources."strip-comments-2.0.1"
+      sources."strip-final-newline-2.0.0"
+      sources."strip-json-comments-3.1.1"
+      sources."style-loader-3.3.1"
+      sources."stylehacks-5.1.0"
+      sources."stylis-4.0.13"
+      sources."supports-color-5.5.0"
+      (sources."supports-hyperlinks-2.3.0" // {
+        dependencies = [
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      sources."supports-preserve-symlinks-flag-1.0.0"
+      sources."svg-parser-2.0.4"
+      (sources."svgo-1.3.2" // {
+        dependencies = [
+          sources."css-select-2.1.0"
+          sources."css-what-3.4.2"
+          sources."dom-serializer-0.2.2"
+          (sources."domutils-1.7.0" // {
+            dependencies = [
+              sources."domelementtype-1.3.1"
+            ];
+          })
+          sources."nth-check-1.0.2"
+        ];
+      })
+      sources."symbol-tree-3.2.4"
+      (sources."tailwindcss-3.1.8" // {
+        dependencies = [
+          sources."color-name-1.1.4"
+        ];
+      })
+      sources."tapable-2.2.1"
+      sources."temp-dir-2.0.0"
+      (sources."tempy-0.6.0" // {
+        dependencies = [
+          sources."type-fest-0.16.0"
+        ];
+      })
+      sources."terminal-link-2.1.1"
+      (sources."terser-5.15.0" // {
+        dependencies = [
+          sources."commander-2.20.3"
+        ];
+      })
+      sources."terser-webpack-plugin-5.3.6"
+      sources."test-exclude-6.0.0"
+      sources."text-table-0.2.0"
+      sources."throat-6.0.1"
+      sources."throttle-debounce-2.3.0"
+      sources."thunky-1.1.0"
+      sources."tmpl-1.0.5"
+      sources."to-fast-properties-2.0.0"
+      sources."to-regex-range-5.0.1"
+      sources."toidentifier-1.0.1"
+      (sources."tough-cookie-4.1.2" // {
+        dependencies = [
+          sources."universalify-0.2.0"
+        ];
+      })
+      sources."tr46-0.0.3"
+      sources."tryer-1.0.1"
+      (sources."tsconfig-paths-3.14.1" // {
+        dependencies = [
+          sources."json5-1.0.1"
+          sources."strip-bom-3.0.0"
+        ];
+      })
+      sources."tslib-2.4.0"
+      (sources."tsutils-3.21.0" // {
+        dependencies = [
+          sources."tslib-1.14.1"
+        ];
+      })
+      sources."type-check-0.4.0"
+      sources."type-detect-4.0.8"
+      sources."type-fest-0.21.3"
+      sources."type-is-1.6.18"
+      sources."typedarray-to-buffer-3.1.5"
+      sources."typescript-4.8.3"
+      sources."unbox-primitive-1.0.2"
+      sources."unicode-canonical-property-names-ecmascript-2.0.0"
+      sources."unicode-match-property-ecmascript-2.0.0"
+      sources."unicode-match-property-value-ecmascript-2.0.0"
+      sources."unicode-property-aliases-ecmascript-2.1.0"
+      sources."unique-string-2.0.0"
+      sources."universalify-2.0.0"
+      sources."unpipe-1.0.0"
+      sources."unquote-1.1.1"
+      sources."upath-1.2.0"
+      sources."update-browserslist-db-1.0.9"
+      sources."uri-js-4.4.1"
+      sources."url-parse-1.5.10"
+      sources."util-deprecate-1.0.2"
+      sources."util.promisify-1.0.1"
+      sources."utila-0.4.0"
+      sources."utils-merge-1.0.1"
+      sources."uuid-8.3.2"
+      (sources."v8-to-istanbul-8.1.1" // {
+        dependencies = [
+          sources."source-map-0.7.4"
+        ];
+      })
+      sources."vary-1.1.2"
+      sources."void-elements-3.1.0"
+      sources."w3c-hr-time-1.0.2"
+      sources."w3c-xmlserializer-2.0.0"
+      sources."walker-1.0.8"
+      sources."watchpack-2.4.0"
+      sources."wbuf-1.7.3"
+      sources."webidl-conversions-6.1.0"
+      (sources."webpack-5.74.0" // {
+        dependencies = [
+          sources."@types/estree-0.0.51"
+          sources."eslint-scope-5.1.1"
+          sources."estraverse-4.3.0"
+        ];
+      })
+      (sources."webpack-dev-middleware-5.3.3" // {
+        dependencies = [
+          sources."ajv-8.11.0"
+          sources."ajv-keywords-5.1.0"
+          sources."json-schema-traverse-1.0.0"
+          sources."schema-utils-4.0.0"
+        ];
+      })
+      (sources."webpack-dev-server-4.11.1" // {
+        dependencies = [
+          sources."ajv-8.11.0"
+          sources."ajv-keywords-5.1.0"
+          sources."json-schema-traverse-1.0.0"
+          sources."schema-utils-4.0.0"
+          sources."ws-8.9.0"
+        ];
+      })
+      (sources."webpack-manifest-plugin-4.1.1" // {
+        dependencies = [
+          sources."source-map-0.6.1"
+          sources."webpack-sources-2.3.1"
+        ];
+      })
+      sources."webpack-sources-3.2.3"
+      sources."websocket-driver-0.7.4"
+      sources."websocket-extensions-0.1.4"
+      (sources."whatwg-encoding-1.0.5" // {
+        dependencies = [
+          sources."iconv-lite-0.4.24"
+        ];
+      })
+      sources."whatwg-fetch-3.6.2"
+      sources."whatwg-mimetype-2.3.0"
+      (sources."whatwg-url-5.0.0" // {
+        dependencies = [
+          sources."webidl-conversions-3.0.1"
+        ];
+      })
+      sources."which-2.0.2"
+      sources."which-boxed-primitive-1.0.2"
+      sources."word-wrap-1.2.3"
+      sources."workbox-background-sync-6.5.4"
+      sources."workbox-broadcast-update-6.5.4"
+      (sources."workbox-build-6.5.4" // {
+        dependencies = [
+          sources."@apideck/better-ajv-errors-0.3.6"
+          sources."ajv-8.11.0"
+          sources."fs-extra-9.1.0"
+          sources."json-schema-traverse-1.0.0"
+          sources."source-map-0.8.0-beta.0"
+          sources."tr46-1.0.1"
+          sources."webidl-conversions-4.0.2"
+          sources."whatwg-url-7.1.0"
+        ];
+      })
+      sources."workbox-cacheable-response-6.5.4"
+      sources."workbox-core-6.5.4"
+      sources."workbox-expiration-6.5.4"
+      sources."workbox-google-analytics-6.5.4"
+      sources."workbox-navigation-preload-6.5.4"
+      sources."workbox-precaching-6.5.4"
+      sources."workbox-range-requests-6.5.4"
+      sources."workbox-recipes-6.5.4"
+      sources."workbox-routing-6.5.4"
+      sources."workbox-strategies-6.5.4"
+      sources."workbox-streams-6.5.4"
+      sources."workbox-sw-6.5.4"
+      (sources."workbox-webpack-plugin-6.5.4" // {
+        dependencies = [
+          sources."source-map-0.6.1"
+          sources."webpack-sources-1.4.3"
+        ];
+      })
+      sources."workbox-window-6.5.4"
+      (sources."wrap-ansi-7.0.0" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+        ];
+      })
+      sources."wrappy-1.0.2"
+      sources."write-file-atomic-3.0.3"
+      sources."ws-7.5.9"
+      sources."xml-name-validator-3.0.0"
+      sources."xmlchars-2.2.0"
+      sources."xtend-4.0.2"
+      sources."y18n-5.0.8"
+      sources."yallist-4.0.0"
+      sources."yaml-1.10.2"
+      sources."yargs-16.2.0"
+      sources."yargs-parser-20.2.9"
+      sources."yocto-queue-0.1.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+    };
+    production = false;
+    bypassCache = true;
+    reconstructLock = false;
+  };
+in
+{
+  args = args;
+  sources = sources;
+  tarball = nodeEnv.buildNodeSourceDist args;
+  package = nodeEnv.buildNodePackage args;
+  shell = nodeEnv.buildNodeShell args;
+  nodeDependencies = nodeEnv.buildNodeDependencies (lib.overrideExisting args {
+    src = stdenv.mkDerivation {
+      name = args.name + "-package-json";
+      src = nix-gitignore.gitignoreSourcePure [
+        "*"
+        "!package.json"
+        "!package-lock.json"
+      ] args.src;
+      dontBuild = true;
+      installPhase = "mkdir -p $out; cp -r ./* $out;";
+    };
+  });
+}
diff --git a/pkgs/tools/misc/ntfy-sh/package.json b/pkgs/tools/misc/ntfy-sh/package.json
new file mode 100644
index 0000000000000..e97191b004bcd
--- /dev/null
+++ b/pkgs/tools/misc/ntfy-sh/package.json
@@ -0,0 +1,43 @@
+{
+  "name": "ntfy",
+  "version": "1.0.0",
+  "private": true,
+  "scripts": {
+    "start": "react-scripts start",
+    "build": "react-scripts build",
+    "test": "react-scripts test",
+    "eject": "react-scripts eject"
+  },
+  "dependencies": {
+    "@emotion/react": "^11.8.2",
+    "@emotion/styled": "^11.8.1",
+    "@mui/icons-material": "^5.4.2",
+    "@mui/material": "latest",
+    "dexie": "^3.2.1",
+    "dexie-react-hooks": "^1.1.1",
+    "i18next": "^21.6.14",
+    "i18next-browser-languagedetector": "^6.1.4",
+    "i18next-http-backend": "^1.4.0",
+    "js-base64": "^3.7.2",
+    "react": "latest",
+    "react-dom": "latest",
+    "react-i18next": "^11.16.2",
+    "react-infinite-scroll-component": "^6.1.0",
+    "react-router-dom": "^6.2.2",
+    "react-scripts": "^5.0.0",
+    "stacktrace-gps": "^3.0.4",
+    "stacktrace-js": "^2.0.2"
+  },
+  "browserslist": {
+    "production": [
+      ">0.2%",
+      "not dead",
+      "not op_mini all"
+    ],
+    "development": [
+      "last 1 chrome version",
+      "last 1 firefox version",
+      "last 1 safari version"
+    ]
+  }
+}
diff --git a/pkgs/tools/misc/ntfy-sh/update.sh b/pkgs/tools/misc/ntfy-sh/update.sh
new file mode 100755
index 0000000000000..8d416981e44ce
--- /dev/null
+++ b/pkgs/tools/misc/ntfy-sh/update.sh
@@ -0,0 +1,24 @@
+#!/usr/bin/env nix-shell
+#! nix-shell -i bash -p nodePackages.node2nix curl jq nix
+
+set -euo pipefail
+# cd to the folder containing this script
+cd "$(dirname "$0")"
+
+CURRENT_VERSION=$(nix-instantiate ../../../../. --eval --strict -A ntfy-sh.version | tr -d '"')
+TARGET_VERSION="$(curl -sL https://api.github.com/repos/binwiederhier/ntfy/releases/latest | jq --exit-status -r ".tag_name")"
+
+if [[ "v$CURRENT_VERSION" == "$TARGET_VERSION" ]]; then
+    echo "ntfy-sh is up-to-date: ${CURRENT_VERSION}"
+    exit 0
+fi
+
+echo "ntfy-sh: $CURRENT_VERSION -> $TARGET_VERSION"
+
+rm -f package.json package-lock.json
+curl -sLO https://github.com/binwiederhier/ntfy/raw/$TARGET_VERSION/web/package.json
+curl -sL -o package-lock-temp.json https://github.com/binwiederhier/ntfy/raw/$TARGET_VERSION/web/package-lock.json
+
+./generate-dependencies.sh
+
+rm ./package-lock-temp.json
diff --git a/pkgs/tools/misc/ntfy/default.nix b/pkgs/tools/misc/ntfy/default.nix
index 8bee0c304f7f6..bde0e734534a2 100644
--- a/pkgs/tools/misc/ntfy/default.nix
+++ b/pkgs/tools/misc/ntfy/default.nix
@@ -1,15 +1,18 @@
 { lib
-, python39
+, stdenv
+, python
 , fetchFromGitHub
 , fetchpatch
+, withXmpp ? !stdenv.isDarwin
+, withMatrix ? true
+, withSlack ? true
+, withEmoji ? true
+, withPid ? true
+, withDbus ? stdenv.isLinux
 }:
 
 let
-  python = python39.override {
-    packageOverrides = self: super: {
-      ntfy-webpush = self.callPackage ./webpush.nix { };
-    };
-  };
+  ntfy-webpush = python.pkgs.callPackage ./webpush.nix { };
 in python.pkgs.buildPythonApplication rec {
   pname = "ntfy";
   version = "2.7.0";
@@ -27,16 +30,22 @@ in python.pkgs.buildPythonApplication rec {
     mock
   ];
 
-  propagatedBuildInputs = with python.pkgs; [
+  propagatedBuildInputs = with python.pkgs; ([
     requests ruamel-yaml appdirs
+    ntfy-webpush
+  ] ++ (lib.optionals withXmpp [
     sleekxmpp dnspython
+  ]) ++ (lib.optionals withMatrix [
+    matrix-client
+  ]) ++ (lib.optionals withSlack [
+    slack-sdk
+  ]) ++ (lib.optionals withEmoji [
     emoji
+  ]) ++ (lib.optionals withPid [
     psutil
-    matrix-client
+  ]) ++ (lib.optionals withDbus [
     dbus-python
-    ntfy-webpush
-    slack-sdk
-  ];
+  ]));
 
   patches = [
     # Fix Slack integration no longer working.
@@ -55,6 +64,12 @@ in python.pkgs.buildPythonApplication rec {
     })
   ];
 
+  postPatch = ''
+    # We disable the Darwin specific things because it relies on pyobjc, which we don't have.
+    substituteInPlace setup.py \
+      --replace "':sys_platform == \"darwin\"'" "'darwin'"
+  '';
+
   checkPhase = ''
     HOME=$(mktemp -d) ${python.interpreter} setup.py test
   '';
diff --git a/pkgs/tools/misc/octosql/default.nix b/pkgs/tools/misc/octosql/default.nix
index 2dbe6c7eb988a..5e310819d3675 100644
--- a/pkgs/tools/misc/octosql/default.nix
+++ b/pkgs/tools/misc/octosql/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "octosql";
-  version = "0.10.0";
+  version = "0.11.0";
 
   src = fetchFromGitHub {
     owner  = "cube2222";
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "sha256-qeF34GBR/OtvWBN5mcLMJGzOI/3DzbScJVM0pvlTvyw=";
+    sha256 = "sha256-wzi+rDZsrffeKuNbTlWRH9jdo4+tiDTAporGdQfIqEw=";
   };
 
-  vendorSha256 = "sha256-ukNjLk1tTdw0bwXaYAEDuHfzxHuAX1xyqRqC6wmW/H4=";
+  vendorSha256 = "sha256-as8vJmUH0mDPQ8K6D5yRybPV5ibvHEtyQjArXjimGpo=";
 
   ldflags = [ "-s" "-w" "-X github.com/cube2222/octosql/cmd.VERSION=${version}" ];
 
diff --git a/pkgs/tools/misc/opentelemetry-collector/contrib.nix b/pkgs/tools/misc/opentelemetry-collector/contrib.nix
index cd63ca305ea1e..83585f41149e5 100644
--- a/pkgs/tools/misc/opentelemetry-collector/contrib.nix
+++ b/pkgs/tools/misc/opentelemetry-collector/contrib.nix
@@ -16,7 +16,7 @@ buildGoModule rec {
   };
   # proxy vendor to avoid hash missmatches between linux and macOS
   proxyVendor = true;
-  vendorSha256 = "sha256-Fl2/rPrtbL3/gcM5hm4MgQwcS0PValuxa+nThYAE4l0=";
+  vendorSha256 = "sha256-aEhNq/e3erW2e5tHMtoePiVFpIY6Mb25k+SVRhIWTr0=";
 
   subPackages = [ "cmd/otelcontribcol" ];
 
diff --git a/pkgs/tools/misc/osm2pgsql/default.nix b/pkgs/tools/misc/osm2pgsql/default.nix
index 297f98ee3db3d..ee290402962cf 100644
--- a/pkgs/tools/misc/osm2pgsql/default.nix
+++ b/pkgs/tools/misc/osm2pgsql/default.nix
@@ -14,17 +14,18 @@
 , libosmium
 , protozero
 , rapidjson
+, testers
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "osm2pgsql";
-  version = "1.7.0";
+  version = "1.7.1";
 
   src = fetchFromGitHub {
     owner = "openstreetmap";
-    repo = pname;
-    rev = version;
-    hash = "sha256-MWJzCZdqvy/nH1Doj0fmGuzTubaHDnPOED7qgzvJ3ZU=";
+    repo = "osm2pgsql";
+    rev = finalAttrs.version;
+    hash = "sha256-+//cAoN8m66SboEYP5Dhtm0q0+oyvEr5o584e4JQ9xM=";
   };
 
   postPatch = ''
@@ -45,6 +46,10 @@ stdenv.mkDerivation rec {
     "-DEXTERNAL_FMT=ON"
   ] ++ lib.optional withLuaJIT "-DWITH_LUAJIT:BOOL=ON";
 
+  passthru.tests.version = testers.testVersion {
+    package = finalAttrs.finalPackage;
+  };
+
   meta = with lib; {
     description = "OpenStreetMap data to PostgreSQL converter";
     homepage = "https://osm2pgsql.org";
@@ -52,4 +57,4 @@ stdenv.mkDerivation rec {
     platforms = platforms.unix;
     maintainers = with maintainers; [ jglukasik das-g ];
   };
-}
+})
diff --git a/pkgs/tools/misc/owofetch/default.nix b/pkgs/tools/misc/owofetch/default.nix
new file mode 100644
index 0000000000000..54b2fa35d696b
--- /dev/null
+++ b/pkgs/tools/misc/owofetch/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, stdenvNoCC
+, rustPlatform
+, fetchFromGitHub
+, Foundation
+, DiskArbitration
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "owofetch";
+
+  version = "0.3.1";
+
+  src = fetchFromGitHub {
+    owner = "netthier";
+    repo = "owofetch-rs";
+    rev = "v${version}";
+    sha256 = "sha256-I8mzOUvm72KLLBumpgn9gNyx9FKvUrB4ze1iM1+OA18=";
+  };
+
+  cargoSha256 = "sha256-rfN4QERs1H1G7ZZim//78vlxbYfU4Cx7SYYUz/QLKeU=";
+
+  buildInputs = lib.optionals stdenvNoCC.isDarwin [
+    Foundation
+    DiskArbitration
+  ];
+
+  meta = with lib; {
+    description = "Alternative to *fetch, uwuifies all stats";
+    homepage = "https://github.com/netthier/owofetch-rs";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ nullishamy ];
+  };
+}
diff --git a/pkgs/tools/misc/panoply/default.nix b/pkgs/tools/misc/panoply/default.nix
index 611874ab76841..31a9e3a7f041e 100644
--- a/pkgs/tools/misc/panoply/default.nix
+++ b/pkgs/tools/misc/panoply/default.nix
@@ -2,11 +2,11 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "panoply";
-  version = "5.2.0";
+  version = "5.2.1";
 
   src = fetchurl {
     url = "https://www.giss.nasa.gov/tools/panoply/download/PanoplyJ-${version}.tgz";
-    sha256 = "sha256-ko2UB7jy2sob5i/TAjjJVBuVyvqgh4awB1jEv8DplM0=";
+    sha256 = "sha256-ukIH6hiWg8GMq28chfxIb2uHZaaymL9x/BhbFnIzw0Y=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/misc/phrase-cli/default.nix b/pkgs/tools/misc/phrase-cli/default.nix
index 232d1b368e1fb..ea92521ca6125 100644
--- a/pkgs/tools/misc/phrase-cli/default.nix
+++ b/pkgs/tools/misc/phrase-cli/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "phrase-cli";
-  version = "2.5.1";
+  version = "2.5.2";
 
   src = fetchFromGitHub {
     owner = "phrase";
     repo = "phrase-cli";
     rev = version;
-    sha256 = "sha256-nDeX8h2rGKIuN2h29Fmr5V7THVXnw23lyn/FKUQ3veM=";
+    sha256 = "sha256-VE9HsNZJ6bPgqhWUpxf5/dC6giGaK3H9bawSs0S2SJ8=";
   };
 
-  vendorSha256 = "sha256-Y/COa58r/1wN+bkUolXov+LOy0nyXgbUYbkmRWXxl0E=";
+  vendorSha256 = "sha256-1TXDGs3ByBX8UQWoiT7hFZpwbwFlDhHHU03zw4+Zml0=";
 
   ldflags = [ "-X=github.com/phrase/phrase-cli/cmd.PHRASE_CLIENT_VERSION=${version}" ];
 
diff --git a/pkgs/tools/misc/popsicle/default.nix b/pkgs/tools/misc/popsicle/default.nix
index e9369270fcd00..bae9465c7cb88 100644
--- a/pkgs/tools/misc/popsicle/default.nix
+++ b/pkgs/tools/misc/popsicle/default.nix
@@ -49,7 +49,7 @@ rustPlatform.buildRustPackage.override { stdenv = stdenv; } rec {
   postPatch = ''
     # Have to do this here instead of in preConfigure because
     # cargoDepsCopy gets unset after postPatch.
-    configureFlagsArray+=("RUST_VENDORED_SOURCES=$NIX_BUILD_TOP/$cargoDepsCopy")
+    configureFlagsArray+=("RUST_VENDORED_SOURCES=$cargoDepsCopy")
   '';
 
   makeFlags = [
diff --git a/pkgs/tools/misc/pspg/default.nix b/pkgs/tools/misc/pspg/default.nix
index d10b30e981819..3fdca1c589192 100644
--- a/pkgs/tools/misc/pspg/default.nix
+++ b/pkgs/tools/misc/pspg/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "pspg";
-  version = "5.5.7";
+  version = "5.5.8";
 
   src = fetchFromGitHub {
     owner = "okbob";
     repo = pname;
     rev = version;
-    sha256 = "sha256-kg3jV3TNG80oviy25U2tmShBACfpXDr4zuc/FD2E/Xo=";
+    sha256 = "sha256-D7aQXP95ax1m4Tmm6ipOLen4WnFcyn4HU0BkTEPCcj4=";
   };
 
   nativeBuildInputs = [ pkg-config installShellFiles ];
diff --git a/pkgs/tools/misc/qflipper/default.nix b/pkgs/tools/misc/qflipper/default.nix
index d09aec664ade3..f0d001cf8a1ae 100644
--- a/pkgs/tools/misc/qflipper/default.nix
+++ b/pkgs/tools/misc/qflipper/default.nix
@@ -23,8 +23,8 @@
 }:
 let
   pname = "qFlipper";
-  version = "1.1.3";
-  sha256 = "sha256-/MYX/WnK3cClIOImb5/awT8lX2Wx8g+r/RVt3RH7d0c=";
+  version = "1.2.1";
+  sha256 = "sha256-6pfkZfT/8DNZGIdc8YvHN2TPyhDqHU6e3mqtAZOpHLo=";
   timestamp = "99999999999";
   commit = "nix-${version}";
 
diff --git a/pkgs/tools/misc/remind/default.nix b/pkgs/tools/misc/remind/default.nix
index 619028c6eb7b0..99684c9a326d0 100644
--- a/pkgs/tools/misc/remind/default.nix
+++ b/pkgs/tools/misc/remind/default.nix
@@ -16,11 +16,11 @@ let
 in
 tcl.mkTclDerivation rec {
   pname = "remind";
-  version = "04.00.03";
+  version = "04.01.00";
 
   src = fetchurl {
     url = "https://dianne.skoll.ca/projects/remind/download/remind-${version}.tar.gz";
-    sha256 = "sha256-slTeBD7zk3aUxaRYBwrOtNz4cbWL0q57Me8SWwB3eHk=";
+    sha256 = "sha256-P0aDmEHkxMGk3gwgDwFIlNNoLOfSZfOHU1VYQkOLQGE=";
   };
 
   propagatedBuildInputs = tclLibraries;
diff --git a/pkgs/tools/misc/rlwrap/default.nix b/pkgs/tools/misc/rlwrap/default.nix
index 7766237753f9f..3a050cf781e55 100644
--- a/pkgs/tools/misc/rlwrap/default.nix
+++ b/pkgs/tools/misc/rlwrap/default.nix
@@ -25,6 +25,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/hanslub42/rlwrap";
     license = licenses.gpl2Plus;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ SuperSandro2000 ];
+    maintainers = with maintainers; [ SuperSandro2000 srapenne ];
   };
 }
diff --git a/pkgs/tools/misc/rust-motd/default.nix b/pkgs/tools/misc/rust-motd/default.nix
index bfd4db8ff8829..a2c7710984ea9 100644
--- a/pkgs/tools/misc/rust-motd/default.nix
+++ b/pkgs/tools/misc/rust-motd/default.nix
@@ -9,26 +9,33 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rust-motd";
-  version = "0.2.1";
+  version = "1.0.0";
 
   src = fetchFromGitHub {
     owner = "rust-motd";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-iuADR7m+wdmsQ897o4CQHqDv9PmYu/vJgO5C6Dluao4=";
+    hash = "sha256-w984vvjjieSv4eM3jT8zJIIR7/7pmADhR3Esj+2dCTs=";
   };
 
-  cargoSha256 = "sha256-kdSMcADoTpMU4w2XSv0pPQZC155rrQACQ4XTVyj7eeA=";
+  cargoHash = "sha256-L/QdFjSYm3PekKS3tdsUl8XBVyIBE044EHOIB+aEltI=";
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [
+    pkg-config
+  ];
 
-  buildInputs = [ openssl ] ++ lib.optional stdenv.isDarwin Security;
+  buildInputs = [
+    openssl
+  ] ++ lib.optional stdenv.isDarwin [
+    Security
+  ];
 
   OPENSSL_NO_VENDOR = 1;
 
   meta = with lib; {
     description = "Beautiful, useful MOTD generation with zero runtime dependencies";
     homepage = "https://github.com/rust-motd/rust-motd";
+    changelog = "https://github.com/rust-motd/rust-motd/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ figsoda ];
   };
diff --git a/pkgs/tools/misc/sfeed/default.nix b/pkgs/tools/misc/sfeed/default.nix
index 9493636a0db47..57bcd98b89d7b 100644
--- a/pkgs/tools/misc/sfeed/default.nix
+++ b/pkgs/tools/misc/sfeed/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "sfeed";
-  version = "1.5";
+  version = "1.6";
 
   src = fetchgit {
     url = "git://git.codemadness.org/sfeed";
     rev = version;
-    sha256 = "sha256-OF6xVzvTMbe8Yo64MIg7Cs91XtTBD5GtwAKUbQGYffA=";
+    sha256 = "sha256-GfRy/kzlFonje2Z/g7qNkbrDHBBIReN+fHVz1vsApqs=";
   };
 
   buildInputs = [ ncurses ];
diff --git a/pkgs/tools/misc/star-history/default.nix b/pkgs/tools/misc/star-history/default.nix
new file mode 100644
index 0000000000000..0bd10a5750500
--- /dev/null
+++ b/pkgs/tools/misc/star-history/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, rustPlatform
+, fetchCrate
+, pkg-config
+, openssl
+, stdenv
+, Security
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "star-history";
+  version = "1.0.4";
+
+  src = fetchCrate {
+    inherit pname version;
+    sha256 = "sha256-sVcYQneWEZXcsbzMJ2ZfHS0C529J6s1sDxrcIojEC4U=";
+  };
+
+  cargoSha256 = "sha256-d0PesmJTZFVoVwBLMZzOsF76hcUbRaEoymmfw3Qh9mc=";
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [
+    Security
+  ];
+
+  meta = with lib; {
+    description = "Command line program to generate a graph showing number of GitHub stars of a user, org or repo over time";
+    homepage = "https://github.com/dtolnay/star-history";
+    license = with licenses; [ asl20 /* or */ mit ];
+    maintainers = with maintainers; [ figsoda ];
+  };
+}
diff --git a/pkgs/tools/misc/tmux/default.nix b/pkgs/tools/misc/tmux/default.nix
index 44cbe713f096e..0602f9d19d83d 100644
--- a/pkgs/tools/misc/tmux/default.nix
+++ b/pkgs/tools/misc/tmux/default.nix
@@ -77,6 +77,6 @@ stdenv.mkDerivation rec {
     changelog = "https://github.com/tmux/tmux/raw/${version}/CHANGES";
     license = lib.licenses.bsd3;
     platforms = lib.platforms.unix;
-    maintainers = with lib.maintainers; [ thammers fpletz SuperSandro2000 ];
+    maintainers = with lib.maintainers; [ thammers fpletz SuperSandro2000 srapenne ];
   };
 }
diff --git a/pkgs/tools/misc/twspace-dl/default.nix b/pkgs/tools/misc/twspace-dl/default.nix
new file mode 100644
index 0000000000000..e1a3f06b2e99f
--- /dev/null
+++ b/pkgs/tools/misc/twspace-dl/default.nix
@@ -0,0 +1,29 @@
+{ lib, python3Packages, ffmpeg }:
+
+python3Packages.buildPythonApplication rec {
+  pname = "twspace-dl";
+  version = "2022.6.6.1";
+
+  format = "setuptools";
+
+  src = python3Packages.fetchPypi {
+    inherit pname version;
+    sha256 = "47622f306f2601185b00d6ef24f821810adcc581b7361c423eec979263725afc";
+  };
+
+  propagatedBuildInputs = with python3Packages; [
+    requests
+  ];
+
+  makeWrapperArgs = [ "--prefix PATH : ${lib.makeBinPath [ ffmpeg ]}" ];
+
+  pythonImportsCheck = [ "twspace_dl" ];
+
+  meta = with lib; {
+    description = "A python module to download twitter spaces";
+    homepage = "https://github.com/HoloArchivists/twspace-dl";
+    license = licenses.gpl2Only;
+    maintainers = with maintainers; [ marsam ];
+    mainProgram = "twspace_dl";
+  };
+}
diff --git a/pkgs/tools/misc/usbimager/default.nix b/pkgs/tools/misc/usbimager/default.nix
index 1aac4c5c80242..095e6ac400842 100644
--- a/pkgs/tools/misc/usbimager/default.nix
+++ b/pkgs/tools/misc/usbimager/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitLab, pkg-config
+{ lib, stdenv, fetchFromGitLab, pkg-config, wrapGAppsHook
 , withLibui ? true, gtk3
 , withUdisks ? stdenv.isLinux, udisks, glib
 , libX11 }:
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   sourceRoot = "source/src/";
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
   buildInputs = lib.optionals withUdisks [ udisks glib ]
     ++ lib.optional (!withLibui) libX11
     ++ lib.optional withLibui gtk3;
diff --git a/pkgs/tools/misc/vector/default.nix b/pkgs/tools/misc/vector/default.nix
index 5f8074cbdafff..ebf2f082db028 100644
--- a/pkgs/tools/misc/vector/default.nix
+++ b/pkgs/tools/misc/vector/default.nix
@@ -1,6 +1,7 @@
 { stdenv
 , lib
 , fetchFromGitHub
+, fetchpatch
 , rustPlatform
 , pkg-config
 , llvmPackages
@@ -40,10 +41,28 @@ rustPlatform.buildRustPackage {
     owner = "vectordotdev";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-RfKg14r3B5Jx2vIa4gpJs5vXRqSXKOXKRFmmQmzQorQ=";
+    hash = "sha256-RfKg14r3B5Jx2vIa4gpJs5vXRqSXKOXKRFmmQmzQorQ=";
   };
 
-  cargoSha256 = "sha256-l2rrT2SeeH4bYYlzSiFASNBxtg4TBm1dRA4cFRfvpkk=";
+  patches = [
+    (fetchpatch {
+      name = "rust-1.64-part1.patch";
+      url = "https://github.com/vectordotdev/vector/commit/e7437df97711b6a660a3532fe5026244472a900f.patch";
+      hash = "sha256-EyheI3nngt72+ZZNNsjp3KV1CuRb9CZ7wUCHt0twFVs=";
+    })
+    (fetchpatch {
+      name = "rust-1.64-part2.patch";
+      url = "https://github.com/vectordotdev/vector/commit/e80c7afaf7601cf936c7c3468bd7b4b230ef6149.patch";
+      hash = "sha256-pHcq7XLn+9PKs0DnBTK5FawN5KSF8BuJf7sBO9u5Gb8=";
+      excludes = [
+        # There are too many conflicts to easily resolve patching this file, but
+        # the changes here do not block compilation.
+        "lib/lookup/src/lookup_v2/owned.rs"
+      ];
+    })
+  ];
+
+  cargoHash = "sha256-l2rrT2SeeH4bYYlzSiFASNBxtg4TBm1dRA4cFRfvpkk=";
   nativeBuildInputs = [ pkg-config cmake perl ];
   buildInputs = [ oniguruma openssl protobuf rdkafka zstd ]
     ++ lib.optionals stdenv.isDarwin [ Security libiconv coreutils CoreServices ];
@@ -108,6 +127,7 @@ rustPlatform.buildRustPackage {
     homepage = "https://github.com/timberio/vector";
     license = with licenses; [ asl20 ];
     maintainers = with maintainers; [ thoughtpolice happysalada ];
-    platforms = [ "aarch64-linux" "x86_64-linux" "aarch64-darwin" ];
+    platforms = with platforms; all;
   };
 }
+
diff --git a/pkgs/tools/misc/vtm/default.nix b/pkgs/tools/misc/vtm/default.nix
index 982f383da3047..8335e37f6e02f 100644
--- a/pkgs/tools/misc/vtm/default.nix
+++ b/pkgs/tools/misc/vtm/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "vtm";
-  version = "0.8.0";
+  version = "0.9.2";
 
   src = fetchFromGitHub {
     owner = "netxs-group";
     repo = "vtm";
     rev = "v${version}";
-    sha256 = "sha256-Ty7DC4ap2F+mPzr1xaL8XeLSjQaQQVX0oGAcPpkoag4=";
+    sha256 = "sha256-TRuTvaCALQPxilkzSODdeI2P4FuxTGg8UTHkMDiuYTU=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/tools/misc/wayshot/default.nix b/pkgs/tools/misc/wayshot/default.nix
index 659ad3add4100..64bfbe6aa4ea6 100644
--- a/pkgs/tools/misc/wayshot/default.nix
+++ b/pkgs/tools/misc/wayshot/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wayshot";
-  version = "1.1.9";
+  version = "1.2.2";
 
   src = fetchFromGitHub {
     owner = "waycrate";
     repo = pname;
     rev = version;
-    hash = "sha256-4tzL/9p/qBCSWX+O7wZlKi9qb7mIt+hoxcQY7cWlFoU=";
+    hash = "sha256-/uZ98ICdPTilUD3vBEbJ4AxGWY1xIbkK6O+bkhqIUKA=";
   };
 
-  cargoHash = "sha256-/FAI2VUoyQ1+3CuA7sEpeF5oeJdGB9CRZEp1leLnTh4=";
+  cargoHash = "sha256-j/gSrXY5n/zW3IogHewyrupTKtEm5EtOzfOzglyTP9A=";
 
   meta = with lib; {
     description = "A native, blazing-fast screenshot tool for wlroots based compositors such as sway and river";
diff --git a/pkgs/tools/misc/xdaliclock/default.nix b/pkgs/tools/misc/xdaliclock/default.nix
index abfc85766298f..0f1769fc80239 100644
--- a/pkgs/tools/misc/xdaliclock/default.nix
+++ b/pkgs/tools/misc/xdaliclock/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "xdaliclock";
-  version = "2.45";
+  version = "2.47";
 
   src = fetchurl {
     url = "https://www.jwz.org/xdaliclock/${pname}-${version}.tar.gz";
-    hash = "sha256-GHjSUuRHCAVwWcDMRb2ng1aNbheu+xnUBNLqSpPkZeQ=";
+    hash = "sha256-1Jkv9iulvyY+b5KryDr8s+v8LU95hcVi7PJQsL1rUL4=";
   };
 
   # Note: don't change this to set sourceRoot, or updateAutotoolsGnuConfigScriptsHook
diff --git a/pkgs/tools/misc/xfstests/default.nix b/pkgs/tools/misc/xfstests/default.nix
index a35b576261106..aec0bd62addd7 100644
--- a/pkgs/tools/misc/xfstests/default.nix
+++ b/pkgs/tools/misc/xfstests/default.nix
@@ -3,14 +3,14 @@
 , libuuid, libxfs, lvm2, openssl, perl, procps, quota
 , time, util-linux, which, writeScript, xfsprogs, runtimeShell }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "xfstests";
-  version = "unstable-2019-09-08";
+  version = "2022.09.04";
 
   src = fetchgit {
     url = "git://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git";
-    rev = "0837e907988a5f410cae0ae714f42f9c4242e072";
-    sha256 = "1f5cv0vwc1g9difzp69k49rc5nfd08y72vdg318j25nv3rwv7wc9";
+    rev = "v${version}";
+    sha256 = "sha256-hPFoqNmB8pewvBN1nzVMkTrMHCo0xc8tmmIODaiDeRw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/misc/yt-dlp/default.nix b/pkgs/tools/misc/yt-dlp/default.nix
index 8c6c0906b5df6..28902ecd27003 100644
--- a/pkgs/tools/misc/yt-dlp/default.nix
+++ b/pkgs/tools/misc/yt-dlp/default.nix
@@ -20,11 +20,11 @@ buildPythonPackage rec {
   # The websites yt-dlp deals with are a very moving target. That means that
   # downloads break constantly. Because of that, updates should always be backported
   # to the latest stable release.
-  version = "2022.9.1";
+  version = "2022.10.4";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-vHTuJVeQBD5FgZeq8lxsEE/vyfzaRFj2UmGUR6tK4Nc=";
+    sha256 = "sha256-F3Ki5vMrlxtNAm3q4wRPV2uAUgNSVco0DzRc/pDTjTg=";
   };
 
   propagatedBuildInputs = [ brotli certifi mutagen pycryptodomex websockets ];
diff --git a/pkgs/tools/misc/yutto/default.nix b/pkgs/tools/misc/yutto/default.nix
index 3d60bad0a4cc3..a6ac2604f08fc 100644
--- a/pkgs/tools/misc/yutto/default.nix
+++ b/pkgs/tools/misc/yutto/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonApplication rec {
   pname = "yutto";
-  version = "2.0.0b13";
+  version = "2.0.0b15";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-XqfbvlaJoRPpwnaUA52KloOsEOIt3YM0cq36DZN6lR8=";
+    hash = "sha256-TOFApMwY2WRYg2H2N0PIjylYFKnTHdszdU+AFgLYYwc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/networking/bandwhich/default.nix b/pkgs/tools/networking/bandwhich/default.nix
index 07483f24e2263..b4903bdf02221 100644
--- a/pkgs/tools/networking/bandwhich/default.nix
+++ b/pkgs/tools/networking/bandwhich/default.nix
@@ -8,22 +8,28 @@ rustPlatform.buildRustPackage rec {
     owner = "imsnif";
     repo = pname;
     rev = version;
-    sha256 = "014blvrv0kk4gzga86mbk7gd5dl1szajfi972da3lrfznck1w24n";
+    hash = "sha256-lggeJrPfZTpUEydFJ9XXgbbS3pmrGqTef2ROsPOmiwQ=";
   };
 
-  cargoSha256 = "sha256-Vrd5DIfhUSb3BONaUG8RypmVF+HWrlM0TodlWjOLa/c=";
+  cargoHash = "sha256-kGRsF+THNQahEoD3vY+XcPrr9cHjchtg86tMvcIdHPk=";
 
   buildInputs = lib.optional stdenv.isDarwin Security;
 
   # 10 passed; 47 failed https://hydra.nixos.org/build/148943783/nixlog/1
   doCheck = !stdenv.isDarwin;
 
-  # FIXME: remove when the linked-hash-map dependency is bumped upstream
   cargoPatches = [
+    # FIXME: remove when the linked-hash-map dependency is bumped upstream
+    # https://github.com/imsnif/bandwhich/pull/222/
     (fetchpatch {
-      url = "https://github.com/imsnif/bandwhich/pull/222/commits/be06905de2c4fb91afc22d50bf3cfe5a1e8003f5.patch";
-      sha256 = "sha256-FyZ7jUXK7ebXq7q/lvRSe7YdPnpYWKZE3WrSKLMjJeA=";
+      name = "update-linked-hash-map.patch";
+      url = "https://github.com/imsnif/bandwhich/commit/be06905de2c4fb91afc22d50bf3cfe5a1e8003f5.patch";
+      hash = "sha256-FyZ7jUXK7ebXq7q/lvRSe7YdPnpYWKZE3WrSKLMjJeA=";
     })
+
+    # Tweaked https://github.com/imsnif/bandwhich/pull/245 so that it merges
+    # cleanly with the earlier patch.
+    ./update-socket2-for-rust-1.64.diff
   ];
 
   meta = with lib; {
diff --git a/pkgs/tools/networking/bandwhich/update-socket2-for-rust-1.64.diff b/pkgs/tools/networking/bandwhich/update-socket2-for-rust-1.64.diff
new file mode 100644
index 0000000000000..99921205e048c
--- /dev/null
+++ b/pkgs/tools/networking/bandwhich/update-socket2-for-rust-1.64.diff
@@ -0,0 +1,160 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index bcaf9da..7d9c97e 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -76,7 +76,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "924c76597f0d9ca25d762c25a4d369d51267536465dc5064bdf0eb073ed477ea"
+ dependencies = [
+  "backtrace-sys",
+- "cfg-if",
++ "cfg-if 0.1.9",
+  "libc",
+  "rustc-demangle",
+ ]
+@@ -238,6 +238,12 @@ version = "0.1.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "b486ce3ccf7ffd79fdeb678eac06a9e6c09fc88d33836340becb8fffe87c5e33"
+ 
++[[package]]
++name = "cfg-if"
++version = "1.0.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
++
+ [[package]]
+ name = "chrono"
+ version = "0.4.9"
+@@ -357,7 +363,7 @@ version = "1.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "ba125de2af0df55319f41944744ad91c71113bf74a4646efff39afe1f6842db1"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.9",
+ ]
+ 
+ [[package]]
+@@ -388,7 +394,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace"
+ dependencies = [
+  "autocfg 1.0.1",
+- "cfg-if",
++ "cfg-if 0.1.9",
+  "crossbeam-utils",
+  "lazy_static",
+  "maybe-uninit",
+@@ -403,7 +409,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8"
+ dependencies = [
+  "autocfg 1.0.1",
+- "cfg-if",
++ "cfg-if 0.1.9",
+  "lazy_static",
+ ]
+ 
+@@ -528,7 +534,7 @@ version = "1.0.17"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "766d0e77a2c1502169d4a93ff3b8c15a71fd946cd0126309752104e5f3c46d94"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.9",
+  "crc32fast",
+  "libc",
+  "miniz_oxide",
+@@ -683,7 +689,7 @@ version = "0.1.13"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "e7db7ca94ed4cd01190ceee0d8a8052f08a247aa1b469a7f68c6a3b71afcf407"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.9",
+  "libc",
+  "wasi",
+ ]
+@@ -894,7 +900,7 @@ version = "0.4.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.9",
+ ]
+ 
+ [[package]]
+@@ -960,7 +966,7 @@ version = "0.6.21"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "302dec22bcf6bae6dfb69c647187f4b4d0fb6f535521f7bc022430ce8e12008f"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.9",
+  "fuchsia-zircon",
+  "fuchsia-zircon-sys",
+  "iovec",
+@@ -1033,7 +1039,7 @@ version = "0.2.33"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.9",
+  "libc",
+  "winapi 0.3.8",
+ ]
+@@ -1120,7 +1126,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "8d575eff3665419f9b83678ff2815858ad9d11567e082f5ac1814baba4e2bcb4"
+ dependencies = [
+  "bitflags 1.2.1",
+- "cfg-if",
++ "cfg-if 0.1.9",
+  "foreign-types",
+  "lazy_static",
+  "libc",
+@@ -1176,7 +1182,7 @@ version = "0.7.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "d58c7c768d4ba344e3e8d72518ac13e259d7c7ade24167003b8488e10b6740a3"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.9",
+  "cloudabi",
+  "libc",
+  "redox_syscall",
+@@ -1840,13 +1846,12 @@ checksum = "4ecf3b85f68e8abaa7555aa5abdb1153079387e60b718283d732f03897fcfc86"
+ 
+ [[package]]
+ name = "socket2"
+-version = "0.3.11"
++version = "0.3.19"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e8b74de517221a2cb01a53349cf54182acdc31a074727d3079068448c0676d85"
++checksum = "122e570113d28d773067fab24266b66753f6ea915758651696b6e35e49f88d6e"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 1.0.0",
+  "libc",
+- "redox_syscall",
+  "winapi 0.3.8",
+ ]
+ 
+@@ -1990,7 +1995,7 @@ version = "0.15.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "13816d558f404113dfdf855ed982f160cf697b3e573a68b2b798062032182212"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.9",
+  "doc-comment",
+  "libc",
+  "ntapi",
+@@ -2005,7 +2010,7 @@ version = "3.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.9",
+  "libc",
+  "rand 0.7.2",
+  "redox_syscall",
+@@ -2121,7 +2126,7 @@ version = "0.18.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "72d7df08b45f4d6d124cdae3c303f9908159a17b39e633e524349e91bc798d32"
+ dependencies = [
+- "cfg-if",
++ "cfg-if 0.1.9",
+  "failure",
+  "futures",
+  "ipconfig",
diff --git a/pkgs/tools/networking/bwm-ng/default.nix b/pkgs/tools/networking/bwm-ng/default.nix
index cfe0d4176a6f6..397fb30490a36 100644
--- a/pkgs/tools/networking/bwm-ng/default.nix
+++ b/pkgs/tools/networking/bwm-ng/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
     homepage = "http://www.gropp.org/?id=projects&sub=bwm-ng";
     license = licenses.gpl2Plus;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ srapenne ];
     longDescription = ''
       bwm-ng supports:
        - /proc/net/dev, netstat, getifaddr, sysctl, kstat, /proc/diskstats /proc/partitions, IOKit,
diff --git a/pkgs/tools/networking/dhcp/default.nix b/pkgs/tools/networking/dhcp/default.nix
index 1d1a01d17cfaa..7446403f6b20b 100644
--- a/pkgs/tools/networking/dhcp/default.nix
+++ b/pkgs/tools/networking/dhcp/default.nix
@@ -9,11 +9,11 @@
 
 stdenv.mkDerivation rec {
   pname = "dhcp";
-  version = "4.4.3";
+  version = "4.4.3-P1";
 
   src = fetchurl {
     url = "https://ftp.isc.org/isc/dhcp/${version}/${pname}-${version}.tar.gz";
-    sha256 = "sha256-Dj7GtMKgXsAUiHS82ZmmbQVRg3jXdCH2B/sLydATWBg=";
+    sha256 = "sha256-CsQWu1WZfKhjIXT9EHN/1hzbjbonUhYKM1d1vCHcc8c=";
   };
 
   patches =
diff --git a/pkgs/tools/networking/dnstwist/default.nix b/pkgs/tools/networking/dnstwist/default.nix
index 03f31e5064b8a..d812873b086c9 100644
--- a/pkgs/tools/networking/dnstwist/default.nix
+++ b/pkgs/tools/networking/dnstwist/default.nix
@@ -5,13 +5,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "dnstwist";
-  version = "20220815";
+  version = "20221008";
 
   src = fetchFromGitHub {
     owner = "elceef";
     repo = pname;
-    rev = version;
-    sha256 = "sha256-cmwgnjhfTqehMCu6mN0840NIaTN8gf4r098ULVj0yPI=";
+    rev = "refs/tags/${version}";
+    sha256 = "sha256-JRlUQoN8lNEaovAeYzrect/r6jdXtIzChK2lqaxAavc=";
   };
 
   propagatedBuildInputs = with python3.pkgs; [
diff --git a/pkgs/tools/networking/doggo/default.nix b/pkgs/tools/networking/doggo/default.nix
new file mode 100644
index 0000000000000..9b8bf0fb2ce4d
--- /dev/null
+++ b/pkgs/tools/networking/doggo/default.nix
@@ -0,0 +1,44 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+, installShellFiles
+}:
+
+buildGoModule rec {
+  pname = "doggo";
+  version = "0.5.4";
+
+  src = fetchFromGitHub {
+    owner = "mr-karan";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-6jNs8vigrwKk47Voe42J9QYMTP7KnNAtJ5vFZTUW680=";
+  };
+
+  vendorSha256 = "sha256-pyzu89HDFrMQqYJZC2vdqzOc6PiAbqhaTgYakmN0qj8=";
+  nativeBuildInputs = [ installShellFiles ];
+  subPackages = [ "cmd/doggo" ];
+
+  ldflags = [
+    "-w -s"
+    "-X main.buildVersion=v${version}"
+  ];
+
+  postInstall = ''
+    installShellCompletion --cmd doggo \
+      --fish --name doggo.fish completions/doggo.fish \
+      --zsh --name _doggo completions/doggo.zsh
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/mr-karan/doggo";
+    description = "Command-line DNS Client for Humans. Written in Golang";
+    longDescription = ''
+      doggo is a modern command-line DNS client (like dig) written in Golang.
+      It outputs information in a neat concise manner and supports protocols like DoH, DoT, DoQ, and DNSCrypt as well
+    '';
+    license = licenses.gpl3Only;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ georgesalkhouri ];
+  };
+}
diff --git a/pkgs/tools/networking/gobgp/default.nix b/pkgs/tools/networking/gobgp/default.nix
index 3ec466e92663a..329046d7e67ed 100644
--- a/pkgs/tools/networking/gobgp/default.nix
+++ b/pkgs/tools/networking/gobgp/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "gobgp";
-  version = "3.6.0";
+  version = "3.7.0";
 
   src = fetchFromGitHub {
     owner = "osrg";
     repo = "gobgp";
     rev = "v${version}";
-    sha256 = "sha256-NJK8MW/vUZwdGIEipL/zyh24o/pu7fwQMeDxyoFdtP4=";
+    sha256 = "sha256-3Brm9pWCLCSjNE5ZACAV4K34L3oBfvT9VI4TKMXrmgY=";
   };
 
   vendorSha256 = "sha256-FxfER3THsA7NRuQKEdWQxgUN0SiNI00hGUMVD+3BaG4=";
diff --git a/pkgs/tools/networking/goimapnotify/default.nix b/pkgs/tools/networking/goimapnotify/default.nix
index c2581fe3485be..5df6013855a3a 100644
--- a/pkgs/tools/networking/goimapnotify/default.nix
+++ b/pkgs/tools/networking/goimapnotify/default.nix
@@ -24,7 +24,6 @@ buildGoModule rec {
       "Execute scripts on IMAP mailbox changes (new/deleted/updated messages) using IDLE";
     homepage = "https://gitlab.com/shackra/goimapnotify";
     license = licenses.gpl3Plus;
-    platforms = platforms.linux;
     maintainers = with maintainers; [ wohanley ];
   };
 }
diff --git a/pkgs/tools/networking/haproxy/default.nix b/pkgs/tools/networking/haproxy/default.nix
index 2a51d9ac0755a..e43c58d78d489 100644
--- a/pkgs/tools/networking/haproxy/default.nix
+++ b/pkgs/tools/networking/haproxy/default.nix
@@ -11,11 +11,11 @@ assert usePcre -> pcre != null;
 
 stdenv.mkDerivation rec {
   pname = "haproxy";
-  version = "2.6.5";
+  version = "2.6.6";
 
   src = fetchurl {
     url = "https://www.haproxy.org/download/${lib.versions.majorMinor version}/src/${pname}-${version}.tar.gz";
-    sha256 = "sha256-zp4Z6/zdQ+Ua+KYJDx341RLZct33QvpkimQ7uxkFZgU=";
+    sha256 = "sha256-0MgMkMBK55WYtYuXSdU3h/APe1FRdefYID8nluamWU0=";
   };
 
   buildInputs = [ openssl zlib ]
diff --git a/pkgs/tools/networking/hysteria/default.nix b/pkgs/tools/networking/hysteria/default.nix
index d0178698775f9..f37c0aa04babc 100644
--- a/pkgs/tools/networking/hysteria/default.nix
+++ b/pkgs/tools/networking/hysteria/default.nix
@@ -4,18 +4,29 @@
 }:
 buildGoModule rec {
   pname = "hysteria";
-  version = "1.2.0";
+  version = "1.2.1";
 
   src = fetchFromGitHub {
     owner = "HyNetwork";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-aHIb79P1a+91hIcK1toHZqqXIZ0rwfGXDQc42rQQmX4=";
+    sha256 = "sha256-xL8xRVJdCyaP39TO+cJLAPbdc7WHxgBQMEyxkyhWlA8=";
   };
 
-  vendorSha256 = "sha256-yAQpyz4pDXOfGF4hho/2Pt9yD3VdWYAmIvaXJjDMjis=";
+  vendorSha256 = "sha256-VCQHkkYmGU0ZPmTuYu2XFa5ezDJ3x7dZGN+Usmq4sOY=";
   proxyVendor = true;
 
+  ldflags = [
+    "-s"
+    "-w"
+    "-X main.appVersion=${version}"
+    "-X main.appCommit=${version}"
+  ];
+
+  postInstall = ''
+    mv $out/bin/cmd $out/bin/hysteria
+  '';
+
   # Network required
   doCheck = false;
 
diff --git a/pkgs/tools/networking/ipinfo/default.nix b/pkgs/tools/networking/ipinfo/default.nix
index 6269c23afe2bc..0d6c2f617dd2b 100644
--- a/pkgs/tools/networking/ipinfo/default.nix
+++ b/pkgs/tools/networking/ipinfo/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "ipinfo";
-  version = "2.9.0";
+  version = "2.10.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = "cli";
     rev = "${pname}-${version}";
-    hash = "sha256-kv8krhmqwE4IfEYPpN+cRAnku/Vm0ctQskCiYAb5YQ0=";
+    hash = "sha256-oim234254qUWITfgBfB2theMgpVnGHNmrzwE5ULM2M4=";
   };
 
   vendorSha256 = null;
diff --git a/pkgs/tools/networking/iwgtk/default.nix b/pkgs/tools/networking/iwgtk/default.nix
index ef220a8c28e2a..c2781fbaf7977 100644
--- a/pkgs/tools/networking/iwgtk/default.nix
+++ b/pkgs/tools/networking/iwgtk/default.nix
@@ -5,7 +5,7 @@
 , ninja
 , pkg-config
 , scdoc
-, wrapGAppsHook
+, wrapGAppsHook4
 , gtk4
 , qrencode
 }:
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   # patch systemd service to pass necessary environments and use absolute paths
   patches = [ ./systemd-service.patch ];
 
-  nativeBuildInputs = [ meson ninja pkg-config scdoc wrapGAppsHook ];
+  nativeBuildInputs = [ meson ninja pkg-config scdoc wrapGAppsHook4 ];
 
   buildInputs = [ gtk4 qrencode ];
 
diff --git a/pkgs/tools/networking/libreswan/default.nix b/pkgs/tools/networking/libreswan/default.nix
index 7c500d509258c..25ad29b1cfe71 100644
--- a/pkgs/tools/networking/libreswan/default.nix
+++ b/pkgs/tools/networking/libreswan/default.nix
@@ -30,6 +30,7 @@
 , docbook_xml_dtd_412
 , docbook_xsl
 , findXMLCatalogs
+, dns-root-data
 }:
 
 let
@@ -43,11 +44,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "libreswan";
-  version = "4.7";
+  version = "4.8";
 
   src = fetchurl {
     url = "https://download.libreswan.org/${pname}-${version}.tar.gz";
-    sha256 = "0i7wyfgkaq6kcfhh1yshb1v7q42n3zvdkhq10f3ks1h075xk7mnx";
+    sha256 = "sha256-gEy5EX1/tBGYE7FVrJF+NFZY41ehOBim9t/Oikch4gs=";
   };
 
   strictDeps = true;
@@ -77,9 +78,9 @@ stdenv.mkDerivation rec {
         -e 's|/bin/bash|${runtimeShell}|g' \
         -i initsystems/systemd/ipsec.service.in \
            programs/barf/barf.in \
-           programs/verify/verify.in
+           programs/verify.linux/verify.in
     sed -e 's|\([[:blank:]]\)\(ip6\?tables\(-save\)\? -\)|\1${iptables}/bin/\2|' \
-        -i programs/verify/verify.in
+        -i programs/verify.linux/verify.in
 
     # Prevent the makefile from trying to
     # reload the systemd daemon or create tmpfiles
@@ -92,7 +93,7 @@ stdenv.mkDerivation rec {
 
     # Fix python script to use the correct python
     sed -e 's/^\(\W*\)installstartcheck()/\1sscmd = "ss"\n\0/' \
-        -i programs/verify/verify.in
+        -i programs/verify.linux/verify.in
 
     # Replace wget with curl to save a dependency
     curlArgs='-s --remote-name-all --output-dir'
@@ -113,6 +114,7 @@ stdenv.mkDerivation rec {
     "UNITDIR=$(out)/etc/systemd/system/"
     "TMPFILESDIR=$(out)/lib/tmpfiles.d/"
     "LINUX_VARIANT=nixos"
+    "DEFAULT_DNSSEC_ROOTKEY_FILE=${dns-root-data}/root.key"
   ];
 
   # Hack to make install work
diff --git a/pkgs/tools/networking/minio-client/default.nix b/pkgs/tools/networking/minio-client/default.nix
index 8b11514b1085f..afc0c9022b0fc 100644
--- a/pkgs/tools/networking/minio-client/default.nix
+++ b/pkgs/tools/networking/minio-client/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "minio-client";
-  version = "2022-09-16T09-16-47Z";
+  version = "2022-10-09T21-10-59Z";
 
   src = fetchFromGitHub {
     owner = "minio";
     repo = "mc";
     rev = "RELEASE.${version}";
-    sha256 = "sha256-8oy61ueCXJTV58CxtsB8uiKS5NVaomICu8yQ1wSxl7s=";
+    sha256 = "sha256-nsszO0sxQWtukBI4qiiU5gL1yI4rpbG5MGhtCFPUY2c=";
   };
 
-  vendorSha256 = "sha256-1jws2is/n3+l7ULTgBfO2glq4l9GzOP5AJ2wwhluQb8=";
+  vendorSha256 = "sha256-kAbbvaMREGlZYtSikZmB4J7uFwZ9SjRdf2B5g9PvBOc=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/tools/networking/mosh/default.nix b/pkgs/tools/networking/mosh/default.nix
index 121ba4395b519..fa33d42c2fdeb 100644
--- a/pkgs/tools/networking/mosh/default.nix
+++ b/pkgs/tools/networking/mosh/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchurl, fetchpatch, zlib, protobuf, ncurses, pkg-config
 , makeWrapper, perl, openssl, autoreconfHook, openssh, bash-completion
-, withUtempter ? stdenv.isLinux, libutempter }:
+, withUtempter ? stdenv.isLinux && !stdenv.hostPlatform.isMusl, libutempter }:
 
 stdenv.mkDerivation rec {
   pname = "mosh";
diff --git a/pkgs/tools/networking/mozwire/default.nix b/pkgs/tools/networking/mozwire/default.nix
index afccd8376d8f9..f8d615b525ef3 100644
--- a/pkgs/tools/networking/mozwire/default.nix
+++ b/pkgs/tools/networking/mozwire/default.nix
@@ -1,19 +1,24 @@
-{ rustPlatform, lib, stdenv, fetchFromGitHub, Security }:
+{ rustPlatform
+, lib
+, stdenv
+, fetchFromGitHub
+, Security
+}:
 
 rustPlatform.buildRustPackage rec {
   pname = "MozWire";
-  version = "0.7.0";
+  version = "0.8.0";
 
   src = fetchFromGitHub {
     owner = "NilsIrl";
     repo = pname;
     rev = "v${version}";
-    sha256 = "01bj3c34x9ywxygsz4rdyw5gc9cz8x6zzl5fd7db8qy8bx2lhlr9";
+    hash = "sha256-vC8HmwJCHMKQUsYBwRmr88tmZxPKNvI6hxlcjG2AV3Q=";
   };
 
   buildInputs = lib.optionals stdenv.isDarwin [ Security ];
 
-  cargoSha256 = "0q27p2hyw6c1fh5x8kwsrw8a1hk6z90z0z3w86ga8ryz53xg4vdi";
+  cargoHash = "sha256-9qXoMugmL6B9vC/yrMJxZ5p792ZJmrTzk/khRVTkHf4=";
 
   meta = with lib; {
     description = "MozillaVPN configuration manager giving Linux, macOS users (among others), access to MozillaVPN";
diff --git a/pkgs/tools/networking/mqttui/default.nix b/pkgs/tools/networking/mqttui/default.nix
index aa74e1d0d2e19..126d68ad7ad8e 100644
--- a/pkgs/tools/networking/mqttui/default.nix
+++ b/pkgs/tools/networking/mqttui/default.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "mqttui";
-  version = "0.17.0";
+  version = "0.18.0";
 
   src = fetchFromGitHub {
     owner = "EdJoPaTo";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-GoSIck/P6s6flmfz2JbHZLgQJXXpLaxShOhmghIIMNc=";
+    sha256 = "sha256-XREY86CcxH+YqzOpu5vXiP6lIZaj+twKQgGmn7MR1As=";
   };
 
-  cargoSha256 = "sha256-oxbHaSS9+J3KPvKDdi+tpl2BI/YdppyxqSyCSfSxjMY=";
+  cargoSha256 = "sha256-V5jVgNIV+Bl1nYKy2RYFbKYo/x65gG3RmB+XjFATxN8=";
 
   buildInputs = lib.optional stdenv.isDarwin Security;
 
diff --git a/pkgs/tools/networking/nss-mdns/default.nix b/pkgs/tools/networking/nss-mdns/default.nix
index 238c0c364f9a3..f2af99a922fdd 100644
--- a/pkgs/tools/networking/nss-mdns/default.nix
+++ b/pkgs/tools/networking/nss-mdns/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     hash = "sha256-iRaf9/gu9VkGi1VbGpxvC5q+0M8ivezCz/oAKEg5V1M=";
   };
 
-  buildInputs = [ autoreconfHook pkg-config ];
+  nativeBuildInputs = [ autoreconfHook pkg-config ];
   # Note: Although `nss-mdns' works by talking to `avahi-daemon', it
   # doesn't depend on the Avahi libraries.  Instead, it contains
   # hand-written D-Bus code to talk to the Avahi daemon.
diff --git a/pkgs/tools/networking/ofono/default.nix b/pkgs/tools/networking/ofono/default.nix
index 80e37782154cc..3733998c10b16 100644
--- a/pkgs/tools/networking/ofono/default.nix
+++ b/pkgs/tools/networking/ofono/default.nix
@@ -12,14 +12,14 @@
 
 stdenv.mkDerivation rec {
   pname = "ofono";
-  version = "1.34";
+  version = "2.0";
 
   outputs = [ "out" "dev" ];
 
   src = fetchgit {
     url = "git://git.kernel.org/pub/scm/network/ofono/ofono.git";
     rev = version;
-    sha256 = "sha256-mqltc+/RmQO8awP+J7p9fCVhNsEYA3SgxeV5Gkr1srg=";
+    sha256 = "sha256-T8rfReruvHGQCN9IDGIrFCoNjFKKMnUGPKzxo2HTZFQ=";
   };
 
   patches = [
diff --git a/pkgs/tools/networking/sipsak/default.nix b/pkgs/tools/networking/sipsak/default.nix
index 668dc18f8aced..89a7d706ccdcf 100644
--- a/pkgs/tools/networking/sipsak/default.nix
+++ b/pkgs/tools/networking/sipsak/default.nix
@@ -4,8 +4,8 @@ stdenv.mkDerivation rec {
   pname = "sipsak";
   version = "4.1.2.1";
 
+  nativeBuildInputs = [ autoreconfHook ];
   buildInputs = [
-    autoreconfHook
     openssl
     c-ares
   ];
diff --git a/pkgs/tools/networking/stevenblack-blocklist/default.nix b/pkgs/tools/networking/stevenblack-blocklist/default.nix
index c6284d7c80b05..43fcc24015665 100644
--- a/pkgs/tools/networking/stevenblack-blocklist/default.nix
+++ b/pkgs/tools/networking/stevenblack-blocklist/default.nix
@@ -1,7 +1,7 @@
 { lib, fetchFromGitHub }:
 
 let
-  version = "3.9.7";
+  version = "3.11.19";
 in
 fetchFromGitHub {
   name = "stevenblack-blocklist-${version}";
@@ -9,7 +9,7 @@ fetchFromGitHub {
   owner = "StevenBlack";
   repo = "hosts";
   rev = version;
-  sha256 = "sha256-AMeUY4aeyPIyirCLawLVjqDGB8z28q/Hm/UI+wGYZvY=";
+  sha256 = "sha256-YGD3I64g/zD5iX2oIU6Qy/WqzcWcaNs1HjMUBeKcDZ4=";
 
   meta = with lib; {
     description = "Unified hosts file with base extensions";
diff --git a/pkgs/tools/networking/strongswan/default.nix b/pkgs/tools/networking/strongswan/default.nix
index 6c6dffbef14d4..119f81baf5cb1 100644
--- a/pkgs/tools/networking/strongswan/default.nix
+++ b/pkgs/tools/networking/strongswan/default.nix
@@ -18,13 +18,13 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "strongswan";
-  version = "5.9.7"; # Make sure to also update <nixpkgs/nixos/modules/services/networking/strongswan-swanctl/swanctl-params.nix> when upgrading!
+  version = "5.9.8"; # Make sure to also update <nixpkgs/nixos/modules/services/networking/strongswan-swanctl/swanctl-params.nix> when upgrading!
 
   src = fetchFromGitHub {
     owner = "strongswan";
     repo = "strongswan";
     rev = version;
-    sha256 = "sha256-4FOeY3a6DyftrbFtBqtY0nLxdIXPnY91wMAVIBm/KvY=";
+    sha256 = "sha256-RRvMQhDVoXF3Uok/Huq20RhqSsMnAsXHKOWfrXypDOk=";
   };
 
   dontPatchELF = true;
diff --git a/pkgs/tools/networking/tdns-cli/default.nix b/pkgs/tools/networking/tdns-cli/default.nix
index 10dda6568fc3f..006e7161b19db 100644
--- a/pkgs/tools/networking/tdns-cli/default.nix
+++ b/pkgs/tools/networking/tdns-cli/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "tdns-cli";
-  version = "0.0.5";
+  version = "unstable-2021-02-19";
 
   src = fetchFromGitHub {
     owner = "rotty";
     repo = pname;
-    rev = "v${version}";
-    sha256 = "0nn036in5j1h0vxkwif0lf7fn900zy4f4kxlzy6qdx3jakgmxvwh";
+    rev = "9a5455fe8a52f3f14dc55ef81511b479c8cd70ea";
+    hash = "sha256-BGxkqlKg81izq4eOBEZFJ/MPb3UCSOo8ZTYTjtjierk=";
   };
 
-  cargoSha256 = "sha256-O4n38dla2WgZ4949Ata6AYbZF9LMnXDyuFNoXRrTN7I=";
+  cargoHash = "sha256-uRny+l/LaQPjF5AnbxgKFLdjuAxcez1BqsL4g54KAwU=";
 
   meta = with lib; {
     description = "DNS tool that aims to replace dig and nsupdate";
diff --git a/pkgs/tools/networking/unbound/default.nix b/pkgs/tools/networking/unbound/default.nix
index 189cc14ff1ba2..25fcc1bcc397e 100644
--- a/pkgs/tools/networking/unbound/default.nix
+++ b/pkgs/tools/networking/unbound/default.nix
@@ -48,20 +48,20 @@
 
 stdenv.mkDerivation rec {
   pname = "unbound";
-  version = "1.16.2";
+  version = "1.16.3";
 
   src = fetchurl {
     url = "https://nlnetlabs.nl/downloads/unbound/unbound-${version}.tar.gz";
-    hash = "sha256-LjLyg4IMJMUcod2K/s/bdHxzhaE3q+hlyZ20sldANYE=";
+    hash = "sha256-6gxmZeLDMlt2nqwd/M1g/hgo1fz2YmUAOezLP2ftso4=";
   };
 
   outputs = [ "out" "lib" "man" ]; # "dev" would only split ~20 kB
 
-  nativeBuildInputs = [ makeWrapper ]
+  nativeBuildInputs = [ makeWrapper pkg-config ]
     ++ lib.optionals withPythonModule [ swig ];
 
   buildInputs = [ openssl nettle expat libevent ]
-    ++ lib.optionals withSystemd [ pkg-config systemd ]
+    ++ lib.optionals withSystemd [ systemd ]
     ++ lib.optionals withDoH [ libnghttp2 ]
     ++ lib.optionals withPythonModule [ python ];
 
diff --git a/pkgs/tools/networking/uwimap/default.nix b/pkgs/tools/networking/uwimap/default.nix
index a10a779097a52..4bd2f872caf3e 100644
--- a/pkgs/tools/networking/uwimap/default.nix
+++ b/pkgs/tools/networking/uwimap/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, fetchpatch, pam, openssl }:
+{ lib, stdenv, fetchurl, fetchpatch, pam, openssl, libkrb5 }:
 
 stdenv.mkDerivation rec {
   pname = "uw-imap";
@@ -18,8 +18,10 @@ stdenv.mkDerivation rec {
 
   hardeningDisable = [ "format" ];
 
-  buildInputs = [ openssl ]
-    ++ lib.optional (!stdenv.isDarwin) pam;
+  buildInputs = [
+    openssl
+    (if stdenv.isDarwin then libkrb5 else pam)  # Matches the make target.
+  ];
 
   patches = [ (fetchpatch {
     url = "https://salsa.debian.org/holmgren/uw-imap/raw/dcb42981201ea14c2d71c01ebb4a61691b6f68b3/debian/patches/1006_openssl1.1_autoverify.patch";
@@ -43,11 +45,11 @@ stdenv.mkDerivation rec {
       tools/{an,ua} $out/bin
   '';
 
-  meta = {
+  meta = with lib; {
     homepage = "https://www.washington.edu/imap/";
     description = "UW IMAP toolkit - IMAP-supporting software developed by the UW";
-    license = lib.licenses.asl20;
-    platforms = with lib.platforms; linux;
+    license = licenses.asl20;
+    platforms = platforms.unix;
   };
 
   passthru = {
diff --git a/pkgs/tools/networking/whatip/default.nix b/pkgs/tools/networking/whatip/default.nix
new file mode 100644
index 0000000000000..c3e5a29f60491
--- /dev/null
+++ b/pkgs/tools/networking/whatip/default.nix
@@ -0,0 +1,63 @@
+{ lib
+, fetchFromGitLab
+, python3
+, meson
+, ninja
+, pkg-config
+, glib
+, gtk4
+, libadwaita
+, librsvg
+, blueprint-compiler
+, gobject-introspection
+, wrapGAppsHook4
+, appstream-glib
+, desktop-file-utils
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "whatip";
+  version = "1.1";
+
+  format = "other";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.gnome.org";
+    owner = "GabMus";
+    repo = pname;
+    rev = version;
+    hash = "sha256-ltimqdFTvvjXtvLC5jAdRaNX15i2Ww5mB3DIr4r9Yzg=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    blueprint-compiler
+    wrapGAppsHook4
+    appstream-glib
+    desktop-file-utils
+  ];
+
+  buildInputs = [
+    glib
+    gtk4
+    librsvg
+    libadwaita
+    gobject-introspection
+  ];
+
+  propagatedBuildInputs = with python3.pkgs; [
+    netaddr
+    requests
+    pygobject3
+  ];
+
+  meta = with lib; {
+    description = "Info on your IP";
+    homepage = "https://gitlab.gnome.org/GabMus/whatip";
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ zendo ];
+  };
+}
diff --git a/pkgs/tools/networking/wolfebin/default.nix b/pkgs/tools/networking/wolfebin/default.nix
index 2a07ada114d7c..47babc4ceb9aa 100644
--- a/pkgs/tools/networking/wolfebin/default.nix
+++ b/pkgs/tools/networking/wolfebin/default.nix
@@ -1,17 +1,17 @@
-{ lib, stdenv, fetchFromGitHub, python }:
+{ lib, stdenv, fetchFromGitHub, python3 }:
 
 stdenv.mkDerivation rec {
-  version = "5.4";
   pname = "wolfebin";
+  version = "5.6";
 
   src = fetchFromGitHub {
     owner = "thejoshwolfe";
     repo = "wolfebin";
     rev = version;
-    sha256 = "16xj6zz30sn9q05p211bmmsl0i6fknfxf8dssn6knm6nkiym8088";
+    sha256 = "sha256-tsI71/UdLaGZ3O2lNTd1c8S5OS2imquLovh0n0ez8Ts=";
   };
 
-  buildInputs = [ python ];
+  buildInputs = [ python3 ];
 
   installPhase = ''
     install -m 755 -d $out/bin
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/thejoshwolfe/wolfebin";
     description = "Quick and easy file sharing";
     license = licenses.mit;
-    maintainers = [ maintainers.andrewrk ];
+    maintainers = with maintainers; [ andrewrk ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/tools/networking/x11-ssh-askpass/default.nix b/pkgs/tools/networking/x11-ssh-askpass/default.nix
index 87bd5c77c3350..049154d64413f 100644
--- a/pkgs/tools/networking/x11-ssh-askpass/default.nix
+++ b/pkgs/tools/networking/x11-ssh-askpass/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, xlibsWrapper, imake, gccmakedep }:
+{ lib, stdenv, fetchurl, xorg, imake, gccmakedep }:
 
 stdenv.mkDerivation rec {
   pname = "x11-ssh-askpass";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ imake gccmakedep ];
-  buildInputs = [ xlibsWrapper ];
+  buildInputs = [ xorg.libX11 xorg.libXt xorg.libICE xorg.libSM ];
 
   configureFlags = [
     "--with-app-defaults-dir=$out/etc/X11/app-defaults"
diff --git a/pkgs/tools/security/arti/default.nix b/pkgs/tools/security/arti/default.nix
index 85ea5daf1f65f..2d499eaf06ba1 100644
--- a/pkgs/tools/security/arti/default.nix
+++ b/pkgs/tools/security/arti/default.nix
@@ -10,7 +10,7 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "arti";
-  version = "1.0.0";
+  version = "1.0.1";
 
   src = fetchFromGitLab {
     domain = "gitlab.torproject.org";
@@ -18,10 +18,10 @@ rustPlatform.buildRustPackage rec {
     owner = "core";
     repo = "arti";
     rev = "arti-v${version}";
-    sha256 = "sha256-BHYzthKjD1JFYcZDCjI5/w82q2rsgGhrEorPF5RExhQ=";
+    sha256 = "sha256-zzBfRZEwLNCYzcdOfeQ462r1kU22zmY0lvrPDJ5F4nE=";
   };
 
-  cargoSha256 = "sha256-BBQfefi1ZT9qIUx7xK/fH4WNgxvowl/Yvu7LgLXd4bM=";
+  cargoSha256 = "sha256-DpdnXmzs8oHLQ1aecrBduW0E08xtU6W4DGL+20Gz1+I=";
 
   nativeBuildInputs = lib.optionals stdenv.isLinux [ pkg-config ];
 
diff --git a/pkgs/tools/security/cfssl/default.nix b/pkgs/tools/security/cfssl/default.nix
index d1f0d2e973911..8d1c0df11a85c 100644
--- a/pkgs/tools/security/cfssl/default.nix
+++ b/pkgs/tools/security/cfssl/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "cfssl";
-  version = "1.6.2";
+  version = "1.6.3";
 
   src = fetchFromGitHub {
     owner = "cloudflare";
     repo = "cfssl";
     rev = "v${version}";
-    sha256 = "sha256-cyriV6z904QlkDlP80CSpakISJn7S81/2fcspAf5uk4=";
+    sha256 = "sha256-aZjb4mWoevRnPyL+b7H+VjIVklNe+u054OsmJbxPx4g=";
   };
 
   subPackages = [
diff --git a/pkgs/tools/security/chrome-token-signing/default.nix b/pkgs/tools/security/chrome-token-signing/default.nix
index 18104aa7710d2..8081c7ef6eb50 100644
--- a/pkgs/tools/security/chrome-token-signing/default.nix
+++ b/pkgs/tools/security/chrome-token-signing/default.nix
@@ -11,7 +11,8 @@ mkDerivation rec {
     sha256 = "sha256-wKy/RVR7jx5AkMJgHXsuV+jlzyfH5nDRggcIUgh2ML4=";
   };
 
-  buildInputs = [ qmake pcsclite pkg-config ];
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ qmake pcsclite ];
   dontUseQmakeConfigure = true;
 
   patchPhase = ''
diff --git a/pkgs/tools/security/clairvoyance/default.nix b/pkgs/tools/security/clairvoyance/default.nix
new file mode 100644
index 0000000000000..6d4fc13ed468b
--- /dev/null
+++ b/pkgs/tools/security/clairvoyance/default.nix
@@ -0,0 +1,51 @@
+{ lib
+, fetchFromGitHub
+, python3
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "clairvoyance";
+  version = "2.0.4";
+  format = "pyproject";
+
+  src = fetchFromGitHub {
+    owner = "nikitastupin";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-b69a3UTRt5axTSjLcEYkqGe7bFlQKCiMzoNtw91HCyI=";
+  };
+
+  nativeBuildInputs = with python3.pkgs; [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = with python3.pkgs; [
+    aiohttp
+  ];
+
+  checkInputs = with python3.pkgs; [
+    aiounittest
+    pytestCheckHook
+  ];
+
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace 'asyncio = "^3.4.3"' ""
+  '';
+
+  pythonImportsCheck = [
+    "clairvoyance"
+  ];
+
+  disabledTests = [
+    # KeyError
+    "test_probe_typename"
+  ];
+
+  meta = with lib; {
+    description = "Tool to obtain GraphQL API schemas";
+    homepage = "https://github.com/nikitastupin/clairvoyance";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/tools/security/cosign/default.nix b/pkgs/tools/security/cosign/default.nix
index 6cb20d65471c2..6cfd46954e328 100644
--- a/pkgs/tools/security/cosign/default.nix
+++ b/pkgs/tools/security/cosign/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "cosign";
-  version = "1.12.1";
+  version = "1.13.0";
 
   src = fetchFromGitHub {
     owner = "sigstore";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-IM0lCgPx3Hy8ZlTRmuLv0CGwLiVqjNTnwfiemahIJyM=";
+    sha256 = "sha256-EZHT6Ut7fI9Sx7U664r4ZvzZCH1hu9acnGvUyn8XgSw=";
   };
 
   buildInputs = lib.optional (stdenv.isLinux && pivKeySupport) (lib.getDev pcsclite)
@@ -16,11 +16,10 @@ buildGoModule rec {
 
   nativeBuildInputs = [ pkg-config installShellFiles ];
 
-  vendorSha256 = "sha256-B6KHT6RII6cUWBCC9w0yQTGwD4GEnU27UFet7J70C64=";
+  vendorSha256 = "sha256-9XRORuHx4bZn9odMD+prg/dPBkUmVqBNQYjQGCQVqiw=";
 
   subPackages = [
     "cmd/cosign"
-    "cmd/sget"
   ];
 
   tags = [] ++ lib.optionals pivKeySupport [ "pivkey" ] ++ lib.optionals pkcs11Support [ "pkcs11key" ];
@@ -45,10 +44,6 @@ buildGoModule rec {
       --bash <($out/bin/cosign completion bash) \
       --fish <($out/bin/cosign completion fish) \
       --zsh <($out/bin/cosign completion zsh)
-    installShellCompletion --cmd sget \
-      --bash <($out/bin/sget completion bash) \
-      --fish <($out/bin/sget completion fish) \
-      --zsh <($out/bin/sget completion zsh)
   '';
 
   meta = with lib; {
diff --git a/pkgs/tools/security/dirstalk/default.nix b/pkgs/tools/security/dirstalk/default.nix
new file mode 100644
index 0000000000000..59ad831b7a1e4
--- /dev/null
+++ b/pkgs/tools/security/dirstalk/default.nix
@@ -0,0 +1,36 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "dirstalk";
+  version = "1.3.3";
+
+  src = fetchFromGitHub {
+    owner = "stefanoj3";
+    repo = pname;
+    rev = version;
+    hash = "sha256-gSMkTGzMDI+scG3FQ0u0liUDL4qOPPW2UWLlAQcmmaA=";
+  };
+
+  vendorHash = "sha256-nesKIaMMuN71LpvX8nOm7hDecgGjnx3tmsinrJg4GpQ=";
+
+  subPackages = "cmd/dirstalk";
+
+  ldflags = [
+    "-w"
+    "-s"
+    "-X github.com/stefanoj3/dirstalk/pkg/cmd.Version=${version}"
+  ];
+
+  # Tests want to write to the root directory
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Tool to brute force paths on web servers";
+    homepage = "https://github.com/stefanoj3/dirstalk";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/tools/security/doppler/default.nix b/pkgs/tools/security/doppler/default.nix
index bd0c7a858e03b..badb6659c99fe 100644
--- a/pkgs/tools/security/doppler/default.nix
+++ b/pkgs/tools/security/doppler/default.nix
@@ -8,13 +8,13 @@
 
 buildGoModule rec {
   pname = "doppler";
-  version = "3.42.0";
+  version = "3.44.0";
 
   src = fetchFromGitHub {
     owner = "dopplerhq";
     repo = "cli";
     rev = version;
-    sha256 = "sha256-bIcBn6BjRerbIb+2/own51avbp6rUr4kClrY3iyTKso=";
+    sha256 = "sha256-ztkegcsMofCznNQpK8sfXvd+1CTfAs56S0SdbRIPpfE=";
   };
 
   vendorSha256 = "sha256-evG1M0ZHfn9hsMsSncwxF5Hr/VJ7y6Ir0D2gHJaunBo=";
diff --git a/pkgs/tools/security/ecryptfs/default.nix b/pkgs/tools/security/ecryptfs/default.nix
index cd90342738ed8..777aaea41ec2d 100644
--- a/pkgs/tools/security/ecryptfs/default.nix
+++ b/pkgs/tools/security/ecryptfs/default.nix
@@ -35,11 +35,11 @@ stdenv.mkDerivation rec {
 
   configureFlags = lib.optionals (!enablePython) [ "--disable-pywrap" ];
 
-  nativeBuildInputs = [ pkg-config makeWrapper ]
+  nativeBuildInputs = [ pkg-config makeWrapper intltool ]
   # if python2 support is requested, it is needed at builtime as well as runtime.
   ++ lib.optionals (enablePython) [ python2 ]
   ;
-  buildInputs = [ perl nss nspr pam intltool ]
+  buildInputs = [ perl nss nspr pam ]
   ++ lib.optionals (enablePython) [ python2 ]
   ;
   propagatedBuildInputs = [ coreutils gettext cryptsetup lvm2 rsync keyutils which ];
diff --git a/pkgs/tools/security/erosmb/default.nix b/pkgs/tools/security/erosmb/default.nix
index c0b4586c3524e..0a40fa7d6674f 100644
--- a/pkgs/tools/security/erosmb/default.nix
+++ b/pkgs/tools/security/erosmb/default.nix
@@ -5,14 +5,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "erosmb";
-  version = "0.1.1";
+  version = "0.1.2";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "viktor02";
     repo = "EroSmb";
-    rev = "v${version}";
-    hash = "sha256-d7iSl7weIHWXDnMYQKxafVd5JrZ0fnuWRDpEirBVdcg=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-H3ozc1DXBdXlqEg53eVGGTqK6m2eiY+Qtl0Ul3lUByk=";
   };
 
   propagatedBuildInputs = with python3.pkgs; [
diff --git a/pkgs/tools/security/exploitdb/default.nix b/pkgs/tools/security/exploitdb/default.nix
index 28eea75bbb61a..53b44417b4048 100644
--- a/pkgs/tools/security/exploitdb/default.nix
+++ b/pkgs/tools/security/exploitdb/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "exploitdb";
-  version = "2022-09-24";
+  version = "2022-10-07";
 
   src = fetchFromGitHub {
     owner = "offensive-security";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-QroDg06vAyeFeA2Gy0iFJ5bc277EkMV1Xz92c+xrUF0=";
+    hash = "sha256-gO2NCQSmaJA6Bg6LKBc0qVi147KzGp2MtXizpM0v1yQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/security/fpm2/default.nix b/pkgs/tools/security/fpm2/default.nix
index 15d5a5adcffb2..69e6c7f02817f 100644
--- a/pkgs/tools/security/fpm2/default.nix
+++ b/pkgs/tools/security/fpm2/default.nix
@@ -11,8 +11,8 @@ stdenv.mkDerivation rec {
     sha256 = "1lfzja3vzd6l6hfvw8gvg4qkl5iy6gra5pa8gjlps9l63k2bjfhz";
   };
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ gnupg gtk3 libxml2 intltool nettle ];
+  nativeBuildInputs = [ pkg-config intltool ];
+  buildInputs = [ gnupg gtk3 libxml2 nettle ];
 
   meta = with lib; {
     description = "GTK2 port from Figaro's Password Manager originally developed by John Conneely, with some new enhancements";
diff --git a/pkgs/tools/security/freeze/default.nix b/pkgs/tools/security/freeze/default.nix
new file mode 100644
index 0000000000000..dd6580382339e
--- /dev/null
+++ b/pkgs/tools/security/freeze/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, stdenv
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "freeze";
+  version = "1.1";
+
+  src = fetchFromGitHub {
+    owner = "optiv";
+    repo = "Freeze";
+    rev = "v${version}";
+    hash = "sha256-ySwd7xs9JdJuBvqKC4jI/qA6qVHbYPPUEG7k6joSkRk=";
+  };
+
+  vendorHash = "sha256-R8kdFweMhAUjJ8zJ7HdF5+/vllbNmARdhU4hOw4etZo=";
+
+  ldflags = [
+    "-s"
+    "-w"
+  ];
+
+  postInstall = lib.optionalString (!stdenv.isDarwin) ''
+    mv $out/bin/Freeze $out/bin/freeze
+  '';
+
+  meta = with lib; {
+    description = "Payload toolkit for bypassing EDRs";
+    homepage = "https://github.com/optiv/Freeze";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/tools/security/fulcio/default.nix b/pkgs/tools/security/fulcio/default.nix
index 4d04d791e20db..d099cd2c0dbee 100644
--- a/pkgs/tools/security/fulcio/default.nix
+++ b/pkgs/tools/security/fulcio/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "fulcio";
-  version = "0.5.3";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "sigstore";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-X943wqbgFX4Y15kCf+bxQP7OOTWksmmYghlAWPC2zVs=";
+    sha256 = "sha256-ZWDvFSx+zH/P0ZfdqxAe+c4jFUH8mfY1vpUXlIxw1sI=";
     # populate values that require us to use git. By doing this in postFetch we
     # can delete .git afterwards and maintain better reproducibility of the src.
     leaveDotGit = true;
@@ -20,7 +20,7 @@ buildGoModule rec {
       find "$out" -name .git -print0 | xargs -0 rm -rf
     '';
   };
-  vendorSha256 = "sha256-1BsnNDZAIdLj13e/qL//bPrhYKrTIBvtC1C65WmGHY0=";
+  vendorSha256 = "sha256-LLvaaOZzp9b99eYOsfvbPRwZqSNfoinVUfYDmPiw5Mk=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/tools/security/gnupg-pkcs11-scd/default.nix b/pkgs/tools/security/gnupg-pkcs11-scd/default.nix
index 1e46df40f85fd..22c11b3f2b1f9 100644
--- a/pkgs/tools/security/gnupg-pkcs11-scd/default.nix
+++ b/pkgs/tools/security/gnupg-pkcs11-scd/default.nix
@@ -10,7 +10,8 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-Kb8p53gPkhxtOhH2COKwSDwbtRDFr6hHMJAkndV8Ukk=";
   };
 
-  buildInputs = [ pkcs11helper pkg-config openssl ];
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ pkcs11helper openssl ];
 
   configureFlags = [
     "--with-libgpg-error-prefix=${libgpg-error.dev}"
diff --git a/pkgs/tools/security/gnupg/23.nix b/pkgs/tools/security/gnupg/23.nix
index cb11e9f7eab67..0b7941ce46e18 100644
--- a/pkgs/tools/security/gnupg/23.nix
+++ b/pkgs/tools/security/gnupg/23.nix
@@ -2,8 +2,9 @@
 , libgpg-error, libiconv, npth, gettext, texinfo, buildPackages
 , guiSupport ? stdenv.isDarwin, enableMinimal ? false
 , adns, bzip2, gnutls, libusb1, openldap
-, tpm2-tss, pinentry, readline, sqlite, zlib
+, pinentry, readline, sqlite, zlib
 , withPcsc ? !enableMinimal, pcsclite
+, withTpm2Tss ? !stdenv.isDarwin && !enableMinimal, tpm2-tss
 }:
 
 assert guiSupport -> enableMinimal == false;
@@ -23,7 +24,7 @@ stdenv.mkDerivation rec {
     libgcrypt libassuan libksba libiconv npth gettext
   ] ++ lib.optionals (!enableMinimal) ([
     readline libusb1 gnutls adns openldap zlib bzip2 sqlite
-  ] ++ lib.optional (!stdenv.isDarwin) tpm2-tss);
+  ] ++ lib.optional withTpm2Tss tpm2-tss);
 
   patches = [
     ./fix-libusb-include-path.patch
@@ -56,7 +57,7 @@ stdenv.mkDerivation rec {
     "--with-ksba-prefix=${libksba.dev}"
     "--with-npth-prefix=${npth}"
   ] ++ lib.optional guiSupport "--with-pinentry-pgm=${pinentry}/${pinentryBinaryPath}"
-  ++ lib.optional ((!stdenv.isDarwin) && (!enableMinimal)) "--with-tss=intel";
+  ++ lib.optional withTpm2Tss "--with-tss=intel";
   postInstall = if enableMinimal
   then ''
     rm -r $out/{libexec,sbin,share}
diff --git a/pkgs/tools/security/maigret/default.nix b/pkgs/tools/security/maigret/default.nix
index 05ea8dcf3df8a..0b9b37225016c 100644
--- a/pkgs/tools/security/maigret/default.nix
+++ b/pkgs/tools/security/maigret/default.nix
@@ -1,19 +1,21 @@
 { lib
+, stdenv
 , fetchFromGitHub
 , python3
 }:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "maigret";
-  version = "0.4.3";
+  version = "0.4.4";
 
   src = fetchFromGitHub {
     owner = "soxoj";
     repo = pname;
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-0Ni4rXVu3ZQyHBvD3IpV0i849CnumLj+n6/g4sMhHEs=";
+    hash = "sha256-Z8SnA7Z5+oKW0AOaNf+c/zR30lrPFmXaxxKkbnDXNNs=";
   };
 
+  nativeBuildInputs = [ python3.pkgs.pythonRelaxDepsHook ];
   propagatedBuildInputs = with python3.pkgs; [
     aiodns
     aiohttp
@@ -24,6 +26,7 @@ python3.pkgs.buildPythonApplication rec {
     beautifulsoup4
     certifi
     chardet
+    cloudscraper
     colorama
     future
     html5lib
@@ -60,14 +63,8 @@ python3.pkgs.buildPythonApplication rec {
     pytestCheckHook
   ];
 
-  postPatch = ''
-    # Remove all version pinning
-    sed -i -e "s/==[0-9.]*//" requirements.txt
-
-    # We are not build for Python < 3.7
-    substituteInPlace requirements.txt \
-      --replace "future-annotations" ""
-  '';
+  pythonRelaxDeps = true;
+  pythonRemoveDeps = [ "future-annotations" ];
 
   pytestFlagsArray = [
     # DeprecationWarning: There is no current event loop
@@ -82,6 +79,10 @@ python3.pkgs.buildPythonApplication rec {
     "test_pdf_report"
     "test_self_check_db_negative_enabled"
     "test_self_check_db_positive_enable"
+  ] ++ lib.optionals stdenv.isDarwin [
+    # AsyncioProgressbarExecutor is slower on darwin than it should be,
+    # Upstream issue: https://github.com/soxoj/maigret/issues/679
+    "test_asyncio_progressbar_executor"
   ];
 
   pythonImportsCheck = [
diff --git a/pkgs/tools/security/metasploit/shell.nix b/pkgs/tools/security/metasploit/shell.nix
index e4bae57b68669..ccd510f63af20 100644
--- a/pkgs/tools/security/metasploit/shell.nix
+++ b/pkgs/tools/security/metasploit/shell.nix
@@ -2,6 +2,7 @@
 with import <nixpkgs> {};
 stdenv.mkDerivation {
   name = "env";
+  nativeBuildInputs = [ pkg-config ];
   buildInputs = [
     bundix
     git
@@ -9,7 +10,6 @@ stdenv.mkDerivation {
     libpcap
     libxml2
     libxslt
-    pkg-config
     postgresql
     ruby.devEnv
     sqlite
diff --git a/pkgs/tools/security/nmap/default.nix b/pkgs/tools/security/nmap/default.nix
index 5e71c2e16551e..d6276b3cc40eb 100644
--- a/pkgs/tools/security/nmap/default.nix
+++ b/pkgs/tools/security/nmap/default.nix
@@ -10,11 +10,11 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "nmap";
-  version = "7.92";
+  version = "7.93";
 
   src = fetchurl {
     url = "https://nmap.org/dist/nmap-${version}.tar.bz2";
-    sha256 = "sha256-pUefL4prCyUWdn0vcYnDhsHchY2ZcWfX7Fz8eYx1caE=";
+    sha256 = "sha256-Vbz+R5PiWsyWukJ02MQijbVQuOjv1yAEs47FWi3RZlE=";
   };
 
   patches = [ ./zenmap.patch ]
diff --git a/pkgs/tools/security/nuclei/default.nix b/pkgs/tools/security/nuclei/default.nix
index e60c953fd5a5b..cfbb9446cfa79 100644
--- a/pkgs/tools/security/nuclei/default.nix
+++ b/pkgs/tools/security/nuclei/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "nuclei";
-  version = "2.7.7";
+  version = "2.7.8";
 
   src = fetchFromGitHub {
     owner = "projectdiscovery";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-61oq7h/e9aFCEwvrKRx1zyITw/X2obRsnyycO94tW0A=";
+    sha256 = "sha256-FIWhWW2jOQF4OztLov67+RuhDnpRyD7EN27Gcr4Wa90=";
   };
 
-  vendorSha256 = "sha256-HZZutN6hG/wNBz1hy0S3kWd/LmaeAvn1NlB917xmCDo=";
+  vendorSha256 = "sha256-qIEKGnFURtfh8CdHSbAtEaQRrsjfpvwyK+uPmYNXpiA=";
 
   modRoot = "./v2";
   subPackages = [
diff --git a/pkgs/tools/security/onioncircuits/default.nix b/pkgs/tools/security/onioncircuits/default.nix
index 329de10ff6bb2..249762781e7d0 100644
--- a/pkgs/tools/security/onioncircuits/default.nix
+++ b/pkgs/tools/security/onioncircuits/default.nix
@@ -11,7 +11,7 @@ python3.pkgs.buildPythonApplication rec {
   };
 
   nativeBuildInputs = [ intltool ];
-  buildInputs = [ intltool gtk3 gobject-introspection ];
+  buildInputs = [ gtk3 gobject-introspection ];
   propagatedBuildInputs =  with python3.pkgs; [ stem distutils_extra pygobject3 ];
 
   postFixup = ''
diff --git a/pkgs/tools/security/quill/default.nix b/pkgs/tools/security/quill/default.nix
index b7f414ea87ef1..da1b22a52c978 100644
--- a/pkgs/tools/security/quill/default.nix
+++ b/pkgs/tools/security/quill/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "quill";
-  version = "0.2.7";
+  version = "0.2.17";
 
   src = fetchFromGitHub {
     owner = "dfinity";
     repo = "quill";
     rev = "v${version}";
-    sha256 = "sha256-3OlsCRpxRDKlfC0sa9MlFCupyRbDuqJQzDb9SQob1O0=";
+    sha256 = "sha256-0DHTtnQU26l4DXUVDeHF+hkavlVY7rQykXxgWGSUc/k=";
   };
 
   ic = fetchFromGitHub {
@@ -30,7 +30,7 @@ rustPlatform.buildRustPackage rec {
     export OPENSSL_LIB_DIR=${lib.getLib openssl}/lib
   '';
 
-  cargoSha256 = "sha256-YxuBABGaZ+ti31seEYR6bB+OMgrSvl1lZyu4bqdxPIk=";
+  cargoSha256 = "sha256-QgvQ0ptfb4L465hn/aBpVAUwSvm4MkpZlBQaVrinkq4=";
 
   nativeBuildInputs = [ pkg-config protobuf ];
   buildInputs = [ openssl ]
diff --git a/pkgs/tools/security/sget/default.nix b/pkgs/tools/security/sget/default.nix
new file mode 100644
index 0000000000000..ef59b5db33418
--- /dev/null
+++ b/pkgs/tools/security/sget/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, lib, buildGoModule, fetchFromGitHub, installShellFiles }:
+
+buildGoModule rec {
+  pname = "sget";
+  version = "unstable-2022-10-04";
+
+  src = fetchFromGitHub {
+    owner = "sigstore";
+    repo = pname;
+    rev = "d7d1e53b21ca906000e74474729854cb5ac48dbc";
+    sha256 = "sha256-BgxTlLmtKqtDq3HgLoH+j0vBrpRujmL9Wr8F4d+jPi0=";
+  };
+
+  nativeBuildInputs = [ installShellFiles ];
+
+  vendorSha256 = "sha256-KPQHS7Hfco1ljOJgStIXMaol7j4dglcr0w+6Boj7GK8=";
+
+  ldflags = [ "-s" "-w" ];
+
+  postInstall = ''
+    installShellCompletion --cmd sget \
+      --bash <($out/bin/sget completion bash) \
+      --fish <($out/bin/sget completion fish) \
+      --zsh <($out/bin/sget completion zsh)
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/sigstore/sget";
+    description = "Command for safer, automatic verification of signatures and integration with Sigstore's binary transparency log, Rekor";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ lesuisse ];
+  };
+}
diff --git a/pkgs/tools/security/sigma-cli/default.nix b/pkgs/tools/security/sigma-cli/default.nix
index dfdf3dd4134b0..c0a21ef5440ab 100644
--- a/pkgs/tools/security/sigma-cli/default.nix
+++ b/pkgs/tools/security/sigma-cli/default.nix
@@ -5,14 +5,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "sigma-cli";
-  version = "0.5.0";
+  version = "0.5.3";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "SigmaHQ";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-i0rin4TLoqo+F2nWG4kcFp3x/cRtkMzAo5Ldyo0Si5w=";
+    hash = "sha256-orJkWVBZnbhRjYDI6s5fPymzpTmZE5MsmYWp3JOKjnU=";
   };
 
   nativeBuildInputs = with python3.pkgs; [
diff --git a/pkgs/tools/security/tlsx/default.nix b/pkgs/tools/security/tlsx/default.nix
index 0d9925695a9c1..4f63061cac004 100644
--- a/pkgs/tools/security/tlsx/default.nix
+++ b/pkgs/tools/security/tlsx/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "tlsx";
-  version = "0.0.7";
+  version = "0.0.8";
 
   src = fetchFromGitHub {
     owner = "projectdiscovery";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-tyZDmtqQLTV06mLo1lg/qWRjvxvgVvGpoRXWX9HtXeo=";
+    hash = "sha256-TqYBLNnh4wjinoduFrmyNe+FgnGSCckwMy5zX0XhnlM=";
   };
 
-  vendorSha256 = "sha256-ERZ4mWmtOsW1nYUshSbCzhy+KcujviPtL4LS/soPrFQ=";
+  vendorSha256 = "sha256-BppRtzTjiMcuc7xIz37bDcjnQHhOlstncES1vILTKYM=";
 
   meta = with lib; {
     description = "TLS grabber focused on TLS based data collection";
diff --git a/pkgs/tools/security/tracee/default.nix b/pkgs/tools/security/tracee/default.nix
index debbd5925f3a8..e85911fc75114 100644
--- a/pkgs/tools/security/tracee/default.nix
+++ b/pkgs/tools/security/tracee/default.nix
@@ -54,7 +54,7 @@ buildGoModule rec {
   '';
   buildPhase = ''
     runHook preBuild
-    make $makeFlags ''${enableParallelBuilding:+-j$NIX_BUILD_CORES -l$NIX_BUILD_CORES} bpf-core all
+    make $makeFlags ''${enableParallelBuilding:+-j$NIX_BUILD_CORES} bpf-core all
     runHook postBuild
   '';
 
diff --git a/pkgs/tools/system/consul-template/default.nix b/pkgs/tools/system/consul-template/default.nix
index 28d7158d08ff1..d923f74a7ff05 100644
--- a/pkgs/tools/system/consul-template/default.nix
+++ b/pkgs/tools/system/consul-template/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "consul-template";
-  version = "0.29.2";
+  version = "0.29.4";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = "consul-template";
     rev = "v${version}";
-    sha256 = "sha256-wvnOKbxS1j+MhmOs9INPusA1whLDo1sLGNxmzBQWPWc=";
+    sha256 = "sha256-jFj5iVUS7qpH4Aq35KS8IDKA7PzGgire+flBpkCgwuA=";
   };
 
-  vendorSha256 = "sha256-uR1hzP17hFo9DUNCeKcwepZSxJJoV8WBsX9l+1CR4Ek=";
+  vendorSha256 = "sha256-GKohljwH4/kBPoI3/RfxYsvzISv1WmVAo96sjKJrnHk=";
 
   # consul-template tests depend on vault and consul services running to
   # execute tests so we skip them here
diff --git a/pkgs/tools/system/fakeroot/default.nix b/pkgs/tools/system/fakeroot/default.nix
index bbf0dc2b08084..4ca22cb238590 100644
--- a/pkgs/tools/system/fakeroot/default.nix
+++ b/pkgs/tools/system/fakeroot/default.nix
@@ -9,21 +9,34 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "1.27";
+  version = "1.29";
   pname = "fakeroot";
 
   src = fetchurl {
     url = "http://http.debian.net/debian/pool/main/f/fakeroot/fakeroot_${version}.orig.tar.gz";
-    sha256 = "1p5d3jq6l1pzk96agkf05dck7dbgvldx5sg2d4h7d8h230nyni9w";
+    sha256 = "sha256-j7uvt4DJFz46zkoEr7wdkA8zfzIWiDk59cfbNDG+fCA=";
   };
 
   patches = lib.optionals stdenv.isLinux [
     ./einval.patch
     (fetchpatch {
       name = "also-wrap-stat-library-call.patch";
-      url = "https://sources.debian.org/data/main/f/fakeroot/1.27-1/debian/patches/also-wrap-stat-library-call.patch";
+      url = "https://sources.debian.org/data/main/f/fakeroot/1.29-1/debian/patches/also-wrap-stat-library-call.patch";
       sha256 = "0p7lq6m31k3rqsnjbi06a8ykdqa3cp4y5ngsjyk3q1269gx59x8b";
     })
+
+    # patches needed for musl libc, borrowed from alpine packaging.
+    # it is applied regardless of the environment to prevent patchrot
+    (fetchpatch {
+      name = "do-not-redefine-id_t.patch";
+      url = "https://git.alpinelinux.org/aports/plain/main/fakeroot/do-not-redefine-id_t.patch?id=f68c541324ad07cc5b7f5228501b5f2ce4b36158";
+      sha256 = "sha256-i9PoWriSrQ7kLZzbvZT3Kq1oXzK9mTyBqq808BGepOw=";
+    })
+    (fetchpatch {
+      name = "fakeroot-no64.patch";
+      url = "https://git.alpinelinux.org/aports/plain/main/fakeroot/fakeroot-no64.patch?id=f68c541324ad07cc5b7f5228501b5f2ce4b36158";
+      sha256 = "sha256-NCDaB4nK71gvz8iQxlfaQTazsG0SBUQ/RAnN+FqwKkY=";
+    })
   ];
 
   buildInputs = [ getopt gnused ]
diff --git a/pkgs/tools/system/gdmap/default.nix b/pkgs/tools/system/gdmap/default.nix
index 5fc242d533b8f..eedb0f07d13a9 100644
--- a/pkgs/tools/system/gdmap/default.nix
+++ b/pkgs/tools/system/gdmap/default.nix
@@ -9,8 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "0nr8l88cg19zj585hczj8v73yh21k7j13xivhlzl8jdk0j0cj052";
   };
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ gtk2 libxml2 intltool gettext ];
+  nativeBuildInputs = [ pkg-config intltool ];
+  buildInputs = [ gtk2 libxml2 gettext ];
 
   patches = [ ./get_sensitive.patch ./set_flags.patch ];
 
diff --git a/pkgs/tools/system/gotop/default.nix b/pkgs/tools/system/gotop/default.nix
index 98d4698464e3f..93cf8ea6b5aeb 100644
--- a/pkgs/tools/system/gotop/default.nix
+++ b/pkgs/tools/system/gotop/default.nix
@@ -2,32 +2,28 @@
 , stdenv
 , buildGoModule
 , fetchFromGitHub
-, fetchpatch
 , installShellFiles
 , IOKit
 }:
 
 buildGoModule rec {
   pname = "gotop";
-  version = "4.1.4";
+  version = "4.2.0";
+
+  outputs = [
+    "out"
+    "man"
+  ];
 
   src = fetchFromGitHub {
     owner = "xxxserxxx";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-jAUlaj9Nv/ipzxAkG2myd9DIboHj7IarNMVk/FQ274g=";
+    hash = "sha256-W7a3QnSIR95N88RqU2sr6oEDSqOXVfAwacPvS219+1Y=";
   };
 
-  patches = [
-    # To remove after https://github.com/xxxserxxx/gotop/pull/234 is merged
-    (fetchpatch {
-      url = "https://github.com/xxxserxxx/gotop/commit/3e3243fa1f046c126bf9cb34d55a12963b3ac116.patch";
-      sha256 = "sha256-4q4dBTPpVfgXvApzUXdEEzIe31PoLHUK4mBWth6qCIg=";
-    })
-  ];
-
   proxyVendor = true;
-  vendorSha256 = "sha256-Sq9ol9bZb0BfR/C8phcMSEjG9qgWyTmwpo/TS30j3Vk=";
+  vendorSha256 = "sha256-KLeVSrPDS1lKsKFemRmgxT6Pxack3X3B/btSCOUSUFY=";
 
   ldflags = [ "-s" "-w" "-X main.Version=v${version}" ];
 
diff --git a/pkgs/tools/system/kmon/default.nix b/pkgs/tools/system/kmon/default.nix
index 36181b371eaf9..6f54579132f50 100644
--- a/pkgs/tools/system/kmon/default.nix
+++ b/pkgs/tools/system/kmon/default.nix
@@ -1,24 +1,26 @@
-{ lib, rustPlatform, fetchFromGitHub, installShellFiles, python3, libxcb }:
+{ lib, rustPlatform, fetchFromGitHub, installShellFiles, libxcb }:
 
 rustPlatform.buildRustPackage rec {
   pname = "kmon";
-  version = "1.6.0";
+  version = "1.6.2";
 
   src = fetchFromGitHub {
     owner = "orhun";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-0sjRTbTLtBUTyx6+HnihL9TggoeIOqX9zKRaXjBUfE0=";
+    sha256 = "sha256-LJ8vfjSUaNZQAtv9TXAZf1JMRzB1yN8/qbXphRUJVYY=";
   };
 
-  cargoSha256 = "sha256-QMJ3Rpgcfrza2zFiA5LFBuYedn+VnffzpyzAGeC0PSM=";
+  cargoSha256 = "sha256-5OUc2e1fMlSArKMCANqtRCAh21iPjzuGjGrEP8/hQXk=";
 
-  nativeBuildInputs = [ installShellFiles python3 ];
+  nativeBuildInputs = [ installShellFiles ];
 
   buildInputs = [ libxcb ];
 
   postInstall = ''
-    installManPage man/kmon.8
+    installManPage $releaseDir/../man/kmon.8
+    installShellCompletion $releaseDir/../completions/kmon.{bash,fish} \
+      --zsh $releaseDir/../completions/_kmon
   '';
 
   meta = with lib; {
diff --git a/pkgs/tools/system/nats-top/default.nix b/pkgs/tools/system/nats-top/default.nix
index ca91ba823f536..f394f54ff39e2 100644
--- a/pkgs/tools/system/nats-top/default.nix
+++ b/pkgs/tools/system/nats-top/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "nats-top";
-  version = "0.5.2";
+  version = "0.5.3";
 
   src = fetchFromGitHub {
     owner = "nats-io";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-yPaaHSCLocgX0KQtHSBAi9GQqPlggdLAADr9ow7WlnU=";
+    sha256 = "sha256-G2rUN+eFYWz78xDJcwYVtooTtNSNWR2nUTzar5ztWwE=";
   };
 
-  vendorSha256 = "sha256-cBCR/OXUOa+Lh8UvL/VraDAW0hGGwV7teyvdswZQ5Lo=";
+  vendorSha256 = "sha256-UOy3kyKtOXADdyoZ2rVgIQEOPs2oPBkMTYXxfQzVFmc=";
 
   meta = with lib; {
     description = "top-like tool for monitoring NATS servers";
diff --git a/pkgs/tools/system/nvtop/default.nix b/pkgs/tools/system/nvtop/default.nix
index bafffd0bf726f..2240d72235ff8 100644
--- a/pkgs/tools/system/nvtop/default.nix
+++ b/pkgs/tools/system/nvtop/default.nix
@@ -25,23 +25,15 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "nvtop" + pname-suffix;
-  version = "2.0.3";
+  version = "2.0.4";
 
   src = fetchFromGitHub {
     owner = "Syllo";
     repo = "nvtop";
     rev = version;
-    sha256 = "sha256-LhVgNU2OSM7fOUUQHYJhKhjE0fkFvYC3FIJFgu6T68Q=";
+    sha256 = "sha256-WOXVmKnVNRjWqShbOUZ0Z4hd0m9njLmCGLnV9FBS3Us=";
   };
 
-  #this patch should be fine to remove with next version update
-  patches = [
-    (fetchpatch {
-      url = "https://github.com/Syllo/nvtop/commit/663a69f1c9038eabdfc3155112fb9b8d662578aa.diff";
-      sha256 = "sha256-/EJlr5b+kZnHm9UxythYreJvO+Ma+1sUI3KLBQFCCmc=";
-    })
-  ];
-
   cmakeFlags = with lib; [
     "-DCMAKE_BUILD_TYPE=Release"
     "-DBUILD_TESTING=ON"
diff --git a/pkgs/tools/system/stress-ng/default.nix b/pkgs/tools/system/stress-ng/default.nix
index fe84d365f8d6e..8cc5d9599cc1b 100644
--- a/pkgs/tools/system/stress-ng/default.nix
+++ b/pkgs/tools/system/stress-ng/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "stress-ng";
-  version = "0.14.03";
+  version = "0.14.06";
 
   src = fetchFromGitHub {
     owner = "ColinIanKing";
     repo = pname;
     rev = "V${version}";
-    hash = "sha256-6aA0dWP6q6SJ8TYGctDE2rhDCO5QuAO4cx4J9id9hjY=";
+    hash = "sha256-akWvX22oJT/V5Zvsk7AXXIFK1AjfWEzMZXAwpJCc0M0=";
   };
 
   postPatch = ''
diff --git a/pkgs/tools/system/uefitool/variants.nix b/pkgs/tools/system/uefitool/variants.nix
index 3ea24e55c6e0d..647922046c66b 100644
--- a/pkgs/tools/system/uefitool/variants.nix
+++ b/pkgs/tools/system/uefitool/variants.nix
@@ -3,8 +3,8 @@ let
   common = opts: libsForQt5.callPackage (import ./common.nix opts) {};
 in rec {
   new-engine = common rec {
-    version = "A61";
-    sha256 = "sha256-6RxWAR0KY6o98RwOLRHy6wShTHAaQlvYYbCNLa5FzH4=";
+    version = "A62";
+    sha256 = "sha256-U89j0BV57luv1c9hoYJtisKLxFezuaGFokZ29/NJ0xg=";
     installFiles = [ "build/UEFITool/UEFITool" "build/UEFIFind/UEFIFind" "build/UEFIExtract/UEFIExtract" ];
   };
   old-engine = common rec {
diff --git a/pkgs/tools/text/csview/default.nix b/pkgs/tools/text/csview/default.nix
index 315d8e54f15f7..0b69465ccfb90 100644
--- a/pkgs/tools/text/csview/default.nix
+++ b/pkgs/tools/text/csview/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "csview";
-  version = "1.2.1";
+  version = "1.2.2";
 
   src = fetchFromGitHub {
     owner = "wfxr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-ep+bfmeXbHGD0xEqKQr1dfh7MOPfySdcZcTaEonOSas=";
+    sha256 = "sha256-pv0zCtVHTjzkXK5EZhu6jviMJF0p9dvAuYcA6khiIos=";
   };
 
-  cargoSha256 = "sha256-IfIOettKHVay9Ls3cT9BI0zmGHle2Ew227BztbiLxEw=";
+  cargoSha256 = "sha256-uMBwEbxI8hjoFMlH+oquHvKdyLUC9bnO5uMFHkyZjgY=";
 
   meta = with lib; {
     description = "A high performance csv viewer with cjk/emoji support";
diff --git a/pkgs/tools/text/languagetool/default.nix b/pkgs/tools/text/languagetool/default.nix
index 537a9dc840291..bbfcd5a681b96 100644
--- a/pkgs/tools/text/languagetool/default.nix
+++ b/pkgs/tools/text/languagetool/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "LanguageTool";
-  version = "5.8";
+  version = "5.9";
 
   src = fetchzip {
     url = "https://www.languagetool.org/download/${pname}-${version}.zip";
-    sha256 = "sha256-xwwC+I4cThl2iq3eKcjInFciWlhBfQvNA5LBalaXBuQ=";
+    sha256 = "sha256-x4xGgYeMi7KbD2WGHOd/ixmZ+5EY5g6CLd7/CBYldNQ=";
   };
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ jre ];
diff --git a/pkgs/tools/text/mdbook-admonish/default.nix b/pkgs/tools/text/mdbook-admonish/default.nix
index 2809eee1fb4ad..c7303fc2fd841 100644
--- a/pkgs/tools/text/mdbook-admonish/default.nix
+++ b/pkgs/tools/text/mdbook-admonish/default.nix
@@ -1,15 +1,26 @@
-{ lib, stdenv, fetchCrate, rustPlatform, CoreServices }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, rustPlatform, CoreServices }:
 
 rustPlatform.buildRustPackage rec {
   pname = "mdbook-admonish";
   version = "1.7.0";
 
-  src = fetchCrate {
-    inherit pname version;
-    sha256 = "sha256-QvFHpAsQ+S7q/Ye0YEf0phZcVvAs1a80Hd3eIGZBsrI=";
+  src = fetchFromGitHub {
+    owner = "tommilligan";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-AGOq05NevkRU8qHsJIWd2WfZ4i7w/wexf6c0fUAaoLg=";
   };
 
-  cargoSha256 = "sha256-v7MGJlDm5nvydjFAZZS94afZY2OVUjJQ9eXYaY9JxBs=";
+  cargoPatches = [
+    # https://github.com/tommilligan/mdbook-admonish/pull/33
+    (fetchpatch {
+      name = "update-mdbook-for-rust-1.64.patch";
+      url = "https://github.com/tommilligan/mdbook-admonish/commit/650123645b18a3f8ed170738c7c1813315095ed9.patch";
+      hash = "sha256-8LMk+Dgz9k0g9fbGGC0X2byyJtfDDgvdGxO06mD6GDI=";
+    })
+  ];
+
+  cargoHash = "sha256-5PWfze00/mWmzYqP5M1pAPt+SuknpU9dc0B7RSikuTE=";
 
   buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ];
 
diff --git a/pkgs/tools/text/mdbook-graphviz/default.nix b/pkgs/tools/text/mdbook-graphviz/default.nix
index 353c2b99ee910..ec683072e1a78 100644
--- a/pkgs/tools/text/mdbook-graphviz/default.nix
+++ b/pkgs/tools/text/mdbook-graphviz/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, rustPlatform, CoreServices, graphviz }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, rustPlatform, CoreServices, graphviz }:
 
 rustPlatform.buildRustPackage rec {
   pname = "mdbook-graphviz";
@@ -8,10 +8,15 @@ rustPlatform.buildRustPackage rec {
     owner = "dylanowen";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-HTHGb23wc10iAWXX/TNMXjTLWm+OSf1WWW1+/aQRcsk=";
+    hash = "sha256-HTHGb23wc10iAWXX/TNMXjTLWm+OSf1WWW1+/aQRcsk=";
   };
 
-  cargoSha256 = "sha256-7z/4brKY9vpic8mv1b4P/8DE+VyColYnPPoPmY9891M=";
+  cargoPatches = [
+    # Remove when updating mdbook-graphviz past 0.1.4.
+    ./update-mdbook-for-rust-1.64.patch
+  ];
+
+  cargoHash = "sha256-keDyfXooPU/GOx56OTq5psDohfZ0E478bnWn0bbC29o=";
 
   buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ];
 
diff --git a/pkgs/tools/text/mdbook-graphviz/update-mdbook-for-rust-1.64.patch b/pkgs/tools/text/mdbook-graphviz/update-mdbook-for-rust-1.64.patch
new file mode 100644
index 0000000000000..58f52cf00dc4d
--- /dev/null
+++ b/pkgs/tools/text/mdbook-graphviz/update-mdbook-for-rust-1.64.patch
@@ -0,0 +1,369 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index 292fb1f..ce66190 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -26,15 +26,6 @@ dependencies = [
+  "url",
+ ]
+ 
+-[[package]]
+-name = "ansi_term"
+-version = "0.12.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
+-dependencies = [
+- "winapi 0.3.9",
+-]
+-
+ [[package]]
+ name = "anyhow"
+ version = "1.0.52"
+@@ -156,32 +147,36 @@ dependencies = [
+ 
+ [[package]]
+ name = "clap"
+-version = "2.34.0"
++version = "3.2.22"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
++checksum = "86447ad904c7fb335a790c9d7fe3d0d971dc523b8ccd1561a520de9a85302750"
+ dependencies = [
+- "ansi_term",
+  "atty",
+  "bitflags",
+- "strsim 0.8.0",
+- "textwrap 0.11.0",
+- "unicode-width",
+- "vec_map",
++ "clap_lex",
++ "indexmap",
++ "once_cell",
++ "strsim",
++ "termcolor",
++ "textwrap",
+ ]
+ 
+ [[package]]
+-name = "clap"
+-version = "3.0.4"
++name = "clap_complete"
++version = "3.2.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d01c9347757e131122b19cd19a05c85805b68c2352a97b623efdc3c295290299"
++checksum = "3f7a2e0a962c45ce25afce14220bc24f9dade0a1787f185cecf96bfba7847cd8"
++dependencies = [
++ "clap",
++]
++
++[[package]]
++name = "clap_lex"
++version = "0.2.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5"
+ dependencies = [
+- "atty",
+- "bitflags",
+- "indexmap",
+  "os_str_bytes",
+- "strsim 0.10.0",
+- "termcolor",
+- "textwrap 0.14.2",
+ ]
+ 
+ [[package]]
+@@ -213,24 +208,21 @@ dependencies = [
+ 
+ [[package]]
+ name = "elasticlunr-rs"
+-version = "2.3.14"
++version = "3.0.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "60eee99ae400fb1c4521ea3bd678994cb66572754d240449368e8ecd40281569"
++checksum = "b94d9c8df0fe6879ca12e7633fdfe467c503722cc981fc463703472d2b876448"
+ dependencies = [
+- "lazy_static",
+  "regex",
+  "serde",
+  "serde_derive",
+  "serde_json",
+- "strum",
+- "strum_macros",
+ ]
+ 
+ [[package]]
+ name = "env_logger"
+-version = "0.7.1"
++version = "0.9.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
++checksum = "c90bf5f19754d10198ccb95b70664fc925bd1fc090a0fd9a6ebc54acc8cd6272"
+ dependencies = [
+  "atty",
+  "humantime",
+@@ -465,7 +457,7 @@ dependencies = [
+  "log",
+  "pest",
+  "pest_derive",
+- "quick-error 2.0.1",
++ "quick-error",
+  "serde",
+  "serde_json",
+ ]
+@@ -501,15 +493,6 @@ dependencies = [
+  "http",
+ ]
+ 
+-[[package]]
+-name = "heck"
+-version = "0.3.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
+-dependencies = [
+- "unicode-segmentation",
+-]
+-
+ [[package]]
+ name = "hermit-abi"
+ version = "0.1.19"
+@@ -569,12 +552,9 @@ checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421"
+ 
+ [[package]]
+ name = "humantime"
+-version = "1.3.0"
++version = "2.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
+-dependencies = [
+- "quick-error 1.2.3",
+-]
++checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
+ 
+ [[package]]
+ name = "hyper"
+@@ -763,14 +743,15 @@ checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f"
+ 
+ [[package]]
+ name = "mdbook"
+-version = "0.4.15"
++version = "0.4.21"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "241f10687eb3b4e0634b3b4e423f97c5f1efbd69dc9522e24a8b94583eeec3c6"
++checksum = "23f3e133c6d515528745ffd3b9f0c7d975ae039f0b6abb099f2168daa2afb4f9"
+ dependencies = [
+  "ammonia",
+  "anyhow",
+  "chrono",
+- "clap 2.34.0",
++ "clap",
++ "clap_complete",
+  "elasticlunr-rs",
+  "env_logger",
+  "futures-util",
+@@ -784,7 +765,6 @@ dependencies = [
+  "pulldown-cmark",
+  "regex",
+  "serde",
+- "serde_derive",
+  "serde_json",
+  "shlex",
+  "tempfile",
+@@ -798,7 +778,7 @@ dependencies = [
+ name = "mdbook-graphviz"
+ version = "0.1.4"
+ dependencies = [
+- "clap 3.0.4",
++ "clap",
+  "lazy_static",
+  "mdbook",
+  "pulldown-cmark",
+@@ -810,9 +790,9 @@ dependencies = [
+ 
+ [[package]]
+ name = "memchr"
+-version = "2.4.1"
++version = "2.5.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a"
++checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
+ 
+ [[package]]
+ name = "mime"
+@@ -968,6 +948,12 @@ dependencies = [
+  "libc",
+ ]
+ 
++[[package]]
++name = "once_cell"
++version = "1.15.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e82dad04139b71a90c080c8463fe0dc7902db5192d939bd0950f074d014339e1"
++
+ [[package]]
+ name = "opaque-debug"
+ version = "0.2.3"
+@@ -995,9 +981,6 @@ name = "os_str_bytes"
+ version = "6.0.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "8e22443d1643a904602595ba1cd8f7d896afe56d26712531c5ff73a15b2fbf64"
+-dependencies = [
+- "memchr",
+-]
+ 
+ [[package]]
+ name = "parking_lot"
+@@ -1166,9 +1149,9 @@ dependencies = [
+ 
+ [[package]]
+ name = "pulldown-cmark"
+-version = "0.9.0"
++version = "0.9.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "acd16514d1af5f7a71f909a44ef253cdb712a376d7ebc8ae4a471a9be9743548"
++checksum = "2d9cc634bc78768157b5cbfe988ffcd1dcba95cd2b2f03a88316c08c6d00ed63"
+ dependencies = [
+  "bitflags",
+  "getopts",
+@@ -1185,12 +1168,6 @@ dependencies = [
+  "pulldown-cmark",
+ ]
+ 
+-[[package]]
+-name = "quick-error"
+-version = "1.2.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
+-
+ [[package]]
+ name = "quick-error"
+ version = "2.0.1"
+@@ -1308,9 +1285,9 @@ dependencies = [
+ 
+ [[package]]
+ name = "regex"
+-version = "1.5.4"
++version = "1.6.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461"
++checksum = "4c4eb3267174b8c6c2f654116623910a0fef09c4753f8dd83db29c48a0df988b"
+ dependencies = [
+  "aho-corasick",
+  "memchr",
+@@ -1325,9 +1302,9 @@ checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
+ 
+ [[package]]
+ name = "regex-syntax"
+-version = "0.6.25"
++version = "0.6.27"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
++checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244"
+ 
+ [[package]]
+ name = "remove_dir_all"
+@@ -1370,6 +1347,9 @@ name = "serde"
+ version = "1.0.133"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "97565067517b60e2d1ea8b268e59ce036de907ac523ad83a0475da04e818989a"
++dependencies = [
++ "serde_derive",
++]
+ 
+ [[package]]
+ name = "serde_derive"
+@@ -1490,36 +1470,12 @@ dependencies = [
+  "quote",
+ ]
+ 
+-[[package]]
+-name = "strsim"
+-version = "0.8.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
+-
+ [[package]]
+ name = "strsim"
+ version = "0.10.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
+ 
+-[[package]]
+-name = "strum"
+-version = "0.21.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "aaf86bbcfd1fa9670b7a129f64fc0c9fcbbfe4f1bc4210e9e98fe71ffc12cde2"
+-
+-[[package]]
+-name = "strum_macros"
+-version = "0.21.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d06aaeeee809dbc59eb4556183dd927df67db1540de5be8d3ec0b6636358a5ec"
+-dependencies = [
+- "heck",
+- "proc-macro2",
+- "quote",
+- "syn",
+-]
+-
+ [[package]]
+ name = "syn"
+ version = "1.0.84"
+@@ -1567,18 +1523,9 @@ dependencies = [
+ 
+ [[package]]
+ name = "textwrap"
+-version = "0.11.0"
++version = "0.15.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
+-dependencies = [
+- "unicode-width",
+-]
+-
+-[[package]]
+-name = "textwrap"
+-version = "0.14.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0066c8d12af8b5acd21e00547c3797fde4e8677254a7ee429176ccebbe93dd80"
++checksum = "949517c0cf1bf4ee812e2e07e08ab448e3ae0d23472aee8a06c985f0c8815b16"
+ 
+ [[package]]
+ name = "thiserror"
+@@ -1793,12 +1740,6 @@ dependencies = [
+  "tinyvec",
+ ]
+ 
+-[[package]]
+-name = "unicode-segmentation"
+-version = "1.8.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8895849a949e7845e06bd6dc1aa51731a103c42707010a5b591c0038fb73385b"
+-
+ [[package]]
+ name = "unicode-width"
+ version = "0.1.9"
+@@ -1829,12 +1770,6 @@ version = "0.7.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
+ 
+-[[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"
+diff --git a/Cargo.toml b/Cargo.toml
+index 18b4b0e..3a88235 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -12,7 +12,7 @@ edition = "2018"
+ # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
+ 
+ [dependencies]
+-mdbook = "^0.4.15"
++mdbook = "^0.4.21"
+ clap = "3.0"
+ serde_json = "1.0"
+ pulldown-cmark = "0.9"
diff --git a/pkgs/tools/text/mdbook-katex/default.nix b/pkgs/tools/text/mdbook-katex/default.nix
index a97e7ca894835..5291b9e9f821f 100644
--- a/pkgs/tools/text/mdbook-katex/default.nix
+++ b/pkgs/tools/text/mdbook-katex/default.nix
@@ -8,10 +8,15 @@ rustPlatform.buildRustPackage rec {
     owner = "lzanini";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-5PzXX7icRxcHpzjp3x/9ssn2o0444uHrzBn1Ds1DEPM=";
+    hash = "sha256-5PzXX7icRxcHpzjp3x/9ssn2o0444uHrzBn1Ds1DEPM=";
   };
 
-  cargoSha256 = "sha256-tqdpIBlKiyYSWFPYTnzVeDML2GM+mukbOHS3sNYUgdc=";
+  cargoPatches = [
+    # Remove when https://github.com/lzanini/mdbook-katex/pull/35 is in a new release.
+    ./update-mdbook-for-rust-1.64.patch
+  ];
+
+  cargoHash = "sha256-lrEirKkGf9/8yLyLSON54UaeQ3Xtl7g7ezUc7e1KVHw=";
 
   buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ];
 
diff --git a/pkgs/tools/text/mdbook-katex/update-mdbook-for-rust-1.64.patch b/pkgs/tools/text/mdbook-katex/update-mdbook-for-rust-1.64.patch
new file mode 100644
index 0000000000000..ee90a3076702a
--- /dev/null
+++ b/pkgs/tools/text/mdbook-katex/update-mdbook-for-rust-1.64.patch
@@ -0,0 +1,1417 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index 3ff0894..ffef44f 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1,10 +1,12 @@
+ # This file is automatically @generated by Cargo.
+ # It is not intended for manual editing.
++version = 3
++
+ [[package]]
+ name = "aho-corasick"
+-version = "0.7.15"
++version = "0.7.19"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7404febffaa47dac81aa44dba71523c9d069b1bdc50a77db41195149e17f68e5"
++checksum = "b4f55bd91a0978cbfd91c457a164bab8b4001c833b7f323132c0a4e1922dd44e"
+ dependencies = [
+  "memchr",
+ ]
+@@ -52,9 +54,9 @@ dependencies = [
+ 
+ [[package]]
+ name = "autocfg"
+-version = "1.0.1"
++version = "1.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
++checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+ 
+ [[package]]
+ name = "base64"
+@@ -62,11 +64,17 @@ version = "0.12.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff"
+ 
++[[package]]
++name = "base64"
++version = "0.13.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd"
++
+ [[package]]
+ name = "bitflags"
+-version = "1.2.1"
++version = "1.3.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
++checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+ 
+ [[package]]
+ name = "block-buffer"
+@@ -82,9 +90,9 @@ dependencies = [
+ 
+ [[package]]
+ name = "block-buffer"
+-version = "0.9.0"
++version = "0.10.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4"
++checksum = "69cce20737498f97b993470a6e536b8523f0af7892a4f928cceb1ac5e52ebe7e"
+ dependencies = [
+  "generic-array 0.14.4",
+ ]
+@@ -98,6 +106,17 @@ dependencies = [
+  "byte-tools",
+ ]
+ 
++[[package]]
++name = "bstr"
++version = "0.2.17"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223"
++dependencies = [
++ "lazy_static",
++ "memchr",
++ "regex-automata",
++]
++
+ [[package]]
+ name = "byte-tools"
+ version = "0.3.1"
+@@ -116,6 +135,12 @@ version = "0.5.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "0e4cec68f03f32e44924783795810fa50a7035d8c8ebe78580ad7e6c703fba38"
+ 
++[[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.62"
+@@ -157,11 +182,45 @@ dependencies = [
+  "atty",
+  "bitflags",
+  "strsim 0.8.0",
+- "textwrap",
++ "textwrap 0.11.0",
+  "unicode-width",
+  "vec_map",
+ ]
+ 
++[[package]]
++name = "clap"
++version = "3.2.22"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "86447ad904c7fb335a790c9d7fe3d0d971dc523b8ccd1561a520de9a85302750"
++dependencies = [
++ "atty",
++ "bitflags",
++ "clap_lex",
++ "indexmap",
++ "once_cell",
++ "strsim 0.10.0",
++ "termcolor",
++ "textwrap 0.15.1",
++]
++
++[[package]]
++name = "clap_complete"
++version = "3.2.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3f7a2e0a962c45ce25afce14220bc24f9dade0a1787f185cecf96bfba7847cd8"
++dependencies = [
++ "clap 3.2.22",
++]
++
++[[package]]
++name = "clap_lex"
++version = "0.2.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5"
++dependencies = [
++ "os_str_bytes",
++]
++
+ [[package]]
+ name = "copy_dir"
+ version = "0.1.2"
+@@ -172,10 +231,23 @@ dependencies = [
+ ]
+ 
+ [[package]]
+-name = "cpuid-bool"
+-version = "0.1.2"
++name = "cpufeatures"
++version = "0.2.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "28d997bd5e24a5928dd43e46dc529867e207907fe0b239c3477d924f7f2ca320"
++dependencies = [
++ "libc",
++]
++
++[[package]]
++name = "crypto-common"
++version = "0.1.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8aebca1129a03dc6dc2b127edd729435bbc4a37e1d5f4d7513165089ceb02634"
++checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
++dependencies = [
++ "generic-array 0.14.4",
++ "typenum",
++]
+ 
+ [[package]]
+ name = "darling"
+@@ -248,39 +320,31 @@ dependencies = [
+ 
+ [[package]]
+ name = "digest"
+-version = "0.9.0"
++version = "0.10.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066"
++checksum = "adfbc57365a37acbd2ebf2b64d7e69bb766e2fea813521ed536f5d0520dcf86c"
+ dependencies = [
+- "generic-array 0.14.4",
++ "block-buffer 0.10.3",
++ "crypto-common",
+ ]
+ 
+-[[package]]
+-name = "dtoa"
+-version = "0.4.6"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "134951f4028bdadb9b84baf4232681efbf277da25144b9b0ad65df75946c422b"
+-
+ [[package]]
+ name = "elasticlunr-rs"
+-version = "2.3.9"
++version = "3.0.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "35622eb004c8f0c5e7e2032815f3314a93df0db30a1ce5c94e62c1ecc81e22b9"
++checksum = "b94d9c8df0fe6879ca12e7633fdfe467c503722cc981fc463703472d2b876448"
+ dependencies = [
+- "lazy_static",
+  "regex",
+  "serde",
+  "serde_derive",
+  "serde_json",
+- "strum",
+- "strum_macros",
+ ]
+ 
+ [[package]]
+ name = "env_logger"
+-version = "0.7.1"
++version = "0.9.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
++checksum = "c90bf5f19754d10198ccb95b70664fc925bd1fc090a0fd9a6ebc54acc8cd6272"
+ dependencies = [
+  "atty",
+  "humantime",
+@@ -368,25 +432,11 @@ dependencies = [
+  "new_debug_unreachable",
+ ]
+ 
+-[[package]]
+-name = "futures"
+-version = "0.3.8"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9b3b0c040a1fe6529d30b3c5944b280c7f0dcb2930d2c3062bca967b602583d0"
+-dependencies = [
+- "futures-channel",
+- "futures-core",
+- "futures-io",
+- "futures-sink",
+- "futures-task",
+- "futures-util",
+-]
+-
+ [[package]]
+ name = "futures-channel"
+-version = "0.3.8"
++version = "0.3.24"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "4b7109687aa4e177ef6fe84553af6280ef2778bdb7783ba44c9dc3399110fe64"
++checksum = "30bdd20c28fadd505d0fd6712cdfcb0d4b5648baf45faef7f852afb2399bb050"
+ dependencies = [
+  "futures-core",
+  "futures-sink",
+@@ -394,23 +444,16 @@ dependencies = [
+ 
+ [[package]]
+ name = "futures-core"
+-version = "0.3.8"
++version = "0.3.24"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "847ce131b72ffb13b6109a221da9ad97a64cbe48feb1028356b836b47b8f1748"
+-
+-[[package]]
+-name = "futures-io"
+-version = "0.3.8"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "611834ce18aaa1bd13c4b374f5d653e1027cf99b6b502584ff8c9a64413b30bb"
++checksum = "4e5aa3de05362c3fb88de6531e6296e85cde7739cccad4b9dfeeb7f6ebce56bf"
+ 
+ [[package]]
+ name = "futures-macro"
+-version = "0.3.8"
++version = "0.3.24"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "77408a692f1f97bcc61dc001d752e00643408fbc922e4d634c655df50d595556"
++checksum = "42cd15d1c7456c04dbdf7e88bcd69760d74f3a798d6444e16974b505b0e62f17"
+ dependencies = [
+- "proc-macro-hack",
+  "proc-macro2",
+  "quote",
+  "syn",
+@@ -418,33 +461,28 @@ dependencies = [
+ 
+ [[package]]
+ name = "futures-sink"
+-version = "0.3.8"
++version = "0.3.24"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f878195a49cee50e006b02b93cf7e0a95a38ac7b776b4c4d9cc1207cd20fcb3d"
++checksum = "21b20ba5a92e727ba30e72834706623d94ac93a725410b6a6b6fbc1b07f7ba56"
+ 
+ [[package]]
+ name = "futures-task"
+-version = "0.3.8"
++version = "0.3.24"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7c554eb5bf48b2426c4771ab68c6b14468b6e76cc90996f528c3338d761a4d0d"
+-dependencies = [
+- "once_cell",
+-]
++checksum = "a6508c467c73851293f390476d4491cf4d227dbabcd4170f3bb6044959b294f1"
+ 
+ [[package]]
+ name = "futures-util"
+-version = "0.3.8"
++version = "0.3.24"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d304cff4a7b99cfb7986f7d43fbe93d175e72e704a8860787cc95e9ffd85cbd2"
++checksum = "44fb6cb1be61cc1d2e43b262516aafcf63b241cffdb1d3fa115f91d9c7b09c90"
+ dependencies = [
+  "futures-core",
+  "futures-macro",
+  "futures-sink",
+  "futures-task",
+- "pin-project 1.0.1",
++ "pin-project-lite",
+  "pin-utils",
+- "proc-macro-hack",
+- "proc-macro-nested",
+  "slab",
+ ]
+ 
+@@ -468,23 +506,25 @@ dependencies = [
+ ]
+ 
+ [[package]]
+-name = "getopts"
+-version = "0.2.21"
++name = "getrandom"
++version = "0.1.15"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "14dbbfd5c71d70241ecf9e6f13737f7b5ce823821063188d7e46c41d371eebd5"
++checksum = "fc587bc0ec293155d5bfa6b9891ec18a1e330c234f896ea47fbada4cadbe47e6"
+ dependencies = [
+- "unicode-width",
++ "cfg-if 0.1.10",
++ "libc",
++ "wasi 0.9.0+wasi-snapshot-preview1",
+ ]
+ 
+ [[package]]
+ name = "getrandom"
+-version = "0.1.15"
++version = "0.2.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "fc587bc0ec293155d5bfa6b9891ec18a1e330c234f896ea47fbada4cadbe47e6"
++checksum = "4eb1a864a501629691edf6c15a593b7a51eebaa1e8468e9ddc623de7c9b58ec6"
+ dependencies = [
+- "cfg-if 0.1.10",
++ "cfg-if 1.0.0",
+  "libc",
+- "wasi 0.9.0+wasi-snapshot-preview1",
++ "wasi 0.11.0+wasi-snapshot-preview1",
+ ]
+ 
+ [[package]]
+@@ -504,11 +544,11 @@ checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
+ 
+ [[package]]
+ name = "h2"
+-version = "0.2.7"
++version = "0.3.14"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "5e4728fd124914ad25e99e3d15a9361a879f6620f63cb56bbb08f95abb97a535"
++checksum = "5ca32592cf21ac7ccab1825cd87f6c9b3d9022c44d086172ed0966bec8af30be"
+ dependencies = [
+- "bytes",
++ "bytes 1.2.1",
+  "fnv",
+  "futures-core",
+  "futures-sink",
+@@ -519,21 +559,20 @@ dependencies = [
+  "tokio",
+  "tokio-util",
+  "tracing",
+- "tracing-futures",
+ ]
+ 
+ [[package]]
+ name = "handlebars"
+-version = "3.5.1"
++version = "4.3.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "2764f9796c0ddca4b82c07f25dd2cb3db30b9a8f47940e78e1c883d9e95c3db9"
++checksum = "433e4ab33f1213cdc25b5fa45c76881240cfe79284cf2b395e8b9e312a30a2fd"
+ dependencies = [
+  "log",
+  "pest",
+  "pest_derive",
+- "quick-error 2.0.0",
+  "serde",
+  "serde_json",
++ "thiserror",
+ ]
+ 
+ [[package]]
+@@ -548,9 +587,9 @@ version = "0.3.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "ed18eb2459bf1a09ad2d6b1547840c3e5e62882fa09b9a6a20b1de8e3228848f"
+ dependencies = [
+- "base64",
++ "base64 0.12.3",
+  "bitflags",
+- "bytes",
++ "bytes 0.5.6",
+  "headers-core",
+  "http",
+  "mime",
+@@ -567,15 +606,6 @@ dependencies = [
+  "http",
+ ]
+ 
+-[[package]]
+-name = "heck"
+-version = "0.3.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205"
+-dependencies = [
+- "unicode-segmentation",
+-]
+-
+ [[package]]
+ name = "hermit-abi"
+ version = "0.1.17"
+@@ -605,19 +635,20 @@ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "28d569972648b2c512421b5f2a405ad6ac9666547189d0c5477a3f200f3e02f9"
+ dependencies = [
+- "bytes",
++ "bytes 0.5.6",
+  "fnv",
+- "itoa",
++ "itoa 0.4.6",
+ ]
+ 
+ [[package]]
+ name = "http-body"
+-version = "0.3.1"
++version = "0.4.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "13d5ff830006f7646652e057693569bfe0d51760c0085a071769d142a205111b"
++checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1"
+ dependencies = [
+- "bytes",
++ "bytes 1.2.1",
+  "http",
++ "pin-project-lite",
+ ]
+ 
+ [[package]]
+@@ -634,20 +665,17 @@ checksum = "494b4d60369511e7dea41cf646832512a94e542f68bb9c49e54518e0f468eb47"
+ 
+ [[package]]
+ name = "humantime"
+-version = "1.3.0"
++version = "2.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
+-dependencies = [
+- "quick-error 1.2.3",
+-]
++checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
+ 
+ [[package]]
+ name = "hyper"
+-version = "0.13.9"
++version = "0.14.5"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f6ad767baac13b44d4529fcf58ba2cd0995e36e7b435bc5b039de6f47e880dbf"
++checksum = "8bf09f61b52cfcf4c00de50df88ae423d6c02354e385a86341133b5338630ad1"
+ dependencies = [
+- "bytes",
++ "bytes 1.2.1",
+  "futures-channel",
+  "futures-core",
+  "futures-util",
+@@ -656,8 +684,8 @@ dependencies = [
+  "http-body",
+  "httparse",
+  "httpdate",
+- "itoa",
+- "pin-project 1.0.1",
++ "itoa 0.4.6",
++ "pin-project",
+  "socket2",
+  "tokio",
+  "tower-service",
+@@ -712,15 +740,6 @@ dependencies = [
+  "libc",
+ ]
+ 
+-[[package]]
+-name = "input_buffer"
+-version = "0.3.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "19a8a95243d5a0398cae618ec29477c6e3cb631152be5c19481f80bc71559754"
+-dependencies = [
+- "bytes",
+-]
+-
+ [[package]]
+ name = "iovec"
+ version = "0.1.4"
+@@ -736,6 +755,12 @@ version = "0.4.6"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6"
+ 
++[[package]]
++name = "itoa"
++version = "1.0.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6c8af84674fe1f223a982c933a0ee1086ac4d4052aa0fb8060c12c6ad838e754"
++
+ [[package]]
+ name = "katex"
+ version = "0.3.2"
+@@ -771,9 +796,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
+ 
+ [[package]]
+ name = "libc"
+-version = "0.2.80"
++version = "0.2.134"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "4d58d1b70b004888f764dfbf6a26a3b0342a1632d33968e4a179d8011c760614"
++checksum = "329c933548736bc49fd575ee68c89e8be4d260064184389a5b77517cddd99ffb"
+ 
+ [[package]]
+ name = "libquickjs-sys"
+@@ -843,14 +868,15 @@ checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
+ 
+ [[package]]
+ name = "mdbook"
+-version = "0.4.4"
++version = "0.4.21"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "714a3ac362b9b32eef9468ecfe604cb8e2204d50793602e9d49fee44781230e7"
++checksum = "23f3e133c6d515528745ffd3b9f0c7d975ae039f0b6abb099f2168daa2afb4f9"
+ dependencies = [
+  "ammonia",
+  "anyhow",
+  "chrono",
+- "clap",
++ "clap 3.2.22",
++ "clap_complete",
+  "elasticlunr-rs",
+  "env_logger",
+  "futures-util",
+@@ -860,16 +886,16 @@ dependencies = [
+  "log",
+  "memchr",
+  "notify",
+- "open",
++ "opener",
+  "pulldown-cmark",
+  "regex",
+  "serde",
+- "serde_derive",
+  "serde_json",
+  "shlex",
+  "tempfile",
+  "tokio",
+  "toml",
++ "topological-sort",
+  "warp",
+ ]
+ 
+@@ -877,7 +903,7 @@ dependencies = [
+ name = "mdbook-katex"
+ version = "0.2.10"
+ dependencies = [
+- "clap",
++ "clap 2.33.3",
+  "katex",
+  "mdbook",
+  "serde_json",
+@@ -886,9 +912,9 @@ dependencies = [
+ 
+ [[package]]
+ name = "memchr"
+-version = "2.3.4"
++version = "2.5.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0ee1c47aaa256ecabcaea351eae4a9b01ef39ed810004e298d2511ed284b1525"
++checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
+ 
+ [[package]]
+ name = "mime"
+@@ -925,6 +951,18 @@ dependencies = [
+  "winapi 0.2.8",
+ ]
+ 
++[[package]]
++name = "mio"
++version = "0.8.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "57ee1c23c7c63b0c9250c339ffdc69255f110b298b901b9f6c82547b7b87caaf"
++dependencies = [
++ "libc",
++ "log",
++ "wasi 0.11.0+wasi-snapshot-preview1",
++ "windows-sys",
++]
++
+ [[package]]
+ name = "mio-extras"
+ version = "2.0.6"
+@@ -933,7 +971,7 @@ checksum = "52403fe290012ce777c4626790c8951324a2b9e3316b3143779c72b029742f19"
+ dependencies = [
+  "lazycell",
+  "log",
+- "mio",
++ "mio 0.6.22",
+  "slab",
+ ]
+ 
+@@ -978,7 +1016,7 @@ dependencies = [
+  "fsevent-sys",
+  "inotify",
+  "libc",
+- "mio",
++ "mio 0.6.22",
+  "mio-extras",
+  "walkdir 2.3.1",
+  "winapi 0.3.9",
+@@ -1004,32 +1042,43 @@ dependencies = [
+ ]
+ 
+ [[package]]
+-name = "once_cell"
+-version = "1.5.2"
++name = "num_cpus"
++version = "1.13.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "13bd41f508810a131401606d54ac32a467c97172d74ba7662562ebba5ad07fa0"
++checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1"
++dependencies = [
++ "hermit-abi",
++ "libc",
++]
+ 
+ [[package]]
+-name = "opaque-debug"
+-version = "0.2.3"
++name = "once_cell"
++version = "1.15.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c"
++checksum = "e82dad04139b71a90c080c8463fe0dc7902db5192d939bd0950f074d014339e1"
+ 
+ [[package]]
+ name = "opaque-debug"
+-version = "0.3.0"
++version = "0.2.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
++checksum = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c"
+ 
+ [[package]]
+-name = "open"
+-version = "1.4.0"
++name = "opener"
++version = "0.5.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7c283bf0114efea9e42f1a60edea9859e8c47528eae09d01df4b29c1e489cc48"
++checksum = "4ea3ebcd72a54701f56345f16785a6d3ac2df7e986d273eb4395c0b01db17952"
+ dependencies = [
++ "bstr",
+  "winapi 0.3.9",
+ ]
+ 
++[[package]]
++name = "os_str_bytes"
++version = "6.3.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9ff7415e9ae3fff1225851df9e0d9e4e5479f947619774677a63572e55e80eff"
++
+ [[package]]
+ name = "percent-encoding"
+ version = "2.1.0"
+@@ -1105,7 +1154,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "17367f0cc86f2d25802b2c26ee58a7b23faeccf78a396094c13dced0d0182526"
+ dependencies = [
+  "phf_shared",
+- "rand",
++ "rand 0.7.3",
+ ]
+ 
+ [[package]]
+@@ -1117,33 +1166,13 @@ dependencies = [
+  "siphasher",
+ ]
+ 
+-[[package]]
+-name = "pin-project"
+-version = "0.4.27"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "2ffbc8e94b38ea3d2d8ba92aea2983b503cd75d0888d75b86bb37970b5698e15"
+-dependencies = [
+- "pin-project-internal 0.4.27",
+-]
+-
+ [[package]]
+ name = "pin-project"
+ version = "1.0.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "ee41d838744f60d959d7074e3afb6b35c7456d0f61cad38a24e35e6553f73841"
+ dependencies = [
+- "pin-project-internal 1.0.1",
+-]
+-
+-[[package]]
+-name = "pin-project-internal"
+-version = "0.4.27"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "65ad2ae56b6abe3a1ee25f15ee605bacadb9a764edaba9c2bf4103800d4a1895"
+-dependencies = [
+- "proc-macro2",
+- "quote",
+- "syn",
++ "pin-project-internal",
+ ]
+ 
+ [[package]]
+@@ -1159,9 +1188,9 @@ dependencies = [
+ 
+ [[package]]
+ name = "pin-project-lite"
+-version = "0.1.11"
++version = "0.2.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c917123afa01924fc84bb20c4c03f004d9c38e5127e3c039bbf7f4b9c76a2f6b"
++checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116"
+ 
+ [[package]]
+ name = "pin-utils"
+@@ -1181,18 +1210,6 @@ version = "0.1.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c"
+ 
+-[[package]]
+-name = "proc-macro-hack"
+-version = "0.5.19"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5"
+-
+-[[package]]
+-name = "proc-macro-nested"
+-version = "0.1.6"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "eba180dafb9038b050a4c280019bbedf9f2467b61e5d892dcad585bb57aadc5a"
+-
+ [[package]]
+ name = "proc-macro2"
+ version = "1.0.24"
+@@ -1204,28 +1221,15 @@ dependencies = [
+ 
+ [[package]]
+ name = "pulldown-cmark"
+-version = "0.7.2"
++version = "0.9.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ca36dea94d187597e104a5c8e4b07576a8a45aa5db48a65e12940d3eb7461f55"
++checksum = "2d9cc634bc78768157b5cbfe988ffcd1dcba95cd2b2f03a88316c08c6d00ed63"
+ dependencies = [
+  "bitflags",
+- "getopts",
+  "memchr",
+  "unicase",
+ ]
+ 
+-[[package]]
+-name = "quick-error"
+-version = "1.2.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
+-
+-[[package]]
+-name = "quick-error"
+-version = "2.0.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3ac73b1112776fc109b2e61909bc46c7e1bf0d7f690ffb1676553acce16d5cda"
+-
+ [[package]]
+ name = "quick-js"
+ version = "0.4.0"
+@@ -1251,14 +1255,25 @@ version = "0.7.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
+ dependencies = [
+- "getrandom",
++ "getrandom 0.1.15",
+  "libc",
+- "rand_chacha",
+- "rand_core",
++ "rand_chacha 0.2.2",
++ "rand_core 0.5.1",
+  "rand_hc",
+  "rand_pcg",
+ ]
+ 
++[[package]]
++name = "rand"
++version = "0.8.5"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
++dependencies = [
++ "libc",
++ "rand_chacha 0.3.1",
++ "rand_core 0.6.4",
++]
++
+ [[package]]
+ name = "rand_chacha"
+ version = "0.2.2"
+@@ -1266,7 +1281,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
+ dependencies = [
+  "ppv-lite86",
+- "rand_core",
++ "rand_core 0.5.1",
++]
++
++[[package]]
++name = "rand_chacha"
++version = "0.3.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
++dependencies = [
++ "ppv-lite86",
++ "rand_core 0.6.4",
+ ]
+ 
+ [[package]]
+@@ -1275,7 +1300,16 @@ version = "0.5.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
+ dependencies = [
+- "getrandom",
++ "getrandom 0.1.15",
++]
++
++[[package]]
++name = "rand_core"
++version = "0.6.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
++dependencies = [
++ "getrandom 0.2.7",
+ ]
+ 
+ [[package]]
+@@ -1284,7 +1318,7 @@ version = "0.2.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
+ dependencies = [
+- "rand_core",
++ "rand_core 0.5.1",
+ ]
+ 
+ [[package]]
+@@ -1293,7 +1327,7 @@ version = "0.2.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429"
+ dependencies = [
+- "rand_core",
++ "rand_core 0.5.1",
+ ]
+ 
+ [[package]]
+@@ -1304,21 +1338,26 @@ checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce"
+ 
+ [[package]]
+ name = "regex"
+-version = "1.4.2"
++version = "1.6.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "38cf2c13ed4745de91a5eb834e11c00bcc3709e773173b2ce4c56c9fbde04b9c"
++checksum = "4c4eb3267174b8c6c2f654116623910a0fef09c4753f8dd83db29c48a0df988b"
+ dependencies = [
+  "aho-corasick",
+  "memchr",
+  "regex-syntax",
+- "thread_local",
+ ]
+ 
++[[package]]
++name = "regex-automata"
++version = "0.1.10"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
++
+ [[package]]
+ name = "regex-syntax"
+-version = "0.6.21"
++version = "0.6.27"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3b181ba2dcf07aaccad5448e8ead58db5b742cf85dfe035e2227f137a539a189"
++checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244"
+ 
+ [[package]]
+ name = "remove_dir_all"
+@@ -1329,6 +1368,15 @@ dependencies = [
+  "winapi 0.3.9",
+ ]
+ 
++[[package]]
++name = "rustls-pemfile"
++version = "0.2.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5eebeaeb360c87bfb72e84abdb3447159c0eaececf1bef2aecd65a8be949d1c9"
++dependencies = [
++ "base64 0.13.0",
++]
++
+ [[package]]
+ name = "ryu"
+ version = "1.0.5"
+@@ -1355,6 +1403,9 @@ name = "serde"
+ version = "1.0.117"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "b88fa983de7720629c9387e9f517353ed404164b1e482c970a90c1a4aaf7dc1a"
++dependencies = [
++ "serde_derive",
++]
+ 
+ [[package]]
+ name = "serde_derive"
+@@ -1373,21 +1424,21 @@ version = "1.0.59"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "dcac07dbffa1c65e7f816ab9eba78eb142c6d44410f4eeba1e26e4f5dfa56b95"
+ dependencies = [
+- "itoa",
++ "itoa 0.4.6",
+  "ryu",
+  "serde",
+ ]
+ 
+ [[package]]
+ name = "serde_urlencoded"
+-version = "0.6.1"
++version = "0.7.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9ec5d77e2d4c73717816afac02670d5c4f534ea95ed430442cad02e7a6e32c97"
++checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd"
+ dependencies = [
+- "dtoa",
+- "itoa",
++ "form_urlencoded",
++ "itoa 1.0.3",
++ "ryu",
+  "serde",
+- "url",
+ ]
+ 
+ [[package]]
+@@ -1399,27 +1450,25 @@ dependencies = [
+  "block-buffer 0.7.3",
+  "digest 0.8.1",
+  "fake-simd",
+- "opaque-debug 0.2.3",
++ "opaque-debug",
+ ]
+ 
+ [[package]]
+ name = "sha-1"
+-version = "0.9.2"
++version = "0.10.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ce3cdf1b5e620a498ee6f2a171885ac7e22f0e12089ec4b3d22b84921792507c"
++checksum = "028f48d513f9678cda28f6e4064755b3fbb2af6acd672f2c209b62323f7aea0f"
+ dependencies = [
+- "block-buffer 0.9.0",
+  "cfg-if 1.0.0",
+- "cpuid-bool",
+- "digest 0.9.0",
+- "opaque-debug 0.3.0",
++ "cpufeatures",
++ "digest 0.10.5",
+ ]
+ 
+ [[package]]
+ name = "shlex"
+-version = "0.1.1"
++version = "1.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7fdf1b9db47230893d76faad238fd6097fd6d6a9245cd7a4d90dbd639536bbd2"
++checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3"
+ 
+ [[package]]
+ name = "siphasher"
+@@ -1435,13 +1484,11 @@ checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
+ 
+ [[package]]
+ name = "socket2"
+-version = "0.3.16"
++version = "0.4.7"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7fd8b795c389288baa5f355489c65e71fd48a02104600d15c4cfbc561e9e429d"
++checksum = "02e2d2db9033d13a1567121ddd7a095ee144db4e1ca1b1bda3419bc0da294ebd"
+ dependencies = [
+- "cfg-if 0.1.10",
+  "libc",
+- "redox_syscall",
+  "winapi 0.3.9",
+ ]
+ 
+@@ -1483,28 +1530,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c"
+ 
+ [[package]]
+-name = "strum"
+-version = "0.18.0"
++name = "strsim"
++version = "0.10.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "57bd81eb48f4c437cadc685403cad539345bf703d78e63707418431cecd4522b"
+-
+-[[package]]
+-name = "strum_macros"
+-version = "0.18.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "87c85aa3f8ea653bfd3ddf25f7ee357ee4d204731f6aa9ad04002306f6e2774c"
+-dependencies = [
+- "heck",
+- "proc-macro2",
+- "quote",
+- "syn",
+-]
++checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
+ 
+ [[package]]
+ name = "syn"
+-version = "1.0.48"
++version = "1.0.67"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "cc371affeffc477f42a221a1e4297aedcea33d47d19b61455588bd9d8f6b19ac"
++checksum = "6498a9efc342871f91cc2d0d694c674368b4ceb40f62b65a7a08c3792935e702"
+ dependencies = [
+  "proc-macro2",
+  "quote",
+@@ -1519,7 +1554,7 @@ checksum = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
+ dependencies = [
+  "cfg-if 0.1.10",
+  "libc",
+- "rand",
++ "rand 0.7.3",
+  "redox_syscall",
+  "remove_dir_all",
+  "winapi 0.3.9",
+@@ -1538,9 +1573,9 @@ dependencies = [
+ 
+ [[package]]
+ name = "termcolor"
+-version = "1.1.0"
++version = "1.1.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "bb6bfa289a4d7c5766392812c0a1f4c1ba45afa1ad47803c11e1f407d846d75f"
++checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755"
+ dependencies = [
+  "winapi-util",
+ ]
+@@ -1554,35 +1589,32 @@ dependencies = [
+  "unicode-width",
+ ]
+ 
++[[package]]
++name = "textwrap"
++version = "0.15.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "949517c0cf1bf4ee812e2e07e08ab448e3ae0d23472aee8a06c985f0c8815b16"
++
+ [[package]]
+ name = "thiserror"
+-version = "1.0.22"
++version = "1.0.37"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0e9ae34b84616eedaaf1e9dd6026dbe00dcafa92aa0c8077cb69df1fcfe5e53e"
++checksum = "10deb33631e3c9018b9baf9dcbbc4f737320d2b576bac10f6aefa048fa407e3e"
+ dependencies = [
+  "thiserror-impl",
+ ]
+ 
+ [[package]]
+ name = "thiserror-impl"
+-version = "1.0.22"
++version = "1.0.37"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9ba20f23e85b10754cd195504aebf6a27e2e6cbe28c17778a0c930724628dd56"
++checksum = "982d17546b47146b28f7c22e3d08465f6b8903d0ea13c1660d9d84a6e7adcdbb"
+ dependencies = [
+  "proc-macro2",
+  "quote",
+  "syn",
+ ]
+ 
+-[[package]]
+-name = "thread_local"
+-version = "1.0.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14"
+-dependencies = [
+- "lazy_static",
+-]
+-
+ [[package]]
+ name = "time"
+ version = "0.1.44"
+@@ -1611,58 +1643,68 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
+ 
+ [[package]]
+ name = "tokio"
+-version = "0.2.23"
++version = "1.21.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a6d7ad61edd59bfcc7e80dababf0f4aed2e6d5e0ba1659356ae889752dfc12ff"
++checksum = "a9e03c497dc955702ba729190dc4aac6f2a0ce97f913e5b1b5912fc5039d9099"
+ dependencies = [
+- "bytes",
+- "fnv",
+- "futures-core",
+- "iovec",
+- "lazy_static",
++ "autocfg",
++ "bytes 1.2.1",
++ "libc",
+  "memchr",
+- "mio",
++ "mio 0.8.4",
++ "num_cpus",
+  "pin-project-lite",
+- "slab",
++ "socket2",
+  "tokio-macros",
++ "winapi 0.3.9",
+ ]
+ 
+ [[package]]
+ name = "tokio-macros"
+-version = "0.2.6"
++version = "1.8.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e44da00bfc73a25f814cd8d7e57a68a5c31b74b3152a0a1d1f590c97ed06265a"
++checksum = "9724f9a975fb987ef7a3cd9be0350edcbe130698af5b8f7a631e23d42d052484"
+ dependencies = [
+  "proc-macro2",
+  "quote",
+  "syn",
+ ]
+ 
++[[package]]
++name = "tokio-stream"
++version = "0.1.10"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f6edf2d6bc038a43d31353570e27270603f4648d18f5ed10c0e179abe43255af"
++dependencies = [
++ "futures-core",
++ "pin-project-lite",
++ "tokio",
++]
++
+ [[package]]
+ name = "tokio-tungstenite"
+-version = "0.11.0"
++version = "0.17.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6d9e878ad426ca286e4dcae09cbd4e1973a7f8987d97570e2469703dd7f5720c"
++checksum = "f714dd15bead90401d77e04243611caec13726c2408afd5b31901dfcdcb3b181"
+ dependencies = [
+  "futures-util",
+  "log",
+- "pin-project 0.4.27",
+  "tokio",
+  "tungstenite",
+ ]
+ 
+ [[package]]
+ name = "tokio-util"
+-version = "0.3.1"
++version = "0.7.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "be8242891f2b6cbef26a2d7e8605133c2c554cd35b3e4948ea892d6d68436499"
++checksum = "0bb2e075f03b3d66d8d8785356224ba688d2906a371015e225beeb65ca92c740"
+ dependencies = [
+- "bytes",
++ "bytes 1.2.1",
+  "futures-core",
+  "futures-sink",
+- "log",
+  "pin-project-lite",
+  "tokio",
++ "tracing",
+ ]
+ 
+ [[package]]
+@@ -1674,6 +1716,12 @@ dependencies = [
+  "serde",
+ ]
+ 
++[[package]]
++name = "topological-sort"
++version = "0.1.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "aa7c7f42dea4b1b99439786f5633aeb9c14c1b53f75e282803c2ec2ad545873c"
++
+ [[package]]
+ name = "tower-service"
+ version = "0.3.0"
+@@ -1682,11 +1730,11 @@ checksum = "e987b6bf443f4b5b3b6f38704195592cca41c5bb7aedd3c3693c7081f8289860"
+ 
+ [[package]]
+ name = "tracing"
+-version = "0.1.21"
++version = "0.1.35"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b0987850db3733619253fe60e17cb59b82d37c7e6c0236bb81e4d6b87c879f27"
++checksum = "a400e31aa60b9d44a52a8ee0343b5b18566b03a8321e0d321f695cf56e940160"
+ dependencies = [
+- "cfg-if 0.1.10",
++ "cfg-if 1.0.0",
+  "log",
+  "pin-project-lite",
+  "tracing-core",
+@@ -1694,21 +1742,11 @@ dependencies = [
+ 
+ [[package]]
+ name = "tracing-core"
+-version = "0.1.17"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f50de3927f93d202783f4513cda820ab47ef17f624b03c096e86ef00c67e6b5f"
+-dependencies = [
+- "lazy_static",
+-]
+-
+-[[package]]
+-name = "tracing-futures"
+-version = "0.2.4"
++version = "0.1.29"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ab7bb6f14721aa00656086e9335d363c5c8747bae02ebe32ea2c7dece5689b4c"
++checksum = "5aeea4303076558a00714b823f9ad67d58a3bbda1df83d8827d21193156e22f7"
+ dependencies = [
+- "pin-project 0.4.27",
+- "tracing",
++ "once_cell",
+ ]
+ 
+ [[package]]
+@@ -1719,28 +1757,28 @@ checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642"
+ 
+ [[package]]
+ name = "tungstenite"
+-version = "0.11.1"
++version = "0.17.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f0308d80d86700c5878b9ef6321f020f29b1bb9d5ff3cab25e75e23f3a492a23"
++checksum = "e27992fd6a8c29ee7eef28fc78349aa244134e10ad447ce3b9f0ac0ed0fa4ce0"
+ dependencies = [
+- "base64",
++ "base64 0.13.0",
+  "byteorder",
+- "bytes",
++ "bytes 1.2.1",
+  "http",
+  "httparse",
+- "input_buffer",
+  "log",
+- "rand",
+- "sha-1 0.9.2",
++ "rand 0.8.5",
++ "sha-1 0.10.0",
++ "thiserror",
+  "url",
+  "utf-8",
+ ]
+ 
+ [[package]]
+ name = "typenum"
+-version = "1.12.0"
++version = "1.15.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "373c8a200f9e67a0c95e62a4f52fbf80c23b4381c05a17845531982fa99e6b33"
++checksum = "dcf81ac59edc17cc8697ff311e8f5ef2d99fcbd9817b34cec66f90b6c3dfd987"
+ 
+ [[package]]
+ name = "ucd-trie"
+@@ -1775,12 +1813,6 @@ dependencies = [
+  "tinyvec",
+ ]
+ 
+-[[package]]
+-name = "unicode-segmentation"
+-version = "1.7.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "db8716a166f290ff49dabc18b44aa407cb7c6dbe1aa0971b44b8a24b0ca35aae"
+-
+ [[package]]
+ name = "unicode-width"
+ version = "0.1.8"
+@@ -1805,12 +1837,6 @@ dependencies = [
+  "percent-encoding",
+ ]
+ 
+-[[package]]
+-name = "urlencoding"
+-version = "1.1.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c9232eb53352b4442e40d7900465dfc534e8cb2dc8f18656fcb2ac16112b5593"
+-
+ [[package]]
+ name = "utf-8"
+ version = "0.7.5"
+@@ -1862,29 +1888,32 @@ dependencies = [
+ 
+ [[package]]
+ name = "warp"
+-version = "0.2.5"
++version = "0.3.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f41be6df54c97904af01aa23e613d4521eed7ab23537cede692d4058f6449407"
++checksum = "ed7b8be92646fc3d18b06147664ebc5f48d222686cb11a8755e561a735aacc6d"
+ dependencies = [
+- "bytes",
+- "futures",
++ "bytes 1.2.1",
++ "futures-channel",
++ "futures-util",
+  "headers",
+  "http",
+  "hyper",
+  "log",
+  "mime",
+  "mime_guess",
+- "pin-project 0.4.27",
++ "percent-encoding",
++ "pin-project",
++ "rustls-pemfile",
+  "scoped-tls",
+  "serde",
+  "serde_json",
+  "serde_urlencoded",
+  "tokio",
++ "tokio-stream",
+  "tokio-tungstenite",
++ "tokio-util",
+  "tower-service",
+  "tracing",
+- "tracing-futures",
+- "urlencoding",
+ ]
+ 
+ [[package]]
+@@ -1899,6 +1928,12 @@ version = "0.10.0+wasi-snapshot-preview1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f"
+ 
++[[package]]
++name = "wasi"
++version = "0.11.0+wasi-snapshot-preview1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
++
+ [[package]]
+ name = "winapi"
+ version = "0.2.8"
+@@ -1942,6 +1977,49 @@ 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 = "ws2_32-sys"
+ version = "0.2.1"
+diff --git a/Cargo.toml b/Cargo.toml
+index 16efef1..e750ee2 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -10,6 +10,6 @@ readme = "README.md"
+ [dependencies]
+ katex = "0.3.2"
+ clap = "2.33.3"
+-mdbook = "0.4.4"
++mdbook = "0.4.21"
+ serde_json = "1.0.59"
+ toml = "0.5.7"
diff --git a/pkgs/tools/text/mdbook-linkcheck/default.nix b/pkgs/tools/text/mdbook-linkcheck/default.nix
index eaccd05eb9c44..0d2533eba48df 100644
--- a/pkgs/tools/text/mdbook-linkcheck/default.nix
+++ b/pkgs/tools/text/mdbook-linkcheck/default.nix
@@ -3,16 +3,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "mdbook-linkcheck";
-  version = "0.7.6";
+  version = "0.7.7";
 
   src = fetchFromGitHub {
     owner = "Michael-F-Bryan";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-ZEOuA8W05800cnArscaGGOWTgzU6V3/wJiQcSx1MVkY=";
+    sha256 = "sha256-ZbraChBHuKAcUA62EVHZ1RygIotNEEGv24nhSPAEj00=";
   };
 
-  cargoSha256 = "sha256-EtPhbKvPHSnmPXemCzOXujlqqfdDSFaJpcZVJoHQq6U=";
+  cargoSha256 = "sha256-AwixlCL5ZcLgj9wYeBvkSy2U6J8alXf488l8DMn73w4=";
 
   buildInputs = if stdenv.isDarwin then [ Security ] else [ openssl ];
 
diff --git a/pkgs/tools/text/mdbook-man/default.nix b/pkgs/tools/text/mdbook-man/default.nix
index 7783be1ccac2e..541e27eb7e063 100644
--- a/pkgs/tools/text/mdbook-man/default.nix
+++ b/pkgs/tools/text/mdbook-man/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "mdbook-man";
-  version = "unstable-2021-08-26";
+  version = "unstable-2022-11-05";
 
   src = fetchFromGitHub {
     owner = "vv9k";
     repo = pname;
-    rev = "419c91db0fcfcce65a6006ed9ec8415a8b705186";
-    sha256 = "sha256-NOPyDPQms/YJzjkXjVAFR60gLK4zqOuFSdRvFkZRRxQ=";
+    rev = "b9537dfbb241d7456835ed7e9d27ab8c8184e5f6";
+    hash = "sha256-ssAk60jnwYzAjseL26/3FaDv1vBAylgdE+vLhWZ8It4=";
   };
 
-  cargoSha256 = "sha256-NyeB2vI9Za5T1SKrjqwTi8LXX7A+M+2r/n1u2qtnK5g=";
+  cargoHash = "sha256-cR86eFhP9Swh+Ff8FNbAfWpWMkliOAyPwDQ6lRvU+nk=";
 
   meta = with lib; {
     description = "Generate manual pages from mdBooks";
diff --git a/pkgs/tools/text/mdbook-mermaid/default.nix b/pkgs/tools/text/mdbook-mermaid/default.nix
index bf666d36cb6df..1977fcd4efe86 100644
--- a/pkgs/tools/text/mdbook-mermaid/default.nix
+++ b/pkgs/tools/text/mdbook-mermaid/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, rustPlatform, CoreServices }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, rustPlatform, CoreServices }:
 
 rustPlatform.buildRustPackage rec {
   pname = "mdbook-mermaid";
@@ -8,10 +8,19 @@ rustPlatform.buildRustPackage rec {
     owner = "badboy";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-zXgXgcMF7MOa9Vx3rhv9aavqRCfMcyRLtaWEvYlyaTs=";
+    hash = "sha256-zXgXgcMF7MOa9Vx3rhv9aavqRCfMcyRLtaWEvYlyaTs=";
   };
 
-  cargoSha256 = "sha256-sV/1caeXq/he92cvAajDL7pZJNiXCzf/DDXKnPKU4XQ=";
+  cargoPatches = [
+    # https://github.com/badboy/mdbook-mermaid/pull/23
+    (fetchpatch {
+      name = "update-mdbook-for-rust-1.64.patch";
+      url = "https://github.com/badboy/mdbook-mermaid/commit/5a3432d1b28ef9a065dd37aa77b82a3593358793.patch";
+      hash = "sha256-NkCxGmRdwJ+jdkgxp5gWfGpgpLpEpKUd44LyPx0kyEE=";
+    })
+  ];
+
+  cargoHash = "sha256-IkMBnBuobrJzR6+030/Wfbu2ZCjvFnjBV+6sSWdiNUw=";
 
   buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ];
 
diff --git a/pkgs/tools/text/mdbook-open-on-gh/default.nix b/pkgs/tools/text/mdbook-open-on-gh/default.nix
index 09b0db3866be7..f334645ba5a4a 100644
--- a/pkgs/tools/text/mdbook-open-on-gh/default.nix
+++ b/pkgs/tools/text/mdbook-open-on-gh/default.nix
@@ -1,4 +1,4 @@
-{ lib, rustPlatform, fetchFromGitHub }:
+{ lib, rustPlatform, fetchFromGitHub, fetchpatch }:
 
 rustPlatform.buildRustPackage rec {
   pname = "mdbook-open-on-gh";
@@ -8,10 +8,19 @@ rustPlatform.buildRustPackage rec {
     owner = "badboy";
     repo = pname;
     rev = "2.2.0";
-    sha256 = "sha256-x7ESuXoF5dYnJZpgDyYliVixCG4w/VX/Vhm3VqxsiEI=";
+    hash = "sha256-x7ESuXoF5dYnJZpgDyYliVixCG4w/VX/Vhm3VqxsiEI=";
   };
 
-  cargoSha256 = "sha256-FVcCzL0jJ827HHS/9G597QjNFY3HLNYHCPWcepEulD0=";
+  cargoPatches = [
+    # https://github.com/badboy/mdbook-open-on-gh/pull/7
+    (fetchpatch {
+      name = "update-mdbook-for-rust-1.64.patch";
+      url = "https://github.com/badboy/mdbook-open-on-gh/commit/bd20601bfcec144c9302b1ba1a1aff4b95b334d9.patch";
+      hash = "sha256-3Df9Q3sqCpZzqCN9fi+wdeWjLUW4XdywIS3QUjsDE9g=";
+    })
+  ];
+
+  cargoHash = "sha256-N0RwengTWk4luPIecIxzbFReGi+PtE77FJalPq1CdbA=";
 
   meta = with lib; {
     description = "mdbook preprocessor to add a open-on-github link on every page";
diff --git a/pkgs/tools/text/mdbook-pdf/default.nix b/pkgs/tools/text/mdbook-pdf/default.nix
index 8c21f50b1d7e2..ca24909ed1d5b 100644
--- a/pkgs/tools/text/mdbook-pdf/default.nix
+++ b/pkgs/tools/text/mdbook-pdf/default.nix
@@ -2,14 +2,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "mdbook-pdf";
-  version = "0.1.2";
+  version = "0.1.3";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "1ibmn8x9kyfd058hsyah2ggyzpahzf2w2qjn6rs9qv8mr3bvc0pv";
+    sha256 = "sha256-zFeEmIv3DIYKmhVYO9cJwRQbSP8yELaJjVjP7hYegco=";
   };
 
-  cargoSha256 = "0k47a5yqnjjc599vgk39ijy6fm62rr8xarvz37g0c7fx9cljhihz";
+  cargoHash = "sha256-pB7NEloeow4TE1Y1EMUZzeCJ/f4DnCS+sQlyN49gqzA=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/tools/text/mdbook-plantuml/default.nix b/pkgs/tools/text/mdbook-plantuml/default.nix
index 0b26bee09538d..e57bd1a452250 100644
--- a/pkgs/tools/text/mdbook-plantuml/default.nix
+++ b/pkgs/tools/text/mdbook-plantuml/default.nix
@@ -1,18 +1,36 @@
-{ lib, fetchFromGitHub, stdenv, rustPlatform, darwin, pkg-config, openssl
-, libiconv, CoreServices }:
+{ lib
+, fetchFromGitHub
+, fetchpatch
+, stdenv
+, rustPlatform
+, darwin
+, pkg-config
+, openssl
+, libiconv
+, CoreServices
+}:
 
 rustPlatform.buildRustPackage rec {
   pname = "mdbook-plantuml";
-  version = "0.7.0";
+  version = "0.8.0";
 
   src = fetchFromGitHub {
     owner = "sytsereitsma";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1m53sp3k387injn6mwk2c6rkzw16b12m4j7q0p69fdb3fiqbkign";
+    hash = "sha256-26epwn6j/ZeMAphiFsrLjS0KIewvElr7V3p/EDr4Uqk=";
   };
 
-  cargoSha256 = "0xi14k86ym3rfz6901lmj444y814m7vp90bwsyjmcph3hdv6mjp0";
+  cargoPatches = [
+    # https://github.com/sytsereitsma/mdbook-plantuml/pull/60
+    (fetchpatch {
+      name = "update-mdbook-for-rust-1.64.patch";
+      url = "https://github.com/sytsereitsma/mdbook-plantuml/commit/a1c7fdaff65fbbcc086006f6d180b27e180739e7.patch";
+      hash = "sha256-KXFQxogR6SaoX8snsSYMA8gn1FrQVKMl5l8khxB09WE=";
+    })
+  ];
+
+  cargoHash = "sha256-3HlnhRexfFcAuk1RoatWORMJvYRrnoEft5ys6j3t9S0=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/tools/text/schema2ldif/default.nix b/pkgs/tools/text/schema2ldif/default.nix
index 84196ae111979..fc4a2153d662d 100644
--- a/pkgs/tools/text/schema2ldif/default.nix
+++ b/pkgs/tools/text/schema2ldif/default.nix
@@ -1,14 +1,23 @@
-{ lib, stdenv, fetchurl, makeWrapper, perlPackages }:
+{ lib, stdenvNoCC, fetchurl, makeWrapper, perlPackages }:
 
-stdenv.mkDerivation rec {
+stdenvNoCC.mkDerivation rec {
   pname = "schema2ldif";
   version = "1.3";
 
   src = fetchurl {
     url = "https://repos.fusiondirectory.org/sources/schema2ldif/schema2ldif-${version}.tar.gz";
-    sha256 = "00cd9xx9g0mnnfn5lvay3vg166z84jla0ya1x34ljdc8bflxsr9a";
+    hash = "sha256-KmXdqVuINUnJ6EF5oKgk6BsT3h5ebVqss7aCl3pPjQE=";
   };
 
+  postPatch = ''
+    # Removes the root check and changes the temporary location
+    # from the nix store to $PWD
+    sed -i \
+      -e '/You have to run this script as root/d' \
+      -e 's|/\^(\.\*)\\\.schema\$/|/.*\\/(.*)\\.schema$/|g' \
+      bin/ldap-schema-manager
+  '';
+
   buildInputs = [ perlPackages.perl ];
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/pkgs/tools/text/vale/default.nix b/pkgs/tools/text/vale/default.nix
index f517d9001d17d..e4cae17b44576 100644
--- a/pkgs/tools/text/vale/default.nix
+++ b/pkgs/tools/text/vale/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "vale";
-  version = "2.20.1";
+  version = "2.20.2";
 
   subPackages = [ "cmd/vale" ];
   outputs = [ "out" "data" ];
@@ -11,7 +11,7 @@ buildGoModule rec {
     owner = "errata-ai";
     repo = "vale";
     rev = "v${version}";
-    sha256 = "sha256-7n2gAZgt2ri/n0O9Sc2QEbZrzEgnyDh38JVdc+YuT5s=";
+    sha256 = "sha256-NQtpuFHHbZwrD9kwSppx7GvJ+Puj4awyN0mAbwlMH8Y=";
   };
 
   vendorSha256 = "sha256-ODzQkNOXEvSOhG6MoJbyxIwduFAW5FQb5hlOn3+io3A=";
@@ -23,6 +23,9 @@ buildGoModule rec {
 
   ldflags = [ "-s" "-w" "-X main.version=${version}" ];
 
+  # Tests require network access
+  doCheck = false;
+
   meta = with lib; {
     homepage = "https://vale.sh/";
     description = "A syntax-aware linter for prose built with speed and extensibility in mind";
diff --git a/pkgs/tools/typesetting/asciidoc/default.nix b/pkgs/tools/typesetting/asciidoc/default.nix
index cf6e0bdb3d427..4cfecfccdbcec 100644
--- a/pkgs/tools/typesetting/asciidoc/default.nix
+++ b/pkgs/tools/typesetting/asciidoc/default.nix
@@ -218,7 +218,7 @@ in python3.pkgs.buildPythonApplication rec {
     # cannot find their neighbours (e.g. pdflatex doesn't find mktextfm).
     # We can remove PATH= when those impurities are fixed.
     # TODO: Is this still necessary when using texlive?
-    sed -e "s|^ENV =.*|ENV = dict(XML_CATALOG_FILES='${docbook_xml_dtd_45}/xml/dtd/docbook/catalog.xml ${docbook_xsl_ns}/xml/xsl/docbook/catalog.xml ${docbook_xsl}/xml/xsl/docbook/catalog.xml', PATH='${lib.makeBinPath [ texlive coreutils gnused ]}')|" \
+    sed -e "s|^ENV =.*|ENV = dict(XML_CATALOG_FILES='${docbook_xml_dtd_45}/xml/dtd/docbook/catalog.xml ${docbook_xsl_ns}/xml/xsl/docbook/catalog.xml ${docbook_xsl}/xml/xsl/docbook/catalog.xml', PATH='${lib.makeBinPath [ texlive coreutils gnused ]}', **(dict(filter(lambda v: v[0] == 'SOURCE_DATE_EPOCH', os.environ.items()))))|" \
         -e "s|^ASCIIDOC =.*|ASCIIDOC = '$out/bin/asciidoc'|" \
         -e "s|^XSLTPROC =.*|XSLTPROC = '${libxslt.bin}/bin/xsltproc'|" \
         -e "s|^DBLATEX =.*|DBLATEX = '${dblatexFull}/bin/dblatex'|" \
@@ -229,7 +229,7 @@ in python3.pkgs.buildPythonApplication rec {
         -e "s|^EPUBCHECK =.*|EPUBCHECK = '${epubcheck}/bin/epubcheck'|" \
         -i asciidoc/a2x.py
   '' else ''
-    sed -e "s|^ENV =.*|ENV = dict(XML_CATALOG_FILES='${docbook_xml_dtd_45}/xml/dtd/docbook/catalog.xml ${docbook_xsl_ns}/xml/xsl/docbook/catalog.xml ${docbook_xsl}/xml/xsl/docbook/catalog.xml')|" \
+    sed -e "s|^ENV =.*|ENV = dict(XML_CATALOG_FILES='${docbook_xml_dtd_45}/xml/dtd/docbook/catalog.xml ${docbook_xsl_ns}/xml/xsl/docbook/catalog.xml ${docbook_xsl}/xml/xsl/docbook/catalog.xml', **(dict(filter(lambda v: v[0] == 'SOURCE_DATE_EPOCH', os.environ.items()))))|" \
         -e "s|^XSLTPROC =.*|XSLTPROC = '${libxslt.bin}/bin/xsltproc'|" \
         -e "s|^XMLLINT =.*|XMLLINT = '${libxml2.bin}/bin/xmllint'|" \
         -i asciidoc/a2x.py
diff --git a/pkgs/tools/typesetting/satysfi/default.nix b/pkgs/tools/typesetting/satysfi/default.nix
index d270c46d1ae7f..819112b53d345 100644
--- a/pkgs/tools/typesetting/satysfi/default.nix
+++ b/pkgs/tools/typesetting/satysfi/default.nix
@@ -35,12 +35,12 @@ let
 in
   stdenv.mkDerivation rec {
     pname = "satysfi";
-    version = "0.0.7";
+    version = "0.0.8";
     src = fetchFromGitHub {
       owner = "gfngfn";
       repo = "SATySFi";
       rev = "v${version}";
-      sha256 = "sha256-BmnOIplC24JMb0LSgGPh/j01rXvtl0wni3Chb347eR8=";
+      sha256 = "sha256-cVGe1N3qMlEGAE/jPUji/X3zlijadayka1OL6iFioY4=";
       fetchSubmodules = true;
     };
 
diff --git a/pkgs/tools/typesetting/tectonic/default.nix b/pkgs/tools/typesetting/tectonic/default.nix
index ecab3c4a8fa62..0eaf307591fd4 100644
--- a/pkgs/tools/typesetting/tectonic/default.nix
+++ b/pkgs/tools/typesetting/tectonic/default.nix
@@ -7,26 +7,26 @@
 , harfbuzz
 , openssl
 , pkg-config
-, makeWrapper
+, makeBinaryWrapper
 , biber
 , icu
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "tectonic";
-  version = "0.9.0";
+  version = "0.11.0";
 
   src = fetchFromGitHub {
     owner = "tectonic-typesetting";
     repo = "tectonic";
     rev = "tectonic@${version}";
     fetchSubmodules = true;
-    sha256 = "mfIEfue64kG4NmIEdTPRAqt6y22XfcgH6GtvJxuH6TU=";
+    sha256 = "tBX737Yv4TvDo64cDYuALX61vzKjhz6PTMXQhWc5S/I=";
   };
 
-  cargoSha256 = "CH1FdZ7cPrE0V0yjauOjDKrRNioC3MjtcnZaOTkMptc=";
+  cargoSha256 = "awDVjJLwgpSMbwptmLhczaxB5HqvsdvEOUsLYb/zTUc=";
 
-  nativeBuildInputs = [ pkg-config makeWrapper ];
+  nativeBuildInputs = [ pkg-config makeBinaryWrapper ];
 
   buildInputs = [ icu fontconfig harfbuzz openssl ]
     ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ ApplicationServices Cocoa Foundation ]);
@@ -35,7 +35,7 @@ rustPlatform.buildRustPackage rec {
   # https://github.com/tectonic-typesetting/tectonic/releases/tag/tectonic%400.7.0
   postInstall = ''
     wrapProgram $out/bin/tectonic \
-      --prefix PATH "${lib.getBin biber}/bin"
+      --prefix PATH : "${lib.getBin biber}/bin"
   '' + lib.optionalString stdenv.isLinux ''
     substituteInPlace dist/appimage/tectonic.desktop \
       --replace Exec=tectonic Exec=$out/bin/tectonic
diff --git a/pkgs/tools/typesetting/ted/default.nix b/pkgs/tools/typesetting/ted/default.nix
index bd21ad4c437bf..cc9d2574ff885 100644
--- a/pkgs/tools/typesetting/ted/default.nix
+++ b/pkgs/tools/typesetting/ted/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, zlib, pcre, xorg, libjpeg, libtiff, libpng, gtk2, libpaper, makeWrapper, ghostscript }:
+{ lib, stdenv, fetchurl, pkg-config, zlib, pcre, xlibsWrapper, xorg, libjpeg, libtiff, libpng, gtk2, libpaper, makeWrapper, ghostscript }:
 
 stdenv.mkDerivation rec {
   pname = "ted";
@@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
   '';
 
   nativeBuildInputs = [ pkg-config makeWrapper ];
-  buildInputs = [ zlib pcre xorg.xlibsWrapper xorg.libXpm libjpeg libtiff libpng gtk2 libpaper ];
+  buildInputs = [ zlib pcre xlibsWrapper xorg.libXpm libjpeg libtiff libpng gtk2 libpaper ];
 
   meta = with lib; {
     description = "An easy rich text processor";
diff --git a/pkgs/tools/typesetting/tex/texlive/bin.nix b/pkgs/tools/typesetting/tex/texlive/bin.nix
index 8da3df2773f04..94ed0b87362a9 100644
--- a/pkgs/tools/typesetting/tex/texlive/bin.nix
+++ b/pkgs/tools/typesetting/tex/texlive/bin.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, fetchpatch
+{ lib, stdenv, fetchurl, fetchpatch, buildPackages
 , texlive
 , zlib, libiconv, libpng, libX11
 , freetype, gd, libXaw, icu, ghostscript, libXpm, libXmu, libXext
@@ -77,7 +77,13 @@ core = stdenv.mkDerivation rec {
 
   outputs = [ "out" "doc" ];
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [
+    pkg-config
+  ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+    # configure: error: tangle was not found but is required when cross-compiling.
+    texlive.bin.core
+  ];
+
   buildInputs = [
     /*teckit*/ zziplib mpfr gmp
     pixman gd freetype libpng libpaper zlib
@@ -94,7 +100,10 @@ core = stdenv.mkDerivation rec {
   '';
   configureScript = "../configure";
 
+  depsBuildBuild = [ buildPackages.stdenv.cc ];
+
   configureFlags = common.configureFlags
+    ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "BUILDCC=${buildPackages.stdenv.cc.targetPrefix}cc" ]
     ++ [ "--without-x" ] # disable xdvik and xpdfopen
     ++ map (what: "--disable-${what}") [
       "chktex"
@@ -113,7 +122,7 @@ core = stdenv.mkDerivation rec {
 
   # TODO: perhaps improve texmf.cnf search locations
   postInstall = /* links format -> engine will be regenerated in texlive.combine */ ''
-    PATH="$out/bin:$PATH" ${texlinks}/bin/texlinks --cnffile "$out/share/texmf-dist/web2c/fmtutil.cnf" --unlink "$out/bin"
+    PATH="$out/bin:$PATH" ${buildPackages.texlive.bin.texlinks}/bin/texlinks --cnffile "$out/share/texmf-dist/web2c/fmtutil.cnf" --unlink "$out/bin"
   '' + /* a few texmf-dist files are useful; take the rest from pkgs */ ''
     mv "$out/share/texmf-dist/web2c/texmf.cnf" .
     rm -r "$out/share/texmf-dist"
@@ -202,7 +211,7 @@ core-big = stdenv.mkDerivation { #TODO: upmendex
         if [[ "$path" =~ "libs/pplib" ]]; then
           # TODO: revert for texlive 2022
           # ../../../texk/web2c/luatexdir/luamd5/md5lib.c:197:10: fatal error: 'utilsha.h' file not found
-          make ''${enableParallelBuilding:+-j''${NIX_BUILD_CORES} -l''${NIX_BUILD_CORES}}
+          make ''${enableParallelBuilding:+-j''${NIX_BUILD_CORES}}
         fi
       )
     done
diff --git a/pkgs/tools/virtualization/guestfs-tools/default.nix b/pkgs/tools/virtualization/guestfs-tools/default.nix
new file mode 100644
index 0000000000000..446d4bcde0b7e
--- /dev/null
+++ b/pkgs/tools/virtualization/guestfs-tools/default.nix
@@ -0,0 +1,99 @@
+{ lib
+, stdenv
+, fetchurl
+, bash-completion
+, bison
+, cdrkit
+, cpio
+, flex
+, getopt
+, hivex
+, jansson
+, libguestfs-with-appliance
+, libvirt
+, libxml2
+, makeWrapper
+, ncurses
+, ocamlPackages
+, openssl
+, pcre2
+, perlPackages
+, pkg-config
+, qemu
+, xz
+}:
+
+stdenv.mkDerivation rec {
+  pname = "guestfs-tools";
+  version = "1.48.2";
+
+  src = fetchurl {
+    url = "https://download.libguestfs.org/guestfs-tools/${lib.versions.majorMinor version}-stable/guestfs-tools-${version}.tar.gz";
+    sha256 = "sha256-G9l5sG5g5kMlSXzg0GX8+Et7M9/k2dRLMBgsMI4MaxA=";
+  };
+
+  nativeBuildInputs = [
+    bison
+    cdrkit
+    cpio
+    flex
+    getopt
+    makeWrapper
+    pkg-config
+    qemu
+  ] ++
+  (with perlPackages; [
+    GetoptLong
+    libintl-perl
+    ModuleBuild
+    perl
+    Po4a
+  ]) ++
+  (with ocamlPackages; [
+    findlib
+    gettext-stub
+    ocaml
+    ocaml_gettext
+    ounit2
+  ]);
+
+  buildInputs = [
+    bash-completion
+    hivex
+    jansson
+    libguestfs-with-appliance
+    libvirt
+    libxml2
+    ncurses
+    openssl
+    pcre2
+    xz
+  ];
+
+  preConfigure = ''
+    patchShebangs ocaml-dep.sh.in ocaml-link.sh.in run.in
+  '';
+
+  makeFlags = [
+    "LIBGUESTFS_PATH=${libguestfs-with-appliance}/lib/guestfs"
+  ];
+
+  installFlags = [
+    "BASH_COMPLETIONS_DIR=${placeholder "out"}/share/bash-completion/completions"
+  ];
+
+  enableParallelBuilding = true;
+
+  postInstall = ''
+    wrapProgram $out/bin/virt-win-reg \
+      --prefix PERL5LIB : ${with perlPackages; makeFullPerlPath [ hivex libintl-perl libguestfs-with-appliance ]}
+  '';
+
+  meta = with lib; {
+    description = "Extra tools for accessing and modifying virtual machine disk images";
+    license = with licenses; [ gpl2Plus lgpl21Plus ];
+    homepage = "https://libguestfs.org/";
+    maintainers = with maintainers; [ thiagokokada ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/virtualization/shipyard/default.nix b/pkgs/tools/virtualization/shipyard/default.nix
index 977cca7a25ea1..d0b40266547e5 100644
--- a/pkgs/tools/virtualization/shipyard/default.nix
+++ b/pkgs/tools/virtualization/shipyard/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "shipyard";
-  version = "0.4.10";
+  version = "0.4.12";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "shipyard-run";
     repo = pname;
-    sha256 = "sha256-3l/lvPSoO4CXMfEDhzCqHT0aOkQLPuvoXg8j/kZdUfU=";
+    sha256 = "sha256-WTmkKWYdPfZGMTPsfzT/H6K+ob5zq5akTqf3viNfcW8=";
   };
   vendorSha256 = "sha256-ATXM3+mi/R+/jS6Ds89J75nDVnc3d8iOGhjD3KQZkkA=";
 
diff --git a/pkgs/tools/wayland/shotman/default.nix b/pkgs/tools/wayland/shotman/default.nix
new file mode 100644
index 0000000000000..91742a7c1c288
--- /dev/null
+++ b/pkgs/tools/wayland/shotman/default.nix
@@ -0,0 +1,39 @@
+{ lib
+, fetchFromSourcehut
+, rustPlatform
+, pkg-config
+, libxkbcommon
+, makeWrapper
+, slurp
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "shotman";
+  version = "0.2.0";
+
+  src = fetchFromSourcehut {
+    owner = "~whynothugo";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-QNRQInFZcB1nqzESTAqYWwqJ0oiJa6UMCpjY3aHBiyA=";
+  };
+
+  cargoHash = "sha256-BfH1HhBbgdCA1IqKNdl4/FEzZxHgJmoSKNVMJUrSHCA=";
+
+  nativeBuildInputs = [ pkg-config makeWrapper ];
+
+  buildInputs = [ libxkbcommon ];
+
+  preFixup = ''
+    wrapProgram $out/bin/shotman \
+      --prefix PATH ":" "${lib.makeBinPath [ slurp ]}";
+  '';
+
+  meta = with lib; {
+    description = "The uncompromising screenshot GUI for Wayland compositors";
+    homepage = "https://git.sr.ht/~whynothugo/shotman";
+    license = licenses.isc;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ zendo ];
+  };
+}
diff --git a/pkgs/tools/wayland/wl-mirror/default.nix b/pkgs/tools/wayland/wl-mirror/default.nix
index 129f02e801727..729a8a915aa7a 100644
--- a/pkgs/tools/wayland/wl-mirror/default.nix
+++ b/pkgs/tools/wayland/wl-mirror/default.nix
@@ -28,13 +28,13 @@ in
 
 stdenv.mkDerivation rec {
   pname = "wl-mirror";
-  version = "0.12.1";
+  version = "0.12.2";
 
   src = fetchFromGitHub {
     owner = "Ferdi265";
     repo = "wl-mirror";
     rev = "v${version}";
-    hash = "sha256-XuwHHJfUKYugx0CKxkloJnpm6s5rHetinsZCSlLJ0Zg=";
+    hash = "sha256-NUujjcDRVpC5LbJNy2I5cVCOSoqS14XxjsYiZNOBs+s=";
   };
 
   strictDeps = true;
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 891f83f1a61df..2e2e4bf5c79ee 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -78,6 +78,7 @@ mapAliases ({
   ansible_2_10 = throw "Ansible 2.10 went end of life in 2022/05 and has subsequently been dropped"; # Added 2022-03-30
   ansible_2_9 = throw "Ansible 2.9 went end of life in 2022/05 and has subsequently been dropped"; # Added 2022-03-30
   antimicroX = antimicrox; # Added 2021-10-31
+  apple-music-electron = throw "'apple-music-electron' is end of life and has been removed, you can use 'cider' instead"; # Added 2022-10-02
   ardour_5 = throw "ardour_5 has been removed. see https://github.com/NixOS/nixpkgs/issues/139549"; # Added 2021-09-28
   arduino_core = throw "'arduino_core' has been renamed to/replaced by 'arduino-core'"; # Converted to throw 2022-02-22
   asciidocFull = throw "'asciidocFull' has been renamed to/replaced by 'asciidoc-full'"; # Converted to throw 2022-02-22
@@ -86,6 +87,8 @@ mapAliases ({
   asterisk_17 = throw "asterisk_17: Asterisk 17 is end of life and has been removed"; # Added 2022-04-06
   at_spi2_atk = throw "'at_spi2_atk' has been renamed to/replaced by 'at-spi2-atk'"; # Converted to throw 2022-02-22
   at_spi2_core = throw "'at_spi2_core' has been renamed to/replaced by 'at-spi2-core'"; # Converted to throw 2022-02-22
+  audacity-gtk2 = throw "'audacity-gtk2' has been removed to/replaced by 'audacity'"; # Added 2022-10-09
+  audacity-gtk3 = throw "'audacity-gtk3' has been removed to/replaced by 'audacity'"; # Added 2022-10-09
   automoc4 = throw "automoc4 has been removed from nixpkgs"; # Added 2022-05-30
   avldrums-lv2 = throw "'avldrums-lv2' has been renamed to/replaced by 'x42-avldrums'"; # Converted to throw 2022-09-24
   awesome-4-0 = awesome; # Added 2022-05-05
@@ -515,7 +518,12 @@ mapAliases ({
   interfacer = throw "interfacer is deprecated and archived by upstream"; # Added 2022-04-05
   inter-ui = throw "'inter-ui' has been renamed to/replaced by 'inter'"; # Converted to throw 2022-09-24
   iops = throw "iops was removed: upstream is gone"; # Added 2022-02-06
+  ipfs = kubo; # Added 2022-09-27
+  ipfs-migrator-all-fs-repo-migrations = kubo-migrator-all-fs-repo-migrations; # Added 2022-09-27
+  ipfs-migrator-unwrapped = kubo-migrator-unwrapped; # Added 2022-09-27
+  ipfs-migrator = kubo-migrator; # Added 2022-09-27
   iproute = throw "'iproute' has been renamed to/replaced by 'iproute2'"; # Converted to throw 2022-09-24
+  iproute_mptcp = throw "'iproute_mptcp' has been moved to https://github.com/teto/mptcp-flake"; # Converted to throw 2022-10-04
   ipsecTools = throw "ipsecTools has benn removed, because it was no longer maintained upstream"; # Added 2021-12-15
   itch-setup = throw "itch-setup has benn removed, use itch instead"; # Added 2022-06-02
 
@@ -605,6 +613,7 @@ mapAliases ({
   liblapackWithoutAtlas = throw "'liblapackWithoutAtlas' has been renamed to/replaced by 'lapack-reference'"; # Converted to throw 2022-02-22
   liblastfm = throw "'liblastfm' has been renamed to/replaced by 'libsForQt5.liblastfm'"; # Converted to throw 2022-09-24
   liblrdf = throw "'liblrdf' has been renamed to/replaced by 'lrdf'"; # Converted to throw 2022-02-22
+  libmicrohttpd_0_9_70 = throw "'libmicrohttpd_0_9_70' has been removed because it is insecure, and has been replaced by 'libmicrohttpd_0_9_69' and 'libmicrohttpd_0_9_71'"; # Added 2022-10-10
   libmsgpack = throw "'libmsgpack' has been renamed to/replaced by 'msgpack'"; # Converted to throw 2022-02-22
   libnih = throw "'libnih' has been removed"; # Converted to throw 2022-05-17
   libosmpbf = throw "libosmpbf was removed because it is no longer required by osrm-backend";
@@ -630,7 +639,6 @@ mapAliases ({
   libva1-full = throw "'libva1-full' has been renamed to/replaced by 'libva1'"; # Converted to throw 2022-02-22
   libwnck3 = throw "'libwnck3' has been renamed to/replaced by 'libwnck'"; # Converted to throw 2022-09-24
   lightdm_gtk_greeter = lightdm-gtk-greeter; # Added 2022-08-01
-  lighthouse = throw "lighthouse has been removed: abandoned by upstream"; # Added 2022-04-24
   lighttable = throw "'lighttable' crashes (SIGSEGV) on startup, has not been updated in years and depends on deprecated GTK2"; # Added 2022-06-15
   lilyterm = throw "lilyterm has been removed from nixpkgs, because it was relying on a vte version that depended on python2"; # Added 2022-01-14
   lilyterm-git = throw "lilyterm-git has been removed from nixpkgs, because it was relying on a vte version that depended on python2"; # Added 2022-01-14
@@ -651,6 +659,7 @@ mapAliases ({
   linuxPackages_5_18 = linuxKernel.packages.linux_5_18;
   linuxPackages_5_19 = linuxKernel.packages.linux_5_19;
   linuxPackages_5_4 = linuxKernel.packages.linux_5_4;
+  linuxPackages_6_0 = linuxKernel.packages.linux_6_0;
   linuxPackages_hardkernel_4_14 = linuxKernel.packages.hardkernel_4_14;
   linuxPackages_rpi0 = linuxKernel.packages.linux_rpi1;
   linuxPackages_rpi02w = linuxKernel.packages.linux_rpi3;
@@ -671,7 +680,10 @@ mapAliases ({
   linux_5_18 = linuxKernel.kernels.linux_5_18;
   linux_5_19 = linuxKernel.kernels.linux_5_19;
   linux_5_4 = linuxKernel.kernels.linux_5_4;
-  linux_mptcp_95 = linuxKernel.kernels.linux_mptcp_95;
+  linux_6_0 = linuxKernel.kernels.linux_6_0;
+  linuxPackages_mptcp = throw "'linuxPackages_mptcp' has been moved to https://github.com/teto/mptcp-flake"; # Converted to throw 2022-10-04
+  linux_mptcp = throw "'linux_mptcp' has been moved to https://github.com/teto/mptcp-flake"; # Converted to throw 2022-10-04
+  linux_mptcp_95 = throw "'linux_mptcp_95' has been moved to https://github.com/teto/mptcp-flake"; # Converted to throw 2022-10-04
   linux_rpi0 = linuxKernel.kernels.linux_rpi1;
   linux_rpi02w = linuxKernel.kernels.linux_rpi3;
   linux_rpi1 = linuxKernel.kernels.linux_rpi1;
@@ -770,6 +782,7 @@ mapAliases ({
   ncat = throw "'ncat' has been renamed to/replaced by 'nmap'"; # Converted to throw 2022-02-22
   neap = throw "neap was removed from nixpkgs, as it relies on python2"; # Added 2022-01-12
   neochat = libsForQt5.plasmaMobileGear.neochat; # added 2022-05-10
+  nettools_mptcp = throw "'nettools_mptcp' has been moved to https://github.com/teto/mptcp-flake"; # Converted to throw 2022-10-04
   networkmanager_fortisslvpn = throw "'networkmanager_fortisslvpn' has been renamed to/replaced by 'networkmanager-fortisslvpn'"; # Converted to throw 2022-02-22
   networkmanager_iodine = throw "'networkmanager_iodine' has been renamed to/replaced by 'networkmanager-iodine'"; # Converted to throw 2022-02-22
   networkmanager_l2tp = throw "'networkmanager_l2tp' has been renamed to/replaced by 'networkmanager-l2tp'"; # Converted to throw 2022-02-22
@@ -1141,6 +1154,7 @@ mapAliases ({
   tex-gyre-termes-math = throw "'tex-gyre-termes-math' has been renamed to/replaced by 'tex-gyre-math.termes'"; # Converted to throw 2022-02-22
   textadept11 = textadept; # Added 2022-06-07
   tftp_hpa = throw "'tftp_hpa' has been renamed to/replaced by 'tftp-hpa'"; # Converted to throw 2022-02-22
+  timedoctor = throw "'timedoctor' has been removed from nixpkgs"; # Added 2022-10-09
   timescale-prometheus = throw "'timescale-prometheus' has been renamed to/replaced by 'promscale'"; # Converted to throw 2022-09-24
   timetable = throw "timetable has been removed, as the upstream project has been abandoned"; # Added 2021-09-05
   tkcvs = tkrev; # Added 2022-03-07
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 80f7c717a3da7..a63f783a98e02 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -126,6 +126,8 @@ with pkgs;
 
   _experimental-update-script-combinators = callPackage ../common-updater/combinators.nix { };
 
+  directoryListingUpdater = callPackage ../common-updater/directory-listing-updater.nix { };
+
   gitUpdater = callPackage ../common-updater/git-updater.nix { };
 
   httpTwoLevelsUpdater = callPackage ../common-updater/http-two-levels-updater.nix { };
@@ -185,7 +187,9 @@ with pkgs;
     meta.platforms = lib.platforms.linux;
   } ../build-support/setup-hooks/auto-patchelf.sh;
 
-  appflowy = callPackage ../applications/office/appflowy { };
+  appflowy = callPackage ../applications/office/appflowy {
+    openssl = openssl_1_1;
+  };
 
   appimageTools = callPackage ../build-support/appimage {
     buildFHSUserEnv = buildFHSUserEnvBubblewrap;
@@ -306,7 +310,9 @@ with pkgs;
 
   breakpad = callPackage ../development/misc/breakpad { };
 
-  brev-cli = callPackage ../development/misc/brev-cli { };
+  brev-cli = callPackage ../development/misc/brev-cli {
+    buildGoModule = buildGo118Module; # build fails with 1.19
+  };
 
   buf = callPackage ../development/tools/buf { };
 
@@ -729,7 +735,9 @@ with pkgs;
 
   graph-easy = callPackage ../tools/graphics/graph-easy { };
 
-  mangal = callPackage ../applications/misc/mangal { };
+  mangal = callPackage ../applications/misc/mangal {
+    buildGoModule = buildGo119Module;
+  };
 
   graphw00f = callPackage ../tools/security/graphw00f { };
 
@@ -928,7 +936,9 @@ with pkgs;
     { deps = [ dieHook ];
       substitutions = {
         shell = targetPackages.runtimeShell;
-        passthru.tests = tests.makeWrapper;
+      };
+      passthru = {
+        tests = tests.makeWrapper;
       };
     }
     ../build-support/setup-hooks/make-wrapper.sh;
@@ -1070,7 +1080,7 @@ with pkgs;
 
   _1password-gui = callPackage ../applications/misc/1password-gui { };
 
-  _1password-gui-beta = callPackage ../applications/misc/1password-gui/beta.nix { };
+  _1password-gui-beta = callPackage ../applications/misc/1password-gui { channel = "beta"; };
 
   _6tunnel = callPackage ../tools/networking/6tunnel { };
 
@@ -1104,6 +1114,8 @@ with pkgs;
 
   acpica-tools = callPackage ../tools/system/acpica-tools { };
 
+  acquire = with python3Packages; toPythonApplication acquire;
+
   act = callPackage ../development/tools/misc/act { };
 
   actdiag = with python3.pkgs; toPythonApplication actdiag;
@@ -1138,7 +1150,7 @@ with pkgs;
   aefs = callPackage ../tools/filesystems/aefs { };
 
   aegisub = callPackage ../applications/video/aegisub ({
-    wxGTK = wxGTK31;
+    wxGTK = wxGTK32;
     inherit (darwin.apple_sdk.frameworks) CoreText CoreFoundation AppKit Carbon IOKit Cocoa;
   } // (config.aegisub or {}));
 
@@ -1315,6 +1327,8 @@ with pkgs;
 
   godspeed = callPackage ../tools/networking/godspeed { };
 
+  guestfs-tools = callPackage ../tools/virtualization/guestfs-tools { };
+
   fwbuilder = libsForQt5.callPackage ../tools/security/fwbuilder { };
 
   headsetcontrol = callPackage ../tools/audio/headsetcontrol { };
@@ -1510,7 +1524,7 @@ with pkgs;
 
   fsuae = callPackage ../applications/emulators/fs-uae { };
 
-  fsuae-launcher = callPackage ../applications/emulators/fs-uae/launcher.nix { };
+  fsuae-launcher = libsForQt5.callPackage ../applications/emulators/fs-uae/launcher.nix { };
 
   fuse-emulator = callPackage ../applications/emulators/fuse-emulator {};
 
@@ -1747,6 +1761,8 @@ with pkgs;
     inherit (qt5) wrapQtAppsHook;
   };
 
+  felix-fm = callPackage ../applications/file-managers/felix-fm { };
+
   joshuto = callPackage ../applications/file-managers/joshuto {
     inherit (darwin.apple_sdk.frameworks) SystemConfiguration Foundation;
   };
@@ -1899,6 +1915,8 @@ with pkgs;
 
   tilix = callPackage ../applications/terminal-emulators/tilix { };
 
+  tym = callPackage ../applications/terminal-emulators/tym { };
+
   wayst = callPackage ../applications/terminal-emulators/wayst { };
 
   wezterm = darwin.apple_sdk_11_0.callPackage ../applications/terminal-emulators/wezterm {
@@ -1939,8 +1957,6 @@ with pkgs;
 
   termsyn = callPackage ../data/fonts/termsyn { };
 
-  timedoctor = callPackage ../applications/office/timedoctor { };
-
   tvnamer = callPackage ../tools/misc/tvnamer { };
 
   twine = with python3Packages; toPythonApplication twine;
@@ -2207,7 +2223,10 @@ with pkgs;
 
   brewtarget = libsForQt514.callPackage ../applications/misc/brewtarget { } ;
 
-  stdenvBootstrapTools = if stdenv.hostPlatform.isDarwin then
+  # Derivation's result is not used by nixpkgs. Useful for validation for
+  # regressions of bootstrapTools on hydra and on ofborg. Example:
+  #     pkgsCross.aarch64-multiplatform.freshBootstrapTools.build
+  freshBootstrapTools = if stdenv.hostPlatform.isDarwin then
     callPackage ../stdenv/darwin/make-bootstrap-tools.nix {
       localSystem = stdenv.buildPlatform;
       crossSystem =
@@ -2215,7 +2234,7 @@ with pkgs;
     }
   else if stdenv.hostPlatform.isLinux then
     callPackage ../stdenv/linux/make-bootstrap-tools.nix {}
-  else throw "stdenvBootstrapTools: unknown hostPlatform ${stdenv.hostPlatform.config}";
+  else throw "freshBootstrapTools: unknown hostPlatform ${stdenv.hostPlatform.config}";
 
   boxes = callPackage ../tools/text/boxes { };
 
@@ -2376,6 +2395,8 @@ with pkgs;
 
   clair = callPackage ../tools/admin/clair { };
 
+  clairvoyance = callPackage ../tools/security/clairvoyance { };
+
   cloud-sql-proxy = callPackage ../tools/misc/cloud-sql-proxy { };
 
   cloudfox = callPackage ../tools/security/cloudfox { };
@@ -2434,7 +2455,9 @@ with pkgs;
 
   cudd = callPackage ../development/libraries/cudd { };
 
-  cue = callPackage ../development/tools/cue { };
+  cue = callPackage ../development/tools/cue {
+    buildGoModule = buildGo118Module; # tests fail with 1.19
+  };
 
   cuelsp = callPackage ../development/tools/cuelsp {};
 
@@ -2493,6 +2516,8 @@ with pkgs;
 
   droidmote = callPackage ../tools/inputmethods/droidmote { };
 
+  eartag = callPackage ../applications/audio/eartag { };
+
   ecdsautils = callPackage ../tools/security/ecdsautils { };
 
   echidna = haskell.lib.compose.justStaticExecutables (haskellPackages.callPackage (../tools/security/echidna) { });
@@ -3418,6 +3443,8 @@ with pkgs;
     acpidump-all
     coreboot-utils;
 
+  coreboot-configurator = libsForQt5.callPackage ../tools/misc/coreboot-configurator { };
+
   corosync = callPackage ../servers/corosync { };
 
   cowsay = callPackage ../tools/misc/cowsay { };
@@ -3442,6 +3469,8 @@ with pkgs;
 
   oguri = callPackage  ../tools/wayland/oguri { };
 
+  shotman = callPackage ../tools/wayland/shotman { };
+
   slurp = callPackage ../tools/wayland/slurp { };
 
   sov = callPackage ../tools/wayland/sov { };
@@ -3563,6 +3592,8 @@ with pkgs;
 
   csv2odf = callPackage ../applications/office/csv2odf { };
 
+  csv2parquet = callPackage ../tools/misc/csv2parquet { };
+
   csvdiff = callPackage ../tools/text/csvdiff { };
 
   csview = callPackage ../tools/text/csview { };
@@ -3686,6 +3717,8 @@ with pkgs;
 
   direnv = callPackage ../tools/misc/direnv { };
 
+  dirstalk = callPackage ../tools/security/dirstalk { };
+
   h = callPackage ../tools/misc/h { };
 
   discount = callPackage ../tools/text/discount { };
@@ -3913,6 +3946,8 @@ with pkgs;
 
   faudio = callPackage ../development/libraries/faudio { };
 
+  fblog = callPackage ../development/tools/fblog { };
+
   fd = callPackage ../tools/misc/fd { };
 
   fdroidserver = python3Packages.callPackage ../development/tools/fdroidserver { };
@@ -4179,7 +4214,9 @@ with pkgs;
     });
   };
 
-  hysteria = callPackage ../tools/networking/hysteria { };
+  hysteria = callPackage ../tools/networking/hysteria {
+    buildGoModule = buildGo119Module;
+  };
 
   hyx = callPackage ../tools/text/hyx { };
 
@@ -4302,8 +4339,14 @@ with pkgs;
 
   libnss-mysql = callPackage ../os-specific/linux/libnss-mysql { };
 
+  libnvme = callPackage ../os-specific/linux/libnvme { };
+
   libxnd = callPackage ../development/libraries/libxnd { };
 
+  libzbc = callPackage ../os-specific/linux/libzbc { };
+
+  libzbd = callPackage ../os-specific/linux/libzbd { };
+
   lifeograph = callPackage ../applications/editors/lifeograph { };
 
   limitcpu = callPackage ../tools/misc/limitcpu { };
@@ -4635,8 +4678,9 @@ with pkgs;
 
   pyznap = python3Packages.callPackage ../tools/backup/pyznap {};
 
-  procs = callPackage ../tools/admin/procs {
-    inherit (darwin.apple_sdk.frameworks) Security;
+  procs = darwin.apple_sdk_11_0.callPackage ../tools/admin/procs {
+    inherit (darwin.apple_sdk_11_0.frameworks) Security;
+    inherit (darwin.apple_sdk_11_0) Libsystem;
     inherit (darwin) libiconv;
   };
 
@@ -4736,7 +4780,9 @@ with pkgs;
 
   string-machine = callPackage ../applications/audio/string-machine { };
 
-  stripe-cli = callPackage ../tools/admin/stripe-cli { };
+  stripe-cli = callPackage ../tools/admin/stripe-cli {
+    buildGoModule = buildGo118Module; # tests fail with 1.19
+  };
 
   bash-supergenpass = callPackage ../tools/security/bash-supergenpass { };
 
@@ -4870,8 +4916,6 @@ with pkgs;
 
   appleseed = callPackage ../tools/graphics/appleseed { };
 
-  apple-music-electron = callPackage ../applications/audio/apple-music-electron { };
-
   apc-temp-fetch = with python3.pkgs; callPackage ../tools/networking/apc-temp-fetch { };
 
   arping = callPackage ../tools/networking/arping { };
@@ -5338,7 +5382,7 @@ with pkgs;
 
     mozc = callPackage ../tools/inputmethods/ibus-engines/ibus-mozc {
       stdenv = clangStdenv;
-      protobuf = pkgs.protobuf3_8.overrideDerivation (_: { stdenv = clangStdenv; });
+      protobuf = pkgs.protobuf.overrideDerivation (_: { stdenv = clangStdenv; });
     };
 
     rime = callPackage ../tools/inputmethods/ibus-engines/ibus-rime { };
@@ -5536,7 +5580,8 @@ with pkgs;
   cudaPackages_11_4 = callPackage ./cuda-packages.nix { cudaVersion = "11.4"; };
   cudaPackages_11_5 = callPackage ./cuda-packages.nix { cudaVersion = "11.5"; };
   cudaPackages_11_6 = callPackage ./cuda-packages.nix { cudaVersion = "11.6"; };
-  cudaPackages_11 = cudaPackages_11_6;
+  cudaPackages_11_7 = callPackage ./cuda-packages.nix { cudaVersion = "11.7"; };
+  cudaPackages_11 = cudaPackages_11_7;
   cudaPackages = recurseIntoAttrs cudaPackages_11;
 
   # TODO: move to alias
@@ -5817,6 +5862,10 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) Security;
   };
 
+  doggo = callPackage ../tools/networking/doggo {
+    buildGoModule = buildGo118Module; # build fails with 1.19
+  };
+
   dosfstools = callPackage ../tools/filesystems/dosfstools { };
 
   dotnetfx35 = callPackage ../development/libraries/dotnetfx35 { };
@@ -6056,7 +6105,9 @@ with pkgs;
 
   tridactyl-native = callPackage ../tools/networking/tridactyl-native { };
 
-  trivy = callPackage ../tools/admin/trivy { };
+  trivy = callPackage ../tools/admin/trivy {
+    buildGoModule = buildGo119Module;
+  };
 
   trompeloeil = callPackage ../development/libraries/trompeloeil { };
 
@@ -6265,6 +6316,8 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) Security;
   };
 
+  exactaudiocopy = callPackage ../applications/audio/exact-audio-copy { };
+
   exempi = callPackage ../development/libraries/exempi {
     stdenv = if stdenv.isDarwin then stdenv
              else if stdenv.isi686 then gcc6Stdenv
@@ -6613,6 +6666,8 @@ with pkgs;
 
   freetube = callPackage ../applications/video/freetube { };
 
+  freeze = callPackage ../tools/security/freeze { };
+
   freqtweak = callPackage ../applications/audio/freqtweak {
     wxGTK = wxGTK31-gtk2;
   };
@@ -7393,6 +7448,8 @@ with pkgs;
 
   gtkperf = callPackage ../development/tools/misc/gtkperf { };
 
+  gtkradiant = callPackage ../applications/misc/gtkradiant { };
+
   gtk-frdp = callPackage ../development/libraries/gtk-frdp {};
 
   gtk-vnc = callPackage ../tools/admin/gtk-vnc {};
@@ -7415,7 +7472,9 @@ with pkgs;
 
   gvolicon = callPackage ../tools/audio/gvolicon {};
 
-  gvproxy = callPackage ../tools/networking/gvproxy { };
+  gvproxy = callPackage ../tools/networking/gvproxy {
+    buildGoModule = buildGo118Module; # fails to build with 1.19
+  };
 
   gzip = callPackage ../tools/compression/gzip { };
 
@@ -7590,6 +7649,8 @@ with pkgs;
 
   hockeypuck-web = callPackage ../servers/hockeypuck/web.nix { };
 
+  holochain-launcher = callPackage ../applications/misc/holochain-launcher { };
+
   homesick = callPackage ../tools/misc/homesick { };
 
   honcho = callPackage ../tools/system/honcho { };
@@ -7830,20 +7891,15 @@ with pkgs;
 
   ipfetch = callPackage ../tools/networking/ipfetch { };
 
-  ipfs = callPackage ../applications/networking/ipfs {
-    openssl = openssl_1_1;
-  };
   ipfs-cluster = callPackage ../applications/networking/ipfs-cluster {
     buildGoModule = buildGo119Module;
   };
 
-  ipfs-migrator-all-fs-repo-migrations = callPackage ../applications/networking/ipfs-migrator/all-migrations.nix { };
-  ipfs-migrator-unwrapped = callPackage ../applications/networking/ipfs-migrator/unwrapped.nix { };
-  ipfs-migrator = callPackage ../applications/networking/ipfs-migrator { };
-
   ipfs-upload-client = callPackage ../applications/networking/ipfs-upload-client { };
 
-  ipget = callPackage ../applications/networking/ipget { };
+  ipget = callPackage ../applications/networking/ipget {
+    buildGoModule = buildGo118Module; # build fails with 1.19
+  };
 
   i-pi = with python3Packages; toPythonApplication i-pi;
 
@@ -8185,6 +8241,14 @@ with pkgs;
 
   kubergrunt = callPackage ../applications/networking/cluster/kubergrunt { };
 
+  kubo = callPackage ../applications/networking/kubo {
+    openssl = openssl_1_1;
+  };
+
+  kubo-migrator-all-fs-repo-migrations = callPackage ../applications/networking/kubo-migrator/all-migrations.nix { };
+  kubo-migrator-unwrapped = callPackage ../applications/networking/kubo-migrator/unwrapped.nix { };
+  kubo-migrator = callPackage ../applications/networking/kubo-migrator { };
+
   kwalletcli = libsForQt5.callPackage ../tools/security/kwalletcli { };
 
   peruse = libsForQt5.callPackage ../tools/misc/peruse { };
@@ -8584,6 +8648,8 @@ with pkgs;
 
   latexrun = callPackage ../tools/typesetting/tex/latexrun { };
 
+  lazycli = callPackage ../tools/misc/lazycli { };
+
   lcdf-typetools = callPackage ../tools/misc/lcdf-typetools { };
 
   ldapmonitor = callPackage ../tools/security/ldapmonitor { };
@@ -8608,6 +8674,8 @@ with pkgs;
 
   leela = callPackage ../tools/graphics/leela { };
 
+  lemmeknow = callPackage ../tools/misc/lemmeknow { };
+
   lethe = callPackage ../tools/security/lethe {
     inherit (darwin.apple_sdk.frameworks) Security;
   };
@@ -8775,7 +8843,9 @@ with pkgs;
 
   lidarr = callPackage ../servers/lidarr { };
 
-  limesuite = callPackage ../applications/radio/limesuite { };
+  limesuite = callPackage ../applications/radio/limesuite {
+    inherit (darwin.apple_sdk.frameworks) GLUT;
+  };
 
   limesurvey = callPackage ../servers/limesurvey { };
 
@@ -8911,6 +8981,8 @@ with pkgs;
     sasl = gsasl;
   };
 
+  matrix-sdk-crypto-nodejs = callPackage ../development/libraries/matrix-sdk-crypto-nodejs { };
+
   email = callPackage ../tools/networking/email { };
 
   maim = callPackage ../tools/graphics/maim {};
@@ -9370,6 +9442,9 @@ with pkgs;
   nomad_1_3 = callPackage ../applications/networking/cluster/nomad/1.3.nix {
     buildGoModule = buildGo119Module;
   };
+  nomad_1_4 = callPackage ../applications/networking/cluster/nomad/1.4.nix {
+    buildGoModule = buildGo119Module;
+  };
 
   nomad-autoscaler = callPackage ../applications/networking/cluster/nomad-autoscaler { };
 
@@ -9447,6 +9522,8 @@ with pkgs;
 
   pwsafe = callPackage ../applications/misc/pwsafe { };
 
+  napi-rs-cli = callPackage ../development/tools/napi-rs-cli { };
+
   neil = callPackage ../development/tools/neil { };
 
   niff = callPackage ../tools/package-management/niff { };
@@ -9510,7 +9587,7 @@ with pkgs;
   # ntfsprogs are merged into ntfs-3g
   ntfsprogs = pkgs.ntfs3g;
 
-  ntfy = callPackage ../tools/misc/ntfy {};
+  ntfy = callPackage ../tools/misc/ntfy { python = python39; };
 
   ntfy-sh = callPackage ../tools/misc/ntfy-sh { };
 
@@ -9788,7 +9865,9 @@ with pkgs;
   opae = callPackage ../development/libraries/opae { };
 
   opentelemetry-collector = callPackage ../tools/misc/opentelemetry-collector { };
-  opentelemetry-collector-contrib = callPackage ../tools/misc/opentelemetry-collector/contrib.nix { };
+  opentelemetry-collector-contrib = callPackage ../tools/misc/opentelemetry-collector/contrib.nix {
+    buildGoModule = buildGo119Module;
+  };
 
   opentracing-cpp = callPackage ../development/libraries/opentracing-cpp { };
 
@@ -9845,6 +9924,8 @@ with pkgs;
 
   overmind = callPackage ../applications/misc/overmind { };
 
+  oxker = callPackage ../applications/misc/oxker { };
+
   ovh-ttyrec = callPackage ../tools/misc/ovh-ttyrec { };
 
   ovito = libsForQt5.callPackage ../applications/graphics/ovito {
@@ -10214,7 +10295,9 @@ with pkgs;
   pocketbase = callPackage ../servers/pocketbase { };
 
   podman = callPackage ../applications/virtualization/podman/wrapper.nix { };
-  podman-unwrapped = callPackage ../applications/virtualization/podman { };
+  podman-unwrapped = callPackage ../applications/virtualization/podman {
+    buildGoModule = buildGo118Module; # nixosTests.oci-containers.podman fails with 1.19 (channel blocker)
+  };
 
   podman-compose = python3Packages.callPackage ../applications/virtualization/podman-compose {};
 
@@ -10238,6 +10321,8 @@ with pkgs;
 
   poly2tri-c = callPackage ../development/libraries/poly2tri-c { };
 
+  polypane = callPackage ../applications/networking/browsers/polypane { };
+
   ponysay = callPackage ../tools/misc/ponysay { };
 
   popfile = callPackage ../tools/text/popfile { };
@@ -10404,8 +10489,8 @@ with pkgs;
 
   remarshal = with python3Packages; toPythonApplication remarshal;
 
-  rehex = callPackage ../applications/editors/rehex {
-    inherit (darwin.apple_sdk.frameworks) Carbon Cocoa IOKit;
+  rehex = darwin.apple_sdk_11_0.callPackage ../applications/editors/rehex {
+    inherit (darwin.apple_sdk_11_0.frameworks) Carbon Cocoa IOKit;
   };
 
   rig = callPackage ../tools/misc/rig { };
@@ -10541,9 +10626,7 @@ with pkgs;
 
   radvd = callPackage ../tools/networking/radvd { };
 
-  rain = callPackage ../development/tools/rain {
-    buildGoModule = buildGo117Module;
-  };
+  rain = callPackage ../development/tools/rain { };
 
   rainbowstream = with python3.pkgs; toPythonApplication rainbowstream;
 
@@ -10583,6 +10666,8 @@ with pkgs;
 
   read-edid = callPackage ../os-specific/linux/read-edid { };
 
+  readstat = callPackage ../applications/science/math/readstat { };
+
   redir = callPackage ../tools/networking/redir { };
 
   redmine = callPackage ../applications/version-management/redmine { };
@@ -10876,10 +10961,7 @@ with pkgs;
 
   sacd = callPackage ../tools/cd-dvd/sacd { };
 
-  safe = callPackage ../tools/security/safe {
-    # pinned due to build failure or vendoring problems. When unpinning double check with: nix-build -A $name.go-modules --rebuild
-    buildGoModule = buildGo117Module;
-  };
+  safe = callPackage ../tools/security/safe { };
 
   safety-cli = with python3.pkgs; toPythonApplication safety;
 
@@ -11014,6 +11096,8 @@ with pkgs;
 
   sg3_utils = callPackage ../tools/system/sg3_utils { };
 
+  sget = callPackage ../tools/security/sget { };
+
   sha1collisiondetection = callPackage ../tools/security/sha1collisiondetection { };
 
   shadowsocks-libev = callPackage ../tools/networking/shadowsocks-libev { };
@@ -11565,6 +11649,8 @@ with pkgs;
   inherit (callPackages ../applications/networking/taler { })
     taler-exchange taler-merchant;
 
+  tandoor-recipes = callPackage ../applications/misc/tandoor-recipes { };
+
   tangram = callPackage ../applications/networking/instant-messengers/tangram { };
 
   t1utils = callPackage ../tools/misc/t1utils { };
@@ -11627,7 +11713,9 @@ with pkgs;
 
   teip = callPackage ../tools/text/teip { };
 
-  telegraf = callPackage ../servers/monitoring/telegraf { };
+  telegraf = callPackage ../servers/monitoring/telegraf {
+    buildGoModule = buildGo119Module;
+  };
 
   teleport = callPackage ../servers/teleport {
     inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
@@ -11879,7 +11967,9 @@ with pkgs;
 
   tracebox = callPackage ../tools/networking/tracebox { stdenv = gcc10StdenvCompat; };
 
-  tracee = callPackage ../tools/security/tracee { };
+  tracee = callPackage ../tools/security/tracee {
+    buildGoModule = buildGo118Module; # tests fail with 1.19
+  };
 
   tracefilegen = callPackage ../development/tools/analysis/garcosim/tracefilegen { };
 
@@ -11984,6 +12074,8 @@ with pkgs;
 
   twitterBootstrap = callPackage ../development/web/twitter-bootstrap {};
 
+  twspace-dl = callPackage ../tools/misc/twspace-dl { };
+
   twtxt = python3Packages.callPackage ../applications/networking/twtxt { };
 
   twurl = callPackage ../tools/misc/twurl { };
@@ -12285,6 +12377,8 @@ with pkgs;
 
   wf-recorder = callPackage ../applications/video/wf-recorder { };
 
+  whatip = callPackage ../tools/networking/whatip {};
+
   whatweb = callPackage ../tools/security/whatweb { };
 
   whipper = callPackage ../applications/audio/whipper { };
@@ -12335,9 +12429,7 @@ with pkgs;
 
   wstunnel = haskell.lib.compose.justStaticExecutables haskellPackages.wstunnel;
 
-  wolfebin = callPackage ../tools/networking/wolfebin {
-    python = python2;
-  };
+  wolfebin = callPackage ../tools/networking/wolfebin { };
 
   xautoclick = callPackage ../applications/misc/xautoclick {};
 
@@ -12866,10 +12958,7 @@ with pkgs;
 
   zfs-autobackup = callPackage ../tools/backup/zfs-autobackup { };
 
-  zfsbackup = callPackage ../tools/backup/zfsbackup {
-    # pinned due to build failure or vendoring problems. When unpinning double check with: nix-build -A $name.go-modules --rebuild
-    buildGoModule = buildGo117Module;
-  };
+  zfsbackup = callPackage ../tools/backup/zfsbackup { };
 
   zfstools = callPackage ../tools/filesystems/zfstools { };
 
@@ -13374,7 +13463,7 @@ with pkgs;
 
   devpi-client = python3Packages.callPackage ../development/tools/devpi-client {};
 
-  devpi-server = callPackage ../development/tools/devpi-server {};
+  devpi-server = python3Packages.callPackage ../development/tools/devpi-server {};
 
   dictu = callPackage ../development/compilers/dictu { };
 
@@ -13409,6 +13498,7 @@ with pkgs;
   flutterPackages =
     recurseIntoAttrs (callPackage ../development/compilers/flutter { });
   flutter = flutterPackages.stable;
+  flutter2 = flutterPackages.v2;
 
   fnm = callPackage ../development/tools/fnm {
     inherit (darwin.apple_sdk.frameworks) DiskArbitration Foundation Security;
@@ -14070,6 +14160,8 @@ with pkgs;
     inherit (emacs.pkgs.melpaStablePackages) irony;
   };
 
+  heptagon = callPackage ../development/compilers/heptagon { };
+
   holo-build = callPackage ../tools/package-management/holo-build { };
 
   hugs = callPackage ../development/interpreters/hugs { };
@@ -14554,6 +14646,10 @@ with pkgs;
 
   rasm = callPackage ../development/compilers/rasm { };
 
+  replibyte = callPackage ../development/tools/database/replibyte {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
+
   rgbds = callPackage ../development/compilers/rgbds { };
 
   rgxg = callPackage ../tools/text/rgxg { };
@@ -14594,11 +14690,11 @@ with pkgs;
     inherit (darwin) apple_sdk;
   };
 
-  rust_1_63 = callPackage ../development/compilers/rust/1_63.nix {
+  rust_1_64 = callPackage ../development/compilers/rust/1_64.nix {
     inherit (darwin.apple_sdk.frameworks) CoreFoundation Security SystemConfiguration;
     llvm_14 = llvmPackages_14.libllvm;
   };
-  rust = rust_1_63;
+  rust = rust_1_64;
 
   mrustc = callPackage ../development/compilers/mrustc { };
   mrustc-minicargo = callPackage ../development/compilers/mrustc/minicargo.nix { };
@@ -14607,8 +14703,8 @@ with pkgs;
     openssl = openssl_1_1;
   };
 
-  rustPackages_1_63 = rust_1_63.packages.stable;
-  rustPackages = rustPackages_1_63;
+  rustPackages_1_64 = rust_1_64.packages.stable;
+  rustPackages = rustPackages_1_64;
 
   inherit (rustPackages) cargo clippy rustc rustPlatform;
 
@@ -14664,6 +14760,7 @@ with pkgs;
   cargo-hack = callPackage ../development/tools/rust/cargo-hack { };
   cargo-license = callPackage ../development/tools/rust/cargo-license { };
   cargo-llvm-lines = callPackage ../development/tools/rust/cargo-llvm-lines { };
+  cargo-lock = callPackage ../development/tools/rust/cargo-lock { };
   cargo-outdated = callPackage ../development/tools/rust/cargo-outdated {
     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
   };
@@ -15100,22 +15197,35 @@ with pkgs;
 
   # Below, the classic self-bootstrapping process
   cbqn-bootstrap = lib.dontRecurseIntoAttrs {
+    # Use clang to compile CBQN if we aren't already.
+    # CBQN's upstream primarily targets and tests clang which means using gcc
+    # will result in slower binaries and on some platforms failing/broken builds.
+    # See https://github.com/dzaima/CBQN/issues/12.
+    #
+    # Known issues:
+    #
+    # * CBQN using gcc is broken at runtime on i686 due to
+    #   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58416,
+    # * CBQN uses some CPP macros gcc doesn't like for aarch64.
+    stdenv = if !stdenv.cc.isClang then clangStdenv else stdenv;
+
     mbqn-source = buildPackages.mbqn.src;
 
     phase0 = callPackage ../development/interpreters/bqn/cbqn {
+      inherit (cbqn-bootstrap) stdenv;
       genBytecode = false;
       bqn-path = null;
       mbqn-source = null;
     };
 
     phase1 = callPackage ../development/interpreters/bqn/cbqn {
-      inherit (cbqn-bootstrap) mbqn-source;
+      inherit (cbqn-bootstrap) mbqn-source stdenv;
       genBytecode = true;
       bqn-path = "${buildPackages.cbqn-bootstrap.phase0}/bin/cbqn";
     };
 
     phase2 = callPackage ../development/interpreters/bqn/cbqn {
-      inherit (cbqn-bootstrap) mbqn-source;
+      inherit (cbqn-bootstrap) mbqn-source stdenv;
       genBytecode = true;
       bqn-path = "${buildPackages.cbqn-bootstrap.phase1}/bin/cbqn";
     };
@@ -15238,7 +15348,9 @@ with pkgs;
 
   io = callPackage ../development/interpreters/io { };
 
-  ivy = callPackage ../development/interpreters/ivy { };
+  ivy = callPackage ../development/interpreters/ivy {
+    buildGoModule = buildGo118Module; # tests fail with 1.19
+  };
 
   j = callPackage ../development/interpreters/j {
     stdenv = clangStdenv;
@@ -15892,7 +16004,8 @@ with pkgs;
     electron_17
     electron_18
     electron_19
-    electron_20;
+    electron_20
+    electron_21;
 
   autobuild = callPackage ../development/tools/misc/autobuild { };
 
@@ -16131,7 +16244,10 @@ with pkgs;
 
   bump = callPackage ../development/tools/github/bump { };
 
-  libbpf = callPackage ../os-specific/linux/libbpf { };
+  libbpf_1 = callPackage ../os-specific/linux/libbpf { };
+  libbpf_0 = callPackage ../os-specific/linux/libbpf/0.x.nix { };
+  # until more issues are fixed default to libbpf 0.x
+  libbpf = libbpf_0;
 
   bpftools = callPackage ../os-specific/linux/bpftools { };
 
@@ -16753,6 +16869,8 @@ with pkgs;
 
   insomnia = callPackage ../development/web/insomnia { };
 
+  ihp-new = callPackage ../development/web/ihp-new { };
+
   iozone = callPackage ../development/tools/misc/iozone { };
 
   itstool = callPackage ../development/tools/misc/itstool { };
@@ -17313,6 +17431,11 @@ with pkgs;
 
   slimerjs = callPackage ../development/tools/slimerjs {};
 
+  slint-lsp = callPackage ../development/tools/misc/slint-lsp {
+    inherit (xorg) libXcursor libXi;
+    inherit (darwin.apple_sdk.frameworks) AppKit CoreGraphics CoreServices CoreText Foundation OpenGL;
+  };
+
   sloccount = callPackage ../development/tools/misc/sloccount { };
 
   sloc = nodePackages.sloc;
@@ -17542,7 +17665,9 @@ with pkgs;
 
   vtable-dumper = callPackage ../development/tools/misc/vtable-dumper { };
 
-  wails = callPackage ../development/tools/wails { };
+  wails = callPackage ../development/tools/wails {
+    buildGoModule = buildGo119Module;
+  };
 
   whatsapp-for-linux = callPackage ../applications/networking/instant-messengers/whatsapp-for-linux { };
 
@@ -18493,8 +18618,6 @@ with pkgs;
     autoreconfHook = buildPackages.autoreconfHook269;
   };
 
-  gdal_2 = callPackage ../development/libraries/gdal/2.4.nix { };
-
   gdcm = callPackage ../development/libraries/gdcm {
     inherit (darwin.apple_sdk.frameworks) ApplicationServices Cocoa;
   };
@@ -19463,9 +19586,7 @@ with pkgs;
 
   libccd = callPackage ../development/libraries/libccd { };
 
-  libcec = callPackage ../development/libraries/libcec {
-    libraspberrypi = null;
-  };
+  libcec = callPackage ../development/libraries/libcec { };
 
   libcec_platform = callPackage ../development/libraries/libcec/platform.nix { };
 
@@ -19626,7 +19747,7 @@ with pkgs;
 
   libdwarf = callPackage ../development/libraries/libdwarf { };
   dwarfdump = libdwarf.bin;
-  libdwarf_0_4 = callPackage ../development/libraries/libdwarf/0.4.nix { };
+  libdwarf_20210528 = callPackage ../development/libraries/libdwarf/20210528.nix { };
 
   libe57format = callPackage ../development/libraries/libe57format { };
 
@@ -20129,7 +20250,7 @@ with pkgs;
 
   libmemcached = callPackage ../development/libraries/libmemcached { };
 
-  libmicrohttpd_0_9_70 = callPackage ../development/libraries/libmicrohttpd/0.9.70.nix { };
+  libmicrohttpd_0_9_69 = callPackage ../development/libraries/libmicrohttpd/0.9.69.nix { };
   libmicrohttpd_0_9_71 = callPackage ../development/libraries/libmicrohttpd/0.9.71.nix { };
   libmicrohttpd_0_9_72 = callPackage ../development/libraries/libmicrohttpd/0.9.72.nix { };
   libmicrohttpd = libmicrohttpd_0_9_71;
@@ -20421,12 +20542,7 @@ with pkgs;
 
   libtorrent-rasterbar = libtorrent-rasterbar-2_0_x;
 
-  # this is still the new version of the old API
-  libtoxcore-new = callPackage ../development/libraries/libtoxcore/new-api.nix { };
-
-  inherit (callPackages ../development/libraries/libtoxcore {})
-    libtoxcore_0_1 libtoxcore_0_2;
-  libtoxcore = libtoxcore_0_2;
+  libtoxcore = callPackage ../development/libraries/libtoxcore {};
 
   libtpms = callPackage ../tools/security/libtpms { };
 
@@ -21181,9 +21297,10 @@ with pkgs;
 
   inherit (callPackages ../development/libraries/libressl { })
     libressl_3_4
-    libressl_3_5;
+    libressl_3_5
+    libressl_3_6;
 
-  libressl = libressl_3_5;
+  libressl = libressl_3_6;
 
   boringssl = callPackage ../development/libraries/boringssl { };
 
@@ -21506,7 +21623,7 @@ with pkgs;
       inherit buildPackages;
       cmake = cmake.overrideAttrs (attrs: {
         patches = attrs.patches ++ [
-          ../development/libraries/qt-6/cmake.patch
+          ../development/libraries/qt-6/patches/cmake.patch
         ];
       });
     });
@@ -21755,6 +21872,10 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) AppKit;
   };
 
+  sigdigger = libsForQt5.callPackage ../applications/radio/sigdigger { };
+
+  sigutils = callPackage ../applications/radio/sigutils { };
+
   sblim-sfcc = callPackage ../development/libraries/sblim-sfcc {};
 
   selinux-sandbox = callPackage ../os-specific/linux/selinux-sandbox { };
@@ -21874,13 +21995,24 @@ with pkgs;
 
   snowcrash = callPackage ../tools/security/snowcrash { };
 
-  soapyairspy = callPackage ../applications/radio/soapyairspy { };
+  soapyairspy = callPackage ../applications/radio/soapyairspy {
+    inherit (darwin) libobjc;
+    inherit (darwin.apple_sdk.frameworks) IOKit Security;
+  };
 
-  soapyaudio = callPackage ../applications/radio/soapyaudio { };
+  soapyaudio = callPackage ../applications/radio/soapyaudio {
+    inherit (darwin.apple_sdk.frameworks) Accelerate CoreAudio;
+  };
 
-  soapybladerf = callPackage ../applications/radio/soapybladerf { };
+  soapybladerf = callPackage ../applications/radio/soapybladerf {
+    inherit (darwin) libobjc;
+    inherit (darwin.apple_sdk.frameworks) IOKit Security;
+  };
 
-  soapyhackrf = callPackage ../applications/radio/soapyhackrf { };
+  soapyhackrf = callPackage ../applications/radio/soapyhackrf {
+    inherit (darwin) libobjc;
+    inherit (darwin.apple_sdk.frameworks) IOKit Security;
+  };
 
   soapysdr = callPackage ../applications/radio/soapysdr { };
 
@@ -21906,7 +22038,10 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) IOKit Security;
   };
 
-  soapyuhd = callPackage ../applications/radio/soapyuhd { };
+  soapyuhd = callPackage ../applications/radio/soapyuhd {
+    inherit (darwin) libobjc;
+    inherit (darwin.apple_sdk.frameworks) IOKit Security;
+  };
 
   social-engineer-toolkit = callPackage ../tools/security/social-engineer-toolkit { };
 
@@ -21973,6 +22108,10 @@ with pkgs;
 
   splat = callPackage ../applications/radio/splat { };
 
+  suscan = callPackage ../applications/radio/suscan { };
+
+  suwidgets = libsForQt5.callPackage ../applications/radio/suwidgets { };
+
   sratom = callPackage ../development/libraries/audio/sratom { };
 
   srm = callPackage ../tools/security/srm { };
@@ -22204,10 +22343,7 @@ with pkgs;
 
   umockdev = callPackage ../development/libraries/umockdev { };
 
-  unconvert = callPackage ../development/tools/unconvert {
-    # pinned due to build failure or vendoring problems. When unpinning double check with: nix-build -A $name.go-modules --rebuild
-    buildGoModule = buildGo117Module;
-  };
+  unconvert = callPackage ../development/tools/unconvert { };
 
   uncover = callPackage ../tools/security/uncover { };
 
@@ -22366,6 +22502,8 @@ with pkgs;
     gtk3 = gtk4;
   };
 
+  webp-pixbuf-loader = callPackage ../development/libraries/webp-pixbuf-loader {};
+
   websocketpp = callPackage ../development/libraries/websocket++ { };
 
   webrtc-audio-processing_1 = callPackage ../development/libraries/webrtc-audio-processing { stdenv = gcc10StdenvCompat; };
@@ -23108,20 +23246,14 @@ with pkgs;
   grafanaPlugins = callPackages ../servers/monitoring/grafana/plugins { };
 
   grafana-agent = callPackage ../servers/monitoring/grafana-agent {
-    # pinned due to build failure or vendoring problems. When unpinning double check with: nix-build -A $name.go-modules --rebuild
-    buildGoModule = buildGo117Module;
+    buildGoModule = buildGo118Module; # tests fail with 1.19
   };
 
   grafana-loki = callPackage ../servers/monitoring/loki { };
+  promtail = callPackage ../servers/monitoring/loki/promtail.nix { };
 
   mimir = callPackage ../servers/monitoring/mimir { };
 
-  promtail = grafana-loki.overrideAttrs (o: {
-    pname = "promtail";
-    subPackages = ["clients/cmd/promtail"];
-    CGO_ENABLED = 1;
-  });
-
   grafana_reporter = callPackage ../servers/monitoring/grafana-reporter { };
 
   grafana-image-renderer = callPackage ../servers/monitoring/grafana-image-renderer { };
@@ -23143,6 +23275,8 @@ with pkgs;
 
   hashi-ui = callPackage ../servers/hashi-ui {};
 
+  hashi-up = callPackage ../applications/networking/cluster/hashi-up { };
+
   hasura-graphql-engine = haskell.lib.compose.justStaticExecutables haskell.packages.ghc810.graphql-engine;
 
   hasura-cli = callPackage ../servers/hasura/cli.nix { };
@@ -23206,6 +23340,8 @@ with pkgs;
 
   janus-gateway = callPackage ../servers/janus-gateway { };
 
+  janusgraph = callPackage ../servers/nosql/janusgraph { };
+
   jboss = callPackage ../servers/http/jboss { };
 
   jboss_mysql_jdbc = callPackage ../servers/http/jboss/jdbc/mysql { };
@@ -23420,7 +23556,11 @@ with pkgs;
 
   onlyoffice-documentserver = callPackage ../servers/onlyoffice-documentserver { };
 
-  outline = callPackage ../servers/web-apps/outline { };
+  outline = callPackage ../servers/web-apps/outline (lib.fix (super: {
+    yarn2nix-moretea = yarn2nix-moretea.override { inherit (super) nodejs yarn; };
+    yarn = yarn.override { inherit (super) nodejs; };
+    nodejs = nodejs-16_x;
+  }));
 
   openbgpd = callPackage ../servers/openbgpd { };
 
@@ -23598,6 +23738,13 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
   };
 
+  mongodb-6_0 = callPackage ../servers/nosql/mongodb/6.0.nix {
+    sasl = cyrus_sasl;
+    boost = boost178.override { enableShared = false; };
+    inherit (darwin) cctools;
+    inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
+  };
+
   nginx-sso = callPackage ../servers/nginx-sso { };
 
   percona-server56 = callPackage ../servers/sql/percona/5.6.x.nix {
@@ -23608,10 +23755,7 @@ with pkgs;
 
   immudb = callPackage ../servers/nosql/immudb { };
 
-  influxdb = callPackage ../servers/nosql/influxdb {
-    # pinned due to build failure or vendoring problems. When unpinning double check with: nix-build -A $name.go-modules --rebuild
-    buildGoModule = buildGo117Module;
-  };
+  influxdb = callPackage ../servers/nosql/influxdb { };
   influxdb2-server = callPackage ../servers/nosql/influxdb2 { };
   influxdb2-cli = callPackage ../servers/nosql/influxdb2/cli.nix { };
   # For backwards compatibility with older versions of influxdb2,
@@ -23786,17 +23930,16 @@ with pkgs;
   prometheus-minio-exporter = callPackage ../servers/monitoring/prometheus/minio-exporter { };
   prometheus-modemmanager-exporter = callPackage ../servers/monitoring/prometheus/modemmanager-exporter.nix { };
   prometheus-mysqld-exporter = callPackage ../servers/monitoring/prometheus/mysqld-exporter.nix { };
-  prometheus-nats-exporter = callPackage ../servers/monitoring/prometheus/nats-exporter.nix {
-    # pinned due to build failure or vendoring problems. When unpinning double check with: nix-build -A $name.go-modules --rebuild
-    buildGoModule = buildGo117Module;
-  };
+  prometheus-nats-exporter = callPackage ../servers/monitoring/prometheus/nats-exporter.nix { };
   prometheus-nextcloud-exporter = callPackage ../servers/monitoring/prometheus/nextcloud-exporter.nix { };
   prometheus-nginx-exporter = callPackage ../servers/monitoring/prometheus/nginx-exporter.nix { };
   prometheus-nginxlog-exporter = callPackage ../servers/monitoring/prometheus/nginxlog-exporter.nix { };
   prometheus-node-exporter = callPackage ../servers/monitoring/prometheus/node-exporter.nix {
     inherit (darwin.apple_sdk.frameworks) CoreFoundation IOKit;
   };
-  prometheus-openldap-exporter = callPackage ../servers/monitoring/prometheus/openldap-exporter.nix { };
+  prometheus-openldap-exporter = callPackage ../servers/monitoring/prometheus/openldap-exporter.nix {
+    buildGoModule = buildGo118Module; # nixosTests.prometheus-exporter.ldap fails with 1.19
+  };
   prometheus-openvpn-exporter = callPackage ../servers/monitoring/prometheus/openvpn-exporter.nix { };
   prometheus-pihole-exporter = callPackage ../servers/monitoring/prometheus/pihole-exporter.nix {  };
   prometheus-postfix-exporter = callPackage ../servers/monitoring/prometheus/postfix-exporter.nix { };
@@ -24113,15 +24256,13 @@ with pkgs;
     libdrm = if stdenv.isLinux then libdrm else null;
     abiCompat = config.xorg.abiCompat # `config` because we have no `xorg.override`
       or (if stdenv.isDarwin then "1.18" else null); # 1.19 needs fixing on Darwin
-  }) // { inherit xlibsWrapper; } );
+  }));
 
   xorg-autoconf = callPackage ../development/tools/misc/xorg-autoconf { };
 
   xwayland = callPackage ../servers/x11/xorg/xwayland.nix { };
 
-  yaws = callPackage ../servers/http/yaws {
-    erlang = erlangR21;
-  };
+  yaws = callPackage ../servers/http/yaws { };
 
   youtrack = callPackage ../servers/jetbrains/youtrack.nix { };
 
@@ -24522,8 +24663,6 @@ with pkgs;
 
   iproute2 = callPackage ../os-specific/linux/iproute { };
 
-  iproute_mptcp = callPackage ../os-specific/linux/iproute/mptcp.nix { };
-
   iputils = hiPrio (callPackage ../os-specific/linux/iputils { });
   # hiPrio for collisions with inetutils (ping)
 
@@ -24543,7 +24682,9 @@ with pkgs;
 
   iwd = callPackage ../os-specific/linux/iwd { };
 
-  jfbview = callPackage ../os-specific/linux/jfbview { };
+  jfbview = callPackage ../os-specific/linux/jfbview {
+    imlib2 = imlib2Full;
+  };
   jfbpdf = jfbview.override {
     imageSupport = false;
   };
@@ -24574,6 +24715,8 @@ with pkgs;
 
   libaio = callPackage ../os-specific/linux/libaio { };
 
+  libajantv2 = callPackage ../development/libraries/libajantv2 {};
+
   libargon2 = callPackage ../development/libraries/libargon2 { };
 
   libatasmart = callPackage ../os-specific/linux/libatasmart { };
@@ -24680,10 +24823,6 @@ with pkgs;
   linuxPackages_testing_bcachefs = linuxKernel.packages.linux_testing_bcachefs;
   linux_testing_bcachefs = linuxKernel.kernels.linux_testing_bcachefs;
 
-  # kernel with mtcp support
-  linuxPackages_mptcp = linuxKernel.packageAliases.linux_mptcp;
-  linux_mptcp = linuxPackages_mptcp.kernel;
-
   # Realtime kernel
   linuxPackages-rt = linuxKernel.packageAliases.linux_rt_default;
   linuxPackages-rt_latest = linuxKernel.packageAliases.linux_rt_latest;
@@ -24721,6 +24860,8 @@ with pkgs;
   # XanMod kernel
   linuxPackages_xanmod = linuxKernel.packages.linux_xanmod;
   linux_xanmod = linuxKernel.kernels.linux_xanmod;
+  linuxPackages_xanmod_stable = linuxKernel.packages.linux_xanmod_stable;
+  linux_xanmod_stable = linuxKernel.kernels.linux_xanmod_stable;
   linuxPackages_xanmod_latest = linuxKernel.packages.linux_xanmod_latest;
   linux_xanmod_latest = linuxKernel.kernels.linux_xanmod_latest;
   linuxPackages_xanmod_tt = linuxKernel.packages.linux_xanmod_tt;
@@ -24872,8 +25013,6 @@ with pkgs;
     then callPackage ../os-specific/linux/net-tools { }
     else unixtools.nettools;
 
-  nettools_mptcp = callPackage ../os-specific/linux/net-tools/mptcp.nix { };
-
   nftables = callPackage ../os-specific/linux/nftables { };
 
   noah = callPackage ../os-specific/darwin/noah {
@@ -24971,6 +25110,7 @@ with pkgs;
 
   gotop = callPackage ../tools/system/gotop {
     inherit (darwin.apple_sdk.frameworks) IOKit;
+    buildGoModule = buildGo119Module;
   };
 
   go-migrate = callPackage ../development/tools/go-migrate { };
@@ -25150,6 +25290,8 @@ with pkgs;
 
   reap = callPackage ../os-specific/linux/reap { };
 
+  rectangle = callPackage ../os-specific/darwin/rectangle { };
+
   regionset = callPackage ../os-specific/linux/regionset { };
 
   rfkill_udev = callPackage ../os-specific/linux/rfkill/udev.nix { };
@@ -25951,6 +26093,8 @@ with pkgs;
 
   libratbag = callPackage ../os-specific/linux/libratbag { };
 
+  librist = callPackage ../development/libraries/librist { };
+
   libre-baskerville = callPackage ../data/fonts/libre-baskerville { };
 
   libre-bodoni = callPackage ../data/fonts/libre-bodoni { };
@@ -26315,6 +26459,10 @@ with pkgs;
 
   stdmanpages = callPackage ../data/documentation/std-man-pages { };
 
+  star-history = callPackage ../tools/misc/star-history {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
+
   starfetch = callPackage ../tools/misc/starfetch { };
 
   starship = callPackage ../tools/misc/starship {
@@ -26732,6 +26880,8 @@ with pkgs;
 
   ao = libfive;
 
+  apache-directory-server = callPackage ../servers/apache-directory-server {};
+
   apache-directory-studio = callPackage ../applications/networking/apache-directory-studio {};
 
   apkeep = callPackage ../tools/misc/apkeep {
@@ -26760,7 +26910,9 @@ with pkgs;
 
   argocd = callPackage ../applications/networking/cluster/argocd { };
 
-  argocd-autopilot = callPackage ../applications/networking/cluster/argocd-autopilot { };
+  argocd-autopilot = callPackage ../applications/networking/cluster/argocd-autopilot {
+    buildGoModule = buildGo119Module;
+  };
 
   argo-rollouts = callPackage ../applications/networking/cluster/argo-rollouts { };
 
@@ -26770,6 +26922,8 @@ with pkgs;
 
   arkade = callPackage ../applications/networking/cluster/arkade { };
 
+  artem = callPackage ../applications/graphics/artem { };
+
   asuka = callPackage ../applications/networking/browsers/asuka {
     inherit (darwin.apple_sdk.frameworks) Security;
   };
@@ -26806,16 +26960,10 @@ with pkgs;
   };
   audaciousQt5 = audacious;
 
-  audacity-gtk2 = callPackage ../applications/audio/audacity { wxGTK = wxGTK31-gtk2; };
-  audacity-gtk3 = callPackage ../applications/audio/audacity { wxGTK = wxGTK31-gtk3; };
-  audacity =
-    if stdenv.isDarwin then
-      callPackage ../applications/audio/audacity {
-        inherit (darwin.apple_sdk.frameworks) AppKit AudioToolbox AudioUnit Carbon Cocoa CoreAudio CoreAudioKit CoreServices;
-        suil = suil-qt5;
-      }
-    else
-      audacity-gtk2;
+  audacity = callPackage ../applications/audio/audacity {
+    inherit (darwin.apple_sdk.frameworks) AppKit AudioToolbox AudioUnit Carbon CoreAudio CoreAudioKit CoreServices;
+    suil = suil-qt5;
+  };
 
   audio-recorder = callPackage ../applications/audio/audio-recorder { };
 
@@ -27067,7 +27215,7 @@ with pkgs;
 
   calculix = callPackage ../applications/science/math/calculix {};
 
-  calibre = libsForQt5.callPackage ../applications/misc/calibre { };
+  calibre = qt6Packages.callPackage ../applications/misc/calibre { };
 
   calibre-web = callPackage ../servers/calibre-web { };
 
@@ -27543,7 +27691,9 @@ with pkgs;
 
   elementary-planner = callPackage ../applications/office/elementary-planner { };
 
-  elf-dissector = libsForQt5.callPackage ../applications/misc/elf-dissector { };
+  elf-dissector = libsForQt5.callPackage ../applications/misc/elf-dissector {
+    libdwarf = libdwarf_20210528;
+  };
 
   elfx86exts = callPackage ../applications/misc/elfx86exts { };
 
@@ -27820,6 +27970,8 @@ with pkgs;
 
   freebayes = callPackage ../applications/science/biology/freebayes { };
 
+  freefilesync = callPackage ../applications/networking/freefilesync { };
+
   freewheeling = callPackage ../applications/audio/freewheeling { };
 
   fritzing = libsForQt5.callPackage ../applications/science/electronics/fritzing { };
@@ -27976,7 +28128,7 @@ with pkgs;
 
   gomuks = callPackage ../applications/networking/instant-messengers/gomuks { };
 
-  inherit (ocaml-ng.ocamlPackages_4_10) google-drive-ocamlfuse;
+  inherit (ocaml-ng.ocamlPackages_4_12) google-drive-ocamlfuse;
 
   googler = callPackage ../applications/misc/googler {
     python = python3;
@@ -27984,10 +28136,7 @@ with pkgs;
 
   gopher = callPackage ../applications/networking/gopher/gopher { };
 
-  gophernotes = callPackage ../applications/editors/gophernotes {
-    # pinned due to build failure or vendoring problems. When unpinning double check with: nix-build -A $name.go-modules --rebuild
-    buildGoModule = buildGo117Module;
-  };
+  gophernotes = callPackage ../applications/editors/gophernotes { };
 
   goxel = callPackage ../applications/graphics/goxel { };
 
@@ -28073,7 +28222,9 @@ with pkgs;
 
   fdupes = callPackage ../tools/misc/fdupes { };
 
-  feh = callPackage ../applications/graphics/feh { };
+  feh = callPackage ../applications/graphics/feh {
+    imlib2 = imlib2Full;
+  };
 
   feishu = callPackage ../applications/networking/instant-messengers/feishu {};
 
@@ -28651,7 +28802,9 @@ with pkgs;
 
   haunt = callPackage ../applications/misc/haunt { };
 
-  hugo = callPackage ../applications/misc/hugo { };
+  hugo = callPackage ../applications/misc/hugo {
+    buildGoModule = buildGo119Module;
+  };
 
   gatekeeper = callPackage ../applications/networking/cluster/gatekeeper { };
 
@@ -29018,6 +29171,8 @@ with pkgs;
 
   inkcut = libsForQt5.callPackage ../applications/misc/inkcut { };
 
+  inklingreader = callPackage ../tools/misc/inklingreader { };
+
   inkscape = callPackage ../applications/graphics/inkscape {
     lcms = lcms2;
   };
@@ -29282,13 +29437,12 @@ with pkgs;
 
   kuttl = callPackage ../applications/networking/cluster/kuttl { };
 
-  kubectl-doctor = callPackage ../applications/networking/cluster/kubectl-doctor {
-    # pinned due to build failure or vendoring problems. When unpinning double check with: nix-build -A $name.go-modules --rebuild
-    buildGoModule = buildGo117Module;
-  };
+  kubectl-doctor = callPackage ../applications/networking/cluster/kubectl-doctor { };
 
   kubectl-example = callPackage ../applications/networking/cluster/kubectl-example { };
 
+  kubectl-images = callPackage ../applications/networking/cluster/kubectl-images { };
+
   kubectl-node-shell = callPackage ../applications/networking/cluster/kubectl-node-shell { };
 
   kubectl-tree = callPackage ../applications/networking/cluster/kubectl-tree { };
@@ -29686,7 +29840,7 @@ with pkgs;
 
   mediainfo-gui = callPackage ../applications/misc/mediainfo-gui { };
 
-  mediathekview = callPackage ../applications/video/mediathekview { jre = adoptopenjdk-hotspot-bin-16; };
+  mediathekview = callPackage ../applications/video/mediathekview { jre = temurin-bin-17; };
 
   megapixels = callPackage ../applications/graphics/megapixels { };
 
@@ -29956,7 +30110,9 @@ with pkgs;
 
   normalize = callPackage ../applications/audio/normalize { };
 
-  norouter = callPackage ../tools/networking/norouter { };
+  norouter = callPackage ../tools/networking/norouter {
+    buildGoModule = buildGo118Module; # tests fail with 1.19
+  };
 
   mailspring = callPackage ../applications/networking/mailreaders/mailspring {};
 
@@ -30112,6 +30268,8 @@ with pkgs;
 
   onlyoffice-bin = callPackage ../applications/office/onlyoffice-bin { };
 
+  opcr-policy = callPackage ../development/tools/opcr-policy { };
+
   open-policy-agent = callPackage ../development/tools/open-policy-agent { };
 
   openshift = callPackage ../applications/networking/cluster/openshift { };
@@ -30124,7 +30282,10 @@ with pkgs;
 
   ostinato = libsForQt5.callPackage ../applications/networking/ostinato { };
 
-  p4 = callPackage ../applications/version-management/p4 { };
+  p4 = callPackage ../applications/version-management/p4 {
+    inherit (darwin.apple_sdk.frameworks) CoreServices Foundation Security;
+    openssl = openssl_1_1;
+  };
   p4d = callPackage ../applications/version-management/p4d { };
   p4v = libsForQt515.callPackage ../applications/version-management/p4v { };
 
@@ -30294,7 +30455,10 @@ with pkgs;
 
   diffpdf = libsForQt5.callPackage ../applications/misc/diffpdf { };
 
-  diff-pdf = callPackage ../applications/misc/diff-pdf { wxGTK = wxGTK31; };
+  diff-pdf = callPackage ../applications/misc/diff-pdf {
+    wxGTK = wxGTK32;
+    inherit (darwin.apple_sdk.frameworks) Cocoa;
+  };
 
   diffuse = callPackage ../applications/misc/diffuse { };
 
@@ -30487,6 +30651,10 @@ with pkgs;
 
   owamp = callPackage ../applications/networking/owamp { };
 
+  owofetch = callPackage ../tools/misc/owofetch {
+    inherit (darwin.apple_sdk.frameworks) Foundation DiskArbitration;
+  };
+
   vgmplay-libvgm = callPackage ../applications/audio/vgmplay-libvgm { };
 
   vgmtools = callPackage ../tools/audio/vgmtools { };
@@ -30539,6 +30707,8 @@ with pkgs;
     enableDbusUi = false;
   };
 
+  parsec-bin = callPackage ../applications/misc/parsec/bin.nix { };
+
   pavucontrol = callPackage ../applications/audio/pavucontrol { };
 
   paraview = libsForQt5.callPackage ../applications/graphics/paraview { };
@@ -30688,10 +30858,6 @@ with pkgs;
 
   tdlib-purple = callPackage ../applications/networking/instant-messengers/pidgin-plugins/tdlib-purple { };
 
-  toxprpl = callPackage ../applications/networking/instant-messengers/pidgin-plugins/tox-prpl {
-    libtoxcore = libtoxcore-new;
-  };
-
   pidgin-opensteamworks = callPackage ../applications/networking/instant-messengers/pidgin-plugins/pidgin-opensteamworks { };
 
   purple-facebook = callPackage ../applications/networking/instant-messengers/pidgin-plugins/purple-facebook { };
@@ -30758,7 +30924,9 @@ with pkgs;
 
   pqiv = callPackage ../applications/graphics/pqiv { };
 
-  qiv = callPackage ../applications/graphics/qiv { };
+  qiv = callPackage ../applications/graphics/qiv {
+    imlib2 = imlib2Full;
+  };
 
   premid = callPackage ../applications/misc/premid { };
 
@@ -30841,6 +31009,8 @@ with pkgs;
 
   qemu-utils = callPackage ../applications/virtualization/qemu/utils.nix {};
 
+  canokey-qemu = callPackage ../applications/virtualization/qemu/canokey-qemu.nix { };
+
   wrapQemuBinfmtP = callPackage ../applications/virtualization/qemu/binfmt-p-wrapper.nix { };
 
   qgroundcontrol = libsForQt5.callPackage ../applications/science/robotics/qgroundcontrol { };
@@ -30984,6 +31154,9 @@ with pkgs;
   };
 
   qutebrowser = libsForQt5.callPackage ../applications/networking/browsers/qutebrowser { };
+  qutebrowser-qt6 = callPackage ../applications/networking/browsers/qutebrowser {
+    inherit (qt6Packages) qtbase qtwebengine wrapQtAppsHook qtwayland;
+  };
 
   qxw = callPackage ../applications/editors/qxw {};
 
@@ -31301,9 +31474,13 @@ with pkgs;
 
   swingsane = callPackage ../applications/graphics/swingsane { };
 
-  sxiv = callPackage ../applications/graphics/sxiv { };
+  sxiv = callPackage ../applications/graphics/sxiv {
+    imlib2 = imlib2Full;
+  };
 
-  nsxiv = callPackage ../applications/graphics/nsxiv { };
+  nsxiv = callPackage ../applications/graphics/nsxiv {
+    imlib2 = imlib2Full;
+  };
 
   resilio-sync = callPackage ../applications/networking/resilio-sync { };
 
@@ -31379,7 +31556,9 @@ with pkgs;
 
   robustirc-bridge = callPackage ../servers/irc/robustirc-bridge { };
 
-  routedns = callPackage ../tools/networking/routedns { };
+  routedns = callPackage ../tools/networking/routedns {
+    buildGoModule = buildGo118Module; # build fails with 1.19
+  };
 
   skrooge = libsForQt5.callPackage ../applications/office/skrooge {};
 
@@ -31404,7 +31583,10 @@ with pkgs;
 
   socialscan = with python3.pkgs; toPythonApplication socialscan;
 
-  sonic-lineup = libsForQt5.callPackage ../applications/audio/sonic-lineup { stdenv = gcc10StdenvCompat; };
+  sonic-lineup = libsForQt5.callPackage ../applications/audio/sonic-lineup {
+    bzip2 = bzip2_1_1;
+    stdenv = gcc10StdenvCompat;
+  };
 
   sonic-visualiser = libsForQt5.callPackage ../applications/audio/sonic-visualiser { };
 
@@ -31847,7 +32029,8 @@ with pkgs;
   tree = callPackage ../tools/system/tree {};
 
   treesheets = callPackage ../applications/office/treesheets {
-    wxGTK = wxGTK31-gtk3;
+    wxGTK = wxGTK32;
+    inherit (darwin.apple_sdk.frameworks) Cocoa;
   };
 
   tremc = callPackage ../applications/networking/p2p/tremc { };
@@ -32378,7 +32561,9 @@ with pkgs;
   wsjtx = qt5.callPackage ../applications/radio/wsjtx { };
 
   wxhexeditor = callPackage ../applications/editors/wxhexeditor {
-    wxGTK = wxGTK31;
+    inherit (darwin.apple_sdk.frameworks) Cocoa;
+    inherit (llvmPackages) openmp;
+    wxGTK = wxGTK32;
   };
 
   xa = callPackage ../development/compilers/xa/xa.nix { };
@@ -32915,7 +33100,9 @@ with pkgs;
 
   ergo = callPackage ../applications/blockchains/ergo { };
 
-  erigon = callPackage ../applications/blockchains/erigon.nix { };
+  erigon = callPackage ../applications/blockchains/erigon.nix {
+    buildGoModule = buildGo119Module;
+  };
 
   exodus = callPackage ../applications/blockchains/exodus { };
 
@@ -36014,6 +36201,10 @@ with pkgs;
 
   lguf-brightness = callPackage ../misc/lguf-brightness { };
 
+  lighthouse = callPackage ../applications/blockchains/lighthouse {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
+
   lilypond = callPackage ../misc/lilypond { guile = guile_1_8; };
 
   lilypond-unstable = callPackage ../misc/lilypond/unstable.nix { };
@@ -36393,6 +36584,8 @@ with pkgs;
 
   qdl = callPackage ../tools/misc/qdl { };
 
+  qperf = callPackage ../os-specific/linux/qperf { };
+
   rates = callPackage ../tools/misc/rates {
     inherit (darwin.apple_sdk.frameworks) Security;
   };
@@ -36774,7 +36967,7 @@ with pkgs;
 
   wasm-pack = callPackage ../development/tools/wasm-pack {
     inherit (darwin.apple_sdk.frameworks) Security;
-    libressl = libressl_3_4;
+    libressl = libressl_3_5;
   };
 
   wasynth = callPackage ../development/tools/wasynth { };
@@ -36843,6 +37036,12 @@ with pkgs;
 
   wordpress = callPackage ../servers/web-apps/wordpress { };
 
+  wordpressPackages = ( callPackage ../servers/web-apps/wordpress/packages {
+    plugins = lib.importJSON ../servers/web-apps/wordpress/packages/plugins.json;
+    themes = lib.importJSON ../servers/web-apps/wordpress/packages/themes.json;
+    languages = lib.importJSON ../servers/web-apps/wordpress/packages/languages.json;
+  });
+
   wprecon = callPackage ../tools/security/wprecon { };
 
   wraith = callPackage ../applications/networking/irc/wraith {
@@ -36850,7 +37049,7 @@ with pkgs;
   };
 
   wxsqlite3 = callPackage ../development/libraries/wxsqlite3 {
-    wxGTK = wxGTK30;
+    wxGTK = wxGTK32;
     inherit (darwin.apple_sdk.frameworks) Cocoa;
     inherit (darwin.stubs) setfile rez derez;
   };
@@ -37057,7 +37256,7 @@ with pkgs;
 
   simplenote = callPackage ../applications/misc/simplenote { };
 
-  hy = python3Packages.hy.withPackages (python-packages: [ ]);
+  hy = with python3Packages; toPythonApplication hy;
 
   wmic-bin = callPackage ../servers/monitoring/plugins/wmic-bin.nix { };
 
@@ -37216,13 +37415,17 @@ with pkgs;
 
   dapper = callPackage ../development/tools/dapper { };
 
-  kube3d =  callPackage ../applications/networking/cluster/kube3d {};
+  kube3d =  callPackage ../applications/networking/cluster/kube3d {
+    buildGoModule = buildGo118Module; # tests fail with 1.19
+  };
 
   zfs-prune-snapshots = callPackage ../tools/backup/zfs-prune-snapshots {};
 
   zfs-replicate = python3Packages.callPackage ../tools/backup/zfs-replicate { };
 
-  zrepl = callPackage ../tools/backup/zrepl { };
+  zrepl = callPackage ../tools/backup/zrepl {
+    buildGoModule = buildGo118Module; # nixosTests.zrepl fails with 1.19
+  };
 
   uhubctl = callPackage ../tools/misc/uhubctl {};
 
@@ -37242,7 +37445,9 @@ with pkgs;
 
   webwormhole = callPackage ../tools/networking/webwormhole { };
 
-  werf = callPackage ../applications/networking/cluster/werf { };
+  werf = callPackage ../applications/networking/cluster/werf {
+    buildGoModule = buildGo119Module;
+  };
 
   wifi-password = callPackage ../os-specific/darwin/wifi-password {};
 
diff --git a/pkgs/top-level/config.nix b/pkgs/top-level/config.nix
index 6ddd647a2b1a1..a47655f114243 100644
--- a/pkgs/top-level/config.nix
+++ b/pkgs/top-level/config.nix
@@ -9,11 +9,11 @@ let
   mkMassRebuild = args: mkOption (builtins.removeAttrs args [ "feature" ] // {
     type = args.type or (types.uniq types.bool);
     default = args.default or false;
-    description = (args.description or ''
+    description = lib.mdDoc ((args.description or ''
       Whether to ${args.feature} while building nixpkgs packages.
     '') + ''
       Changing the default may cause a mass rebuild.
-    '';
+    '');
   });
 
   options = {
@@ -34,35 +34,35 @@ let
     /* Config options */
 
     warnUndeclaredOptions = mkOption {
-      description = "Whether to warn when <literal>config</literal> contains an unrecognized attribute.";
+      description = lib.mdDoc "Whether to warn when `config` contains an unrecognized attribute.";
       type = types.bool;
       default = false;
     };
 
     doCheckByDefault = mkMassRebuild {
-      feature = "run <literal>checkPhase</literal> by default";
+      feature = "run `checkPhase` by default";
     };
 
     strictDepsByDefault = mkMassRebuild {
-      feature = "set <literal>strictDeps</literal> to true by default";
+      feature = "set `strictDeps` to true by default";
     };
 
     enableParallelBuildingByDefault = mkMassRebuild {
-      feature = "set <literal>enableParallelBuilding</literal> to true by default";
+      feature = "set `enableParallelBuilding` to true by default";
     };
 
     configurePlatformsByDefault = mkMassRebuild {
-      feature = "set <literal>configurePlatforms</literal> to <literal>[\"build\" \"host\"]</literal> by default";
+      feature = "set `configurePlatforms` to `[\"build\" \"host\"]` by default";
     };
 
     contentAddressedByDefault = mkMassRebuild {
-      feature = "set <literal>__contentAddressed</literal> to true by default";
+      feature = "set `__contentAddressed` to true by default";
     };
 
     allowAliases = mkOption {
       type = types.bool;
       default = true;
-      description = ''
+      description = lib.mdDoc ''
         Whether to expose old attribute names for compatibility.
 
         The recommended setting is to enable this, as it
@@ -82,10 +82,10 @@ let
       default = false;
       # getEnv part is in check-meta.nix
       defaultText = literalExpression ''false || builtins.getEnv "NIXPKGS_ALLOW_UNFREE" == "1"'';
-      description = ''
+      description = lib.mdDoc ''
         Whether to allow unfree packages.
 
-        See <link xlink:href="https://nixos.org/manual/nixpkgs/stable/#sec-allow-unfree">Installing unfree packages</link> in the NixOS manual.
+        See [Installing unfree packages](https://nixos.org/manual/nixpkgs/stable/#sec-allow-unfree) in the NixOS manual.
       '';
     };
 
@@ -94,10 +94,10 @@ let
       default = false;
       # getEnv part is in check-meta.nix
       defaultText = literalExpression ''false || builtins.getEnv "NIXPKGS_ALLOW_BROKEN" == "1"'';
-      description = ''
+      description = lib.mdDoc ''
         Whether to allow broken packages.
 
-        See <link xlink:href="https://nixos.org/manual/nixpkgs/stable/#sec-allow-broken">Installing broken packages</link> in the NixOS manual.
+        See [Installing broken packages](https://nixos.org/manual/nixpkgs/stable/#sec-allow-broken) in the NixOS manual.
       '';
     };
 
@@ -106,22 +106,22 @@ let
       default = false;
       # getEnv part is in check-meta.nix
       defaultText = literalExpression ''false || builtins.getEnv "NIXPKGS_ALLOW_UNSUPPORTED_SYSTEM" == "1"'';
-      description = ''
+      description = lib.mdDoc ''
         Whether to allow unsupported packages.
 
-        See <link xlink:href="https://nixos.org/manual/nixpkgs/stable/#sec-allow-unsupported-system">Installing packages on unsupported systems</link> in the NixOS manual.
+        See [Installing packages on unsupported systems](https://nixos.org/manual/nixpkgs/stable/#sec-allow-unsupported-system) in the NixOS manual.
       '';
     };
 
     showDerivationWarnings = mkOption {
       type = types.listOf (types.enum [ "maintainerless" ]);
       default = [];
-      description = ''
+      description = lib.mdDoc ''
         Which warnings to display for potentially dangerous
         or deprecated values passed into `stdenv.mkDerivation`.
 
         A list of warnings can be found in
-        <link xlink:href="https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/check-meta.nix">/pkgs/stdenv/generic/check-meta.nix</link>.
+        [/pkgs/stdenv/generic/check-meta.nix](https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/check-meta.nix).
 
         This is not a stable interface; warnings may be added, changed
         or removed without prior notice.
@@ -130,7 +130,7 @@ let
 
     checkMeta = mkOption {
       type = types.bool;
-      default = true;
+      default = false;
       description = ''
         Whether to check that the `meta` attribute of derivations are correct during evaluation time.
       '';
diff --git a/pkgs/top-level/emscripten-packages.nix b/pkgs/top-level/emscripten-packages.nix
index 9a6b188095023..d5f820d0d60b9 100644
--- a/pkgs/top-level/emscripten-packages.nix
+++ b/pkgs/top-level/emscripten-packages.nix
@@ -50,7 +50,7 @@ rec {
   }).overrideDerivation
     (old: {
       propagatedBuildInputs = [ zlib ];
-      buildInputs = old.buildInputs ++ [ pkg-config ];
+      nativeBuildInputs = (old.nativeBuildInputs or []) ++ [ pkg-config ];
 
       # just override it with nothing so it does not fail
       autoreconfPhase = "echo autoreconfPhase not used...";
@@ -87,7 +87,7 @@ rec {
     pname = "xmlmirror";
     version = "unstable-2016-06-05";
 
-    buildInputs = [ pkg-config libtool gnumake libxml2 nodejs openjdk json_c ];
+    buildInputs = [ libtool gnumake libxml2 nodejs openjdk json_c ];
     nativeBuildInputs = [ pkg-config zlib autoconf automake ];
 
     src = pkgs.fetchgit {
@@ -140,7 +140,7 @@ rec {
     stdenv = pkgs.emscriptenStdenv;
   }).overrideDerivation
     (old: {
-      buildInputs = old.buildInputs ++ [ pkg-config ];
+      nativeBuildInputs = (old.nativeBuildInputs or []) ++ [ pkg-config ];
       # we need to reset this setting!
       NIX_CFLAGS_COMPILE="";
       dontStrip = true;
diff --git a/pkgs/top-level/java-packages.nix b/pkgs/top-level/java-packages.nix
index 302b301b115ef..ba69287fa8dcd 100644
--- a/pkgs/top-level/java-packages.nix
+++ b/pkgs/top-level/java-packages.nix
@@ -45,7 +45,11 @@ in {
     mkBootstrap = adoptopenjdk: path: args:
       /* adoptopenjdk not available for i686, so fall back to our old builds for bootstrapping */
       if   adoptopenjdk.jdk-hotspot.meta.available
-      then adoptopenjdk.jdk-hotspot
+      then
+        # only linux has the gtkSupport option
+        if stdenv.isLinux
+        then adoptopenjdk.jdk-hotspot.override { gtkSupport = false; }
+        else adoptopenjdk.jdk-hotspot
       else callPackage path args;
 
     mkOpenjdk = path-linux: path-darwin: args:
diff --git a/pkgs/top-level/kodi-packages.nix b/pkgs/top-level/kodi-packages.nix
index 11dd5270e63d8..7891669e0fce3 100644
--- a/pkgs/top-level/kodi-packages.nix
+++ b/pkgs/top-level/kodi-packages.nix
@@ -100,6 +100,8 @@ let self = rec {
 
   vfs-libarchive = callPackage ../applications/video/kodi/addons/vfs-libarchive { };
 
+  visualization-waveform = callPackage ../applications/video/kodi/addons/visualization-waveform { };
+
   youtube = callPackage ../applications/video/kodi/addons/youtube { };
 
   # addon packages (dependencies)
diff --git a/pkgs/top-level/linux-kernels.nix b/pkgs/top-level/linux-kernels.nix
index 139848b4fe97b..2b690422ecd52 100644
--- a/pkgs/top-level/linux-kernels.nix
+++ b/pkgs/top-level/linux-kernels.nix
@@ -61,10 +61,6 @@ in {
     # New vendor kernels should go to nixos-hardware instead.
     # e.g. https://github.com/NixOS/nixos-hardware/tree/master/microsoft/surface/kernel
 
-    linux_mptcp_95 = callPackage ../os-specific/linux/kernel/linux-mptcp-95.nix {
-      kernelPatches = linux_4_19.kernelPatches;
-    };
-
     linux_rpi1 = callPackage ../os-specific/linux/kernel/linux-rpi.nix {
       kernelPatches = with kernelPatches; [
         bridge_stp_helper
@@ -177,6 +173,13 @@ in {
       ];
     };
 
+    linux_6_0 = callPackage ../os-specific/linux/kernel/linux-6.0.nix {
+      kernelPatches = [
+        kernelPatches.bridge_stp_helper
+        kernelPatches.request_key_helper
+      ];
+    };
+
     linux_testing = let
       testing = callPackage ../os-specific/linux/kernel/linux-testing.nix {
         kernelPatches = [
@@ -229,7 +232,8 @@ in {
     };
 
     linux_xanmod = xanmodKernels.lts;
-    linux_xanmod_latest = xanmodKernels.edge;
+    linux_xanmod_stable = xanmodKernels.current;
+    linux_xanmod_latest = xanmodKernels.next;
     linux_xanmod_tt = xanmodKernels.tt;
 
     linux_libre = deblobKernel packageAliases.linux_default.kernel;
@@ -531,6 +535,7 @@ in {
     linux_5_17 = throw "linux 5.17 was removed because it reached its end of life upstream"; # Added 2022-06-23
     linux_5_18 = throw "linux 5.18 was removed because it reached its end of life upstream"; # Added 2022-09-17
     linux_5_19 = recurseIntoAttrs (packagesFor kernels.linux_5_19);
+    linux_6_0 = recurseIntoAttrs (packagesFor kernels.linux_6_0);
   };
 
   rtPackages = {
@@ -547,7 +552,6 @@ in {
   };
 
   packages = recurseIntoAttrs (vanillaPackages // rtPackages // rpiPackages // {
-    linux_mptcp_95 = packagesFor kernels.linux_mptcp_95;
 
     # Intentionally lacks recurseIntoAttrs, as -rc kernels will quite likely break out-of-tree modules and cause failed Hydra builds.
     linux_testing = packagesFor kernels.linux_testing;
@@ -575,6 +579,7 @@ in {
     linux_zen = recurseIntoAttrs (packagesFor kernels.linux_zen);
     linux_lqx = recurseIntoAttrs (packagesFor kernels.linux_lqx);
     linux_xanmod = recurseIntoAttrs (packagesFor kernels.linux_xanmod);
+    linux_xanmod_stable = recurseIntoAttrs (packagesFor kernels.linux_xanmod_stable);
     linux_xanmod_latest = recurseIntoAttrs (packagesFor kernels.linux_xanmod_latest);
     linux_xanmod_tt = recurseIntoAttrs (packagesFor kernels.linux_xanmod_tt);
 
@@ -588,7 +593,7 @@ in {
   packageAliases = {
     linux_default = packages.linux_5_15;
     # Update this when adding the newest kernel major version!
-    linux_latest = packages.linux_5_19;
+    linux_latest = packages.linux_6_0;
     linux_mptcp = packages.linux_mptcp_95;
     linux_rt_default = packages.linux_rt_5_4;
     linux_rt_latest = packages.linux_rt_5_10;
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index eb77005a39931..ca3223703079a 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -92,7 +92,6 @@ let
 
     bls12-381 = callPackage ../development/ocaml-modules/bls12-381 { };
     bls12-381-gen = callPackage ../development/ocaml-modules/bls12-381/gen.nix { };
-    bls12-381-unix = callPackage ../development/ocaml-modules/bls12-381/unix.nix { };
     bls12-381-legacy = callPackage ../development/ocaml-modules/bls12-381/legacy.nix { };
 
     bos = callPackage ../development/ocaml-modules/bos { };
@@ -578,9 +577,7 @@ let
       git-binary = pkgs.git;
     };
 
-    git-cohttp = callPackage ../development/ocaml-modules/git/cohttp.nix { };
-
-    git-cohttp-unix = callPackage ../development/ocaml-modules/git/cohttp-unix.nix { };
+    git-mirage = callPackage ../development/ocaml-modules/git/mirage.nix { };
 
     git-paf = callPackage ../development/ocaml-modules/git/paf.nix { };
 
@@ -629,8 +626,6 @@ let
 
     irmin-http = callPackage ../development/ocaml-modules/irmin/http.nix { };
 
-    irmin-layers = callPackage ../development/ocaml-modules/irmin/layers.nix { };
-
     irmin-mirage = callPackage ../development/ocaml-modules/irmin/mirage.nix { };
 
     irmin-mirage-git = callPackage ../development/ocaml-modules/irmin/mirage-git.nix { };
@@ -641,7 +636,7 @@ let
 
     irmin-test = callPackage ../development/ocaml-modules/irmin/test.nix { };
 
-    irmin-unix = callPackage ../development/ocaml-modules/irmin/unix.nix { };
+    irmin-tezos = callPackage ../development/ocaml-modules/irmin/tezos.nix { };
 
     irmin-watcher = callPackage ../development/ocaml-modules/irmin-watcher { };
 
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index e920d570ff713..5384881159288 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -13873,7 +13873,8 @@ let
       url = "mirror://cpan/authors/id/L/LK/LKUNDRAK/Log-Journald-0.30.tar.gz";
       hash = "sha256-VZks+aHh+4M/QoMAUlv6fPftRrg+xBT4KgkXibN9CKM=";
     };
-    buildInputs = [ pkgs.pkg-config pkgs.systemd ];
+    nativeBuildInputs = [ pkgs.pkg-config ];
+    buildInputs = [ pkgs.systemd ];
     postPatch = ''
       substituteInPlace Build.PL \
         --replace "libsystemd-journal" "libsystemd"
@@ -15732,17 +15733,12 @@ let
 
   mod_perl2 = buildPerlPackage {
     pname = "mod_perl";
-    version = "2.0.11";
+    version = "2.0.12";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/S/SH/SHAY/mod_perl-2.0.11.tar.gz";
-      hash = "sha256-yiqeGM35D5xgI+eGNp1bp16NrCkuv+qZAMKb9C3Bb3Q=";
+      url = "mirror://cpan/authors/id/S/SH/SHAY/mod_perl-2.0.12.tar.gz";
+      hash = "sha256-9bghtZsP3JZw5G7Q/PMtiRHyUSYYmotowWUvkiHu4mk=";
     };
 
-    patches = [
-      # Fix build on perl-5.34.0, https://github.com/Perl/perl5/issues/18617
-      ../development/perl-modules/mod_perl2-PL_hash_seed.patch
-    ];
-
     makeMakerFlags = "MP_AP_DESTDIR=$out";
     buildInputs = [ pkgs.apacheHttpd ];
     doCheck = false; # would try to start Apache HTTP server
@@ -20941,7 +20937,8 @@ let
       url = "mirror://cpan/authors/id/L/LK/LKUNDRAK/RPM2-1.4.tar.gz";
       hash = "sha256-XstCqmkyTm9AiKv64HMTkG5aq/L0bxIE8/HeWRVbtjY=";
     };
-    buildInputs = [ pkgs.pkg-config pkgs.rpm ];
+    nativeBuildInputs = [ pkgs.pkg-config ];
+    buildInputs = [ pkgs.rpm ];
     doCheck = false; # Tries to open /var/lib/rpm
     meta = {
       description = "Perl bindings for the RPM Package Manager API";
@@ -22615,12 +22612,12 @@ let
 
   SysVirt = buildPerlModule rec {
     pname = "Sys-Virt";
-    version = "8.5.0";
+    version = "8.8.0";
     src = fetchFromGitLab {
       owner = "libvirt";
       repo = "libvirt-perl";
       rev = "v${version}";
-      hash = "sha256-VuM4rPrG15vXnF5e1MBSGB76zLI+8nkSiJmwWg8aJgE=";
+      hash = "sha256-8maLIW4hBbMbq+rnwEfaHsUgpppaU5K4aQTwTgUjdcI=";
     };
     nativeBuildInputs = [ pkgs.pkg-config ];
     buildInputs = [ pkgs.libvirt CPANChanges TestPod TestPodCoverage XMLXPath ];
@@ -26975,8 +26972,6 @@ let
       url = "mirror://cpan/authors/id/S/SM/SMCCAM/X11-Protocol-0.56.tar.gz";
       hash = "sha256-3pbdbHwfJfMoeqevZJAr+ErKqo4MO7dqoWdjZ+BKCLc=";
     };
-    buildInputs = [ pkgs.xlibsWrapper ];
-    NIX_CFLAGS_LINK = "-lX11";
     doCheck = false; # requires an X server
     meta = {
       description = "Perl module for the X Window System Protocol, version 11";
@@ -27007,8 +27002,8 @@ let
       url = "mirror://cpan/authors/id/C/CT/CTRONDLP/X11-GUITest-0.28.tar.gz";
       hash = "sha256-3O7eU3AGEP/xQtydXE5M0DcMiKTysTcfnL9NjYzm9ks=";
     };
-    buildInputs = [ pkgs.xlibsWrapper pkgs.xorg.libXtst pkgs.xorg.libXi ];
-    NIX_CFLAGS_LINK = "-lX11 -lXext -lXtst";
+    buildInputs = [ pkgs.xorg.libX11 pkgs.xorg.libXi pkgs.xorg.libXt pkgs.xorg.libXtst ];
+    NIX_CFLAGS_LINK = "-lX11";
     doCheck = false; # requires an X server
     meta = {
       description = "Provides GUI testing/interaction routines";
@@ -27236,7 +27231,8 @@ let
       url = "mirror://cpan/authors/id/S/SH/SHLOMIF/XML-LibXSLT-1.99.tar.gz";
       hash = "sha256-En4XqHf7YeR7nouHv42q0xM5pioAEh+XUdUitDiw9/A=";
     };
-    buildInputs = [ pkgs.pkg-config pkgs.zlib pkgs.libxml2 pkgs.libxslt ];
+    nativeBuildInputs = [ pkgs.pkg-config ];
+    buildInputs = [ pkgs.zlib pkgs.libxml2 pkgs.libxslt ];
     propagatedBuildInputs = [ XMLLibXML ];
     meta = {
       description = "Interface to the GNOME libxslt library";
@@ -27812,7 +27808,8 @@ let
 
     makeMakerFlags = "--prefix-openssl=${pkgs.openssl_1_1.dev}";
 
-    buildInputs = [ DevelChecklib ModuleInstall ModuleInstallXSUtil TestFatal pkgs.ldns pkgs.libidn2 pkgs.openssl_1_1 pkgs.pkg-config ];
+    nativeBuildInputs = [ pkgs.pkg-config ];
+    buildInputs = [ DevelChecklib ModuleInstall ModuleInstallXSUtil TestFatal pkgs.ldns pkgs.libidn2 pkgs.openssl_1_1 ];
     meta = {
       description = "Perl wrapper for the ldns DNS library";
       license = with lib.licenses; [ bsd3 ];
diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix
index 2be63015122ff..e5eb38c32e440 100644
--- a/pkgs/top-level/php-packages.nix
+++ b/pkgs/top-level/php-packages.nix
@@ -22,6 +22,7 @@
 , libffi
 , libiconv
 , libjpeg
+, libkrb5
 , libpng
 , libsodium
 , libwebp
@@ -342,10 +343,8 @@ lib.makeScope pkgs.newScope (self: with self; {
         }
         {
           name = "imap";
-          buildInputs = [ uwimap openssl pam pcre2 ];
-          configureFlags = [ "--with-imap=${uwimap}" "--with-imap-ssl" ];
-          # uwimap doesn't build on darwin.
-          enable = (!stdenv.isDarwin);
+          buildInputs = [ uwimap openssl pam pcre2 libkrb5 ];
+          configureFlags = [ "--with-imap=${uwimap}" "--with-imap-ssl" "--with-kerberos" ];
         }
         {
           name = "intl";
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 5fc08d1d688ac..879ffec6287a5 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -171,6 +171,8 @@ in {
 
   acoustics = callPackage ../development/python-modules/acoustics { };
 
+  acquire = callPackage ../development/python-modules/acquire { };
+
   actdiag = callPackage ../development/python-modules/actdiag { };
 
   adafruit-io = callPackage ../development/python-modules/adafruit-io { };
@@ -1385,6 +1387,8 @@ in {
 
   bleach = callPackage ../development/python-modules/bleach { };
 
+  bleach-allowlist = callPackage ../development/python-modules/bleach-allowlist { };
+
   bleak = callPackage ../development/python-modules/bleak { };
 
   bleak-retry-connector = callPackage ../development/python-modules/bleak-retry-connector { };
@@ -2030,6 +2034,8 @@ in {
 
   configshell = callPackage ../development/python-modules/configshell { };
 
+  configupdater = callPackage ../development/python-modules/configupdater { };
+
   confluent-kafka = callPackage ../development/python-modules/confluent-kafka { };
 
   confuse = callPackage ../development/python-modules/confuse { };
@@ -2473,6 +2479,50 @@ in {
 
   diskcache = callPackage ../development/python-modules/diskcache { };
 
+  dissect = callPackage ../development/python-modules/dissect { };
+
+  dissect-cim = callPackage ../development/python-modules/dissect-cim { };
+
+  dissect-clfs = callPackage ../development/python-modules/dissect-clfs { };
+
+  dissect-cstruct = callPackage ../development/python-modules/dissect-cstruct { };
+
+  dissect-fat = callPackage ../development/python-modules/dissect-fat { };
+
+  dissect-ffs = callPackage ../development/python-modules/dissect-ffs { };
+
+  dissect-esedb = callPackage ../development/python-modules/dissect-esedb { };
+
+  dissect-etl = callPackage ../development/python-modules/dissect-etl { };
+
+  dissect-eventlog = callPackage ../development/python-modules/dissect-eventlog { };
+
+  dissect-evidence = callPackage ../development/python-modules/dissect-evidence { };
+
+  dissect-extfs = callPackage ../development/python-modules/dissect-extfs { };
+
+  dissect-hypervisor = callPackage ../development/python-modules/dissect-hypervisor { };
+
+  dissect-ntfs = callPackage ../development/python-modules/dissect-ntfs { };
+
+  dissect-ole = callPackage ../development/python-modules/dissect-ole { };
+
+  dissect-regf = callPackage ../development/python-modules/dissect-regf { };
+
+  dissect-shellitem = callPackage ../development/python-modules/dissect-shellitem { };
+
+  dissect-sql = callPackage ../development/python-modules/dissect-sql { };
+
+  dissect-target = callPackage ../development/python-modules/dissect-target { };
+
+  dissect-util = callPackage ../development/python-modules/dissect-util { };
+
+  dissect-vmfs = callPackage ../development/python-modules/dissect-vmfs { };
+
+  dissect-volume = callPackage ../development/python-modules/dissect-volume { };
+
+  dissect-xfs = callPackage ../development/python-modules/dissect-xfs { };
+
   dissononce = callPackage ../development/python-modules/dissononce { };
 
   distlib = callPackage ../development/python-modules/distlib { };
@@ -2499,10 +2549,14 @@ in {
 
   django-anymail = callPackage ../development/python-modules/django-anymail { };
 
+  django-annoying = callPackage ../development/python-modules/django-annoying { };
+
   django-appconf = callPackage ../development/python-modules/django-appconf { };
 
   django-auth-ldap = callPackage ../development/python-modules/django-auth-ldap { };
 
+  django-autocomplete-light = callPackage ../development/python-modules/django-autocomplete-light { };
+
   django-cache-url = callPackage ../development/python-modules/django-cache-url { };
 
   django-cacheops = callPackage ../development/python-modules/django-cacheops { };
@@ -2527,6 +2581,8 @@ in {
 
   django-cors-headers = callPackage ../development/python-modules/django-cors-headers { };
 
+  django-crispy-forms = callPackage ../development/python-modules/django-crispy-forms { };
+
   django-cryptography = callPackage ../development/python-modules/django-cryptography { };
 
   django-csp = callPackage ../development/python-modules/django-csp { };
@@ -2555,6 +2611,8 @@ in {
 
   django-haystack = callPackage ../development/python-modules/django-haystack { };
 
+  django-hcaptcha = callPackage ../development/python-modules/django-hcaptcha { };
+
   django-health-check = callPackage ../development/python-modules/django-health-check { };
 
   django_hijack_admin = callPackage ../development/python-modules/django-hijack-admin { };
@@ -2568,6 +2626,8 @@ in {
 
   django-js-asset = callPackage ../development/python-modules/django-js-asset { };
 
+  django-js-reverse = callPackage ../development/python-modules/django-js-reverse { };
+
   django-logentry-admin = callPackage ../development/python-modules/django-logentry-admin { };
 
   django-mailman3 = callPackage ../development/python-modules/django-mailman3 { };
@@ -2602,6 +2662,8 @@ in {
 
   django-q = callPackage ../development/python-modules/django-q { };
 
+  django-scopes = callPackage ../development/python-modules/django-scopes { };
+
   djangoql = callPackage ../development/python-modules/djangoql { };
 
   django-ranged-response = callPackage ../development/python-modules/django-ranged-response { };
@@ -2796,6 +2858,8 @@ in {
 
   drf-spectacular-sidecar = callPackage ../development/python-modules/drf-spectacular-sidecar { };
 
+  drf-writable-nested = callPackage ../development/python-modules/drf-writable-nested { };
+
   drf-yasg = callPackage ../development/python-modules/drf-yasg { };
 
   drivelib = callPackage ../development/python-modules/drivelib { };
@@ -3126,6 +3190,8 @@ in {
 
   extras = callPackage ../development/python-modules/extras { };
 
+  extruct = callPackage ../development/python-modules/extruct { };
+
   eyeD3 = callPackage ../development/python-modules/eyed3 { };
 
   ezdxf = callPackage ../development/python-modules/ezdxf { };
@@ -3450,6 +3516,8 @@ in {
 
   flit-core = callPackage ../development/python-modules/flit-core { };
 
+  flow-record = callPackage ../development/python-modules/flow-record { };
+
   flower = callPackage ../development/python-modules/flower { };
 
   flowlogs_reader = callPackage ../development/python-modules/flowlogs_reader { };
@@ -4289,6 +4357,8 @@ in {
 
   html-sanitizer = callPackage ../development/python-modules/html-sanitizer { };
 
+  html-text = callPackage ../development/python-modules/html-text { };
+
   HTSeq = callPackage ../development/python-modules/HTSeq { };
 
   httmock = callPackage ../development/python-modules/httmock { };
@@ -4399,6 +4469,8 @@ in {
 
   iaqualink = callPackage ../development/python-modules/iaqualink { };
 
+  ibeacon-ble = callPackage ../development/python-modules/ibeacon-ble { };
+
   ibis = callPackage ../development/python-modules/ibis { };
 
   ibis-framework = callPackage ../development/python-modules/ibis-framework { };
@@ -4860,6 +4932,8 @@ in {
 
   json-tricks = callPackage ../development/python-modules/json-tricks { };
 
+  jstyleson = callPackage ../development/python-modules/jstyleson { };
+
   jug = callPackage ../development/python-modules/jug { };
 
   junitparser = callPackage ../development/python-modules/junitparser { };
@@ -4986,6 +5060,8 @@ in {
 
   keepkey = callPackage ../development/python-modules/keepkey { };
 
+  kegtron-ble = callPackage ../development/python-modules/kegtron-ble { };
+
   keras-applications = callPackage ../development/python-modules/keras-applications { };
 
   keras = callPackage ../development/python-modules/keras { };
@@ -5067,6 +5143,8 @@ in {
 
   language-data = callPackage ../development/python-modules/language-data { };
 
+  language-tags = callPackage ../development/python-modules/language-tags { };
+
   lark = callPackage ../development/python-modules/lark { };
 
   latexcodec = callPackage ../development/python-modules/latexcodec { };
@@ -5696,8 +5774,12 @@ in {
 
   mezzanine = callPackage ../development/python-modules/mezzanine { };
 
+  mf2py = callPackage ../development/python-modules/mf2py { };
+
   micawber = callPackage ../development/python-modules/micawber { };
 
+  microdata = callPackage ../development/python-modules/microdata { };
+
   midiutil = callPackage ../development/python-modules/midiutil { };
 
   mido = callPackage ../development/python-modules/mido { };
@@ -5756,6 +5838,7 @@ in {
   mkdocs-autorefs = callPackage ../development/python-modules/mkdocs-autorefs { };
   mkdocs-drawio-exporter = callPackage ../development/python-modules/mkdocs-drawio-exporter { };
   mkdocs-exclude = callPackage ../development/python-modules/mkdocs-exclude { };
+  mkdocs-jupyter = callPackage ../development/python-modules/mkdocs-jupyter { };
   mkdocs-gitlab = callPackage ../development/python-modules/mkdocs-gitlab-plugin { };
   mkdocs-macros = callPackage ../development/python-modules/mkdocs-macros { };
   mkdocs-material = callPackage ../development/python-modules/mkdocs-material { };
@@ -6403,10 +6486,12 @@ in {
 
   onnxconverter-common = callPackage ../development/python-modules/onnxconverter-common { };
 
-  onnxruntime = (toPythonModule (pkgs.onnxruntime.override {
-    python3Packages = self;
-    pythonSupport = true;
-  })).python;
+  onnxruntime = callPackage ../development/python-modules/onnxruntime {
+    onnxruntime = pkgs.onnxruntime.override {
+      python3Packages = self;
+      pythonSupport = true;
+    };
+  };
 
   onvif-zeep-async = callPackage ../development/python-modules/onvif-zeep-async { };
 
@@ -6997,6 +7082,8 @@ in {
 
   pypoolstation = callPackage ../development/python-modules/pypoolstation { };
 
+  pyrdfa3 = callPackage ../development/python-modules/pyrdfa3 { };
+
   pyrevolve = callPackage ../development/python-modules/pyrevolve { };
 
   pyrfxtrx = callPackage ../development/python-modules/pyrfxtrx { };
@@ -7324,7 +7411,7 @@ in {
   psd-tools = callPackage ../development/python-modules/psd-tools { };
 
   psutil = callPackage ../development/python-modules/psutil {
-    inherit (pkgs.darwin.apple_sdk.frameworks) IOKit;
+    inherit (pkgs.darwin.apple_sdk.frameworks) CoreFoundation IOKit;
   };
 
   psutil-home-assistant = callPackage ../development/python-modules/psutil-home-assistant { };
@@ -8330,6 +8417,12 @@ in {
     withWebKit = true;
   };
 
+  pyqt6 = callPackage ../development/python-modules/pyqt/6.x.nix { };
+
+  pyqt6-sip = callPackage ../development/python-modules/pyqt/pyqt6-sip.nix { };
+
+  pyqt6-webengine = callPackage ../development/python-modules/pyqt6-webengine.nix { };
+
   pyqtgraph = callPackage ../development/python-modules/pyqtgraph { };
 
   pyqtwebengine = pkgs.libsForQt5.callPackage ../development/python-modules/pyqtwebengine {
@@ -8370,6 +8463,8 @@ in {
 
   pyramid_multiauth = callPackage ../development/python-modules/pyramid_multiauth { };
 
+  pyreadstat = callPackage ../development/python-modules/pyreadstat { };
+
   pyrealsense2 = toPythonModule (pkgs.librealsense.override {
     enablePython = true;
     pythonPackages = self;
@@ -9527,6 +9622,8 @@ in {
 
   recaptcha_client = callPackage ../development/python-modules/recaptcha_client { };
 
+  recipe-scrapers = callPackage ../development/python-modules/recipe-scrapers { };
+
   recoll = toPythonModule (pkgs.recoll.override {
     python3Packages = self;
   });
@@ -9803,6 +9900,8 @@ in {
 
   rst2ansi = callPackage ../development/python-modules/rst2ansi { };
 
+  rst2pdf = callPackage ../development/python-modules/rst2pdf { };
+
   rstcheck = callPackage ../development/python-modules/rstcheck { };
 
   rstcheck-core = callPackage ../development/python-modules/rstcheck-core { };
@@ -10400,6 +10499,8 @@ in {
 
   spinners = callPackage ../development/python-modules/spinners { };
 
+  sphinx-automodapi = callPackage ../development/python-modules/sphinx-automodapi { };
+
   sphinx-better-theme = callPackage ../development/python-modules/sphinx-better-theme { };
 
   sphinx-book-theme = callPackage ../development/python-modules/sphinx-book-theme { };
@@ -11327,12 +11428,16 @@ in {
 
   types-protobuf = callPackage ../development/python-modules/types-protobuf { };
 
+  types-python-dateutil = callPackage ../development/python-modules/types-python-dateutil { };
+
   types-pytz = callPackage ../development/python-modules/types-pytz { };
 
   types-pyyaml = callPackage ../development/python-modules/types-pyyaml { };
 
   types-redis = callPackage ../development/python-modules/types-redis { };
 
+  types-retry = callPackage ../development/python-modules/types-retry { };
+
   types-requests = callPackage ../development/python-modules/types-requests { };
 
   types-setuptools = callPackage ../development/python-modules/types-setuptools { };
@@ -11594,6 +11699,8 @@ in {
 
   versionfinder = callPackage ../development/python-modules/versionfinder { };
 
+  versioningit = callPackage ../development/python-modules/versioningit { };
+
   versiontag = callPackage ../development/python-modules/versiontag { };
 
   versiontools = callPackage ../development/python-modules/versiontools { };
@@ -11893,8 +12000,8 @@ in {
   };
 
   wxPython_4_1 = callPackage ../development/python-modules/wxPython/4.1.nix {
-    wxGTK = pkgs.wxGTK31.override {
-      withGtk2 = false;
+    inherit (pkgs.darwin.apple_sdk.frameworks) AGL AudioToolbox AVFoundation AVKit Carbon Cocoa CoreMedia CoreFoundation IOKit Kernel OpenGL Security WebKit;
+    wxGTK = pkgs.wxGTK31-gtk3.override {
       withWebKit = true;
     };
   };
diff --git a/pkgs/top-level/release-haskell.nix b/pkgs/top-level/release-haskell.nix
index 167896af4d2b4..0f9c461539e6c 100644
--- a/pkgs/top-level/release-haskell.nix
+++ b/pkgs/top-level/release-haskell.nix
@@ -53,6 +53,7 @@ let
     ghc8107
     ghc902
     ghc924
+    ghc942
   ];
 
   # packagePlatforms applied to `haskell.packages.*`
@@ -354,12 +355,26 @@ let
       # working as expected.
       cabal-install = released;
       Cabal_3_6_3_0 = released;
+      Cabal_3_8_1_0 = released;
       cabal2nix = released;
       cabal2nix-unstable = released;
       funcmp = released;
-      haskell-language-server = released;
+      haskell-language-server = [
+        compilerNames.ghc884
+        compilerNames.ghc8107
+        compilerNames.ghc902
+        compilerNames.ghc924
+        # https://github.com/haskell/haskell-language-server/issues/3190
+      ];
       hoogle = released;
-      hlint = released;
+      hlint = [
+        compilerNames.ghc884
+        compilerNames.ghc8107
+        compilerNames.ghc902
+        compilerNames.ghc924
+        # https://github.com/ndmitchell/hlint/issues/1413
+      ];
+      hpack = released;
       hsdns = released;
       jailbreak-cabal = released;
       language-nix = released;
diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix
index bac3d1b1171dd..61116328b29f5 100644
--- a/pkgs/top-level/release.nix
+++ b/pkgs/top-level/release.nix
@@ -30,7 +30,7 @@ let
     "aarch64"
   ] (arch: builtins.elem "${arch}-darwin" systemsWithAnySupport);
 
-  jobs =
+  nonPackageJobs =
     { tarball = import ./make-tarball.nix { inherit pkgs nixpkgs officialRelease supportedSystems; };
 
       metrics = import ./metrics.nix { inherit pkgs nixpkgs; };
@@ -167,7 +167,9 @@ let
           (system: {
             inherit
               (import ../stdenv/linux/make-bootstrap-tools.nix {
-                localSystem = { inherit system; };
+                pkgs = import ../.. {
+                  localSystem = { inherit system; };
+                };
               })
               dist test;
           })
@@ -175,7 +177,9 @@ let
         // optionalAttrs supportDarwin.x86_64 {
           x86_64-darwin =
             let
-              bootstrap = import ../stdenv/darwin/make-bootstrap-tools.nix { system = "x86_64-darwin"; };
+              bootstrap = import ../stdenv/darwin/make-bootstrap-tools.nix {
+                localSystem = { system = "x86_64-darwin"; };
+              };
             in {
               # Lightweight distribution and test
               inherit (bootstrap) dist test;
@@ -186,14 +190,25 @@ let
           # Cross compiled bootstrap tools
           aarch64-darwin =
             let
-              bootstrap = import ../stdenv/darwin/make-bootstrap-tools.nix { system = "x86_64-darwin"; crossSystem = "aarch64-darwin"; };
+              bootstrap = import ../stdenv/darwin/make-bootstrap-tools.nix {
+                localSystem = { system = "x86_64-darwin"; };
+                crossSystem = { system = "aarch64-darwin"; };
+              };
             in {
               # Distribution only for now
               inherit (bootstrap) dist;
             };
           };
 
-    } // (mapTestOn ((packagePlatforms pkgs) // {
+       };
+
+  # Do not allow attribute collision between jobs inserted in
+  # 'nonPackageAttrs' and jobs pulled in from 'pkgs'.
+  # Conflicts usually cause silent job drops like in
+  #   https://github.com/NixOS/nixpkgs/pull/182058
+  jobs = lib.attrsets.unionOfDisjoint
+    nonPackageJobs
+    (mapTestOn ((packagePlatforms pkgs) // {
       haskell.compiler = packagePlatforms pkgs.haskell.compiler;
       haskellPackages = packagePlatforms pkgs.haskellPackages;
       idrisPackages = packagePlatforms pkgs.idrisPackages;
diff --git a/pkgs/top-level/ruby-packages.nix b/pkgs/top-level/ruby-packages.nix
index 28c4ac010e1f7..b81d1bfd59695 100644
--- a/pkgs/top-level/ruby-packages.nix
+++ b/pkgs/top-level/ruby-packages.nix
@@ -3038,10 +3038,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1knw2xa3pkfql4np9qazz2mdi1vz21vdsa0wkx648c4ym1p2h8yh";
+      sha256 = "sha256-AM0pP5ZafGRLF4/+BUsuA6DuNNc4wX2/OsTZeL4p6Io=";
       type = "gem";
     };
-    version = "0.16.0";
+    version = "0.17.0";
   };
   tilt = {
     groups = ["default"];